To get hold of the raw what-squares-have-I-visited data, I open the Veloviewer summary page in Google Chrome and press Ctrl+Shift+I to switch to developer mode. Then type copy(d3.values(explorerTiles)) to copy the data to the clipboard. Copy it into a text editor – it is pretty self-explanatory JSON format.

Lots of other data is available this way – not just the explorerSquares variable.

Once you have copied the JSON the attached Python script (unfortunately saved as .doc due to a WordPress limitation) will do a bit of analysis on it. You will probably want to mess with the last three lines of the script

- filename – the path where you saved the JSON down to
- The last two arguments to parse_visited_squares – these are the co-ordinates of the square you want to define as your origin. I have chosen 8146,5439 which is the top-left of my current square in the Chilterns, Oxfordshire, UK.
- The last argument to number_to_complete. This is the biggest square you want to analyse. It should be bigger than the biggest square you have down so far. I chosen 50.

Output looks like a bit like this:

For N=39 the square with top-left at (0, 0) is complete! For N=40 the square with top-left at (0, 0) is complete! For N=41 the minimal solution needs 7 squares to be visited The top left square must be (-2, -1) and the following squares are needed: (3, -1) (33, -1) (34, -1) (35, -1) (36, -1) (37, -1) (38, -1) For N=42 the minimal solution needs 15 squares to be visited The top left square must be (-2, -2) and the following squares are needed: (3, -1) (33, -2) (33, -1) (34, -2) (34, -1) (35, -2) (35, -1) (36, -2) (36, -1) (37, -2) (37, -1) (38, -2) (38, -1) (39, -2) (39, -1) //etc...