add back 'this', WIP