we should document what args the function gets