completely revamped my approach