Add service provider decoupling