code: func KeyToggle(key string, args ...string) string {
  	ckey := C.CString(key)
  	defer C.free(unsafe.Pointer(ckey))
  
  	ckeyArr := make([](*C.char), 0)
  	if len(args) > 3 {
  		num := len(args)
  
  		for i := 0; i < num; i++ {
  			ckeyArr = append(ckeyArr, (*C.char)(unsafe.Pointer(C.CString(args[i]))))
  		}
  
  		str := C.key_Toggles(ckey, (**C.char)(unsafe.Pointer(&ckeyArr[0])), C.int(num))
  		return C.GoString(str)
  	}
  
  	var (
  		down, mKey, mKeyT = "null", "null", "null"
  		// keyDelay = 10
  	)
  
  	if len(args) > 0 {
  		down = args[0]
  
  		if len(args) > 1 {
  			mKey = args[1]
  
  			if len(args) > 2 {
  				mKeyT = args[2]
  			}
  		}
  	}
  
  	cdown := C.CString(down)
  	cmKey := C.CString(mKey)
  	cmKeyT := C.CString(mKeyT)
  
  	str := C.key_toggle(ckey, cdown, cmKey, cmKeyT)
  	// str := C.key_Toggle(ckey, cdown, cmKey, cmKeyT, C.int(keyDelay))
  
  	C.free(unsafe.Pointer(cdown))
  	C.free(unsafe.Pointer(cmKey))
  	C.free(unsafe.Pointer(cmKeyT))
  
  	return C.GoString(str)
  }
docs: // KeyToggle toggle the keyboard
  //
  // See keys:
  //	https://github.com/go-vgo/robotgo/blob/master/docs/keys.md
  //