less braindead approach