Author: tchemit Date: 2008-07-29 15:53:02 +0000 (Tue, 29 Jul 2008) New Revision: 1274 Added: branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/user/ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/user/IsisUsage.rst branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/user/ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/user/IsisUsage.rst Removed: branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/user/ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/user/ Log: commandline rst (il faut finir les traductions) Added: branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/user/IsisUsage.rst =================================================================== --- branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/user/IsisUsage.rst (rev 0) +++ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/en/rst/v3/user/IsisUsage.rst 2008-07-29 15:53:02 UTC (rev 1274) @@ -0,0 +1,373 @@ +================ +**Isis**'s usage +================ + +Launch commands +--------------- + +#. --add|-a <analyseplans|exports|formules=STRING|rules|scripts|simulators> <file:FILE+> [check|force] + isisfish.option.description.addScript + + +#. --create-ssh-key|-c [force] [privateKeyFile:NEWFILE] + isisfish.option.description.createSshKey + + +#. --export|-o <fileZip:NEWFILE> <region|simulation> <name:STRING> [force] + isisfish.option.description.exportData + + +#. --export-script|-os <fileZip:NEWFILE> <analyseplans|exports|formules=STRING|rules|scripts|simulators> [filter:STRING] [force] + isisfish.option.description.exportScript + + +#. --import|-i <region|simulation|script> <fileZip:FILE> [force] + isisfish.option.description.import + + +#. --importAndRenameRegion <regionFile:FILE> <name:STRING> [force] + isisfish.option.description.importAndRenameRegion + + +#. [--list|-l]* <analyseplans|exports|formules|regions|rules|scripts|simulations|simulators> [filter:STRING] + isisfish.option.description.list + + +#. --mavenFile + isisfish.option.description.mavenFile + + +#. --simulate <simulationId:STRING> [simulationParameter=FILE] [simulation=FILE] [region=FILE] + isisfish.option.description.simulate + + +#. --ssh-key-file|-k <privateKeyFile:FILE> + isisfish.option.description.sshKeyFile + + +#. --update|-u <value:BOOLEAN> + isisfish.option.description.update + + +#. --vcs2 <add|remove> <file:FILE+> + isisfish.option.description.vcsAddRemove + + +#. --vcs <update|commit|state> [file:FILE*] + isisfish.option.description.vcsUpdateCommitState + + +#. [--show-config]* <all|h2|main|vcs> [normal|complete|tec] + isisfish.option.description.showConfig + + +#. --edit-config + isisfish.option.description.editConfig + + +#. --config-file <configFile:FILE> + isisfish.option.description.changeFileConfig + + +#. [--config]* <key:STRING> <value:STRING> [h2|main|vcs] + isisfish.option.description.changeConfig + + +#. --help|-h + isisfish.option.description.help + + +#. [--help-config]* <all|h2|main|vcs> + isisfish.option.description.helpConfig + + +#. --reset-config + isisfish.option.description.resetConfig + + +#. --ui <flag:BOOLEAN> + isisfish.option.description.ui + +Configurations of **Isis** +-------------------------- + +isisfish.config.h2.description (h2) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. h2BytecodeProvider (String) <defaultValue:javassist> + isisfish.config.h2.h2BytecodeProvider.description + + +#. h2CurrentSessionContextClass (String) <defaultValue:thread> + isisfish.config.h2.h2CurrentSessionContextClass.description + + +#. h2Dialect (String) <defaultValue:org.hibernate.dialect.H2Dialect> + isisfish.config.h2.h2Dialect.description + + +#. h2Driver (String) <defaultValue:org.h2.Driver> + isisfish.config.h2.h2Driver.description + + +#. h2MemBytecodeProvider (String) <defaultValue:javassist> + isisfish.config.h2.h2MemBytecodeProvider.description + + +#. h2MemDialect (String) <defaultValue:org.hibernate.dialect.H2Dialect> + isisfish.config.h2.h2MemDialect.description + + +#. h2MemDriver (String) <defaultValue:org.h2.Driver> + isisfish.config.h2.h2MemDriver.description + + +#. h2MemPass (String) <defaultValue:> + isisfish.config.h2.h2MemPass.description + + +#. h2MemType (H2TypeEnum) <defaultValue:h2> + isisfish.config.h2.h2MemType.description + + +#. h2MemURL (String) <defaultValue:jdbc:h2:mem:{0};MODE=hsqldb;DEFAULT_LOCK_TIMEOUT=1000;DB_CLOSE_DELAY=0;LOCK_MODE=3;LOG=0;TRACE_LEVEL_FILE=0;TRACE_LEVEL_SYSTEM_OUT=1> + isisfish.config.h2.h2MemURL.description + + +#. h2MemUser (String) <defaultValue:sa> + isisfish.config.h2.h2MemUser.description + + +#. h2Pass (String) <defaultValue:> + isisfish.config.h2.h2Pass.description + + +#. h2Type (H2TypeEnum) <defaultValue:h2> + isisfish.config.h2.h2Type.description + + +#. h2URL (String) <defaultValue:jdbc:h2:file:{0};FILE_LOCK=file;MODE=hsqldb;DEFAULT_LOCK_TIMEOUT=1000;DB_CLOSE_DELAY=0;LOCK_MODE=3;LOG=1;TRACE_LEVEL_FILE=0;TRACE_LEVEL_SYSTEM_OUT=1> + isisfish.config.h2.h2URL.description + + +#. h2User (String) <defaultValue:sa> + isisfish.config.h2.h2User.description + + +#. migrationApplicationVersion (Integer) <defaultValue:1> + isisfish.config.h2.migrationApplicationVersion.description + + +#. migrationCallBackhandlers (String) <defaultValue:fr.ifremer.isisfish.datastore.migration.SwingMigrationCallbackHandler> + isisfish.config.h2.migrationCallBackhandlers.description + + +#. migrationModelNames (String) <defaultValue:IsisFish> + isisfish.config.h2.migrationModelNames.description + + +#. migrationPreviousMappingDirectory (String) <defaultValue:oldmappings> + isisfish.config.h2.migrationPreviousMappingDirectory.description + + +#. migrationTopiaService (String) <defaultValue:org.codelutin.topia.migration.TopiaMigrationServiceImpl> + isisfish.config.h2.migrationTopiaService.description + + +#. storageData (String) <defaultValue:data> + isisfish.config.h2.storageData.description + + +#. updateschemaDatabase (Boolean) <defaultValue:false> + isisfish.config.h2.updateschemaDatabase.description + + +isisfish.config.main.description (main) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. compileDirectory (File) <defaultValue:isis-build> + isisfish.config.main.compileDirectory.description + + +#. configFileName (File) <defaultValue:.isis-config-3> + isisfish.config.main.configFileName.description + + +#. copyright (String) <defaultValue:Copyright Ifremer Codelutin 1999 - 2008> + isisfish.config.main.copyright.description + + +#. dataBackupFilename (String) <defaultValue:data-backup.sql.gz> + isisfish.config.main.dataBackupFilename.description + + +#. defaultBackupDirectory (File) <defaultValue:isis-backup> + isisfish.config.main.defaultBackupDirectory.description + + +#. defaultExportDirectory (File) <defaultValue:isis-export> + isisfish.config.main.defaultExportDirectory.description + + +#. defaultExportNames (String) + isisfish.config.main.defaultExportNames.description + + +#. defaultMapFile (String) <defaultValue:maps/vmap_area_thin> + isisfish.config.main.defaultMapFile.description + + +#. defaultResultNames (String) + isisfish.config.main.defaultResultNames.description + + +#. defaultSimulator (String) <defaultValue:DefaultSimulator.java> + isisfish.config.main.defaultSimulator.description + + +#. defaultTagValue (String) + isisfish.config.main.defaultTagValue.description + + +#. encoding (String) <defaultValue:UTF-8> + encoding used on system + + +#. javadocURL (URL) <defaultValue:http://isis-fish.labs.libre-entreprise.org/apidocs/> + isisfish.config.main.javadocURL.description + + +#. localSimulator (Boolean) <defaultValue:true> + isisfish.config.main.localSimulator.description + + +#. locale (Locale) <defaultValue:en_GB> + user locale + + +#. login (String) <defaultValue:anonymous> + isisfish.config.main.login.description + + +#. organisationName (String) <defaultValue:Ifremer - Codelutin> + isisfish.config.main.organisationName.description + + +#. organisationURL (URL) <defaultValue:http://codelutin.com> + isisfish.config.main.organisationURL.description + + +#. password (String) <defaultValue:guest> + isisfish.config.main.password.description + + +#. projectName (String) <defaultValue:Isis-Fish> + name of project + + +#. projectURL (URL) <defaultValue:http://isis-fish.labs.libre-entreprise.org> + isisfish.config.main.projectURL.description + + +#. regionMap (String) <defaultValue:maps> + isisfish.config.main.regionMap.description + + +#. resultExport (String) <defaultValue:resultExports> + isisfish.config.main.resultExport.description + + +#. simulationInformationFilename (String) <defaultValue:information> + isisfish.config.main.simulationInformationFilename.description + + +#. simulationParametersFilename (String) <defaultValue:parameters.properties> + isisfish.config.main.simulationParametersFilename.description + + +#. simulationReportMail (String) <defaultValue:isis-fish-bugreport at lists.labs.libre-entreprise.org> + isisfish.config.main.simulationReportMail.description + + +#. simulationResultXmlFilename (String) <defaultValue:isis-mexico-output.xml> + isisfish.config.main.simulationResultXmlFilename.description + + +#. simulationServer (URL) <defaultValue:http://simulateur.ifremer.fr:9090> + isisfish.config.main.simulationServer.description + + +#. simulationShowOnlyError (Boolean) <defaultValue:true> + isisfish.config.main.simulationShowOnlyError.description + + +#. simulationShowOnlyQueue (Boolean) <defaultValue:true> + isisfish.config.main.simulationShowOnlyQueue.description + + +#. smtpServer (String) <defaultValue:smtp> + isisfish.config.main.smtpServer.description + + +#. userMail (String) + isisfish.config.main.userMail.description + + +#. userName (String) + isisfish.config.main.userName.description + + +#. version (VersionNumber) <defaultValue:3.1.6> + isisfish.config.main.version.description + + +isisfish.config.vcs.description (vcs) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. databaseVersion (VersionNumber) <defaultValue:3.1.3> + isisfish.config.vcs.databaseVersion.description + + +#. hostName (String) <defaultValue:labs.libre-entreprise.org> + isisfish.config.vcs.hostName.description + + +#. keyFile (File) <defaultValue:.ssh/id_dsa> + isisfish.config.vcs.keyFile.description + + +#. localDatabasePath (File) <defaultValue:isis-database-3> + isisfish.config.vcs.localDatabasePath.description + + +#. noPassPhrase (Boolean) <defaultValue:true> + isisfish.config.vcs.noPassPhrase.description + + +#. passphrase (String) + isisfish.config.vcs.passphrase.description + + +#. remoteDatabase (String) + isisfish.config.vcs.remoteDatabase.description + + +#. remotePath (String) <defaultValue:svnroot/isis-fish-data> + isisfish.config.vcs.remotePath.description + + +#. type (VCSType) <defaultValue:SVN> + isisfish.config.vcs.type.description + + +#. typeRepo (VCSTypeRepo) <defaultValue:TAG> + isisfish.config.vcs.typeRepo.description + + +#. useSshConnexion (Boolean) <defaultValue:false> + isisfish.config.vcs.useSshConnexion.description + + +#. userName (String) <defaultValue:anonymous> + isisfish.config.vcs.userName.description + Added: branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/user/IsisUsage.rst =================================================================== --- branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/user/IsisUsage.rst (rev 0) +++ branches/maven2_multimodule/isis-fish/isis-fish-commandline/src/site/fr/rst/v3/user/IsisUsage.rst 2008-07-29 15:53:02 UTC (rev 1274) @@ -0,0 +1,373 @@ +=============================== +Guide d'utilisation de **Isis** +=============================== + +Les commandes de lancement de **Isis** +-------------------------------------- + +#. --add|-a <analyseplans|exports|formules=STRING|rules|scripts|simulators> <file:FILE+> [check|force] + ajoute un script d'un certain type (analyseplans|exports|formules=type|rules|scripts|simulators) à partir d'un fichier existant (file) (pour les formules il faut préciser son type) + + +#. --create-ssh-key|-c [force] [privateKeyFile:NEWFILE] + create key pair for vcs ssh access using vcs.ssh.keyFileproperty or the given (privateKeyFile), with a (force) argument to overwrite + + +#. --export|-o <fileZip:NEWFILE> <region|simulation> <name:STRING> [force] + export dans un nouveau fichier **fileZip** une region, ou une simulation en stipulant son nom, utilisez **force** pour écraser une archive existante. + + +#. --export-script|-os <fileZip:NEWFILE> <analyseplans|exports|formules=STRING|rules|scripts|simulators> [filter:STRING] [force] + export dans un nouveau fichier (fileZip) des scripts d'un certain type **analyseplan|export|formule|rule|script|simulator** (pour les formules il faut fournir un **type**) avec possibilité d'effectuer un filtre **filter**, utilisez **force** pour écraser une archive existante. + + +#. --import|-i <region|simulation|script> <fileZip:FILE> [force] + importe un fichier existant (fileZip) précédemmentexporté d'Isis (region, simulation ou script) + + +#. --importAndRenameRegion <regionFile:FILE> <name:STRING> [force] + import region from (regionFile) zip v3 file format and rename it (name) + + +#. [--list|-l]* <analyseplans|exports|formules|regions|rules|scripts|simulations|simulators> [filter:STRING] + affiche la liste d'un certain type d'objects Isis (analyseplans|exports|formules|regions|rules|scripts|simulations|simulators)avec possibilité d'appliquer un filtre (filter) + + +#. --mavenFile + Checkout maven file from server (pom.xml) + + +#. --simulate <simulationId:STRING> [simulationParameter=FILE] [simulation=FILE] [region=FILE] + lance une simulation à partir de son nom (simulation-id) et en spécifiant le fichier de paramètres de simulation existant (file) + + +#. --ssh-key-file|-k <privateKeyFile:FILE> + change private ssh key file path in vcs configuration (vcs.ssh.keyFile) + + +#. --update|-u <value:BOOLEAN> + update or not the local repository (value) + + +#. --vcs2 <add|remove> <file:FILE+> + ajoute ou supprime du répository local un ensemble de fichiers existants (file) + + +#. --vcs <update|commit|state> [file:FILE*] + effectue une opération de communication avec le serveur distant (update|commit|state) avec possibilité de spécifier les fichiers cibles existants (file) + + +#. [--show-config]* <all|h2|main|vcs> [normal|complete|tec] + Voir les détails d'une configuration + + +#. --edit-config + pour lancer l'UI d'édition de la configuration (main ou vcs) + + +#. --config-file <configFile:FILE> + le fichier de configuration utilisé + + +#. [--config]* <key:STRING> <value:STRING> [h2|main|vcs] + remplace la valeur d'une propriété de clef **key** de la configuration [vcs] par la valeur **value**. + + +#. --help|-h + Show this help + + +#. [--help-config]* <all|h2|main|vcs> + Show this help + + +#. --reset-config + Réinitialisation de la configuration. + + +#. --ui <flag:BOOLEAN> + launch or not user interface (value) + +Les configurations de **Isis** +------------------------------ + +La configuration h2 utilisée (h2) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. h2BytecodeProvider (String) <defaultValue:javassist> + TODO + + +#. h2CurrentSessionContextClass (String) <defaultValue:thread> + TODO + + +#. h2Dialect (String) <defaultValue:org.hibernate.dialect.H2Dialect> + TODO + + +#. h2Driver (String) <defaultValue:org.h2.Driver> + TODO + + +#. h2MemBytecodeProvider (String) <defaultValue:javassist> + TODO + + +#. h2MemDialect (String) <defaultValue:org.hibernate.dialect.H2Dialect> + TODO + + +#. h2MemDriver (String) <defaultValue:org.h2.Driver> + TODO + + +#. h2MemPass (String) <defaultValue:> + TODO + + +#. h2MemType (H2TypeEnum) <defaultValue:h2> + TODO + + +#. h2MemURL (String) <defaultValue:jdbc:h2:mem:{0};MODE=hsqldb;DEFAULT_LOCK_TIMEOUT=1000;DB_CLOSE_DELAY=0;LOCK_MODE=3;LOG=0;TRACE_LEVEL_FILE=0;TRACE_LEVEL_SYSTEM_OUT=1> + TODO + + +#. h2MemUser (String) <defaultValue:sa> + TODO + + +#. h2Pass (String) <defaultValue:> + TODO + + +#. h2Type (H2TypeEnum) <defaultValue:h2> + TODO + + +#. h2URL (String) <defaultValue:jdbc:h2:file:{0};FILE_LOCK=file;MODE=hsqldb;DEFAULT_LOCK_TIMEOUT=1000;DB_CLOSE_DELAY=0;LOCK_MODE=3;LOG=1;TRACE_LEVEL_FILE=0;TRACE_LEVEL_SYSTEM_OUT=1> + TODO + + +#. h2User (String) <defaultValue:sa> + TODO + + +#. migrationApplicationVersion (Integer) <defaultValue:1> + TODO + + +#. migrationCallBackhandlers (String) <defaultValue:fr.ifremer.isisfish.datastore.migration.SwingMigrationCallbackHandler> + TODO + + +#. migrationModelNames (String) <defaultValue:IsisFish> + TODO + + +#. migrationPreviousMappingDirectory (String) <defaultValue:oldmappings> + TODO + + +#. migrationTopiaService (String) <defaultValue:org.codelutin.topia.migration.TopiaMigrationServiceImpl> + TODO + + +#. storageData (String) <defaultValue:data> + le nom du répertoire où stocker les données d'un data storage (région, simulation) + + +#. updateschemaDatabase (Boolean) <defaultValue:false> + flag pour indiquer s'il faut ou non updater le schéma de la base + + +La configuration principale d'IsisFish (main) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. compileDirectory (File) <defaultValue:isis-build> + le répertoire où sont compilés les scripts + + +#. configFileName (File) <defaultValue:.isis-config-3> + le fichier de configuration à utiliser + + +#. copyright (String) <defaultValue:Copyright Ifremer Codelutin 1999 - 2008> + isisfish.config.main.copyright.description + + +#. dataBackupFilename (String) <defaultValue:data-backup.sql.gz> + le nom du fichier contenant la définition d'un data storage (région, simulation) + + +#. defaultBackupDirectory (File) <defaultValue:isis-backup> + le répertoire où stocker les backups des données + + +#. defaultExportDirectory (File) <defaultValue:isis-export> + le répertoire où exporter les résultats des simulations + + +#. defaultExportNames (String) + les noms des exports à effectuer après une simulation + + +#. defaultMapFile (String) <defaultValue:maps/vmap_area_thin> + TODO + + +#. defaultResultNames (String) + les noms des résultats à traiter après une simulation + + +#. defaultSimulator (String) <defaultValue:DefaultSimulator.java> + le nom du simulateur par défaut à utiliser lors d'une simulation + + +#. defaultTagValue (String) + TODO + + +#. encoding (String) <defaultValue:UTF-8> + l'encoding du système + + +#. javadocURL (URL) <defaultValue:http://isis-fish.labs.libre-entreprise.org/apidocs/> + l'url de la javadoc des scripts + + +#. localSimulator (Boolean) <defaultValue:true> + pour indiquer si les simulations sont à effectuer localement + + +#. locale (Locale) <defaultValue:en_GB> + la locale utilisateur + + +#. login (String) <defaultValue:anonymous> + le login pour se connecter au serveur de simulations distant + + +#. organisationName (String) <defaultValue:Ifremer - Codelutin> + isisfish.config.main.organisationName.description + + +#. organisationURL (URL) <defaultValue:http://codelutin.com> + isisfish.config.main.organisationURL.description + + +#. password (String) <defaultValue:guest> + le mot de passe pour se connecter au serveur de simulations distant + + +#. projectName (String) <defaultValue:Isis-Fish> + le nom du projet + + +#. projectURL (URL) <defaultValue:http://isis-fish.labs.libre-entreprise.org> + isisfish.config.main.projectURL.description + + +#. regionMap (String) <defaultValue:maps> + le nom du répertoire contenant les maps d'une région + + +#. resultExport (String) <defaultValue:resultExports> + TODO + + +#. simulationInformationFilename (String) <defaultValue:information> + le nom du fichier d'informations d'une simulation + + +#. simulationParametersFilename (String) <defaultValue:parameters.properties> + le nom du fichier de paramétrage d'une simulation + + +#. simulationReportMail (String) <defaultValue:isis-fish-bugreport at lists.labs.libre-entreprise.org> + Le courriel à utiliser pour envoyer les rapports de simulation + + +#. simulationResultXmlFilename (String) <defaultValue:isis-mexico-output.xml> + le nom du fichier d'export des résultats d'une simulation au format xml + + +#. simulationServer (URL) <defaultValue:http://simulateur.ifremer.fr:9090> + l'url du serveur de simulations distant + + +#. simulationShowOnlyError (Boolean) <defaultValue:true> + pour indiquer si l'on doit conserver dans l'UI des simulations terminées uniquement celles avec erreur + + +#. simulationShowOnlyQueue (Boolean) <defaultValue:true> + pour indiquer si l'on doit conserver dans l'UI des simulations terminées uniquement celles effectuées localement + + +#. smtpServer (String) <defaultValue:smtp> + le nom du serveur smpt à utiliser pour envoyer les courriels + + +#. userMail (String) + le courriel de l'utilisateur + + +#. userName (String) + le nom - prénom de l'utilisateur + + +#. version (VersionNumber) <defaultValue:3.1.6> + la version d'IsisFish + + +La configuration vcs d'IsisFish (vcs) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +#. databaseVersion (VersionNumber) <defaultValue:3.1.3> + la version de des données à utiliser + + +#. hostName (String) <defaultValue:labs.libre-entreprise.org> + le nom du serveur vcs à utiliser + + +#. keyFile (File) <defaultValue:.ssh/id_dsa> + le chemin complet du fichier de clef privée ssh2 à utiliser lors d'une connexion sécurisée + + +#. localDatabasePath (File) <defaultValue:isis-database-3> + isisfish.config.vcs.localDatabasePath.description + + +#. noPassPhrase (Boolean) <defaultValue:true> + pour indiquer si la clef privée ssh2 utilisée pour communiquer avec le serveur vcs contient est protégé par une passe-phrase + + +#. passphrase (String) + la passe-phrase utilisée pour protéger la clef privée ssh + + +#. remoteDatabase (String) + le nom du module de données sur le serveur vcs + + +#. remotePath (String) <defaultValue:svnroot/isis-fish-data> + le chemin jusqu'au parent du module de données sur le serveur vcs + + +#. type (VCSType) <defaultValue:SVN> + le type de communication vcs utilisé + + +#. typeRepo (VCSTypeRepo) <defaultValue:TAG> + le type de répository vcs utilisé + + +#. useSshConnexion (Boolean) <defaultValue:false> + pour indiquer si l'on utilise une connexion sécurisée pour communiquer avec le serveur vcs (ssh2) + + +#. userName (String) <defaultValue:anonymous> + le login de l'utilisateur sur le serveur vcs +