Custom Provider

See Write a new provider.