protected static function dotKeyValues($prefix, $array)
    {
        $fields = [];
        foreach ($array as $key => $value) {
            if (is_string($key)) {
                $newPos = $prefix . '.' . $key;
                if (is_array($value)) {
                    $fields = array_merge($fields, static::dotKeyValues($newPos, $value));
                } else {
                    $fields[$newPos] = $value;
                }
            }
        }

        return $fields;
    }