finish the product and provider class