func (p *Progress) Render() {
	if p.beginRender() {
		p.initForRender()
		lastRenderLength := 0
		ticker := time.NewTicker(p.updateFrequency)
		defer ticker.Stop()
		for {
			select {
			case <-ticker.C:
				lastRenderLength = p.renderTrackers(lastRenderLength)
			case <-p.done:
				p.renderTrackers(lastRenderLength)
				p.endRender()
				return
			}
		}
	}
}
Render renders the Progress tracker and handles all existing trackers and
those that are added dynamically while render is in progress.
package progress
import (
	"fmt"
	"math"
	"strings"
	"time"
	"github.com/jedib0t/go-pretty/v6/text"
)