removed all the hardcoded junk, now it's generic enough: