Abstract some things