Work something much more generic