User functions have been fully documented