Replace Resolver with Provider, and delegates entire event creation to the providers