docs: function internalSearchCheck (searchTerm, key, value, seen, depth) {
    let match = false
    let result
    if (key === '_custom') {
      key = value.display
      value = value.value
    }
    (result = specialTokenToString(value)) && (value = result)
    if (key && compare(key, searchTerm)) {
      match = true
      seen.set(value, true)
    } else if (seen.has(value)) {
      match = seen.get(value)
    } else if (Array.isArray(value)) {
      seen.set(value, null)
      match = internalSearchArray(value, searchTerm, seen, depth)
      seen.set(value, match)
    } else if (isPlainObject(value)) {
      seen.set(value, null)
      match = internalSearchObject(value, searchTerm, seen, depth)
      seen.set(value, match)
    } else if (compare(value, searchTerm)) {
      match = true
      seen.set(value, true)
    }
    return match
  }