This direction is not quite right because it mutates shared state in a threaded context, so the next commit will need to fix this.
This direction is not quite right because it mutates shared state in a threaded context, so the next commit will need to fix this.