ADD: AbstractProvider can return the internal function cache and the function cache can be disbled