better provider with little exception