fixed provider checking