Abstracted the shit out of it.