code: func (v *Validate) VarWithValue(field interface{}, other interface{}, tag string) error {
  	return v.VarWithValueCtx(context.Background(), field, other, tag)
  }
docs: // VarWithValue validates a single variable, against another variable/field's value using tag style validation
  // eg.
  // s1 := "abcd"
  // s2 := "abcd"
  // validate.VarWithValue(s1, s2, "eqcsfield") // returns true
  //
  // WARNING: a struct can be passed for validation eg. time.Time is a struct or
  // if you have a custom type and have registered a custom type handler, so must
  // allow it; however unforeseen validations will occur if trying to validate a
  // struct that is meant to be passed to 'validate.Struct'
  //
  // It returns InvalidValidationError for bad values passed in and nil or ValidationErrors as error otherwise.
  // You will need to assert the error if it's not nil eg. err.(validator.ValidationErrors) to access the array of errors.
  // validate Array, Slice and maps fields which may contain more than one error