this version appears to be closer but it still doesn't work