Annonce

Faites la différence entre le service WordPress.com et l'application libre WordPress.

Mettez-vous à jour ! WordPress 4.0 est disponible en français.

Annonce 1 : Le Codex en français a besoin de vous pour avancer !
Annonce 2 : Avant de poster, n'oubliez pas de faire une petite recherche et de lire les règles de ce forum.
Annonce 3 : Lisez notre blog, il regorge de bonnes informations.
Annonce 4 : Rejoignez-nous sur Facebook, Google + et sur Twitter

#1 10-11-2006 21:49:03

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

[Import] Dotclear par fichier texte

[News]
- octobre 2007 : ajout de la traduction française faite par AmO (version 2.3 de flatimport)
- août 2007 : nouvelle procédure d'import spécifique à WordPress 2.3 ; nouveau packaging
- version de flatimport.php WP 2.3 : 2.3.0
- version de flatimport.php WP 2.0-2.2 : 1.1.1

[Ils sont passés de Dotclear à WordPress]
- Quelbazar, l’oeil du Syklop 10 raisons pour migrer de Dotclear2 à Wordpress
- yazerty.net exemple de migration d'un gros blog (2305 billets, 7880 commentaires, 3610 tags
- SK Blog
- 64k le blog de soph et ced un tuto par ced pour passer de Dotclear 1.2 à WordPress 2.1

[Téléchargement]

De Dotclear 2 ou 1.2.x à WordPress 2.3
- Script PHP, tutoriel
- Suppléments Import d'images, plugins Dotclear d'export pour les serveurs Free.fr ...

De Dotclear 2 ou 1.2.x à WordPress 2.0 2.1 2.2
- Script PHP, tutoriel, suppléments

[Downloads]

From Dotclear 2 or 1.2.x to WordPress 2.3
- PHP script, tutorial
- Add-ons  Images import plugin, Dotclear export plugins specific to Free.fr servers ...

From Dotclear 2 or 1.2.x to WordPress 2.0 2.1 2.2
- PHP script, tutorial, add-ons

[Test]
- Exemple avec importation d'images

[Ce que fait le script flatimport]
Le script flatimport.php traite le fichier texte UTF-8 en format CSV produit
- par le plugin flatexport pour Dotclear 1.2.x
- ou celui produit par le plugin importExport de Dotclear 2
et l'importe dans Wordpress en UTF-8.

Le script importe les billets, leurs utilisateurs leurs commentaires, leurs tags, leurs catégories ; les liens, leurs catégories.

[Mode d'emploi rapide pour WP 2.3 :]
1- décompresser les fichiers de flatimport.zip et les mettre dans wp-admin/import

2- mettre le fichier texte d'export blog-backup.txt en UTF8 dans le répertoire wp-content/uploads, soit wp-content/uploads/blog-backup.txt

3- procéder à l'import : Gérer / Importer / Dotclear flatimport

Il est recommandé de lire le tutoriel (accessible dans l'écran d'accueil de Dotclear flatimport) avant de procéder à l'import.

Une procédure de reprise permet de reprendre l'import au dernier point de contrôle (pris toutes les 20 lignes d'une table). A priori il n'y a plus de limite de taille pour le fichier d'import blog-backup.txt.

La re-importation d'éléments existants ne crée pas de doublons.

[English readers] View the tutorial(en) included in the packaged file.

De DC à WP 2.0-2.2 : la documentation(fr) dc2wp.html en français n'a pas été revue. Le tutoriel en anglais tuto_dc2wp_en.html qui est plus complet est à utiliser obligatoirement en complément.

Les suppléments réunissent des scripts PHP utiles dans le transfert du blog de Dotclear 1.2.x ou Dotclear 2 à WordPress 2 (en UTF-8).
Important : Ils contiennent la version des plugins d’export qui marchent avec les serveurs Free.fr : flatexport pour Dotclear 1.2.x et importExport pour Dotclear 2.

Voir aussi le script dotclear modifié (pour Dotclear 1.2.x seulement vers WordPress 2.0.5+). Test avec WP 2.2.1 du 6 juillet 2007 : l'importation des catégories de liens ne se fait pas (cause possible : modification de la structure de la base de données WP).

Le fichier texte UTF8 sans BOM ne doit être modifié qu'à l'aide d'un éditeur adapté. Par exemple Notepad++ ; Format cocher Encoder en UTF-8 (sans BOM) ; la mention ANSI as UTF-8 doit apparaitre en bas, à droite. Ne pas utiliser Word, Wordpad, Notepad, Blocnote...

L'indicateur ///DOTCLEAR| suivi de la version de Dotclear  dans le fichier texte doit être en première ligne, première position ; sans BOM qui le précèderait.

Importer dans un Wordpress vide. Si l'import ne se fait pas correctement, utiliser le gestionnaire MySQL pour vider  les billets (posts) et les commentaires ; liens et catégories de liens ; ainsi que les utilisateurs rajoutés, ne pas supprimer l'administrateur.

La 2ème version beta importe les liens. Je n'ai pu la tester que sur un ensemble réduit : 15 billets, 64 commentaires, de 119 Ko. Terminé en 8 secondes.

Free.fr a un maximum de chargement d'une page par php de 30 secondes, réduit maintenant à 20 secondes.

L'import d'un fichier de 2,33 Mo s'est arrété après l'import de 623 posts, 934 comments par limite de temps après 35 secondes avec le message :

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Apache/ProXad [Oct 16 2006 22:55:06] Server at secondmonde.free.fr Port 80


Ce message signifie en général que la limite de temps est dépassée ou qu'il y a trop d'accès MySQL. Rien de grave du point de vue des scripts ou du contenu du site. La mise en place de la procédure de reprise permet de reprendre l'import au dernier point de contrôle.

Merci de tester et de commenter ici.

Dernière modification par albaran (05-11-2007 14:09:01)

Hors ligne

 

#2 10-11-2006 22:20:29

AmO
Joueur de pétanque.
Lieu: France - Nord
Date d'inscription: 19-09-2005
Messages: 5095
Site web

Re: [Import] Dotclear par fichier texte

Bonne chose smile
Je suis ca de prêt meme si j'ai pas de blog DC ^^


Mais vous savez, je crois pas qu'il y ait de bon ou mauvais blog... Enfin si je devais résumer ma vie aujourd'hui avec vous, je dirais que c'est d'abord des rencontres, des blogs qui m'ont tendu la main peut être à un moment où je ne pouvais pas, où j'étais seul chez moi.
http://www.wordpress-fr.net/wp-content/uploads/jmwp.jpg
WP-Box: Travailler avec un spécialiste des technologies WordPress !

Hors ligne

 

#3 11-11-2006 08:57:09

zepretender
Connaisseur WP
Date d'inscription: 03-11-2006
Messages: 28

Re: [Import] Dotclear par fichier texte

C'est quoi "BOM" ?
Excellent travail en tous cas, preuve de la réactivité de la communauté WP !

Hors ligne

 

#4 11-11-2006 12:47:19

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

voir FAQ - UTF-8, UTF-16, UTF-32 & BOM

ça fait partie des plaisirs sans cesse renouvelés de l'informatique

Hors ligne

 

#5 11-11-2006 13:24:38

AmO
Joueur de pétanque.
Lieu: France - Nord
Date d'inscription: 19-09-2005
Messages: 5095
Site web

Re: [Import] Dotclear par fichier texte

big_smile


Mais vous savez, je crois pas qu'il y ait de bon ou mauvais blog... Enfin si je devais résumer ma vie aujourd'hui avec vous, je dirais que c'est d'abord des rencontres, des blogs qui m'ont tendu la main peut être à un moment où je ne pouvais pas, où j'étais seul chez moi.
http://www.wordpress-fr.net/wp-content/uploads/jmwp.jpg
WP-Box: Travailler avec un spécialiste des technologies WordPress !

Hors ligne

 

#6 11-11-2006 15:49:54

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

nouveau flatimport.txt version du samedi  11 nov 2006 15.30

suppression du contrôle de la présence de l'indicateur ///DOTCLEAR|1.2...
suppression texconv pour compatibilité dotclear.php

l'import de petits blogs se fait sans pb sur Free.fr et 1and1 :

import de user : 3 ; categorie : 1 ; link : 47 ; post : 15 ; comment : 64
130 éléments 10 s ; 0.08 s / élément

en gros compter 0.1 seconde par ligne du fichier blog-backup.txt

l'import du fichier zepretender n'arrive pas au bout avec Free.fr et 1and1. Blocage au bout de 350 à 623 importation de billets. Est-ce qu'il y aurait des time-out sur la reconstruction des indeex MySQL lors de l'import de beaucoup de billets ou autre chose ?

Note: il y a un bug sur la mise à jour d'éléments existants dans dotclear.php et donc dans flatimport.php. Je regarde ce que je peux faire (cela explique aussi la nécessité de repartir sur un WordPress vide en cas d'échec de l'import).

nouveau flatimport.txt version du samedi  11 nov 2006 20.00

Dernière modification par albaran (11-11-2006 20:47:44)

Hors ligne

 

#7 12-11-2006 18:49:42

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

nouveau flatimport.txt version du dimanche 12 nov 2006 18.00

la mise à jour d'éléments existants se fait sans doublons.

done: sup ctle présence ///DOTCLEAR
done: suppression texconv pr compat dotclear.php
done: remplacement de certains wp_insert_... par wp_update_... ; pas de doublons dans le re-import de blog-backup.txt pour les billets, liens
done: msg tous les 100 import d'éléments (ajustable)
done: plus de doublons avec les utilisateurs
done: remplacement de la fonction comment_exists qui renvoi comment_post_ID alors qu'on cherche comment_ID par appel direct ; pas de doublons de commentaires

Hors ligne

 

#8 13-11-2006 22:57:50

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

nouveau flatimport.txt version du 13 nov 2006 21.00

correction mineure dans l'affichage de la progression tous les 100 billets ou commentaires ...

le test d'import en local avec wamp5 est concluant après avoir mis le max_execution_time à 600 secondes

le fichier blog-backup.txt de 2393 Ko contenant 1601 éléments (2 utilisateurs, 12 catégories, 26 liens, 627 billets, 934 commentaires) à été de 434 secondes ; le re-import en 363 secondes n'a pas créé de doublons.

Hors ligne

 

#9 14-11-2006 00:41:07

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

Le script dotclear modifie le script d'import de WP 2.05 et incorpore les améliorations de flatimport plus des tickets. À renommer en dotclear.php et mettre dans wp-admin/import

Le script importe les billets et leurs commentaires, les catégories de billets, les liens et leur catégories, les utilisateurs.

La re-importation d'éléments existants ne crée pas de doublons.

Ticket #2388 included: dbprefix active
Ticket #2430 included

modif from flatimport 2006-11-12
- associate links to link categories
- allow updating of existing WordPress posts, comments, users ... without replicating
- make displayed name following Dotclear rule: displayed name is pseudo ; if empty firsname lastname
- don't use comment_exists for WP2.0.5 ; returns comment_post_ID ;  comment_ID needed

Note pour les utilisateurs des serveurs Free.fr : convertir au préalable en UTF-8 pour un WordPress en UTF-8 (iconv n'est pas disponible chez Free.fr).

Dernière modification par albaran (14-11-2006 00:48:03)

Hors ligne

 

#10 16-11-2006 16:56:46

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

nouveau flatimport.txt version du 16 nov 2006 16.00

importation depuis Dotclear 2 beta 3.1

Attention: L'indicateur ///DOTCLEAR|... doit figurer en 1ère ligne 1ère colonne, non précédé par un BOM.

Dernière modification par albaran (16-11-2006 20:52:01)

Hors ligne

 

#11 16-11-2006 20:43:31

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

nouveau flatimport.txt version du 16 nov 2006 20.00

j'ai pu régler le pb du BOM. Le fichier doit être en UTF-8, avec ou sans BOM ; cela rendra les modifs éventuelles plus facile.

Hors ligne

 

#12 20-11-2006 10:56:12

kisskool
Membre WP
Date d'inscription: 20-11-2006
Messages: 5

Re: [Import] Dotclear par fichier texte

Est ce normal que l'importation se passe bien, : les billets sont la, les commentaires aussi par contre ils ne sont plus classéss par categorie... ils sont importés dans la categorie non classé

Dernière modification par kisskool (20-11-2006 10:56:45)


SynerGeek.fr
Site de veille technologique, tutos & astuces informatique, réseau professionnel

Hors ligne

 

#13 20-11-2006 14:12:12

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

kisskool: quelle version de flatimport utilisée ? la dernière est celle du 19 nov 2006 19.00 20 nov 2006 16.00 ; elle traite les orphelins (billet sans catégorie par exemple).

si les catégories de billets existent dans le blog Dotclear, elles doivent être importées dans WordPress. Est-ce que tu peux mettre le blog-backup.txt en ligne (ou me donner son URL par MP). Cela m'aiderai à améliorer le script PHP.

Dernière modification par albaran (20-11-2006 17:35:18)

Hors ligne

 

#14 05-12-2006 17:55:27

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

bon, je me sens un peu seul dans ce fil, mais je persévère. Il est vrai qu'on ne migre pas tous les jours de Dotclear à WordPress.

bonne nouvelle pour les gros : une procédure de reprise permet de reprendre l'import au dernier point de contrôle (pris toutes les 20 lignes d'une table). Le blog-backup de 2.33 Mo de zepretender à pu être importé sur Free.fr en 10 minutes et 10 reprises (3 clicks pour faire une reprise). A priori pas de limitation de taille pour l'import.

Un bug introduit dans une version récente a été corrigé concernant l'affectation des billets aux catégories qui doit maintenant être correcte.

Hors ligne

 

#15 05-12-2006 21:23:04

AmO
Joueur de pétanque.
Lieu: France - Nord
Date d'inscription: 19-09-2005
Messages: 5095
Site web

Re: [Import] Dotclear par fichier texte

Je dit juste Chapeau smile + surprise smile


Mais vous savez, je crois pas qu'il y ait de bon ou mauvais blog... Enfin si je devais résumer ma vie aujourd'hui avec vous, je dirais que c'est d'abord des rencontres, des blogs qui m'ont tendu la main peut être à un moment où je ne pouvais pas, où j'étais seul chez moi.
http://www.wordpress-fr.net/wp-content/uploads/jmwp.jpg
WP-Box: Travailler avec un spécialiste des technologies WordPress !

Hors ligne

 

#16 12-12-2006 02:17:19

Akabane
Membre WP
Date d'inscription: 12-12-2006
Messages: 7

Re: [Import] Dotclear par fichier texte

Bon alors primo BRAVO.
Ca fonctionne presque. wink
Je précise que j'ai testé le fichier de backup avec Dotclear 2 avec succès, tout est importé de Dotclear 1.2.5 sans probs. Manque de bol, je veux tester Wordpress et surement y passer complètement.

En local avec MAMP tout passe presque en terme d'articles (il en manque 16 sur 1068, pas TROP grave) et de commentaires (il en manque genre 20 sur plus de 7000). GROS pépin, le stripping est un peu violent et me fait sauter TOUS les inserts de vidéo google / dailymotion et Youtube. Très pénible et je pense que le script doit être modifiable pour être plus relax sur les embeded. Non ? C'est peut-être le même problème qui fait sauter certains posts et commentaires. Je n'ai pas trouvé les morts au combat encore...

Second problème, online celui là, je me cogne une erreure entre chaque phase d'importation de billets :
Des blocs entiers du genre

Code: html

Warning: fwrite(): supplied argument is not a valid stream resource in /le/chemin/du/site/wp-admin/import/flatimport.php on line 213

Warning: fwrite(): supplied argument is not a valid stream resource in /le/chemin/du/sitewp-admin/import/flatimport.php on line 213

Warning: fclose(): supplied argument is not a valid stream resource in /le/chemin/du/site/wp-admin/import/flatimport.php on line 215
Import of comment : 640…

Warning: fopen(/le/chemin/du/site/wp-admin/import/../../wp-content/uploads/blog-backup-recovery.txt): failed to open stream: Permission denied in /le/chemin/du/site/wp-admin/import/flatimport.php on line 210

Warning: fwrite(): supplied argument is not a valid stream resource in /le/chemin/du/site/wp-admin/import/flatimport.php on line 213

Warning: fwrite(): supplied argument is not a valid stream resource in /le/chemin/du/site/wp-admin/import/flatimport.php on line 213

Etc.

Ca n'emêche pas le script d'importer le même nombre de billets mais en revanche les commentaires sont bloqués vers 1088.

Voilà, j'espère avoir été assez complet. Et que l'auteur de ce script est encore dans le coin pour sauver un future user. wink

En tout cas merci pour votre travail à tous !

Hors ligne

 

#17 12-12-2006 19:38:38

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

Le script n'arrive pas à ouvrir le fichier wp-content/uploads/blog-backup-recovery.txt

Est-ce que ce fichier a été créé ? Si non cela doit indiquer que le répertoire uploads n'est pas accessible en écriture (il doit l'être).

Peux-tu m'indiquer par MP l'URL du fichier blog-backup.txt pour que je puisse le tester.

Pour les inserts de vidéo google / dailymotion et Youtube : le script flatimport ne touche pas au contenu du billet ; il utilise la fonction wp_insert_post() ; il faut voir si celle-ci prend bien en compte ces inserts. Mais il me faut un exemple pour tester.

Dernière modification par albaran (12-12-2006 19:39:14)

Hors ligne

 

#18 13-12-2006 04:35:59

Akabane
Membre WP
Date d'inscription: 12-12-2006
Messages: 7

Re: [Import] Dotclear par fichier texte

albaran a écrit:

Le script n'arrive pas à ouvrir le fichier wp-content/uploads/blog-backup-recovery.txt
Est-ce que ce fichier a été créé ? Si non cela doit indiquer que le répertoire uploads n'est pas accessible en écriture (il doit l'être).
Peux-tu m'indiquer par MP l'URL du fichier blog-backup.txt pour que je puisse le tester.
Pour les inserts de vidéo google / dailymotion et Youtube : le script flatimport ne touche pas au contenu du billet ; il utilise la fonction wp_insert_post() ; il faut voir si celle-ci prend bien en compte ces inserts. Mais il me faut un exemple pour tester.

Ok, tout fonctionne pour l'import des posts now, pas du tout pensé aux droits en écriture (alors que j'avais vu que ça bossait dure dans le rep en local)...  Le plantage pour les commentaires vient du temps d'exec. sur le serveur, donc en reforçant, ça reprend bien là où il faut et tout va bien. Les chiffres finaux diffèrent toujours de quelques posts avec Dotclear2 mais rien de grave.

Je vais t'envoyer en PM des exemples du seul souci qui persiste : tous les posts qui se retrouvent vidés super proprement de leurs inserts vidéos (ce qui n'est pas le cas sous dotclear2 avec le même fichier backup).

Encore merci pour ton aide et tout le boulot sur ce script.

Hors ligne

 

#19 13-12-2006 17:02:18

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

inserts video : le pb semble connu, voir ici
Akabane, peux-tu refaire un essai en désactivant l'éditeur visuel ? (dans l'admin, profil utilisateur, décocher utiliser l'éditeur visuel pour écrire). C'est l'éditeur visuel qui fait le ménage.

Attention : repartir sur un WordPress vide, le code nettoyé par l'éditeur visuel semble collé dans le billet existant et n'est pas mis à jour.

Dernière modification par albaran (13-12-2006 17:23:05)

Hors ligne

 

#20 13-12-2006 19:55:46

Akabane
Membre WP
Date d'inscription: 12-12-2006
Messages: 7

Re: [Import] Dotclear par fichier texte

Nope... hmm
J'ai décoché ça dans le profil user et dans les profiles généraux (aux cas où) et ça ne change rien. L'import se passe sans problèmes mais les posts sont dépouillés... J'avais droppé la base de mon WP de test et reinstallé juste avant. C'est quand même fou ce truc.... oO

Hors ligne

 

#21 14-12-2006 14:15:53

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

Pourquoi le nettoyage de code est gênant ?

Quand je clique soit sur le code avant, soit sur le code après, j'affiche la même page : http://www.dailymotion.com/video/xqe8p_ … random-100
sans différence apparente.

Hors ligne

 

#22 15-12-2006 13:28:23

Akabane
Membre WP
Date d'inscription: 12-12-2006
Messages: 7

Re: [Import] Dotclear par fichier texte

On reprend tout : mon problème est que j'utilise PLEIN de vidéo en embeded DANS mon blog et que là, avec l'import Wordpress, le texte du post reste, le code EMBEDED de la vidéo vire. On se retrouve avec un post qui parle d'une vidéo non présente (et parfois sans liens du coup).
C'est UN PEU problématique... hmm

Dernière modification par Akabane (15-12-2006 13:29:21)

Hors ligne

 

#23 15-12-2006 18:50:25

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

Le script flatimport ne modifie pas le contenu du billet tel qu'il est dans blog-backup.txt

Le billet est transmis à WordPress par l'appel à la fonction wp_insert_post() ; il faudrait qu'un expert WordPress nous dise ce qu'il se passe et pourquoi le texte en HTML n'est pas mis en place sans modification et qu'il y a suppression de code.

Akabane: il serait bien pour que je puisse tester de mettre le blog-backup.txt en ligne ; tu peux m'en donner l'URL par MP.

Hors ligne

 

#24 19-12-2006 17:51:10

albaran
Bavard WP
Date d'inscription: 28-10-2006
Messages: 137
Site web

Re: [Import] Dotclear par fichier texte

Import du code d'affichage DailyMotion, YouTube, Google, video et MP3 utilisant la balise <embed>

Une solution donnée par Matt (malandry) sur le forum WordPress :

Il faut modifier le fichier wordpress/wp-includes/kses.php pour autoriser cette balise ; passer de

if (!defined('CUSTOM_TAGS'))
    define('CUSTOM_TAGS', false);
// You can override this in your my-hacks.php file
if (!CUSTOM_TAGS) {
$allowedposttags = array (

'address' => array (),
...

à
if (!defined('CUSTOM_TAGS'))
    define('CUSTOM_TAGS', false);
// You can override this in your my-hacks.php file
if (!CUSTOM_TAGS) {
$allowedposttags = array (

'embed' => array (
      'style' => array (),
      'type' => array (),
      'id' => array (),
      'height' => array (),
      'width' => array (),
      'src' => array (),
      'object' => array (),
      'height' => array (),
      'width' => array (),
      'param' => array (),
      'name' => array (),
      'value' => array ()
      ),

'address' => array (),
...


Attention : c'est une faille de sécurité potentielle, en fonction du contenu du code embeded.

C'est pas bon, ne pas utiliser, voir commentaires suivants.

Dernière modification par albaran (20-12-2006 16:32:06)

Hors ligne

 

#25 19-12-2006 18:00:23

Akabane
Membre WP
Date d'inscription: 12-12-2006
Messages: 7

Re: [Import] Dotclear par fichier texte

Rha super piste ça, je teste ça  !! Encore merci !

Hors ligne

 

Pied de page des forums

Propulsé par PunBB 1.2.23
© Copyright 2005-2006 WordPress France

[ Generated in 0.610 seconds, 32 queries executed ]