added more variations in cases.