Refer to Section 14.9 for detailed description about this function.