We finish off our chapter on ghost pointers by implementing the last bit of logic needed to connect our real-time networking to our UI. It’s straightforward, but there is one wrinkle: browser pixel-rounding errors. We fix the problem, get our smoke tests to pass, and end the chapter.