now we have an abstract