Converted Providers abstract class to ProviderTrait