<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Salut Gé,<br>
      tu as bien bossé (en quantité et en qualité) !<br>
      Mes commentaires ci-dessous.<br>
      A+,<br>
      Damien<br>
      <br>
      <br>
      * Finding out which packages own files on your system<br>
          - "la détection des paquets <b>possèdant</b> des fichiers sur
      <b>le</b> système"<br>
          =&gt; "<b>possédant</b>"<br>
          =&gt; "sur <b>votre</b> système"<br>
      <br>
      * "Every package you install with RPM is recorded in the RPM
      database. The RPM <br>
      system includes commands to query this database to find out which
      packages <br>
      are installed and to provide<b> quite a few</b> details about
      these packages."<br>
          - "...et d'obtenir <b>quelques</b> détails au sujet de ces
      paquets."<br>
          =&gt; "... et d'obtenir <b>de nombreux</b> détails..."<br>
      <br>
      * "\n<br>
              package telnet-0.17 is not installed\n<br>
            "<br>
          =&gt; Lorsque je lance cette commande (rpm -q telnet-0.17), je
      lis ce message en Français: "<b>le paquetage telnet-0.17 n'est pas
        installé</b>"<br>
          =&gt; Au passage, c'est dommage de noter que "package" a été
      traduit en "paquetage" dans cette appli.<br>
      <br>
      * "The rpm –q command expects a package name. Although it supports
      some amount <br>
      of customized queries, you really need to know which packages you
      want the <br>
      rpm command to report on."<br>
          - "La commande rpm -q attend un nom de paquet. <b>Comme elle
        prend en charge</b> un <br>
      certain nombre d'interrogations personnalisées, elle a vraiment
      besoin de <br>
      savoir quels sont les paquets <b>dont</b> vous attendez des
      informations."<br>
          =&gt; "<b>Bien qu'elle prenne</b> en charge..."<br>
          =&gt; "les paquets <b>pour lesquels</b> vous attendez des
      informations." ?<br>
      <br>
      * "Querying everything"<br>
          - "Interroger <b>à propos d'un peu tout</b>"<br>
          =&gt; "Interroger <b>sur tout</b>"?<br>
      <br>
      * "This output has been modified to meet size constraints. Try the
      &lt;command&gt;rpm <br>
      –qa&lt;/command&gt; command to see the full output for your
      system."<br>
          - "Cette sortie a été adaptée aux contraintes de <b>volume.</b>
      Essayez la commande <br>
      &lt;command&gt;rpm –qa&lt;/command&gt; sur votre système pour voir
      une sortie complète."<br>
          =&gt; "...aux contraintes de <b>place.</b>" ?<br>
      <br>
      * "You can take advantage of the power of the Linux shells,
      though, and the <br>
      wonderful ability to pipe the output of one command into another
      to work <br>
      around this problem. With the large amount of output, you may want
      to pipe <br>
      the output to the &lt;command&gt;more&lt;/command&gt; or
      &lt;command&gt;less&lt;/command&gt; <br>
      programs, and display the output one page at a time."<br>
          - "Vous pouvez, toutefois, tirer profit de la puissance des
      interpréteurs de <br>
      commande Linux et de la merveilleuse possibilité de canaliser la
      sortie <br>
      d'une commande en entrée d'une autre pour <b>travailler</b> le
      problème. Avec une <br>
      sortie volumineuse, vous pouvez canaliser la sortie par les
      programmes <br>
      &lt;command&gt;more&lt;/command&gt; ou
      &lt;command&gt;less&lt;/command&gt; pour l'afficher page <br>
      écran par page écran."<br>
          =&gt; "pour <b>contourner</b> le problème"<br>
      <br>
      * "You can take advantage of some of the options that the grep
      command <br>
      supports, including -i for ignoring the case of the string to
      match, --<br>
      regexp to pass a regular expression to grep, and -v, to output
      only those <br>
      entries that do not match the search string."<br>
          - "Vous pouvez aussi tirer avantage de quelques options
      acceptées par la <br>
      commande grep : -i pour ne pas tenir compte de la casse de la
      chaîne à <br>
      rechercher, <b>-regexp</b> pour passer une expression régulière
      comme paramètre et -<br>
      v pour ne trier que les entrées qui ne comportent pas la chaîne
      indiquée en <br>
      paramètre."<br>
          =&gt; "<b>--regexp</b>"<br>
          =&gt; S'assurer que les caractères de "-v" ne soient pas
      séparés par un retour à la ligne.<br>
      <br>
      * "X Window System graphical desktop application"<br>
          - "<b>Applicationpour</b> le bureau graphique du système X
      Window"<br>
          =&gt; "<b>Application pour</b>..."<br>
      <br>
      * "Window manager for controlling the layout of windows on the
      screen"<br>
          - "Gestionnaire de fenêtre pour contrôler la disposition <b>de

        la fenêtre</b> à l'écran"<br>
          =&gt; "...pour contrôler la disposition <b>des fenêtres</b> à
      l'écran"<br>
      <br>
      * "There are quite a few other Linux commands you can use in
      pipelines with the <br>
      &lt;command&gt;rpm –qa&lt;/command&gt; command to better filter
      and display the data, <br>
      such as &lt;command&gt;wc –l&lt;/command&gt; to count the number
      of packages that you <br>
      query. You can also use a number of other query options to find
      out more <br>
      specialized information from the RPM database."<br>
          - "Il y a <b>quelques autres</b> commandes Linux que vous
      pouvez utiliser <b>en tube de </b><br>
      la commande &lt;command&gt;rpm –qa&lt;/command&gt; pour mieux
      filtrer l'affichage des <br>
      données, comme  &lt;command&gt;wc –l&lt;/command&gt; pour compter
      le nombre de paquets <br>
      recherchés. Vous pouvez aussi utiliser un certain nombre d'options
      de <br>
      recherche pour trouver des informations plus spécialisées dans la
      base de <br>
      données RPM."<br>
          =&gt; "Il y a <b>un grand nombre d'autres</b> commandes..."<br>
          =&gt; "que vous pouvez utiliser <b>pour canaliser</b> la
      commande..."<br>
      <br>
      * "For example, the grep command used in previous examples is
      really a file. <br>
      (Just about all Linux commands are a file of some sort, be it a
      shell script <br>
      or an executable application.) You can use a few Linux commands to
      determine <br>
      which package provides this handy program."<br>
          - "Par exemple, la commande grep utilisée dans les exemples
      précédents est en <br>
      réalité un fichier (toutes les commandes Linux sont en quelque
      sorte des <br>
      fichiers, que ce soit un script d'interpréteur ou un exécutable <br>
      d'application). Vous pouvez vous servir de quelques commandes
      Linux pour <br>
      déterminer <b>quel paquet fourni ce programme</b> si commode."<br>
          =&gt; "...quel paquet <b>fournit</b> ce programme..."<br>
      <br>
      * "First, we need the exact path to the file. For Linux commands,
      you can use <br>
      the &lt;command&gt;which&lt;/command&gt; command, if the program
      is in your path. (The <br>
      grep program must be in your path, or commands with grep will
      fail.)"<br>
          - "D'abord, nous devons connaître le chemin exact conduisant
      au fichier. Pour <br>
      les commandes Linux, <b>utilisez
        &lt;command&gt;which&lt;/command&gt;, si le programme <br>
        situe sur un des chemins</b> de votre environnement (le
      programme grep doit être <br>
      dans votre environnement, sinon la commande avec grep échouera)."<br>
          =&gt; "... utilisez &lt;command&gt;which&lt;/command&gt; si le
      programme <b>se<br>
        situe</b> sur un des chemins..."<br>
      <br>
      * "file mail is not owned by any package"<br>
          - "file mail is not owned by any package"<br>
          =&gt; lorsque je lance la commande, j'obtiens: "<b>erreur:
        fichier mail: Aucun fichier ou dossier de ce type</b>"<br>
      <br>
      * "As you can see, the name of a command does not always
      correspond directly to <br>
      the name of the package that provides that command. This is where
      the <br>
      &lt;command&gt;rpm –qf&lt;/command&gt; command proves very useful.
      Otherwise, you would <br>
      just have to know that OpenSSH is the project responsible for this
      command."<br>
          - "Comme vous le voyez, le nom d'une commande n'est pas en
      corrélation directe <br>
      avec le nom du paquet qui la fournit. C'est là que la commande
      &lt;command&gt;rpm –<br>
      qf&lt;/command&gt; montre toute son utilité. Autrement, il vous <b>faudra</b>
      juste <br>
      savoir que OpenSSH est le nom du projet en charge de cette
      commande."<br>
          =&gt; "Autrement, il vous <b>faudrait</b> juste savoir..."<br>
      <br>
      * "The sections on custom queries following in this chapter show
      how you can <br>
      query for any information stored in a package header, including
      all of the <br>
      information shown with &lt;command&gt;rpm –qi&lt;/command&gt;, as
      well as any other <br>
      header tag."<br>
          - "Les paragraphes suivants, relatifs aux interrogations
      courantes, montrent <br>
      comment questionner à propos des informations contenues dans
      l'en-tête du <br>
      paquet, y compris <b>toute celles</b> affichées avec
      &lt;command&gt;rpm –qi&lt;/command&gt;, <br>
      comme toute autre rubrique d'en-tête."<br>
          =&gt; "<b>toutes </b>celles"<br>
      <br>
      * "Getting more information"<br>
          - "Obtenir plus d'<b>information</b>"<br>
          =&gt; "Obtenir plus d'<b>informations</b>"<br>
      <br>
      * "Table 5-2 RPM File States"<br>
          - "Tableau 5-2 : <b>état</b> des fichiers RPM"<br>
          =&gt; "Tableau 5-2 : <b>états</b> des fichiers RPM"<br>
      <br>
      * "The simple scripts shown here add an entry to the /etc/shells
      file and clean <br>
      up the entry when uninstalled."<br>
          - "<b>Ce simple script</b> montré ici ajoute une entrée dans
      le fichier /etc/shells à <br>
      l'installation et nettoie l'entrée lors de la désinstallation."<br>
          =&gt; "<b>Ces simples scripts montrés ici ajoutent une entrée
        dans le fichier /etc/shells à <br>
        l'installation et nettoient l'entrée lors de la désinstallation.</b>"
      (il y a 2 scripts)<br>
      <br>
      * "For example, a network server application may have been updated
      to fix some <br>
      security problems. In that case, you likely want to upgrade. Other
      changes <br>
      may not affect your site, leading you to decide not to upgrade."<br>
          - "Par exemple, <b>un serveur réseau</b> peut avoir été mis à
      niveau pour corriger des <br>
      problèmes de sécurité. Dans ce cas, vous ferez vraisemblablement
      cette mise <br>
      à jour. D'autres modifications peuvent ne pas concerner votre
      site, vous <br>
      incitant à ne pas la faire."<br>
          =&gt; "Par exemple, <b>une application de serveur réseau</b>
      peut avoir été mis à niveau..."<br>
      <br>
      * "To find information on a package and where it is documented,
      use the <br>
      &lt;option&gt;–qdi&lt;/option&gt; option to rpm (a combination of
      the &lt;option&gt;–q&lt;/<br>
      option&gt;, &lt;option&gt;–d&lt;/option&gt;, and
      &lt;option&gt;–i&lt;/option&gt; options):"<br>
          - "Pour trouver l'information sur un paquet, ainsi que <b>sa
        situation</b>, utilisez <br>
      l'option &lt;option&gt;–qdi&lt;/option&gt; (combinaison des
      options &lt;option&gt;–q&lt;/option&gt;, <br>
      &lt;option&gt;–d&lt;/option&gt; et
      &lt;option&gt;–i&lt;/option&gt;) :"<br>
          =&gt; "Pour trouver l'information sur un paquet, ainsi que <b>l'emplacement

        de sa documentation</b>..."<br>
      <br>
      * "Package name"<br>
          - "Nom du paquet<b>.</b>"<br>
          =&gt; retirer la ponctuation<br>
      <br>
      * "If you want to mix array tags with non-array tags, you can use
      an equals <br>
      sign, &lt;literal&gt;=&lt;/literal&gt;, in front of the tag name
      to specify that the <br>
      given tag should be repeated for each item in the array. For
      example:"<br>
          - "Si vous voulez mélanger des rubriques en tables avec des
      rubriques isolées, <br>
      utilisez <b>un signe égale</b> &lt;literal&gt;=&lt;/literal&gt;
      en préfixe du nom de la <br>
      rubrique isolée pour indiquer qu'elle devra être répétée pour
      chacun des <br>
      éléments de la table. Par exemple :"<br>
          =&gt; "un signe <b>égal</b>"<br>
      <br>
      * "With the normal %{tag} syntax, this conditional syntax gets
      complicated <br>
      really fast. You need to break the elements down. For example:"<br>
          - "Avec la syntaxe normale %{RUBRIQUE}, cette syntaxe
      conditionnelle devient <br>
      rapidement compliquée. Vous devrez <b>abandonner</b> les
      éléments. Par exemple :"<br>
          =&gt; "Vous devrez <b>décomposer</b> les éléments."<br>
      <br>
      * "If the package has a value for the
      &lt;literal&gt;EPOCH&lt;/literal&gt; tag, you will <br>
      see output as shown in this example. Most packages do not have an
      <br>
      &lt;literal&gt;EPOCH&lt;/literal&gt; defined, in which case, you
      will \\ see output like <br>
      the following:"<br>
          - "Si le paquet <b>le paquet</b> dispose d'une valeur pour la
      rubrique &lt;literal&gt;EPOCH&lt;/<br>
      literal&gt;, vous verrez un affichage comme celui de cet exemple.
      Mais la <br>
      plupart des paquets ne définissent pas la rubrique
      &lt;literal&gt;EPOCH&lt;/literal&gt;, <br>
      dans ce cas, vous verrez une sortie comme :"<br>
          =&gt; "le paquet" est répété en début de phrase<br>
      <br>
      * "The REQUIRENAME tag holds an array of required capability
      names. The <br>
      REQUIREVERSION tag holds an array of the versions of the required
      <br>
      capabilities. The REQUIREFLAGS tag ties the two together with a
      set of bit <br>
      flags that specify whether the requirement is for a version less
      than the <br>
      given number, equal to the given number, greater than or equal to
      the given <br>
      number, and so on."<br>
          - "La rubrique REQUIRENAME contient la table des noms des
      fonctionnalités <br>
      requises. La rubrique REQUIREVERSION contient la table de leurs
      numéros de <br>
      version respectifs. La rubrique REQUIREFLAGS lie les deux <b>avec
        un jeu de <br>
        fanions qui indiquent</b> si la fonctionnalité requise doit
      avoir un numéro de <br>
      version inférieur à, égal à, plus grand ou égal au nombre indiqué,
      et ainsi <br>
      de suite."<br>
          =&gt; "...avec <b>un jeu d'indicateurs</b> qui <b>indique</b>..."
      : 'flag' se traduit par 'indicateur' + 'indique' au singulier<br>
      <br>
      * "Array of flags for the capabilities this package conflicts"<br>
          - "Table des <b>fanions</b> pour les fonctionnalités en
      conflit avec le paquet"<br>
          =&gt; "Table des <b>indicateurs</b>"<br>
      <br>
      * "Array of flags for the capabilities this package requires"<br>
          - "Table de <b>fanions</b> pour les fonctionnalités requises
      pour le paquet"<br>
          =&gt; "Table <b>d'indicateurs</b>..."<br>
      <br>
      * "Array of flags for the capabilities this package obsoletes"<br>
          - "Table des <b>fanions</b> pour les fonctionnalités que le
      paquet rend obsolètes"<br>
          =&gt; "Table des <b>indicateurs</b>"<br>
      <br>
      * 343 : "Array of version numbers that this package conflicts"<br>
          - "Table des <b>numéros de version </b>avec lesquels le
      paquet est en conflit"<br>
          =&gt; Ici, version sans 's'<br>
      <br>
      * 349 : "Array of version numbers that this package requires"<br>
          - "Table des <b>numéros de versions</b> des fonctionnalités
      requises par le paquet"<br>
          =&gt; là, versions avec un 's' final<br>
      <br>
      * 355 : "Array of version numbers that this package obsoletes"<br>
          - "Table des <b>numéros de version</b> des fonctionnalités
      rendues obsolètes"<br>
          =&gt; à nouveau pas de 's'<br>
      <br>
      * Remplacer "fanion" par "indicateur" dans les paragraphes :<br>
          - 359<br>
          - 363<br>
          - 402<br>
          - 412<br>
          - 434<br>
      <br>
      * "For those requirements that have specific version numbers, this
      command <br>
      prints out the version number along with the operator, such as
      &amp;gt;= for a <br>
      version greater than or equal to the given number."<br>
          - "Pour les conditions dépendant d'un numéro de version
      spécifique, cette <br>
      commande affiche le numéro de version qualifié par un opérateur,
      comme &amp;gt;= <br>
      pour une version dont le numéro doit être <b>supérieur</b> à une
      valeur donnée."<br>
          =&gt; "...dont le numéro doit être supérieur <b>ou égal </b>à
      une valeur donnée.<br>
      <br>
      * 410 : "Array of inodes for each file"<br>
          - "<b>Tables</b> des nœuds d'index de chaque fichier"<br>
          =&gt; "<b>Table</b>" au singulier, comme partout ailleurs<br>
      <br>
      * 422 : "When listing file information, use the square bracket
      array syntax with your <br>
      query formats. You can use the perms special formatting option for
      the file <br>
      modes. For example:"<br>
          - "Quand vous listez les informations des fichiers, utilisez
      la syntaxe avec <br>
      des crochets de table dans les formats d'interrogation. Vous
      pouvez utiliser <br>
      l'option spéciale de format des droits d'accès pour le mode des
      fichiers. <br>
      Par exemple :"<br>
          =&gt; "Vous pouvez utiliser l'option spéciale de format <b>«
        perms » </b>des droits d'accès..."<br>
      <br>
      * 444 : "For example, you can list the version of RPM that created
      a package with a <br>
      command like the following:"<br>
          - "Par exemple, vous pouvez lister <b>les versions de RPM
        avec laquelle</b> le paquet <br>
      a été créé avec une commande comme celle-ci :"<br>
          =&gt; "...<b>la version</b> de RPM avec laquelle..."<br>
      <br>
      * 469 : "In addition to querying the RPM database about installed
      packages, the rpm <br>
      command provides the handy ability to extract information from RPM
      files. <br>
      This is very useful for determining whether you want to install a
      given <br>
      package or not. It also helps with the simple task of figuring out
      what a <br>
      package’s purpose, especially if names like kudzu, anaconda, or
      dia don’t <br>
      immediately tell you what the corresponding packages provide."<br>
          - "En plus de questionner la base de données RPM au sujet des
      paquets <br>
      installés, la commande rpm fournit la possibilité pratique
      d'extraire de <br>
      l'information des fichiers RPM. Cette information est très utile
      pour <br>
      décider, <b>ou ne pas</b>, de l'installation d'un paquet. Cela
      permet aussi de <br>
      comprendre quels sont les objectifs du paquet, en particulier si
      son nom tel <br>
      kudzu, anaconda ou dia ne suggère pas ce que le paquet
      correspondant fournit."<br>
          =&gt; " utile pour décider, <b>ou pas</b>, <b>d'installer</b>
      <b>un </b>paquet..."<br>
      <br>
      * 484 : "Names the proxy system"<br>
          - "<b>Noms</b> <b>dans</b> le système de proxy"<br>
          =&gt; "<b>Nomme</b> le système de proxy"<br>
      <br>
      * 504 : "File size differs."<br>
          - "Taille de fichier <b>diffèrente</b>."<br>
          =&gt; "Taille de fichier <b>différente</b>."<br>
          =&gt; Idem pour :<br>
                  - 506<br>
                  - 508<br>
                  - 514<br>
                  - 516<br>
                  - 518<br>
      <br>
      * 556 : "As mentioned in &lt;xref linkend="ch-rpm-overview" /&gt;
      , the RPM database is <br>
      stored in /var/lib/rpm. The files in that directory are Berkeley
      DB files, <br>
      as shown by the file command:"<br>
          - "Comme mentionné au &lt;xref linkend="ch-rpm-overview"
      /&gt;, la base de données <br>
      RPM est située dans le <b>répertoire  /var/lib/rpm</b>. Les
      fichiers dans ce <br>
      répertoires sont des fichiers DB Berkeley, ainsi que le montre la
      commande :"<br>
          =&gt; 2 espaces entre "répertoire" et "/var/lib/rpm"<br>
          =&gt; Pareil en 563<br>
      <br>
      * 558 : "Each file is a separate database in Berkeley DB format,
      except for a few <br>
      __db data files. (These are not really X11 font files, just plain
      data <br>
      files. The file command is confused by the data in the files.)"<br>
          - "Chaque fichier est une base de données distincte au format
      DB Berkeley, <br>
      excepté pour quelques rares fichiers __db data (ce ne sont pas en
      réalité <br>
      des fichiers de polices X11, mais uniquement de données brutes. Le
      fichier <br>
      de commande est <b>incorporé</b> dans les données des fichiers)."<br>
          =&gt; Tu as traduit "confused" par "incorporé" alors qu'n
      elisant l'original je comprends plus le sens de "confusion" entre
      les fichiers de polices X11 et les données __db.<br>
      <br>
      * 575 : "If the RPM system cannot be rebuilt, you may have to
      reinstall the operating <br>
      system to recreate a clean system. In general, if things are this
      far gone, <br>
      reinstalling may be your best answer instead of wiping the RPM
      database and <br>
      creating an empty database."<br>
          - "Si le système <b>rpm</b> ne peut pas être rebâti, vous
      devrez peut-être réinstaller <br>
      le système d'exploitation pour recréer un système propre. En règle
      générale, <br>
      si les choses sont allées aussi loin, la réinstallation peut être
      une <br>
      réponse préférable à celle d'effacer la base de données RPM et
      d'en créer <br>
      une vide."<br>
          =&gt; "Si le système <b>RPM</b>..."<br>
      <br>
      * 576 : "You can also use the
      &lt;option&gt;--dbpath&lt;/option&gt; option to tell the rpm <br>
      command to create an RPM database in a different directory."<br>
          - "Vous pouvez aussi utiliser l'option
      &lt;option&gt;--dbpath&lt;/option&gt; pour demander <br>
      à la commande rpm de créer une base de données <b>dans une
        répertoire</b> différent."<br>
          =&gt; "Vous pouvez aussi utiliser l'option
      &lt;option&gt;--dbpath&lt;/option&gt; pour demander <br>
      à la commande rpm de créer une base de données <b>dans un
        répertoire</b> différent."<br>
      <br>
      * 582 : "The RPM database maintains a lot of information about the
      files and packages <br>
      on your system. Thus, it is crucial for managing your Linux
      systems. You <br>
      should back up the RPM database before and after any installation,
      upgrade, <br>
      or removal of packages."<br>
          - "La base de données RPM contient un ensemble d'informations
      au sujet des <br>
      fichiers et paquets sur votre système. Elle est donc essentielle à
      la <br>
      gestion des systèmes Linux. <b>Vous devez sauvegarder</b> la base
      de données RPM <br>
      avant et après chaque installation, mise à niveau ou <b>enlèvement</b>
      de paquet."<br>
          =&gt; "Vous <b>devriez</b> sauvegarder..."<br>
          =&gt; "<b>suppression</b> de paquet."<br>
      <br>
      <br>
      <br>
      <br>
      Le 12/08/2012 10:41, Damien Gourbiere a écrit :<br>
    </div>
    <blockquote cite="mid:50276C3F.9050208@gmail.com" type="cite">Je
      prends la relecture mais comme c'est une gros morceau, ça risque
      de durer quelques jours. <br>
      <br>
      Le 26/07/2012 22:19, Gérard a écrit : <br>
      <blockquote type="cite">Le 26/07/2012 22:16, Gérard a écrit : <br>
        <blockquote type="cite">Le 22/07/2012 11:35, "Gérard - g.mail" a
          écrit : <br>
          <blockquote type="cite">Sans commentaire <br>
            Gé <br>
          </blockquote>
          Ma proposition jointe. <br>
          Gé <br>
          <br>
        </blockquote>
        Le même, mais avec sujet mis à jour. <br>
        Voir le po dans le précédent. <br>
        Scuse me! <br>
        <br>
        -- <br>
        trans-fr mailing list <br>
        <a class="moz-txt-link-abbreviated"
          href="mailto:trans-fr@lists.fedoraproject.org">trans-fr@lists.fedoraproject.org</a>
        <br>
        <a class="moz-txt-link-freetext"
          href="https://admin.fedoraproject.org/mailman/listinfo/trans-fr">https://admin.fedoraproject.org/mailman/listinfo/trans-fr</a>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
    <br>
  </body>
</html>