diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/mhchem')
-rw-r--r-- | Master/texmf-dist/tex/latex/mhchem/hpstatement.sty | 475 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/mhchem/mhchem.sty | 509 |
2 files changed, 713 insertions, 271 deletions
diff --git a/Master/texmf-dist/tex/latex/mhchem/hpstatement.sty b/Master/texmf-dist/tex/latex/mhchem/hpstatement.sty index 0f58459ecfa..e405ecab27a 100644 --- a/Master/texmf-dist/tex/latex/mhchem/hpstatement.sty +++ b/Master/texmf-dist/tex/latex/mhchem/hpstatement.sty @@ -1,5 +1,5 @@ %% hpstatement.sty -%% Copyright 2004-2013 Martin Hensel +%% Copyright 2004-2016 Martin Hensel % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License version 1.3c @@ -46,10 +46,10 @@ % substances and mixtures % http://new.eur-lex.europa.eu/legal-content/EN/TXT/?qid=1369907325497\&uri=CELEX:32011R0286 % -% The statements themselves therefore are not subject to the LPPL. +% The statements themselves, therefore, are not subject to the LPPL. % % -\ProvidesPackage{hpstatement}[2013/07/02 v1.01 H and P statements (mhchem bundle)] +\ProvidesPackage{hpstatement}[2016/02/09 v1.02 H and P statements (mhchem bundle)] \RequirePackage{babel} \RequirePackage{twoopt} \RequirePackage{ifthen} @@ -139,9 +139,14 @@ \mhchem@hp@iflanguagename{australian}{\mhchem@hp@data@english{#1}{#2}{#3}}{% \mhchem@hp@iflanguagename{newzealand}{\mhchem@hp@data@english{#1}{#2}{#3}}{% % + \mhchem@hp@iflanguagename{french}{\mhchem@hp@data@french{#1}{#2}{#3}}{% + \mhchem@hp@iflanguagename{francais}{\mhchem@hp@data@french{#1}{#2}{#3}}{% + \mhchem@hp@iflanguagename{canadien}{\mhchem@hp@data@french{#1}{#2}{#3}}{% + \mhchem@hp@iflanguagename{acadian}{\mhchem@hp@data@french{#1}{#2}{#3}}{% + % \mhchem@hp@iflanguagename{ngerman}{\mhchem@hp@data@ngerman{#1}{#2}{#3}}{% \mhchem@hp@iflanguagename{naustrian}{\mhchem@hp@data@ngerman{#1}{#2}{#3}}{% - }}}}}}}}}}% + }}}}}}}}}}}}}}% } \newcommand*\mhchem@hp@ii[4]{% @@ -256,10 +261,10 @@ \mhchem@hp@ii{#3}{H360-1}{H360}{May damage fertility or the unborn child#1.}% \mhchem@hp@ii{#3}{H360F-0}{H360F}{May damage fertility.}% \mhchem@hp@ii{#3}{H360D-0}{H360D}{May damage the unborn child.}% -\mhchem@hp@ii{#3}{H360f-0}{H360f}{Suspected of damaging fertility.}% -\mhchem@hp@ii{#3}{H360d-0}{H360d}{Suspected of damaging the unborn child.}% +\mhchem@hp@ii{#3}{H361f-0}{H361f}{Suspected of damaging fertility.}% +\mhchem@hp@ii{#3}{H361d-0}{H361d}{Suspected of damaging the unborn child.}% \mhchem@hp@ii{#3}{H360FD-0}{H360FD}{May damage fertility. May damage the unborn child.}% -\mhchem@hp@ii{#3}{H360fd-0}{H360fd}{Suspected of damaging fertility. Suspected of damaging the unborn child.}% +\mhchem@hp@ii{#3}{H361fd-0}{H361fd}{Suspected of damaging fertility. Suspected of damaging the unborn child.}% \mhchem@hp@ii{#3}{H360Fd-0}{H360Fd}{May damage fertility. Suspected of damaging the unborn child.}% \mhchem@hp@ii{#3}{H360Df-0}{H360Df}{May damage the unborn child. Suspected of damaging fertility.}% \mhchem@hp@ii{#3}{H361.0-0}{H361}{Suspected of damaging fertility or the unborn child \textless{}state specific effect if known\textgreater{} \textless{}state route of exposure if it is conclusively proven that no other routes of exposure cause the hazard\textgreater{}.}% @@ -557,8 +562,410 @@ \mhchem@hp@ii{#3}{P501.2-error}{P501}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% \mhchem@hp@ii{#3}{P501.2-1}{P501}{Dispose of container to #1.}% } +\newcommand*\mhchem@hp@data@french[3]{% +\mhchem@hp@ii{#3}{EUH001-0}{EUH001}{Explosif \`a\allowhyphens{} l'\'e\allowhyphens{}tat sec.}% +\mhchem@hp@ii{#3}{EUH006-0}{EUH006}{Danger d'explosion en contact ou sans contact avec l'air.}% +\mhchem@hp@ii{#3}{EUH014-0}{EUH014}{R\'e\allowhyphens{}agit violemment au contact de l'eau.}% +\mhchem@hp@ii{#3}{EUH018.0-0}{EUH018}{Lors de l'utilisation, formation possible de m\'e\allowhyphens{}lange vapeur\allowhyphens{}-air inflammable/\hskip\z@skip{}explosif.}% +\mhchem@hp@ii{#3}{EUH018-error}{EUH018}{\PackageError{hpstatement}{Selection missing.\MessageBreak This statement requires a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{EUH018.1-0}{EUH018}{Lors de l'utilisation, formation possible de m\'e\allowhyphens{}lange vapeur\allowhyphens{}-air inflammable.}% +\mhchem@hp@ii{#3}{EUH018.2-0}{EUH018}{Lors de l'utilisation, formation possible de m\'e\allowhyphens{}lange vapeur\allowhyphens{}-air explosif.}% +\mhchem@hp@ii{#3}{EUH019-0}{EUH019}{Peut former des peroxydes explosifs.}% +\mhchem@hp@ii{#3}{EUH029-0}{EUH029}{Au contact de l'eau, d\'e\allowhyphens{}gage des gaz toxiques.}% +\mhchem@hp@ii{#3}{EUH031-0}{EUH031}{Au contact d'un acide, d\'e\allowhyphens{}gage un gaz toxique.}% +\mhchem@hp@ii{#3}{EUH032-0}{EUH032}{Au contact d'un acide, d\'e\allowhyphens{}gage un gaz tr\`e\allowhyphens{}s toxique.}% +\mhchem@hp@ii{#3}{EUH044-0}{EUH044}{Risque d'explosion si chauff\'e\allowhyphens{} en ambiance confin\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{EUH059-0}{EUH059}{Dangereux pour la couche d'ozone.}% +\mhchem@hp@ii{#3}{EUH066-0}{EUH066}{L'exposition r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}e peut provoquer dess\`e\allowhyphens{}chement ou ger\c{c}\allowhyphens{}ures de la peau.}% +\mhchem@hp@ii{#3}{EUH070-0}{EUH070}{Toxique par contact oculaire.}% +\mhchem@hp@ii{#3}{EUH071-0}{EUH071}{Corrosif pour les voies respiratoires.}% +\mhchem@hp@ii{#3}{EUH201-0}{EUH201}{Contient du plomb. Ne pas utiliser sur les objets susceptibles d'\^e\allowhyphens{}tre m\^a\allowhyphens{}ch\'e\allowhyphens{}s ou suc\'e\allowhyphens{}s par des enfants.}% +\mhchem@hp@ii{#3}{EUH201A-0}{EUH201A}{Attention\thinspace ! Contient du plomb.}% +\mhchem@hp@ii{#3}{EUH202-0}{EUH202}{Cyanoacrylate. Danger. Colle \`a\allowhyphens{} la peau et aux yeux en quelques secondes. \`A\allowhyphens{} conserver hors de port\'e\allowhyphens{}e des enfants.}% +\mhchem@hp@ii{#3}{EUH203-0}{EUH203}{Contient du chrome (VI). Peut produire une r\'e\allowhyphens{}action allergique.}% +\mhchem@hp@ii{#3}{EUH204-0}{EUH204}{Contient des isocyanates. Peut produire une r\'e\allowhyphens{}action allergique.}% +\mhchem@hp@ii{#3}{EUH205-0}{EUH205}{Contient des compos\'e\allowhyphens{}s \'e\allowhyphens{}poxydiques. Peut produire une r\'e\allowhyphens{}action allergique.}% +\mhchem@hp@ii{#3}{EUH206-0}{EUH206}{Attention\thinspace ! Ne pas utiliser en combinaison avec d'autres produits. Peut lib\'e\allowhyphens{}rer des gaz dangereux (chlore).}% +\mhchem@hp@ii{#3}{EUH207-0}{EUH207}{Attention\thinspace ! Contient du cadmium. Des fum\'e\allowhyphens{}es dangereuses se d\'e\allowhyphens{}veloppent pendant l'utilisation. Voir les informations fournies par le fabricant. Respectez les consignes de s\'e\allowhyphens{}curit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{EUH208.0-0}{EUH208}{Contient \textless{}nom de la substance sensibilisante\textgreater{}. Peut produire une r\'e\allowhyphens{}action allergique.}% +\mhchem@hp@ii{#3}{EUH208-error}{EUH208}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{EUH208-1}{EUH208}{Contient #1. Peut produire une r\'e\allowhyphens{}action allergique.}% +\mhchem@hp@ii{#3}{EUH209-0}{EUH209}{Peut devenir facilement inflammable en cours d'utilisation.}% +\mhchem@hp@ii{#3}{EUH209A-0}{EUH209A}{Peut devenir inflammable en cours d'utilisation.}% +\mhchem@hp@ii{#3}{EUH210-0}{EUH210}{Fiche de donn\'e\allowhyphens{}es de s\'e\allowhyphens{}curit\'e\allowhyphens{} disponible sur demande.}% +\mhchem@hp@ii{#3}{EUH401-0}{EUH401}{Respectez les instructions d'utilisation pour \'e\allowhyphens{}viter les risques pour la sant\'e\allowhyphens{} humaine et l'environnement.}% +\mhchem@hp@ii{#3}{H200-0}{H200}{Explosif instable.}% +\mhchem@hp@ii{#3}{H201-0}{H201}{Explosif\thinspace ; danger d'explosion en masse.}% +\mhchem@hp@ii{#3}{H202-0}{H202}{Explosif\thinspace ; danger s\'e\allowhyphens{}rieux de projection.}% +\mhchem@hp@ii{#3}{H203-0}{H203}{Explosif\thinspace ; danger d'incendie, d'effet de souffle ou de projection.}% +\mhchem@hp@ii{#3}{H204-0}{H204}{Danger d'incendie ou de projection.}% +\mhchem@hp@ii{#3}{H205-0}{H205}{Danger d'explosion en masse en cas d'incendie.}% +\mhchem@hp@ii{#3}{H220-0}{H220}{Gaz extr\^e\allowhyphens{}mement inflammable.}% +\mhchem@hp@ii{#3}{H221-0}{H221}{Gaz inflammable.}% +\mhchem@hp@ii{#3}{H222-0}{H222}{A\'e\allowhyphens{}rosol extr\^e\allowhyphens{}mement inflammable.}% +\mhchem@hp@ii{#3}{H223-0}{H223}{A\'e\allowhyphens{}rosol inflammable.}% +\mhchem@hp@ii{#3}{H224-0}{H224}{Liquide et vapeurs extr\^e\allowhyphens{}mement inflammables.}% +\mhchem@hp@ii{#3}{H225-0}{H225}{Liquide et vapeurs tr\`e\allowhyphens{}s inflammables.}% +\mhchem@hp@ii{#3}{H226-0}{H226}{Liquide et vapeurs inflammables.}% +\mhchem@hp@ii{#3}{H228-0}{H228}{Mati\`e\allowhyphens{}re solide inflammable.}% +\mhchem@hp@ii{#3}{H240-0}{H240}{Peut exploser sous l'effet de la chaleur.}% +\mhchem@hp@ii{#3}{H241-0}{H241}{Peut s'enflammer ou exploser sous l'effet de la chaleur.}% +\mhchem@hp@ii{#3}{H242-0}{H242}{Peut s'enflammer sous l'effet de la chaleur.}% +\mhchem@hp@ii{#3}{H250-0}{H250}{S'enflamme spontan\'e\allowhyphens{}ment au contact de l'air.}% +\mhchem@hp@ii{#3}{H251-0}{H251}{Mati\`e\allowhyphens{}re auto-\'e\allowhyphens{}chauffante\thinspace ; peut s'enflammer.}% +\mhchem@hp@ii{#3}{H252-0}{H252}{Mati\`e\allowhyphens{}re auto-\'e\allowhyphens{}chauffante en grandes quantit\'e\allowhyphens{}s\thinspace ; peut s'enflammer.}% +\mhchem@hp@ii{#3}{H260-0}{H260}{D\'e\allowhyphens{}gage au contact de l'eau des gaz inflammables qui peuvent s'enflammer spontan\'e\allowhyphens{}ment.}% +\mhchem@hp@ii{#3}{H261-0}{H261}{D\'e\allowhyphens{}gage au contact de l'eau des gaz inflammables.}% +\mhchem@hp@ii{#3}{H270-0}{H270}{Peut provoquer ou aggraver un incendie\thinspace ; comburant.}% +\mhchem@hp@ii{#3}{H271-0}{H271}{Peut provoquer un incendie ou une explosion\thinspace ; comburant puissant.}% +\mhchem@hp@ii{#3}{H272-0}{H272}{Peut aggraver un incendie\thinspace ; comburant.}% +\mhchem@hp@ii{#3}{H280-0}{H280}{Contient un gaz sous pression\thinspace ; peut exploser sous l'effet de la chaleur.}% +\mhchem@hp@ii{#3}{H281-0}{H281}{Contient un gaz r\'e\allowhyphens{}frig\'e\allowhyphens{}r\'e\allowhyphens{}\thinspace ; peut causer des br\^u\allowhyphens{}lures ou blessures cryog\'e\allowhyphens{}niques.}% +\mhchem@hp@ii{#3}{H290-0}{H290}{Peut \^e\allowhyphens{}tre corrosif pour les m\'e\allowhyphens{}taux.}% +\mhchem@hp@ii{#3}{H300-0}{H300}{Mortel en cas d'ingestion.}% +\mhchem@hp@ii{#3}{H301-0}{H301}{Toxique en cas d'ingestion.}% +\mhchem@hp@ii{#3}{H302-0}{H302}{Nocif en cas d'ingestion.}% +\mhchem@hp@ii{#3}{H304-0}{H304}{Peut \^e\allowhyphens{}tre mortel en cas d'ingestion et de p\'e\allowhyphens{}n\'e\allowhyphens{}tration dans les voies respiratoires.}% +\mhchem@hp@ii{#3}{H310-0}{H310}{Mortel par contact cutan\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H311-0}{H311}{Toxique par contact cutan\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H312-0}{H312}{Nocif par contact cutan\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H314-0}{H314}{Provoque des br\^u\allowhyphens{}lures de la peau et des l\'e\allowhyphens{}sions oculaires graves.}% +\mhchem@hp@ii{#3}{H315-0}{H315}{Provoque une irritation cutan\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H317-0}{H317}{Peut provoquer une allergie cutan\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H318-0}{H318}{Provoque des l\'e\allowhyphens{}sions oculaires graves.}% +\mhchem@hp@ii{#3}{H319-0}{H319}{Provoque une s\'e\allowhyphens{}v\`e\allowhyphens{}re irritation des yeux.}% +\mhchem@hp@ii{#3}{H330-0}{H330}{Mortel par inhalation.}% +\mhchem@hp@ii{#3}{H331-0}{H331}{Toxique par inhalation.}% +\mhchem@hp@ii{#3}{H332-0}{H332}{Nocif par inhalation.}% +\mhchem@hp@ii{#3}{H334-0}{H334}{Peut provoquer des sympt\^o\allowhyphens{}mes allergiques ou d'asthme ou des difficult\'e\allowhyphens{}s respiratoires par inhalation.}% +\mhchem@hp@ii{#3}{H335-0}{H335}{Peut irriter les voies respiratoires.}% +\mhchem@hp@ii{#3}{H336-0}{H336}{Peut provoquer somnolence ou vertiges.}% +\mhchem@hp@ii{#3}{H340.0-0}{H340}{Peut induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H340-error}{H340}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H340-0}{H340}{Peut induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques.}% +\mhchem@hp@ii{#3}{H340-1}{H340}{Peut induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques#1.}% +\mhchem@hp@ii{#3}{H341.0-0}{H341}{Susceptible d'induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H341-error}{H341}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H341-0}{H341}{Susceptible d'induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques.}% +\mhchem@hp@ii{#3}{H341-1}{H341}{Susceptible d'induire des anomalies g\'e\allowhyphens{}n\'e\allowhyphens{}tiques#1.}% +\mhchem@hp@ii{#3}{H350.0-0}{H350}{Peut provoquer le cancer \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H350-error}{H350}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H350-0}{H350}{Peut provoquer le cancer.}% +\mhchem@hp@ii{#3}{H350-1}{H350}{Peut provoquer le cancer#1.}% +\mhchem@hp@ii{#3}{H350i-0}{H350i}{Peut provoquer le cancer par inhalation.}% +\mhchem@hp@ii{#3}{H351.0-0}{H351}{Susceptible de provoquer le cancer \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H351-error}{H351}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H351-0}{H351}{Susceptible de provoquer le cancer.}% +\mhchem@hp@ii{#3}{H351-1}{H351}{Susceptible de provoquer le cancer#1.}% +\mhchem@hp@ii{#3}{H360.0-0}{H360}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus \textless{}indiquer l'effet sp\'e\allowhyphens{}cifique s'il est connu\textgreater{} \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H360-error}{H360}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H360-0}{H360}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H360-1}{H360}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus#1.}% +\mhchem@hp@ii{#3}{H360F-0}{H360F}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H360D-0}{H360D}{Peut nuire au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H361f-0}{H361f}{Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H361d-0}{H361d}{Susceptible de nuire au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H360FD-0}{H360FD}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}. Peut nuire au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H361fd-0}{H361fd}{Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}. Susceptible de nuire au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H360Fd-0}{H360Fd}{Peut nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}. Susceptible de nuire au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H360Df-0}{H360Df}{Peut nuire au f\oe\allowhyphens{}tus. Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{H361.0-0}{H361}{Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus \textless{}indiquer l'effet s'il est connu\textgreater{} \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H361-error}{H361}{\PackageError{hpstatement}{Too many arguments.\MessageBreak This statement has an optional text argument.\MessageBreak Please use no argument or exactly one with [].\MessageBreak Or use <number>.0 for the original form}{}}% +\mhchem@hp@ii{#3}{H361-0}{H361}{Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus.}% +\mhchem@hp@ii{#3}{H361-1}{H361}{Susceptible de nuire \`a\allowhyphens{} la fertilit\'e\allowhyphens{} ou au f\oe\allowhyphens{}tus#1.}% +\mhchem@hp@ii{#3}{H362-0}{H362}{Peut \^e\allowhyphens{}tre nocif pour les b\'e\allowhyphens{}b\'e\allowhyphens{}s nourris au lait maternel.}% +\mhchem@hp@ii{#3}{H370.0-0}{H370}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour les organes \textless{}ou indiquer tous les organes affect\'e\allowhyphens{}s, s'ils sont connus\textgreater{} \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H370-error}{H370}{\PackageError{hpstatement}{This statement has two optional text arguments.\MessageBreak Please specify them with [][]. Or append .0\MessageBreak to the number for the original form}{}}% +\mhchem@hp@ii{#3}{H370-0}{H370}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour les organes.}% +\mhchem@hp@ii{#3}{H370-1}{H370}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour #1.}% +\mhchem@hp@ii{#3}{H370-2}{H370}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour #1#2.}% +\mhchem@hp@ii{#3}{H371.0-0}{H371}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour les organes \textless{}ou indiquer tous les organes affect\'e\allowhyphens{}s, s'ils sont connus\textgreater{} \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H371-error}{H371}{\PackageError{hpstatement}{This statement has two optional text arguments.\MessageBreak Please specify them with [][]. Or append .0\MessageBreak to the number for the original form}{}}% +\mhchem@hp@ii{#3}{H371-0}{H371}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour les organes.}% +\mhchem@hp@ii{#3}{H371-1}{H371}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour #1.}% +\mhchem@hp@ii{#3}{H371-2}{H371}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour #1#2.}% +\mhchem@hp@ii{#3}{H372.0-0}{H372}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour les organes \textless{}indiquer tous les organes affect\'e\allowhyphens{}s, s'ils sont connus\textgreater{} \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H372-error}{H372}{\PackageError{hpstatement}{This statement has two optional text arguments.\MessageBreak Please specify them with [][]. Or append .0\MessageBreak to the number for the original form}{}}% +\mhchem@hp@ii{#3}{H372-0}{H372}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour les organes \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H372-1}{H372}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour #1 \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H372-2}{H372}{Risque av\'e\allowhyphens{}r\'e\allowhyphens{} d'effets graves pour #1 \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e#2.}% +\mhchem@hp@ii{#3}{H373.0-0}{H373}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour les organes \textless{}ou indiquer tous les organes affect\'e\allowhyphens{}s, s'ils sont connus\textgreater{} \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e \textless{}indiquer la voie d'exposition s'il est formellement prouv\'e\allowhyphens{} qu'aucune autre voie d'exposition ne conduit au m\^e\allowhyphens{}me danger\textgreater{}.}% +\mhchem@hp@ii{#3}{H373-error}{H373}{\PackageError{hpstatement}{This statement has two optional text arguments.\MessageBreak Please specify them with [][]. Or append .0\MessageBreak to the number for the original form}{}}% +\mhchem@hp@ii{#3}{H373-0}{H373}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour les organes \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H373-1}{H373}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour #1 \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{H373-2}{H373}{Risque pr\'e\allowhyphens{}sum\'e\allowhyphens{} d'effets graves pour #1 \`a\allowhyphens{} la suite d'expositions r\'e\allowhyphens{}p\'e\allowhyphens{}t\'e\allowhyphens{}es ou d'une exposition prolong\'e\allowhyphens{}e#2.}% +\mhchem@hp@ii{#3}{H300+H310-0}{H300\,+\,\hskip\z@skip{}H310}{Mortel par ingestion ou par contact cutan\'e\allowhyphens{}}% +\mhchem@hp@ii{#3}{H300+H330-0}{H300\,+\,\hskip\z@skip{}H330}{Mortel par ingestion ou par inhalation}% +\mhchem@hp@ii{#3}{H310+H330-0}{H310\,+\,\hskip\z@skip{}H330}{Mortel par contact cutan\'e\allowhyphens{} ou par inhalation}% +\mhchem@hp@ii{#3}{H300+H310+H330-0}{H300\,+\,\hskip\z@skip{}H310\,+\,\hskip\z@skip{}H330}{Mortel par ingestion, par contact cutan\'e\allowhyphens{} ou par inhalation}% +\mhchem@hp@ii{#3}{H301+H311-0}{H301\,+\,\hskip\z@skip{}H311}{Toxique par ingestion ou par contact cutan\'e\allowhyphens{}}% +\mhchem@hp@ii{#3}{H301+H331-0}{H301\,+\,\hskip\z@skip{}H331}{Toxique par ingestion ou par inhalation}% +\mhchem@hp@ii{#3}{H311+H331-0}{H311\,+\,\hskip\z@skip{}H331}{Toxique par contact cutan\'e\allowhyphens{} ou par inhalation}% +\mhchem@hp@ii{#3}{H301+H311+H331-0}{H301\,+\,\hskip\z@skip{}H311\,+\,\hskip\z@skip{}H331}{Toxique par ingestion, par contact cutan\'e\allowhyphens{} ou par inhalation}% +\mhchem@hp@ii{#3}{H302+H312-0}{H302\,+\,\hskip\z@skip{}H312}{Nocif en cas d'ingestion ou de contact cutan\'e\allowhyphens{}}% +\mhchem@hp@ii{#3}{H302+H332-0}{H302\,+\,\hskip\z@skip{}H332}{Nocif en cas d'ingestion ou d'inhalation}% +\mhchem@hp@ii{#3}{H312+H332-0}{H312\,+\,\hskip\z@skip{}H332}{Nocif en cas de contact cutan\'e\allowhyphens{} ou d'inhalation}% +\mhchem@hp@ii{#3}{H301+H312+H332-0}{H301\,+\,\hskip\z@skip{}H312\,+\,\hskip\z@skip{}H332}{Nocif en cas d'ingestion, de contact cutan\'e\allowhyphens{} ou d'inhalation}% +\mhchem@hp@ii{#3}{H400-0}{H400}{Tr\`e\allowhyphens{}s toxique pour les organismes aquatiques.}% +\mhchem@hp@ii{#3}{H410-0}{H410}{Tr\`e\allowhyphens{}s toxique pour les organismes aquatiques, entra\^i\allowhyphens{}ne des effets n\'e\allowhyphens{}fastes \`a\allowhyphens{} long terme.}% +\mhchem@hp@ii{#3}{H411-0}{H411}{Toxique pour les organismes aquatiques, entra\^i\allowhyphens{}ne des effets n\'e\allowhyphens{}fastes \`a\allowhyphens{} long terme.}% +\mhchem@hp@ii{#3}{H412-0}{H412}{Nocif pour les organismes aquatiques, entra\^i\allowhyphens{}ne des effets n\'e\allowhyphens{}fastes \`a\allowhyphens{} long terme.}% +\mhchem@hp@ii{#3}{H413-0}{H413}{Peut \^e\allowhyphens{}tre nocif \`a\allowhyphens{} long terme pour les organismes aquatiques.}% +\mhchem@hp@ii{#3}{H420-0}{H420}{Nuit \`a\allowhyphens{} la sant\'e\allowhyphens{} publique et \`a\allowhyphens{} l'environnement en d\'e\allowhyphens{}truisant l'ozone dans la haute atmosph\`e\allowhyphens{}re.}% +\mhchem@hp@ii{#3}{P101-0}{P101}{En cas de consultation d'un m\'e\allowhyphens{}decin, garder \`a\allowhyphens{} disposition le r\'e\allowhyphens{}cipient ou l'\'e\allowhyphens{}tiquette.}% +\mhchem@hp@ii{#3}{P101.nolabel-error}{P101}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P101.nolabel-1}{P101}{En cas de consultation d'un m\'e\allowhyphens{}decin, garder \`a\allowhyphens{} disposition le r\'e\allowhyphens{}cipient ou #1.}% +\mhchem@hp@ii{#3}{P102-0}{P102}{Tenir hors de port\'e\allowhyphens{}e des enfants.}% +\mhchem@hp@ii{#3}{P103-0}{P103}{Lire l'\'e\allowhyphens{}tiquette avant utilisation.}% +\mhchem@hp@ii{#3}{P103.nolabel-error}{P103}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P103.nolabel-1}{P103}{Lire #1 avant utilisation.}% +\mhchem@hp@ii{#3}{P201-0}{P201}{Se procurer les instructions avant utilisation.}% +\mhchem@hp@ii{#3}{P202-0}{P202}{Ne pas manipuler avant d'avoir lu et compris toutes les pr\'e\allowhyphens{}cautions de s\'e\allowhyphens{}curit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P210.0-0}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart de la chaleur/\hskip\z@skip{}des \'e\allowhyphens{}tincelles/\hskip\z@skip{}des flammes nues/\hskip\z@skip{}des surfaces chaudes. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P210-error}{P210}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P210-1}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart #1. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P210.1-0}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart de la chaleur. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P210.2-0}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des \'e\allowhyphens{}tincelles. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P210.3-0}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des flammes nues. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P210.4-0}{P210}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des surfaces chaudes. -- Ne pas fumer.}% +\mhchem@hp@ii{#3}{P211-0}{P211}{Ne pas vaporiser sur une flamme nue ou sur toute autre source d'ignition.}% +\mhchem@hp@ii{#3}{P220.0.0-0}{P220}{Tenir/\hskip\z@skip{}stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P220-error}{P220}{\PackageError{hpstatement}{Selection and selection/argument missing.\MessageBreak This statement has 1) a mandatory selection\MessageBreak and 2) a selection or text-argument.\MessageBreak Please append .1.1, ... to the number to make a\MessageBreak selection. Or append .1 or .2 with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P220.0-error}{P220}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P220.0.1-1}{P220}{Tenir/\hskip\z@skip{}stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart #1}% +\mhchem@hp@ii{#3}{P220.0.2-0}{P220}{Tenir/\hskip\z@skip{}stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements}% +\mhchem@hp@ii{#3}{P220.0.3-0}{P220}{Tenir/\hskip\z@skip{}stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P220.1.0-0}{P220}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P220.1-error}{P220}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P220.1-1}{P220}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart #1}% +\mhchem@hp@ii{#3}{P220.1.1-0}{P220}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements}% +\mhchem@hp@ii{#3}{P220.1.2-0}{P220}{Tenir \`a\allowhyphens{} l'\'e\allowhyphens{}cart des mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P220.2.0-0}{P220}{Stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P220.2-error}{P220}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P220.2-1}{P220}{Stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart #1}% +\mhchem@hp@ii{#3}{P220.2.1-0}{P220}{Stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des v\^e\allowhyphens{}tements}% +\mhchem@hp@ii{#3}{P220.2.2-0}{P220}{Stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des mati\`e\allowhyphens{}res combustibles}% +\mhchem@hp@ii{#3}{P221.0-0}{P221}{Prendre toutes pr\'e\allowhyphens{}cautions pour \'e\allowhyphens{}viter de m\'e\allowhyphens{}langer avec des mati\`e\allowhyphens{}res combustibles\textellipsis{}}% +\mhchem@hp@ii{#3}{P221-error}{P221}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P221-1}{P221}{Prendre toutes pr\'e\allowhyphens{}cautions pour \'e\allowhyphens{}viter de m\'e\allowhyphens{}langer avec #1.}% +\mhchem@hp@ii{#3}{P221.1-0}{P221}{Prendre toutes pr\'e\allowhyphens{}cautions pour \'e\allowhyphens{}viter de m\'e\allowhyphens{}langer avec des mati\`e\allowhyphens{}res combustibles\textellipsis{}}% +\mhchem@hp@ii{#3}{P222-0}{P222}{Ne pas laisser au contact de l'air.}% +\mhchem@hp@ii{#3}{P223-0}{P223}{\'E\allowhyphens{}viter tout contact avec l'eau, \`a\allowhyphens{} cause du risque de r\'e\allowhyphens{}action violente et d'inflammation spontan\'e\allowhyphens{}e.}% +\mhchem@hp@ii{#3}{P230.0-0}{P230}{Maintenir humidifi\'e\allowhyphens{} avec\textellipsis{}}% +\mhchem@hp@ii{#3}{P230-error}{P230}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P230-1}{P230}{Maintenir humidifi\'e\allowhyphens{} avec #1.}% +\mhchem@hp@ii{#3}{P231-0}{P231}{Manipuler sous gaz inerte.}% +\mhchem@hp@ii{#3}{P231+P232-0}{P231\,+\,\hskip\z@skip{}P232}{Manipuler sous gaz inerte. Prot\'e\allowhyphens{}ger de l'humidit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P232-0}{P232}{Prot\'e\allowhyphens{}ger de l'humidit\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P233-0}{P233}{Maintenir le r\'e\allowhyphens{}cipient ferm\'e\allowhyphens{} de mani\`e\allowhyphens{}re \'e\allowhyphens{}tanche.}% +\mhchem@hp@ii{#3}{P234-0}{P234}{Conserver uniquement dans le r\'e\allowhyphens{}cipient d'origine.}% +\mhchem@hp@ii{#3}{P235-0}{P235}{Tenir au frais.}% +\mhchem@hp@ii{#3}{P235+P410-0}{P235\,+\,\hskip\z@skip{}P410}{Tenir au frais. Prot\'e\allowhyphens{}ger du rayonnement solaire.}% +\mhchem@hp@ii{#3}{P240-0}{P240}{Mise \`a\allowhyphens{} la terre/\hskip\z@skip{}liaison \'e\allowhyphens{}quipotentielle du r\'e\allowhyphens{}cipient et du mat\'e\allowhyphens{}riel de r\'e\allowhyphens{}ception.}% +\mhchem@hp@ii{#3}{P241.0-0}{P241}{Utiliser du mat\'e\allowhyphens{}riel \'e\allowhyphens{}lectrique/\hskip\z@skip{}de ventilation/\hskip\z@skip{}d'\'e\allowhyphens{}clairage/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}antid\'e\allowhyphens{}flagrant.}% +\mhchem@hp@ii{#3}{P241-error}{P241}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P241-1}{P241}{Utiliser du mat\'e\allowhyphens{}riel #1 antid\'e\allowhyphens{}flagrant.}% +\mhchem@hp@ii{#3}{P241.1-0}{P241}{Utiliser du mat\'e\allowhyphens{}riel \'e\allowhyphens{}lectrique antid\'e\allowhyphens{}flagrant.}% +\mhchem@hp@ii{#3}{P241.2-0}{P241}{Utiliser de ventilation antid\'e\allowhyphens{}flagrant.}% +\mhchem@hp@ii{#3}{P241.3-0}{P241}{Utiliser d'\'e\allowhyphens{}clairage antid\'e\allowhyphens{}flagrant.}% +\mhchem@hp@ii{#3}{P242-0}{P242}{Ne pas utiliser d'outils produisant des \'e\allowhyphens{}tincelles.}% +\mhchem@hp@ii{#3}{P243-0}{P243}{Prendre des mesures de pr\'e\allowhyphens{}caution contre les d\'e\allowhyphens{}charges \'e\allowhyphens{}lectrostatiques.}% +\mhchem@hp@ii{#3}{P244-0}{P244}{S'assurer de l'absence de graisse ou d'huile sur les soupapes de r\'e\allowhyphens{}duction.}% +\mhchem@hp@ii{#3}{P250.0-0}{P250}{\'E\allowhyphens{}viter les abrasions/\hskip\z@skip{}les chocs/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}les frottements.}% +\mhchem@hp@ii{#3}{P250-error}{P250}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P250-1}{P250}{\'E\allowhyphens{}viter #1.}% +\mhchem@hp@ii{#3}{P250.1-0}{P250}{\'E\allowhyphens{}viter les abrasions.}% +\mhchem@hp@ii{#3}{P250.2-0}{P250}{\'E\allowhyphens{}viter les chocs.}% +\mhchem@hp@ii{#3}{P250.3-0}{P250}{\'E\allowhyphens{}viter les frottements.}% +\mhchem@hp@ii{#3}{P251-0}{P251}{R\'e\allowhyphens{}cipient sous pression\space : ne pas perforer, ni br\^u\allowhyphens{}ler, m\^e\allowhyphens{}me apr\`e\allowhyphens{}s usage.}% +\mhchem@hp@ii{#3}{P260.0-0}{P260}{Ne pas respirer les poussi\`e\allowhyphens{}res/\hskip\z@skip{}fum\'e\allowhyphens{}es/\hskip\z@skip{}gaz/\hskip\z@skip{}brouillards/\hskip\z@skip{}vapeurs/\hskip\z@skip{}a\'e\allowhyphens{}rosols.}% +\mhchem@hp@ii{#3}{P260-error}{P260}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P260-1}{P260}{Ne pas respirer les #1.}% +\mhchem@hp@ii{#3}{P260.1-0}{P260}{Ne pas respirer les poussi\`e\allowhyphens{}res.}% +\mhchem@hp@ii{#3}{P260.2-0}{P260}{Ne pas respirer les fum\'e\allowhyphens{}es.}% +\mhchem@hp@ii{#3}{P260.3-0}{P260}{Ne pas respirer les gaz.}% +\mhchem@hp@ii{#3}{P260.4-0}{P260}{Ne pas respirer les brouillards.}% +\mhchem@hp@ii{#3}{P260.5-0}{P260}{Ne pas respirer les vapeurs.}% +\mhchem@hp@ii{#3}{P260.6-0}{P260}{Ne pas respirer les a\'e\allowhyphens{}rosols.}% +\mhchem@hp@ii{#3}{P261-0}{P261}{\'E\allowhyphens{}viter de respirer les poussi\`e\allowhyphens{}res/\hskip\z@skip{}fum\'e\allowhyphens{}es/\hskip\z@skip{}gaz/\hskip\z@skip{}brouillards/\hskip\z@skip{}vapeurs/\hskip\z@skip{}a\'e\allowhyphens{}rosols.}% +\mhchem@hp@ii{#3}{P262-0}{P262}{\'E\allowhyphens{}viter tout contact avec les yeux, la peau ou les v\^e\allowhyphens{}tements.}% +\mhchem@hp@ii{#3}{P263.0-0}{P263}{\'E\allowhyphens{}viter tout contact avec la substance au cours de la grossesse/\hskip\z@skip{}pendant l'allaitement.}% +\mhchem@hp@ii{#3}{P263-error}{P263}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P263-1}{P263}{\'E\allowhyphens{}viter tout contact avec la substance #1.}% +\mhchem@hp@ii{#3}{P263.1-0}{P263}{\'E\allowhyphens{}viter tout contact avec la substance au cours de la grossesse.}% +\mhchem@hp@ii{#3}{P263.2-0}{P263}{\'E\allowhyphens{}viter tout contact avec la substance pendant l'allaitement.}% +\mhchem@hp@ii{#3}{P264.0-0}{P264}{Se laver \textellipsis{} soigneusement apr\`e\allowhyphens{}s manipulation.}% +\mhchem@hp@ii{#3}{P264-error}{P264}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P264-1}{P264}{Se laver #1 soigneusement apr\`e\allowhyphens{}s manipulation.}% +\mhchem@hp@ii{#3}{P270-0}{P270}{Ne pas manger, boire ou fumer en manipulant ce produit.}% +\mhchem@hp@ii{#3}{P271-0}{P271}{Utiliser seulement en plein air ou dans un endroit bien ventil\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P272-0}{P272}{Les v\^e\allowhyphens{}tements de travail contamin\'e\allowhyphens{}s ne devraient pas sortir du lieu de travail.}% +\mhchem@hp@ii{#3}{P273-0}{P273}{\'E\allowhyphens{}viter le rejet dans l'environnement.}% +\mhchem@hp@ii{#3}{P280.0-0}{P280}{Porter des gants de protection/\hskip\z@skip{}des v\^e\allowhyphens{}tements de protection/\hskip\z@skip{}un \'e\allowhyphens{}quipement de protection des yeux/\hskip\z@skip{}du visage.}% +\mhchem@hp@ii{#3}{P280-error}{P280}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P280-1}{P280}{Porter #1.}% +\mhchem@hp@ii{#3}{P280.1-0}{P280}{Porter des gants de protection.}% +\mhchem@hp@ii{#3}{P280.2-0}{P280}{Porter des v\^e\allowhyphens{}tements de protection.}% +\mhchem@hp@ii{#3}{P280.3-0}{P280}{Porter un \'e\allowhyphens{}quipement de protection des yeux.}% +\mhchem@hp@ii{#3}{P280.4-0}{P280}{Porter un \'e\allowhyphens{}quipement de protection du visage.}% +\mhchem@hp@ii{#3}{P281-0}{P281}{Utiliser l'\'e\allowhyphens{}quipement de protection individuel requis.}% +\mhchem@hp@ii{#3}{P282.0-0}{P282}{Porter des gants isolants contre le froid/\hskip\z@skip{}un \'e\allowhyphens{}quipement de protection du visage/\hskip\z@skip{}des yeux.}% +\mhchem@hp@ii{#3}{P282-error}{P282}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P282-1}{P282}{Porter #1.}% +\mhchem@hp@ii{#3}{P282.1-0}{P282}{Porter des gants isolants contre le froid.}% +\mhchem@hp@ii{#3}{P282.2-0}{P282}{Porter un \'e\allowhyphens{}quipement de protection du visage.}% +\mhchem@hp@ii{#3}{P282.3-0}{P282}{Porter un \'e\allowhyphens{}quipement de protection des yeux.}% +\mhchem@hp@ii{#3}{P283.0-0}{P283}{Porter des v\^e\allowhyphens{}tements r\'e\allowhyphens{}sistant au feu/\hskip\z@skip{}aux flammes/\hskip\z@skip{}ignifuges.}% +\mhchem@hp@ii{#3}{P283-error}{P283}{\PackageError{hpstatement}{Language-dependent argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak However, translations differ so much that you\MessageBreak have to state your selection as text argument [].\MessageBreak Read the manual for possible values.\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P283-1}{P283}{Porter des v\^e\allowhyphens{}tements #1.}% +\mhchem@hp@ii{#3}{P284-0}{P284}{Porter un \'e\allowhyphens{}quipement de protection respiratoire.}% +\mhchem@hp@ii{#3}{P285-0}{P285}{Lorsque la ventilation du local est insuffisante, porter un \'e\allowhyphens{}quipement de protection respiratoire.}% +\mhchem@hp@ii{#3}{P301-0}{P301}{EN CAS D'INGESTION\space :}% +\mhchem@hp@ii{#3}{P301+P310-0}{P301\,+\,\hskip\z@skip{}P310}{EN CAS D'INGESTION\space : appeler imm\'e\allowhyphens{}diatement un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P301+P312-0}{P301\,+\,\hskip\z@skip{}P312}{EN CAS D'INGESTION\space : appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin en cas de malaise.}% +\mhchem@hp@ii{#3}{P301+P330+P331-0}{P301\,+\,\hskip\z@skip{}P330\,+\,\hskip\z@skip{}P331}{EN CAS D'INGESTION\space : rincer la bouche. NE PAS faire vomir.}% +\mhchem@hp@ii{#3}{P302-0}{P302}{EN CAS DE CONTACT AVEC LA PEAU\space :}% +\mhchem@hp@ii{#3}{P302+P334.0-0}{P302\,+\,\hskip\z@skip{}P334}{EN CAS DE CONTACT AVEC LA PEAU\space : rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che/\hskip\z@skip{}poser une compresse humide.}% +\mhchem@hp@ii{#3}{P302+P334-error}{P302\,+\,\hskip\z@skip{}P334}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P302+P334-1}{P302\,+\,\hskip\z@skip{}P334}{EN CAS DE CONTACT AVEC LA PEAU\space : #1.}% +\mhchem@hp@ii{#3}{P302+P334.1-0}{P302\,+\,\hskip\z@skip{}P334}{EN CAS DE CONTACT AVEC LA PEAU\space : rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che/\hskip\z@skip{}poser une compresse humide.}% +\mhchem@hp@ii{#3}{P302+P334.2-0}{P302\,+\,\hskip\z@skip{}P334}{EN CAS DE CONTACT AVEC LA PEAU\space : poser une compresse humide.}% +\mhchem@hp@ii{#3}{P302+P350-0}{P302\,+\,\hskip\z@skip{}P350}{EN CAS DE CONTACT AVEC LA PEAU\space : laver avec pr\'e\allowhyphens{}caution et abondamment \`a\allowhyphens{} l'eau et au savon.}% +\mhchem@hp@ii{#3}{P302+P352-0}{P302\,+\,\hskip\z@skip{}P352}{EN CAS DE CONTACT AVEC LA PEAU\space : laver abondamment \`a\allowhyphens{} l'eau et au savon.}% +\mhchem@hp@ii{#3}{P303-0}{P303}{EN CAS DE CONTACT AVEC LA PEAU (ou les cheveux)\space :}% +\mhchem@hp@ii{#3}{P303+P361+P353-0}{P303\,+\,\hskip\z@skip{}P361\,+\,\hskip\z@skip{}P353}{EN CAS DE CONTACT AVEC LA PEAU (ou les cheveux)\space : enlever imm\'e\allowhyphens{}diatement les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s. Rincer la peau \`a\allowhyphens{} l'eau/\hskip\z@skip{}se doucher.}% +\mhchem@hp@ii{#3}{P304-0}{P304}{EN CAS D'INHALATION\space :}% +\mhchem@hp@ii{#3}{P304+P340-0}{P304\,+\,\hskip\z@skip{}P340}{EN CAS D'INHALATION\space : transporter la victime \`a\allowhyphens{} l'ext\'e\allowhyphens{}rieur et la maintenir au repos dans une position o\`u\allowhyphens{} elle peut confortablement respirer.}% +\mhchem@hp@ii{#3}{P304+P341-0}{P304\,+\,\hskip\z@skip{}P341}{EN CAS D'INHALATION\space : s'il y a difficult\'e\allowhyphens{} \`a\allowhyphens{} respirer, transporter la victime \`a\allowhyphens{} l'ext\'e\allowhyphens{}rieur et la maintenir au repos dans une position o\`u\allowhyphens{} elle peut confortablement respirer.}% +\mhchem@hp@ii{#3}{P305-0}{P305}{EN CAS DE CONTACT AVEC LES YEUX\space :}% +\mhchem@hp@ii{#3}{P305+P351+P338-0}{P305\,+\,\hskip\z@skip{}P351\,+\,\hskip\z@skip{}P338}{EN CAS DE CONTACT AVEC LES YEUX\space : rincer avec pr\'e\allowhyphens{}caution \`a\allowhyphens{} l'eau pendant plusieurs minutes. Enlever les lentilles de contact si la victime en porte et si elles peuvent \^e\allowhyphens{}tre facilement enlev\'e\allowhyphens{}es. Continuer \`a\allowhyphens{} rincer.}% +\mhchem@hp@ii{#3}{P306-0}{P306}{EN CAS DE CONTACT AVEC LES V\^E\allowhyphens{}TEMENTS\space :}% +\mhchem@hp@ii{#3}{P306+P360-0}{P306\,+\,\hskip\z@skip{}P360}{EN CAS DE CONTACT AVEC LES V\^E\allowhyphens{}TEMENTS\space : rincer imm\'e\allowhyphens{}diatement et abondamment avec de l'eau les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s et la peau avant de les enlever.}% +\mhchem@hp@ii{#3}{P307-0}{P307}{EN CAS d'exposition\space :}% +\mhchem@hp@ii{#3}{P307+P311-0}{P307\,+\,\hskip\z@skip{}P311}{EN CAS d'exposition\space : appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P308-0}{P308}{EN CAS d'exposition prouv\'e\allowhyphens{}e ou suspect\'e\allowhyphens{}e\space :}% +\mhchem@hp@ii{#3}{P308+P313-0}{P308\,+\,\hskip\z@skip{}P313}{EN CAS d'exposition prouv\'e\allowhyphens{}e ou suspect\'e\allowhyphens{}e\space : consulter un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P309-0}{P309}{EN CAS d'exposition ou d'un malaise\space :}% +\mhchem@hp@ii{#3}{P309+P311-0}{P309\,+\,\hskip\z@skip{}P311}{EN CAS d'exposition ou de malaise\space : appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P310-0}{P310}{Appeler imm\'e\allowhyphens{}diatement un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P311-0}{P311}{Appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P312-0}{P312}{Appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin en cas de malaise.}% +\mhchem@hp@ii{#3}{P313-0}{P313}{Consulter un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P314-0}{P314}{Consulter un m\'e\allowhyphens{}decin en cas de malaise.}% +\mhchem@hp@ii{#3}{P315-0}{P315}{Consulter imm\'e\allowhyphens{}diatement un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P320.0-0}{P320}{Un traitement sp\'e\allowhyphens{}cifique est urgent (voir \textellipsis{} sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P320-error}{P320}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P320-1}{P320}{Un traitement sp\'e\allowhyphens{}cifique est urgent (voir #1 sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P320.nolabel-error}{P320}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P320.nolabel-1}{P320}{Un traitement sp\'e\allowhyphens{}cifique est urgent (voir #1).}% +\mhchem@hp@ii{#3}{P321.0-0}{P321}{Traitement sp\'e\allowhyphens{}cifique (voir \textellipsis{} sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P321-error}{P321}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P321-1}{P321}{Traitement sp\'e\allowhyphens{}cifique (voir #1 sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P321.nolabel-error}{P321}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P321.nolabel-1}{P321}{Traitement sp\'e\allowhyphens{}cifique (voir #1).}% +\mhchem@hp@ii{#3}{P322.0-0}{P322}{Mesures sp\'e\allowhyphens{}cifiques (voir \textellipsis{} sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P322-error}{P322}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P322-1}{P322}{Mesures sp\'e\allowhyphens{}cifiques (voir #1 sur cette \'e\allowhyphens{}tiquette).}% +\mhchem@hp@ii{#3}{P322.nolabel-error}{P322}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P322.nolabel-1}{P322}{Mesures sp\'e\allowhyphens{}cifiques (voir #1).}% +\mhchem@hp@ii{#3}{P330-0}{P330}{Rincer la bouche.}% +\mhchem@hp@ii{#3}{P331-0}{P331}{NE PAS faire vomir.}% +\mhchem@hp@ii{#3}{P332-0}{P332}{En cas d'irritation cutan\'e\allowhyphens{}e\space :}% +\mhchem@hp@ii{#3}{P332+P313-0}{P332\,+\,\hskip\z@skip{}P313}{En cas d'irritation cutan\'e\allowhyphens{}e\space : consulter un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P333-0}{P333}{En cas d'irritation ou d'\'e\allowhyphens{}ruption cutan\'e\allowhyphens{}e\space :}% +\mhchem@hp@ii{#3}{P333+P313-0}{P333\,+\,\hskip\z@skip{}P313}{En cas d'irritation ou d'\'e\allowhyphens{}ruption cutan\'e\allowhyphens{}e\space : consulter un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P334.0-0}{P334}{Rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che/\hskip\z@skip{}poser une compresse humide.}% +\mhchem@hp@ii{#3}{P334-error}{P334}{\PackageError{hpstatement}{Selection missing.\MessageBreak This statement requires a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P334.1-0}{P334}{Rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che.}% +\mhchem@hp@ii{#3}{P334.2-0}{P334}{Poser une compresse humide.}% +\mhchem@hp@ii{#3}{P335-0}{P335}{Enlever avec pr\'e\allowhyphens{}caution les particules d\'e\allowhyphens{}pos\'e\allowhyphens{}es sur la peau.}% +\mhchem@hp@ii{#3}{P335+P334.0-0}{P335\,+\,\hskip\z@skip{}P334}{Enlever avec pr\'e\allowhyphens{}caution les particules d\'e\allowhyphens{}pos\'e\allowhyphens{}es sur la peau. Rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che/\hskip\z@skip{}poser une compresse humide.}% +\mhchem@hp@ii{#3}{P335+P334-error}{P335\,+\,\hskip\z@skip{}P334}{\PackageError{hpstatement}{Selection missing.\MessageBreak This statement requires a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P335+P334.1-0}{P335\,+\,\hskip\z@skip{}P334}{Enlever avec pr\'e\allowhyphens{}caution les particules d\'e\allowhyphens{}pos\'e\allowhyphens{}es sur la peau. Rincer \`a\allowhyphens{} l'eau fra\^i\allowhyphens{}che.}% +\mhchem@hp@ii{#3}{P335+P334.2-0}{P335\,+\,\hskip\z@skip{}P334}{Enlever avec pr\'e\allowhyphens{}caution les particules d\'e\allowhyphens{}pos\'e\allowhyphens{}es sur la peau. Poser une compresse humide.}% +\mhchem@hp@ii{#3}{P336-0}{P336}{D\'e\allowhyphens{}geler les parties gel\'e\allowhyphens{}es avec de l'eau ti\`e\allowhyphens{}de. Ne pas frotter les zones touch\'e\allowhyphens{}es.}% +\mhchem@hp@ii{#3}{P337-0}{P337}{Si l'irritation oculaire persiste\space :}% +\mhchem@hp@ii{#3}{P337+P313-0}{P337\,+\,\hskip\z@skip{}P313}{Si l'irritation oculaire persiste\space : consulter un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P338-0}{P338}{Enlever les lentilles de contact si la victime en porte et si elles peuvent \^e\allowhyphens{}tre facilement enlev\'e\allowhyphens{}es. Continuer \`a\allowhyphens{} rincer.}% +\mhchem@hp@ii{#3}{P340-0}{P340}{Transporter la victime \`a\allowhyphens{} l'ext\'e\allowhyphens{}rieur et la maintenir au repos dans une position o\`u\allowhyphens{} elle peut confortablement respirer.}% +\mhchem@hp@ii{#3}{P341-0}{P341}{S'il y a difficult\'e\allowhyphens{} \`a\allowhyphens{} respirer, transporter la victime \`a\allowhyphens{} l'ext\'e\allowhyphens{}rieur et la maintenir au repos dans une position o\`u\allowhyphens{} elle peut confortablement respirer.}% +\mhchem@hp@ii{#3}{P342-0}{P342}{En cas de sympt\^o\allowhyphens{}mes respiratoires\space :}% +\mhchem@hp@ii{#3}{P342+P311-0}{P342\,+\,\hskip\z@skip{}P311}{En cas de sympt\^o\allowhyphens{}mes respiratoires\space : appeler un CENTRE ANTIPOISON ou un m\'e\allowhyphens{}decin.}% +\mhchem@hp@ii{#3}{P350-0}{P350}{Laver avec pr\'e\allowhyphens{}caution et abondamment \`a\allowhyphens{} l'eau et au savon.}% +\mhchem@hp@ii{#3}{P351-0}{P351}{Rincer avec pr\'e\allowhyphens{}caution \`a\allowhyphens{} l'eau pendant plusieurs minutes.}% +\mhchem@hp@ii{#3}{P352-0}{P352}{Laver abondamment \`a\allowhyphens{} l'eau et au savon.}% +\mhchem@hp@ii{#3}{P353-0}{P353}{Rincer la peau \`a\allowhyphens{} l'eau/\hskip\z@skip{}se doucher.}% +\mhchem@hp@ii{#3}{P360-0}{P360}{Rincer imm\'e\allowhyphens{}diatement et abondamment avec de l'eau les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s et la peau avant de les enlever.}% +\mhchem@hp@ii{#3}{P361-0}{P361}{Enlever imm\'e\allowhyphens{}diatement les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s.}% +\mhchem@hp@ii{#3}{P362-0}{P362}{Enlever les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s et les laver avant r\'e\allowhyphens{}utilisation}% +\mhchem@hp@ii{#3}{P363-0}{P363}{Laver les v\^e\allowhyphens{}tements contamin\'e\allowhyphens{}s avant r\'e\allowhyphens{}utilisation.}% +\mhchem@hp@ii{#3}{P370-0}{P370}{En cas d'incendie\space :}% +\mhchem@hp@ii{#3}{P370+P376-0}{P370\,+\,\hskip\z@skip{}P376}{En cas d'incendie\space : obturer la fuite si cela peut se faire sans danger.}% +\mhchem@hp@ii{#3}{P370+P378.0-0}{P370\,+\,\hskip\z@skip{}P378}{En cas d'incendie\space : utiliser \textellipsis{} pour l'extinction.}% +\mhchem@hp@ii{#3}{P370+P378-error}{P370\,+\,\hskip\z@skip{}P378}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P370+P378-1}{P370\,+\,\hskip\z@skip{}P378}{En cas d'incendie\space : utiliser #1 pour l'extinction.}% +\mhchem@hp@ii{#3}{P370+P380-0}{P370\,+\,\hskip\z@skip{}P380}{En cas d'incendie\space : \'e\allowhyphens{}vacuer la zone.}% +\mhchem@hp@ii{#3}{P370+P380+P375-0}{P370\,+\,\hskip\z@skip{}P380\,+\,\hskip\z@skip{}P375}{En cas d'incendie\space : \'e\allowhyphens{}vacuer la zone. Combattre l'incendie \`a\allowhyphens{} distance \`a\allowhyphens{} cause du risque d'explosion.}% +\mhchem@hp@ii{#3}{P371-0}{P371}{En cas d'incendie important et s'il s'agit de grandes quantit\'e\allowhyphens{}s\space :}% +\mhchem@hp@ii{#3}{P371+P380+P375-0}{P371\,+\,\hskip\z@skip{}P380\,+\,\hskip\z@skip{}P375}{En cas d'incendie important et s'il s'agit de grandes quantit\'e\allowhyphens{}s\space : \'e\allowhyphens{}vacuer la zone. Combattre l'incendie \`a\allowhyphens{} distance \`a\allowhyphens{} cause du risque d'explosion.}% +\mhchem@hp@ii{#3}{P372-0}{P372}{Risque d'explosion en cas d'incendie.}% +\mhchem@hp@ii{#3}{P373-0}{P373}{NE PAS combattre l'incendie lorsque le feu atteint les explosifs.}% +\mhchem@hp@ii{#3}{P374-0}{P374}{Combattre l'incendie \`a\allowhyphens{} distance en prenant les pr\'e\allowhyphens{}cautions normales.}% +\mhchem@hp@ii{#3}{P375-0}{P375}{Combattre l'incendie \`a\allowhyphens{} distance \`a\allowhyphens{} cause du risque d'explosion.}% +\mhchem@hp@ii{#3}{P376-0}{P376}{Obturer la fuite si cela peut se faire sans danger.}% +\mhchem@hp@ii{#3}{P377-0}{P377}{Fuite de gaz enflamm\'e\allowhyphens{}\space : Ne pas \'e\allowhyphens{}teindre si la fuite ne peut pas \^e\allowhyphens{}tre arr\^e\allowhyphens{}t\'e\allowhyphens{}e sans danger.}% +\mhchem@hp@ii{#3}{P378.0-0}{P378}{Utiliser \textellipsis{} pour l'extinction.}% +\mhchem@hp@ii{#3}{P378-error}{P378}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P378-1}{P378}{Utiliser #1 pour l'extinction.}% +\mhchem@hp@ii{#3}{P380-0}{P380}{\'E\allowhyphens{}vacuer la zone.}% +\mhchem@hp@ii{#3}{P381-0}{P381}{\'E\allowhyphens{}liminer toutes les sources d'ignition si cela est faisable sans danger.}% +\mhchem@hp@ii{#3}{P390-0}{P390}{Absorber toute substance r\'e\allowhyphens{}pandue pour \'e\allowhyphens{}viter qu'elle attaque les mat\'e\allowhyphens{}riaux environnants.}% +\mhchem@hp@ii{#3}{P391-0}{P391}{Recueillir le produit r\'e\allowhyphens{}pandu.}% +\mhchem@hp@ii{#3}{P401.0-0}{P401}{Stocker \textellipsis{}}% +\mhchem@hp@ii{#3}{P401-error}{P401}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P401-1}{P401}{Stocker #1.}% +\mhchem@hp@ii{#3}{P402-0}{P402}{Stocker dans un endroit sec.}% +\mhchem@hp@ii{#3}{P402+P404-0}{P402\,+\,\hskip\z@skip{}P404}{Stocker dans un endroit sec. Stocker dans un r\'e\allowhyphens{}cipient ferm\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P403-0}{P403}{Stocker dans un endroit bien ventil\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P403+P233-0}{P403\,+\,\hskip\z@skip{}P233}{Stocker dans un endroit bien ventil\'e\allowhyphens{}. Maintenir le r\'e\allowhyphens{}cipient ferm\'e\allowhyphens{} de mani\`e\allowhyphens{}re \'e\allowhyphens{}tanche.}% +\mhchem@hp@ii{#3}{P403+P235-0}{P403\,+\,\hskip\z@skip{}P235}{Stocker dans un endroit bien ventil\'e\allowhyphens{}. Tenir au frais.}% +\mhchem@hp@ii{#3}{P404-0}{P404}{Stocker dans un r\'e\allowhyphens{}cipient ferm\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P405-0}{P405}{Garder sous clef.}% +\mhchem@hp@ii{#3}{P406.0-0}{P406}{Stocker dans un r\'e\allowhyphens{}cipient r\'e\allowhyphens{}sistant \`a\allowhyphens{} la corrosion/\hskip\z@skip{}r\'e\allowhyphens{}cipient en \textellipsis{} avec doublure int\'e\allowhyphens{}rieure r\'e\allowhyphens{}sistant \`a\allowhyphens{} la corrosion.}% +\mhchem@hp@ii{#3}{P406-error}{P406}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% +\mhchem@hp@ii{#3}{P406-1}{P406}{Stocker dans un r\'e\allowhyphens{}cipient #1 avec doublure int\'e\allowhyphens{}rieure r\'e\allowhyphens{}sistant \`a\allowhyphens{} la corrosion.}% +\mhchem@hp@ii{#3}{P406.1-0}{P406}{Stocker dans un r\'e\allowhyphens{}cipient r\'e\allowhyphens{}sistant \`a\allowhyphens{} la corrosion avec doublure int\'e\allowhyphens{}rieure r\'e\allowhyphens{}sistant \`a\allowhyphens{} la corrosion.}% +\mhchem@hp@ii{#3}{P407-0}{P407}{Maintenir un intervalle d'air entre les piles/\hskip\z@skip{}palettes.}% +\mhchem@hp@ii{#3}{P410-0}{P410}{Prot\'e\allowhyphens{}ger du rayonnement solaire.}% +\mhchem@hp@ii{#3}{P410+P403-0}{P410\,+\,\hskip\z@skip{}P403}{Prot\'e\allowhyphens{}ger du rayonnement solaire. Stocker dans un endroit bien ventil\'e\allowhyphens{}.}% +\mhchem@hp@ii{#3}{P410+P412-0}{P410\,+\,\hskip\z@skip{}P412}{Prot\'e\allowhyphens{}ger du rayonnement solaire. Ne pas exposer \`a\allowhyphens{} une temp\'e\allowhyphens{}rature sup\'e\allowhyphens{}rieure \`a\allowhyphens{} 50\textdegree{}C/\hskip\z@skip{} 122 \textdegree{}F.}% +\mhchem@hp@ii{#3}{P411.0-0}{P411}{Stocker \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{} \textdegree{}F.}% +\mhchem@hp@ii{#3}{P411-error}{P411}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P411-1}{P411}{Stocker \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas #1.}% +\mhchem@hp@ii{#3}{P411+P235.0-0}{P411\,+\,\hskip\z@skip{}P235}{Stocker \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{} \textdegree{}F. Tenir au frais.}% +\mhchem@hp@ii{#3}{P411+P235-error}{P411\,+\,\hskip\z@skip{}P235}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P411+P235-1}{P411\,+\,\hskip\z@skip{}P235}{Stocker \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas #1. Tenir au frais.}% +\mhchem@hp@ii{#3}{P412-0}{P412}{Ne pas exposer \`a\allowhyphens{} une temp\'e\allowhyphens{}rature sup\'e\allowhyphens{}rieure \`a\allowhyphens{} 50\textdegree{}C/\hskip\z@skip{}122 \textdegree{}F.}% +\mhchem@hp@ii{#3}{P413.0-0}{P413}{Stocker les quantit\'e\allowhyphens{}s en vrac de plus de \textellipsis{}\,kg/\hskip\z@skip{}\textellipsis{} lb \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{} \textdegree{}F.}% +\mhchem@hp@ii{#3}{P413-error}{P413}{\PackageError{hpstatement}{This statement has two mandatory text arguments.\MessageBreak Please specify them with [][]}{}}% +\mhchem@hp@ii{#3}{P413-2}{P413}{Stocker les quantit\'e\allowhyphens{}s en vrac de plus de #1 \`a\allowhyphens{} une temp\'e\allowhyphens{}rature ne d\'e\allowhyphens{}passant pas #2.}% +\mhchem@hp@ii{#3}{P420-0}{P420}{Stocker \`a\allowhyphens{} l'\'e\allowhyphens{}cart des autres mati\`e\allowhyphens{}res.}% +\mhchem@hp@ii{#3}{P422.0-0}{P422}{Stocker le contenu sous \textellipsis{}}% +\mhchem@hp@ii{#3}{P422-error}{P422}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P422-1}{P422}{Stocker le contenu sous #1.}% +\mhchem@hp@ii{#3}{P501.0.0-0}{P501}{\'E\allowhyphens{}liminer le contenu/\hskip\z@skip{}r\'e\allowhyphens{}cipient dans \textellipsis{}}% +\mhchem@hp@ii{#3}{P501.0-error}{P501}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P501.0-1}{P501}{\'E\allowhyphens{}liminer le contenu/\hskip\z@skip{}r\'e\allowhyphens{}cipient dans #1.}% +\mhchem@hp@ii{#3}{P501-error}{P501}{\PackageError{hpstatement}{Selection and mandatory argument missing.\MessageBreak This statement has a mandatory selection. Please\MessageBreak append .1 or .2 to the number (or use .0 for the\MessageBreak original form). Also, supply an argument with []\MessageBreak (or use an additional .0 for the original\MessageBreak form)}{}}% +\mhchem@hp@ii{#3}{P501.1.0-0}{P501}{\'E\allowhyphens{}liminer le contenu dans \textellipsis{}}% +\mhchem@hp@ii{#3}{P501.1-error}{P501}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P501.1-1}{P501}{\'E\allowhyphens{}liminer le contenu dans #1.}% +\mhchem@hp@ii{#3}{P501.2.0-0}{P501}{\'E\allowhyphens{}liminer le r\'e\allowhyphens{}cipient dans \textellipsis{}}% +\mhchem@hp@ii{#3}{P501.2-error}{P501}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% +\mhchem@hp@ii{#3}{P501.2-1}{P501}{\'E\allowhyphens{}liminer le r\'e\allowhyphens{}cipient dans #1.}% +} \newcommand*\mhchem@hp@data@ngerman[3]{% -\mhchem@hp@ii{#3}{EUH001-0}{EUH001}{In trockenem Zustand explosionsgef\"a\allowhyphens{}hrlich.}% +\mhchem@hp@ii{#3}{EUH001-0}{EUH001}{In trockenem Zustand explosiv.}% \mhchem@hp@ii{#3}{EUH006-0}{EUH006}{Mit und ohne Luft explosionsf\"a\allowhyphens{}hig.}% \mhchem@hp@ii{#3}{EUH014-0}{EUH014}{Reagiert heftig mit Wasser.}% \mhchem@hp@ii{#3}{EUH018.0-0}{EUH018}{Kann bei Verwendung explosionsf\"a\allowhyphens{}hige/\hskip\z@skip{}entz\"u\allowhyphens{}ndbare Dampf/\hskip\z@skip{}Luft-Gemische bilden.}% @@ -658,10 +1065,10 @@ \mhchem@hp@ii{#3}{H360-1}{H360}{Kann die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen oder das Kind im Mutterleib sch\"a\allowhyphens{}digen#1.}% \mhchem@hp@ii{#3}{H360F-0}{H360F}{Kann die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen.}% \mhchem@hp@ii{#3}{H360D-0}{H360D}{Kann das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% -\mhchem@hp@ii{#3}{H360f-0}{H360f}{Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen.}% -\mhchem@hp@ii{#3}{H360d-0}{H360d}{Kann vermutlich das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% +\mhchem@hp@ii{#3}{H361f-0}{H361f}{Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen.}% +\mhchem@hp@ii{#3}{H361d-0}{H361d}{Kann vermutlich das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% \mhchem@hp@ii{#3}{H360FD-0}{H360FD}{Kann die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen. Kann das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% -\mhchem@hp@ii{#3}{H360fd-0}{H360fd}{Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen. Kann vermutlich das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% +\mhchem@hp@ii{#3}{H361fd-0}{H361fd}{Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen. Kann vermutlich das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% \mhchem@hp@ii{#3}{H360Fd-0}{H360Fd}{Kann die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen. Kann vermutlich das Kind im Mutterleib sch\"a\allowhyphens{}digen.}% \mhchem@hp@ii{#3}{H360Df-0}{H360Df}{Kann das Kind im Mutterleib sch\"a\allowhyphens{}digen. Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen.}% \mhchem@hp@ii{#3}{H361.0-0}{H361}{Kann vermutlich die Fruchtbarkeit beeintr\"a\allowhyphens{}chtigen oder das Kind im Mutterleib sch\"a\allowhyphens{}digen \textless{} konkrete Wirkung angebe, n sofern bekannt \textgreater{} \textless{}Expositionsweg angeben, sofern schl\"u\allowhyphens{}ssig belegt ist, dass die Gefahr bei keinem anderen Expositionsweg besteht\textgreater{}.}% @@ -744,7 +1151,7 @@ \mhchem@hp@ii{#3}{P221-error}{P221}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% \mhchem@hp@ii{#3}{P221-1}{P221}{Mischen mit #1 unbedingt verhindern.}% \mhchem@hp@ii{#3}{P221.1-0}{P221}{Mischen mit brennbaren Stoffen unbedingt verhindern.}% -\mhchem@hp@ii{#3}{P222-0}{P222}{Kontakt mit Luft nicht zulassen.}% +\mhchem@hp@ii{#3}{P222-0}{P222}{Keinen Kontakt mit Luft zulassen.}% \mhchem@hp@ii{#3}{P223-0}{P223}{Kontakt mit Wasser wegen heftiger Reaktion und m\"o\allowhyphens{}glichem Aufflammen unbedingt verhindern.}% \mhchem@hp@ii{#3}{P230.0-0}{P230}{Feucht halten mit \textellipsis{}}% \mhchem@hp@ii{#3}{P230-error}{P230}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% @@ -757,14 +1164,14 @@ \mhchem@hp@ii{#3}{P235-0}{P235}{K\"u\allowhyphens{}hl halten.}% \mhchem@hp@ii{#3}{P235+P410-0}{P235\,+\,\hskip\z@skip{}P410}{K\"u\allowhyphens{}hl halten. Vor Sonnenbestrahlung sch\"u\allowhyphens{}tzen.}% \mhchem@hp@ii{#3}{P240-0}{P240}{Beh\"a\allowhyphens{}lter und zu bef\"u\allowhyphens{}llende Anlage erden.}% -\mhchem@hp@ii{#3}{P241.0-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte elektrische Betriebsmittel/\hskip\z@skip{}L\"u\allowhyphens{}ftungsanlagen/\hskip\z@skip{}Beleuchtung/\hskip\z@skip{}\textellipsis{} verwenden.}% +\mhchem@hp@ii{#3}{P241.0-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte elektrische Ger\"a\allowhyphens{}te/\hskip\z@skip{}L\"u\allowhyphens{}ftungsanlagen/\hskip\z@skip{}Beleuchtung/\hskip\z@skip{}\textellipsis{} verwenden.}% \mhchem@hp@ii{#3}{P241-error}{P241}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% \mhchem@hp@ii{#3}{P241-1}{P241}{Explosionsgesch\"u\allowhyphens{}tzte #1 verwenden.}% -\mhchem@hp@ii{#3}{P241.1-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte elektrische Betriebsmittel verwenden.}% +\mhchem@hp@ii{#3}{P241.1-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte elektrische Ger\"a\allowhyphens{}te verwenden.}% \mhchem@hp@ii{#3}{P241.2-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte L\"u\allowhyphens{}ftungsanlagen verwenden.}% \mhchem@hp@ii{#3}{P241.3-0}{P241}{Explosionsgesch\"u\allowhyphens{}tzte Beleuchtung verwenden.}% \mhchem@hp@ii{#3}{P242-0}{P242}{Nur funkenfreies Werkzeug verwenden.}% -\mhchem@hp@ii{#3}{P243-0}{P243}{Ma\ss{}nahmen gegen elektrostatische Auf{}ladungen treffen.}% +\mhchem@hp@ii{#3}{P243-0}{P243}{Ma\ss{}nahmen gegen elektrostatische Entladungen treffen.}% \mhchem@hp@ii{#3}{P244-0}{P244}{Druckminderer frei von Fett und \"O\allowhyphens{}l halten.}% \mhchem@hp@ii{#3}{P250.0-0}{P250}{Nicht schleifen/\hskip\z@skip{}sto\ss{}en/\hskip\z@skip{}\textellipsis{}/\hskip\z@skip{}reiben.}% \mhchem@hp@ii{#3}{P250-error}{P250}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% @@ -784,11 +1191,11 @@ \mhchem@hp@ii{#3}{P260.6-0}{P260}{Aerosol nicht einatmen.}% \mhchem@hp@ii{#3}{P261-0}{P261}{Einatmen von Staub/\hskip\z@skip{}Rauch/\hskip\z@skip{}Gas/\hskip\z@skip{}Nebel/\hskip\z@skip{}Dampf/\hskip\z@skip{}Aerosol vermeiden.}% \mhchem@hp@ii{#3}{P262-0}{P262}{Nicht in die Augen, auf die Haut oder auf die Kleidung gelangen lassen.}% -\mhchem@hp@ii{#3}{P263.0-0}{P263}{Kontakt w\"a\allowhyphens{}hrend der Schwangerschaft/\hskip\z@skip{}und der Stillzeit vermeiden.}% +\mhchem@hp@ii{#3}{P263.0-0}{P263}{Kontakt w\"a\allowhyphens{}hrend der Schwangerschaft/\hskip\z@skip{}der Stillzeit vermeiden.}% \mhchem@hp@ii{#3}{P263-error}{P263}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% \mhchem@hp@ii{#3}{P263-1}{P263}{Kontakt w\"a\allowhyphens{}hrend #1 vermeiden.}% \mhchem@hp@ii{#3}{P263.1-0}{P263}{Kontakt w\"a\allowhyphens{}hrend der Schwangerschaft vermeiden.}% -\mhchem@hp@ii{#3}{P263.2-0}{P263}{P263}% +\mhchem@hp@ii{#3}{P263.2-0}{P263}{Kontakt w\"a\allowhyphens{}hrend der Stillzeit vermeiden.}% \mhchem@hp@ii{#3}{P264.0-0}{P264}{Nach Gebrauch \textellipsis{} gr\"u\allowhyphens{}ndlich waschen.}% \mhchem@hp@ii{#3}{P264-error}{P264}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% \mhchem@hp@ii{#3}{P264-1}{P264}{Nach Gebrauch #1 gr\"u\allowhyphens{}ndlich waschen.}% @@ -833,8 +1240,8 @@ \mhchem@hp@ii{#3}{P304+P340-0}{P304\,+\,\hskip\z@skip{}P340}{BEI EINATMEN: An die frische Luft bringen und in einer Position ruhigstellen, die das Atmen erleichtert.}% \mhchem@hp@ii{#3}{P304+P341-0}{P304\,+\,\hskip\z@skip{}P341}{BEI EINATMEN: Bei Atembeschwerden an die frische Luft bringen und in einer Position ruhigstellen, die das Atmen erleichtert.}% \mhchem@hp@ii{#3}{P305-0}{P305}{BEI KONTAKT MIT DEN AUGEN:}% -\mhchem@hp@ii{#3}{P305+P351+P338-0}{P305\,+\,\hskip\z@skip{}P351\,+\,\hskip\z@skip{}P338}{BEI KONTAKT MIT DEN AUGEN: Einige Minuten lang behutsam mit Wasser sp\"u\allowhyphens{}len. Vorhandene Kontaktlinsen nach M\"o\allowhyphens{}glichkeit entfernen. Weiter sp\"u\allowhyphens{}len.}% -\mhchem@hp@ii{#3}{P306-0}{P306}{BEI KONTAMINIERTER KLEIDUNG:}% +\mhchem@hp@ii{#3}{P305+P351+P338-0}{P305\,+\,\hskip\z@skip{}P351\,+\,\hskip\z@skip{}P338}{BEI KONTAKT MIT DEN AUGEN: Einige Minuten lang behutsam mit Wasser aussp\"u\allowhyphens{}len. Eventuell vorhandene Kontaktlinsen nach M\"o\allowhyphens{}glichkeit entfernen. Weiter aussp\"u\allowhyphens{}len.}% +\mhchem@hp@ii{#3}{P306-0}{P306}{BEI KONTAKT MIT DER KLEIDUNG:}% \mhchem@hp@ii{#3}{P306+P360-0}{P306\,+\,\hskip\z@skip{}P360}{BEI KONTAKT MIT DER KLEIDUNG: Kontaminierte Kleidung und Haut sofort mit viel Wasser abwaschen und danach Kleidung ausziehen.}% \mhchem@hp@ii{#3}{P307-0}{P307}{BEI Exposition:}% \mhchem@hp@ii{#3}{P307+P311-0}{P307\,+\,\hskip\z@skip{}P311}{BEI Exposition: GIFTINFORMATIONSZENTRUM oder Arzt anrufen.}% @@ -920,30 +1327,30 @@ \mhchem@hp@ii{#3}{P401-error}{P401}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% \mhchem@hp@ii{#3}{P401-1}{P401}{#1 aufbewahren.}% \mhchem@hp@ii{#3}{P402-0}{P402}{An einem trockenen Ort aufbewahren.}% -\mhchem@hp@ii{#3}{P402+P404-0}{P402\,+\,\hskip\z@skip{}P404}{In einem geschlossenen Beh\"a\allowhyphens{}lter an einem trockenen Ort aufbewahren.}% +\mhchem@hp@ii{#3}{P402+P404-0}{P402\,+\,\hskip\z@skip{}P404}{An einem trockenen Ort aufbewahren. In einem geschlossenen Beh\"a\allowhyphens{}lter aufbewahren.}% \mhchem@hp@ii{#3}{P403-0}{P403}{An einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren.}% -\mhchem@hp@ii{#3}{P403+P233-0}{P403\,+\,\hskip\z@skip{}P233}{Beh\"a\allowhyphens{}lter dicht verschlossen an einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren.}% -\mhchem@hp@ii{#3}{P403+P235-0}{P403\,+\,\hskip\z@skip{}P235}{K\"u\allowhyphens{}hl an einem gut bel\"u\allowhyphens{}fteten Ort aufgewahren.}% +\mhchem@hp@ii{#3}{P403+P233-0}{P403\,+\,\hskip\z@skip{}P233}{An einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren. Beh\"a\allowhyphens{}lter dicht verschlossen halten.}% +\mhchem@hp@ii{#3}{P403+P235-0}{P403\,+\,\hskip\z@skip{}P235}{An einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren. K\"u\allowhyphens{}hl halten.}% \mhchem@hp@ii{#3}{P404-0}{P404}{In einem geschlossenen Beh\"a\allowhyphens{}lter aufbewahren.}% \mhchem@hp@ii{#3}{P405-0}{P405}{Unter Verschluss aufbewahren.}% -\mhchem@hp@ii{#3}{P406.0-0}{P406}{In korrosionsbest\"a\allowhyphens{}ndigem/\hskip\z@skip{}\textellipsis{} Beh\"a\allowhyphens{}lter mit korrosionsbest\"a\allowhyphens{}ndiger Auskleidung aufbewah- ren.}% +\mhchem@hp@ii{#3}{P406.0-0}{P406}{In korrosionsbest\"a\allowhyphens{}ndigem/\hskip\z@skip{}\textellipsis{} Beh\"a\allowhyphens{}lter mit widerstandsf\"a\allowhyphens{}higer Innenauskleidung aufbewahren.}% \mhchem@hp@ii{#3}{P406-error}{P406}{\PackageError{hpstatement}{Selection or argument missing.\MessageBreak This statement has a mandatory selection.\MessageBreak Please append .1, .2, ... to the number to make a\MessageBreak selection. Or supply a text as argument with [].\MessageBreak Or use .0 for the original form}{}}% -\mhchem@hp@ii{#3}{P406-1}{P406}{In #1 Beh\"a\allowhyphens{}lter mit korrosionsbest\"a\allowhyphens{}ndiger Auskleidung aufbewah- ren.}% -\mhchem@hp@ii{#3}{P406.1-0}{P406}{In korrosionsbest\"a\allowhyphens{}ndigem Beh\"a\allowhyphens{}lter mit korrosionsbest\"a\allowhyphens{}ndiger Auskleidung aufbewah- ren.}% +\mhchem@hp@ii{#3}{P406-1}{P406}{In #1 Beh\"a\allowhyphens{}lter mit widerstandsf\"a\allowhyphens{}higer Innenauskleidung aufbewahren.}% +\mhchem@hp@ii{#3}{P406.1-0}{P406}{In korrosionsbest\"a\allowhyphens{}ndigem Beh\"a\allowhyphens{}lter mit widerstandsf\"a\allowhyphens{}higer Innenauskleidung aufbewahren.}% \mhchem@hp@ii{#3}{P407-0}{P407}{Luftspalt zwischen Stapeln/\hskip\z@skip{}Paletten lassen.}% \mhchem@hp@ii{#3}{P410-0}{P410}{Vor Sonnenbestrahlung sch\"u\allowhyphens{}tzen.}% -\mhchem@hp@ii{#3}{P410+P403-0}{P410\,+\,\hskip\z@skip{}P403}{Vor Sonnenbestrahlung gesch\"u\allowhyphens{}tzt an einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren.}% -\mhchem@hp@ii{#3}{P410+P412-0}{P410\,+\,\hskip\z@skip{}P412}{Vor Sonnenbestrahlung sch\"u\allowhyphens{}tzen und nicht Temperaturen von mehr als 50\textdegree{}C aussetzen.}% -\mhchem@hp@ii{#3}{P411.0-0}{P411}{Bei Temperaturen von nicht mehr als \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{}aufbewahren.}% +\mhchem@hp@ii{#3}{P410+P403-0}{P410\,+\,\hskip\z@skip{}P403}{Vor Sonnenbestrahlung sch\"u\allowhyphens{}tzen. An einem gut bel\"u\allowhyphens{}fteten Ort aufbewahren.}% +\mhchem@hp@ii{#3}{P410+P412-0}{P410\,+\,\hskip\z@skip{}P412}{Vor Sonnenbestrahlung sch\"u\allowhyphens{}tzen und nicht Temperaturen \"u\allowhyphens{}ber 50\textdegree{}C/\hskip\z@skip{}122 \textdegree{}F aussetzen.}% +\mhchem@hp@ii{#3}{P411.0-0}{P411}{Bei Temperaturen nicht \"u\allowhyphens{}ber \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{}\textdegree{}F aufbewahren.}% \mhchem@hp@ii{#3}{P411-error}{P411}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% -\mhchem@hp@ii{#3}{P411-1}{P411}{Bei Temperaturen von nicht mehr als #1 aufbewahren.}% -\mhchem@hp@ii{#3}{P411+P235.0-0}{P411\,+\,\hskip\z@skip{}P235}{K\"u\allowhyphens{}hl und bei Temperaturen von nicht mehr als \textellipsis{}\textdegree{}C aufbewahren.}% +\mhchem@hp@ii{#3}{P411-1}{P411}{Bei Temperaturen nicht \"u\allowhyphens{}ber #1 aufbewahren.}% +\mhchem@hp@ii{#3}{P411+P235.0-0}{P411\,+\,\hskip\z@skip{}P235}{Bei Temperaturen nicht \"u\allowhyphens{}ber \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{} \textdegree{}F aufbewahren. K\"u\allowhyphens{}hl halten.}% \mhchem@hp@ii{#3}{P411+P235-error}{P411\,+\,\hskip\z@skip{}P235}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% -\mhchem@hp@ii{#3}{P411+P235-1}{P411\,+\,\hskip\z@skip{}P235}{K\"u\allowhyphens{}hl und bei Temperaturen von nicht mehr als #1 aufbewahren.}% -\mhchem@hp@ii{#3}{P412-0}{P412}{Nicht Temperaturen von mehr als 50\textdegree{}C aussetzen.}% -\mhchem@hp@ii{#3}{P413.0-0}{P413}{Sch\"u\allowhyphens{}ttgut in Mengen von mehr als \textellipsis{}\,kg bei Temperaturen von nicht mehr als \textellipsis{}\textdegree{}C aufbewahren.}% +\mhchem@hp@ii{#3}{P411+P235-1}{P411\,+\,\hskip\z@skip{}P235}{Bei Temperaturen nicht \"u\allowhyphens{}ber #1 aufbewahren. K\"u\allowhyphens{}hl halten.}% +\mhchem@hp@ii{#3}{P412-0}{P412}{Nicht Temperaturen \"u\allowhyphens{}ber 50\textdegree{}C/\hskip\z@skip{}122 \textdegree{}F aussetzen.}% +\mhchem@hp@ii{#3}{P413.0-0}{P413}{Sch\"u\allowhyphens{}ttgut in Mengen von mehr als \textellipsis{}\,kg/\hskip\z@skip{} \textellipsis{}\,lbs bei Temperaturen nicht \"u\allowhyphens{}ber \textellipsis{}\textdegree{}C/\hskip\z@skip{}\textellipsis{}\textdegree{}F aufbewahren.}% \mhchem@hp@ii{#3}{P413-error}{P413}{\PackageError{hpstatement}{This statement has two mandatory text arguments.\MessageBreak Please specify them with [][]}{}}% -\mhchem@hp@ii{#3}{P413-2}{P413}{Sch\"u\allowhyphens{}ttgut in Mengen von mehr als #1 bei Temperaturen von nicht mehr als #2 aufbewahren.}% +\mhchem@hp@ii{#3}{P413-2}{P413}{Sch\"u\allowhyphens{}ttgut in Mengen von mehr als #1 bei Temperaturen nicht \"u\allowhyphens{}ber #2 aufbewahren.}% \mhchem@hp@ii{#3}{P420-0}{P420}{Von anderen Materialien entfernt aufbewahren.}% \mhchem@hp@ii{#3}{P422.0-0}{P422}{Inhalt in/\hskip\z@skip{}unter \textellipsis{} aufbewahren}% \mhchem@hp@ii{#3}{P422-error}{P422}{\PackageError{hpstatement}{One argument required.\MessageBreak This statement has a mandatory text argument.\MessageBreak Please specify one with []. Or use .0 for the\MessageBreak original form}{}}% diff --git a/Master/texmf-dist/tex/latex/mhchem/mhchem.sty b/Master/texmf-dist/tex/latex/mhchem/mhchem.sty index 2bb6a5041e8..8a1879aafc0 100644 --- a/Master/texmf-dist/tex/latex/mhchem/mhchem.sty +++ b/Master/texmf-dist/tex/latex/mhchem/mhchem.sty @@ -1,5 +1,5 @@ %% mhchem.sty -%% Copyright 2004-2015 Martin Hensel +%% Copyright 2004-2016 Martin Hensel % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License version 1.3c @@ -27,7 +27,7 @@ % This work consists of all files listed in manifest.txt. % % -\ProvidesPackage{mhchem}[2015/11/29 v4.03 for typesetting chemical formulae] +\ProvidesPackage{mhchem}[2016/02/07 v4.04 for typesetting chemical formulae] \RequirePackage{expl3} \RequirePackage{l3keys2e} \RequirePackage{l3regex} @@ -35,7 +35,6 @@ \RequirePackage{amsmath} \RequirePackage{chemgreek}[2015/04/09] \RequirePackage{graphics} -\RequirePackage{ifthen} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%% misc %%%%%%%%%% @@ -77,41 +76,42 @@ } \regex_const:Nn \l__mhchem_regex_digitCommaDigit_regex { \d\,\d } -\regex_const:Nn \l__mhchem_regex_oneLetter_regex { [nmpx] } +\regex_const:Nn \l__mhchem_regex_oneLetter_regex { [nmptx] } \regex_const:Nn \l__mhchem_regex_hyphen_regex { - } \regex_const:Nn \l__mhchem_regex_letters_regex { [a-zA-Z]+ } \regex_const:Nn \l__mhchem_regex_spaces_regex { [\ ]+ } \regex_const:Nn \l__mhchem_regex_digits_fregex { \A [0-9]+ \Z} \regex_const:Nn \l__mhchem_regex_oneToThreeLetters_fregex { \A (.+) (\([a-z]{1,3}\)) \Z } -\regex_const:Nn \l__mhchem_regex_oneLetter_fregex { \A [nmpx] \Z } +\regex_const:Nn \l__mhchem_regex_oneLetter_fregex { \A [nmptx] \Z } \regex_const:Nn \l__mhchem_regex_oneLetterPlus_fregex - { \A ([nmpx]|\c{eta}|\c{mu}|\c{kappa}|\c{__mhchem_cg_withinMathTokens:n}\cB.[nmpx]\cE.|\d+) \Z } -\regex_const:Nn \l__mhchem_regex_oneGreekLetter_fregex { \A (\c{eta}|\c{mu}|\c{kappa}) \Z } + { \A ([nmptx]|\c{eta|mu|kappa}|\c{__mhchem_cg_withinMathTokens:n}\cB.[nmptx]\cE.|[0-9]+|[0-9]+\/[0-9]+) \Z } \regex_const:Nn \l__mhchem_regex_romanNumeral_fregex { \A [IVX]+ \Z } \regex_const:Nn \l__mhchem_regex_bracedGroup_fregex { \A \cB. [^\cE.]* \cE. \Z } -\regex_const:Nn \l__mhchem_regex_greekLetter_fregex - { \A [\c{alpha}\c{beta}\c{gamma}\c{delta}\c{epsilon}\c{zeta}\c{eta}\c{theta}\c{iota}\c{kappa}\c{lambda}\c{mu}\c{nu}\c{xi}\c{omicron}\c{pi}\c{rho}\c{sigma}\c{tau}\c{upsilon}\c{phi}\c{chi}\c{psi}\c{omega}\c{Alpha}\c{Beta}\c{Gamma}\c{Delta}\c{Epsilon}\c{Zeta}\c{Eta}\c{Theta}\c{Iota}\c{Kappa}\c{Lambda}\c{Mu}\c{Nu}\c{Xi}\c{Omicron}\c{Pi}\c{Rho}\c{Sigma}\c{Tau}\c{Upsilon}\c{Phi}\c{Chi}\c{Psi}\c{Omega}] \Z } +\regex_const:Nn \l__mhchem_regex_oneGreekLetter_fregex + { \A \c{alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|Psi|Omega} \Z } \regex_const:Nn \l__mhchem_regex_digitOrLetterOrGreek_fregex - { \A [1-9a-zA-Z\ \~\+\-\,\.\(\)\c{alpha}\c{beta}\c{gamma}\c{delta}\c{epsilon}\c{zeta}\c{eta}\c{theta}\c{iota}\c{kappa}\c{lambda}\c{mu}\c{nu}\c{xi}\c{omicron}\c{pi}\c{rho}\c{sigma}\c{tau}\c{upsilon}\c{phi}\c{chi}\c{psi}\c{omega}\c{Alpha}\c{Beta}\c{Gamma}\c{Delta}\c{Epsilon}\c{Zeta}\c{Eta}\c{Theta}\c{Iota}\c{Kappa}\c{Lambda}\c{Mu}\c{Nu}\c{Xi}\c{Omicron}\c{Pi}\c{Rho}\c{Sigma}\c{Tau}\c{Upsilon}\c{Phi}\c{Chi}\c{Psi}\c{Omega}]+ \Z } + { \A [1-9a-zA-Z\ \~\+\-\,\.\(\)\c{alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|Psi|Omega}]+ \Z } \regex_const:Nn \l__mhchem_regex_formula_fregex - { \A ( [nmpx] | ([0-9\ \+\-\,\.\(\)]+ [nmpx] [0-9\ \+\-\,\.\(\)]*)+ | ([0-9\ \+\-\,\.\(\)]* [nmpx] [0-9\ \+\-\,\.\(\)]+)+ ) \Z } + { \A ([0-9\ \+\-\,\.\(\)]* [nmptx] [0-9\ \+\-\,\.\(\)]*)+ \Z } \regex_const:Nn \l__mhchem_regex_formulaAmount_fregex - { \A \c{__mhchem_cg_withinMathTokens:n}\cB. (([0-9nmpx]+ [\+\-])? [nmpx] ([\+\-] [0-9nmpx]+)?) \cE. \Z } + { \A \c{__mhchem_cg_withinMathTokens:n}\cB. (([0-9nmptx]+ [\+\-])? [nmptx] ([\+\-] [0-9nmptx]+)?) \cE. \Z } \regex_const:Nn \l__mhchem_regex_fraction_fregex { \A ([0-9]+)\/([0-9]+) \Z } +\regex_const:Nn \l__mhchem_regex_fracMacro_fregex { \A \c{frac} \Z } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digit_pregex { [ 0-9 ] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digitOrPlus_pregex { [ 0-9 \+ ] } +\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digitOrMinus_pregex { [ 0-9 \-] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digitOrDot_pregex { [ 0-9 . ] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digitOrSlash_pregex { [ 0-9 \/ ] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_digitOrDotPlus_pregex { [ 0-9 \) \. \/ ] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_dotOrAsterisk_pregex { [ \. \* ] } \__mhchem_regex_peek_compile:Nn \l__mhchem_regex_letter_pregex { [ a-zA-Z ] } -\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_uppercaseLetter_pregex { [ A-Z ] } -\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_openingBrace_pregex { [ \( \[ ] } -\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_closingBrace_pregex { [ \) \] \/ ] } -\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_oneLetter_pregex { [ nmpx ] } +\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_uppercaseLetterOrParenthesis_pregex { [ A-Z( ] } +\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_openingBracket_pregex { [ \( \[ ] } +\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_closingBracket_pregex { [ \) \] \/ ] } +\__mhchem_regex_peek_compile:Nn \l__mhchem_regex_oneLetter_pregex { [ nmptx ] } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%% loop helpers %%%%%%%%%% @@ -127,7 +127,12 @@ \tl_put_right:Nn #1 { { #3 } } #2 } -\cs_new_protected:Npn \__mhchem_loopHelper_appendNextGroup_prefix_ifEmpty:NnnNn #1#2#3#4#5 +\cs_new_protected:Npn \__mhchem_loopHelper_appendNextGroupAsCe:NNn #1#2#3 + { + \tl_put_right:Nn #1 { { \ce{#3} } } + #2 + } +\cs_new_protected:Npn \__mhchem_loopHelper_appendNextGroup_prefix_doIfEmpty:NnnNn #1#2#3#4#5 { \tl_if_empty:nTF {#5} { #3 } @@ -350,54 +355,54 @@ \cs_set_eq:NN \__mhchem_output_greek_orig_Chi \Chi \cs_set_eq:NN \__mhchem_output_greek_orig_Psi \Psi \cs_set_eq:NN \__mhchem_output_greek_orig_Omega \Omega - \def \alpha { \__mhchem_output_greek:n { alpha } } - \def \beta { \__mhchem_output_greek:n { beta } } - \def\gamma { \__mhchem_output_greek:n { gamma } } - \def\delta { \__mhchem_output_greek:n { delta } } - \def\epsilon { \__mhchem_output_greek:n { epsilon } } - \def\zeta { \__mhchem_output_greek:n { zeta } } - \def\eta { \__mhchem_output_greek:n { eta } } - \def\theta { \__mhchem_output_greek:n { theta } } - \def\iota { \__mhchem_output_greek:n { iota } } - \def\kappa { \__mhchem_output_greek:n { kappa } } - \def\lambda { \__mhchem_output_greek:n { lambda } } - \def\mu { \__mhchem_output_greek:n { mu } } - \def\nu { \__mhchem_output_greek:n { nu } } - \def\xi { \__mhchem_output_greek:n { xi } } - \def\omicron { \__mhchem_output_greek:n { omicron } } - \def\pi { \__mhchem_output_greek:n { pi } } - \def\rho { \__mhchem_output_greek:n { rho } } - \def\sigma { \__mhchem_output_greek:n { sigma } } - \def\tau { \__mhchem_output_greek:n { tau } } - \def\upsilon { \__mhchem_output_greek:n { upsilon } } - \def\phi { \__mhchem_output_greek:n { phi } } - \def\chi { \__mhchem_output_greek:n { chi } } - \def\psi { \__mhchem_output_greek:n { psi } } - \def\omega { \__mhchem_output_greek:n { omega } } - \def\Alpha { \__mhchem_output_greek:n { Alpha } } - \def\Beta { \__mhchem_output_greek:n { Beta } } - \def\Gamma { \__mhchem_output_greek:n { Gamma } } - \def\Delta { \__mhchem_output_greek:n { Delta } } - \def\Epsilon { \__mhchem_output_greek:n { Epsilon } } - \def\Zeta { \__mhchem_output_greek:n { Zeta } } - \def\Eta { \__mhchem_output_greek:n { Eta } } - \def\Theta { \__mhchem_output_greek:n { Theta } } - \def\Iota { \__mhchem_output_greek:n { Iota } } - \def\Kappa { \__mhchem_output_greek:n { Kappa } } - \def\Lambda { \__mhchem_output_greek:n { Lambda } } - \def\Mu { \__mhchem_output_greek:n { Mu } } - \def\Nu { \__mhchem_output_greek:n { Nu } } - \def\Xi { \__mhchem_output_greek:n { Xi } } - \def\Omicron { \__mhchem_output_greek:n { Omicron } } - \def\Pi { \__mhchem_output_greek:n { Pi } } - \def\Rho { \__mhchem_output_greek:n { Rho } } - \def\Sigma { \__mhchem_output_greek:n { Sigma } } - \def\Tau { \__mhchem_output_greek:n { Tau } } - \def\Upsilon { \__mhchem_output_greek:n { Upsilon } } - \def\Phi { \__mhchem_output_greek:n { Phi } } - \def\Chi { \__mhchem_output_greek:n { Chi } } - \def\Psi { \__mhchem_output_greek:n { Psi } } - \def\Omega { \__mhchem_output_greek:n { Omega } } + \cs_set_protected:Npn \alpha { \__mhchem_output_greek:n { alpha } } + \cs_set_protected:Npn \beta { \__mhchem_output_greek:n { beta } } + \cs_set_protected:Npn \gamma { \__mhchem_output_greek:n { gamma } } + \cs_set_protected:Npn \delta { \__mhchem_output_greek:n { delta } } + \cs_set_protected:Npn \epsilon { \__mhchem_output_greek:n { epsilon } } + \cs_set_protected:Npn \zeta { \__mhchem_output_greek:n { zeta } } + \cs_set_protected:Npn \eta { \__mhchem_output_greek:n { eta } } + \cs_set_protected:Npn \theta { \__mhchem_output_greek:n { theta } } + \cs_set_protected:Npn \iota { \__mhchem_output_greek:n { iota } } + \cs_set_protected:Npn \kappa { \__mhchem_output_greek:n { kappa } } + \cs_set_protected:Npn \lambda { \__mhchem_output_greek:n { lambda } } + \cs_set_protected:Npn \mu { \__mhchem_output_greek:n { mu } } + \cs_set_protected:Npn \nu { \__mhchem_output_greek:n { nu } } + \cs_set_protected:Npn \xi { \__mhchem_output_greek:n { xi } } + \cs_set_protected:Npn \omicron { \__mhchem_output_greek:n { omicron } } + \cs_set_protected:Npn \pi { \__mhchem_output_greek:n { pi } } + \cs_set_protected:Npn \rho { \__mhchem_output_greek:n { rho } } + \cs_set_protected:Npn \sigma { \__mhchem_output_greek:n { sigma } } + \cs_set_protected:Npn \tau { \__mhchem_output_greek:n { tau } } + \cs_set_protected:Npn \upsilon { \__mhchem_output_greek:n { upsilon } } + \cs_set_protected:Npn \phi { \__mhchem_output_greek:n { phi } } + \cs_set_protected:Npn \chi { \__mhchem_output_greek:n { chi } } + \cs_set_protected:Npn \psi { \__mhchem_output_greek:n { psi } } + \cs_set_protected:Npn \omega { \__mhchem_output_greek:n { omega } } + \cs_set_protected:Npn \Alpha { \__mhchem_output_greek:n { Alpha } } + \cs_set_protected:Npn \Beta { \__mhchem_output_greek:n { Beta } } + \cs_set_protected:Npn \Gamma { \__mhchem_output_greek:n { Gamma } } + \cs_set_protected:Npn \Delta { \__mhchem_output_greek:n { Delta } } + \cs_set_protected:Npn \Epsilon { \__mhchem_output_greek:n { Epsilon } } + \cs_set_protected:Npn \Zeta { \__mhchem_output_greek:n { Zeta } } + \cs_set_protected:Npn \Eta { \__mhchem_output_greek:n { Eta } } + \cs_set_protected:Npn \Theta { \__mhchem_output_greek:n { Theta } } + \cs_set_protected:Npn \Iota { \__mhchem_output_greek:n { Iota } } + \cs_set_protected:Npn \Kappa { \__mhchem_output_greek:n { Kappa } } + \cs_set_protected:Npn \Lambda { \__mhchem_output_greek:n { Lambda } } + \cs_set_protected:Npn \Mu { \__mhchem_output_greek:n { Mu } } + \cs_set_protected:Npn \Nu { \__mhchem_output_greek:n { Nu } } + \cs_set_protected:Npn \Xi { \__mhchem_output_greek:n { Xi } } + \cs_set_protected:Npn \Omicron { \__mhchem_output_greek:n { Omicron } } + \cs_set_protected:Npn \Pi { \__mhchem_output_greek:n { Pi } } + \cs_set_protected:Npn \Rho { \__mhchem_output_greek:n { Rho } } + \cs_set_protected:Npn \Sigma { \__mhchem_output_greek:n { Sigma } } + \cs_set_protected:Npn \Tau { \__mhchem_output_greek:n { Tau } } + \cs_set_protected:Npn \Upsilon { \__mhchem_output_greek:n { Upsilon } } + \cs_set_protected:Npn \Phi { \__mhchem_output_greek:n { Phi } } + \cs_set_protected:Npn \Chi { \__mhchem_output_greek:n { Chi } } + \cs_set_protected:Npn \Psi { \__mhchem_output_greek:n { Psi } } + \cs_set_protected:Npn \Omega { \__mhchem_output_greek:n { Omega } } } \tl_clear:N \l__mhchem_ce_result_tl \tl_clear:N \l__mhchem_ce_part_tl @@ -406,11 +411,9 @@ \int_set:Nn \l__mhchem_ce_distanceFromLastComma_int { 9 } \tl_clear:N \l__mhchem_cf_lastElement_tl \__mhchem_ce_loop: #1 \q_recursion_stop - \__mhchem_output_begin_ce: \int_compare:nTF { \l__mhchem_option_version_int > 1 } { \tl_use:N \l__mhchem_ce_result_tl } { \ensuremath{\tl_use:N \l__mhchem_ce_result_tl} } - \__mhchem_output_end_ce: \mhchem@hook@afterCe \group_end: } @@ -996,7 +999,6 @@ \ExplSyntaxOn \cs_new:Npn \__mhchem_arrow_options_minLength:n { {2em} } \tl_new:N \mhchem@option@arrow@pgf@tip -\tl_new:N \mhchem@option@arrow@pgf@halftip \tl_new:N \mhchem@option@arrow@pgf@linewidth \msg_new:nnn { mhchem } { error-arrow-type } @@ -1023,7 +1025,7 @@ { \bool_if:NTF { \l__mhchem_option_inPreamble_bool } { - \RequirePackage{pgf} %. for finding the tikz package more easily + \RequirePackage{pgf} \RequirePackage{tikz} \AtBeginDocument { \usetikzlibrary{arrows.meta} @@ -1051,7 +1053,7 @@ } { \regex_extract_once:nnNTF - { \A pgf \cB. (.+?) \cE. \cB. (.+?) \cE. \Z } %. pgf{arrowname}{linewidth} + { \A pgf \cB. (.+?) \cE. \cB. (.+?) \cE. \Z } {#1} \l__mhchem_tmp_arrow_seq { @@ -1294,7 +1296,7 @@ { Assertion~failed:~Unexpected~input~character.~ In~case~you~think~this~is~a~bug,~ - lease~contact~the~package~author. + please~contact~the~package~author. } \msg_new:nnn { mhchem } { cf / unexpected-state } { @@ -1407,11 +1409,9 @@ \tl_clear:N \l__mhchem_cf_result_tl \__mhchem_cf_loop: #2 \q_recursion_stop } - \__mhchem_output_begin_cf: \tl_if_empty:nTF {#1} { \ensuremath{\tl_use:N \l__mhchem_cf_result_tl} } { \ensuremath{\overset{#1}{\tl_use:N \l__mhchem_cf_result_tl}} } - \__mhchem_output_end_cf: \group_end: } \tl_new:N \l__mhchem_cf_loop_tmpa_l @@ -1427,14 +1427,13 @@ { - } { \bool_if:NTF \l__mhchem_cf_startedWithBond_bool - { - \__mhchem_cf_outputAndReset: - \__mhchem_cf_outputRawElementAndReset:n { \__mhchem_output_bond_single: } - } + { \__mhchem_cf_outputRaw:n { \__mhchem_output_bond_single: } } { \tl_put_right:Nn \l__mhchem_cf_sup_tl { - } } } { 1 } { \tl_set:Nn \l__mhchem_cf_state_tl {9} } + { frac2 } + { \__mhchem_cf_outputRawElementAndReset: } } {} \__mhchem_cf_outputAndReset: @@ -1452,12 +1451,11 @@ \l__mhchem_regex_oneLetterPlus_fregex \l__mhchem_cf_lastElement_tl { - \__mhchem_cf_outputRawElementAndReset:n + \__mhchem_cf_outputRaw:n { \__mhchem_cg_escapeFromMathToTextOrFaketext:n { - } } } { - \__mhchem_cf_outputRawElementAndReset:n - { \__mhchem_output_bond_single: } + \__mhchem_cf_outputRaw:n { \__mhchem_output_bond_single: } } \tl_set:Nn \l__mhchem_cf_state_tl { s } \__mhchem_cf_loop: @@ -1481,7 +1479,7 @@ { ps } { \__mhchem_cf_outputAndReset: - \__mhchem_regex_peek:NTF \l__mhchem_regex_uppercaseLetter_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_uppercaseLetterOrParenthesis_pregex { \regex_match:NVTF \l__mhchem_regex_formulaAmount_fregex @@ -1522,7 +1520,7 @@ % else { \tl_set:Nn \l__mhchem_cf_state_tl { a } - \__mhchem_loopHelper_appendNextGroup_prefix_ifEmpty:NnnNn + \__mhchem_loopHelper_appendNextGroup_prefix_doIfEmpty:NnnNn \l__mhchem_cf_element_tl { \__mhchem_cg_escapeFromMathToTextOrFaketext:n } { \tl_set:Nn \l__mhchem_cf_state_tl { s } } @@ -1650,7 +1648,7 @@ { s } \__mhchem_cf_loop: }{ - \__mhchem_regex_peek:NTF \l__mhchem_regex_closingBrace_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_closingBracket_pregex { \__mhchem_loopHelper_outputAndReset_appendNextTokenToResult_setState:nNn { a } @@ -1668,34 +1666,62 @@ \__mhchem_cf_outputAndReset: \tl_set:Nn \l__mhchem_cf_state_tl { 1 } \__mhchem_cf_loop: + }{ + \peek_charcode:NTF | + { + \__mhchem_loopHelper_outputAndReset_appendToResult_setState_useNone:nnNn + { \__mhchem_output_verticalBar: } + { s } + \__mhchem_cf_loop: } % else { \msg_error:nnn { mhchem } { cf / unexpected-input } } - }}}}}}}}}}}}}}}} + }}}}}}}}}}}}}}}}} } { c } { \regex_match:NVTF - \l__mhchem_regex_greekLetter_fregex + \l__mhchem_regex_oneGreekLetter_fregex \l__mhchem_cf_element_tl { \tl_set:Nn \l__mhchem_cf_state_tl { a } \__mhchem_cf_loop: - } + }{ + \regex_match:NVTF + \l__mhchem_regex_fracMacro_fregex + \l__mhchem_cf_element_tl { - \peek_catcode:NTF \c_group_begin_token - { - \__mhchem_loopHelper_appendNextGroup:NNn - \l__mhchem_cf_element_tl - \__mhchem_cf_loop: - } - % else - { - \__mhchem_cf_outputAndReset: - \tl_set:Nn \l__mhchem_cf_state_tl { a } - \__mhchem_cf_loop: - } + \tl_set:Nn \l__mhchem_cf_state_tl { frac1 } + \__mhchem_loopHelper_appendNextGroupAsCe:NNn + \l__mhchem_cf_element_tl + \__mhchem_cf_loop: + }{ + \peek_catcode:NTF \c_group_begin_token + { + \__mhchem_loopHelper_appendNextGroup:NNn + \l__mhchem_cf_element_tl + \__mhchem_cf_loop: } + % else + { + \__mhchem_cf_outputRawElementAndReset: + \tl_set:Nn \l__mhchem_cf_state_tl { a } + \__mhchem_cf_loop: + } + }} + } + { frac1 } + { + \tl_set:Nn \l__mhchem_cf_state_tl { frac2 } + \__mhchem_loopHelper_appendNextGroupAsCe:NNn + \l__mhchem_cf_element_tl + \__mhchem_cf_loop: + } + { frac2 } + { + \__mhchem_cf_outputRawElementAndReset: + \tl_set:Nn \l__mhchem_cf_state_tl { a } + \__mhchem_cf_loop: } { 1 } { @@ -1712,6 +1738,8 @@ }{ \peek_charcode:NTF - { + \tl_set:Nn \l__mhchem_cf_state_tl { 9 } + \__mhchem_cf_outputAndReset: \tl_set:Nn \l__mhchem_cf_state_tl { - } \__mhchem_loopHelper_ignoreNextToken:Nn \__mhchem_cf_loop: } @@ -1744,7 +1772,7 @@ } % else { - \__mhchem_loopHelper_appendNextGroup_prefix_ifEmpty:NnnNn + \__mhchem_loopHelper_appendNextGroup_prefix_doIfEmpty:NnnNn \l__mhchem_cf_element_tl { \__mhchem_cg_escapeFromMathToTextOrFaketext:n } {} @@ -1831,8 +1859,7 @@ } % else { - \__mhchem_cf_outputAndReset: - \__mhchem_cf_outputRawElementAndReset:n + \__mhchem_cf_outputRaw:n { \__mhchem_output_commaEnumeration: } \__mhchem_loopHelper_ignoreNextToken:Nn \__mhchem_cf_loop: } @@ -1850,13 +1877,13 @@ \tl_set:Nn \l__mhchem_cf_state_tl { e } \__mhchem_cf_loop: }{ - \__mhchem_regex_peek:NTF \l__mhchem_regex_openingBrace_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_openingBracket_pregex { \__mhchem_loopHelper_outputAndReset_appendNextTokenToResult_setState:nNn { s } \__mhchem_cf_loop: }{ - \__mhchem_regex_peek:NTF \l__mhchem_regex_closingBrace_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_closingBracket_pregex { \__mhchem_loopHelper_outputAndReset_appendNextTokenToResult_setState:nNn { a } @@ -1906,9 +1933,7 @@ { \__mhchem_cf_outputAndReset: \tl_set:Nn \l__mhchem_cf_state_tl { s } - \__mhchem_loopHelper_appendNextToken:NNn - \l__mhchem_cf_result_tl - \__mhchem_cf_loop: + \__mhchem_cf_loop: } }}}}}}}}}}}}}}} } @@ -1948,7 +1973,7 @@ \peek_charcode:NTF - { \regex_match:NVTF - \l__mhchem_regex_oneGreekLetter_fregex + \l__mhchem_regex_oneLetterPlus_fregex \l__mhchem_cf_element_tl { \tl_set:Nn \l__mhchem_cf_state_tl { - } @@ -2016,7 +2041,7 @@ { l__mhchem_cf_presup_tl } { __mhchem_cf_loop: } }{ - \__mhchem_regex_peek:NTF \l__mhchem_regex_digit_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_digitOrMinus_pregex { \tl_set:Nn \l__mhchem_cf_state_tl { p+ } \__mhchem_loopHelper_appendNextToken:NNn @@ -2055,7 +2080,7 @@ { l__mhchem_cf_presub_tl } { __mhchem_cf_loop: } }{ - \__mhchem_regex_peek:NTF \l__mhchem_regex_digit_pregex + \__mhchem_regex_peek:NTF \l__mhchem_regex_digitOrMinus_pregex { \tl_set:Nn \l__mhchem_cf_state_tl { q+ } \__mhchem_loopHelper_appendNextToken:NNn @@ -2152,11 +2177,14 @@ \str_if_eq:VnTF \l__mhchem_cf_supState_tl { rm } { \tl_set:Nx \l__mhchem_cf_sup_tl { \exp_not:N \__mhchem_output_escapeToRomanMath:n { \exp_not:V \l__mhchem_cf_sup_tl } } } { \__mhchem_cg_replaceForSuperscript:N \l__mhchem_cf_sup_tl } - \regex_match:NVTF - \l__mhchem_regex_romanNumeral_fregex - \l__mhchem_cf_sup_tl - { \tl_set:Nn \l__mhchem_cf_supState_tl { ox } } - {} + \str_if_eq:VnT \l__mhchem_cf_supState_tl { kv } + { + \regex_match:NVTF + \l__mhchem_regex_romanNumeral_fregex + \l__mhchem_cf_sup_tl + { \tl_set:Nn \l__mhchem_cf_supState_tl { ox } } + {} + } \bool_if:nT { \str_if_eq_p:Vn \l__mhchem_cf_supState_tl { kv } && @@ -2225,8 +2253,9 @@ \__mhchem_cf_outputRawElement: \__mhchem_cf_resetOutput: } -\cs_new_protected:Npn \__mhchem_cf_outputRawElementAndReset:n #1 +\cs_new_protected:Npn \__mhchem_cf_outputRaw:n #1 { + \__mhchem_cf_outputAndReset: \tl_put_right:Nn \l__mhchem_cf_element_tl {#1} \__mhchem_cf_outputRawElementAndReset: } @@ -2236,8 +2265,12 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%% \tl_new:N \l__mhchem_cg_withinMathTokens_tmpa_tl +\bool_new:N \l__mhchem_cg_withinMathTokens_bool +\bool_set_false:N \l__mhchem_cg_withinMathTokens_bool \cs_new_protected:Npn \__mhchem_cg_withinMathTokens:n #1 { + \group_begin: + \bool_set_true:N \l__mhchem_cg_withinMathTokens_bool \int_compare:nTF { \l__mhchem_option_version_int > 3 } { \regex_match:NnTF @@ -2289,12 +2322,7 @@ { \__mhchem_output_escapeFromMathToItalicMath:n {#1} } - } -\tl_new:N \g__mhchem_cg_potentialSpaceAfterWithinMath_tl -\cs_new_protected:Npn \__mhchem_cg_potentialSpaceAfterWithinMath: - { - \tl_use:N \g__mhchem_cg_potentialSpaceAfterWithinMath_tl - \tl_gclear:N \g__mhchem_cg_potentialSpaceAfterWithinMath_tl + \group_end: } \cs_new_protected:Npn \__mhchem_cg_itshape:n #1 { @@ -2421,7 +2449,7 @@ \peek_meaning:NTF \q_recursion_stop { \use_none:n } { - \peek_catcode_remove:NTF \c_math_toggle_token + \peek_catcode_remove:NTF \c_math_toggle_token { \tl_set:Nn \l__mhchem_cg_replaceForSubscript_state_tl { s } \__mhchem_loopHelper_appendWithinMathTokens:nn @@ -2647,11 +2675,6 @@ } } -\cs_new_protected:Npn \__mhchem_output_begin_ce: {} -\cs_new_protected:Npn \__mhchem_output_end_ce: {} -\cs_new_protected:Npn \__mhchem_output_begin_cf: {} -\cs_new_protected:Npn \__mhchem_output_end_cf: {} - \cs_new_protected:Npn \__mhchem_output_amount:n #1 { \__mhchem_output_withFont:n {#1} @@ -2671,18 +2694,19 @@ \hphantom { {}^{\__mhchem_output_withFont:n{#1}}\c_math_subscript_token{\__mhchem_output_withFont:n{#2}} } { \vphantom { \__mhchem_output_withFont:n { X } } } ^ { - \mhchem@mathboxrightt + \__mhchem_output_coreFive_llap:n { - \vphantom { \__mhchem_output_scriptWithFont:n { 2+ } } + \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2 } } } \__mhchem_output_scriptWithFont:n {#1} } } \tl_if_empty:nF {#2} { \c_math_subscript_token { - \mhchem@mathboxrightt + \__mhchem_output_coreFive_llap:n { - \smash{\__mhchem_output_scriptWithFont:n {#2}} + \vphantom { \__mhchem_output_scriptWithFont:n { 2 } } + \smash[t] { \__mhchem_output_scriptWithFont:n {#2} } } } } @@ -2703,7 +2727,7 @@ } } ^ { - \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2+ } } } + \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2 } } } \__mhchem_output_scriptWithFont:n {#4#5#7} } } @@ -2715,7 +2739,7 @@ { { \vphantom { \__mhchem_output_withFont:n { X } } } ^ { - \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2+ } } } + \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2 } } } \__mhchem_output_scriptWithFont:n {#4} } \c_math_subscript_token @@ -2735,7 +2759,7 @@ } } ^ { - \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2+ } } } + \vphantom { \smash[t] { \__mhchem_output_scriptWithFont:n { 2 } } } \hphantom { \__mhchem_output_scriptWithFont:n {#6} } \__mhchem_output_scriptWithFont:n {#5#7} } @@ -2754,7 +2778,6 @@ { \vphantom { \__mhchem_output_withFont:n { X } } } \c_math_subscript_token { - \vphantom { \__mhchem_output_scriptWithFont:n { 2 } } \smash[t] { \__mhchem_output_scriptWithFont:n {#6} } } } @@ -2771,6 +2794,28 @@ } \group_end: } +\cs_new_protected:Npn \__mhchem_output_coreFive_llap:n #1 + { + \mathchoice + {\llap{\ensuremath{\displaystyle#1}}} + {\llap{\ensuremath{\textstyle#1}}} + {\llap{\ensuremath{\scriptstyle#1}}} + {\llap{\ensuremath{\scriptscriptstyle#1}}} + } +%%% @minispace +\newlength\mhchem@minispace@tmp +\newcommand*\mhchem@minispace{% + \setlength{\mhchem@minispace@tmp}{0pt-\widthof{${}^8\c_math_subscript_token8$}+% + \widthof{$\text{C}^8\c_math_subscript_token8$}-\widthof{$\text{C}^{}\c_math_subscript_token{}$}}% + \kern\mhchem@minispace@tmp% +} +%%% @minibackspace +\newlength\mhchem@minibackspace@tmp +\newcommand*\mhchem@minibackspace{% + \setlength{\mhchem@minibackspace@tmp}{0pt-\widthof{${}\c_math_subscript_token{2}{}\c_math_subscript_token{2}$}+\widthof{${}\c_math_subscript_token{22}$}}% + \kern\mhchem@minibackspace@tmp% +} + \cs_new_protected:Npn \__mhchem_output_withFont:n #1 { \bool_if:NTF \l__mhchem_output_isMathMode_bool @@ -2811,7 +2856,9 @@ { \group_begin: \itshape \mhchem@hook@beforeItalicText #1 \group_end: \/ } \cs_new_protected:Npn \__mhchem_output_escapeToItalicMath:n #1 { - \ensuremath { \__mhchem_output_escapeFromMathToItalicMath:n {#1} } + \bool_if:NTF \l__mhchem_output_isMathMode_bool + { \__mhchem_output_escapeFromMathToItalicMath:n {#1} } + { \__mhchem_output_escapeFromTextToItalicMath:n {#1} } } \cs_new_protected:Npn \__mhchem_output_escapeFromMathToItalicMath:n #1 { @@ -2822,6 +2869,12 @@ \ensuremath { \mhchem@hook@beforeItalicMath + \bool_if:NT \l__mhchem_cg_isScript_bool + { + \medmuskip=0mu + \thinmuskip=0mu + \thickmuskip=0mu + } #1 } } @@ -2882,6 +2935,12 @@ { \ensuremath { \,{\mhchem@option@cdot}\, } } +\cs_new_protected:Npn \__mhchem_output_verticalBar: + { + \bool_if:NTF \l__mhchem_output_isMathMode_bool + { | } + { \text{\textbar} } + } \cs_new_protected:Npn \__mhchem_output_excited: { \bool_if:NTF \l__mhchem_output_isMathMode_bool @@ -2907,61 +2966,6 @@ { \__mhchem_output_commaEnumerationSmall: } } -\cs_new_protected:Npn \__mhchem_output_bond_single: - { - \int_compare:nTF { \l__mhchem_option_version_int < 4 } - { {\ensuremath{-}} } - { - \bool_if:NTF \l__mhchem_output_isMathMode_bool - { {\ensuremath{-}} } - { \text{\mhchem@option@textminus} } - } - } -\cs_new_protected:Npn \__mhchem_output_bond_double: - { - \rlap { \protect \raisebox { .2ex }{ \__mhchem_output_bond_single: } } - \protect \raisebox { -.2ex }{ \__mhchem_output_bond_single: } - } -\cs_new_protected:Npn \__mhchem_output_bond_triple: - { - \rlap { \protect \raisebox { .4ex } { \__mhchem_output_bond_single: } } - \rlap{ \__mhchem_output_bond_single: } - \protect \raisebox { -.4ex } { \__mhchem_output_bond_single: } - } -\cs_new_protected:Npn \__mhchem_output_bond_half: - { - \mhchem@setbondwidth - \mhchem@halfbond - } -\cs_new_protected:Npn \__mhchem_output_bond_oneAndHalf: - { - \mhchem@setbondwidth - \rlap{\protect\raisebox{.2ex}{\mhchem@halfbond}} - \protect\raisebox{-.2ex}{\__mhchem_output_bond_single:} - } -\cs_new_protected:Npn \__mhchem_output_bond_twoAndHalf: - { - \mhchem@setbondwidth - \rlap{\protect\raisebox{.4ex}{\mhchem@halfbond}} - \rlap{\__mhchem_output_bond_single:} - \protect\raisebox{-.4ex}{\__mhchem_output_bond_single:} - } -\cs_new_protected:Npn \__mhchem_output_bond_twoAndHalff: - { - \mhchem@setbondwidth - \rlap{\protect\raisebox{.4ex}{\__mhchem_output_bond_single:}} - \rlap{\mhchem@halfbond} - \protect\raisebox{-.4ex}{\__mhchem_output_bond_single:} - } -\cs_new_protected:Npn \__mhchem_output_bond_dotdotdot: - { {\cdot}{\cdot}{\cdot} } -\cs_new_protected:Npn \__mhchem_output_bond_dotdotdotdot: - { {\cdot}{\cdot}{\cdot}{\cdot} } -\cs_new_protected:Npn \__mhchem_output_bond_rightArrow: - { {\rightarrow} } -\cs_new_protected:Npn \__mhchem_output_bond_leftArrow: - { {\leftarrow} } - \cs_new_protected:Npn \__mhchem_output_greek:n #1 { \group_begin: @@ -3013,9 +3017,15 @@ \cs_set_eq:NN \Chi \__mhchem_output_greek_orig_Chi \cs_set_eq:NN \Psi \__mhchem_output_greek_orig_Psi \cs_set_eq:NN \Omega \__mhchem_output_greek_orig_Omega - \mode_if_math:TF - { \chemgreek_get_from_mapping:nn { mhchem-math } {#1} } - { \chemgreek_get_from_mapping:nn { mhchem-text } {#1} } + \bool_if:NTF \l__mhchem_cg_withinMathTokens_bool + { + { \chemgreek_get_from_mapping:nn { default } {#1} } + } + { + \mode_if_math:TF + { \chemgreek_get_from_mapping:nn { mhchem-math } {#1} } + { \chemgreek_get_from_mapping:nn { mhchem-text } {#1} } + } \group_end: } @@ -3023,6 +3033,61 @@ %%%%%%%%%% bonds %%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\cs_new_protected:Npn \__mhchem_output_bond_single: + { + \int_compare:nTF { \l__mhchem_option_version_int < 4 } + { {\ensuremath{-}} } + { + \bool_if:NTF \l__mhchem_output_isMathMode_bool + { {\ensuremath{-}} } + { \text{\mhchem@option@textminus} } + } + } +\cs_new_protected:Npn \__mhchem_output_bond_double: + { + \rlap { \protect \raisebox { .2ex }{ \__mhchem_output_bond_single: } } + \protect \raisebox { -.2ex }{ \__mhchem_output_bond_single: } + } +\cs_new_protected:Npn \__mhchem_output_bond_triple: + { + \rlap { \protect \raisebox { .4ex } { \__mhchem_output_bond_single: } } + \rlap{ \__mhchem_output_bond_single: } + \protect \raisebox { -.4ex } { \__mhchem_output_bond_single: } + } +\cs_new_protected:Npn \__mhchem_output_bond_half: + { + \mhchem@setbondwidth + \mhchem@halfbond + } +\cs_new_protected:Npn \__mhchem_output_bond_oneAndHalf: + { + \mhchem@setbondwidth + \rlap{\protect\raisebox{.2ex}{\mhchem@halfbond}} + \protect\raisebox{-.2ex}{\__mhchem_output_bond_single:} + } +\cs_new_protected:Npn \__mhchem_output_bond_twoAndHalf: + { + \mhchem@setbondwidth + \rlap{\protect\raisebox{.4ex}{\mhchem@halfbond}} + \rlap{\__mhchem_output_bond_single:} + \protect\raisebox{-.4ex}{\__mhchem_output_bond_single:} + } +\cs_new_protected:Npn \__mhchem_output_bond_twoAndHalff: + { + \mhchem@setbondwidth + \rlap{\protect\raisebox{.4ex}{\__mhchem_output_bond_single:}} + \rlap{\mhchem@halfbond} + \protect\raisebox{-.4ex}{\__mhchem_output_bond_single:} + } +\cs_new_protected:Npn \__mhchem_output_bond_dotdotdot: + { {\cdot}{\cdot}{\cdot} } +\cs_new_protected:Npn \__mhchem_output_bond_dotdotdotdot: + { {\cdot}{\cdot}{\cdot}{\cdot} } +\cs_new_protected:Npn \__mhchem_output_bond_rightArrow: + { {\rightarrow} } +\cs_new_protected:Npn \__mhchem_output_bond_leftArrow: + { {\leftarrow} } + \newlength\mhchem@bondwidth% \newlength\mhchem@bondheight% \newlength\mhchem@smallbondwidth@tmpA% @@ -3066,6 +3131,7 @@ \msg_new:nnn { mhchem } { bond / unknown } { Unknown~bond~type~in~\string\bond~(#1) } + \ExplSyntaxOff \ExplSyntaxOn % with special tilde \char_set_catcode_letter:n { 126 } % tilde @@ -3098,32 +3164,6 @@ } \ExplSyntaxOff % end of Expl with tilde -%%% @mathboxright -\newcommand*\mhchem@mathboxright[2]{\mathchoice% - {\makebox[#1][r]{\ensuremath{\displaystyle#2}}}% - {\makebox[#1][r]{\ensuremath{\textstyle#2}}}% - {\makebox[#1][r]{\ensuremath{\scriptstyle#2}}}% - {\makebox[#1][r]{\ensuremath{\scriptscriptstyle#2}}}} -\newcommand*\mhchem@mathboxrightt[1]{\mathchoice% - {\ensuremath{\displaystyle\llap{\ensuremath{\displaystyle#1}}}}% - {\ensuremath{\textstyle\llap{\ensuremath{\textstyle#1}}}}% - {\ensuremath{\scriptstyle\llap{\ensuremath{\scriptstyle#1}}}}% - {\ensuremath{\scriptscriptstyle\llap{\ensuremath{\scriptscriptstyle#1}}}}}% - -%%% @minispace -\newlength\mhchem@minispace@tmp -\newcommand*\mhchem@minispace{% - \setlength{\mhchem@minispace@tmp}{0pt-\widthof{${}^8_8$}+% - \widthof{$\text{C}^8_8$}-\widthof{$\text{C}^{}_{}$}}% - \kern\mhchem@minispace@tmp% -} -%%% @minibackspace -\newlength\mhchem@minibackspace@tmp -\newcommand*\mhchem@minibackspace{% - \setlength{\mhchem@minibackspace@tmp}{0pt-\widthof{${}_{2}{}_{2}$}+\widthof{${}_{22}$}}% - \kern\mhchem@minibackspace@tmp% -} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%% Package Options %%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3131,21 +3171,10 @@ \ExplSyntaxOn \tl_new:N \l__mhchem_option_tmpa_tl -\msg_new:nnn { mhchem } { options / no-version } - { - You~did~not~specify~a~'version'~option~for~the~mhchem~package.~ - Please~write~ - \string\usepackage[version=4]{mhchem}~in~your~preamble~ - (or~any~lower~number~for~compatibility~mode),~ - because~you~might~get~different~output~with~the~same~input~ - in~future~versions. - } \msg_new:nnn { mhchem } { options / version-too-high } { You~are~using~version~4.xx~of~mhchem, - but~you~entered~a~higher~version~number.~ - This~means,~you~are~using~some~beta~features~of~mhchem~ - that~are~subject~to~change~without~notice. + but~you~entered~a~higher~version~number~that~is~not~supported~yet. } \def\mhchem@option@mathFont{\mathrm} @@ -3167,7 +3196,7 @@ \bool_new:N \l__mhchem_option_mathgreekSelectedByUser_bool \bool_set_false:N \l__mhchem_option_mathgreekSelectedByUser_bool -\keys_define:nn {mhchem} +\keys_define:nn { mhchem } { version .int_set:N = \l__mhchem_option_version_int, version .value_required:, @@ -3275,14 +3304,21 @@ \int_compare:nT { -1 = \l__mhchem_option_version_int } { - \msg_warning:nn { mhchem } { options / no-version } + \PackageWarningNoLine { mhchem } + { + You~did~not~specify~a~'version'~option~for~the~mhchem\MessageBreak + package.~Please~write~\string\usepackage[version=4]{mhchem}\MessageBreak + in~your~preamble~(or~any~lower~number~for\MessageBreak + compatibility~mode),~because~you~might~get~slightly\MessageBreak + different~output~with~the~same~input~in~future~versions + } \int_set:Nn \l__mhchem_option_version_int { 4 } } % else { \int_compare:nT { \l__mhchem_option_version_int > 4 } { - \msg_warning:nn { mhchem } { options / version-too-high } + \msg_error:nn { mhchem } { options / version-too-high } } } \bool_if:NF \l__mhchem_option_layoutWasSet_bool @@ -3310,8 +3346,7 @@ \int_compare:nT { \l__mhchem_option_version_int < 4 } { - \newcommand*\mhchem@cmath[1]{\__mhchem_output_escapeFromMathToItalicMath:n{#1}} - \newcommand*\cmath[1]{\mhchem@cmath{#1}} + \newcommand*\cmath[1]{\__mhchem_output_escapeFromMathToItalicMath:n{#1}} \DeclareRobustCommand\cf[2][]{\mhchem@cf[#1]{#2}} \DeclareRobustCommand\cee[1]{\mhchem@cee{#1}} } |