correction and added "casts" rule