#13 Added more stuff to the abstract operation.