Added the implementation of cup_provider.