Checker Deselect for single object which can consist from a few disconnected vertices parts (groups)

I have an object which consist from four parts of separate vertices and edges. I want the command [ checker deselect ] to affect all the vertices. Example:

It seems like a For loop is missing. and the action is done only on the first instance.

This tool works starting from the active element.

In case of islands of selected elements, there will be a random starting element.
So you will get different (shifted) patterns on the islands. This is probably not very useful.