Also note that you could "replace" the last point (instead of appending a new last point) whenever the same button is repeated. It would not look any different, but the complex array would be kept much smaller. There are plenty of tweaks to improve further. 😄