Lecture de données informationnelles Polices/Fontes OTF, TTC & TTF

Programmation d'applications complexes
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Lecture de données informationnelles Polices/Fontes OTF, TTC & TTF

Message par boddhi »

Salut à tous,

Ci-dessous, un code qui récupère certaines données informationnelles des polices TTF (et collections TTC) et OTF telles que nom, version, famille, sous-famille, style, plages Unicode implémentées, etc. directement à partir des fichiers eux-mêmes.
Comme il répond à un besoin personnel spécifique, il ne récupère pas pour l'heure les données métriques.
Mais si d'aucuns sont intéressés, je pourrais ajouter cette fonctionnalité.

Comme tous mes codes, il n'a pas la prétention d'être parfait et totalement optimisé. Certains contrôles d'erreurs ont par ailleurs été volontairement shuntés. Je reste cependant à l'écoute de toute remarque constructive :wink:

Les formats OTF, TTC et TTF, comme beaucoup d'autres, présentent des variabilités dans leur exploitation mais je pense que mon code conviendra dans 99.99 % des cas. Je l'ai testé sur plus de 1000 polices sans rencontrer de souci.

Il est fonctionnel sous Windows et devrait l'être, mais sans certitude aucune, sous MacOS et Linux.

28/03/2024 : Testé sur plus de 180 000 fichiers de fontes OTF, TTC et TTF.

Nouveau code ici en raison de la limitation du nombre de caractères par message
Ici, un autre code qui permet de créer des images d'aperçu de fontes contenues dans un dossier et ses sous-dossiers.
 
Dernière modification par boddhi le jeu. 28/mars/2024 17:28, modifié 8 fois.
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Nouvelle version avec une amélioration et une légère optimisation à savoir une meilleure gestion des chaînes Unicode et une réduction des accès disque en privilégiant la manipulation des données en mémoire.
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par Kwai chang caine »

Bonjour Boddhi :D

J'ai essayé de tester ton code pour te dire si il marche chez moi :wink:
J'ai donc pris un fichier "arial.ttf" et copié dans "D:\arial.ttf", renseigné #FICHIERPOLICE="D:\arial.TTF" et j'obtiens rien en Debug avec v5.73 et 6.10
J'ai surement merdé quelque part :oops:
Fichier : arial.TTF
Copyright :
Famille :
Sous-famille :
Identifiant unique :
Nom complet :
Version :
Nom PostScript :
Marque déposée :
Vendeur :
Créateur :
Licence :
Sous-famille : Normal
-------------------------------------------------------------------------
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Salut KCC,
Kwai chang caine a écrit : mar. 16/janv./2024 19:27 J'ai surement merdé quelque part :oops:
Non, c'est mon code qui merde dans la partie qui choisit la langue à récupérer.
J'ai apporté une modification entre les versions 1 et 2 du code et je n'ai pas vu la conséquence qu'elle a eue.
Je m'en suis aperçu ce matin, indépendamment de ton message, en testant autre chose.
Pfff, il a fallu que tu choisisses l'un des rares fichiers qui posent problème ! 😠 :mrgreen: :wink:

Je vais travailler à corriger ça dès que possible. :wink:
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Nouvelle version avec une correction de plusieurs bogues affectant la lecture des données sur des versions TTF/OTF dépréciées.
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par Kwai chang caine »

boddhi a écrit : mer. 17/janv./2024 13:08 Pfff, il a fallu que tu choisisses l'un des rares fichiers qui posent problème ! 😠 :mrgreen: :wink:
Toute l'histoire de ma vie résumée en quelques mots :mrgreen:
J'ai coutume de dire sur les forums que si ça marche avec moi, ça marche pour tout le monde :lol:
Déjà le premier miracle c'est quand j'arrive à mettre tout ce qui faut et surtout où y faut :oops:

J'ai donc recommencé la même manip et cette fois c'est la déclaration des droits de l'homme 8O
Fichier : arial.ttf
Copyright : © 2017 The Monotype Corporation. All Rights Reserved.

Hebrew OpenType Layout logic copyright © 2003 & 2007, Ralph Hancock & John Hudson. This layout logic for Biblical Hebrew is open source software under the MIT License; see embedded license description for details.
Famille : Arial
Sous-famille : Normal
Identifiant unique : Monotype:Arial Regular (Microsoft)
Nom complet : Arial
Version : Version 7.00
Nom PostScript : ArialMT
Marque déposée : Arial is a trademark of The Monotype Corporation.
Vendeur : The Monotype Corporation
Créateur : Monotype Type Drawing Office - Robin Nicholas, Patricia Saunders 1982
Licence : Microsoft supplied font. You may use this font to create, display, and print content as permitted by the license terms or terms of use, of the Microsoft product, service, or content in which this font was included. You may only (i) embed this font in content as permitted by the embedding restrictions included in this font; and (ii) temporarily download this font to a printer or other output device to help print content. Any other use is prohibited.

The following license, based on the MIT license (http://en.wikipedia.org/wiki/MIT_License), applies to the OpenType Layout logic for Biblical Hebrew “Layout Logic” as jointly developed by Ralph Hancock and John Hudson.

Permission is hereby granted, free of charge, to any person obtaining a copy of the OpenType Layout logic for Biblical Hebrew and associated documentation files (the “Layout Logic Software”), to deal in the Layout Logic Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Layout Logic Software, and to permit persons to whom the Layout Logic Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Layout Logic Software.

THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-------------------------------------------------------------------------
Je savais même pas que y'avait autant d'infos sur une fonte 8O
Ca peut être super utile, merci beaucoup de ta correction et surtout du partage d'un aussi joli code 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Kwai chang caine a écrit : J'ai coutume de dire sur les forums que si ça marche avec moi, ça marche pour tout le monde :lol:
En tout cas, merci de participer aux tests de débogage :wink:
Je savais même pas que y'avait autant d'infos sur une fonte 8O
Ça dépend surtout de l'ego du créateur ! :mrgreen:
Certaines ne contiennent que quelques données, à peine plus que celles obligatoires.
Ca peut être super utile, merci beaucoup de ta correction et surtout du partage d'un aussi joli code 8)
: Ne prends pas le code comme totalement définitif, j'ai encore qq modifs à effectuer :wink:

Ce code me sert dans un petit outil que je suis en train de créer qui me permettra de visualiser toutes les polices système (C:\Windows\Fonts) ou d'autres situées dans des dossiers locaux.
Je ne suis pas un pro des API mais je ne crois pas dire de conneries (taux de fiabilité : 50% :mrgreen:) en affirmant que les seules existantes ne recensent et "travaillent" que sur les polices installées d'où mon besoin de récupérer les infos à la source, soit directement dans les fichiers.

Je posterai probablement le code de mon outil quand il sera terminé (mais alors quand ???? :mrgreen: )
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Nouvelle version avec une légère amélioration de la prise en charge de l'Unicode sur les versions OTF/TTF dépréciées.

Prochain objectif : Tenter de caractériser, si possible, plus finement le(s) style(s) (Normal, Gras, Italique, Fin, Condensé, etc.).
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Nouvelle version avec récupération des données de style.

Code déplacé ici
 
 
Dernière modification par boddhi le dim. 25/févr./2024 14:44, modifié 2 fois.
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par Kwai chang caine »

Ca marche toujours, pour
C:\Windows\Fonts\arial.ttf
il me semble que j'ai ces lignes en plus à la fin :wink:
Graisse : Normal
Chasse : Medium (Normal)
Style : Normal
ID vendeur : TMC
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Salut KCC,
Kwai chang caine a écrit : il me semble que j'ai ces lignes en plus à la fin :wink:
Tu as l'oeil :wink: allez, j'suis pas radin, je montre les deux 8O :D

Plus sérieusement, essaie avec arialbi.ttf et constate les résultats de ces nouvelles données.

• Graisse : Correspond au taux de "gras", du plus léger (Thin) au plus lourd (Black)
• Chasse : Correspond plus ou moins à la "largeur du trait", du plus fin (Ultra-condensed) au plus large (Ultra-extended)
• Style : Correspond aux attributs de la fonte; Gras, italique, souligné, barré, contour, etc: En testant cette donnée, on peut affiner les attributs utilisables avec LoadFont()

Code : Tout sélectionner

Style.u=35 ; Exemple de valeur récupérée par le code (Variable DonneesPolice\Style)
StyleFonte.u=0

If Style&1     :StyleFonte=#PB_Font_Italic      :EndIf  ; Italique
If Style>>1&1  :StyleFonte|#PB_Font_Underline   :EndIf  ; Souligné
If Style>>4&1  :StyleFonte|#PB_Font_StrikeOut   :EndIf  ; Barré
If Style>>5&1  :StyleFonte|#PB_Font_Bold        :EndIf  ; Gras

Debug StyleFonte
LoadFont(0,"Arial",12,StyleFonte)
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par Kwai chang caine »

Ca marche aussi avec "arialbi.ttf" :wink:
Graisse : Gras
Chasse : Medium (Normal)
Style : Italique Gras
ID vendeur : TMC
Encore merci pour ce code 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

Correction d'un bug impactant, en mode IncludeFile, la bonne affectation de certaines données (IDs comprises entre 5 et 14)
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

En complément du code ici, un autre code, en deux parties, qui permet de créer des images d'aperçus de fontes.
Pour qu'il soit fonctionnel, vous devez inclure le précédent code sous forme d'include.
Le source est fourni avec une démonstration pour une seule fonte créée ad hoc.
La procédure principale est récursive.
Les diverses couleurs utilisées peuvent être aisément modifiées via des constantes.

Image

Partie 1 :

Code : Tout sélectionner

EnableExplicit

; ╔═════════════════════════════════════════════════════════════════════════════╗
; ║ STRUCTURES - ENUMERATIONS - CONSTANTES - MACROS - MAPS - VARIABLES GLOBALES ║
; ╚═════════════════════════════════════════════════════════════════════════════╝
;{ ════ PLUGINS                   ════
;- ════ PLUGINS                   ════
UsePNGImageEncoder()
;}
;{ ════ ENUMERATIONS              ════
;- ════ ENUMERATIONS              ════
Enumeration Fontes
  #FONTESYSTEME
  #FONTESYSTEMEGRAS
  #FONTETEST
EndEnumeration
;}
;{ ════ CONSTANTES                ════
;- ════ CONSTANTES                ════
#COUL_TEXTETITRE=#White
#COUL_FONDTEXTETITRE=#Red
#COUL_TEXTELIGNE=#White
#COUL_FONDTEXTELIGNE=10395294 ; Gris souris
#COUL_TEXTEEXEMPLE=#Black
#COUL_FONDTEXTEEXEMPLE=#White
;}
;{ ════ TABLEAUX                  ════
;- ════ TABLEAUX                  ════
Global Dim LignesTextes.s(10) ;{
LignesTextes(1)="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
LignesTextes(2)=LCase(LignesTextes(1))
LignesTextes(3)="ÀÂÄÇÉÈÊËÎÏÑÔÖÙÛÜÆŒ"
LignesTextes(4)=LCase(LignesTextes(3))
LignesTextes(5)="0123456789 +-*/=%"
LignesTextes(6)=".,;:?! '|"+Chr(34)+" /\<>(){}[] &@€$£"
;}
;}
;
; ╔═════════════════════════════════════════╗
; ║ DECLARATIONS - FICHIERS INCLUS - IMAGES ║
; ╚═════════════════════════════════════════╝
;{ ════ FICHIERS INCLUS           ════
;- ════ FICHIERS INCLUS           ════
#FICHIERINCLUDE=""
CompilerIf #FICHIERINCLUDE=""
  CompilerError "La valeur de la constante #FICHIERINCLUDE n'est pas valide !"
  End
CompilerEndIf
XIncludeFile #FICHIERINCLUDE
;}
;-══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
; ╔════════════╗
; ║ PROCEDURES ║
; ╚════════════╝
; ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
;-════════ Fonctions
; ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Procedure.u Fc_Max_L(ArgNombre1.l,ArgNombre2.l)
  If ArgNombre1<ArgNombre2:ProcedureReturn ArgNombre1:Else:ProcedureReturn ArgNombre2:EndIf
EndProcedure
Procedure.u Fc_Max_L(ArgNombre1.l,ArgNombre2.l)
  If ArgNombre1>ArgNombre2:ProcedureReturn ArgNombre1:Else:ProcedureReturn ArgNombre2:EndIf
EndProcedure
Procedure.s Fc_Suppression_MotsCle(ArgNomfichier.s)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-bold","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-outline","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-italic","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-regular","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-sans","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-PERSONALUSEONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-DEMO","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-TRIAL","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"_PERSONAL_USE_ONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"-PERSONAL_USE_ONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"(personal use only)","",#PB_String_NoCase)

  ArgNomfichier=ReplaceString(ArgNomfichier,"- bold","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- outline","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- italic","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- regular","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- sans","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- PERSONALUSEONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- DEMO","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- TRIAL","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"_ PERSONAL_USE_ONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"- PERSONAL_USE_ONLY","",#PB_String_NoCase)

  ArgNomfichier=ReplaceString(ArgNomfichier," bold","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," outline","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," italic","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," regular","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," sans","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," PERSONALUSEONLY","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," DEMO","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," TRIAL","-Demo",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier," PERSONAL_USE_ONLY","",#PB_String_NoCase)
 
  ArgNomfichier=ReplaceString(ArgNomfichier,"bold","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"outline","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"italic","",#PB_String_NoCase)
  ArgNomfichier=ReplaceString(ArgNomfichier,"regular","",#PB_String_NoCase)
  ProcedureReturn ArgNomfichier
EndProcedure
; ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
;-════════ PROCEDURES PRINCIPALES
; ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Procedure   Pc_Creation_ApercusFontes(ArgNomDossier.s)
  ; Création d'images de fontes
  Protected.DONNEESPOLICE DonneesFonte
  Protected.q NoDossier
  Protected.l LargeurImage
  Protected.u Style,LargeurTexte,HauteurTexte,HauteurImage
  Protected.a Compteur
  Protected.s NomFichierZIP,ExtensionFichierZIP,DossierCible,FichierFonte,StyleInt,NomImage,DescriptionFonte
  Protected Dim HauteursTextes.a(1)
  
  If Right(ArgNomDossier,1)<>"\":ArgNomDossier+"\":EndIf
  NoDossier=ExamineDirectory(#PB_Any,ArgNomDossier,"*.*")
  If NoDossier
    While NextDirectoryEntry(NoDossier)
      If DirectoryEntryType(NoDossier)=#PB_DirectoryEntry_File
        NomFichierZIP=GetFilePart(DirectoryEntryName(NoDossier),#PB_FileSystem_NoExtension)
        ExtensionFichierZIP=LCase(GetExtensionPart(DirectoryEntryName(NoDossier)))
        If ExtensionFichierZIP="otf" Or ExtensionFichierZIP="ttf"
          Debug "Traitement du fichier : '"+DirectoryEntryName(NoDossier)+"'"
          ; ═══════════════════
          ; Renommage extension
          ; ═══════════════════
          FichierFonte=ArgNomDossier+NomFichierZIP+"."+ExtensionFichierZIP
          If GetExtensionPart(DirectoryEntryName(NoDossier))<>ExtensionFichierZIP
            RenameFile(ArgNomDossier+DirectoryEntryName(NoDossier),FichierFonte)
          EndIf
          ; ═════════════════════
          ; Lecture données fonte
          ; ═════════════════════
          If Fc_Lecture_DonneesPolice(FichierFonte,@DonneesFonte)
            Debug "  Lecture données fonte : OK"
            StyleInt=ReplaceString(DonneesFonte\StyleInt," ","-")
          Else
            Debug "  Échec Lecture données fonte !"
          EndIf
          NomImage=NomFichierZIP+".png"
          If RegisterFontFile(FichierFonte)
            If DonneesFonte\Style&1:Style=#PB_Font_Italic:EndIf        ; Italique
            If DonneesFonte\Style>>1&1:Style|#PB_Font_Underline:EndIf  ; Souligné
            If DonneesFonte\Style>>4&1:Style|#PB_Font_StrikeOut:EndIf  ; Barré
            If DonneesFonte\Style>>5&1:Style|#PB_Font_Bold:EndIf       ; Gras
            If LoadFont(#FONTETEST,DonneesFonte\Famille,28,Style)
              ; ═══════════════════════════════
              ; Calcul Largeur et hauteur image
              ; ═══════════════════════════════
              LargeurImage=0:HauteurImage=0
              CreateImage(0,1,1)
              StartDrawing(ImageOutput(0))
              DrawingFont(FontID(#FONTESYSTEMEGRAS))
              DescriptionFonte=DonneesFonte\Famille+" "+DonneesFonte\SousFamille+" ("+Fc_Suppression_MotsCle(NomFichierZIP+"."+ExtensionFichierZIP)+")"
              If DonneesFonte\Version
                DescriptionFonte+" "+Chr(9679)+" "+DonneesFonte\Version
              EndIf 
              LargeurImage=TextWidth(DescriptionFonte)
              HauteursTextes(0)=TextHeight(DescriptionFonte)
              DrawingFont(FontID(#FONTETEST))
              HauteursTextes(1)=TextHeight(LignesTextes(1))
              HauteurImage=HauteursTextes(0)*7+8+6*4+(HauteursTextes(1)+8)*6
              For Compteur=1 To 6
                LargeurImage=Fc_Max_L(TextWidth(LignesTextes(Compteur)),LargeurImage)
              Next
              LargeurImage=Fc_Min_L(LargeurImage+18,8192)
              StopDrawing()
              FreeImage(0)
              ; ══════════════
              ; Création image
              ; ══════════════
              CreateImage(0,LargeurImage,HauteurImage,32,#COUL_FONDTEXTEEXEMPLE)
              StartDrawing(ImageOutput(0))
              DrawingMode(#PB_2DDrawing_Transparent)
              Box(0,0,LargeurImage,HauteursTextes(0)+8,#COUL_FONDTEXTETITRE)
              DrawingFont(FontID(#FONTESYSTEMEGRAS))
              DrawText(10,4,DescriptionFonte,#COUL_TEXTETITRE)
              HauteurTexte=HauteursTextes(0)+8
              For Compteur=1 To 6
                DrawingFont(FontID(#FONTESYSTEME))
                Box(0,HauteurTexte,LargeurImage,HauteursTextes(0)+4,#COUL_FONDTEXTELIGNE)
                DrawText(10,HauteurTexte+2,LignesTextes(Compteur),#COUL_TEXTELIGNE)
                HauteurTexte+HauteursTextes(0)+4
                DrawingFont(FontID(#FONTETEST))
                DrawText(10,HauteurTexte+4,LignesTextes(Compteur),#COUL_TEXTEEXEMPLE)
                HauteurTexte+HauteursTextes(1)+8
              Next
              StopDrawing()
              If SaveImage(0,ArgNomDossier+NomImage,#PB_ImagePlugin_PNG)
                Debug "  Sauvegarde aperçu fonte : OK"
              Else
                Debug "  Échec sauvegarde aperçu fonte !"
              EndIf
              FreeImage(0)
              FreeFont(#FONTETEST)
            Else
              Debug "  Échec chargement fonte !"
            EndIf
          EndIf
          ClearStructure(@DonneesFonte,DONNEESPOLICE)
        EndIf
      ElseIf DirectoryEntryType(NoDossier)=#PB_DirectoryEntry_Directory And DirectoryEntryName(NoDossier)<>"." And DirectoryEntryName(NoDossier)<>".."
        Pc_Creation_ApercusFontes(ArgNomDossier+DirectoryEntryName(NoDossier)+"\")
      EndIf
    Wend
    FinishDirectory(NoDossier)
  EndIf
EndProcedure

LoadFont(#FONTESYSTEME,"Segoe UI",12)
LoadFont(#FONTESYSTEMEGRAS,"Segoe UI",12,#PB_Font_Bold)
;
;
Dernière modification par boddhi le mar. 12/mars/2024 19:09, modifié 3 fois.
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Lecture de données informationnelles Polices/Fontes OTF & TTF

Message par boddhi »

 
Partie 2 (Code de démonstration)

Code : Tout sélectionner

CompilerIf #PB_Compiler_IsMainFile
  
Global.s Dossier=GetTemporaryDirectory()+"TempApercuFonte\"
Procedure Rebuilt_FontFile_From_DataSection()
  Protected i
  Protected DATAQuad.q
  
  If CreateDirectory(Dossier) Or FileSize(Dossier)=-2
    ; Create the font file...
    CreateFile(0, Dossier + "ascii.ttf")
    ; ... from the data section datas.
    Restore ASCII_ttf_start
    For i=1 To (?ASCII_ttf_end-?ASCII_ttf_start)/8 ; Number of quads inside the data section
      Read.q DATAQuad
      WriteQuad(0, DATAQuad)
    Next i
    CloseFile(0)
  EndIf
EndProcedure
; Rebuilt the font file from the data section if necessary.
If FileSize(Dossier + "ascii.ttf") = -1
  Rebuilt_FontFile_From_DataSection()
EndIf
Pc_Creation_ApercusFontes(Dossier)
RunProgram(Dossier+"ascii.png")
  
DataSection ;{
  ASCII_ttf_start:
  ; size : 21136 bytes
  Data.q $80000B0000000100,$322F534F30000300,$38010000B2E5E687,$70616D6356000000,$9803000042E33211
  Data.q $7073616742010000,$7852000014000500,$66796C6718000000,$E00600005C12DCE1,$64616568CE490000
  Data.q $BC000000A189EF63,$6165686836000000,$F40000002503240B,$78746D6824000000,$90010000774D484E
  Data.q $61636F6C06020000,$DC0400006C766163,$7078616D04020000,$1801000079002001,$656D616E20000000
  Data.q $B05000004EFC2DC5,$74736F70A6010000,$58520000670036FF,$0000010020000000,$098BBC7B00400000
  Data.q $00080B00F53C0F5F,$0000000000000000,$0000000000000000,$5006D20450FE0000,$000001000C000000
  Data.q $0000010000000000,$D204000050FE5006,$0100D20400000000,$0000000000000000,$0200000000000000
  Data.q $7800010100000100,$0100000000001E00,$0000000000000000,$0000000000000000,$04009001D2040100
  Data.q $000033059A050800,$000033059A05A300,$090843026600D501,$0204050409060B02,$0000000000000402
  Data.q $0000200000000018,$40004F4E4F4D0000,$50FE5006FFF00000,$0080B0015006A700,$0000000000000000
  Data.q $0000D2040000D204,$190019003E003E00,$0000410119001900,$7B00060000003E00,$38003D0017005800
  Data.q $7D000F0141013800,$410141014A00D900,$5600560056004101,$0000380038005600,$D8003400F700ED01
  Data.q $5901D50118000000,$D5015600A4009400,$6F004B00D501D200,$6F00EA00A800B900,$A000C900A2000E01
  Data.q $5600D501D5019500,$4A00A40056005600,$82006600B9000C00,$94004D00F700D800,$DE00AA00C500AD00
  Data.q $E4003E0094005E00,$1900A400B8003E00,$0B0010000E009900,$4A00BC0163002000,$720100005600AD00
  Data.q $7F00A300AD008800,$B6007B0094008D00,$AD00D5009400AD00,$B3006900B6005D00,$8200BB0034016F00
  Data.q $5D000C003E00B000,$1F02EA0088005500,$660088005600D200,$880088008D00B000,$8D00A30088008800
  Data.q $AD00AD008D008D00,$D8000C000C00AD00,$6900690000003100,$5500B000B0006900,$FB00C50099003E00
  Data.q $8800270019003200,$B600B0006900AD00,$9400DE00ED009400,$0000000056005600,$00008C007500ED01
  Data.q $00001F0200000000,$0000000000000000,$000000008B010000,$1F02000000000000,$00001F0200000000
  Data.q $8B018B011F020000,$8B01000000008B01,$0000000000000000,$1F028B0100000000,$000000008B011F02
  Data.q $000000001F020000,$5D00000069020000,$30003800F700BF00,$69000C00B6003E00,$19007B0031007B00
  Data.q $5600560069006900,$0602560056005600,$880156005600B900,$0301000041014101,$000000004A002E01
  Data.q $0000010002000000,$0100030014000000,$060100001A010000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000,$0000000000000000
  Data.q $0000280004000000,$0200010004000600,$0000FFFFFFF0FF00,$0100FFFF00F00000,$0000000001000110
  Data.q $0000000000000000,$C600A9005E000000,$570140011401E300,$0B02D101A0017601,$F302A40273024002
  Data.q $600337030D03FF02,$1204E203D4037C03,$810465044A042E04,$D404C704BA049104,$39050205EC04D404
  Data.q $25061606CA057C05,$BB06A3066A064806,$FB06EB06DE06D106,$9607610739072407,$2D081208DA07B307
  Data.q $D708BB08A5086E08,$43091309FF08EB08,$030ADB09A8098D09,$7F0A510A3C0A250A,$E70ACD0AAD0A960A
  Data.q $5B0B2D0B150BF60A,$130CDD0BB50B7D0B,$7A0C5B0C460C250C,$DA0CC70CB10C990C,$1D0D110DFD0CEA0C
  Data.q $B60D900D660D2B0D,$6A0E300E0D0EDF0D,$DA0EC00E9E0E880E,$620F360F190FEA0E,$0410D40FB70F8B0F
  Data.q $7C105D1048102A10,$1411D210BC109B10,$AA118E116B112911,$911248121212E911,$B31376131B13D812
  Data.q $78145D142714EE13,$0D15D314AC149514,$D8159F157B152D15,$93166E1643160F16,$53172417F816BF16
  Data.q $34180618A5177B17,$EC18C51891187818,$B0198E1957192419,$3B1A001AF019E019,$C51AA41A821A6B1A
  Data.q $401C331CDF1B251B,$981C821C691C521C,$F91CE01CCC1CAC1C,$4A1D3B1D271D121D,$911D7E1D6C1D5A1D
  Data.q $E51DCC1DB41D9D1D,$5A1E3A1E1A1EFF1D,$D31EBA1E8E1E7B1E,$2F1F1A1F031FEA1E,$931F701F5A1F441F
  Data.q $E01FD31FC31FB41F,$15200820FA1FED1F,$C420A32094205720,$5F213B210D21DF20,$4D220E22DB21A921
  Data.q $1A23FB22CF229222,$86236C2352233423,$2724E723CE23AA23,$94247B2464244D24,$E724E724DA24B024
  Data.q $9404F4FF3E000500,$230017000B004A04,$220500003B002F00,$1500323300343500,$0034350032270014
  Data.q $3303001415002223,$23010E3337323316,$3634352622132622,$2221061415163233,$1516323336343526
  Data.q $01BBFEE669020614,$E6BBFE4501E6E645,$FEBABBF9FE0701BB,$D4D4344F9D0701F9,$92BA8888BA165034
  Data.q $0133332525333325,$333325243434243B,$FE4501E6E645010C,$070169BBFEE6E6BB,$BBBAF9FE0701BABB
  Data.q $B298D8D8A301F9FE,$33332525330E01B3,$3333252533332525,$3E00040000332525,$0B004A049504F4FF
  Data.q $00002F0023001700,$3233003435002205,$33011E0100141500,$2722230623373632,$2223263435363237
  Data.q $3536322116141506,$1614150622232634,$E64501BBFEE66902,$15C2FDBBFE4601E6,$D5344F16BA8887BB
  Data.q $24253333255834D4,$2434342485013434,$E6E645010C343425,$BBFEE6E6BBFE4501,$D8D898B2B3970C02
  Data.q $2525333325253377,$2525333325253333,$0000190001000033,$00000F00C805BA04,$3233363435002621
  Data.q $0014151632333617,$C385A3A5FEF56902,$BEA3FEA485C26665,$F2EAEAF2C5F16202,$190001009CFDF1C5
  Data.q $0B00C805B9040000,$010A030206010000,$B904121637123627,$E8D1DAD2A4A4D4D8,$F7FED5E402E89797
  Data.q $C7D607010701FAFE,$0100DEFEFBFC2101,$C805B90400001900,$2306132100002000,$1732333634352622
  Data.q $1516323336343526,$1415163233360714,$63D5011327222306,$68546D93A1769177,$546888A47877A588
  Data.q $0262769176A1936D,$85379B7378A5B950,$3785947BA9A97B94,$00B0FDB9A578739B,$BA04000019000100
  Data.q $132100001A00C805,$023F343526222306,$16021F1617013F36,$0113272223061415,$3C939A6D938B69D5
  Data.q $4090912020909041,$02698B936D9B933D,$4540A28972A2B912,$404599E13131E199,$00EEFDB9A1728AA2
  Data.q $9103220141010100,$220100000B007203,$1516323336343526,$7BADAD7B69020614,$7B7BAD2201ADAD7B
  Data.q $020000AD7B7BADAD,$5006D20450FE0000,$210100000F000300,$2634353632012111,$D204161415062223
  Data.q $AD7B97FDD2042EFB,$0850FEADAD7B7BAD,$ADAD7B7BADD2FA00,$3E00020000AD7B7B,$0B004A049404F4FF
  Data.q $3500220500001700,$0014150032330034,$2223263435363227,$FEE6690216141506,$FE4501E6E64501BB
  Data.q $FDB3B3FDFDB3E6BB,$4501E6E744010CFD,$FD7BBBFEE6E6BBFE,$00FDB3B3FDFDB3B3,$D20450FE00000300
  Data.q $1B000F0003005006,$3201211121110000,$1500222300343500,$3634352622370014,$D204061415163233
  Data.q $FE4501E669022EFB,$E64501BBFEE6E6BB,$06FDFDB3B3FDFDB3,$E74401A40100F850,$FEE7E6BBFE4501E6
  Data.q $B3FDFDB3B3FD7BBC,$000006000200FDB3,$20001400ED05D204,$0713252705010000,$222300141516010B
  Data.q $0117323300343500,$2634353632331614,$29F1FE6F03062223,$FEBBCE4F8F920902,$D42501E1FECACFDD
  Data.q $CB8D90CBF2FD5E4B,$914C1705CB8D92C9,$9FFE1D0128F3FD91,$CC2201DEFECEDFA5,$CD9235FE1D1E01CF
  Data.q $020000C9C9918ECB,$C805560400007B00,$3521000022001600,$3435022635333523,$0702141500323300
  Data.q $3632031523153315,$1415062223263435,$01EFB4F6F61E0216,$F7B4F02101CDCC21,$CB8E8FCBCB8F4AF7
  Data.q $B91601199C94C5CB,$FEB9CBE0FE2001CB,$CD8202C5949C19EA,$00CD908DC8C88D90,$4C04DBFF58000100
  Data.q $110100002000C805,$141516011F141533,$26012F3435362707,$2306071011272627,$0132333634352622
  Data.q $3E456BD946D963F1,$6363405A34164A58,$2D013C75AE5E4A8E,$8CA535A6831A9B04,$434E3D3D54348768
  Data.q $FFFE2DFD41412513,$0100875B3C4B6767,$ED057804D8FE1700,$0710110100001E00,$3336343526222306
  Data.q $0706141101111732,$3336343526222306,$89645F0F02111732,$CC02334076AC5F4D,$7BAC5D4D8B623826
  Data.q $FEFEC6FCE4033833,$0418855C3F4D6A66,$3B91960FFC590167,$5F0316825C3C4A69,$94047B003D000200
  Data.q $000033000B00D204,$2223263435363201,$2726351316141506,$3335232726372707,$3537361737273736
  Data.q $1607173717161533,$0717070623153317,$9166690215070627,$43511C9191666691,$10A8A8112C766877
  Data.q $519451437768762D,$A7A7102D76697643,$0151427769762C11,$66669191666691B0,$68762B12A8CBFE91
  Data.q $6976484C944F4676,$772B13A7A7132B77,$76464F944C487669,$010000A8122B7668,$A0049B0400003800
  Data.q $3801113300000200,$0100B0FDA0046304,$A0049B0400003800,$0401110100000200,$0260FBA0049DFB9B
  Data.q $D8FE410101000050,$00001700C8059103,$0611171635272601,$1517163337363507,$0706153736112726
  Data.q $85595985D13E5002,$595985D03F323FD0,$6670B8D8FE3ED185,$6F662762E6046128,$1AFB6227666FB9B9
  Data.q $040000B870662861,$C805C20300000F01,$13000F0009000500,$0B11331103010000,$3311031315333501
  Data.q $4001153335010B11,$C518F6F7C519C518,$01FD02A301F7C618,$DE5DFE03FDD8FE28,$FE2801FD02A301DE
  Data.q $00DEDE5DFE03FDD8,$E903D8FE7D000100,$110100000D00C805,$1121333637341124,$82FEFB0111231123
  Data.q $FEF77BD501EF5355,$549F4801560C04D8,$008BF9750610F953,$0304B9FED9000200,$00003C002A00ED05
  Data.q $3435363233163517,$3736343524012F26,$1517323336343526,$1F16141506222326,$1415160714150401
  Data.q $2634353601222306,$161415062726022F,$8764A3E8D916021F,$8E5638F7FE758069,$9174909F968FC5FB
  Data.q $F5A7933401825D43,$4B735C484C01A2B9,$324E6A5445170A2E,$6D454B666FB5FF0C,$6C6E7749BD863B40
  Data.q $4E603CA729C59A8C,$A192C699412E4936,$4870B002C394A17A,$640C0516263B6949,$0006192937654753
  Data.q $880471024A000100,$111300000300DB03,$0171023E044A1121,$410102000096FE6A,$1700440691035DFE
  Data.q $3527260500001B00,$3736350706111716,$3611272615171633,$1521350507061537,$85595A84D13E5002
  Data.q $5A5985D13E323ED1,$AD5002BFFE3ED184,$61E50461286770B8,$28676FB9B96F6728,$B8706728611BFB61
  Data.q $41010100009494F6,$0D00C8059103D8FE,$2726151716010000,$3736350706112311,$59945985D03F8202
  Data.q $666FB9C8053FD085,$2762EB0515FA6227,$4101010000B96F66,$0D00C8059103D8FE,$0615373611010000
  Data.q $1117163527262307,$3E323ED18559B302,$6115FAC8055985D1,$286670B8B8706628,$5600010000EB0561
  Data.q $0D0078037B042801,$1633272621130000,$2137362307061517,$B27A672067190356,$02E7FC67206779B3
  Data.q $C9473145CA8E509A,$280156000100508E,$00000D0078037B04,$3527262317162101,$7B04210706333736
  Data.q $B2B379672067E7FC,$060219036720677A,$8ECA453147C98E50,$2801560001000050,$0000050016037B04
  Data.q $0456231121352113,$01942801946FFC25,$280156000100005A,$0000170078037B04,$3527262317162101
  Data.q $2726210706333736,$3623070615171633,$79672067F3FD6F03,$0D026720677AB2B3,$6779B3B27A672067
  Data.q $3147C98E50060220,$45CA8E50508ECA45,$380001008EC94731,$0200A0049B040000,$FB9B040101290000
  Data.q $010000A00431029D,$A0049B0400003800,$3801211300000200,$60FBA004CEFD6304,$E4020000ED010200
  Data.q $000009000500C805,$35010B1133110301,$C519C5181E021533,$FE2801FD02A301F7,$00DEDE5DFE03FDD8
  Data.q $DB030C04F7000200,$0000070003002B06,$0333032103330301,$325A0132F7312801,$E1FD1F020C0431F7
  Data.q $34000200E1FD1F02,$1B00C805A9040000,$3723133300001F00,$0333132137231333,$0323073303331333
  Data.q $0323132303210733,$1DE670AA23133313,$986E03011DFB48EE,$EE1DE46E996DE86D,$6D996DFDFE1DFB48
  Data.q $C201E649E6946DE8,$47FEB90194250194,$94DBFE9447FEB901,$56023EFEC2013EFE,$85FFD80003002501
  Data.q $23001D0044062304,$2722350500002A00,$3435242711331635,$1517161533353736,$0614150417112726
  Data.q $012F343536111507,$02171415010E1103,$F7FE499AD5CDA247,$439E919B947B9CC2,$6F2D80ADA1C01201
  Data.q $67A94F7B7B7E5E4A,$0DCB95CFB2301902,$FD1148A238097C7C,$7B16D59DDCA128EF,$01205877B8260F01
  Data.q $5C6C537609B8011A,$D204DBFF00000500,$1B000F000300ED05,$0115000033002700,$3634352622130133
  Data.q $3227061415163233,$1506222326343536,$3634352622011614,$3227061415163233,$1506222326343536
  Data.q $99C4FB973B041614,$85AAAA8584AAAA84,$0255554545565645,$AAAA8584AAAA84B9,$5555454556564585
  Data.q $BF4703EEF9120625,$63BF9495BEBE9594,$856B6C85856C6B85,$95BFBF9594BF7BFC,$85856C6B8563BF94
  Data.q $1800030000856B6C,$1D00ED05D204DBFF,$2721000030002600,$3736343500222306,$1516323336343526
  Data.q $3327353613160514,$0603022517160702,$3536033233161415,$0314150622232634,$A4EFFED1DBA34AC2
  Data.q $C7FEAE8A91B559BB,$5EB115C6025DDB73,$82B6CD83EC4FFE68,$594E373847BE737E,$C350D39ECA09017E
  Data.q $E0B2DF7F9FB49077,$C48EFE4CE98BF6FE,$650A011F01CB6E70,$43A65A5203D296B8,$D50101005D415B55
  Data.q $03002B06FD02C203,$1F02032103010000,$6902C2034A28014A,$D8FE5901010097FD,$00000D002B063D04
  Data.q $1525001011002401,$3D04050010110004,$45019F0161FEBBFE,$05011A01E6FEFBFE,$0179010D0224D8FE
  Data.q $61FE3588240D0278,$003560FEB3FEB3FE,$7803D8FE94000100,$041300000D002B06,$0024350500101100
  Data.q $0146019425001011,$010501BBFE61FE9E,$242B06FAFEE7FE1A,$F3FD88FE87FEF3FD,$014E019F01358824
  Data.q $A400050035A0014C,$0500C8052E046B02,$1C0015000F000A00,$3435051725010000,$2703073603071707
  Data.q $1506053725271637,$0222232603330337,$E20AB8FE3D3201BF,$25E2A0A55E3FA6A0,$3F2631013DB8FE2F
  Data.q $69041B1B2325C625,$74F860350E44BC8B,$F874DDFE12122301,$7A36328BBC445437,$0100000DB3FE4D01
  Data.q $25047B0400005600,$3521112100000B00,$1121152111331121,$0195C80138FE1E02,$C80195C80138FEC8
  Data.q $01000038FE9538FE,$2801FD02BFFED501,$3F36350100000900,$D501101521112301,$BFFE28017B041166
  Data.q $FEB328012DA30E63,$1F02D2000100005A,$00000300B3020004,$022E03D215213513,$D50101000094941F
  Data.q $03002801FD020000,$D501112111210000,$0100D8FE28012801,$2B068804D8FE4B00,$0123010900000300
  Data.q $069803A568FC8804,$0200005307ADF82B,$ED056304DBFF6F00,$2205000013000B00,$1100323300101100
  Data.q $2021101120270010,$01EDFEE769021011,$E7EDFE1301E7E713,$0125D8FED8FE2801,$FEA50163016401A6
  Data.q $945AFE9CFE9DFE5B,$8AFD8CFD74027602,$94040000B9000100,$353300000900ED05,$1521112535051121
  Data.q $01500275FE8B01B9,$FAB97A597F04948B,$0000A800010094A7,$00001900ED05F703,$343536013F363533
  Data.q $3233363507222326,$0706010F06141516,$8DB859F27AA81521,$72F7CBB0B8C68F76,$ECAD5D022FE85488
  Data.q $AE688F77BAB759F0,$D84F7FCE75B5DD4E,$DBFFEA000100ADC5,$00002400EE051B04,$3435363233163537
  Data.q $3736323335012B26,$3507222326343536,$0405141516323336,$6CC9EA2223041411,$79833960B4C3A486
  Data.q $A7A3A8976C7E4F32,$EBFE3801F5FEDFC6,$9686A546AE0792EB,$77677B4E31218EA2,$6B7CF89FB339AD51
  Data.q $6F000200F2CDDDFE,$0A00C80556040000,$3521112100000D00,$0111231533113301,$690297FDD8021121
  Data.q $01C30184FDC5C5B9,$FE9457FC9703A68B,$010000A0021F0275,$C8050604DBFF0E01,$3316352500001600
  Data.q $1107222110353632,$1415002011211521,$7A66A90E01222300,$FDB60233254EFE9D,$D0ECFE30010601F0
  Data.q $4B0193BD42A90875,$F8FE80FEACC20204,$A2000200F4FECAE3,$1500EE056304DBFF,$2326150100002100
  Data.q $1512323336110222,$0010110222230014,$2634353632033221,$1204161415062223,$F2AECF83CCBB69B1
  Data.q $013C01FFF1CBFAFE,$7A79958B6EB57A07,$C0FE4DA9B6059C91,$FEE3C2F3FEBEDBFE,$016F016C018001DA
  Data.q $AEC7A194BA81FAB8,$C900010000CBAC91,$0B00C80545040000,$210113013E210000,$1901030007152135
  Data.q $033FFD3501C06A12,$01FCA03423FE307C,$DCFC50A6B9200253,$DBFFA000030052FE,$1F001400ED054E04
  Data.q $3435260100002A00,$1E05141516323336,$3526222304141501,$3233161415062510,$343536012F343536
  Data.q $0117141506222326,$FDFEC9B6C1E7CAB5,$01FFCDD2F0FE8CB3,$02E699717F9DBC7E,$2603C77965657BC1
  Data.q $9DE298A7CAA9C094,$01B6E3F1BA82BB6C,$65889F80AE9A580A,$6A6F5CA27AEA89A3,$9500020000788C59
  Data.q $1500ED055504DBFF,$3316353700002100,$3502222306111232,$0010111232330034,$1614150622132221
  Data.q $BAE6263435363233,$01F1AED083CCB962,$FBFEC5FEFEF1CB06,$927979968C6EAE75,$2401410149A90F9D
  Data.q $FE2601E3C10D01BE,$0548FE91FE94FE81,$AB91AEC6A293BA7E,$0000D501020000CB,$070003003E04FD02
  Data.q $1101112111010000,$D8FE2801D5011121,$D8FE280116032801,$0200D8FE2801EAFC,$3E04FD02BFFED501
  Data.q $350100000C000800,$0110152111233736,$7B0C6FD501112111,$BFFE2801D8FE2801,$5AFEB32801D10D63
  Data.q $0100D8FE28014704,$25047B0400005600,$1501092100000500,$2504DBFB7B040109,$13021202DA0226FD
  Data.q $02000094FE93FEA6,$22037B041C015600,$3513000007000300,$0456152135011521,$941C012504DBFB25
  Data.q $0100009494720194,$25047B0400005600,$3501091300000500,$02DBFB2504560109,$FDEDFD250426FDDA
  Data.q $02006D016C01A6EE,$ED053E040000A400,$352100001E000300,$013F363435031533,$2315072221343536
  Data.q $0F14150432333611,$F6A301011D010E01,$70AFFE90467866DE,$C00701F7D1CB9476,$1CA301DEDE445663
  Data.q $1ECF73773A64C183,$9CAA9EA83A2101AA,$020000475F824650,$EE05D204DBFF4A00,$062500002E002300
  Data.q $2021001011002223,$2302112115330119,$1732331234352622,$3312101100222326,$0622232635113732
  Data.q $B7C303013E371415,$19016701C2FEFD87,$61AC73F1FE7B8D01,$CBDD2649379FDB7A,$363FAA82C1F8E9FE
  Data.q $01462198395B826F,$FECF016A01430197,$A8FE4C017B70FD45,$FEE6203A01E2A4D0,$53ACFEF7FED8FE69
  Data.q $05FDBEDE29ADC302,$00000C000200FE03,$0A0007000305C504,$0323013301330000,$FA010C0321130321
  Data.q $7BB6FD79D1FA01C5,$FDFA0305EBD401B6,$6502D501BFFE4101,$58040000B9000300,$1F0016000E000305
  Data.q $1411202111330000,$010E071411040706,$2B26343520330323,$2634353632331101,$9BC2019E01B9012B
  Data.q $BEC1AE446965018B,$C3B25CDD9A8E0145,$D6FE030548CFF193,$5698F6FE4923A572,$FC4C6DDED8022539
  Data.q $010000927C6B5025,$22058304E1FF6600,$2023062500001500,$1517322100101100,$3300141500222326
  Data.q $CEFEAFC683043732,$C2AA2C0174018AFE,$E42201FFFEC7ACC6,$2B016F014728BB8A,$FE5BB53A78012F01
  Data.q $020048DEFEE4E2DC,$0305850400008200,$1133000012000900,$23010E0710112021,$2B26101136203327
  Data.q $578B800283018201,$D8EF1A016389D4FF,$E3FE98FD030598FC,$010801E0945F6FB0,$0000D8000100E70C
  Data.q $00000B0003056904,$1521112115211133,$FD6303D815211121,$05CC02C8FD380262,$943EFE947BFE9403
  Data.q $88040000F7000100,$1133000009000305,$1121152111211521,$FD630234FD9103F7,$FD9446FE9403059D
  Data.q $E1FF4D00010000DF,$0000190022056904,$1415002223261501,$2135231137323300,$0010110020230611
  Data.q $FEC7ACC659043221,$01F14F33E12201FF,$018BFED6FEB4C9B6,$5BB5E804AA2C0174,$010CDDFEE3E2DCFE
  Data.q $01720140ACFD9453,$01000078012F0128,$03053E0400009400,$1133113300000B00,$1121112311331121
  Data.q $E1FDC6C61F02C594,$FDFA3102CFFD0305,$AD000100C2FD3E02,$0B00030525040000,$3521112135330000
  Data.q $01AD152111211521,$01A7FE7803A7FE59,$25FC9494DB039459,$E1FFC50001000094,$000012000305A303
  Data.q $3536323316173537,$0706141121352111,$8D508942C5222306,$72412E810244FE71,$B9922D16A71173D4
  Data.q $48BEC326FD94AF02,$0000AA000100007F,$00000A000305B204,$0109330111331133,$C71902C5AA110123
  Data.q $05A9FDEC6902FAFD,$FDA3FD75028BFD03,$01000072FD8E025A,$030556040000DE00,$1133113300000500
  Data.q $0305B302C5DE1521,$5E000100009491FB,$0F00030573040000,$0133013311330000,$0123012311231133
  Data.q $01021A01ED5E1123,$FEA6DFFE02A1F715,$1603EAFC030502E0,$2703C2FC4D04FDFA,$000094000100CAFB
  Data.q $00000B0007053E04,$1133113301331133,$4D02BA9411230123,$070503AFFDB6A102,$AC03FDFAA1035BFC
  Data.q $E1FF3E00020054FC,$17000B0022059404,$0032330010130000,$1413002223001011,$2302343512323312
  Data.q $01FEFE2D013E0222,$D2D3FEFEFED3FE2D,$B3A6A6B4B4A6A6B3,$93FE6D0133018202,$6D0193FECCFECDFE
  Data.q $FC1101EFFEFC3401,$020000EFFE1101FB,$030585040000E400,$1133000013000B00,$2104141516173221
  Data.q $2634112033011923,$C25FDFA101E4012B,$90017B90EDFEC7FE,$F054280305C4B097,$18017B0219FEE6CA
  Data.q $BFFE3E0002006676,$1E0012002205D204,$2724071716250000,$3300101100222306,$1214010214110032
  Data.q $2223023435123233,$FFFE68D3A8570302,$2D01D6FEF01B32C4,$B31FFDA32D01FEFE,$12B3A6A6B4B4A6A6
  Data.q $740103C065AC3176,$93FE6D0134012C01,$FC2002BFFEDECCFE,$1101FBFC1101EFFE,$0000B8000200EFFE
  Data.q $17000E000305B304,$1617322111330000,$2301230107061415,$2634353632330119,$BA57E06701B8012B
  Data.q $B26BFEEFC6019D86,$030579BC8CBA9F68,$B8FD4DB386C34D25,$778CAB02EAFD1602,$E1FFA4000100526F
  Data.q $0000220022055D04,$1614152023261501,$222304141504021F,$3435363233043525,$363435012E012F26
  Data.q $F5FEA9D9F2033233,$E3FE1701787E8764,$92AD0601F9FEA6EF,$D5EB99C584A167AE,$5949B454ABE504AD
  Data.q $47D5B2EA62292C2F,$303B564A617376C3,$010000BEAD809A49,$0305B90400001900,$3521112100000700
  Data.q $13FE060211211521,$94946F0413FEA004,$E1FF9900010091FB,$0000120003053904,$3632331614113313
  Data.q $2106071411331135,$989081C599110222,$E7F1EAFE7939AC86,$D1B7B7CCF5FC0305,$01DF69F117FD0603
  Data.q $0E00010000120108,$06000305C3040000,$3301093301210000,$9A01D00EFE000201,$FC030503FEA8A301
  Data.q $010000FDFAFC0304,$0305C10400001000,$1333033300000F00,$0333133313331333,$9CA8BFCF03230323
  Data.q $D396A502B6BEB903,$D6FB0305B202B1D6,$FDFA1E04F1FC1B03,$0B0001000FFDF102,$0B000305C3040000
  Data.q $0109330109330000,$010B010923010933,$6F015B01E934FEF7,$85FEEAEC012EFEC0,$25FE76028D026DFE
  Data.q $0A0257FDA6FDDB01,$000020000100F6FD,$000008000305CB04,$0133010933011121,$7501E319FE070211
  Data.q $020D0201FEBB9801,$FD0AFD5002B0FDF6,$00006300010000F3,$0000090003056F04,$0115213521013533
  Data.q $030CFD2503631521,$DB03942C03DCFCD3,$0100009425FC9494,$2B062504D8FEBC01,$1521110100000700
  Data.q $6902BC0115211121,$5307D8FEBC0144FE,$4A00010094D5F994,$03002B068704D8FE,$E203013301090000
  Data.q $07D8FE9803A568FC,$AD00010000ADF853,$07002B061603D8FE,$1121352111010000,$BC0197FD16033521
  Data.q $0694ADF82B0644FE,$280156000100942B,$00000500C8057B04,$0256010923010913,$94FE93FEA6130212
  Data.q $2F0360FBA0042801,$6CFF00000100D1FC,$000003000000D204,$9494D20415213515,$7205720101000094
  Data.q $0000030050065F03,$FEA05F0321252301,$0200DE72050F01B3,$56049E04EDFF8800,$0625000028001F00
  Data.q $013B243435262223,$3635072223263435,$3316141115163233,$1103222306173732,$0332331614152023
  Data.q $F62C01C195B2B343,$CFB8D2B7AB76667A,$3363122B133A2AAB,$8156686BFE3B5292,$735DCEA982AA9683
  Data.q $39FEC9A44BA96062,$01160120760A4762,$AD000200604FDB12,$0E002B066304E7FF,$1133111700001800
  Data.q $2302101512323336,$3632331613072722,$8FC5AD0722231035,$317AAFCCFCD5B9D4,$93A7E58F82858931
  Data.q $E3FEE447FD37060C,$018794B2FEF2FEF6,$00D08001CEE5941B,$4F04E7FFA3000100,$0625000015005604
  Data.q $3221001011002023,$1415062223261517,$AEAF4F0437323316,$0E012F01CDFEE4FE,$BFD9CBB288C1AFAC
  Data.q $100128013C23B38F,$E045A5342C010B01,$7F00020043DFC5C3,$0E002B063504E7FF,$2306352100001800
  Data.q $1732331210350222,$0622232603113311,$9070033732331015,$C57AAFCCFCD5B8D4,$93A7E58F82848AC5
  Data.q $010E01F61E01E5CC,$2E03D5F96902944D,$0200D081FECFE494,$56044A04E7FF8D00,$0625000018001100
  Data.q $3233003411002023,$3732211221151112,$0406222310352101,$01D3FEE8FEABCD4A,$01161CFDD5E1DF21
  Data.q $F50C021BFDBE9F78,$0C012001442B9376,$3FE3FEF2FE4601FD,$26011CB9014C8FFE,$00009400010000AA
  Data.q $000015004406B104,$3634352135211121,$0622232615173233,$BC0111211521011D,$8FA0F2D42801D8FE
  Data.q $F9FD070279978E92,$9C2BC8E473949103,$006FFC9488907333,$36045CFE7B000200,$0000240019005704
  Data.q $0637112033163713,$3233121035022223,$0607061411333517,$0622232611012221,$B115D43233161415
  Data.q $DBBAEB7C093C0198,$7B4D38B99A9FCBFE,$818E85DB019AFAFE,$4BA695FEAF717E90,$01F01B01E1C42D01
  Data.q $D39BFC7C95470105,$96AB0125038352D5,$B6000100C1ABCAE0,$11002B0622040000,$3615113311330000
  Data.q $2634112301192033,$EA88C5B611072223,$06A2945D4FC53501,$FD91FEE4CC13FE2B,$3AFDD56B7FB10219
  Data.q $16030000AD000200,$0000090005002B06,$3503112135211121,$500275FE38021533,$05C2FB94AA03F7DE
  Data.q $9400020000F7F734,$0F002B067E035DFE,$3316351300001300,$1121352111353632,$1533350122230614
  Data.q $0244FE5D7E979A94,$FEF750018ED9C781,$948F03AC7F46A591,$F7F7D706E9FD05FC,$A4040000D5000100
  Data.q $113300000A002B06,$0121010933011133,$53FED5C801C5D511,$2B0600FEF6FE1A02,$ABFD17FE06020DFC
  Data.q $AD000100C8FD3802,$05002B0616030000,$1121352111210000,$970569025DFE5002,$5D00010000D5F994
  Data.q $1F00560476040000,$3336153311330000,$1516323336331732,$0722232634112311,$0622232634112311
  Data.q $2A93737FAD5D1107,$241AAD5C668C6807,$2B732A271AAD6D5E,$A695E4E4E4CC3E04,$FDEF40591303E5FC
  Data.q $FD66894B70EF0243,$0000B60001000045,$0000100056042204,$1920333615331133,$0722232634112301
  Data.q $C53501EA88C5B611,$E4CC3E04A2945D4F,$6B7FB10219FD91FE,$69000200003AFDD5,$0B0056046904E7FF
  Data.q $1100220500001700,$0010110032330010,$2223263435363227,$FEEF690216141506,$FE1101EFEE1201EF
  Data.q $A08E8EA0A08EEFEF,$080109012F0119A0,$F7FEF8FED1FE2F01,$DEDEC5C6DE94D1FE,$B300020000DEC6C5
  Data.q $0E005604690475FE,$1533111300001800,$2302101512323336,$3632331601192722,$8FC5B30722231035
  Data.q $897AAFCCFCD5B9D4,$75FE93A7E58F8285,$FEF6E3FEE4CCC905,$9A02FAFD94B2FEF2,$0200D08001CEE594
  Data.q $5604250475FE6F00,$1101000019000F00,$1035022223061123,$2603373317323312,$3732331015062223
  Data.q $FCD5B8D490C52504,$848A251F067AAFCC,$FA3E0493A7E58F82,$01F61E01E5570237,$94F0FE7C944D010E
  Data.q $010000D081FECFE4,$5604560400003401,$1533112100001000,$2635231117323336,$C534011107062223
  Data.q $71242C947159FD96,$FE19E4CC3E045DAB,$003DFD7E690A97CC,$1F04E7FFBB000100,$3537000020005604
  Data.q $012F343536323316,$1517323336343526,$011F141506222326,$BB2223061415011E,$DFF7D3BB9D78A7E5
  Data.q $93816CA1C3CA99CC,$B22CBBD6FE7788F9,$CA50453C5F4A6163,$51424E3BA02FA294,$00B79A6A85305733
  Data.q $4E04E7FF82000100,$0625000017000F05,$2135211135262223,$1411211521153335,$4E04373233161716
  Data.q $0F01F1FEAEF18A94,$4426171FFEE101C6,$02F1AD1A01797B82,$5DD4FD94EAEA940C,$B00001001C2D1A46
  Data.q $10003E041C04E7FF,$2306352311010000,$3316141133011920,$EB88C51C04113732,$04A2945E4EC5CCFE
  Data.q $027001E5CCC2FB3E,$C602D66B804FFDE7,$940400003E000100,$0121000006003E04,$FE00020133010933
  Data.q $FEAF74016901CA3E,$FB66039AFC3E0432,$00000C00010000C2,$00000F003E04C504,$1333133313330333
  Data.q $0323032303331333,$B7BFC10290B6C6D2,$D302BFC2D997A003,$F4FCEF02AEFC3E04,$D4FC2C03C2FB6F03
  Data.q $820400005D000100,$093300000B003E04,$2301093301093301,$F76EFE94015D0109,$018FFEC313012C01
  Data.q $2502CFFEC9FEF69B,$E8FD91016FFE1902,$010061FE9F01DAFD,$3E049B0475FE5500,$3233351300000F00
  Data.q $3301093301013F36,$6670508E23010E01,$016301CC38FE3138,$FEA4B240DDFDB166,$FC0E046877489475
  Data.q $00718F37FB2D03D3,$4A04000088000100,$3533000009003E04,$1521011521352101,$FD970352FDC70288
  Data.q $9494160394DA0238,$EA0001000094EAFC,$2F002B060004D8FE,$1506222315010000,$1607141516011F14
  Data.q $16141506010F1415,$343526222315013B,$35012B343536013F,$3526012F34353233,$0A7A954F00042110
  Data.q $7A0A170BC5C60C17,$07220ED9CC6D4F95,$010E2207E05B5BE0,$3B215A49942B06A5,$2DDA4140D72E468B
  Data.q $9494495A213C8A44,$94B82728B24B3C8C,$20013C4BB22827B7,$B302D8FE1F020200,$0000070003002B06
  Data.q $1133110311331101,$02D8FE9494941F02,$FDE4026F041CFDE4,$D8FED2000100001C,$00002F002B06E803
  Data.q $2F34353632333513,$3435263734352601,$012B26343536013F,$010F141516323335,$222315013B141506
  Data.q $21101516011F1415,$C50C170A7A964ED2,$6C4E957B0A170CC5,$5B5BE108210ED8CD,$D8FE5BFE0E2108E1
  Data.q $2E468A3C215A4994,$3B8B462DD84041D7,$4B3C8C9494495A21,$2827B894B72728B2,$010000E0FE3D4AB2
  Data.q $C8027B045D015600,$3336341300001500,$3337323316011F32,$2326012F22230614,$93745E7997560722
  Data.q $5E79978808733D70,$7E0108733D709374,$B793B2405241B793,$88000200B2405241,$0400A0044A040000
  Data.q $0911012900000900,$4A04110109110301,$FE94E101E1013EFC,$FEE101BF02B3FEB3,$FE4D01EF01D5FD1F
  Data.q $660002000011FEB3,$15002205830450FE,$2023062500002700,$1517322100101100,$3300141500222326
  Data.q $1516320733053732,$3316352722230614,$AFC6830423343532,$2C0174018AFECEFE,$01FFFEC7ACC6C2AA
  Data.q $3C6139FEBB8AE422,$3B2E4A485475754D,$2B016F014728BB67,$FE5BB53A78012F01,$6DCA48DEFEE4E2DC
  Data.q $4A0F511560453F5F,$E7FFB00003000060,$14001000B0051C04,$3523110100001800,$1411330119202306
  Data.q $3335251137323316,$C51C041533353315,$945E4EC5CCFEEB88,$3E04ADDEAD0CFEA2,$E7027001E5CCC2FB
  Data.q $C5C602D66B804FFD,$8D000300ADADADAD,$110044064A04E7FF,$062500001C001800,$3233003411002023
  Data.q $3732211221151112,$1B06222310352101,$FEABCD4A04013301,$D5E1DF2101D3FEE8,$FDBE9F7801161CFD
  Data.q $F1879376F50C021B,$012001442BBFFEE4,$E3FEF2FE4601FD0C,$011CB9014C8FFE3F,$BFFE4101EB01AA26
  Data.q $9E04EDFF88000300,$300028001F004406,$3526222306250000,$23263435013B2434,$1516323336350722
  Data.q $0617373233161411,$1415202311032223,$2313331301323316,$95B2B34303072327,$AB76667AF62C01C1
  Data.q $133A2AABCFB8D2B7,$FE3B52923363122B,$DAF187FE8156686B,$AA9683C902C994F1,$A96062735DCEA982
  Data.q $0A476239FEC9A44B,$4FDB120116012076,$CABFFE4101780460,$EDFF8800040000CA,$28001F00B0059E04
  Data.q $0625000030002C00,$013B243435262223,$3635072223263435,$3316141115163233,$1103222306173732
  Data.q $0132331614152023,$0315333533153335,$F62C01C195B2B343,$CFB8D2B7AB76667A,$3363122B133A2AAB
  Data.q $8156686BFE3B5292,$AA9683ADDEADE4FE,$A96062735DCEA982,$0A476239FEC9A44B,$4FDB120116012076
  Data.q $00ADADADAD780460,$9E04EDFF88000300,$2C0028001F004406,$3526222306250000,$23263435013B2434
  Data.q $1516323336350722,$0617373233161411,$1415202311032223,$0333012313323316,$F62C01C195B2B343
  Data.q $CFB8D2B7AB76667A,$3363122B133A2AAB,$8156686BFE3B5292,$AA9683E4BFFE9479,$A96062735DCEA982
  Data.q $0A476239FEC9A44B,$4FDB120116012076,$0400004101780460,$50069E04EDFF8800,$4000340028001F00
  Data.q $3526222306250000,$23263435013B2434,$1516323336350722,$0617373233161411,$1415202311032223
  Data.q $3435262203323316,$2706141516323336,$0622232634353632,$95B2B34303161415,$AB76667AF62C01C1
  Data.q $133A2AABCFB8D2B7,$FE3B52923363122B,$6C6C4D1B8156686B,$41412E4D6C6C4D4D,$82AA968341412E2E
  Data.q $4BA96062735DCEA9,$760A476239FEC9A4,$604FDB1201160120,$4D6C6C4D4D6C5304,$41412E2E414A6C4D
  Data.q $A300020000412E2E,$150056044F0450FE,$2023062500002700,$1517322100101100,$3316141506222326
  Data.q $1516320733053732,$3316352722230614,$AEAF4F0423343532,$0E012F01CDFEE4FE,$BFD9CBB288C1AFAC
  Data.q $754D3C6124FEB38F,$BB673B2E4A485475,$0B01100128013C23,$C5C3E045A5342C01,$60453F5F6DBE43DF
  Data.q $030000604A0F5115,$44064A04E7FF8D00,$0000200018001100,$0034110020230625,$2112211511123233
  Data.q $2223103521013732,$2327231333130306,$FEE8FEABCD4A0407,$1CFDD5E1DF2101D3,$021BFDBE9F780116
  Data.q $F1DAF1459376F50C,$2001442BC902C994,$FEF2FE4601FD0C01,$1CB9014C8FFE3FE3,$FE4101EB01AA2601
  Data.q $8D00040000CACABF,$1100B0054A04E7FF,$000020001C001800,$0034110020230625,$2112211511123233
  Data.q $2223103521013732,$3335331533351306,$FEE8FEABCD4A0415,$1CFDD5E1DF2101D3,$021BFDBE9F780116
  Data.q $ADDEAD289376F50C,$01FD0C012001442B,$8FFE3FE3FEF2FE46,$01AA26011CB9014C,$030000ADADADADEB
  Data.q $44064A04E7FF8D00,$00001C0018001100,$0034110020230625,$2112211511123233,$2223103521013732
  Data.q $CD4A043301230106,$DF2101D3FEE8FEAB,$9F7801161CFDD5E1,$9376F50C021BFDBE,$442BE4BFFE94B001
  Data.q $FE4601FD0C012001,$014C8FFE3FE3FEF2,$01EB01AA26011CB9,$0000AD0003000041,$09000500B005AA03
  Data.q $3521112100000D00,$3533153335011121,$500275FE38021533,$94AA03ADDEAD75FE,$ADADADAD0305C2FB
  Data.q $FA030000AD000200,$00000D0005004406,$1301112135211121,$3802072327231333,$DAF141FE500275FE
  Data.q $94AA03C902C994F1,$BFFE41010305C2FB,$0000AD000200CACA,$0900050044062F03,$1121352111210000
  Data.q $75FE380233012313,$03E4BFFE94325002,$41010305C2FB94AA,$C50400000C000400,$0E000A0007005006
  Data.q $0133013300001200,$0103211303210323,$0C15333521153335,$FD79D1FA01C5FA01,$C6FEEBD401B67BB6
  Data.q $FDFA0305AD4001AD,$6502D501BFFE4101,$0300ADADADAD6901,$5006C50400000C00,$0000210015001200
  Data.q $0123032103230109,$1632333634352633,$3237032101071415,$1506222326343536,$73D1FA01CB021614
  Data.q $5301FA01AA7BB0FD,$01A4FE536A4B4B69,$2C2C3F3F2C13F5DC,$4101FDFA03053E3E,$694C5E3A0305BFFE
  Data.q $6502D2FC3B5D4C69,$2C2C3E3E2C2C3FF7,$0000D8000200003F,$0F000B0050066904,$1121152111330000
  Data.q $3701152111211521,$0262FD6303D80521,$DE97FDCC02C8FD38,$FE940305B3FE0F01,$DE7205943EFE947B
  Data.q $E7FF3100030000DE,$2E0023005604B404,$2223062500003700,$3435013B36343526,$1732333635072223
  Data.q $1614211511203336,$2622230615373233,$1614150622231127,$2634352113373233,$8976510215062223
  Data.q $7B60A142ADEAA37E,$46017E5E4AAA8888,$67CF9278786810FE,$44548967307F8669,$4C50423701D03A38
  Data.q $74D29A88B1977E58,$F2FD7777339635C2,$B545429C40B2CD44,$013B5E4B5D7C3001,$02007B8E77902FC2
  Data.q $0305AD0400000000,$0131000012000F00,$1121152111211521,$2113032111211521,$01B3FE4602350211
  Data.q $FEC8FD7F01F6FE0A,$9403051201B775AC,$0901946FFE944AFE,$030070029D01F7FE,$44066904E7FF6900
  Data.q $00001F0017000B00,$3233001011002205,$3536322700101100,$1614150622232634,$0723272313331303
  Data.q $EE1201EFFEEF6902,$A08EEFEFFE1101EF,$DAF1D0A0A08E8EA0,$2F0119C902C994F1,$D1FE2F0108010901
  Data.q $DE94D1FEF7FEF8FE,$04DEC6C5DEDEC5C6,$00CACABFFE410188,$6904E7FF69000400,$1B0017000B00B005
  Data.q $1100220500001F00,$0010110032330010,$2223263435363227,$1533350316141506,$FEEF690215333533
  Data.q $FE1101EFEE1201EF,$A08E8EA0A08EEFEF,$2F0119ADDEAD8EA0,$D1FE2F0108010901,$DE94D1FEF7FEF8FE
  Data.q $04DEC6C5DEDEC5C6,$030000ADADADAD88,$44066904E7FF6900,$00001B0017000B00,$3233001011002205
  Data.q $3536322700101100,$1614150622232634,$FEEF690233012301,$FE1101EFEE1201EF,$A08E8EA0A08EEFEF
  Data.q $19E4BFFE942201A0,$2F01080109012F01,$D1FEF7FEF8FED1FE,$C6C5DEDEC5C6DE94,$02000041018804DE
  Data.q $44061C04E7FFB000,$1101000018001000,$3301192023063523,$2511373233161411,$0407232723133313
  Data.q $4EC5CCFEEB88C51C,$F1DAF1B1FDA2945E,$C2FB3E04C902C994,$4FFDE7027001E5CC,$4101C5C602D66B80
  Data.q $B0000200CACABFFE,$100044061C04E7FF,$3523110100001400,$1411330119202306,$0123271137323316
  Data.q $CCFEEB88C51C0433,$FE945DA2945E4EC5,$E5CCC2FB3E04E4BF,$6B804FFDE7027001,$03004101C5C602D6
  Data.q $B0059B0475FE5500,$0000170013000F00,$01013F3632333513,$23010E0133010933,$1533353315333513
  Data.q $38FE31386670508E,$DDFDB166016301CC,$FEADDEAD8DA4B240,$FC0E046877489475,$06718F37FB2D03D3
  Data.q $040000ADADADAD8E,$50069404E1FF3E00,$1F001B0017000B00,$0032330010130000,$1413002223001011
  Data.q $2302343512323312,$3521153335130222,$01FEFE2D013E1533,$D2D3FEFEFED3FE2D,$B3A6A6B4B4A6A6B3
  Data.q $018202AD4001AD0C,$FECDFE93FE6D0133,$FC34016D0193FECC,$1101FBFC1101EFFE,$ADADADAD2602EFFE
  Data.q $3904E1FF99000300,$1A00160012005006,$3316141133130000,$0714113311353632,$3335131102222106
  Data.q $81C5991533352115,$EAFE7939AC869890,$05AD4001ADABE7F1,$03D1B7B7CCF5FC03,$0801DF69F117FD06
  Data.q $ADADADADA8031201,$F8030000C5000200,$00001B001600C805,$3712343502263521,$2726151716153335
  Data.q $0315070615373611,$E4D17A0210110611,$8D748D936E7BD4E1,$011CB6E37B946F76,$ADAD272301ECEF24
  Data.q $0EBBFC1034A8240A,$035501B2142C9838,$0100BEFE9AFE332B,$ED052B040000FB00,$3D36353300001C00
  Data.q $3336343533352301,$1115222326151732,$2107061415231533,$5FBEC6ADADC7FB15,$6842C6C6B9568677
  Data.q $D794EAE94CAD4E02,$DBFED431A81DDFD7,$0100AD6B9D898E94,$C805B90400003200,$3521112100001600
  Data.q $0933012135213521,$2115211521013301,$01D8FE0402112115,$EC31FE2501D8FE28,$0118FEAA85016C01
  Data.q $01D8FE2801D8FE20,$BCFDE40287CC8809,$FE88CC871CFD4402,$EDFF1900030000F7,$13000A00C905C804
  Data.q $3225113300004900,$0119012B06141516,$01022B3435363233,$2633153335333523,$2615173233363435
  Data.q $011E021F14152223,$1635272223061415,$1523022F34353233,$2306153732331614,$D9E2000119352622
  Data.q $61C57DA0281FE5FE,$0994A0ADAD5A011F,$36622E322F336F7E,$33326C79243E2A22,$1EC83C2645583332
  Data.q $054D68223013092D,$03FDCCB8A7A101C8,$7C63FCD0775C9103,$8111675A1923EAEA,$463F2A22372A5516
  Data.q $344F167E147A6C3A,$71023149B43F2646,$2700010000A1780D,$1F00440649045DFE,$3435333523010000
  Data.q $2223261517323336,$1411211521011D06,$3233163527222306,$CFBDC5C5D5013536,$2801507E677A7177
  Data.q $69787276CFBCD8FE,$B9CB8294AA03507D,$FC94978655299C21,$8555299D20B8CB36,$9E04EDFF88000300
  Data.q $2C0028001F004406,$3526222306250000,$23263435013B2434,$1516323336350722,$0617373233161411
  Data.q $1415202311032223,$0301331303323316,$F62C01C195B2B343,$CFB8D2B7AB76667A,$3363122B133A2AAB
  Data.q $8156686BFE3B5292,$AA9683BFFEE4F1AF,$A96062735DCEA982,$0A476239FEC9A44B,$4FDB120116012076
  Data.q $00BFFE4101780460,$B6030000AD000200,$0000090005004406,$1301112135211121,$500275FE38020133
  Data.q $AA03BFFEE4F1E4FE,$FE41010305C2FB94,$E7FF6900030000BF,$17000B0044066904,$1100220500001B00
  Data.q $0010110032330010,$2223263435363227,$0133130316141506,$EE1201EFFEEF6902,$A08EEFEFFE1101EF
  Data.q $E4F106A0A08E8EA0,$0109012F0119BFFE,$FEF8FED1FE2F0108,$DEC5C6DE94D1FEF7,$41018804DEC6C5DE
  Data.q $E7FFB0000200BFFE,$1400100044061C04,$2306352311010000,$3316141133011920,$0401331325113732
  Data.q $4EC5CCFEEB88C51C,$FEE4F17BFEA2945E,$01E5CCC2FB3E04BF,$D66B804FFDE70270,$00BFFE4101C5C602
  Data.q $22040000B6000200,$000024001000ED05,$1920333615331133,$0722232634112301,$16011F3233360311
  Data.q $2F22230633373233,$88C5B60722232601,$A2945D4FC53501EA,$1D383C3E49AE0B62,$3C3E49AE0B7B0945
  Data.q $E4CC3E0409451D38,$6B7FB10219FD91FE,$2526EA03053AFDD5,$006E222527EA6E23,$3E04000094000200
  Data.q $00001F000B005006,$1133113301331133,$3233360311230123,$063337323316011F,$07222326012F2223
  Data.q $FDB6A1024D02BA94,$3B4144B50B0D03AF,$45B30C7B06451D37,$0705053F24363C40,$AC03FDFAA1035BFC
  Data.q $1E2223DE720554FC,$0200631E2124DE63,$ED050A04CC02ED00,$0601000026001D00,$013B363435262223
  Data.q $3336350722233435,$3732331411151632,$2023352722230615,$9AF4023233161415,$88AA46D3E08A677C
  Data.q $1A154891ACAC96A0,$41E4FE33356C4241,$8561816D39037431,$8D77429259951D8D,$9BDE23730B72E0FE
  Data.q $DE000200003B2D8D,$0B00ED05F303CC02,$3526220100001300,$0614151632333634,$1011222310113227
  Data.q $CEC4B8CBCDBE6902,$D0CC02D2D1D1BDCD,$7BD0C1C2CED2BEC1,$F0FEE5FE1B011001,$2E045DFE94000200
  Data.q $00001E0003003E04,$0614150715333501,$373221141506010F,$3524222306113335,$02013D013E013F34
  Data.q $019046796419F738,$FEF7D1CB94767051,$DE6003445664BFF9,$783A65C0830FC6DE,$A83ADFFEAA1DCE72
  Data.q $3A5F8246509CAA9E,$7B04280156000100,$2113000005001603,$FC25045623112115,$00A6FE941603946F
  Data.q $7B04280156000100,$3513000005001603,$9425045611231121,$005A0112FE948202,$B904DBFF00000300
  Data.q $220009000500ED05,$1125352311130000,$3F36352501330109,$3507222334353601,$020F141516323336
  Data.q $3401888815210706,$01D4FCA72C03D3FE,$7362854D2B964CEA,$492837A3A3846781,$7B6902E4027D0120
  Data.q $F91206F7FCF7FC25,$3E3D2275898B25EE,$6C7D62782D873868,$040000884D331A25,$ED05C504DBFF0000
  Data.q $1700140009000500,$1125352311130000,$3521352501330109,$0115231533113301,$F4FE340188881121
  Data.q $FECE02D4FCA72C03,$3FFE7B7BBF670187,$257B6902E4021401,$EEF91206F7FCF7FC,$6F37FEAB018DC525
  Data.q $0200004A013401C5,$3E04E40275FEED01,$1301000009000500,$1533352713112311,$02F73118C519B202
  Data.q $022801D8FE03FD9A,$75000200DEDEC6FD,$0500E10346045600,$0109170100000B00,$0107010917010907
  Data.q $5B3901C5FE603002,$01C5FE60710342FE,$FE52E10342FE5B39,$C801C301508DFE8A,$C301508DFE8AFE52
  Data.q $5D0456008C000200,$00000B000500E103,$2703013701092737,$3B0160EC01370109,$016005BE015BC7FE
  Data.q $5256BE015BC7FE3B,$FE3EFE4F73017701,$FE4F730177015237,$1DFF00000F00003E,$0700030050060404
  Data.q $170013000F000B00,$270023001F001B00,$370033002F002B00,$1533351100003B00,$1533350315333503
  Data.q $1533350315333503,$1533350315333513,$1533350315333503,$1533351315333503,$1533350315333503
  Data.q $1533350315333503,$CECECECECECECECE,$CECECECECECECDCE,$CECECECECDCECECE,$CD8305CECECECECE
  Data.q $CD66FECDCD67FECD,$CD66FECCCC67FECD,$CD67FECDCD6606CD,$CC67FECDCD66FECD,$CD6606CDCD66FECC
  Data.q $CD66FECDCD67FECD,$CD66FECCCC67FECD,$50FE00001E0000CD,$070003005006D204,$170013000F000B00
  Data.q $270023001F001B00,$370033002F002B00,$470043003F003B00,$570053004F004B00,$670063005F005B00
  Data.q $770073006F006B00,$3503153335110000,$3503153335031533,$3513153335031533,$3503153335031533
  Data.q $3503153335031533,$3503153335131533,$3503153335031533,$3513153335031533,$3503153335031533
  Data.q $3503153335031533,$3503153335131533,$3503153335031533,$3513153335031533,$3503153335031533
  Data.q $3503153335031533,$CCCCCCCCCCCC1533,$CCCCCCCC02CCCCCC,$CCCC02CCCCCCCCCC,$02CCCCCCCCCCCCCC
  Data.q $CCCCCCCCCCCCCCCC,$CCCCCCCCCCCC02CC,$CCCCCCCC02CCCCCC,$CAB904CCCCCCCCCC,$CB66FECBCB65FECA
  Data.q $CB66FECBCB66FECB,$CA67FECBCB3507CB,$CB66FECBCB65FECA,$CA9C05CBCB66FECB,$CB66FECBCB65FECA
  Data.q $CB66FECBCB66FECB,$CA67FECBCB3507CB,$CB66FECBCB65FECA,$CA9C05CBCB66FECB,$CB66FECBCB65FECA
  Data.q $CB66FECBCB66FECB,$CA67FECBCB3507CB,$CB66FECBCB65FECA,$090000CBCB66FECB,$5006D20450FE0000
  Data.q $2900250021001D00,$3900350031002D00,$1521011900003D00,$1533152315331523,$1533152315331523
  Data.q $3523152335231523,$3311233533111523,$3311233533112335,$3311233533012335,$3311233533112335
  Data.q $CECECECED2042335,$CECDCECECECECECE,$CECECECECECECECE,$CDCDCDCDCD9C01CE,$CD000850FECDCDCD
  Data.q $CDCDCCCDCDCDCDCC,$CC6706CDCDCDCDCD,$9AFDCD99FDCD9AFD,$FDCD9AFDCC0104CC,$010000CC9AFDCD99
  Data.q $5006B30250FE1F02,$2311330100000300,$00F8500694941F02,$B30250FE00000100,$3511000007005006
  Data.q $1F02112311331121,$F8B6039406029494,$0000010000B60300,$0B005006B30250FE,$1133112135110000
  Data.q $1F02352135211123,$9A021F02E1FD9494,$94220300F8220394,$50FE000002000094,$0B00070050064703
  Data.q $1121352111010000,$8B01113311331133,$FE9494948B0175FE,$00F8B60394B60350,$0000010000F80008
  Data.q $09009A02470350FE,$1121352111010000,$75FE8B0111231123,$B60350FE94944703,$004AFCB603B6FB94
  Data.q $B30250FE00000100,$3511000009002E03,$3521352111231121,$021F02E1FD94B302,$9494220322FB949A
  Data.q $470350FE00000300,$0F000B0005005006,$1123112135110000,$3313113311213501,$0175FE941F022311
  Data.q $947201949494948B,$0394280122034AFC,$0000F8B6034AFC22,$470350FE8B010200,$0000070003005006
  Data.q $1133113311331101,$0850FE9494948B01,$0000F8000800F800,$470350FE00000200,$00000B0005002E03
  Data.q $3501112311213511,$FE941F0211231121,$FC94720194470375,$22FB94280122034A,$7201000002004A04
  Data.q $0B00050050064703,$1133112135110000,$8B01113311213501,$9A0294B302E1FD94,$94D8FE4AFC220394
  Data.q $0000010022FB4A04,$0900500647030602,$3311331133010000,$94948B0121352111,$FC50068B01B9FC94
  Data.q $010094B6FBB6034A,$5006B30272010000,$1121351100000900,$1F02352135211133,$949A021F024DFD94
  Data.q $0100949422FB2203,$9A02B30250FE0000,$1121351100000500,$94060294B3021123,$1F020100B603B6FB
  Data.q $05005006D2040602,$2115211133010000,$064DFD1F02941F02,$00000100944AFC50,$07005006D2040602
  Data.q $1133112135110000,$021F02941F021521,$00944AFCB6039406,$D20450FE00000100,$3511000007009A02
  Data.q $D204112311211521,$FC9494060294E1FD,$1F02010000B6034A,$07005006D20450FE,$2115211133010000
  Data.q $FD1F02941F022311,$FC944AFC500694E1,$060200000100004A,$000003009A02D204,$0602D20415213511
  Data.q $50FE000001009494,$00000B005006D204,$1521113311213511,$02941F0211231121,$0394060294E1FD1F
  Data.q $B6034AFC944AFCB6,$D20450FE1F020100,$330100000B005006,$2115211521152111,$FD1F02941F022311
  Data.q $500694E1FD1F02E1,$00DEFC949494DEFC,$D20450FE8B010200,$00000B0003005006,$1133113311331101
  Data.q $94948B0111211521,$0850FE75FE8B0194,$944AFC000800F800,$72018B0102004AFC,$0B0005005006D204
  Data.q $2111331121010000,$D204211133112111,$94B9FC8B0194E1FD,$DEFCB6039A02B302,$0200B6FBDE0444FE
  Data.q $2E03D20450FE8B01,$150100000B000500,$2311210111231121,$03944DFDD2042111,$2E031F029475FE47
  Data.q $FC44FEDE04B6FB94,$0000030000B603DE,$05005006D2047201,$351100000F000B00,$3311012911331121
  Data.q $8B01152135012111,$8B0194E1FDB30294,$03949A02D2042EFB,$FEDEFCB6034AFC22,$0000030000949444
  Data.q $03002E03D20450FE,$351100000F000900,$1123112135011521,$D204211123110129,$FE4703941F022EFB
  Data.q $94949A021F029475,$FC22034AFC94D8FE,$8B01030000B603DE,$03005006D20450FE,$330100000F000900
  Data.q $2111331121012311,$8B01211123112111,$0194E1FD47039494,$50061F029475FE8B,$DEFCB6034A0400F8
  Data.q $0200B603DEFC44FE,$2E03D20472010000,$3511000007000300,$D204152135011521,$94949A02D2042EFB
  Data.q $000004009494D8FE,$05005006D20450FE,$0000170011000B00,$3501112311213511,$3311012911331121
  Data.q $2111231121112111,$948B0175FE941F02,$FE8B0194E1FDB302,$FC9472011F029475,$220394280122034A
  Data.q $44FEDEFCB6034AFC,$00000200B603DEFC,$07005006D2047201,$1121351100000B00,$1521350115211133
  Data.q $042EFB1F02941F02,$DEFC2203949A02D2,$0100009494D8FE94,$5006D20406020000,$1121351100000B00
  Data.q $1521113311331133,$028B019494948B01,$B6034AFCB6039406,$0000020000944AFC,$03002E03D20450FE
  Data.q $1521351100000B00,$1123112115213501,$E1FDD2042EFBD204,$94D8FE94949A0294,$0100002203DEFC94
  Data.q $9A02D20450FE0000,$1521351100000B00,$1123112311231121,$0294949475FED204,$FCB6034AFC949406
  Data.q $8B01010000B6034A,$09005006D2040602,$3311331133010000,$94948B0121152111,$FC5006B9FC8B0194
  Data.q $0100944AFCB6034A,$5006D20472011F02,$2111330100000900,$1F02211521152115,$FD1F02E1FD1F0294
  Data.q $949494DEFC50064D,$D20450FE1F020100,$1101000009002E03,$1121152115211521,$1F02E1FDB3021F02
  Data.q $9494DE0450FEE1FD,$8B01010000DEFC94,$09009A02D20450FE,$1121152111010000,$47038B0111231123
  Data.q $4A0450FE949475FE,$004AFCB6034AFC94,$D20450FE00000100,$1101000013005006,$1133113311213521
  Data.q $1123112115211133,$8B0175FE8B011123,$9475FE8B01949494,$B60394B60350FE94,$FC944AFCB6034AFC
  Data.q $0100004AFCB6034A,$5006D20450FE0000,$1121351100001300,$1521152115211133,$3521352111231121
  Data.q $02E1FD1F02941F02,$1F02E1FD94E1FD1F,$94DEFC2203949A02,$94942203DEFC9494,$B302060200000100
  Data.q $3511000005005006,$02941F0211331121,$0100B6FBB6039406,$9A02D20450FE1F02,$2115210100000500
  Data.q $E1FDB3021F022311,$01004AFC949A0294,$5006D20450FE0000,$2111211100000300,$00F850062EFBD204
  Data.q $D20450FE00000100,$2111000003005002,$50022EFBD2042111,$50FE0000010000FC,$0000030050066902
  Data.q $97FD690221112111,$6902010000F85006,$03005006D20450FE,$6902211121010000,$00F8500697FD6902
  Data.q $D204500200000100,$0119000003005006,$00045002D2041121,$E7FF5D00020000FC,$260019005704BF04
  Data.q $0302333512010000,$2726012F26231712,$121035022223010E,$2E012F0713163233,$3233101502262701
  Data.q $A0D22DD261670336,$6A15053D351CE484,$7A6FB1ECA99677B6,$4A2D4B37332D5E69,$03016802A6448C67
  Data.q $AFD6FED3FEC8FED3,$019CC0320974662E,$FE9976011601E301,$05036C8E8B76F2F2,$0100AEB7FED7DAFE
  Data.q $44069804E7FFBF00,$3634113300002B00,$06010F1415163233,$06141516011F1415,$3532331635272223
  Data.q $3F343526012F2634,$1115222334353601,$2F2D73C5AAD6ABBF,$B7A19198BAABD03D,$226276C1492FB460
  Data.q $8EC5F78804B3B336,$34392C3D3A967C7B,$50AB39B493A693B2,$626965A73F4A369D,$2EFBDE995F4D328B
  Data.q $88040000F7000100,$1133000005000305,$FD9103F711211521,$010091FB94030534,$3E049B0400003800
  Data.q $2223112100001300,$1123152133363507,$1121113526231714,$036566734E2A2301,$03CBFE41D14DB998
  Data.q $A996FDAD32C14691,$006FFC62029D927E,$C204000030000100,$353300000B00C805,$0109211521350109
  Data.q $04E0FD4C02301521,$039BFD0B02D3FC35,$949460022702ADB8,$020000ADBEFDBBFD,$5604D204E7FF3E00
  Data.q $2101000017000F00,$2223001015162115,$2003323300101100,$D002101120211011,$E4FDFE60DBFE0202
  Data.q $4B4DE30301FDFEE5,$3E04EAFEEBFE1501,$01D3FEF8FEDB9AAD,$FC2E0109010B012D,$FE5DFEA301A40125
  Data.q $5DFEB6000100005C,$00001C003E046404,$1617161411331113,$1714113311373233,$23010E2726272623
  Data.q $25C5B61115272622,$D83CC56D7E5C4735,$4A546E3303011015,$D7FDE1055DFE3E6B,$FDC202D641307A84
  Data.q $7E140A733A76D911,$0100F4FD0E513F66,$0305C50400000C00,$2710112100001300,$1716171632352326
  Data.q $1115060706152512,$59BD969F7CD1F801,$999ED06B01E32897,$4FAD82DC7B017D01,$2F9432EB01BEAB65
  Data.q $06000084FEE6EBF3,$1205690439FF6900,$21001C0017000B00,$220500002B002600,$1100323300101100
  Data.q $2634353632270010,$2105161415062223,$3521152103352115,$3335032315333501,$01EFFEEF69022315
  Data.q $EFEFFE1101EFEE12,$FEA0A08E8EA0A08E,$1F0305E1FC1F03F3,$820A7D826B01E1FC,$080109012F01197D
  Data.q $F7FEF8FED1FE2F01,$DEDEC5C6DE94D1FE,$76056363DFDEC6C5,$C6045E5E7EFA6363,$E7FF7B0003005E5E
  Data.q $12000B0044065604,$3312101300001900,$0222230210111232,$0102222302102113,$FC7B123233121021
  Data.q $D2FDF0EFFFFEF0F1,$37029E7D7E9E3702,$08039E7F8199C9FD,$76FE5CFEA7019501,$EA019B015CFE75FE
  Data.q $6BFEBDFE43010101,$01005001B8FEEBFE,$ED05A00400003100,$3521152500001B00,$0032330010110021
  Data.q $0035211521011011,$1015022223023411,$C8FE440106FE2B02,$C8FE4001ECEB4001,$A0B7190106FE4401
  Data.q $017001949494B79F,$FE8CFE7501120162,$01949490FE9EFEED,$E4FE1C01F7A10111,$7B000200005FFEF7
  Data.q $1C0044065604E7FF,$35012E0100002700,$2326151732333634,$1216021F14150622,$1035002223001415
  Data.q $3632331614110425,$F7A0B6F601263435,$B188709580758BDB,$D4D9EBFEB0C66C5E,$7CA6C4FE0E02E7FE
  Data.q $5CA65FD1036E9E77,$4A313C2DA41D9181,$E3AFFBFE77423668,$336201D81D01DCFE,$869CD1C895D5FE6E
  Data.q $6F001900030000AC,$21001600AA03BA04,$2223020100002D00,$021F323336343526,$2306141516323312
  Data.q $1506222326022F22,$3316170136371614,$0622232634353632,$77A4A16FB4846102,$9D73BC7A172D6C90
  Data.q $646717687FA579A5,$1237015C36494539,$7D2C3B47473A6667,$FCB6A0E9DDFE9201,$B7A6E52401274BB2
  Data.q $716F84BB29AAF6F9,$87C3230401050392,$690003009789746E,$080056046904E7FF,$2601000024001C00
  Data.q $03011F1415062223,$1732330010352637,$2300101516073337,$3632331637072722,$906B522403273435
  Data.q $11017D7DFC08229C,$FE7E7E9B407CAEEA,$744AA93E7AB5E9F1,$D1E34A78032B9C91,$F4A2A3B6FE175F67
  Data.q $9BA5525230010601,$DD5151CDFEF7FEF3,$0100006873D4E449,$22057C04E1FF6900,$2023062500001800
  Data.q $1517322100101100,$2115210704222326,$AF7C043732330014,$015F01A4FEAFFEB7,$00FFC68AC3AEB241
  Data.q $D50601CBFD350213,$55016001391AADB1,$E148A23A55013701,$010055F8FED694C0,$3E047B0400005600
  Data.q $3411233300001100,$1123111500323300,$94EA150622232634,$E8943D01D6D53D01,$3301CE3D02E79797
  Data.q $903D02C3FDCECDFE,$560003000090DDDD,$0300B6037B046F00,$353700000B000700,$3501152135011521
  Data.q $04DBFB2504561521,$94946F2504DBFB25,$94945A0195955901,$7B04000056000200,$00000F0003002504
  Data.q $3521110115213533,$1121152111331121,$0138FEA3FD250456,$949438FEC80195C8,$FE34019435012801
  Data.q $56000200CBFE94CC,$0300B9047B046CFF,$1521351700000900,$2504560109350209,$DA02DBFB2504DBFB
  Data.q $FD4D0594949426FD,$6D016D01A6EDFDEE,$7B046CFF56000200,$000009000300B904,$1501091115213517
  Data.q $04DBFB2504560109,$949494DA0226FD25,$FEA5120213022801,$060201000093FE93,$15005006180450FE
  Data.q $0607222326010000,$3336371011230119,$3435222306141532,$C52527430A107403,$055126359BBF6355
  Data.q $2AFBEDFD595D05EA,$2A77EECD7002D503,$B9000100000E5039,$15005006CB0250FE,$3637323316010000
  Data.q $2306071011330119,$1415323336343522,$C52526430A105E01,$FE5127359BC06354,$D60412025A5D05B6
  Data.q $2978EFCC90FD2BFC,$56000300000E4F39,$030025047B040000,$352100000B000700,$3501152135011533
  Data.q $047EFDDFF9011533,$C801DEDEDF7EFD25,$0200DEDE7F019595,$AC037B0494005600,$341300002B001500
  Data.q $323316011F323336,$012F222306143337,$3336340307222326,$3337323316011F32,$2326012F22230614
  Data.q $93735F7997560722,$5E79978808733D70,$978808733D709374,$08733D7093745E79,$3D7093735F799788
  Data.q $5341B79362020873,$B13F5241B792B13F,$B13F5242B89254FE,$0200B13F5341B793,$ED05440331048801
  Data.q $2201000017000B00,$1516323336343526,$2634353632270614,$6602161415062223,$5D81815D5D81815D
  Data.q $044A4A3132494932,$5D5C81805D5D8231,$324A4A32314A6382,$2201410101004A31,$00000B0072039103
  Data.q $3233363435262201,$AD7B690206141516,$AD2201ADAD7B7BAD,$00AD7B7BADAD7B7B,$9103220141010100
  Data.q $220100000B007203,$1516323336343526,$7BADAD7B69020614,$7B7BAD2201ADAD7B,$010000AD7B7BADAD
  Data.q $5006D204D8FE0000,$0925271300000800,$013F3F0123013301,$B5FD9AFE01270113,$FDA36A4401B9FE79
  Data.q $00BC0288F8770688,$CF03D80203010100,$110100000F00EE05,$2301193233361533,$0301110722233411
  Data.q $797485ADFEA27FAD,$EAFEAD9A0303D802,$1AFEA0AFD70100FE,$C803E4022E010100,$350100001900ED05
  Data.q $233435013E013F36,$1516323336350722,$15210706010F0614,$B53A724A9A422E01,$9460ABA0A39B938A
  Data.q $8DE402E401276A4E,$476A2E3A452C5D61,$294E67516C733989,$4A00010000883B38,$03003E0488040000
  Data.q $044A112111330000,$000000C2FB3E043E,$0100C60010000000,$0900000000000000,$0000000001000000
  Data.q $0100090003000100,$0700020000000000,$0000000001000C00,$0100090003000300,$0300040000000000
  Data.q $0000000001000900,$010013000C000500,$0300060000000000,$0000000001000900,$03001F0009000700
  Data.q $4C00000009040100,$0904010003002800,$030074000A000100,$0E00020009040100,$0904010003008000
  Data.q $0300740030000300,$0A00040009040100,$0904010003007400,$0300A40018000500,$0A00060009040100
  Data.q $0904010003007400,$6F43BC0024000700,$4E74686769727970,$616C756765527765,$6E6F697372655672
  Data.q $61725430302E3120,$43006B72616D6564,$7200790070006F00,$7400680067006900,$32002000A9002000
  Data.q $2000310030003000,$4500200079006200,$6500740073006900,$20002D0020006500,$6D00610065005400
  Data.q $4E004E0041002000,$4300530041004F00,$5200200049004900,$6C00750067006500,$20003B0072006100
  Data.q $6D00610065005400,$4E004E0041002000,$7200650056004F00,$6E006F0069007300,$30002E0031002000
  Data.q $6100650054003000,$4E00410020006D00,$2D0020004F004E00,$7300690045002000,$0000650065007400
  Data.q $0000000000000300,$01000000660033FF,$0000000000000000,$0000000000000000,$0300000005000000
  Data.q $0300020003000100,$0300FFFF03000300
  ASCII_ttf_end:
EndDataSection ;}
CompilerEndIf
Répondre