How to avoid Undo junk?

Hello, all!

So there's a thing that has been annoying me ever since I learned to use CommandGroup - it does group the actions, but it still redraws selection nodes when undoing. Here's an example:

Sub UndoJunk()

ActiveDocument.BeginCommandGroup "UndoJunk"

Dim A As Integer
Dim S As Shape
Set S = ActiveLayer.CreateEllipse2(0, 0, 1)

For A = 0 To 100

S.Move 1, 0

Next A

ActiveDocument.EndCommandGroup

End Sub

When you undo you get this line of dots that takes quite a while to redraw, especially if you had a decent amount of operations. For this simple example VirtualLayers may be the answer, but in my case I'm doing some more advanced things which involve checking for curve intersections using DisplayCurve, IntersectsWith, IsPointInside etc.

So my question is - is there a way to avoid this undo junk and just instantly jump back a step?

I'm on X6, btw, perhaps this has been fixed in following versions, who knows.