It first does an elimination round (which I've done) that removes any values that can't be in there (like in the first row, removing 3, 2, and 6 from any of the candidates there). The next step is finding units with only one choice and picking that.

The screenshot actually shows a bug I had that wasn't doing this correctly… ><