Document this function!