lots of complexity in one line. Although more verbose, mind splitting it up?