HomeProductsDownloadOrderSupportSearch
  
 
 Myriad Blog 1.3.0 Wednesday, Nov 6th, 2024 at 09:56pm 

Dev News Thursday, Oct 29th, 2009 at 05:16pm
Harmony 9.5, étape 5

 
Ca y est, Harmony Assistant a été recompilé entièrement, y compris le module gérant la synchronisation de la musique avec une vidéo. Ceci nous a demandé pas mal de circonvolutions, mais nous évite d'avoir à utiliser un système très compliqué alors que ce que nous pouvons nous procurer gratuitement semble combler amplement nos besoins.
 
La gamme de produits à destination des développeurs proposée par Microsoft est très confuse, et comprendre ce qu'offre chaque produit est aussi simple que de comparer les forfait pour les téléphones portables :  impossible de savoir clairement ce qui est dans le produit, et quelle est la différence avec le produit voisin.
 
Dans l'opération de migration vers ce nouveau compilateur, beaucoup de fichiers "source" ont été modifiés, et des corrections, mineures mais nombreuses, ont été appliquées. Nous avons donc recompilé les projets avec l'ancien compilateur afin de vérifier que nous n'avions pas introduit de nouvelles irrégularités, puis nous l'avons également fait sur Macintosh (avec XCode). Cela a nécessité également la recompilation de modules "satellites" d'Harmony, dont certains n'avaient pas été touchés depuis quelques années.
 
Ce soir, tout se compile et s'exécute. Une semaine après le début de l'opération, nous nous retrouvons donc prêts à travailler à nouveau.
by Olivier Guillion
 1 comment.

Dev News Wednesday, Oct 28th, 2009 at 05:11pm
Harmony 9.5, étape 4

 
Une version "release" d'Harmony Assistant a été générée avec le nouveau compilateur. Ce type de version n'est pas destiné à facilité le débogage, mais est optimisé pour la vitesse d'exécution. Harmony Assistant tel qu'il est proposé aux utilisateurs en téléchargement est en mode "release".
 
Nous avons donc pu réaliser des comparaisons entre le programme tel qu'il était généré par notre ancien compilateur et par le nouveau. Conclusion: aucune différence décelable. Par contre, l'opération nous a permis de trouver de nouvelles petites irrégularités, qui, cette fois-ci, pouvaient avoir une influence sur le fonctionnement de l'application. Rien de très grave cependant.
 
Du coté des traductions de la nouvelle version d'Harmony, ça y est, les ressources sont "à plat" il nous reste maiintenant à contacter nos gentils traducteurs pour voir s'ils ont un peu de temps à nous consacrer...
by Olivier Guillion
 1 comment.

Dev News Tuesday, Oct 27th, 2009 at 04:56pm
Harmony 9.5, étape 3

 
Nous avons pu effectuer les premiers essais d'Harmony Assistant recompilé avec Visual C++ express. Pour l'instant, il s'agit d'une version "debug", c'est-à-dire que le programme n'est pas optimisé pour aller vite, mais plutôt pour nous permettre de trouver facilement les erreurs. Une bonne dizaine d'irrégularités mineures ont ainsi été détectées et corrigées. A priori, aucune d'entre elles ne pouvait entraîner de crash ou de dysfonctionnement.
 
Pour l'instant, Myrscript ne fonctionne pas, nous en cherchons la cause.
 
Pour la partie "synchronisation vidéo" offerte avec Myrscript, cela promet d'être compliqué. Avec la version gratuite du compilateur de Microsoft, il ne semble pas prévu de pouvoir gérer ce genre de projets, qui utilisent DirectX et les objets fournis par le système. Il faudrait passer à une version pro, payante (environ 1000 euros!) qui apporte des fonctionnalités de gestion de projet et d'équipe de développement qui vont plus nous compliquer la vie qu'autre chose. Nous allons donc essayer de nous débrouiller avec les moyens du bord avant de considérer un investissement pareil.
 
 
Sinon, un utilisateur néerlandais nous à proposé de traduire Melody Player.
Nous avons donc implementé cette langue et nous lui avons soumis les textes à traduire.
Parallèlement à ceci nous continuons de mettre les ressources d'Harmony "à niveau" entre les différents langages pour pouvoir commencer à contacter les traducteurs.  
by Olivier Guillion

Dev News Friday, Oct 23rd, 2009 at 05:13pm
Nouveau compilateur

 
Rien de bien passionnant aujourd'hui. Nous avons continué notre prise en main du compilateur C Visual C/C++ Express. Cela ne va pas vite, mais on progresse.
 
Ce matin, première compilation réussie de notre librairie ACAM, plateforme de travail "maison" compatible PC/Mac. Dans la foulée, nous avons compilé une toute petite application qui utilise ACAM pour afficher une fenêtre avec du texte.  
 
Dans la catégorie des bonnes surprises, le compilateur Visual C n'est pas sensible aux mêmes irrégularités que notre ancien Codewarrior. Cela permet de découvrir des problèmes potentiels qui nous avaient échappés auparavant.
 
Par contre, la compilation reste très lente, et les petites différences entre les deux outils nous obligent à appliquer de menues corrections à pas mal de nos fichiers source.
 
Nous avons entamé une tentative de compilation d'une application plus conséquente, Harmony Assistant. Avec ses 622 fichiers source C, sans compter les petits projets annexes qui viennent s'y greffer, inutile de vous dire que cela prendra du temps pour aller au bout. L'après-midi entière a été passée à modifier nos fichiers C au fur et à mesure que les erreurs et avertissements de compilation nous étaient communiqués. Nous n'en sommes pour l'instant qu'aux 3/4.
 
Et lorsque tous les modules se compileront correctement, rien ne nous dit que l'application fonctionnera...
 
Bon week-end à tous!
by Olivier Guillion
 1 comment.

Technical Thursday, Oct 22nd, 2009 at 04:49pm
Programmeur recherche compilateur

 
Ce qui devait arriver est arrivé. Notre fidèle compilateur C pour Windows, Codewarrior, abandonné par l'éditeur depuis près de 4 ans, atteint maintenant ses limites : il n'est plus possible d'utiliser le débogueur sur Windows 7.
 
Vous me direz, cette nouvelle version de Windows ne sort qu'aujourd'hui dans les bacs, donc cela nous laisse une certaine marge. Mais avant de se retrouver coincés, nous avons décidé d'examiner (à nouveau) les divers remplaçants possibles.
 
Nous avons donc essayé les environnements de développement C pour Windows issus du monde du libre.  
 
Dans les années 90, nous travaillions avec le compilateur Watcom C. Il est abandonné depuis longtemps, mais ses programmeurs ont eu la bonne idée d'ouvrir les sources afin que le produit puisse continuer à évoluer. Ainsi est né OpenWatcom. Malheureusement, ici s'arrête la bonne nouvelle. A l'essai, le projet semble souffrir de grosses lacunes. Apparemment, les noms de fichiers comportant des espaces ne sont pas gérés. Nous n'avons pas osé pousser plus loin dans la bancalitude.
 
Très vite, nous avons éliminés un à un les projets open source, parfois basés sur le module de compilation gcc. Il y en a des tonnes, mais nous n'avons pas pu en trouver un pour rattraper l'autre. Dans le meilleur des cas, nous sommes parvenus à faire apparaître un "Hello world" en moins d'une demi-heure sans crash, mais la compilation d'un projet sérieux d'une centaine de modules semble largement hors de la portée de ces assemblages à la Frankenstein.
 
En désespoir de cause, nous sommes allés cherchés du coté de chez Microsoft, et avons installé Visual C/C++ Express 2008 (gratuit). Même s'il semble très en dessous de notre bon vieux Codewarrior pour ce qui est de l'ergonomie et de la rapidité de compilation, l'ensemble est utilisable. Nous allons essayer d'aller jusqu'au bout de la compilation d'un gros projet (comme Harmony Assistant) avant de nous décider définitivement. Cela risque de prendre un peu de temps. Le C est censé être portable, mais à condition de l'avoir prévu dès la première ligne écrite, c'est-à-dire il y a près de 15 ans. C'est plus ou moins ce qui a été fait, parfois plutôt plus, mais parfois plutôt moins.
by Olivier Guillion

Dev News Tuesday, Oct 20th, 2009 at 05:03pm
Harmony 9.5  Etape 1 et autres

 
Eh oui, ceci est l'étape 1 d'Harmony 9.5.
 
Bien que MUSL (Myriad User Score Library) soit une fonctionnalité de cette future version d'Harmony, et en soit déjà à l'étape 52 sur ce blog, nous nous sommes attachés aujourd'hui à des corrections de problèmes sans rapport avec MUSL.
 
Voici donc ce que nous avons fait :
 
- Lorsque plusieurs notes liées de longueur différentes étaient en accord, le positionnement des diverses notes liées était faux en mode gravure.
 
- Sur Windows, lors de la sélection d'un (très) grand nombre d'objets sur la partition, un crash pouvait survenir. Ce problème était la source d'un nombre important de rapports de crash qui nous avaient été envoyés.
 
- Correction d'un problème de tracé des graphisme de type "ligne"
 
- Dans PDFToMusic, correction d'un problème de localisation des pointés (confusion avec les têtes d'appogiatures)
by Olivier Guillion

Dev News Monday, Oct 19th, 2009 at 04:57pm
PDFtoMusic 1.2.1 Etape 7 et autres

 
Nous avons travaillé sur pas mal de choses différentes aujourd'hui:
 
- Sur PDFtoMusic, les tiges d'appoggiatures étaient parfois mal reconnues. Cela a été corrigé.
 
- La nouvelle application Wordreference sur iPhone commence à fonctionner, en tout cas dans l'émulateur. Il faudrait maintenant commencer les tests sur le vrai périphérique, mais la gestion des droits pour les développeurs est un vrai casse-tête. Lancer sur son propre iPhone une application qu'on vient juste de développer devient plus compliqué que de programmer l'application elle-même.
 
- Nous avons de plus en plus de demandes quant à la compatibilité de nos applications avec Windows 7. Apparemment, cela fonctionne, donc nous avons ajouté sur notre site Windows 7 à la liste des versions de Windows supportées.  
Par contre, un utilisateur a un crash (non lié à 7) qui ne nous fournit pas le rapport habituel mais donne celui de Windows. Ce type de rapport est inutilisable. Nous avons testé sur notre machine virtuelle sous W7RC, et cela fonctionne. Doit-on acheter une version de Windows 7, uniquement pour l'installer sur une machine virtuellle de test qui servira au mieux une fois par an?
 
En attendant, j'invite ceux qui sont sous Windows 7 et qui seraient disposés à effectuer quelques tests simples à me contacter.
 
Merci!
by Olivier Guillion
 4 comments.

Technical Friday, Oct 16th, 2009 at 05:08pm
Spam et liste grise

 
Dans la lutte contre le spam, on a connu le système de liste noire, qui bloquait les messages provenant de sources réputées douteuses et stockées dans une liste. Avec la multiplication des spam-bots, réseaux de PC zombies envoyant des tonnes de spam à l'insu de leur propriétaire, ce système est devenu complètement inefficace.
 
Il y a eu ensuite le système de liste blanche, qui ne laissait passer que les messages provenant d'expéditeurs connus et inscrits dans la liste. Mais si un nouveau contact désirait vous joindre, il était alors contraint de s'identifier en cliquant sur un lien pour que son message puisse vous parvenir. Contraignant, et netiquement questionnable (peut-on demander aux autres d'effectuer gratuitement le travail de tri et de sécurisation de sa propre boîte à lettres, en invoquant que c'est plus simple pour nous?)
 
Nous avons adopté, pour notre part, un filtrage de contenu (voir ce billet), procédé qui fonctionne bien et demande peu de maintenance.
 
Depuis plusieurs années, il trie consciencieusement plus de 2000 e-mails par jour, avec un taux de fiabilité supérieur à 99,96%
 
Sur ces 2000 messages quotidiens, 90 à 95% sont du spam. Cela fait une masse de données inutiles, qui surchargent le serveur de mail et notre classifieur. Et, malgré tout, plus nous recevons de messages, et plus le système de classification risque de commettre des erreurs.  
99,96% de réussite sur 2000 mails, cela fait tout de même  près d'une erreur par jour !
 
Notre hébergeur a donc mis en place, il y a maintenant un mois, un système de "liste grise".  En voici le principe.
 
Imaginez que vous nous envoyez un e-mail pour la première fois. Votre courrier part vers votre serveur de mail sortant (SMTP) appartenant généralement à votre Fournisseur d'Accès Internet (FAI). Ce serveur contacte le nôtre, et lui transmet votre message.
 
Au lieu de recevoir le message et d'en accuser bonne réception, notre serveur de mail répond "désolé, je suis temporairement indisponible".
 
Votre serveur, sans rien dire à personne, range donc votre message au chaud et réessaie de l'envoyer 5 à 15 minutes plus tard. Il est à ce moment-là accepté par notre serveur et transmis à notre boîte aux lettres.  
 
Une fois ce premier e-mail transmis avec succès, vous êtes marqués définitivement dans une liste blanche, et vos prochains messages passeront sans délai.
 
A quoi cela sert-il, me demanderez-vous, à part ralentir la transmission du premier message de chacun de nos contacts?
 
La plupart des spams sont envoyés depuis des PC zombies, par un malware qui contient une version très, très simple de serveur SMTP. Ces programmes se contentent généralement d'envoyer le plus rapidement possible un très grand nombre d'e-mails, sans même vérifier la réponse qui leur est retournée.  Il ne se rendent donc pas compte que leur envoi a été refusé, et ils n'essaient pas de nous renvoyer le spam. Ce dernier n'atteint donc jamais véritablement le serveur, et ne nous est jamais transmis.
 
Résultat? Une baisse spectaculaire du nombre de spams, réduit à environ un dizième de ce que nous recevions auparavant.  De 2000 mails par jour, nous sommes passés instantanément à moins de 300.  
 
Nous sommes donc assez content de ce système, jusqu'à ce qu'il se généralise et que les petits malins de spammeurs trouvent une parade...
by Olivier Guillion

Dev News Thursday, Oct 15th, 2009 at 04:57pm
PDFtoMusic 1.2.1 Etape 6 et autres

 
Nous avons continué à travailler sur PDFtoMusic, en corrigeant quelques crashs, et notamment en gérant certains types de fontes de caractères embarquées qui n'étaient pas décodées correctement et pouvaient faire "planter" l'application inopinément (fontes CID type 2).
 
Nous avons recalculé la base de données de la reconnaissance optique des caractères alphanumériques (lettres et chiffres) en l'alimentant avec les caractères qui étaient jusqu'ici mal reconnus dans les partitions qu'on nous avait envoyées.
 
Nous avons ensuite débusqué les irrégularités dans la gestion mémoire, en repérant les zones qui n'étaient pas correctement libérées par l'application.
 
En parallèle, nous avons commencé à travailler sur une nouvelle version de l'application WordReference pour l'iPhone.
by Olivier Guillion

Dev News Wednesday, Oct 14th, 2009 at 05:28pm
PDFtoMusic 1.2.1 Etape 5

 
Chose promise, chose due : une version beta (1.2.1 Beta 2) de PDFtoMusic Pro vient d'être mise à la disposition des personnes intéressées.
 
L'annonce est ici.
 
En dernière minute, nous avons corrigé sur la version en ligne de commande quelques problèmes de chemins d'accès et de répertoire de travail, et avons ajouté une option "verbeuse" qui donne des information sur les tâches effectuées par PDFtoMusic pendant le traitement du PDF.
 
Enfin, nous avons essayé cette version en ligne de commande avec les synthèses vocales que nous possédons, soit VoiceOver sur Macintosh et JAWS sur Windows.
 
Le résultat est souvent un peu trop verbeux, et nous aurons donc encore quelques réglages à effectuer dans les prochaines beta.  Mais ce dont nous aurions le plus besoin, maintenant, c'est d'un ou plusieurs mal- ou non-voyants disposés à nous aider à peaufiner cette fonctionnalité.
by Olivier Guillion

Dev News Tuesday, Oct 13th, 2009 at 05:06pm
Myriad User Score Library et autre étape 52

 
Le script de MUSL a été modifié, pour corriger des problèmes de compteurs de visites, et de représentation de l'arborescence des fichiers dans certains cas.
 
- PDFtoMusic en ligne de commande a été finalisé sur PC. L'interruption de la tâche par l'utilisateur (Ctrl Break) est maintenant gérée. Une version beta devrait être disponible prochainement, afin de vous permettre de tester cette nouvelle façon d'utiliser le programme.
 
- Harmony/Melody, correction d'un crash dans la boîte de sélection du type de portée
 
- Harmony/Melody, correction d'un problème graphique dans les listes hiérarchiques.
 
- Harmony: lorsqu'on insérait un objet texte sur une portée fraîchement ajoutée à la partition, celui-ci n'apparaissait pas.
by Olivier Guillion

Dev News Thursday, Oct 8th, 2009 at 05:01pm
PDFtoMusic en ligne de commande - Etape 2

 
La gestion des accès à PDFtoMusic Pro au travers d'une ligne de commande, sans aucune interface graphique, a été portée sur PC.  
 
Parallèlement, la ligne de commande s'est vue dotée d'une option supplémentaire permettant de jouer la musique au lieu de l'exporter dans un fichier.
 
La syntaxe de la ligne de commande peut devenir assez complexe si on utilise beaucoup d'options, et elle nécessite d'entrer le chemin et nom complet du fichier PDF à traiter. Pas toujours aisé. Mais notre idée est de considérer PDFtoMusic comme un moteur de conversion, qui pourra ensuite être interfacé assez facilement.
 
Ainsi, pour les mal-voyants, on peut imaginer un programme assez simple, pouvant être écrit en n'importe quel langage de haut niveau et compatible avec les claviers brailles, les synthèses vocales, affichant l'interface en fort contraste et en gros caractères. En fonction des actions de l'utilisateur (choix du fichier PDF et des options de traitement), il appellerait PDFtoMusic Pro en ligne de commande, ce dernier réaliserant le traitement demandé.
 
Ce programme, nous ne l'écrirons probablement pas, mais laisserons plutôt des bénévoles intéressés le réaliser en collaboration avec les personnes demandeuses. Techniquement, la programmation de ce genre de chose devrait être à la portée de la plupart des étudiants en informatique.
by Olivier Guillion

Dev News Wednesday, Oct 7th, 2009 at 05:02pm
Myriad User Score Library étape 51

 
C'est à l'occasion des tests de la beta-version d'Harmony qu'on nous a fait remarquer que, dans la version Windows, les options de menu contextuel contenant des caractères non latins, par exemple des caractères grecs ou d'Europe de l'Est, s'affichaient mal.
 
Sur Maintosh, par contre, ces mêmes options apparaissaient correctement.
Nous avons donc recherché la différence entre les deux plate-formes, et nous sommes aperçus que les routines d'affichage des options de menus sur Windows dataient d'avant le passage en Unicode et n'avaient jamais été réécrites.
 
Ce type de menu est utilisé dans le menu contextuel de la portée, la liste des courbes, les options en clic droit sur une note, sur une partie de piste numérique sélectionnée, dans l'édition des instruments, etc, etc.
 
Nous avons donc maintenant deux solutions:
 
1- Réécrire ces fonctions pour conserver le même aspect mais permettre l'affichage de tous les caractères non-latins
 
2- Utiliser des panneaux de menu standards, c'est-à-dire sur fond blanc.
 
La première solution présente l'avantage, en conservant un aspect strictement identique de ne pas perturber ceux qui sont habitués aux menus actuels, mais doit être développée et testée
 
La deuxième ne nécessite aucun  travail de notre part, est plus standard, possède une meilleure adaptativité aux cas limites (ouverture en bord d'écran, etc) mais fait apparaître les options sur fond blanc et ne sépare pas les options en plusieurs colonnes de la même façon.
 
Nous allons tester cela et décider, à moins que nous ne le proposions dans la prochaine version beta afin que vous puissiez juger par vous-même.
by Olivier Guillion


Full view
Reduced view
Most recent first
Oldest first
All
Didier Guillion
Olivier Guillion
Sylvie Ricard
All
To be seen
Dev News
Technical
Memories
Mood
Myriad Life
30 previous days
Apr 2006
May 2006
Jun 2006
Jul 2006
Aug 2006
Sep 2006
Oct 2006
Nov 2006
Dec 2006
Jan 2007
Feb 2007
Mar 2007
Apr 2007
May 2007
Jun 2007
Jul 2007
Aug 2007
Sep 2007
Oct 2007
Nov 2007
Dec 2007
Jan 2008
Feb 2008
Mar 2008
Apr 2008
May 2008
Jun 2008
Jul 2008
Aug 2008
Sep 2008
Oct 2008
Nov 2008
Dec 2008
Jan 2009
Feb 2009
Mar 2009
Apr 2009
May 2009
Jun 2009
Jul 2009
Aug 2009
Sep 2009
Oct 2009
Nov 2009
Dec 2009
Jan 2010
Feb 2010
Mar 2010
Apr 2010
May 2010
Jun 2010
Jul 2010
Aug 2010
Sep 2010
Oct 2010
Nov 2010
Dec 2010
Jan 2011
Feb 2011
Mar 2011
Apr 2011
May 2011
Jun 2011
Jul 2011
Aug 2011
Sep 2011
Oct 2011
Nov 2011
Dec 2011
Jan 2012
Feb 2012
Mar 2012
Apr 2012
May 2012
Jun 2012
Jul 2012
Aug 2012
Sep 2012
Oct 2012
Nov 2012
Dec 2012
Jan 2013
Feb 2013
Mar 2013
Apr 2013
May 2013
Jun 2013
Jul 2013
Aug 2013
Sep 2013
Oct 2013
Nov 2013
Dec 2013
Jan 2014
Feb 2014
Mar 2014
Apr 2014
May 2014
Jun 2014
Jul 2014
Aug 2014
Sep 2014
Oct 2014
Nov 2014
Dec 2014
Jan 2015
Feb 2015
Mar 2015
Apr 2015
May 2015
Jun 2015
Jul 2015
Aug 2015
Sep 2015
Oct 2015
Nov 2015
Dec 2015
Jan 2016
Feb 2016
Mar 2016
Apr 2016
May 2016
Jun 2016
Jul 2016
Aug 2016
Sep 2016
Oct 2016
Nov 2016
Dec 2016
Jan 2017
Feb 2017
Mar 2017
Apr 2017
May 2017
Jun 2017
Jul 2017
Aug 2017
Sep 2017
Oct 2017
Nov 2017
Dec 2017
Jan 2018
Feb 2018
Mar 2018
Apr 2018
May 2018
Jun 2018
Jul 2018
Aug 2018
Sep 2018
Oct 2018
Nov 2018
Dec 2018
Jan 2019
Feb 2019
Mar 2019
Apr 2019
May 2019
Jun 2019
Jul 2019
Aug 2019
Sep 2019
Oct 2019
Nov 2019
Dec 2019
Jan 2020
Feb 2020
Mar 2020
Apr 2020
May 2020
Jun 2020
Jul 2020
Aug 2020
Sep 2020
Oct 2020
Nov 2020
Dec 2020
Jan 2021
Feb 2021
Mar 2021
Apr 2021
May 2021
Jun 2021
Jul 2021
Aug 2021
Sep 2021
Oct 2021
Nov 2021
Dec 2021
Jan 2022
Feb 2022
Mar 2022
Apr 2022
May 2022
Jun 2022
Jul 2022
Aug 2022
Sep 2022
Oct 2022
Nov 2022
Dec 2022
Jan 2023
Feb 2023
Mar 2023
Apr 2023
May 2023
Jun 2023
Jul 2023
Aug 2023
Sep 2023
Oct 2023
Nov 2023
Dec 2023
Jan 2024
Feb 2024
Mar 2024
Apr 2024
May 2024
Jun 2024
Jul 2024
Aug 2024
Sep 2024
Oct 2024
Nov 2024
Nov 6th, 2024 at 06:34pm 
Article from Olivier Guillion
Harmony Assistant 9.9.9 beta étape 42
Nov 6th, 2024 at 06:26pm 
Comment from Antoine Bautista
Bouton sup....
Nov 6th, 2024 at 06:26pm 
Comment from Antoine Bautista
Bouton sup....
Nov 6th, 2024 at 06:26pm 
Comment from Antoine Bautista
Bouton sup....
Nov 6th, 2024 at 06:26pm 
Comment from Antoine Bautista
Bouton sup....
Nov 5th, 2024 at 09:44am 
Comment from Olivier Guillion
Utilité
Nov 4th, 2024 at 09:37pm 
Comment from CRI-CRI
Gommage sélectif
Nov 4th, 2024 at 05:42pm 
Article from Olivier Guillion
Harmony Assistant 9.9.9 beta étape 41
Nov 4th, 2024 at 05:42pm 
Article from Olivier Guillion
Harmony Assistant 9.9.9 beta étape 41
Nov 4th, 2024 at 05:42pm 
Article from Olivier Guillion
Harmony Assistant 9.9.9 beta étape 41

Top of page
Legal information Cookies Last update:  (c) Myriad