A Transactional Approach to Ensure Reliable Web Services Compositions
Identifieur interne : 004505 ( Hal/Checkpoint ); précédent : 004504; suivant : 004506A Transactional Approach to Ensure Reliable Web Services Compositions
Auteurs : Sami Bhiri [France]Source :
Descripteurs français
- mix :
English descriptors
- mix :
Abstract
The Web services approach is extending the role of the Web from a support of information interaction to a middleware for B2B interactions. One of the interesting concepts that this technology offers is the possibility to define a new service by combining existing Web services. In this
thesis, we are interested in ensuring reliable Web services compositions.
For that purpose, we propose a model that (i) extends Web services description to express better their transactional properties and that (ii) extends and merge workflow systems and advanced transactional models (ATM).
We develop three approaches, based on this model, to ensure reliable Web services compositions. Contrary to the ATM, the first approach starts from the designers requirements to determine the transactional mechanisms allowing to ensure correct executions.
The second approach proceeds by re-engineering of the composite service (CS). This approach allows to improve a CS recovery mechanisms by analysing its executions traces.
The third approach is based on the concept of "Transactional Patterns", a new concept we introduce. A "Transactional Pattern" is a pattern that combines the workflow flexibility and the ATM reliability. We define a CS by connecting together a set of transactional patterns. We use a set of coherence rules to ensure that the defined CS is reliable. The major contribution of our approach is her ability to merge the workflow systems flexibility and the ATM reliability. Thus, it allows to ensure correct executions according to the criterion specified by the designers.
thesis, we are interested in ensuring reliable Web services compositions.
For that purpose, we propose a model that (i) extends Web services description to express better their transactional properties and that (ii) extends and merge workflow systems and advanced transactional models (ATM).
We develop three approaches, based on this model, to ensure reliable Web services compositions. Contrary to the ATM, the first approach starts from the designers requirements to determine the transactional mechanisms allowing to ensure correct executions.
The second approach proceeds by re-engineering of the composite service (CS). This approach allows to improve a CS recovery mechanisms by analysing its executions traces.
The third approach is based on the concept of "Transactional Patterns", a new concept we introduce. A "Transactional Pattern" is a pattern that combines the workflow flexibility and the ATM reliability. We define a CS by connecting together a set of transactional patterns. We use a set of coherence rules to ensure that the defined CS is reliable. The major contribution of our approach is her ability to merge the workflow systems flexibility and the ATM reliability. Thus, it allows to ensure correct executions according to the criterion specified by the designers.
Url:
Links toward previous steps (curation, corpus...)
Links to Exploration step
Hal:tel-00011116Le document en format XML
<record><TEI><teiHeader><fileDesc><titleStmt><title xml:lang="en">A Transactional Approach to Ensure Reliable Web Services Compositions</title>
<title xml:lang="fr">Approche Transactionnelle pour Assurer des Compositions Fiables de Services Web</title>
<author><name sortKey="Bhiri, Sami" sort="Bhiri, Sami" uniqKey="Bhiri S" first="Sami" last="Bhiri">Sami Bhiri</name>
<affiliation wicri:level="1"><hal:affiliation type="researchteam" xml:id="struct-2349" status="OLD"><idno type="RNSR">199918294U</idno>
<orgName>Environment for cooperation</orgName>
<orgName type="acronym">ECOO</orgName>
<desc><address><country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/equipes/ecoo</ref>
</desc>
<listRelation><relation active="#struct-160" type="direct"></relation>
<relation name="UMR7503" active="#struct-441569" type="indirect"></relation>
<relation active="#struct-300009" type="indirect"></relation>
<relation active="#struct-300291" type="indirect"></relation>
<relation active="#struct-300292" type="indirect"></relation>
<relation active="#struct-300293" type="indirect"></relation>
<relation active="#struct-2496" type="direct"></relation>
</listRelation>
<tutelles><tutelle active="#struct-160" type="direct"><org type="laboratory" xml:id="struct-160" status="OLD"><orgName>Laboratoire Lorrain de Recherche en Informatique et ses Applications</orgName>
<orgName type="acronym">LORIA</orgName>
<desc><address><addrLine>Campus Scientifique BP 239 54506 Vandoeuvre-lès-Nancy Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.loria.fr</ref>
</desc>
<listRelation><relation name="UMR7503" active="#struct-441569" type="direct"></relation>
<relation active="#struct-300009" type="direct"></relation>
<relation active="#struct-300291" type="direct"></relation>
<relation active="#struct-300292" type="direct"></relation>
<relation active="#struct-300293" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle name="UMR7503" active="#struct-441569" type="indirect"><org type="institution" xml:id="struct-441569" status="VALID"><idno type="ISNI">0000000122597504</idno>
<idno type="IdRef">02636817X</idno>
<orgName>Centre National de la Recherche Scientifique</orgName>
<orgName type="acronym">CNRS</orgName>
<date type="start">1939-10-19</date>
<desc><address><country key="FR"></country>
</address>
<ref type="url">http://www.cnrs.fr/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect"><org type="institution" xml:id="struct-300009" status="VALID"><orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc><address><addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300291" type="indirect"><org type="institution" xml:id="struct-300291" status="OLD"><orgName>Université Henri Poincaré - Nancy 1</orgName>
<orgName type="acronym">UHP</orgName>
<date type="end">2011-12-31</date>
<desc><address><addrLine>24-30 rue Lionnois, BP 60120, 54 003 NANCY cedex, France</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300292" type="indirect"><org type="institution" xml:id="struct-300292" status="OLD"><orgName>Université Nancy 2</orgName>
<date type="end">2011-12-31</date>
<desc><address><addrLine>91 avenue de la Libération, BP 454, 54001 Nancy cedex</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300293" type="indirect"><org type="institution" xml:id="struct-300293" status="OLD"><orgName>Institut National Polytechnique de Lorraine</orgName>
<orgName type="acronym">INPL</orgName>
<date type="end">2011-12-31</date>
<desc><address><country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-2496" type="direct"><org type="laboratory" xml:id="struct-2496" status="OLD"><orgName>INRIA Lorraine</orgName>
<desc><address><addrLine>615 rue du Jardin Botanique 54600 Villers-lès-Nancy</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre-de-recherche-inria/nancy-grand-est</ref>
</desc>
<listRelation><relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
<placeName><settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Université Nancy 2</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
<placeName><settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Institut national polytechnique de Lorraine</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
</affiliation>
</author>
</titleStmt>
<publicationStmt><idno type="wicri:source">HAL</idno>
<idno type="RBID">Hal:tel-00011116</idno>
<idno type="halId">tel-00011116</idno>
<idno type="halUri">https://tel.archives-ouvertes.fr/tel-00011116</idno>
<idno type="url">https://tel.archives-ouvertes.fr/tel-00011116</idno>
<date when="2005-10-06">2005-10-06</date>
<idno type="wicri:Area/Hal/Corpus">000553</idno>
<idno type="wicri:Area/Hal/Curation">000553</idno>
<idno type="wicri:Area/Hal/Checkpoint">004505</idno>
<idno type="wicri:explorRef" wicri:stream="Hal" wicri:step="Checkpoint">004505</idno>
</publicationStmt>
<sourceDesc><biblStruct><analytic><title xml:lang="en">A Transactional Approach to Ensure Reliable Web Services Compositions</title>
<title xml:lang="fr">Approche Transactionnelle pour Assurer des Compositions Fiables de Services Web</title>
<author><name sortKey="Bhiri, Sami" sort="Bhiri, Sami" uniqKey="Bhiri S" first="Sami" last="Bhiri">Sami Bhiri</name>
<affiliation wicri:level="1"><hal:affiliation type="researchteam" xml:id="struct-2349" status="OLD"><idno type="RNSR">199918294U</idno>
<orgName>Environment for cooperation</orgName>
<orgName type="acronym">ECOO</orgName>
<desc><address><country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/equipes/ecoo</ref>
</desc>
<listRelation><relation active="#struct-160" type="direct"></relation>
<relation name="UMR7503" active="#struct-441569" type="indirect"></relation>
<relation active="#struct-300009" type="indirect"></relation>
<relation active="#struct-300291" type="indirect"></relation>
<relation active="#struct-300292" type="indirect"></relation>
<relation active="#struct-300293" type="indirect"></relation>
<relation active="#struct-2496" type="direct"></relation>
</listRelation>
<tutelles><tutelle active="#struct-160" type="direct"><org type="laboratory" xml:id="struct-160" status="OLD"><orgName>Laboratoire Lorrain de Recherche en Informatique et ses Applications</orgName>
<orgName type="acronym">LORIA</orgName>
<desc><address><addrLine>Campus Scientifique BP 239 54506 Vandoeuvre-lès-Nancy Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.loria.fr</ref>
</desc>
<listRelation><relation name="UMR7503" active="#struct-441569" type="direct"></relation>
<relation active="#struct-300009" type="direct"></relation>
<relation active="#struct-300291" type="direct"></relation>
<relation active="#struct-300292" type="direct"></relation>
<relation active="#struct-300293" type="direct"></relation>
</listRelation>
</org>
</tutelle>
<tutelle name="UMR7503" active="#struct-441569" type="indirect"><org type="institution" xml:id="struct-441569" status="VALID"><idno type="ISNI">0000000122597504</idno>
<idno type="IdRef">02636817X</idno>
<orgName>Centre National de la Recherche Scientifique</orgName>
<orgName type="acronym">CNRS</orgName>
<date type="start">1939-10-19</date>
<desc><address><country key="FR"></country>
</address>
<ref type="url">http://www.cnrs.fr/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300009" type="indirect"><org type="institution" xml:id="struct-300009" status="VALID"><orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
<orgName type="acronym">Inria</orgName>
<desc><address><addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/en/</ref>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300291" type="indirect"><org type="institution" xml:id="struct-300291" status="OLD"><orgName>Université Henri Poincaré - Nancy 1</orgName>
<orgName type="acronym">UHP</orgName>
<date type="end">2011-12-31</date>
<desc><address><addrLine>24-30 rue Lionnois, BP 60120, 54 003 NANCY cedex, France</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300292" type="indirect"><org type="institution" xml:id="struct-300292" status="OLD"><orgName>Université Nancy 2</orgName>
<date type="end">2011-12-31</date>
<desc><address><addrLine>91 avenue de la Libération, BP 454, 54001 Nancy cedex</addrLine>
<country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-300293" type="indirect"><org type="institution" xml:id="struct-300293" status="OLD"><orgName>Institut National Polytechnique de Lorraine</orgName>
<orgName type="acronym">INPL</orgName>
<date type="end">2011-12-31</date>
<desc><address><country key="FR"></country>
</address>
</desc>
</org>
</tutelle>
<tutelle active="#struct-2496" type="direct"><org type="laboratory" xml:id="struct-2496" status="OLD"><orgName>INRIA Lorraine</orgName>
<desc><address><addrLine>615 rue du Jardin Botanique 54600 Villers-lès-Nancy</addrLine>
<country key="FR"></country>
</address>
<ref type="url">http://www.inria.fr/centre-de-recherche-inria/nancy-grand-est</ref>
</desc>
<listRelation><relation active="#struct-300009" type="direct"></relation>
</listRelation>
</org>
</tutelle>
</tutelles>
</hal:affiliation>
<country>France</country>
<placeName><settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Université Nancy 2</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
<placeName><settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="university">Institut national polytechnique de Lorraine</orgName>
<orgName type="institution" wicri:auto="newGroup">Université de Lorraine</orgName>
</affiliation>
</author>
</analytic>
</biblStruct>
</sourceDesc>
</fileDesc>
<profileDesc><textClass><keywords scheme="mix" xml:lang="en"><term>
reliability.</term>
<term>Web services composition</term>
<term>advanced transactional models</term>
<term>fiabilité</term>
<term>workflow systems</term>
</keywords>
<keywords scheme="mix" xml:lang="fr"><term>composition de services Web</term>
<term>fiabilité.</term>
<term>modèles transactionnels avancés</term>
<term>systèmes de workflow</term>
</keywords>
</textClass>
</profileDesc>
</teiHeader>
<front><div type="abstract" xml:lang="en">The Web services approach is extending the role of the Web from a support of information interaction to a middleware for B2B interactions. One of the interesting concepts that this technology offers is the possibility to define a new service by combining existing Web services. In this
thesis, we are interested in ensuring reliable Web services compositions.
For that purpose, we propose a model that (i) extends Web services description to express better their transactional properties and that (ii) extends and merge workflow systems and advanced transactional models (ATM).
We develop three approaches, based on this model, to ensure reliable Web services compositions. Contrary to the ATM, the first approach starts from the designers requirements to determine the transactional mechanisms allowing to ensure correct executions.
The second approach proceeds by re-engineering of the composite service (CS). This approach allows to improve a CS recovery mechanisms by analysing its executions traces.
The third approach is based on the concept of "Transactional Patterns", a new concept we introduce. A "Transactional Pattern" is a pattern that combines the workflow flexibility and the ATM reliability. We define a CS by connecting together a set of transactional patterns. We use a set of coherence rules to ensure that the defined CS is reliable. The major contribution of our approach is her ability to merge the workflow systems flexibility and the ATM reliability. Thus, it allows to ensure correct executions according to the criterion specified by the designers.</div>
</front>
</TEI>
<hal api="V3"><titleStmt><title xml:lang="en">A Transactional Approach to Ensure Reliable Web Services Compositions</title>
<title xml:lang="fr">Approche Transactionnelle pour Assurer des Compositions Fiables de Services Web</title>
<author role="aut"><persName><forename type="first">Sami</forename>
<surname>Bhiri</surname>
</persName>
<email>bhiri@loria.fr</email>
<idno type="halauthor">71372</idno>
<affiliation ref="#struct-2349"></affiliation>
</author>
<editor role="depositor"><persName><forename>Sami</forename>
<surname>Bhiri</surname>
</persName>
<email>bhiri@loria.fr</email>
</editor>
</titleStmt>
<editionStmt><edition n="v1" type="current"><date type="whenSubmitted">2006-02-16 18:27:38</date>
<date type="whenModified">2016-05-19 01:09:21</date>
<date type="whenReleased">2006-02-17 20:19:40</date>
<date type="whenProduced">2005-10-06</date>
<date type="whenEndEmbargoed">2006-02-16</date>
<ref type="file" target="https://tel.archives-ouvertes.fr/tel-00011116/document"><date notBefore="2006-02-16"></date>
</ref>
<ref type="file" n="1" target="https://tel.archives-ouvertes.fr/tel-00011116/file/rapport.pdf"><date notBefore="2006-02-16"></date>
</ref>
</edition>
<respStmt><resp>contributor</resp>
<name key="107347"><persName><forename>Sami</forename>
<surname>Bhiri</surname>
</persName>
<email>bhiri@loria.fr</email>
</name>
</respStmt>
</editionStmt>
<publicationStmt><distributor>CCSD</distributor>
<idno type="halId">tel-00011116</idno>
<idno type="halUri">https://tel.archives-ouvertes.fr/tel-00011116</idno>
<idno type="halBibtex">bhiri:tel-00011116</idno>
<idno type="halRefHtml">Génie logiciel [cs.SE]. Université Henri Poincaré - Nancy I, 2005. Français</idno>
<idno type="halRef">Génie logiciel [cs.SE]. Université Henri Poincaré - Nancy I, 2005. Français</idno>
</publicationStmt>
<seriesStmt><idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
<idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
<idno type="stamp" n="INPL">Institut National Polytechnique de Lorraine</idno>
<idno type="stamp" n="LORIA2">Publications du LORIA</idno>
<idno type="stamp" n="INRIA-NANCY-GRAND-EST">INRIA Nancy - Grand Est</idno>
<idno type="stamp" n="LORIA">LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications</idno>
<idno type="stamp" n="LORIA-NSS" p="LORIA">Réseaux, systèmes et services</idno>
<idno type="stamp" n="UNIV-LORRAINE">Université de Lorraine</idno>
<idno type="stamp" n="INRIA-LORRAINE">INRIA Nancy - Grand Est</idno>
<idno type="stamp" n="LABO-LORIA-SET" p="LORIA">LABO-LORIA-SET</idno>
</seriesStmt>
<notesStmt></notesStmt>
<sourceDesc><biblStruct><analytic><title xml:lang="en">A Transactional Approach to Ensure Reliable Web Services Compositions</title>
<title xml:lang="fr">Approche Transactionnelle pour Assurer des Compositions Fiables de Services Web</title>
<author role="aut"><persName><forename type="first">Sami</forename>
<surname>Bhiri</surname>
</persName>
<email>bhiri@loria.fr</email>
<idno type="halAuthorId">71372</idno>
<affiliation ref="#struct-2349"></affiliation>
</author>
</analytic>
<monogr><imprint><date type="dateDefended">2005-10-06</date>
</imprint>
<authority type="institution">Université Henri Poincaré - Nancy I</authority>
<authority type="school">Informatique, Automatique, Électronique–Électrotechnique et Mathématiques Lorraine</authority>
<authority type="supervisor">Claude Godart(godart@loria.fr)</authority>
<authority type="jury">Mohand-Saïd Hacid (Rapporteur)</authority>
<authority type="jury">Jean-Benard Stefani (Rapporteur)</authority>
<authority type="jury">Vincent Chevrier (Référent interne)</authority>
<authority type="jury">Claude Godart (Directeur de thèse)</authority>
<authority type="jury">Olivier Perrin (Co-Encadrant)</authority>
</monogr>
</biblStruct>
</sourceDesc>
<profileDesc><langUsage><language ident="fr">French</language>
</langUsage>
<textClass><keywords scheme="author"><term xml:lang="en">fiabilité</term>
<term xml:lang="en">Web services composition</term>
<term xml:lang="en">advanced transactional models</term>
<term xml:lang="en">workflow systems</term>
<term xml:lang="en">
reliability.</term>
<term xml:lang="fr">composition de services Web</term>
<term xml:lang="fr">modèles transactionnels avancés</term>
<term xml:lang="fr">systèmes de workflow</term>
<term xml:lang="fr">fiabilité.</term>
</keywords>
<classCode scheme="halDomain" n="info.info-se">Computer Science [cs]/Software Engineering [cs.SE]</classCode>
<classCode scheme="halTypology" n="THESE">Theses</classCode>
</textClass>
<abstract xml:lang="en">The Web services approach is extending the role of the Web from a support of information interaction to a middleware for B2B interactions. One of the interesting concepts that this technology offers is the possibility to define a new service by combining existing Web services. In this
thesis, we are interested in ensuring reliable Web services compositions.
For that purpose, we propose a model that (i) extends Web services description to express better their transactional properties and that (ii) extends and merge workflow systems and advanced transactional models (ATM).
We develop three approaches, based on this model, to ensure reliable Web services compositions. Contrary to the ATM, the first approach starts from the designers requirements to determine the transactional mechanisms allowing to ensure correct executions.
The second approach proceeds by re-engineering of the composite service (CS). This approach allows to improve a CS recovery mechanisms by analysing its executions traces.
The third approach is based on the concept of "Transactional Patterns", a new concept we introduce. A "Transactional Pattern" is a pattern that combines the workflow flexibility and the ATM reliability. We define a CS by connecting together a set of transactional patterns. We use a set of coherence rules to ensure that the defined CS is reliable. The major contribution of our approach is her ability to merge the workflow systems flexibility and the ATM reliability. Thus, it allows to ensure correct executions according to the criterion specified by the designers.</abstract>
<abstract xml:lang="fr">L'approche "services Web" étend le rôle du Web d'un simple support d'information vers un intergiciel d'applications B2B. Un des concepts intéressants qu'offre cette technologie est la possibilité de définir un nouveau service par composition de services Web existants. Dans cette thèse nous nous intéressons à assurer des compositions fiables de services Web. Pour ce faire, nous proposons un modèle qui (i) enrichit la description des services Web pour mieux exprimer leurs propriétés transactionnelles et qui (ii) étend et fusionne les systèmes de workflow et les modèles transactionnels avancés (MTA).
Nous proposons trois approches, basées sur ce modèle, pour assurer des compositions fiables. Contrairement aux MTA, la première approche part des spécifications des concepteurs pour déterminer les mécanismes transactionnels permettant d'assurer des exécutions correctes.
La deuxième approche procède par ré-ingénierie du service composé (SC). Elle permet d'améliorer les mécanismes de recouvrement d'un SC après analyse de ses traces d'exécutions.
La troisième approche repose sur le concept de "patron transactionnel", un nouveau concept que nous introduisons. Un "patron transactionnel"est un patron qui combine la flexibilité des workflows et la fiabilité des MTA. Nous définissons un SC en connectant des patrons transactionnels.
Nous utilisons un ensemble de règles de cohérence pour assurer que le SC défini est fiable. La contribution majeure de notre proposition est qu'elle a pu fusionner la flexibilité des systèmes de workflow et la fiabilité des MTA. Ainsi elle permet d'assurer des exécutions correctes
selon les critères spécifiés par les concepteurs.</abstract>
</profileDesc>
</hal>
</record>
Pour manipuler ce document sous Unix (Dilib)
EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/Hal/Checkpoint
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 004505 | SxmlIndent | more
Ou
HfdSelect -h $EXPLOR_AREA/Data/Hal/Checkpoint/biblio.hfd -nk 004505 | SxmlIndent | more
Pour mettre un lien sur cette page dans le réseau Wicri
{{Explor lien |wiki= Wicri/Lorraine |area= InforLorV4 |flux= Hal |étape= Checkpoint |type= RBID |clé= Hal:tel-00011116 |texte= A Transactional Approach to Ensure Reliable Web Services Compositions }}
![]() | This area was generated with Dilib version V0.6.33. | ![]() |