added mixin for provider