I like this A LOT. - *abstract all the things!*