this needs to be hash ref