added inverse versions with shield