added vomit logic