func CheckErr(err error) {
	if err != nil {  
		ct.Foreground(ct.Red, true)  
		fmt.Fprintln(os.Stderr, err)
		os.Exit(1)
	}
}
CheckErr prints any non-nil errors followed by exiting the application
package utils
import (
	"bytes"
	"fmt"
	"io"
	"io/ioutil"
	"log"
	"math"
	"math/rand"
	"net/http"
	"os"
	"os/exec"
	"os/user"
	"strings"
	"syscall"
	"time"
	ct "github.com/daviddengcn/go-colortext"
	"github.com/gocolly/colly"
	"github.com/shirou/gopsutil/cpu"
	"github.com/shirou/gopsutil/host"
	"github.com/shirou/gopsutil/load"
	"github.com/shirou/gopsutil/mem"
	"golang.org/x/crypto/ssh/terminal"
)
func BytesToGigabytes(bytes uint64) float64 {
	const conversionFactor = 1000000000
	result := float64(bytes) / conversionFactor
	result = float64(math.Round(result*100) / 100)
	return result
}
func CheckTarget(target string) {
	if target == "" {  
		CheckErr(fmt.Errorf("target cannot be empty when performing this task"))
	}
}