This looks like something that should go in a data provider then