A nicely working version.