public function keys($search = null, $caseSensitive = false)
    {
        if ($search === null) {
            return array_keys($this->identifierParts);
        }

        if ($caseSensitive === true) {
            return array_keys($this->identifierParts, $search);
        }

        $search = strtolower($search);
        $keys = array_keys($this->identifierParts);

        $keys = array_filter($keys, function ($key) use ($search) {
            return strtolower($this->identifierParts[$key]) === $search;
        });

        return array_values($keys);
    }