Refer to Section 5.2.10 for detailed description about this function.