adding abort() and colors