abstractify! hmm yes. very advanced indeed.