At some point you might want to change this to a fixture since the logic is all the same and only the values/types change.