abstract by tommytechno
_