Turned it into a provider, and added more enhancements to intercepting