π
<-

Résultats concours Casio "May the 4th" 2023

Résultats concours Casio "May the 4th" 2023

Message non lude critor » 23 Juin 2023, 10:16

Collègien(ne) ou lycéen(ne), jusqu'au jeudi 1er juin Casio t'a permis de participer à son exceptionnel concours May the 4th 2023.

Il te suffisait de programmer sur ta calculatrice Casio ou son émulateur ton meilleur dessin Star Wars, avec 2 catégories au choix :
  • catégorie fx-92 Collège : pour les dessins programmés sur fx-92+ Spéciale Collège ou déjà sur la nouvelle fx-92 Collège Classwiz de rentrée 2023
  • catégorie Graph Python : pour les dessins programmés en langage Python sur Graph 35+E II ou Graph 90+E

Dans chacune des deux catégories était à gagner un formidable gros lot : 1 console de jeux Nintendo Switch accompagnée d'1 jeu Star Wars (valeur 310€).

Dans une actualité précédente nous t'avions présenté l'ensemble des participations nous ayant été partagées.

Il est maintenant grand temps de découvrir les vainqueurs que Casio vient tout juste d'annoncer.




17006Nidal alias bouboule1 chez nous, élève de Quatrième au Collège Clément Marot à Lyon, est le grand vainqueur dans la catégorie fx-92 Collège.

Son dessin représente baby Yoda (ou Grogu), protagoniste du film The Mandalorian. Une œuvre d'autant plus remarquable que Nidal a lui-même conçu l'image en question.

Regardons un petit peu le code de sa participation :
Code: Tout sélectionner
Style Croix
Répéter 1000
  ?→A
  A*1*10^-4→A
  100(A-Ent(A→B
  Style relevé
  Aller à x=-16+Ent(A ; y=20-Ent(B
  Stylo écrit
  Avancer de 100(B-Ent(B))-Ent(A
Consulter
Attention, à ce jour la plateforme en ligne Classpad.net ne permet pas d'afficher correctement ce script si tu suis le lien précédent.

Elle souffre en effet d'un bug qui a été signalé, faisant qu'elle ne reconnaît pas l'un des jetons utilisés dans le code, la puissance de 10 (de code hexadécimal 0x2D). Tout script dont le code fait appel à une puissance de 10 sera à ce jour inaffichable sur Classpad.net.

En attendant correction nous t'en proposons une version équivalente compatible Classpad.net, où nous avons juste supprimé l'usage de la puissance de 10, remplaçant le *10^-4 par un ÷10000.

"Ah ! non ! c'est un peu court, jeune homme !", aurait certainement répliqué Cyrano de Bergerac. Nous ne pouvons que nous incliner, c'est en effet en l'état bien trop court et simple relativement à la complexité du dessin, il manque quelque chose...

Rappelons en effet que la formidable fx-92+ Spéciale Collège de rentrée 2018 ainsi que son formidablissime successeur fx-92 Collège Classwiz de rentrée 2023 sont certes programmables dans un langage "à la Scratch / Logo / turtle", mais limitent dans tous les cas la taille du script saisi à 900 octets.

Dans ces 900 octets doivent donc rentrer à la fois les instructions de tracé mais également l'ensemble des données éventuelles.

Pour contourner cette difficilté Nidal a su faire preuve d'audace ; il a eu l'idée de sortir les données du code.

Nidal a décomposé l'affichage de son image en 44 segments horizontaux et son code est en fait une boucle demandant à l'utilisateur la saisie de nombres successifs, chacun codant les coordonnées d'un segment horizontal à tracer.

Précisons que la fenêtre graphique sur fx-92 Collège affiche des coordonnées allant de -95 à +96 en abscisse, et -23 à +23 en ordonnée.

Le format conçu par Nidal est le suivant en base décimale, aabbcc, avec :
  • aa-16 : abscisse de l'extrémité gauche du segment
  • cc-16 : abscisse de l'extrémité droite du segment
  • 20-bb : ordonnée des extrémités du segment
Les données à saisir pour obtenir l'affichage de baby Yoda se constituent alors des 44 nombres suivants :
Code: Tout sélectionner
010009
110019
210029
000130
010204
090221
260229
030305
090311
140316
190321
250327
040411
140416
190426
060524
070623
090721
080809
130817
210822
080912
180922
081022
081122
061208
121214
171218
221224
061311
191324
041426
041526
031627
041726
041826
041926
072023
072123
072223
062324
062424
062524
092621

Félicitations ! :bj:




16932Ilyas R. alias ikario198 chez nous, est le grand vainqueur dans la catégorie Graph Python. Ilyas est élève en Première au lycée Louis Pasteur à Avignon, où il a l'honneur de suivre l'enseignement de spécialité de NSI de Vincent Robert alias cent20 chez nous. Vincent incite régulièrement ses disciples à participer à divers concours de programmation, notamment sur calculatrices, et arrive souvent à les conduire à la victoire. Une équipe de champions ces spécialistes NSI Louis Pasteur, bravo ! :bj:

Revenons-en à Ilyas, passionné à la fois de programmation et également depuis son enfance pour la saga Star Wars, qui a pu trouver ici une occasion exceptionnelle de combiner ses centres d'intérêt. Il a choisi pour sa part de représenter la scène du film-épisode 4 un Nouvel Espoir où le Millenium Falcon s'approche de la Death Star, réunissant ainsi deux vaisseaux emblématiques de la saga.

Son script de 44,849 Ko ne fait que 31 lignes, mais plusieurs d'entre elles sont très conséquentes, jusqu'à 18845 colonnes. Le script n'est donc pas consultable ni modifiable sur calculatrice (l'éditeur acceptant certes jusqu'à 300 lignes mais jusqu'à seulement 256 caractères chacune). Par contre le script sera parfaitement lançable.

Le script s'appuie ici sur la bibliothèque de tracé par pixels casioplot.

En insérant des retours à la ligne réguliers sur ses longues lignes, on reconnaît des éléments de l'affichage et met donc en évidence un codage des données par caractères. On note donc le codage distinct de plusieurs éléments graphiques :
  • le fond d'écran étoilé, affiché en premier
  • les deux vaisseaux ainsi qu'un titre "Star Wars X Casio", affichés par-dessus le précédent
C'est-à-dire que le script ne rafraîchit pas ici 384×192 pixels mais davantage, une bonne partie des pixels étant en effet solicités deux fois (pour le fond d'écran, et pour l'élément à afficher par-dessus). Malgré cela nous avons des performances très correctes ; la Graph 90+E sortant l'affichage de la scène après 30 secondes, un délai habituel.

Ilyas a visiblement bien du talent. Les vaisseaux se détachent ici clairement du fond d'écran sans pour autant choquer visuellement ; on s'attend à ce qu'ils se mettent à bouger à tout moment !

Si tu consultes le code, tu noteras qu'Ilyas l'a rempli de pléthore de références à l'univers de Star Wars :
Code: Tout sélectionner
from casioplot import set_pixel as coup_de_sabre_laser, show_screen as voir_l_hologramme

nombre, ouvrir, memoire, classer, maitriser, force = sum, range, len, list, int, True

etoiles_de_la_galaxie = {'M': (26, 33, 43), 'C': (0, 6, 16), 'G': (12, 16, 27), 'F': (8, 12, 23), 'H': (15, 19, 30), 'E': (5, 9, 20), 'B': (0, 2, 14), 'D': (4, 8, 20), 'a': (69, 71, 83), 'A': (1, 0, 6), 'Q': (45, 45, 47), 'P': (42, 40, 51), 'R': (48, 47, 52), 'T': (52, 50, 61), 'L': (30, 29, 37), 'I': (18, 22, 34), 'Y': (68, 67, 72), 'U': (56, 56, 58), 'S': (50, 50, 52), 'O': (37, 36, 44), 'K': (29, 28, 33), 'J': (22, 22, 34), 'X': (61, 61, 71), 'N': (37, 36, 41), 'V': (59, 59, 59), 'c': (77, 77, 85), 'b': (77, 77, 77), 'Z': (66, 66, 78), 'e': (82, 83, 88), 'f': (85, 85, 97), 'i': (94, 93, 98), 'd': (78, 78, 88), 'h': (88, 90, 102), 'W': (54, 57, 74), 'g': (80, 87, 105), 'y': (134, 138, 149), 'n': (104, 106, 118), 's': (109, 120, 140), 'k': (93, 99, 113), 'r': (120, 119, 125), 'w': (126, 129, 148), 'j': (92, 94, 107), 'q': (108, 115, 134), 'l': (92, 98, 122), 'p': (104, 108, 133), 'o': (103, 108, 128)}
au_fin_fond_de_la_galaxie = ['MCGGFGHFEGCCFCBDEBaBDDCBDBBBBADAQAABACABBABACAAFAABAEEDCBFBBBAABCABBBDBABBCBPBBBBDCDCCCCBCCBECABEACCABEABACAADCAABCABDBABBCBRABCBBAADATBDBCCABABBABAAAAABACBAAEBBDBAAAAAABABAABABABAABABADAALCBB', 'DGFDFFFFFCCFCFIEBEBLCEBEBHCBBCBBABAAAABBBBAYBBAABDBBMAPCCBCCDDBACABBABCBCCAAGHBCEBCDCHEBDBCEBBCADCBCACABBAAAUSDABAEBCFCBABAAAAAACAFCACCEDDCDAGBAAABAABABAABBBAAAABAAAAAAABCABAACGAAAAABABACBOCBB', 'GBGIGCGFDCIEDDDCEDFCFEBFEBICACABABCAACABBBAKABABBABGDOBDEJCCBJACAEBBCCCBBAEEHCDCCBDFDBCBCGEBBDXBAABBCACAABNBDABCABBCCDACCABCFDABCABDBBCBBCBACFAAAABAGAAAACACKBCCABAAAAAADAAAAABAAACAAAAAQABBACBD', 'EDCDFRCDBGBDCEEEEEDGBFFCEFABDAECBAACCBAADACACADBAGFCIHGBDCCBDADBEABDBBFBCBBFBCCBBDBCBMDQBRBCBBBBBDBCBBCACBACACCACBDDADAABCCBACCBBCBACCBCBEBEABBBRAADAAABCABVADABABAAAABBEAAUDAAAABAAABABABBGABBB', 'DCXDCFEEDBDFECDBBCBDCBGECCIACBABBBABBABAAUAABAAAABAACAGRBDDFECCCADAAACBAAcBGBDBDDDBDEBFDCCDBcBEBADCABCCCCCBBABBFBARHBABBACBADBCEEADDBJHHFBBGALJBAGBAAABAAAADbABAAABBABBCIAAAUAAACAAGAAABACARBABC', 'CEBGEDIBCSFCDDCCCCBCCBCBCCUABCCUACAABBCCBACCAAACCABBCHDDBHEBBFACEBDEBBEEBADBBCGEEBCBCGCBGBDGCBBCaACBBBBFBABEBGBBCCBBBBAABABBBBHCFDAACDDCBDFAFBBACFGBAAABABBAABAAAABBAAABFCCACAAAAABHBAAAAADABCBB', 'DDDCGEECDCBFEBCBBAbBCCIBEBABAABABCADDBDBACABAAAABABBCBDBFBBCBEDGDbBCBDCCCQBCBBECBVCBbCZCDDEDDBFDHMBCCABBKEADHBDBBDBBMACAABCIDBAGEBFCCBEEBCEKGNAFBGACCEBADAACAACABABBAAAANDBAAABAACAAABAABBBBAADB', 'EFEEFDCCEDEKCBCBBBBCCBBHDDFBHHAAZCCBBFABABCBABBABCBCCCCCCDBCECCDBBDBDCECFJBBDEEFDBCBCCBCCBJBFFCFCDEBCFDBQBEAAFDFDCFCACCBBCDABCBKBCBBCDBBCSDFeGMACBGHCACBAPACABBCBABBABBBAAAABAAAAAABAACABABCABBB', 'EEGJEEBEFEIHHCDBBCDBCBECBFBDLHCBBDBBCBBBBAAACAABBACCBBCCCBfBCGFBBCDDFBFBBEBHCBDFEEBTBBGCGEBECFHHDCCCCDDEBEGNHCEFDCDDBADBDDBCECEBCCBDFCBCBAFEJFFDLFACABAAADAFBABAFBBAABBBPKCAAAAAAAAAAAAAACAABBBB', 'DFDBHJECDFFCCFEDCCADBBBBBBDCFDESCBDCBBCAAAAABAEACBADDBCBBECBEBDCEBCCBCBDHBEFBCDBBKFBBBCCCGFBFECDCEIMBDECDDEHFFIGGEFCBCACBACCBFBCCDCBBEDBaCGBEBBEiABACAACANBABCACBFABABABBBABBAAAAAAAAAAAAACaAABC', 'EEFFFFFECEBBCBBCDCEBEXCCCBEEDGFDIDCBBCCBABCABDACBEFBCDBDDBBCCCBGCBFCECFCBCBDFDBGCGBECDLQGEICIDJZCEDDECEFEEEGGFFHCJCFFCFCCDBCFBYBEBHBdBEAAFICDCJBOABCCAAABAAABAABABBBACBBBBBBAABBAAAAAABCACBACCBB', 'EECGFEEFFDBhBFBCCBDCBBDDDEFGHDGGEHDDCBBCBCBACABDCBBECBTCCDDCDBECCECCBCECZCEECJDPCEFFHBEGCDDGDFDCFBHDDEFDHGHFEIDHECCCGJCCCCECBCCCFDCBBBBBBCECFFADBCBABLBBABHCBAAABAECACBBBBBBBABAAAAABBAABBABCACC', 'CBFGEDICBFBBBDLBBBDCDCCDDDEEGGHIFFBBEBCBCBBDBBDBBCBCBBCDCCBBBCBDCBDFBDENBDFCECDDDBFBCFBBDBOCVFCMEWCCCFDFFFDLJDHCCCFDCBBDBCDBFBBCCECBCABCABCABAGCAFBCACEDADACCCDBBEBAZGBBBBBBBBAAABCAAAGLBBBBBACB', 'NODECJDEDDBKCBBcCEEBCDQDCUQHDHHFGCFCCBDDGBCBCDCDBBCBBVBSCCDEBCEFFCBEDCDEDEEDDCBCFCFCFEECBRIEFFEDDDDEFCDEGILFHDDLJDECCCBBBEDBDHBBBDUJAeABADABAJEHAICBCAGCAACEAGLDACACBBBCDDDBBBACBBAABBBBAADBACBC', 'BBEBECDEFMEBBDDBFBGFDEBGGFFDgFGGGDGGFDCBBCECMBDCCCCCGBcMEBEECEGCCIDIDCGFHFFEBHCDGEBNCBJCDMCFDDCECDEECGCHEFMPRZUFJFEDBCBCCBCICCFBBDBCAAHACACJHCOEEABCFHAWFAECEECCCWIDCEHGDCDCBBBBBBBBBBBBBDAAAACB', 'BDEDBCBDCDBCBcEECEDEECGDFGHGFHGGEIEIFDBCBFCCBFBGBCCCBDBCCFCEEEEEGEDFIEGCGHCCBBDFCDDRVBCCCCCCDHFEZDFHCDEGFLFMIKMJEGCDCBCBECGCBEBEDBBCACABBBAABABCAPBAABABBBDDBCBFABEDDEBFHDDBBCBBBBBBBBBBIBFOBBBB', 'BCDFBDDDCEJDECECDBEDFDEHEFFHGGIEDGHFEGEDOAABBCBDBBCCGDBFCDECFFLEECFDFDGFDFDFBHCDCDFFCCEFEBHCLHCDDEEECDFCQCFGIKKGCCCBDBBFbCKCDTBCBDBBDBBABABABPACBIBABBFCBBFBAACBEBGBCCFGBCBCBCBBBBMBBBCCDBAGBBAB', 'CBEBGDBCBSGDEEGFDiEDFDEChEHFJHGGIMDDJBFCUCRHBNEBCACADFBDDEGEGCHECECCEICFFFFECFEECEHCEHCFBFCFCCWJDFCXIEFFUDDIFEMLHEKJDDCDBLHDDCFBBACACDABABBCAKABAEBDBBBBBFBCEBCDGBFBDFCCDDCCBBBBDBBCCBBCBCDAAMNB', 'BBCEBCBDBCFECDDEFDFHDHFGDGGGFHHHFGHFGFFFADABAFDAACAEBBDDCHDDFFEFPGHEHDOFEEFFGLBBCDEDFBBCDEDBCFCDJCICGFEEEGFGGDFCBPJDBCLDECDDEBCDDABCAPBBADCACCBCCBDBBBBCCBDBBBBDBHEDFBFCEDDBBBCDCCCCCGcBCBBDBBBB', 'CDBBCBEDCCBGBGFFHHHHGEGGIFEGIIHGIPHFEDDBECBBBABAcADCDBEBHDFIFEHNECGFEGHFHEHEFGJFFFBgBDDCBCDCDCKDEJVEEGEIDHGGFEGCcBCByJEBGCDEBBGBDABAABACBBBCBCDBDCBCBDCCBBCBCBCBRBCEFCCFEDDCDCEDFEBDCBBDCBDBBGWB', 'BABBDBLFCEDBZDFFHFHFQIGIFHHGKFHEDaDHDGDEBCAEAADAAACBCBBBCDEDFFCKFEFCIGFIDIEIHFLGIKCBIDBBCCGCCGFIDLEFWDHDFGFHIGGHGRCILJBHCBDBBCBBCKACABCABBCBHBCBCFBCCBCCCDBCBBBBEBCEEEHFFEEDEDEEEBCCBDCBBCBBBdBD', 'BFDBCCBFCBDDHDGKIGFIKFIHGFFHHJGeDIFVFECDBEFAECDCCBACBbEFDHKDFHGHFLDKGFIFIEHGHELEGDQCDMBBBDBCCDDDGDGGLEEGGEEEFGIFJGOBISJFBHFBBBBACBBBAABCBBBDBCCCcBDCBCCDBBBCCECCCFBBDECGEDEEEEEECQBBZCCCBBCDBCFE', 'BABACFBCCBBHNFDEaEJDFHIGDbFEGFCJFGFDGCIFDCBCABBBAhBCDBFDIDCDIEFDFFIDEWFGHFIGHHDGGFDGDCBDCCGBCCEFDFIFGIEEFGFFIFFGHCLRFenYMGCBDABBBBAAEEAFBBCBBBBCCDCCBDDCBBBBCABBCBBLCFDFEEDEEFFFFRDEEBEBDEBCEBDD', 'BAADBBBBBFDDFFHFFGIGFHFHFGEHFYFIGFGFFDDDCAACBCCEBABDBCCDCFFdEFEHEIIIFFFGGGFHMHGEGECDBCBBECBIBDFKFFILGKFKFFGGEDJEQJDOPVQKFHLBABCBAAAaAADABBBCBDCBFBDBCBBBBADBADCeBECSCFFDIHFGFGFFEDFDDFEFDDEDCHEF', 'BACBBDDPDCCDHYFHGDJHLFHHGFFDFNDGIENEEBBBDACCBCAAABBBCDDCDFDCDDEFQDIIIJEJGHFHCIGFBFCCDCABDBDBBEDEHEHHFIIHHGGFHDJHDEBTGGHDHCCEBOACABAAFALAAACANBBDFKBHBCBCBGABBACABDEPEDEFFFFEFDIEgCFDFEDFEEECDCDD', 'ABBDDBCDCDEHHCIGFeGFHHFGFIEIHDEFEFQDHBBGBDBBBBBbABBBCDDCCEEFFFGGIHFJJFsEFFHFgCGHHBECEBCCBDBFEBCFCVKKIGFHGGJEIGGIIDGBCBDCBCBBBCAABABBBBACBEECCBBBBBCBBEBEBBCAADBCFCCCNEIGGHGFIGHEDFFFDEEEGFDCFCEC', 'DBDBCFDDCDFDCFHKFDGFGFGGDFGFFIGDDDCBFFDCBCBBDABACCBBCDDDDEEFEEHGHGKJENEIHHEHCHGGFFCCCBEBBFCBBFFGGFDHJFKHGLFHEFGHHEECMCCCCGEEIEAXACPABAFCBBCABBCCDBBBBFBBABBACCCFCCBIFDFFDFGEFFFGFFDFDGGGGDEDCEBE', 'EBDCFCDCDDEDGGFFFEEHFGGDfDHGGFDFKBgECBCBKBDHAACBBBCCDDCBCCEGFFGFHIHKIHIJHFHDFHJJGEFCFCBEBBDDCCDBECHHJIGHIHGHJJFIDHGGCDDDBLIBABHAAHICABAEDBCBGBBCBDOCCBCDACABDABDBCJCDFFEOVDLRDGEGDbHEFDEDDDDCBEC', 'BbCCDDDCEFCFEDIGFEGGHFGICEFGEGEEDDBCBBCFCBBBCDBCEDCBBCDECCEGGHIHHJHHJKIJJFJEEFHIFCDDEDBFBEDCBECQEFGFFIPIHJJHIHFFgCHEIECDDCCEEDABAAABBDCCBCBCBDCCVCBEBHBBFACDCCDCECFHEFGDCFFHKHGMFDEDFGEGFEEIECED', 'DCEOEZGFCDFCGDHFDGGFGGGFFUGDDGEDCEFECCDBBFDCFBDCCCCDEDCCEEEFGGJJHJJLLMJIIeIHFDKFEHCDFGEGEDBBFCHDFFFFfEIHKHINJKJHGIFFGECBDFBFBGAEBAWADBBBDDCFBHHECEEBdBPCCFCDFCBEBDCFKEDGHDIEELLOHJFDEEEHDEHICCEC', 'FLEFDEEDFFDEEEEGHFGGFHHGFEGFGDHEDEEDCDCDCBCDBEEBDCCDDDDDDEEGHGHHKJLJIMQHLGMJFGEFIEGCJGBKBCCIDGDFEFDGFIIJKKKJKKMFJFGHDFFFHDBDDBCABAECBBECFBBDCDECCDGCaBDBCBCHBBDBCBDBELGHDHGGICCDFHCFEFEBdFFDGCBD', 'DDEFEEEEEFOIFHJFGDGHGGDHGEFFBGCDFDCBBDCCCEBCFBECECCCCCDEEFEFGGHJJIILKLHXJHIHGFEWFDEDDBCEBBDDEEEFGCEHDKFIKINLMKFnFJIEHDEFFDDGCBDBABAACEBdBDDDEEEFECCBBCCZFCCEDJBDBDBEDDGDEGDDEKXIDCDDDDEFBEDNCCDB', 'EEEDEFEFFEJFEGFGGIEGFHGEDFECEDGDCEEBBCCBCBBDCGBDCDBDDCCDFDGHHHJIJILJJKIIJHGHIGFHHFDDBCCBFDECGDGLCFDGRFGJILNNKNJHHKHEFHEHECCCIBCAEBCCBBKBBDDCGEEFEDCDBEDBCFBCFBDBDCCCDEEJGFDDFDCDDBJECCEDLEDCDCCC', 'CEEGEEDEFEFEGFIFFKeEIHHCcBEDDBDCCCBXCBIBCBCCDBDCCBFBCBDEEEHGGGJKLKIKIOZHIEJHHHXGFGDCCBFPBFCFCECYDDGHUEIKKJLILNKROHHKFEDDOXDIBEAHABACEDICFCEOCCGEEEDDRFBEFBCDWCBFBBCBBIIFJGEDDDCFCBFCCCCEIEEFCFBB', 'CBECCDFFEEFFFHJFIHDIIIGEFEEEBTCBCBDBBACDBBBCBDCBDBBBDCDCEEJEHIKILGHHGIIKGHFHGCHHIIIUCFBCFFGFDDFDDCGEFIIIHLIMLKKJHGHIFGDCCBFFCDABCBWABCFFBEHCaHDEDCFECGFFFDCCBBBCCCFCBFFECINCbCICJFCBCCCCEDFEHCSC', 'CDCCcCFCGFHFKIFZIFJHIHILGFECEKCDDACAADABBDBCDBCDCCEBBECGEGCaCFIGHKKIFFJGJHFJHiDHHFHJEEFCHCDKGEFDEGGGIHIKLJLLQJIKFHGFHFDGCKECDFCFBAADDCCJFCEGDEEDDGDCCCEFGCEEHCDCCBJCCBECEECDEDIDEDCEBBDBBDGCBCCE', 'BCCCCFBeCIIIIFLRLIGIIHGGEEEDDACABCBACAACCBCBBDBBBBHBbBCCEDFDXGGHJEHHHHGFGIEGGDHFEIGFFGDFCkCaEDDHFEJHIJKJJJMNKNMIJGHHFEEECDFLNBGDDBBDCCJEBdDEEHEEFDFDWeDDFIFDDDEDCIBBDKBFDCECCOBFBCCEBCEBCEGDDDCC', 'DBDECCGCHKFFGHHHHJIIFFHIFFGCEADBACCBACABBBBEEBBCCDBCBDCECHFDEDEHIIJHPEGGHDWGGHHDGFHGHFHGLEHCEFFFHKFKMKLOMKLMMJQNNHHHFFFDHEGHCHCCABBACCECDCIDEEFQDFEEMDFFHDGFaDELBBDCBCBBCMIEDBCEFGCBCDCCDCECCDCB', 'CBDHFFFEFBbCJFKJHFJGKGHFHCBCBCDABBAAAABBOGBABFXBCBBDCCECFCGEROEFFJFSIGFHEFCFEFCHFEFDHEFGGGFJJDGGHILKLOOLKLMLNQINUKHHHFFHMDIDHBDBBAECBBCDHDCOFEHLDHGGEFGGGKIFEDDJLCBBBBCCBCCBCDCBBECCCBBCBBBDCBEH', 'CCCFCCEDEGEHFJGGGHQGFIFGEEBBBBBBABBBABBBBABCBBBCCBDDBCCFLEFFGGFGHEILGGFGHDhCFCOaDEEEEFHHIFGMMGGHKIKLMMMLZMOSLMOLMIJIIHHGJDDOEBCCACBCFBCIGGGEJEFFGEHFGGGHFNMIFGCGCBDCBCBBCBDCBBBBCBBCBBCCBYCBIKBB', 'CCDCEEDHCFCEGGFHHFLFFIGECCBBBBCBAABABACBABCBBBCBCECEMBEDFGEEGEHFFHIGGHGHGEDFEFGBFEHBEFDKKLGFGJIHJJMKLQNUOOOSRNMLKHNMHHKHGDEECDEDBABECDEGDGEHFfEGHIGGGHHIKTJMRFCEBFBBBFCBSRBBECGBBCEBBBBBCBBBBAEB', 'CEDCEFEDDCQDCEIGFGGFFDGECCECGABBBBBABBBAADADCCCCCCFDDECCEDGJHJFFSUHIHIJGKELDHHJIDDEfHHFHNIJIIHIKKJNNPRXROPOQONOMMLLGHJHGFFFHEDDDCDBBCEHCFCGKGFGLHHJLHHGLOLRMIHRCJBDCBEBBVBBbBDBCBCBDBBCBCBAXACAB', 'DDCFFCDEDDECiDDEGGFGHFEDGBBDArBHBABABEBBUACCBBBBCGDECFDFDGIHJJGYKJIIGIEIEHDHIEICEHEBHFDHHILHKHKKMMLTRWRTaRONPRNOMKIJJHIPEGHHCDDCBBDCBEDFEEJFHIIHGHKGGJJGGFKJODCCCCCCCBUBBBBGEEDCDBBBBBCBADDaCDDC', 'CCBDEBCEEEEFBDGDFGHFFGEJBCBBCAABAAAABFBBACBLUDIMEEDCZCEFEGJIKJKJJIKIKGRFHFFEEHEECGGOIEMHHIIIJKTKNLQPRSXURPYNQONONeeKKGHHGDDCFCDBBBBDEBEDCEFFIIIJGIGIHHHIRHGHKFwMCDCBCFJLPBDCCHCBCCSBBBACCABAABBA', 'CBCBCFDCFDEEEFCGDHFFGEFEFBBBBBABBABAAEBBPCCCDBZCEFFFDDEFHFYQJMJIMMGMKLFIJMIFDEGEDEEKJMFJJNKJKLYcMQPSTRXUUVXYPMaMLLLKHJFIHODFCEDBICXBFFDEGEFFFFIHJJJHFIJJDFFGDGFDYBDDDDBCCCCBEBFDDBBCCCCACBADABAB', 'CCDCCFECDCEECDDEFDGDEFDDBCCCBAEAAABAADBCRFBFEFBGHDGDGFFGGFGGKLJKMKKMGIKKFIIGFIIEJNFGHFNHKILNLLOMORRTYSTVZPrOMSNNNTLKIGIGDYCHDDCCDBBDECEEIEEGDFIHHHJHLKEHGKDEGEDFCCGBBEASEBUBDBDCCCBCBBBBBAXACATB', 'DCDECCEFEEcEFGGDCDFKJCGCEBPBDCBCBBBBCBCCEBjDEEEDDGFHFIHGFIIJIJKKKJLPMLJJPHNGLGHFHKICiUIKIJLKMNNPRPTSSWXWRbnQYZMLMJKPJLGIJDEECEDCCDEBDCGDDEEEgFHGIGIJFIJGEOFEEDCCEBBBCCBCAEFBCDCCBCBBBVBACBABATAA', 'CCBBBCFDEGDFGFENWEFDEFDDCCCBCBCECCCCDBBBBDCDDJGFIHGEIGGIJGGKKLLLKKNJJLJIRFLMOFHLGIRIGEJJLLLLNMPRRSRXVVUUVWPVRNSMNKJONFIJFLEDDBEDCBBCDCFEFJFEDGHGGIGGeFGIIDNBNCHHBBBLCABBBADCBBDBBEBCCAABBABACACD', 'CCBCBCDEQLGFGGKEDGGFFGGFCBBUBBDDDEEDCBBGBDEDGEFGFHGHKHKJHMLJIOJJKNWMLJNHMLWOGIGRFHGLJLLKLNKNOPQQRSSUVXSZWXRcVPORLLKHIJKHIDGDDCDBBCCBFCEEEFHFHGJIGJHIKFIGHEDDCDCBCABACBCADCZBPBECBEBCBBBBABBCAAAC', 'BCBBCCEDFCHFGJGGHHEGFGFEEEFBCCDBBCCBCCBBCCEEFHGGGFHLKKIKJNOJKJLMJJJIKRLSHJDIHUUFGJIJJJJLMJROOQPRRQRUTTeRTZTdQSPPMKJJJMKIEFDDCBDCCCCHCECEFEJGHHFHKHLHGGIHFEEFDBECAABABBADBABBDGCIDDCCBAAAAAAACABA', 'DDBGBCBDFGFHFFHIDIHIHFICEDCDCDBECCBEDBDECDDIEEHIGKLKJKNJKMKJJIJIbEIRQMPKYJPGLMIHKIJHNKNNIPPQOPQRQPTSTUQaVRSURPTOOMJJKGEOMDGFBCBCDDEBCIDEDGFKGIHIIHIHFHJGFDGECEDBCBBBBaBFBICCBBDDBDFBBBBAABACAKAA', 'CBCCCDEEEIEIHFIIIEaIKHEGEDEBCBCCCBCBBCDDHDEGGIGIKKLILKMJKLIJLKIGNFKHJLPPLILLILIJJIJLKHLTOOOQSPSTSRSSSTVWZXQXSOORLNPILIJEHDEBCBDBCHBEFCDEFFGHGHIEHIGJILHEGFGCEEBCBBBAAACMBBIBEFFICCBBBAABBABAAKBA', 'BHDBBBBEECFDDIELHEGIIIFECFCCCBDCECCCCEECFIFEHIKIKMNMKMINLJLHLKKIGHGNKHOQLJqJJIJIGKMIOMLPOQPQVSRRSUTRQRVPlQZRVYOOPKIYFJJFEFCEBBBEDBCGDCDDGHHIKHFiFHIFGGFJFDDSCCECCCCBBBBBCBBDCDBCDGBBCBABBAABDACA', 'CRBBCFCDCGCGFDGFHGHHHEEEEFEBEECDFBDCDECFDGKFHIIMKLMKNKMLKJLIKLKJIIHHKKJHRKKLLZMIMKMOIPNOQSSTRSSWTUVUUTTTRQgXRQQMMNONODFFEFEBCCBEDCBCDCGCUGKIGHHEIGGGFFGFDFCSDFCFCBCCCBDBBCCBCDTCCJCBBEDAABACBABB', 'BSLBBBDBEDFCDEFHFGHGGIFGEJCgBEHEDJCEECKGIIHJKIKLMKJNLLKJKKJLJMJIFJIJJJJJKJIJLLHJHIJLLMNepPSTSTSTWRTZXSjRRVTOQQOMQOLLFHEDFCHCDCVBCCEGCEDEDGEFGHIGFeEZIKEIHDFCCCCFDCCCCBDBBBCBRBDCCCBBBBBBAACAABBB', 'EBBBDBCCCCDCEEFEGHEFGFGFEDDCEEFEECFDEHDHLKKLIKLLKKgPJJKLJKIIIIJHIFGHIIPhJKJLJJMKKJJLLYTPWTRVUTUcXSVUTUTTWTQWUQSNOLPKKHFFFLBEDCCHBBDBDFPDFFGHHGIIIEKFGGGDHFEEEDCCCCCDCCBBBCCCBCDEDBBCAABABCBBCACA', 'DCCBBBCLBCCCFEEFFGIECDGDECEEEDFDFCEDEDGGFGKJIJLKLJJKLNJLLMKJJKGGGGFHIGOHOKMKMKLKKKJKNRTQRQRYWSUVXXUYXUXUnUUXQONQOKLMHRGEBGCCCSQEDYBDCCGFFFEEEFHHGHGGGFIiDCDFECQGCDCCCBCQKBBBCBCBCBBCCEYAAFCABCCB', 'FCEBCCBBECCBCCFGDEDDGCEFDbECFEFFEEFEENHELHHHKJKIMKJLJKLLKKIKGGIQFHFJKMNJKHLLLMJMJLLLMORObOTTTRUWTYWbVYUbYSTQRQUQLXIILGDFEBBCDCDHCCEBCECDGCJCEGFFIJGGGFEDGKFCCCCCCBDCCCCBBDCCBDCCBBBBCBBCCBABBCCB', 'BDJADCACBBCDDCDDCFCDDEBFFCFFEGFFEFDDECEEFGFJHIKMIKNKLJMJLJIJJHFDcHIFKIKKJLIJKLKIMKPZLLOQORdVUVVWYUYUXWTVTUSSQMhNMKKKLKIEFCMRDEGEFKBDCEEDDGDGEDEHFHGHGEDECNCDDgCDDBDCCDGCCBBBDCBDCCBBZBBBBCBEBBGB', 'CCEEBAKACBCCCCDDDDCCEDDCCCGGDFFEEFDEFDEGEJGFKHHKNJLLGiGKHJJIGGIIHIHgJJMKKJKIJILMMLLKMLdSPURVUVVUXVeZWSUTSRTQUQQLYJbPHIJGFDFCFCGDEDQCCDCHDDDFGEEHFDGECGDEELEGECDCCCDCCBIDBQCHDBCCCHFCBEDBBCBBCBBB', 'GBCDABHABCDCDBCDCBICBDECFEGHEECFCFFDEGGFHGFKHTVLJKJLJJcGIKHIHJHGFJGFJJJNLIHKKIMHMMLOOOLNRNUTTUwVYWWYUTUPRRSNOQGOLIHHNIFHEDHHHFIFEGREDCMCDCDEDFGCGFFDCCCICOFECCDDCCBDCEODCQDBEFCCDBKBDBCFBBBDDBGD', 'BDBBBAABABBACBCFDDCBCCCCBBECGDECDDCGIEIJJILLIEGKGJKHHJMJIHIEGIIGIHIHKHKIHLLJKIHfLLNLPSQQQSSSUaRSXZWVVSTRQUPQQIkILMLOKKkDGJEDEGIDICCIDDRCCDFCGECFCCEHHFNCGECCCDBCBBMBEBBGCBCEEBOKBBBEDFFCCCEBBBCE', 'BABBACAABABCEBBBBEBcCBECDCFECCEEFDfCGGFJGHIGGKHFJKHKKIGIJHOKHHIHIFIJIGJIIJHJJSSMOKWQOQONRQRUZTXWSWXWVVRSRQQSMPSHOKNGaGFLIEJQFFCgCGGDFCCCDFCPCCHFDDCFFDECDCDCBBXBCCBLCFDBCCCCFDCCBGEBCCBBBECDPKCB', 'ACABAACAOEAACBBBCBCBBBCBCBCCDEDCECEEDFGIGFKGGFHMREHIGHJHHGPWFHHPHGGHFdGHIKKPNNTPWOLRMRRSRSRRRRSSWTZSRTRSOOQOQNHrMKJOHKHIHMGFFFJDIHDdCCCHDDDJDFCEKFEEHSDDFDCDBCBCCBBBBCDCBCCEGCFBCDDCDFHCYBBFBBFB', 'AAABAAABGBBBDBHCCBQMBBDBCBCCCDBDDCCEEDFMLRGJGFHFefEGHHIHGGIEHEGEGHHHGGGGINMKKNSMLQNLTOQOOQSVRZYQUSRUSQRPPRNMNNSKJOQKJHcDHHIGFDMDFGICCFDFCDGEFIDDDJCBDGBEDCCBCCBBBBBCEYBBFEBDDDCCCHBEDCBBBDBDBBBC', 'AAAABACABABBBCCCBDBCDBCBBBCCCBCBBBFBDFEEFGGKHGGJGDGHGHHIFFGGHGGEGGGHHHHFGEIJMKPOOMQXOSMTOPQOOUNYOQQORSQSMPMMNNMOLMXHNKHKJEIEFKDMECFDECFDCDGCCDCCLBCIDDDDCCBBCBCABCBBSECQBEDBBBFBHEECDBECACiACCCC', 'DVABABDABDACCBABCBCCBCCBBDACCDBQMECECCFCFFIIEKHJIIGHIGLFJGMEHDFHGGHHIIHGFIIHKHPVKNQMPQPOQOQPQNqOQOWWNQMNMONONPMMLLLQHMHHHHGFFGDRCFEEEDCDRDCFCDCDBDBBCBDBCBDBBCAABABEBDCBDCCCBDDCCCBFECCBGJCeABCA', 'AABABAABABCADCEFBCEBEBAVAAACBCBBCBBCCCDFEEFGIJHFHIGIFJFGHDIEEJEGGHIIHGGHIHHKGPLQNMKNQLRQNQNQNPMONOMNMLRNMOMNNNOLOJILMGJGKGDFDDHEECFJCDDdCDECCCNCCDFBDDBCCEBDBABADCBHDEFDBBVBBDCCCBIBJBBBcBAACIAB', 'BABBAAAACAAfBACCEFBABCCHAXGACAFCDDVCCCDDEFGGFbMQGFLFHJKIFFGFFLHIHHGGHHHFFIIFMIKLLSURRQOPPKOLMOOLMOMNONMNNOMKPJLOMPHINEPGGFGDMNCCEFCEECDCDCCCDCDDCBBFCBCBCBCCBDABBACOCBBCDBCFBBBCEDDCBCDAABBAAKAB', 'CABCAAAAAXBVADCCBBBEDAAAARABCBGBBOGFCCDDDDEFLNHHKFFJIEIFEGFEDEHGFIJIFEGIIFIFGLKKMMQMQSTVPMPMLMJlJMLMLLMNMLNKOLLLGIIJIIGJGJEDDCDDDBFCGGECCbEDEEEDBBCCCFBBBCBCBBCBABCCACCBCBBBBBCECDBBBBAWBABDDABC', 'ADAAACABBAAABADCCEEBBEECDAACDAGBBBBCFCDDDFEEIIIGMfGIHFGGFGDGFIGFHGGGHHGFEHIHGHJLLOLNVTQSQPONMMMIMJOKMRMLMLLLKLKEkGLHHFGFFDHEDFCECBDBDECFCCEFCECECCBEBCCBBBCBBCBCADACDABACDFCEBDADCDDABDABBDCDABB', 'AAAOAAAAACAAAPADDBEDCBDBACBEDCEBDFFCCCCCEEEGGHIHJEIHIEGFKEGCFFFGFGHGFEEFKFELIIHKOLPPSQUTTSNMLJLJYIJeIPJMPRJOKJJHTFHKHGIEFCFECCECDCEDCDEDEFEICDCCBECBCCBCBCDBCACBABEABCBBABBBCDBBBACACABBBBDBBBTD', 'AAANAAAAAAABCBABXBFDEBBHABABAEEHKDGCBBEFDDCGGCHHIHJFEMFKEGEFEDHGIHHFEFEHFEGICJJKbJNQLONSOXPJMPKLXJLINIGIRILHHkFLGEKHGGHEFFCDECDCBBDCCECDECFCXCECBBQBCDBBBCBAEDBBCBBABFAFCCEEABBDABDCBBACAaAABADT', 'CMMLABBAACABAACABEBEFEFCCCBDADFHBGDQUBCCCCDECIFHEIFFGFEDDDDCECFGEMGFHDMHEIFJgHJHSMMOQiNWLPNJLJNIIJNHMILIHGFJHHHGDIEHFDCDEFDCJCCDBEBECCFCCEDCEECGDCBCFCECCOIBADBCDCCBBBFAAEACBACADBACABCABCBIBEBA', 'ABCAeAACVGCABCADBGYGDFIDBCBCDGEGBBLBBCEBCCEDCDCDHDKHEFEGFCCFDGEDGIEGHCFFHJKIEJIKINMMOHPLOLQLJMJJKKHMKIIFHHGHIHGJFIGFEGJCFBECBCCBBDBBECFFFCECCCCDEBGCCCEBEBDBBBBBBCEADCBBCBHABBABAACABCAcBBBGAABC', 'CAECCABCCACCBBCDBBBBBDFBECCECFEBSIBCBDDDECCCFCEEDFEEDHDDEEJCIDFFCoDSNIKJJEIGKJJMKLNNOMKNLOONMMIIGLIHIIHIGFFEFHIGHFEFFECIFgBDDBFDCBDBDDGECEIEDBEBBCBCBBBBBBCCBCBBCBBDABABBABBBBBBACBCBBBACBBAABBE', 'ACBABFBBACBBCDCBDGDCNCBEBCBBCDDGBBBECBCECCEDCECDCFEWHEDGDEEGCGHFFFFEEGEFGIGNGFIGNRMMOMPKNNJMKJIJHGGIGGGDEHEEFFFFDGKDGEDCCDDGCBCBBFBDDDCCEFEDCDDDFFCBBDKCBDCBACBCADCDAKAEBgABBCCAABBAEDBDABBBABBA', 'CACCALAYAEADDBCCDEFCBBDCCBCCABCBEEGDHDHDDDFGEDEEHDDDGGFECFECFEEDEEECIFHLJJZLIIFLGVLKKKOQKPJLLFgGEJGHEHGFDECECFGGPCECDPCCEBBEBDBCBCDFBEECECDECCBHEBFDHAABAAAEECKABCACNCBEABBABAABBBAABABBCDCDBAAB', 'CEBCAAJBCBDCBFBFBCDDDEBCBCBBDDBBDBDBCCBDFBBFDDFDEFGJCGGIEEJEECFFIFDFCGEEEJGGIKMGKIMLJLLOMLKKJLFGTGGHIDEDEDcUCCDECEDGHCCEFCBDCCABBBFBEEDEEDCECHDBDCBCBCCABCEACCAfADCEBDAAAACCCCDWABBBCADBEADCABAA', 'ABAAHBACDBBIDCBEFCDDABDBBBCBBBBBDBRLCEECCFNPDKDFFDDDFGGEJEECDGFJDIFGEEFFHFEJIGGLKHILKIMROIMJIGIDSDHFFGCFFCCDBECCEEEEDDGDBDBBCDDBBEBCCBEBFFEEDBFBBFCADBEAQAACABDACCBDBBBMPABBBBBDAABAAAABACBBDACA', 'BAABBABBADDDAHIAFCDACAABBBABCBBACBBBFBCEDCCCDCEEDIFFEDIGHEJDEEFDDECGEGEDiCFIFGHKJJVGKKMPLLJGLKIHJFFFFEDIGFDFCDFDCICFBCBCEAEABBCBCBCCCCDHECBDCCDBBCGAABEAABEABCDCCBCDBBBBCAAABABBBAAAAAAQABDACDCB', 'AZAECCDCCCEBEBACDABDABCAAAACCACaBBBECBCGDDDCECCEFGFCFGFHHCEEEFCDEDECJCLFCDFEUREMYGHHLMLJJJIJIIHEFFJDGEFCEFCCDCBCACBGBHDCCCCCACBCBCBCCBDCBhBDCHBCCAACCAABCEABCGBCBDCCCBBBBJCACACABBCBAAAJBACABACA', 'DBCABCCACDBBCCBDAWBABBABCCBADBDBCFEBCHMEDCDECCDDFEFICJFFCiDEUCDDDCCHDFCGDFFFCDHHEGFIHHKKHJNHIFFGHEFGCDEEDBCDBBDBDAECCCECEBABGACMBBECCCBEBDBDDCBDBDBAEDCBCACBCABCCBBEDBCBBTBCACACCCDAAMYAAHBADEAD', 'AACDCDAFAFEDAEPADABCAAACBABACBDCGBCECJDGFFCBCEDIDCECECCDTCGDCFCDDEDCCCDCEMCEDCGFHDIHHKIFLLIFKFHEIGICPCDDCCCBCBCBBDCBFCBGCDBDCCBICEDBBCQBECZBBCDCBADAXBBBCDCCBICBBDBBBCCBDBCFBACCCCBAAKBAAEAIGEAC', 'CABBBDBDAACBCBAEAJAFBACABABBABCADECBCCEBCBBDBDDDDEFCEFFCCEEDEDFDDCCCDBBCCDCCCCCFEFJFDDFILIJHDHFGDHDEDCEEEEECCBCCDBBCFDGEDBCFABBCBCCBBDBEBBBLCCDCBBBCCBDCCBBBXBBbBBECDCDBDDDEEDEBBCBDCAABADBABBBB', 'ACACBABEADAEABCBCADDDBACAfACDBACBCBBBDBCBCCEFFBCCBDDECCFCCEFEHFCFDCEDOCBCBGBCQECECEDNVFEHHEGFFGDHFEECcCCFDFECCEBBCCCMDCBCCDACBCBCDCCOBEBGDCCBBDFBDBCBBCGBBDFBBeBCBBEBECCCGDFBLBaCICBBACSCAADBACB', 'BBGABBBAABAACBDACECDJDABCBCAAABBBBBCDADBCBCCBBCCBDDDCEGCCDEFFEEECCECCBCECBBDCFCCECCECDEGEFIEHEEFEDEGFDHDDEECDEBCBCBBCBCECCBDFBCBCBCBLCBLCDCCCCGDDBCBGCDBECCBBBBBBEBBCBCBDCCGBEGBGCFBABAABGBBBGBD', 'BASCAAACBACBACCCCARACCCCBCBBACBARBCBBFCCBCECCBBCDCBCcBCCGCEDHEFFEBGCCDBCCDCEDCbCFECFFDFFGFGHFFHDCDEIDgCFEDDDBECBCBDDBBCBCBBBCCRBCDCDEDCFEBDDEECCBCCDBCBCBBFBCBBfBBBdBCBCDBCGEBlDBMABBAAEBBCBBEBA', 'BABCBADABBBABSEBCDADDBACBDEZBAABEBBCDBCBBACDBCCBBCCBBCCCDCFDCQCDHCCDDECCHCEBEEDCCDFCDDEGEGGGDEDDXqCHFCEECGHECDBECZCCBBBDCIBDBBBDBCCDFBDCCFFBDCBBBBDBBCDCCCCCCBBBBDCBCBBBCCBCCFCBCBCBCACADBCEKBBC', 'ADDACCABBABBAADABHCBAEABBBFDCIBCCBEBCDACFCCBDCFBCCBBBBCCDECEGDDFCJNDDDGCCCCDCCECDCDCEDEFFEHDGDFFCDPDHEDWKCDCDCDEBBBDCBCBBCDBDDBCCDBEDCCCEBDDBCCECCBBCBCCDBCCBCEBFACCBBCCBCBBEIGBDCDBABAABCAVCCBC', 'BCDBBABBBBAABAFBFDBCBECCECDBDCBABBBEHADDCDBBDFBGCCCCCCCDBFCDEDNHCGBFCDDKDEIEDGECFDFCDCDCDFDHDGDGHCFEECEDCDEQCDFBCDCCBCBCfBDCECKCBDBDDDCCFBBBBLBBBBBCDCCCBCCBCEBDBYACCBBCCBCCBPBDBDBABAACAACACDBC', 'KBDEBFCAABBBDBBCBBBCCBSFDCBDIBBCCBBCAGGADAEDDCCBBABCBBBCKFCDFCCGCFSCECCRBCEEKCDECDDKMCECEDGDGCEDCGFEFFDECDDQGCFCCCEBBCBCCBDCCCTDBCCBDCDCBEECDBCBCBDBBNDECBDBDGBGCAdACBBCBCBBDBEBAAABBAACABCDHHBE', 'CCBGBBACBAGDDCBDCDRABECCGBTBCBBBBKGBBCBFBBCEHFEBAAAAABBBGCDDBEFCBDBSJDEBDCCbBCECCEEEDDGFEFEFDFEDDDGECDDDFCDCJFCFDDCCcCCDBEDCECBXCCDBDCDCDCCDBDBCBCBCCBCBLBDEBCBCAAAAACCEBBBCBABCDABCACAAABBCBCBA', 'DBDCFICCACCBBDBBBABdFBEBBGHBBGCCBCBBLBBBFBFFBGCBCBBABBCCCFBBDCGEJFCCBBEECBCCUBBEFCCDDFDCDFEDEFFFECDCDIEHCDFDDECDCCDDBCDCFCCDCEDCBCCCCDCDCEDCCBDBBDDCCFBICSLBCBBDBBCBCACBBABAACBCDKABACBABAACDBAB', 'EDFCFBEADGBFDBCDKFESECQDFBGDCEBEQCEFBCDBCBGBBECECBAABBBBABBBCBHFGBDEfFCCClBBLCCEBGEHDCIDDDDCEEFFECDDCCDDECEFDCFDEDCCDEDDECECEECBCCCCCDCECCBDCCBCCBBBBBXBDFCDDBCBCAABCWACBABAABBBBLAABABBACCBBAJA', 'BCBDBCBDCCDBCCLBICEJJGNKKICHBBCBBBCCEBBCBGBCCBFBCBACCBABBACBEHCCFCEBCBCBBBCDBBECJCCCDEDCCCCDDDDEDDCECFERDDEDDFCDDCFCDCDDCEDECECDCBDBCCCDCDDCCBOBCBDLBCHCFBDEBBCBBCBBBADABABBBBABAAEAAAAAAABBADAB']
pieces_du_faucon_millenium = {'~': (255, 255, 255), '`': (252, 252, 251), '?': (250, 249, 249), '/': (246, 246, 244), '>': (244, 244, 241), '.': (239, 239, 237), '|': (226, 227, 223), '_': (210, 209, 204), ')': (202, 202, 196), '{': (219, 219, 214), '-': (199, 202, 201), '&': (188, 193, 191), '%': (183, 186, 182), '[': (221, 217, 204), '+': (215, 213, 204), '(': (202, 200, 190), '}': (227, 223, 212), ']': (220, 217, 206), '1': (152, 152, 145), '*': (199, 196, 185), '7': (176, 167, 154), 'a': (83, 74, 65), 'k': (109, 101, 91), 'y': (144, 140, 136), 'x': (142, 135, 134), ',': (238, 236, 230), "'": (234, 231, 223), ':': (237, 234, 224), '$': (185, 184, 176), '!': (177, 176, 167), '^': (191, 190, 181), '8': (174, 170, 161), 'S': (54, 52, 52), 'h': (96, 93, 88), 's': (133, 125, 115), 'p': (121, 115, 107), 'w': (145, 134, 128), '4': (162, 159, 150), ';': (232, 230, 219), 'j': (111, 100, 82), '3': (157, 156, 147), 'r': (126, 123, 118), 'V': (58, 59, 60), 'b': (77, 77, 74), 'i': (104, 97, 89), 'W': (75, 61, 55), 'o': (121, 112, 106), '<': (243, 241, 234), '#': (187, 181, 170), '@': (182, 178, 169), 'I': (19, 22, 28), 'M': (33, 35, 39), '0': (149, 148, 141), 'u': (137, 131, 122), 'D': (4, 10, 17), 'Q': (47, 46, 46), 'e': (91, 83, 77), 'f': (94, 87, 80), '=': (211, 208, 194), 'v': (135, 132, 126), '5': (163, 160, 154), 'z': (147, 144, 135), '2': (159, 151, 142), 'R': (48, 49, 52), 'n': (121, 110, 101), 'J': (20, 24, 32), 'U': (60, 58, 57), 'g': (97, 89, 82), 'T': (71, 51, 41), 't': (133, 129, 115), '6': (161, 166, 161), 'l': (110, 103, 99), 'Z': (73, 73, 71), 'c': (91, 78, 71), '9': (174, 175, 168), 'q': (123, 121, 112), 'P': (58, 36, 33), 'm': (117, 108, 94), 'X': (65, 65, 62), 'd': (84, 83, 79), 'N': (45, 39, 31)}
soudures_du_faucon_millinium = ['~~~~~~~~~~~~~~~~~~~~~~~~~~~`?/>>.|_){.~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~{-&%%[+(}(_]{1*7akyx>~~~~~~~~~~~~', "~~~~~~~~~~~~~~~~~~~,,)&+':(-$!^&{^*8kShspw4y8,~~~~~~~~~", '~~~~~~~~~~~~~~~~~~*)8(]|%-;xjp1)[(3prVb477skiWo[~~~~~~~', '~~~~~~~~~/+_[:?<.:$_!+#[_{[}^p&[)@sIM30ubDQefokuw~~~~~~', '~~~~~~~;)&;{-)^&_(]++}$+)=;;;**[+8#83kIS=vu58#8z2k=~~~~', "~~~~~.0=&|}=(_-[{_-[--_}[]^&2%|w-'{((%2kRenRJUjgrWan~~~", "~~~~}Tu};^&(8tv#56^&)(]][}}='|[?,+***=62ru0v260xx1waw~~", "~~~'y5lu$^g$#&&$6-==)((-+{%=57%0Z*=::^7=--{[6=&)*))=6_~", '~~~2wyacrsx(8{+((]Wwx&%-]}-+=3lb&,|[2$=8*+=-)+(=)=+[60~', '~~~<t138zt!#^_)};zpo1-_}{-[-=[^7&^65$&@@;#r5@$%**%*=+){', "~~~~<+[_;}!)-=-[+*)|{}[].=|{}%()%{'0_&+]3]1ocgt'{_&^9=~", '~~~~~~~~;=#}-=(}[6__=_|_{[}&$!!-]{}^(_*%_^]}(s)=-=_=&6~', "~~~~~~:+-qok]&&;<+))|-}++_2u#1y09{}[-[##){9s}-'{=$)__3`", "~~~~~~$4'+1#3z']%-][{=*_4w]+@x53z{{'+]:$]%]_(@@'(&))_|~", "~~~~~']]|{_[]==()+-)=]%5|];$%!@85[__'_='+w$}3wuy-+]{8(~", "~~~~.*xqz+}_=-%&=*-=*9#[_'^#-*8%^[=*'{_|,*=8o+_zz!{}j~~", '~~~/&]3bw)[-{(!$){$sv_|_|+}}*-=(jv+]=}1_}})n#={+58!ut~~', '~~?(}_]%6[4}(__$3yeP]#|:__-=@ign#)&{!^z-)*_6*=!vt$&m>~~', '~~&)=!v8zXRo5#%nVoela()7)}=(){-=[]_8(%:}*+_]9(own9j+~~~', "~*[%w8vTWeUWocv0_''x#@zv$^@$*)(;-=;+_,;;]=++@y2g$~/~~~~", '])10wTZfXR1xr6&_&[_}{]g2R!_-_-[#}&-(|;}{+!98y1Up~~~~~~~', "9|cWiaZTy|%6*+xXQu;]{;)=@'|;+$#m#5_ww5o5x783,~;~~~~~~~~", "%5rpdNr+#5%[[{_n4^]:'2{(&4y-438v@*88h!00rrmt<~~~~~~~~~~", '|&bXy<=5-;=_]__+[(@165s31xius%@n8(&%7vu0(,?~~~~~~~~~~~~', "~|3`~'_=-))!5590qvtsqtp774c$^*(};9'~~~~~~~~~~~~~~~~~~~~", '~~~~~4-@$yy2zvi0o0jcu29%}.,~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~)!#9061jnt20][`?~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~<#8545#,``~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~']
pieces_de_l_etoile_noire = {'~': (255, 255, 255), '`': (252, 252, 252), '?': (250, 250, 250), 'm': (108, 108, 108), 'f': (88, 88, 88), '9': (172, 172, 172), '5': (160, 160, 160), '^': (187, 187, 187), '8': (169, 169, 169), '0': (146, 146, 146), '1': (149, 149, 149), '6': (163, 163, 163), '(': (195, 195, 195), '|': (224, 224, 224), ',': (236, 236, 236), 'R': (48, 48, 48), 'X': (65, 65, 65), 'q': (118, 118, 118), '3': (154, 154, 154), '@': (178, 178, 178), 'n': (110, 110, 110), 'd': (83, 83, 83), 'u': (129, 129, 129), 'v': (131, 131, 131), 'w': (136, 136, 136), '7': (165, 165, 165), '2': (153, 153, 153), 'y': (141, 141, 141), '!': (173, 173, 173), '=': (204, 204, 204), 'O': (40, 40, 40), 'Z': (71, 71, 71), 'g': (90, 90, 90), 'Q': (46, 46, 46), 'S': (51, 51, 51), 'r': (120, 120, 120), 'k': (101, 101, 101), 'V': (61, 61, 61), '4': (158, 158, 158), 'x': (139, 139, 139), 'l': (103, 103, 103), 'b': (76, 76, 76), 'W': (62, 62, 62), 'a': (75, 75, 75), 'e': (86, 86, 86), 't': (126, 126, 126), 'z': (142, 142, 142), 's': (123, 123, 123), 'A': (0, 0, 0), 'M': (35, 35, 35), 'T': (55, 55, 55), 'G': (18, 18, 18), 'D': (9, 9, 9), 'E': (12, 12, 12), 'F': (15, 15, 15), 'C': (8, 8, 8), 'U': (58, 58, 58), 'p': (116, 116, 116), 'o': (113, 113, 113), 'i': (97, 97, 97), 'H': (21, 21, 21), 'Y': (69, 69, 69), 'c': (78, 78, 78), 'j': (98, 98, 98), 'B': (3, 3, 3), '#': (180, 180, 180), 'h': (93, 93, 93), '%': (185, 185, 185), 'K': (30, 30, 30), 'L': (32, 32, 32), 'J': (27, 27, 27), 'I': (25, 25, 25), 'P': (44, 44, 44), ')': (198, 198, 198), '/': (247, 247, 247), '>': (244, 244, 244), 'N': (38, 38, 38), '$': (183, 183, 183), '&': (191, 191, 191), '+': (209, 209, 209), '<': (242, 242, 242), '}': (222, 222, 222)}
chantier_de_l_etoile_noire = ['~~~~~~~~~~~~~~~~`~`~~~~~~`~~~~~`~`~~``~`~`~~`~~`~~~~~~~~~~~~~~~?~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~`~~`~~~~~~~~`~~~~mfm995^8016(|,?~~~``~`~`~`~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~``~~~`~~~`~~~RXq3@8nduvdvw1uw77972y!=?`~~~`~~~~`~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~`~~~`~~``OZgQRRSrkVr!46!7@753225xx6?~~~~`~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~?~~~~`~~~31lbgWaOe2t0z305145431zyy0yuss~`~~~`~`~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~`AqWAMOOTGDEGmmmmds4w1v1uzyvw0stqmf~~``~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~``~`~~nvkrxgEWWRRFCDCUMdXmpz0rxuvpoo0tnmnmiX~`~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~`~`Fsf47y1HTlTHXUYcddenjnw4nsvspnpornililgWt`~~~~~~~~~~~~~~~~~', '~~~~~~~~~~`~~`~~~~~~~Bxt84x#TCEAOswu0x00wrou3npqmqmmljjjhfdcZXa~~~`~~~`~~~~~~~~~', '~~~~~~~~~~`~`~~~~?~~~~U%@460MAKFfbrnRsxurruyziompjiliemigcZeVSLC?~~~~~~`~~~~~~~~', '~~~~~~~~~~~~~~`~~~~~??ACJ3302UTrtvvzmlv1qvwrlopnhefldahbeZZVSIHI~~~```~~~~~~~~~~', '~~~~~~~~~~?~`~~~~~`H~~Wf3@slVs2oqrj8xzzwtnzujnmjjfZeddaUWXTXPLGE~?`~~`~~~~~~~~~~', '~~~~~~~~~~~~~~`~ABjho`)6p7HHAZox32tzw0xyzsrpnjlilgcaeYUXRVQUQIGJ``?~``~~~~~~~~~~', '~~~~~~~~`~~`~~~/APgls#qewOEAKGr464y4yyzptmqsutjXQMOSehZYPJPIMHGHHHIA`~/?~~~~~~~~', '~~~~~~~~~`~~~~>~oUadrniuZBFSjTz2w2010zwrrrqrlCBDFGGDBILRTMIHLLJGHJDJ~~?~~~~~~~~~', '~~~~~~~~~~~~~`~ACOEIJEGPDo3@733vxy52yvpnpqcAAGHGGFGFHGFDGNJJLMLHHKHHJ`~`~~~~~~~~', '~~~~~~~~~`~~`~4HFOVJKKVVFAuoleo3zu!rwxqvtlDBGCGGFFHFGFGGJHIKIJLLJKLLH~~~~`~~`~~~', '~~~~~~~~``~`~LfqeceUWaqeMDLPWDUYmql0vrptveBFDGFDEFIHGFGHGGMJGJIIIMHMMIA~`~~~~~~~', '~~~~~~~~?`~`DCLBFJJLCX0olirpdmwrxwyppqlwcBHHGGDGDDFGFFEGGHIHRJLLJLKJLIJC~~`~`~~~', '~~~~~~~~~?~~EFYobYVX8$6$561yyxvywxurqghwAFHDDFIEECEFGFFGEFCHLOMJLKMHMGKGA`~~~`~~', '~~~~~~~~``?~BDQVgfZakglgXi@y00o0r0jqlilkBFFHCFFFDCFEFCDGFGGFIRIMIKKKJLIHI~~?`~~~', '~~~~~~~~~~~~FTMdhaecCfeZklj2zpt0qwmnjemTEGFDHGEFECFDECDDFBGEFLMKKIKMJJGGHD~`~``~', '~~~~~~~~``~~AJNYQaPOP5192wwzuawvpuwroiiIHGFFCEFFGEFDFEDDCHCDCNTJKHIJLJHDFIA~~~~`', '~~~~~~~~`~?~HPHKNLTK@vox@z1zrusrldTTiikMIHHHGDDIFEFFDDDEHFFFCOXLKJILHIHIFGG`~~`~', '~`~`~~`~``~AKHSMMJUVJTm0yxsuswtsiplfddkLGHIIHDFFFHFCFDDDHIHFCKbNINGKHILHECA~~~~~', '``~~~~~/~~AGWcnHCILLJEPPLdVYhwvtlmegfgeOBFDHHFEHFGDCGFHEFFEECQfRKLJKLLME?~~AN~`~', '~~`~~`~``AFXjZuSRmirhirlkcSkktnkkifffdaaDHFFFHGFFGEFHGIGDGHGDLiSLIIJKOMF~>`~A`~~', '`?~`~``~BAPRNLGMm$5&250p10hclpnhgdfdhdYeFGGIICFGGGGFFEGKMGEBDRkTQLOKNMOG?~~~`~??', '``?~`~~AOXgcABSlv352qqxq7KcmUcXhhecacaRZXBGHFHFDEEGFFFDLKIKIGZcMGGFIFHIB~`~`~~~`', '~~~~``ASjTXHDLOUepPmALOQmafspjjgaZcbdZRXYQEHGDFGFDFFGGCIJKGGLbaKEGGHHHLDA~~`~~?`', '/?``~BFYhbPWQFRbskSlgjOHUfeqqllifcbZaWSTSQGKKDDGHFEFEGGGKLJLWZUHILGHEGJGIAA~~``~', '~`~~aAZrsgbaVGIKmdZsjrzwhkmqpfdgedZaVWTUQRQJGDDEFFFIFHICHGRakhKIJLIGEFKJHLKB~?~`', '`~~AAO+$TYMFINNRQWKrDR5yqjsslccdcaYaWVUUOSTKDGFGFDCFFIKGHNbgpcHHHHGEGGJJJHHGDF`~', '~~xGYjfRagkPRQUYdadcVeQGPObIejfdcYWWVWQOLRNLKNHGFCDFGGJSZbendFKJHNFHIHLLHDFDDA`~', '`qtAIfmoWoMVSdPabjjiUVUghglbeWabeXZVUQOOHRMJJQPNNRQNOTZdeegRGLLKIPHLKHKKKGGGDFF~', '~Upkkwhmt1mecYgANiuxw4ssnfrqhTdddXXTRSPKIIGFDFJIPXagjimaWPFBFNKJHKPQMGIJGGJJFGC`', '~fls1fff0ykfbSenhekkUosrrmrngZcbcUUSRKLHGKJHBGGFFIFLPNSGEGHHHPMLKJOMMKKLIHHGIIA~', '~zmosn5x65YOAAi4mueRmZuwqfwndYdbcbUOTMIFFFKFIBGLHKDBEGIBIJHGDMLGIQMKKKKMHHEIIKA`', '~2z0wo@xzfqpstlu5063uwpoalnngYXZYSPSHIGGGKEFCFHKILGGHJKFGGGHIPKKDSOPKHHMMMIGHJA~', '`x556iz06anyys02xw11svtldlokhWYcXTTJPIDEHIHHDBKKIMEGFJOEJHHGFOLKKPHLKKLMLKHLPIC~', '~3x26$9680s4psyvwswxvvnVPmnkfUYcZPQLPHDDEGIKCEKIKOGFHLIKMNRLNNQMLUJKNQRSRPPPONA~', '~w@7voqruvx1039794623ztgqjnmffeZcWVPPSONRMRQPQOQOLTMPQTTUSTSSVQMQSNOMKGFDGFEFFA~', '~kufs4ywx4xz36zzzwz3923yztsplmnfbaZWOOLMKVPRNPQIMVNSNTPPPPOSRTTTRPPSONLLOHJJMJA~', '`Zjjn1zslsxbollwslpjjpojghedeYXVTQIMNLJIJKHIKGJIHLCIFANPQMMMNKKLLJJJFGIIMIEGOLA`', '~QPhY0uqlqyhnmlvrurigmifdXfdaURQLMIJOKGFJHJHIMGFGKHHHEHFQLOLMKGJHKKJGHJKNKLFFCA~', '?mHKNjloYXaNYmmtjgnjgngfeXcaaVRSPPOIMJHLJNHMFJFIHMIGLIGKNMHJKKOQHMMLIIGJLGGIGA~~', '~!AKcPgiSLOHAccYcXidPUidcYMUdTRRTPKKQLGDEMLMKIFKMPGHHLPGRRDIJIOKIMMLILIMJDEBEA~~', '~~AAAPcZCeUeBAERAKafneaYYXISYUWNMPKOPKMGHPJJMLGHJPGIGFKHMOKLLKJIJNNJGOILGAAKA~~~', '~~AABJBABAZTLTOBDRikqgeeXYRVZUPRNGBFFBHDGSKKHMJIIIHIHFLJOOOKMKKHIMPLKIDGU~`~~~~~', '~~ABCACDBHWBAMCLCDZfWeZaXWMTZUQAABABCKJAFOMLKKIJJMKHIDPQSOMILLLGNKPKOOJD~`~`~`~~', '~`~AENZPBBQLEDBFDATUKOKKEMCIRTGEBACJMQIJFLMILKGDGPNMFFSRQPOOIHIKMLLLLGBF?`~~`~`~', '/~~AEFFBAHQLRJLCBAKYBCJJDABKRPBIDDHKKTLIDKLIFDDFFLNJGERQTOLMONMMNRQOQEHKB``~~~~`', '~~`~AABAAAABABAACGHLQAABBAAHHLIDACAAFICFACAGJKLLECCFQNLNMMIHHJIMUIKMOTHIB~~~``~~', '?<~?~CAABBFABACEAADKOGCAACAFBAAACAABAGKBBACRTHHKHILIIHFOOLIKOLKPXKKLQNKIA~~`~~`~', '~~``~~ABBFIGGFJMKICIMOIHIAGBBBCCCAACACGAABDGFBEDBFTLIGHKNFJKSINPTNMKPOLGC~~~~~?~', '``/~?`~ABAABACCHHDDLKLcVMAEDFFAACGEDCBAABADKHDABAFOKIIEDGCBGCCDDHDPNOIMIA?~~`~~~', '~~~~~~~~~ADKDBAGONLACFDMOIBJMCFCAACCABAABABJCAAFKLMFHGBFBAAAGGNVUBNOLPHAA~~`~~`~', '~~~~~~~~~`AABADDHQQaLAACBIIFLHKKGBAEDABAAAADHHBHISUNRPCAABBANLLTOCJIHLAB~~~~`~~~', '~~~~~~~~~`~ZAAHDCBFLFDCAAAACMLKECEBBBABBBCBAGIGIGKNJJGAABAAEAAEIADDLGA~~?~~~~`~~', '~~~~~~~~`~`~~MBAAGEBDEBAAAENIEHBDAABAACCDBAAGBDGDABAABBABABAADFFAACHA`~``~~~`~~~', '~~~~~~~~`?~~~>ABBGQQAFEBCOMKHCACBCBABAAFAEBADHAAFAAABAAAACAACEHEB}AB~~?`~`~?~~~~', '~~~~~~~~`~~`~~~AEDCPqeRKVNJHHIFCCCAAAABAIBGBGFDGFAABBABADACDCJIAB?/~``?~~``~~?~`', '~~~~~~~~~~~`~`~~~``KGAGSTFCGEEBBACACBCADFFHLGIDFGECCEHIAAAVHLRMIA~~?~~~``~~``~~~', '~~~~~~~~`~~~~~~?`~~~ABKSRQMQLHABBDFCDQIFHKDADAFIQRKHLIHHDCOOOIKIA~``~``~~~`~~`~~', '~~~~~~~~~~~~~~~~~?`~BACKJLFIDHMJNHSDHOPILMGGEBJLPLMOMMBRLCNRLQFDB?~`~Q?~~~~~~~~~', '~~~~~~~~~~~~~~~~`~``~ATLGFEBBCTMOLOMNMXRKQHHGEKGOHPKRVFWOTQMPPDGAMPTC~~`~~~~~~~~', '~~~~~~~~~~~~~~~~/~~~`BENSREBHDETMIKHHOJGIMROMPVTOMKJMMOHJKFHQMPMNFKA~?~~~~~~~~~~', '~~~~~~~~~~~~~~~~~?~LBFIISRHMDDACGKHHHILNPNMNOISPIHIHKHIIJMIQIMKJOOA~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~?`~DDJFHIIFFDADGIEGFOQOKMRKKQMPMHGIIOIKFLJINMGOLKA~`~~~`~~~~~~~~', '~~~~~~~~~~~~~~~~~?`~~AAAAUOWGDAIBCGHDGOMORLMPRMNIGKGLJNBBFKMMOMI~~~~~``~~~~~~~~~', '~~~~~~~~~~~~~~~~`~`~~?~`FABLMNSGLKLQMLPPMSLKKTRHEHHFKIKMOPMJOKH~~`~`~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~`~?~`~~ARUOKUPKJPHLKMPGELPPLCIPOMKGMGHFFGHGIM~~`~~~~~`~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~AQRHKKGFHNMPKIJHKNMKIEDFGFCJGHHFEDAI~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~AHNQONOMJOMLLMIINMLJCCGCCHEFILGCA~~~`~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~BFPTSPLKTLNOMJGJIIKHHEDFAFGHBAB~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~`~?QMSNNPHDFEAGKKFFEGMHCEIKCDC`~~~~~~~`~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~/~~~BKLIKLMPONMHKFDKHHDAA~?`~~~~~>```~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~````~~`~BAAEBBDBBAABAABA~~~/~`~~``/~~~~`~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~`~~~``~`~`~~``~~~`~~`~`~~~`~``~~`~`~~~`~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~`~`??`~~~`~?`~`?~~~`~~~~~~`~`~`~~~~~~~~~~~~~~~~~~~~~~~~~']
bb_8 = {'~': (255, 255, 255), 'u': (204, 177, 7), 'o': (180, 158, 3), 'n': (173, 152, 4), 'x': (219, 191, 5), 'm': (168, 148, 4), 'v': (207, 182, 4), 'R': (79, 68, 3), 'e': (130, 114, 12), 'p': (184, 162, 3), 'r': (191, 168, 4), 'q': (186, 163, 4), 's': (196, 171, 4), 'W': (98, 85, 7), 'w': (214, 187, 5), 'z': (227, 198, 5), 'b': (122, 106, 3), '0': (232, 202, 4), 't': (200, 173, 5), 'g': (142, 124, 5), 'Y': (109, 95, 4), 'k': (160, 140, 1), 'A': (0, 0, 0), 'i': (151, 131, 3), 'O': (66, 57, 0), 'c': (108, 96, 33), 'a': (111, 96, 18), 'N': (60, 54, 0), 'I': (40, 34, 0), 'l': (168, 146, 3), 'B': (7, 5, 0), 'S': (83, 73, 1), 'V': (96, 84, 1), 'f': (137, 122, 2), 'J': (43, 37, 0), 'X': (98, 85, 10), 'y': (222, 194, 4), 'j': (158, 137, 3), 'h': (150, 131, 2), 'Q': (72, 64, 2), 'L': (53, 46, 0), 'U': (89, 77, 1), 'H': (35, 30, 0), 'K': (46, 40, 0), 'Z': (111, 97, 1), 'G': (27, 24, 0), 'P': (68, 58, 1), 'F': (25, 22, 0), 'M': (56, 49, 1), 'd': (130, 113, 3), '9': (255, 248, 7), 'C': (12, 9, 0), '6': (255, 226, 7), 'T': (76, 68, 20), 'E': (20, 17, 0), 'D': (15, 12, 4), '3': (243, 212, 6), '4': (250, 218, 6), '8': (255, 244, 7), '1': (235, 205, 6), '7': (255, 238, 6), '2': (240, 210, 6)}
r2_d2 = ['~~~~~~~~~~uonnnnnnnnnxmnnnnnnnnnnnnnnmvR~~~epnnnnnnnr~~~~~~umnnnnnnnnnnqs~~~~~~~~~~~~~Wsmnnnnnms~~~~wmnnmz~~~bqnnnm0~~wmnnnnnnnm~~~~~0mnnnnnnnnnnptg~~~~~~~rqnnnnnnnnnnq', '~~~~~~~~YkAAAAAAAAAAAiAAAAAAAAAAAAAAAAOc~~~vAAAAAAAAAv~~~~aNAAAAAAAAAAAAARz~~~~~~~~~~~cIAAAAAAAn~~~lBAAAASV~~tAAAAAs~pAAAAAAAAAr~~~~~fAAAAAAAAAAAAAJvX~~~~yAAAAAAAAAAAAo', '~~~~~~~~uAAAAAAAAAAAAjAAAAAAAAAAAAAAAARY~~~hAAAAAAAAAk~~~~XQAAAAAAAAAAAAAAAw~~~~~~~~~~cLAAAAAAANc~~uAAAAAAq~~sAAAAAq~tAAAAAAAAAUW~~~~hAAAAAAAAAAAAAAAkW~~wAAAAAAAAAAAAAo', '~~~~~~~WSAAAAAAAAAAAAjAAAAAAAAAAAAAAAARX~~iHAAAAAAAAAKg~~~XQAAAAAAAAAAAAAAAAw~~~~~~~~~cLAAAAAAAAu~~lAAAAAAs~~iAAAANa~ZAAAAAAAAAAr~~~~hAAAAAAAAAAAAAAAAw~~lAAAAAAAAAAAAAo', '~~~~~~~gGAAAAAAAAAAAAiAAAAAAAAAAAAAAAAPX~~uAAAAArAAAAAv~~~YQAAAAAKWVVWRAAAAAj~~~~~~~~~cJAAAAAAAAo~aOAAAAAAVRVRAAAAi~nBAAAAnAAAAAr~~~~hAAAAAFWVVVVAAAAARW~cAAAAAAAAAAAAAn', '~~~~~~~aMAAAAAAAahhhiyceeefIAAAAAeeeedqW~~iAAAAH9FAAAAk~~~YQAAAAAuPQRQchAAAAW~~~~~~~~~bmdeeAAAAAQVqAAAAAAAAnhCAAAAs~tAAAAA6VAAAASX~~~hAAAAAgYQXTUuAAAAFh~gAAAAAAAThihhgv', '~~~~~~~~lAAAAAAgZ~~~~~~~~~VcAAAAGn~~~~~~~iHAAAAlLhAAAAIh~~XQAAAAArAAAAAtAAAAU~~~~~~~~~~~~~gQAAAAArnAAAAAAAAoqAAAAAn~YAAAAXRrAAAAAu~~~hAAAAAfFABAApAAAAEk~wAAAAAAKu~~~~~~', '~~~~~~~~wAAAAAAAy~~~~~~~~~~bAAAAGg~~~~~~~vAAAAAvAwAAAAAv~~YQAAAAAtADDDGtAAAAe~~~~~~~~~~~~~~qAAAAAsZAAAAAAAAUtAAAAN~nAAAAAuBqAAAAAp~~~hAAAAAgLCDECyAAAALc~eQAAAAAAl~~~~~~', '~~~~~~~~~vAAAAAAAx~~~~~~~~~bAAAAGg~~~~~~~iAAAASYAhIAAAAi~~YQAAAAAVkjjkjBAAAAy~~~~~~~~~~~~~~tAAAAALEAAAAAAAABOAAAAh~sAAAABpBQaAAAARY~~hAAAAAMljjjlIAAAAu~~~0AAAAAAAjc~~~~', '~~~~~~~~~TkAAAAAAAy~~~~~~~~bAAAAGg~~~~~~iHAAAAtAAGkAAAAGj~YQAAAAAAAAAAAAAAAu~~~~~~~~~~~~~~~YRAAAAAAAAAAAAAAAAAAAAq~YAAAAgLBBuAAAAAt~~hAAAAAAAAAAAAAAAiZ~~~~yAAAAAAAkU~~~', '~~~~~~~~~~aiAAAAAAAz~~~~~~~bAAAAGg~~~~~~uAAAABnAAAtAAAAAu~XQAAAAAAAAAAAAAay~~~~~~~~~~~~~~~~~pAAAAAAAAAGDAAAAAAAAAnlAAAAAuBBBlDAAAAo~~gAAAAAAAAAAAAASxW~~~~~~xAAAAAAAw~~~', '~~~~~~~~~~~WmAAAAAATa~~~~~~bAAAAGg~~~~~~hAAAAUyqrq3FAAAAg~WQAAAAAAAAAAAQ4~~~~~~~~~~~~~~~~~~~tAAAAAAAAAjcAAAAAAAANZqAAAAF3qrrzUAAAAPZ~hAAAAAAAAAAAC8T~~~~~~~~~xAAAAAAAs~~', '~~~~~~~~~~~~xEAAAAAAv~~~~~~bAAAAGg~~~~~iHAAAAAAAAAAAAAAAGhUQAAAAAgCAAAAAp~~~~~~~~~~~~~~~~~~~aQAAAAAAAAqpAAAAAAAAgXXAAAAAAAAAAAAAAAAt~hAAAAAVNAAAAAac~~~~~~~~~gZAAAAAAo~~', 'seeeeeeeeeedMAAAAAAAl~~~~~~bAAAAGh~~~~~vAAAAAAAAAAAAAAAAAtSQAAAAAqxAAAAAAcbbbZz~~~~~~~~~~~~~~pAAAAAAAAmlAAAAAAAApkAAAAAAAAAAAAAAAAAo~gAAAAAc1IAAAAAXbbadwceedUAAAAAAATV~', 'qAAAAAAAAAAAAAAAAAAAf~~~~~~bAAAAGh~~~~~iAAAAAAAAAAAAAAAAAdhPAAAAAq~0AAAAAAAAAAi~~~~~~~~~~~~~~uAAAAAAAPXRVAAAAAAAmpAAAAAAAAAAAAAAAAAMjeAAAAAf~vIAAAAAAAAAeAAAAAAAAAAAANa~', 'qAAAAAAAAAAAAAAAAAAAo~~~~~~bAAAAGh~~~~jHAAAAAtlmmmrbAAAAAB7MAAAAAr~~1AAAAAAAAAk~~~~~~~~~~~~~~aQAAAAAAk~~rAAAAAAMrVAAAAAhpnnmnpAAAAAA1cAAAAAf~~yGAAAAAAADgAAAAAAAAAAAAWT~', 'qAAAAAAAAAAAAAAAAAAAu~~~~~~bAAAAGh~~~~vAAAAAEm~~~~~vAAAAAA3NAAAAAr~~~1AAAAAAAAk~~~~~~~~~~~~~~~qAAAAAAu~~tAAAAAAewAAAAAAv~~~~~rAAAAAAleAAAAAf~~~zFAAAAAADgAAAAAAAAAAAAx~~', 'qAAAAAAAAAAAAAAAAAO0~~~~~~~YAAAACh~~~~cAAAAAg~~~~~~iGAAAAAZMAAAAAq~~~~0AAAAAAAi~~~~~~~~~~~~~~~sAAAAAAp~~aNAAAAAqmAAAAAN~~~~~~~YAAAAAHeAAAAAd~~~~0EAAAAAAeAAAAAAAAAAGw~~~', 'nrrrrrrrrrrrrrrrrvk~~~~~~~~0qrrqua~~~avqrrsrw~~~~~~~1qrrrquvqrrrq1~~~~~yqrrrrq2~~~~~~~~~~~~~~~UwqrrqwT~~~2qrrrqvxqrrrq1~~~~~~~zqrrrrrzqrrrq2~~~~~wqrrrqrzqrrrrrrrrtj~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~dmooooor~~~~~~~opopoonn~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ShAAAAAAx~~~~~kOAAAAAMl~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~lNAAAAATd~~~~mAAAAAAy~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zAAAAAAt~~~zAAAAAAx~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~xAAAAAAy~nKAAAAAh~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ShAAAAARriAAAAAMn~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~mMAAAAAfAAAAAAz~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zAAAAAAAAAAAw~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~wAAAAAAAAAf~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~RfAAAAAAALm~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~nLAAAAAAAAx~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~VdAAAAAAAAAJq~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~vAAAAAAAAAAAe~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~0AAAAAA6BAAAAAv~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~oKAAAAAl~xAAAAAAz~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~UfAAAAALl~~eAAAAALo~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~wAAAAAA0~~~rFAAAAAfU~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~xAAAAAAn~~~~~zAAAAAAt~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~nnXZZZZfj~~~~~~rXZZZYY6~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~chkjfY~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~UbcXP~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~evbLGCDIOfwZ~~~~~~vVXXXXXXWjX~~~~~~lrZXXXXXXWUVilWXXWjY~~~~~tqcUMLRYmui~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zPAAAAAAAAAAW~~~~~~kAAAAAAAAAu~~~~~mPAAAAAAAAAAAOSAAAAOW~~~wUAAAAAAAAAAItf~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~tAAAAAAAAAAAAAMs~~~eKAAAAAAAAAp~~~~~qAAAAAAAAAAAAQUAAAAPX~~sAAAAAAAAAAAAAAWr~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sAAAAAAAAAAAAAAz~~~~vAAAAACAAAAPa~~~WRAAAAAAAAAAAAQUAAAAPW~vAAAAAAAAAAAAAAAAUh~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~yAAAAAAACRTHAAA0~~~~~lAAAAE2AAAAAs~~~cLAAAAAAAAAAAANUAAAAPRqAAAAAAABRTJAAAAAAAr~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~YAAAAAEwmWTgxEy~~~~~gKAAAAfuCAAAAo~~~QZAAAAAAGrrrrqzQAAAAOalAAAAAAmpVUfyGAAAAAFl~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~qAAAAADz~~~~~~u~~~~~~vAAAAAuIcAAAAOb~~~vAAAAAASf~~~~STAAAANxKAAAAAeTAABBBzAAAAAAt~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sAAAAAo~~~~~~~~~~~~~~kAAAAObAuAAAAAu~~~dRAAAAAAdj~~~UTAAAAM7AAAAAAuAABCBBdNAAAAAn~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sAAAAAs~~~~~~~~~~~~~gJAAAAqBAnCAAAAn~~~~zAAAAAAAXk~~UTAAAAL8AAAAAAnAABCCCJgAAAAAh~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sAAAAAs~~~~~~~~~~~~~uAAAAArAAMeAAAAMd~~~~1AAAAAAAdZ~XTAAAAL7AAAAABmAAABCCDnAAAAAf~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sAAAAAp~~~~~~~~~~~~~kAAAAYVACAwAAAAAu~~~~~0AAAAAAAt~jTAAAAL8AAAAAApAAACCBNcAAAAAk~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~rAAAAAFx~~~~~~q~~~~gKAAAAUmmmmkAAAAAl~~~~~~xAAAAAACnQTAAAAM6BAAAAAuAAACCCfNAAAAAq~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~WAAAAAGxjTScyIy~~~vAAAAAAAAAAAAAAAAKjeggggxEAAAAAAqRTAAAANoUAAAAAOoAAABMwAAAAAAt~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~yAAAAAAAFTULAAA1~~lAAAAAAAAAAAAAAAAA7UEGGEAAAAAAAAcdSAAAAPTtAAAAAARuposjAAAAAATY~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~pAAAAAAAAAAAAABvfIAAAAAOUUUUUAAAAAAkQAAAAAAAAAAAAZfSAAAAPTcQAAAAAAAAAAAAAAAAAz~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~qAAAAAAAAAAAAAJ7AAAAAAwQSSRfYAAAAAQSAAAAAAAAAAAAqSTAAAAPW~xEAAAAAAAAAAAAAAAu~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zLAAAAAAAAAAR0fAAAAAcO~~~~~tAAAAARSAAAAAAAAAAAOjQTAAAAPX~~xTAAAAAAAAAAAACx~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~iuXIAAACLbwacJAAAAAw~~~~~~nFAAAARTAAAAAAAAAJno~VUAAAAQY~~~cwXBAAAAAAAOpr~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~', '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~fnoold~~~YooooopV~~~~~~~pnnnnllnnnnnpnnnf~~~~onnnno~~~~~~Rnsqnnpsrc~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~']


def tracer_par_le_pouvoir_de_la_force(rayons, galaxie, longueur_de_l_etoile, largeur_de_l_etoile, taille_de_l_etoile=force):
    galaxie = [classer(droide) for droide in galaxie]
    for planete in ouvrir(memoire(galaxie)):
        for stormtrooper in ouvrir(memoire(galaxie[planete])):
            if nombre(rayons[galaxie[planete][stormtrooper]]) < maitriser("120")*maitriser("42"[force])*(force+force+force):
                for particule_cosmique in ouvrir(taille_de_l_etoile):
                    for poussiere_cosmique in ouvrir(taille_de_l_etoile):
                        coup_de_sabre_laser(longueur_de_l_etoile+maitriser(42/(maitriser(memoire("droides"))+force))+stormtrooper*taille_de_l_etoile+poussiere_cosmique, largeur_de_l_etoile+maitriser(42/(maitriser(memoire("droides"))+force))+planete*taille_de_l_etoile+particule_cosmique, rayons[galaxie[planete][stormtrooper]])


tracer_par_le_pouvoir_de_la_force(etoiles_de_la_galaxie, au_fin_fond_de_la_galaxie, 42*0, 42*0, force+force)
tracer_par_le_pouvoir_de_la_force(pieces_du_faucon_millenium, soudures_du_faucon_millinium, 220, 100, 120//42)
tracer_par_le_pouvoir_de_la_force(pieces_de_l_etoile_noire, chantier_de_l_etoile_noire, 20, 20, 120//42)
tracer_par_le_pouvoir_de_la_force(bb_8, r2_d2, 120+42+memoire("droides de combat")+force, (force+force)*memoire("force"))
voir_l_hologramme()
Télécharger

Félicitations ! :bj:




16934LePhe, administrateur de Planète Casio, a envoyé une participation au nom de toute sa communauté, qui bien que hors catégorie bénéficie de par son caractère remarquable d'un affichage sur la page des gagnants.

Il représente la Death Star flottant majestueusement dans le vide intersidéral. Mais ici, le rendu du vaisseau en question nous interpelle. Cela ne ressemble pas à un sprite possiblement extrait d'un jeu vidéo comme on a pu voir dans certaines participations précédentes, cela ne ressemble pas non plus à une vue d'artiste... cela ressemble plutôt à... un rendu 3D !

Et c'est exact, après le raycasting que nous t'avions sorti en Python lors de notre concours de rentrée 2022, Lephe pousse la barre encore plus haut avec maintenant du raytracing en Python !

Tu peux comparer ci-contre l'image dont il s'est inspiré (en bas à droite) et sa reproduction en raytracing (en haut à gauche).

Mais ne t'attends pas à trouver dans le code ici quoi que ce soit de ressemblant à ce que l'on a vu précédemment pour coder l'image en question. Au contraire, tout est vectoriel, et la taille du script obtenue en conséquence en est à couper le souffle.

Pour donc les images illustrées jusqu'ici, seulement 7,705 Ko de script, avec seulement 218 lignes pour jusqu'à 105 colonnes, le code peut donc être consulté et même modifié sur calculatrice !

Par contre, avec tous les calculs 3D supplémentaires nécessaires les performances en prennent ici un coup. Si le fond étoilé aléatoire est certes affiché après seulement 6 secondes, il faudra attendre jusqu'à 6min 30s pour que l'affichage de la Death Star, progressif de haut en bas, soit achevé.
Code: Tout sélectionner
from casioplot import *
import math
import random
WIDTH = 384
HEIGHT = 192
BLACK = (0, 0, 0)

# Vecteurs à 3 dimensions (x,y,z). Ça sert aussi pour les couleurs (r,g,b) !
class Vec3:
    def __init__(self, x, y, z):
        self.x, self.y, self.z = x, y, z
    def __add__(self, u):
        return Vec3(self.x + u.x, self.y + u.y, self.z + u.z)
    def __sub__(self, u):
        return Vec3(self.x - u.x, self.y - u.y, self.z - u.z)
    def neg(self):
        return Vec3(-self.x, -self.y, -self.z)
    # Produit scalaire
    def dot(self, u):
        return self.x * u.x + self.y * u.y + self.z * u.z
    # Produit et division par une constante
    def mulf(self, s):
        return Vec3(self.x * s, self.y * s, self.z * s)
    def divf(self, s):
        return Vec3(self.x / s, self.y / s, self.z / s)
    # Normalisation
    def normalize(self):
        return self.divf(math.sqrt(self.dot(self)))
    # Conversion vers une couleur (avec saturation au blanc)
    def toColor(self):
        f = lambda v: 255 if v >= 1 else int(v * 255)
        return (f(self.x), f(self.y), f(self.z))

def intersect_ray_sphere(ray_origin, ray_dir, sphere_center, sphere_r):
    """Calcul de l'intersection entre un rayon partant de ray_origin et
       voyageant dans la direction ray_dir, et une sphère. Renvoie t1 et t2,
       les deux temps auxquels le rayon intersecte la sphère."""
    ray_origin -= sphere_center

    a = ray_dir.dot(ray_dir)
    b = 2 * ray_origin.dot(ray_dir)
    c = ray_origin.dot(ray_origin) - sphere_r * sphere_r

    delta = b*b - 4*a*c
    if delta < 0:
        return -1, -1
    sqrt_delta = math.sqrt(delta)

    t1, t2 = (-b + sqrt_delta) / (2*a), (-b - sqrt_delta) / (2*a)
    return min(t1, t2), max(t1, t2)

def sphere_normal(sphere_center, position):
    """Vecteur normal à une sphère à la position donnée."""
    return (position - sphere_center).normalize()

ORIGIN = Vec3(0, 0, 0)

# "Field Of View": angle de vue vertical en degrés et en radians
FOV = 60
FOV_RADIANS = FOV * math.pi / 180
# Distance dans l'espace en 3D entre la caméra (à ORIGIN) et le plan qui
# représente l'écran. La distance est choisie pour que l'écran fasse une
# hauteur de 1 unité dans l'espace en 3D.
SCREEN_DISTANCE = 1 / (2 * math.tan(FOV_RADIANS / 2))

### Objet #1: L'étoile de la mort (Death Star, abbrévié "DS") ###

# Centre et rayon de la sphère
DS_CENTER = Vec3(0, 6, -0.2)
DS_RADIUS = 2.4

# Valeurs aléatoire pour le motif à la surface de la sphère
DS_ALEA = [random.randint(0, 255) for _ in range(25)]

# Couleurs
DS_LIGHT     = Vec3(0.7, 0.65, 0.5)
DS_DARK      = Vec3(0.45, 0.4, 0.3)
DS_SEMILIGHT = (DS_LIGHT + DS_DARK).divf(2)
DS_HIGHLIGHT = (DS_DARK + (DS_LIGHT - DS_DARK).mulf(3))

# Fonction donnant la couleur à la surface de la sphère à la position 3D donnée
def texture_death_star(pos):
    # Conversion des coordonnées cartésiennes x/y/z en sphériques. Comme on ne
    # regarde qu'un côté de la sphère connaître x/z suffit.
    pos = (pos - DS_CENTER).divf(DS_RADIUS)
    phi = math.asin(pos.z)
    theta = math.asin(pos.x / math.cos(phi))
    # Conversion de l'invervalles [-π;π] vers [0:256) pour u et [0:128) pour v
    # (symétrique par rapport au milieu de la hauteur)
    u = (theta + math.pi / 2) / math.pi * 256
    v = abs(phi / math.pi * 256)

    # Pixels aléatoires sur la partie sombre mais réguliers en hauteur
    surf_light_N = 0
    if v <= 0.5:
        surf_light_N = 4
    elif 4 < v <= 60:
        surf_light_N = 4 if (int(v) & 7) == 0 else 64
    if surf_light_N and random.randint(0, surf_light_N) == 0:
        return DS_HIGHLIGHT if u < 144 else DS_SEMILIGHT

    # Bordure au milieu
    if v <= 0.5:
        return DS_DARK.mulf(0.7)
    # Bandes de motifs carrés en surface
    if 4 <= v <= 20:
        return DS_LIGHT if int(u) in DS_ALEA else DS_DARK
    if 23 <= v <= 38:
        return DS_LIGHT if (int(u) + 43) & 255 in DS_ALEA else DS_DARK
    if 41 <= v <= 60:
        return DS_LIGHT if (int(u) + 90) & 255 in DS_ALEA else DS_DARK

    return DS_LIGHT

### Object #2: Laser incrusté dans la sphère ###

# Centre et rayon de la sphère qui est extrudée de l'étoile de la mort
LASER_CENTER = DS_CENTER + Vec3(0.28, -1, 0.28).normalize().mulf(3.48)
LASER_RADIUS = 1.2

# Même affaire que pour texture_death_star()
def texture_laser(pos):
    pos = (pos - LASER_CENTER).divf(LASER_RADIUS)
    phi = math.asin(pos.z)
    theta = math.asin(pos.x / math.cos(phi))
    # Conversion des invervalles [-π;π] vers [-1:1] en se restreignant à la
    # partie visible
    u = (theta + math.pi / 2) / math.pi * 8.533 - 3.533
    v = (phi   + math.pi / 2) / math.pi * 8.533 - 3.533

    LIGHT     = Vec3(0.7, 0.7, 0.50)
    DARK      = Vec3(0.3, 0.3, 0.24)
    SEMILIGHT = (DARK + (LIGHT - DARK).mulf(2))

    r = math.sqrt(u*u + v*v)
    if 0.80 <= r <= 0.85:
        return DARK
    if r <= 0.25:
        return SEMILIGHT
    return LIGHT

### Source de lumière #1 (lumière ambiente) ###

# Intensité de l'illumination
AMBIENT_LIGHT = 0.05

### Souce de lumière #2 (lumière directionnelle): le Soleil ###

# Direction des rayons et intensité de l'illumination
SUN_DIRECTION = Vec3(-1, -0.22, -0.1).normalize()
SUN_INTENSITY = 4.5

### Source de lumière #3 (lumière ponctuelle) ###

# "Front light": Position de la source et intensité de l'illumination
FLIGHT_POSITION = Vec3(-1.5, 2.5, 0)
FLIGHT_INTENSITY = 0.15

### Dessin ###

# Fond noir
for y in range(HEIGHT):
    for x in range(WIDTH):
        set_pixel(x, y, BLACK)
show_screen()

# Étoiles aléatoires
for step in range(10):
    for _ in range(400):
        intensity = random.randint(0, 95)
        color = (intensity, intensity, intensity)
        x = random.randint(0, WIDTH-1)
        y = random.randint(0, HEIGHT-1)
        set_pixel(x, y, color)
    show_screen()

# Lancer de rayon pour tous les pixels
for y in range(HEIGHT):
    for x in range(WIDTH):
        # Direction du rayon partant de ORIGIN et intersectant l'écran au
        # niveau du pixel (x, y)
        ray_dir = Vec3((x - WIDTH / 2) / HEIGHT,
                       SCREEN_DISTANCE,
                       (HEIGHT / 2 - y * 1.05) / HEIGHT).normalize()

        # Si le rayon n'intersecte pas l'étoile de la mort, on passe
        t1_ds, t2_ds = intersect_ray_sphere(ORIGIN, ray_dir, DS_CENTER, DS_RADIUS)
        if t1_ds < 0:
            continue

        # Point de collision, normale à la sphère en ce point, et texture
        collision = ORIGIN + ray_dir.mulf(t1_ds)
        normal = sphere_normal(DS_CENTER, collision)
        texture = texture_death_star

        # Si on touche le laser, on utilise les infos de collision du laser
        t1_laser, t2_laser = intersect_ray_sphere(ORIGIN, ray_dir, LASER_CENTER, LASER_RADIUS)
        if 0 <= t1_laser <= t1_ds <= t2_laser:
            collision = ORIGIN + ray_dir.mulf(t2_laser)
            normal = sphere_normal(LASER_CENTER + (LASER_CENTER - DS_CENTER).mulf(0.3), collision).neg()
            texture = texture_laser

        # Calcul de l'illumination du point de collision:

        # Lumière ambiante
        light_level = AMBIENT_LIGHT
        # Lumière provenant du Soleil
        light_level += max(-normal.dot(SUN_DIRECTION) * SUN_INTENSITY, 0)
        # Lumière provenant de la source ponctuelle sur la gauche
        FLIGHT_DIRECTION = (collision - FLIGHT_POSITION).normalize()
        light_level += max(-normal.dot(FLIGHT_DIRECTION) * FLIGHT_INTENSITY, 0)

        # Couleur finale du pixel: couleur donnée par la texture, multipliée
        # par le niveau d'illumination
        color = texture(collision).mulf(light_level)
        set_pixel(x, y, color.toColor())
    show_screen()
Télécharger




16935J'ai moi-même, juste pour le plaisir et au nom de toute la communauté TI-Planet, envoyé également une participation hors concours que j'ai nommée Escape Out of Dagobah, et au justement le plaisir de la retrouver elle aussi épinglée sur la page des gagnants ! :favorite:

J'adapte pour ma part à nouveau une scène du film-épisode 5 L'Empire contre-attaque, cette fois-ci celle où Luke tente d'arracher son vaisseau X-Wing aux marais de la planète Dagobah.

J'utilise la bibliothèque graphique casioplot. Record de longueur, le code fait ici 124,724 Ko avec pas moins de 814 lignes, bien évidemment non visualisable ou modifiable sur calculatrice.

Sauf que ce n'est pas un simple dessin, je commence par animer un dialogue entre Luke et Yoda que tu fais progresser avec la touche
AC
:

L'affichage se compose de différents éléments : fond d'écran, surface du marais, partie immergée sous la surface du marais, Luke, Yoda, leurs deux plateformes flottantes et le X-Wing. La fonction d'affichage a été optimisée pour ne redessiner que les seuls pixels inclus dans un rectangle dont les coordonnées sont à lui communiquer. Pour optimiser les performances il suffit ainsi d'encadrer le ou les changements visuels à chaque rafraichissement de l'écran par un rectangle le plus petit possible.

Et encore mieux qu'une animation, c'est un véritable jeu vidéo qui démarre après cette cinématique. Ton but est donc ici d'extraire ton X-Wing des profondeurs de Dagobah afin de pouvoir vite partir sauver tes amis.

Les contrôles au clavier sont extrêmement simples, le jeu se jouant avec une seule et unique touche,
AC
(touche ACtion, c'est facile à retenir).

À toi de tenir compte des variations automatiques de la jauge alors affichée en haut d'écran, t'indiquant si la Force est plus ou moins avec toi. La touche
AC
te permet ici d'invoquer la Force. Appuie aux bons moments afin de faire léviter ton X-Wing le plus possible et l'arracher aux marais de Dagobah !


Code: Tout sélectionner
#########################
# Escape Out of Dagobah #
#########################
# un jeu Python pour Graph 90+E / fx-CG50

from casioplot import set_pixel, show_screen, get_pixel, draw_string
from math import sqrt, floor, ceil, cos, pi, sin, log10
from random import random, randint, seed

#-------
# IMAGES
#-------
# images converties sur https://tiplanet.org/forum/img2calc.php

S_L, S_H, S_BITS, S_ITRANSP, S_RLE, S_PALETTE, S_ZOOM, S_X, S_Y = tuple(range(9))
I_LUKE, I_XWING, I_YODA, I_PF_P, I_PF_G, I_AP = tuple(range(6))
SPRITES = (
# Luke Skywalker - d'apres https://www.reddit.com/r/PixelArt/comments/9dd75i/oc_luke_skywalker_i_did_on_my_latest_stream_join/
[19,58,7,0,
(b"\x80\v\x81\3\x82\1\x80\4",
b"\x80\n\x82\1\x83\1\x84\1\x82\1\x85\2\x80\3",
b"\x80\t\x81\1\x86\1\x82\1\x84\2\x81\1\x82\1\x80\3",
b"\x80\t\x84\1\x87\1\x88\1\x89\1\x81\1\x8a\1\x86\1\x82\1\x80\2",
b"\x80\t\x81\1\x8a\1\x8b\1\x89\2\x8c\1\x88\1\x84\1\x80\2",
b"\x80\t\x81\1\x8a\1\x89\3\x8d\1\x8a\1\x84\1\x80\2",
b"\x80\b\x85\1\x86\1\x8a\1\x88\1\x89\2\x8a\1\x87\1\x80\3",
b"\x80\n\x8e\1\x8f\1\x88\2\x90\1\x86\1\x84\1\x80\2",
b"\x80\a\x91\1\x92\1\x86\1\x84\1\x8f\1\x93\3\x80\4",
b"\x80\5\x94\1\x91\1\x95\2\x92\1\x96\1\x8f\1\x97\1\x93\2\x98\1\x80\1\x89\2",
b"\x80\3\x99\1\x94\1\x9a\1\x91\1\x9a\2\x95\1\x92\1\x97\1\x8f\1\x93\1\x9b\1\x9c\1\x8d\1\x89\2",
b"\x80\2\x99\1\x9d\1\x9a\1\x95\1\x94\2\x95\3\x91\1\x93\1\x8a\1\x8d\1\x89\1\x8a\1\x89\1\x8a\1",
b"\x80\1\x94\1\x9d\1\x9a\1\x95\1\x9a\1\x9d\1\x9a\1\x9e\1\x94\1\x96\1\x8a\3\x89\2\x8f\3",
b"\x80\1\x9f\1\x9d\1\xa0\1\x9a\1\xa0\1\x9a\1\x94\1\x9a\2\xa1\1\x8f\2\x90\1\x88\1\x89\1\x8f\2\x80\1",
b"\x80\1\x9f\1\x9d\1\x9a\3\x94\1\x9a\2\xa2\1\xa3\1\xa4\1\xa5\1\x9a\1\x9d\2\x8f\2\x80\1",
b"\x80\2\x9e\1\x9a\3\x9f\1\x9a\1\xa6\1\xa7\1\xa8\1\xa9\1\x94\1\x9a\2\xa2\1\x97\1\xaa\1\x80\1",
b"\x80\2\xab\1\xa2\2\xac\1\xa2\2\xa5\1\xa3\1\xa9\1\x94\1\x9a\1\x9d\1\x91\1\xa2\1\xad\1\xa5\1\xa2\1",
b"\x80\3\xa2\2\xac\1\xa1\1\xa2\1\xa4\1\xa9\2\x9a\3\xa2\2\xa4\1\xa8\1\xa2\1",
b"\x80\4\xa2\1\xac\1\xae\1\xa8\1\xa9\2\x9a\2\x9d\1\x92\1\xa2\1\xae\1\xa8\1\xa5\1\xa2\1",
b"\x80\4\xa2\2\xac\1\xa9\2\xaf\1\x9a\2\x9d\1\xa2\2\xb0\1\xb1\1\xa5\1\xa2\1",
b"\x80\3\x99\1\x9a\2\xa2\1\xa9\1\xb2\1\x91\1\x9a\2\xa1\1\xa2\2\xb0\1\xb3\1\xb2\1\xa1\1",
b"\x80\3\x9f\1\x9a\3\xb0\1\x91\1\x92\1\x91\2\xb4\1\xa2\2\xac\1\xa1\1\xa2\1\xab\1",
b"\x80\3\x9f\1\xb5\1\x9a\2\x91\1\xac\1\xb4\1\xac\1\xb0\1\xb4\1\xae\1\xa6\4\x80\1",
b"\x80\2\x99\1\xb6\2\x98\2\x91\2\xb7\1\xb8\1\xac\1\xb4\2\x80\5",
b"\x80\2\xb9\1\xba\2\xbb\1\xbc\3\xb7\2\xb3\1\xbd\1\xb0\1\x80\5",
b"\x80\2\xbb\1\xbe\1\xbf\1\xc0\4\xb7\2\xc1\1\xc2\1\xb9\1\x80\5",
b"\x80\2\xc0\2\xc3\1\xc4\1\xc5\2\xc6\1\xc7\2\xc8\1\xc0\1\xc2\1\xb3\1\x80\4",
b"\x80\1\x9f\1\x9a\5\xc4\1\xc6\2\xb4\1\xa1\1\xa2\1\xc9\1\xca\1\x80\4",
b"\x80\1\x94\1\xcb\1\xcc\4\x9a\1\xb0\1\xb4\1\xb0\1\xa1\1\xa2\1\xc0\1\xbe\1\x80\4",
b"\x9f\1\xab\1\xcd\2\xce\3\xcf\1\xd0\1\xb4\2\xc3\1\xa1\1\xac\1\x80\5",
b"\xab\1\xb9\1\xd1\1\xd2\1\xce\4\xd3\1\xd4\1\xb4\1\xac\1\xa2\2\x80\5",
b"\xd5\1\xa3\1\xd6\1\xd7\1\xd8\1\xce\3\xd9\1\xda\1\xd4\2\xc3\1\xbd\1\xdb\1\x80\4",
b"\x80\2\xdc\1\xce\1\xd3\1\xce\4\xd2\1\xdd\2\xde\1\x80\6",
b"\x80\3\xce\1\xd8\1\xdf\1\xce\3\xd2\1\xdd\2\xe0\1\x80\6",
b"\x80\4\xd1\1\xd2\1\xce\3\xe1\1\xd2\1\xdd\1\xe0\1\xd4\1\x80\5",
b"\x80\4\xce\1\xe1\1\xd7\1\xce\3\xd2\1\xdd\3\x80\5",
b"\x80\5\xce\1\xd2\1\xce\3\xd2\1\xdd\3\x80\5",
b"\x80\5\xce\1\xe2\1\xda\1\xce\2\xe1\1\xda\1\xdd\2\xd4\1\x80\4",
b"\x80\6\xce\1\xd3\1\xce\3\xd2\1\xd9\1\xdd\2\x80\4",
b"\x80\6\xce\1\xe3\1\xce\2\xdf\1\xe4\1\xdd\3\x80\4",
b"\x80\a\xe3\1\xe5\2\xe6\1\xe7\1\xd9\1\xe7\1\x80\5",
b"\x80\a\xe8\1\xe9\1\xea\2\xeb\1\xec\1\xeb\1\x80\5",
b"\x80\a\xe8\1\xed\3\xee\1\xef\1\xec\1\x80\5",
b"\x80\6\xf0\1\xea\1\xe9\2\xf1\1\xeb\1\xee\1\xeb\1\x80\5",
b"\x80\6\xea\4\xee\1\xf2\1\xef\1\x80\6",
b"\x80\6\xed\1\xf3\3\xee\1\xf2\1\xef\1\x80\6",
b"\x80\5\xea\1\xf4\1\xea\1\xe9\1\xf5\1\xee\1\xec\1\x80\a",
b"\x80\6\xf6\1\xe5\2\xee\2\xeb\1\xf2\1\x80\6",
b"\x80\5\xf5\1\xf0\1\xea\1\xdf\1\xee\1\xf2\1\xef\1\x80\a",
b"\x80\5\xf6\1\xf3\1\xed\1\xec\1\xeb\1\xee\1\x80\b",
b"\x80\5\xea\3\xf7\1\xf2\1\xec\1\x80\b",
b"\x80\4\xf6\1\xed\1\xf3\1\xf8\1\xf9\2\xf7\1\xf9\1\xfa\1\x80\6",
b"\x80\5\xea\3\xf9\6\xfa\1\x80\4",
b"\x80\5\xea\2\xe5\1\xfb\6\xf9\1\x80\4",
b"\x80\4\xe5\1\xed\1\xe5\1\xfc\1\x80\v",
b"\x80\4\xea\2\xfc\1\xf1\2\xfa\1\x80\t",
b"\x80\4\xf5\1\xfc\1\xf5\1\xf1\1\xfc\3\xfd\1\x80\a",
b"\x80\5\xfe\6\xf9\1\x80\a",),
((0, 0, 0), (154, 121, 93), (152, 124, 87), (124, 96, 85), (126, 96, 80), (156, 122, 86), (122, 99, 80), (119, 98, 85), (247, 191, 140), (250, 207, 152), (251, 188, 140), (194, 145, 114), (175, 121, 94), (253, 203, 152), (120, 102, 76), (232, 165, 120), (229, 168, 121), (220, 216, 195), (225, 214, 195), (219, 140, 102), (234, 231, 210), (248, 244, 222), (252, 241, 225), (235, 160, 119), (217, 215, 200), (231, 229, 214), (255, 252, 230), (247, 238, 224), (249, 192, 135), (251, 255, 231), (241, 229, 210), (237, 228, 215), (255, 252, 224), (211, 200, 181), (207, 203, 182), (38, 39, 32), (44, 37, 27), (40, 39, 28), (205, 203, 188), (51, 45, 35), (43, 37, 32), (86, 78, 67), (131, 87, 60), (206, 197, 184), (188, 175, 151), (139, 83, 60), (209, 203, 176), (86, 79, 68), (182, 176, 150), (42, 40, 24), (84, 81, 64), (90, 81, 65), (186, 178, 146), (246, 244, 229), (64, 61, 54), (105, 91, 76), (107, 90, 70), (53, 51, 44), (62, 61, 59), (26, 28, 26), (51, 47, 46), (178, 173, 155), (1, 4, 0), (32, 31, 20), (7, 0, 0), (102, 86, 66), (30, 31, 26), (205, 194, 167), (203, 199, 179), (148, 139, 115), (164, 150, 127), (71, 56, 37), (39, 27, 13), (3, 0, 5), (95, 88, 82), (254, 253, 217), (254, 255, 226), (203, 165, 124), (215, 181, 137), (229, 213, 176), (204, 188, 152), (212, 181, 143), (193, 158, 97), (197, 156, 97), (195, 174, 138), (102, 104, 102), (217, 179, 143), (200, 165, 117), (213, 179, 129), (209, 169, 122), (197, 164, 109), (240, 239, 223), (252, 250, 234), (204, 171, 122), (206, 171, 128), (192, 157, 109), (201, 174, 122), (217, 184, 133), (218, 183, 127), (196, 156, 103), (204, 170, 115), (169, 136, 76), (171, 137, 71), (175, 143, 89), (174, 130, 77), (193, 156, 115), (188, 156, 114), (122, 87, 16), (141, 103, 34), (166, 135, 81), (126, 85, 17), (141, 105, 27), (183, 159, 114), (159, 122, 58), (138, 106, 36), (171, 133, 81), (190, 154, 119), (155, 122, 48), (172, 133, 75), (106, 73, 8), (168, 134, 62), (103, 75, 8), (182, 162, 126), (57, 6, 10), (160, 121, 51), (186, 158, 126), (65, 6, 10))
],
# X-Wing d'apres https://www.pngwing.com/en/free-png-prwig/download
[66,30,3,0,
(b"\x80\1)\xd0\2\31",
b"h\31\32\23\31\xa8\2\21\22\t",
b"P\31\32\33\21\v\22\31@\218\31h\t\32\v\t",
b"8\31\32\31\n$*\f\31 \t\22\t(\t\22\v\t89\n\23\t",
b"\b1\32\31\30\t\22\34\22$\22!\n\v\22)\32\2392\t\n\v\t\b",
b"\t\22\t\32\318\21\32\f\22\f\22!\22\23\t\23\22\23\t\n\v\t\23\n\24\32$\n\t\n\23\t\b",
b"\t\32\31`\t2\31\22\21\v\21\23\n\t\23\t\n\23\21\v\24\22\24\n\34\n\t\23\t\20",
b'\b\t\n\t\x80\1\21\32\21*\v\t\33\22\33\22\v\21\v\t2\34"\v\t\20',
b"\20\t\x98\1\t\n\21\n\31\n\33\n\31:\v\t\vR\31\n\t\30",
b"\xb8\1\21\n\t\v\t\n\t\23!\32\31\22\23\t21\v\n\t\30",
b"\xc0\1\t\n\21\n\21\23\32\v\n\v\t\n\t\22\33\32) \t\n\t ",
b"\x88\1)\20\t\n\31\22\v\n\v\21\33\21\n\21\x1b1 \31\n\t ",
b"h!\22\33A\v\32\33\t\v\t\v\31\x131 \t\22\23\t ",
b'X\21";\31\23\n\31\n\t\23\21\v\31\v1\v\t \31\v\t(',
b"H\21\32#\31+\21\n\31\n\21\23\t+I \t\n\23\t(",
b"8\21\22\21*\33\22\33\21\n\21\n\21#I\23\t\v\21\30\t\22\v\t(",
b"(\21\22\21\20\31\32A\n\21\n\t\22\33)\v\31\v\21#\21\b!0",
b'\b!\22\218\31\x1012\f\x1b1\v\31#"\21H',
b'\t"\21\x80\1\21:\f\n\23)\v\t\v\t#\n\v\31\v\22\21 \21\b',
b"\t\22\21\x88\1\21:\f\n\239\v\21\23\22\v\31\v*!\22\t",
b"\b\t\n\t\x88\1\t:\24\n\23)\33\21\vR\v\21\v\22\t\v\n\v\t",
b"\b\21\x88\1\t:\24\n\23\t !\20!2\v\21\23\22\t\v\n\v\t",
b"\x98\1\t#\22\34\n\23\tx!B\23\n\23\t",
b'\x90\1\t2\34\n\23\t\xa0\1!"\t\v\n\v\21',
b"\x90\1\t:\f\n\23\t\xc8\1!\v\22\v\21",
b"\x88\1\t\v:\33\t\xf0\1\t\22\31",
b'\x88\1\t\33"\33\t\xf8\1\t\n!',
b"\x88\1\tC\21\xf8\1\t\v\n!",
b"\x90\1\31\33\21\x88\2\t\n)",
b"\xa8\1\31\x98\29",),
((255, 0, 255), (0, 0, 0), (255, 255, 255), (128, 128, 128), (255, 0, 0))
],
# Yoda d'apres https://www.reussiralecole.fr/pixel-art-star-wars/
[31,33,7,0,
(b"\x80\f\x81\6\x80\r",
b"\x80\n\x82\1\x81\1\x83\1\x84\3\x85\1\x84\1\x86\1\x81\1\x80\v",
b"\x80\t\x82\1\x84\1\x87\1\x88\3\x85\1\x84\1\x88\1\x84\1\x89\1\x81\1\x80\3\x8a\1\x80\6",
b"\x80\6\x8a\1\x80\1\x81\1\x85\v\x84\1\x81\1\x8a\2\x80\5\x82\1\x81\1",
b"\x81\4\x80\2\x8a\1\x81\1\x84\2\x85\1\x88\2\x84\1\x85\1\x84\2\x85\1\x84\1\x88\2\x8b\1\x8c\1\x8d\1\x8a\1\x80\1\x81\3\x84\1\x82\1",
b"\x81\1\x84\1\x88\1\x84\1\x8e\1\x81\2\x82\1\x81\1\x8e\1\x84\1\x88\2\x84\1\x82\1\x8f\2\x82\1\x81\1\x84\1\x8b\1\x8d\1\x90\1\x86\1\x82\2\x84\2\x88\1\x83\1\x82\1",
b"\x80\1\x81\1\x88\2\x84\1\x82\1\x84\4\x90\1\x81\2\x90\1\x84\5\x88\1\x8a\1\x91\1\x84\4\x92\2\x83\1\x93\1\x80\1",
b"\x80\2\x94\1\x83\1\x95\1\x96\1\x97\2\x98\1\x84\1\x88\3\x84\1\x98\1\x97\2\x92\1\x98\1\x84\1\x88\1\x84\1\x98\5\x84\1\x99\1\x80\2",
b"\x80\3\x81\1\x9a\1\x9b\1\x80\3\x97\1\x84\1\x88\2\x92\1\x80\3\x9b\1\x9c\1\x9d\1\x88\2\x96\1\x98\1\x96\1\x84\2\x93\1\x80\3",
b"\x80\4\x86\1\x9b\1\x80\3\x9b\1\x9e\1\x88\2\x9b\1\x80\3\x9b\2\x85\1\x88\2\x84\3\x95\1\x81\1\x80\4",
b"\x80\4\x81\1\x85\5\x84\2\x88\1\x9f\1\x85\5\x84\1\x88\1\x84\2\x82\1\x90\1\x80\6",
b"\x80\4\x81\1\x88\3\x84\1\x85\1\x98\1\x97\1\x84\1\x88\1\x9f\1\x84\1\x88\4\x84\1\x81\2\x86\1\x8c\1\x8b\1\x80\5",
b"\x80\4\x81\1\x84\1\x88\2\x85\1\x84\3\x88\3\x85\1\x88\4\x85\2\x87\1\x90\1\x8c\1\x8a\1\x80\5",
b"\x80\5\x94\1\x85\2\x84\1\x80\5\x84\2\x85\5\x87\1\x81\1\x8a\3\x80\5",
b"\x80\6\x81\1\x85\2\x84\5\x88\1\x85\6\x86\1\xa0\1\x80\2\x8a\1\x80\5",
b"\x80\6\xa1\1\x81\1\x85\6\x87\1\x85\5\x81\1\xa2\2\xa3\1\x80\a",
b"\x80\6\xa4\1\xa5\1\xa6\1\x90\1\x85\a\x9f\1\x85\1\xa5\1\xa2\4\xa4\1\x80\6",
b"\x80\6\xa4\1\xa2\3\xa7\1\xa8\1\xa9\4\xaa\1\xa5\1\xa2\2\xab\1\xa2\2\xa5\1\xac\1\x80\6",
b"\x80\5\xa4\1\xa5\1\xad\2\xa2\2\xae\1\xaf\3\xb0\1\xa5\1\xa2\3\xb1\1\xa5\1\xa2\3\xb2\1\x80\5",
b"\x80\5\xa4\1\xa5\1\xa3\1\xb3\2\x86\1\x81\3\xb4\1\xb3\1\xad\2\xa2\1\xad\1\xb2\1\xa5\1\xa2\3\xb2\1\x80\5",
b"\x80\5\xa4\1\xa5\1\xb2\1\x81\2\x84\2\x88\2\x82\1\xa4\1\xb2\1\xb3\1\xad\2\xb5\1\xa5\1\xa2\3\xb6\1\x80\5",
b"\x80\5\xa4\1\xa2\1\xa5\1\x90\1\x9b\1\x84\1\x8e\1\x84\1\x88\1\x81\1\xa5\2\xb5\1\xb2\2\xa2\4\xad\2\xb7\1\x80\4",
b"\x80\4\xb2\1\xa5\1\xa2\2\x81\1\x86\1\x94\1\x81\1\x9b\1\x90\2\xa2\6\xad\1\xa2\2\xad\2\xb7\1\x80\4",
b"\x80\4\xb2\1\xa2\3\x81\1\x87\1\x85\1\xb8\1\x95\1\xb9\1\xa5\1\xa2\1\xba\1\xa2\4\xad\1\xa2\1\xad\3\xb7\1\x80\4",
b"\x80\4\xb2\1\xa2\3\xbb\1\x81\2\xbc\2\xa4\1\xa2\2\xad\3\xa2\2\xad\5\xb7\1\x80\4",
b"\x80\4\xb2\1\xa5\1\xa2\2\xbd\1\xbe\1\xbf\1\xc0\1\xc1\1\xc2\1\xad\n\xb3\1\xc3\1\xa1\1\x80\4",
b"\x80\4\xb2\1\xad\1\xa2\2\xc4\1\xbe\2\xc5\1\xbc\1\xc2\1\xb3\1\xad\b\xb3\1\xb2\1\xb3\1\xb7\1\x80\4",
b"\x80\4\xb2\1\xad\2\xa2\1\xa5\1\xbb\1\xc6\2\xc7\1\xbc\1\xc8\1\xad\6\xb3\1\xa4\1\xb2\1\xb3\1\xad\1\xb7\1\x80\4",
b"\x80\5\xa4\1\xad\1\xa2\2\xc9\1\xc6\2\xca\1\xbc\1\xcb\1\xad\4\xb3\1\xb2\2\xad\4\xb7\1\x80\4",
b"\x80\5\xa0\1\xad\1\xa2\1\xad\1\xb3\1\xcc\1\xcd\1\xca\1\xbc\1\xcb\1\xb3\2\xa4\1\xa0\1\xa4\1\xb3\4\xad\2\xb7\1\x80\4",
b"\x80\5\xa0\1\xad\1\xb3\1\xce\1\x96\1\xcf\1\xd0\1\xd1\1\xbc\1\xc2\1\xb2\1\xd2\1\xd3\1\x92\1\x96\1\x98\1\x96\2\x92\1\xb3\1\xad\1\xb7\1\x80\4",
b"\x80\5\xa0\1\xb3\1\xce\1\x83\1\xd4\1\x83\1\xd5\1\x96\1\xd6\1\xd1\1\xb3\2\xce\1\x84\1\x98\1\x84\1\x83\1\x92\1\x83\1\x92\1\xd3\1\xb7\1\x80\4",
b"\x80\6\xa0\1\x81\6\xd1\1\xd7\1\xa1\2\x81\4\x82\1\x81\3\xa0\1\x80\5",),
((0, 0, 0), (74, 116, 0), (79, 114, 0), (192, 220, 53), (191, 219, 51), (136, 167, 0), (71, 114, 5), (137, 168, 0), (190, 218, 50), (141, 165, 0), (151, 153, 150), (150, 152, 149), (234, 237, 233), (235, 238, 234), (76, 112, 5), (78, 114, 8), (70, 113, 4), (68, 111, 1), (63, 100, 1), (69, 112, 2), (77, 113, 6), (75, 111, 3), (67, 103, 0), (65, 102, 4), (64, 101, 3), (80, 110, 4), (66, 116, 0), (255, 255, 255), (67, 97, 0), (72, 101, 0), (191, 219, 39), (134, 165, 0), (129, 98, 26), (130, 99, 27), (244, 240, 218), (123, 98, 14), (128, 97, 25), (245, 241, 219), (67, 110, 0), (127, 60, 27), (135, 67, 33), (132, 65, 37), (132, 64, 24), (249, 238, 218), (131, 99, 18), (224, 211, 186), (133, 65, 32), (135, 67, 39), (131, 63, 30), (126, 95, 13), (127, 96, 24), (225, 212, 187), (138, 64, 34), (127, 96, 15), (124, 99, 15), (128, 97, 33), (75, 117, 0), (129, 98, 34), (223, 210, 185), (125, 107, 45), (191, 83, 46), (124, 106, 44), (192, 173, 119), (87, 38, 18), (193, 79, 45), (194, 80, 46), (126, 101, 27), (124, 94, 11), (126, 102, 42), (83, 40, 17), (191, 172, 118), (88, 38, 19), (124, 99, 25), (126, 103, 49), (89, 39, 19), (125, 100, 26), (128, 104, 44), (192, 174, 126), (62, 99, 0), (127, 104, 50), (129, 106, 52), (90, 40, 20), (128, 97, 16), (226, 213, 188), (66, 103, 5), (58, 102, 2), (91, 41, 21), (87, 44, 21))
],
# petite plateforme d'apres https://gameartpartners.com/downloads/swamp-game-background/
[59,19,7,0,
(b"\x80\b\x81\n\x80\b\x81\16\x80\2\x81\f\x80\5",
b"\x80\a\x81\1\x82\1\x83\1\x82\4\x84\1\x85\1\x86\1\x87\1\x81\b\x86\1\x88\2\x89\1\x82\1\x88\1\x82\1\x88\1\x82\4\x8a\1\x8b\1\x81\2\x8b\1\x8c\1\x82\1\x88\3\x82\2\x88\1\x8a\1\x84\1\x8d\1\x81\2\x80\3",
b"\x80\5\x81\2\x82\4\x88\6\x82\3\x88\3\x82\1\x88\1\x82\1\x88\1\x82\1\x88\f\x82\1\x88\5\x82\3\x88\1\x82\3\x88\3\x81\1\x80\2",
b"\x80\3\x81\2\x8e\1\x8f\1\x88\a\x8a\1\x88\1\x90\1\x88(\x81\1\x80\1",
b"\x80\1\x81\2\x88\3\x82\1\x88\a\x82\1\x88)\x82\1\x88\1\x81\1",
b"\x81\1\x87\1\x82\1\x90\1\x88\n\x8e\1\x88\1\x82\1\x88(\x82\1\x81\1",
b"\x81\1\x91\1\x83\1\x82\1\x88\2\x82\1\x88\1\x82\3\x88\3\x82\1\x92\1\x82\1\x88\4\x82\1\x88\1\x82\1\x88\1\x82\4\x88\2\x82\5\x88\4\x82\2\x84\1\x88\1\x82\4\x88\2\x82\1\x88\2\x82\1\x88\3\x93\1\x80\1",
b"\x80\1\x81\1\x94\1\x88\a\x95\1\x94\2\x96\1\x94\1\x97\1\x98\1\x99\1\x9a\1\x8a\1\x8f\1\x88\1\x82\1\x88\1\x9b\2\x95\1\x8e\2\x9c\1\x9d\1\x99\1\x82\1\x88\2\x84\1\x94\2\x96\1\x94\1\x9e\1\x9f\1\x88\4\x8e\1\x88\2\x82\1\x88\3\x82\1\x88\2\x99\1\x80\2",
b"\x80\2\xa0\1\xa1\1\x82\2\x88\2\x8a\1\x96\1\x97\1\xa2\1\x96\2\xa2\1\x96\1\x98\1\xa2\1\x96\1\xa2\1\xa0\1\x88\1\x82\1\xa3\1\xa4\b\xa5\1\x9a\1\x88\1\xa2\1\x96\4\x92\1\xa6\1\xa2\1\xa7\2\xa0\1\xa2\1\x96\1\xa8\1\x95\1\x88\1\x82\1\x88\1\x82\1\x88\1\x90\1\x88\1\x80\2",
b"\x80\3\xa9\2\xaa\3\xa9\a\xaa\1\xab\1\xaa\3\xac\1\xad\1\xae\r\xa9\1\xaa\1\xa9\1\xaa\2\x92\1\x98\1\xa9\1\xaa\1\xa9\a\xaa\2\xa9\1\xab\1\xaf\1\xaa\1\x80\2",
b"\x80\5\xb0\2\xb1\1\xb0\b\xb2\1\xb0\3\xb1\1\xb3\1\xb4\n\xb3\1\xb4\1\xb5\1\xb0\5\xb1\2\xb0\v\xb1\1\xaf\1\xb1\1\x80\3",
b"\x80\6\xb1\n\xab\1\xb1\4\xb6\1\xb7\1\xb3\n\xb6\1\xb1\5\xb8\1\xb9\2\xb1\f\xaf\1\xb8\1\x80\3",
b"\x80\6\xba\1\xbb\16\xbc\f\xab\1\xbb\a\xb9\1\xbb\v\x9f\1\xbb\2\x80\3",
b"\x80\6\xbd\n\xbe\3\xbd\1\xbe\1\xbf\1\xc0\1\xc1\n\xbd\1\xbe\1\xbd\4\xbe\1\xbd\1\xbe\2\xbd\v\xc2\1\x80\4",
b"\x80\a\xc3\20\xc1\n\xc3\24\xc4\1\x80\5",
b"\x80\b\xc5\1\xc6\1\xc5\2\xc6\1\xc5\1\xc6\2\xc5\1\xc6\1\xc5\1\xc6\1\xc5\1\xc6\1\xc5\1\xc7\3\xc8\1\xc7\5\xc5\4\xc6\1\xc5\2\xc6\4\xc5\a\xc9\1\xc5\1\x80\a",
b"\x80\n\xca\1\xcb\1\xcc\5\xcb\1\xcd\1\xce\1\xcc\1\xca\1\xcb\1\xcf\1\xd0\1\xd1\1\x80\4\xd2\1\xcf\1\xcc\6\xca\1\xcc\1\xcb\1\xcc\t\x80\t",
b"\x80\v\xcd\1\xd3\1\xca\1\xcd\1\xd4\1\xca\1\x80\4\xd5\1\xd6\1\xd0\1\x80\b\xcd\1\xd3\1\xd4\1\xd5\1\x80\1\xcd\1\xd4\1\xd3\1\x80\2\xd4\1\xcd\1\xca\3\xd4\1\xca\1\x80\n",
b"\x80\f\xd7\2\x80\23\xd7\1\x80\v\xd8\1\xd7\1\x80\f",),
((255, 0, 255), (0, 0, 0), (66, 146, 8), (66, 146, 0), (66, 138, 8), (66, 134, 8), (66, 130, 16), (66, 121, 16), (58, 146, 8), (66, 142, 0), (66, 142, 8), (74, 125, 25), (66, 134, 16), (66, 125, 16), (74, 125, 16), (58, 146, 0), (58, 142, 8), (82, 113, 25), (99, 61, 41), (107, 73, 33), (115, 77, 41), (74, 130, 16), (115, 73, 41), (107, 69, 41), (90, 53, 41), (82, 121, 16), (74, 134, 16), (74, 134, 8), (74, 121, 16), (74, 117, 16), (99, 61, 33), (90, 57, 33), (115, 69, 41), (107, 81, 41), (107, 73, 41), (99, 85, 25), (107, 61, 33), (107, 61, 25), (90, 53, 33), (82, 113, 16), (99, 89, 33), (107, 65, 41), (107, 65, 49), (90, 49, 41), (99, 77, 41), (99, 73, 33), (107, 57, 33), (82, 49, 41), (99, 61, 49), (99, 57, 49), (82, 45, 41), (99, 49, 33), (99, 53, 33), (99, 53, 41), (90, 49, 33), (99, 49, 41), (99, 53, 49), (90, 53, 49), (99, 49, 49), (90, 49, 49), (90, 45, 41), (90, 45, 58), (82, 45, 58), (82, 45, 49), (90, 40, 49), (82, 40, 41), (74, 49, 49), (82, 40, 58), (58, 45, 41), (82, 36, 58), (74, 36, 58), (74, 36, 41), (82, 36, 41), (82, 36, 66), (74, 28, 66), (74, 32, 66), (74, 32, 58), (74, 28, 58), (58, 32, 49), (74, 36, 49), (74, 32, 49), (74, 32, 41), (66, 36, 41), (74, 24, 66), (66, 28, 66), (66, 28, 58), (74, 24, 58), (66, 24, 66), (66, 20, 66))
],
# grande plateforme d'apres https://gameartpartners.com/downloads/swamp-game-background/
[104,28,7,0,
(b"\x80\4\x81\2\x80b",
b"\x80\3\x81\1\x82\1\x83\1\x81\n\x80X",
b"\x80\1\x81\2\x84\1\x85\1\x84\3\x86\2\x84\5\x87\1\x81\3\x80D\x81\r\x80\4",
b"\x81\1\x86\1\x85\2\x84\17\x81\3\x80\3\x81\2\x807\x81\5\x84\1\x88\1\x89\1\x8a\1\x84\t\x81\2\x80\2",
b"\x8b\1\x85\1\x84\2\x85\1\x84\r\x8c\1\x86\1\x85\1\x86\1\x81\1\x80\1\x81\1\x84\2\x81\2\x804\x81\1\x85\1\x86\1\x84\2\x86\1\x84\1\x85\1\x84\v\x85\1\x84\1\x81\1\x80\1",
b"\x80\1\x8d\1\x8e\1\x86\2\x85\1\x84\f\x85\1\x86\2\x84\1\x8f\1\x81\1\x85\1\x84\1\x85\2\x90\1\x81\3\x80\23\x81\5\x80\24\x81\5\x84\1\x85\1\x84\1\x85\2\x84\1\x86\1\x85\1\x86\1\x84\1\x8c\1\x84\a\x85\2\x86\1\x8c\1\x81\1",
b"\x80\1\x91\1\x92\1\x93\1\x85\2\x84\1\x8c\1\x85\1\x84\r\x85\1\x84\b\x94\1\x81\23\x8c\1\x95\1\x96\1\x95\1\x8a\1\x81\24\x97\1\x90\1\x8a\1\x84\1\x86\1\x84\17\x85\1\x84\4\x98\1\x91\1\x80\1",
b"\x80\2\x99\1\x91\1\x93\1\x9a\1\x85\2\x84\5\x86\1\x84\b\x8c\1\x84\b\x86\1\x95\4\x96\1\x95\1\x96\3\x95\4\x96\1\x95\2\x96\1\x95\3\x86\1\x95\3\x96\1\x95\1\x96\1\x95\2\x96\1\x95\a\x96\1\x84\3\x85\1\x8c\1\x84\1\x85\2\x84\1\x85\1\x84\20\x85\1\x84\2\x9b\1\x9c\1\x9d\1\x80\2",
b"\x80\3\x9d\1\x91\1\x92\1\x9a\1\x84\1\x94\1\x84\5\x85\1\x84\a\x85\1\x84\a\x85\1\x96\2\x95\4\x96\1\x95\1\x96\1\x95\b\x96\1\x95\1\x96\1\x95\1\x96\3\x95\4\x96\1\x95\3\x96\1\x95\5\x84\v\x86\1\x84\17\x8c\1\x84\1\x9e\1\x92\1\x91\1\x9f\1\x80\2",
b"\x80\4\x9d\1\x91\1\x92\1\xa0\1\x92\1\xa1\1\x85\1\x86\1\x84\1\x8c\1\x86\1\x84\1\x85\1\x84\2\x86\1\x84\2\x85\1\x84\a\x85\1\x95\r\x96\1\x95\25\x96\3\x95\1\x84\3\x85\1\x84\5\x85\1\x84\2\x86\1\x84\5\x86\1\x85\1\x84\1\x85\1\x86\2\xa2\1\x85\1\xa3\1\xa4\1\x91\1\x9d\1\x80\4",
b"\x80\5\xa5\1\x91\1\xa6\1\x92\1\x9a\1\xa1\1\x83\1\x84\2\xa7\1\xa8\1\xa9\1\x84\2\x8f\1\x88\1\x86\1\x84\1\x86\1\x84\a\x95\f\x96\2\x95\25\x96\2\x95\4\x85\2\x8c\1\x84\b\x86\1\x84\3\x8a\1\x84\1\x86\1\x84\1\x86\1\x84\1\x9a\1\xaa\1\xab\1\x91\1\x9d\2\x80\5",
b"\x80\6\xa5\1\xa6\1\x91\1\x9c\1\x9a\2\xa1\1\xac\1\xad\1\xae\1\xaf\2\x88\1\x8a\1\x89\3\x86\1\x84\a\x96\1\x95\n\x84\1\x95\1\x84\1\x95\25\x96\1\x86\1\x95\4\x85\2\x84\5\x85\1\x89\3\xb0\1\x84\2\xb1\1\xb2\1\x9e\1\x84\2\x86\1\x9b\1\xb3\1\x91\1\xb4\1\x9d\1\xb5\1\x80\6",
b"\x80\b\x9d\1\x91\1\x9c\1\x93\1\x8d\1\xa1\1\xb6\1\xae\2\xb7\1\xaf\1\xb8\1\xb9\1\xba\1\x84\1\x86\1\x85\2\x8c\1\xbb\1\xbc\1\x85\1\x84\2\x96\1\x95\1\x96\1\x95\1\x96\1\x95\1\x96\2\x95\2\x96\2\xbd\1\xa9\1\x84\1\xbe\1\x90\1\xbf\1\xc0\1\x95\2\x96\1\x95\2\x96\1\x95\1\x96\2\x95\1\x96\1\x95\1\x96\1\x95\1\x96\1\x95\1\x96\1\xa7\1\xc1\1\xc2\1\x8f\1\xc3\1\x89\3\x84\2\x8c\1\x86\1\x85\1\xba\1\xb8\1\xc4\1\xaf\1\xae\1\xb7\1\xae\1\xb6\1\xa1\1\x8d\1\x93\2\x91\1\x9d\1\xa5\1\xc5\1\x80\a",
b"\x80\n\x9d\1\x91\2\x93\1\xc6\1\xc7\1\xc8\1\xae\1\xb7\1\xc9\1\xca\1\xaf\1\xcb\1\xcc\1\xcd\1\x84\2\x86\1\x89\2\xb0\1\x96\1\x95\1\x96\2\x95\2\xbf\1\xce\1\xba\2\xcf\1\x96\1\x8f\1\x89\1\xd0\1\x89\3\xba\1\x89\1\x96\1\x95\1\xbc\1\xcc\2\xd1\2\xd2\1\x95\2\x84\1\xba\1\x89\1\xba\2\x89\1\xba\1\x89\1\xd3\1\xba\1\x89\3\xd4\1\x86\1\x8c\1\x86\1\xd5\1\xd6\1\xaf\1\xd7\1\xca\1\xd8\1\xae\1\xc8\2\xc7\1\x9a\1\x93\1\x9c\1\x91\1\x9d\1\xa5\1\xb5\1\x80\t",
b"\x80\v\x9d\1\x91\1\x92\1\xa0\1\xc7\2\xc8\1\xb6\1\xd9\1\xd7\1\xaf\2\xda\1\xd1\2\xdb\1\xdc\1\xb9\1\xba\1\x89\1\xba\3\x90\1\xdd\1\xba\4\xb9\1\xba\3\xde\1\xd0\1\xba\5\xd5\1\xda\1\xdf\1\xd6\2\xda\1\xd6\1\xcb\1\xe0\1\x96\1\x95\1\xe1\1\xba\4\xb9\1\xba\1\xd0\1\xba\2\x89\3\xcc\1\xcd\1\xd1\1\xcb\1\xda\1\xaf\1\xb7\1\xd9\1\xad\1\xc7\1\xc8\1\xc6\1\xa0\1\x93\1\x91\1\x9d\1\x99\1\x80\f",
b"\x80\r\xe2\1\xa0\2\xe3\1\xc7\1\xa1\1\xad\1\xae\1\xb7\2\xaf\1\xda\2\xcc\2\xe4\1\x89\2\xb8\16\xe5\1\xb8\5\xda\1\xaf\1\xda\1\xaf\a\x95\1\x96\1\xb9\1\xb8\1\xca\1\xb8\3\xe5\1\xb8\1\x89\4\xcc\1\xda\2\xaf\1\xb7\2\xae\1\xe6\1\xa1\1\x9a\1\xc7\1\xc6\1\xa0\1\xa6\1\x80\17",
b"\x80\16\xe7\1\xa0\1\xe8\1\xb3\1\x8d\1\xc7\1\xe9\1\xae\1\xb7\2\xaf\2\xda\1\xcc\1\xe4\1\x89\3\xc4\v\xca\2\xea\1\xc4\1\xca\1\xc4\3\xaf\t\xeb\1\xaf\1\x95\1\xb8\1\xc4\3\xca\1\xc4\1\xe5\1\xca\2\x89\2\xba\1\xb8\1\xaf\2\xb7\2\xae\1\xc8\1\xc7\1\x9a\1\xb3\1\xa0\2\xe7\1\x80\20",
b"\x80\16\xe7\1\xe2\1\x80\1\xab\1\x93\1\xc7\2\xe9\1\xae\1\xb7\2\xaf\2\xda\1\xcc\1\x89\3\xd8\r\xea\1\xd8\5\xb7\v\xeb\1\x95\1\xc9\1\xd8\3\xc9\1\xec\1\xd8\2\xc4\1\xba\1\xb8\1\xed\1\xeb\1\xb7\2\xae\1\xc8\1\xc7\2\xa0\1\x91\1\xab\1\xa0\1\xee\1\x80\20",
b"\x80\22\xa0\2\xc7\2\xe9\1\xae\1\xb7\3\xaf\1\xc4\1\xba\1\x89\2\xd8\1\xad\f\xef\1\xad\5\xb7\r\xf0\1\xad\b\xb8\1\xca\1\xd8\1\xad\1\xae\1\xe9\1\xf1\1\xc7\1\xef\1\xa0\2\x9d\1\x80\23",
b"\x80\23\xa0\1\xef\2\xc7\1\xf1\2\xb7\3\xc4\1\xb8\2\xba\2\xb6\f\xef\1\xb6\5\xe9\1\xae\v\xe9\1\xe5\1\xad\1\xb6\2\xa1\1\xb6\4\xd8\1\xad\2\xb6\2\xc7\2\xef\1\xa0\1\xf2\1\xf3\1\xa6\1\x80\23",
b"\x80\23\xaa\1\xa0\1\xef\2\xc7\1\xf1\2\xd0\1\xb7\1\xd7\1\xca\1\xc4\1\xb8\1\xba\1\xa1\f\xef\1\xa1\1\xb6\1\xa1\3\xc7\r\x9a\1\xb6\1\xa1\2\x9a\1\xa1\4\xad\2\xa1\1\x9a\2\xc7\1\xef\1\xa0\1\xe7\1\xaa\1\xb4\1\x80\24",
b"\x80\24\x92\1\xef\1\xea\2\xf1\2\xe5\2\xad\2\xca\2\xb8\1\x8d\1\x9a\5\x8d\6\xe7\1\x8d\3\x9a\1\x8d\1\xc7\r\x8d\1\x9a\4\x8d\1\x9a\3\xa1\2\xb3\2\x9c\1\xab\1\xef\1\xe7\1\x80\27",
b"\x80\30\xea\2\xf4\1\xe5\1\xb6\2\xad\1\xd9\1\xca\1\x80\1\x91\1\x93\2\x9c\1\x93\a\xe7\1\x93\1\x9c\1\x93\3\xa0\r\xb3\1\x93\2\x9c\1\xe5\1\xf5\1\xa4\1\x9c\1\x93\1\x8d\1\xf6\1\x92\1\x91\2\x9d\1\x8b\1\x80\30",
b"\x80\34\xf7\1\x80\6\xf8\1\x91\t\xef\1\x91\1\x9c\2\x91\2\xa0\f\xab\1\x91\3\xa4\1\x80\3\xf9\1\x91\2\x92\1\x91\1\x9d\1\xfa\1\x80\32",
b"\x80'\x9d\2\x91\1\x9d\3\xab\1\x9d\5\xa0\6\xf2\2\xa0\1\xf2\2\xa0\1\x9d\2\x91\1\x9d\1\x80%",
b"\x80*\xb5\1\xa5\1\xb5\1\xf3\1\xb5\3\xa5\2\xa6\n\xb4\1\xa6\1\xb5\2\x9d\1\x80&",
b"\x80+\xfb\1\xb5\1\xa5\1\xb5\2\xfc\2\xb4\1\xa6\b\xe7\1\xaa\1\xa6\2\xb5\2\x80'",
b"\x803\xfd\1\xb4\1\xfe\1\xb4\1\x80\a\xb4\1\xff\1\x80(",),
((255, 0, 255), (0, 0, 0), (62, 121, 12), (69, 107, 22), (68, 142, 9), (64, 139, 20), (58, 142, 6), (67, 112, 26), (74, 125, 20), (114, 77, 42), (65, 132, 11), (69, 50, 48), (65, 139, 3), (89, 49, 55), (81, 85, 43), (98, 99, 31), (73, 131, 13), (82, 39, 57), (84, 44, 50), (90, 45, 58), (74, 105, 21), (53, 147, 13), (64, 146, 0), (74, 117, 10), (73, 105, 29), (57, 37, 41), (90, 49, 50), (75, 101, 34), (82, 44, 60), (83, 35, 60), (87, 77, 39), (82, 36, 66), (81, 40, 42), (89, 53, 47), (75, 89, 32), (81, 66, 47), (91, 40, 56), (76, 35, 57), (74, 35, 42), (89, 91, 30), (99, 69, 38), (76, 113, 19), (72, 40, 49), (84, 39, 48), (82, 85, 31), (100, 56, 48), (100, 49, 34), (108, 56, 35), (107, 85, 32), (89, 70, 23), (101, 61, 40), (91, 44, 48), (74, 36, 47), (72, 33, 59), (101, 52, 51), (99, 53, 30), (106, 70, 41), (117, 68, 39), (115, 72, 40), (109, 92, 30), (81, 111, 19), (92, 72, 32), (73, 138, 4), (82, 119, 26), (89, 113, 23), (83, 85, 24), (91, 109, 20), (114, 82, 39), (106, 65, 39), (74, 28, 58), (92, 39, 41), (92, 44, 43), (88, 45, 33), (99, 66, 47), (106, 66, 50), (108, 60, 25), (115, 66, 31), (99, 94, 28), (107, 81, 42), (106, 90, 34), (92, 53, 32), (115, 66, 24), (97, 81, 26), (90, 57, 34), (115, 82, 33), (99, 88, 24), (115, 62, 35), (107, 61, 42), (107, 61, 48), (99, 61, 50), (107, 60, 31), (88, 106, 25), (106, 69, 22), (100, 89, 32), (116, 73, 46), (115, 61, 22), (107, 65, 33), (106, 85, 38), (67, 37, 40), (89, 40, 30), (116, 72, 34), (90, 53, 42), (98, 53, 40), (74, 40, 39), (82, 40, 33), (91, 48, 35), (80, 50, 42), (98, 58, 32), (90, 57, 40), (109, 68, 46), (74, 45, 42), (81, 45, 40), (99, 65, 41), (91, 48, 40), (82, 36, 41), (80, 37, 50), (84, 52, 40), (76, 53, 47), (84, 49, 48), (68, 81, 48), (68, 73, 59), (73, 57, 60), (75, 44, 57), (58, 48, 49), (75, 31, 65), (42, 130, 19), (74, 32, 49), (76, 26, 68))
],
# paysage de marécages d'apres https://gameartpartners.com/downloads/swamp-game-background/
[384,192,7,0,
(b"\x80\1\x81\1\x82\1\x83\1\x84\3\x85\1\x86\1\x81\3\x86\1\x81\2\x84\1\x87\4\x84\2\x86\1\x81\4\x82\1\x88\1\x87\2\x86\2\x81\3\x86\1\x81\1\x87\2\x83\1\x81\25\x89\1\x84\2\x81\3\x84\2\x85\1\x81\t\x86\1\x87\1\x84\1\x87\1\x8a\1\x81\2\x84\3\x8b\1\x81\4\x84\2\x89\1\x86\2\x87\2\x84\1\x87\1\x84\1\x83\1\x86\16\x8c\1\x84\2\x86\n\x87\1\x84\2\x86\b\x87\1\x8d\1\x84\1\x8c\1\x86\v\x8a\1\x84\1\x87\1\x86\f\x87\1\x84\1\x86\1\x81\1\x84\1\x85\1\x86\n\x84\1\x87\1\x8e\1\x86\5\x8f\1\x90\1\x80\1\x91\1\x87\2\x80\5\x8f\2\x87\1\x84\1\x87\1\x92\1\x80\2\x8d\1\x84\2\x81\5\x84\2\x87\1\x81\1\x84\2\x8a\1\x81\17\x88\1\x84\2\x81\v\x84\3\x81\1\x87\1\x84\2\x93\1\x81\t\x87\2\x88\1\x81\2\x8c\1\x87\1\x84\1\x81\1\x82\1\x81\1\x94\1\x92\1\x84\1\x87\1\x95\1\x92\b\x87\1\x84\1\x8f\3\x96\1\x92\4\x97\1\x82\1\x81\4\x84\2\x8c\1\x81\5\x84\2\x88\1\x81\5\x87\1\x84\2\x81\1\x8d\1\x84\1\x81\6\x98\1\x84\2\x81\4\x89\1\x84\2\x87\1\x81\6\x89\1\x84\2\x85\1\x81\17\x99\1\x80\1",
b"\x80\1\x81\3\x87\1\x84\3\x81\a\x84\2\x87\1\x81\1\x88\1\x87\1\x84\2\x81\5\x87\1\x8d\1\x93\1\x81\a\x93\1\x84\1\x9a\1\x81\25\x89\1\x84\2\x8b\1\x81\2\x84\2\x83\1\x81\n\x84\3\x81\3\x9a\1\x84\3\x81\4\x84\2\x93\1\x86\3\x9a\1\x87\1\x84\2\x8d\1\x9b\1\x86\r\x89\1\x84\2\x86\v\x84\2\x87\1\x86\6\x8a\1\x84\3\x85\1\x86\v\x87\1\x9b\1\x8b\1\x86\f\x84\2\x8a\1\x83\1\x87\1\x8c\1\x86\n\x87\1\x84\1\x87\1\x86\5\x90\1\x8f\1\x80\2\x84\2\x80\5\x96\1\x9c\1\x84\2\x9d\1\x81\1\x9e\1\x82\1\x87\1\x84\2\x81\5\x9a\1\x84\2\x81\1\x84\2\x85\1\x81\17\x8a\1\x84\2\x81\n\x87\2\x84\1\x89\1\x81\2\x84\1\x87\1\x84\1\x88\1\x81\b\x84\2\x83\1\x81\3\x84\2\x87\1\x81\1\x95\1\x92\1\x9f\1\x84\2\xa0\1\x92\5\x95\1\x92\2\x84\2\xa1\1\x8f\3\x92\4\x97\1\xa2\1\x89\3\x85\1\x87\1\x84\1\x81\4\x89\2\x84\1\x87\1\x88\1\x89\5\x8d\1\x87\2\x89\1\x85\1\x84\1\x83\1\xa0\1\x89\4\x84\1\x87\1\x84\1\x89\2\xa0\1\x81\1\x8b\1\x84\3\x89\a\x84\2\x83\1\x89\20\x80\1",
b"\x80\1\xa2\1\x80\1\x82\1\x84\3\x87\1\x89\1\x81\6\x84\3\x81\3\x84\3\x89\1\x81\2\x84\1\x87\1\x84\1\x81\t\x84\2\x81\25\x89\1\x84\1\x87\1\x83\1\x81\2\x87\1\x84\1\x88\1\x81\n\x87\1\x84\2\x81\5\x87\1\x84\1\x87\1\x9c\1\xa2\1\xa0\1\x84\2\xa3\1\x86\1\x81\1\x86\1\x82\1\x86\1\x81\1\x85\1\x87\2\x84\1\xa3\1\x86\1\x82\1\x86\3\x81\3\x86\3\x81\1\x84\2\x81\1\x86\n\x81\1\x87\2\x84\1\x8b\1\x81\2\x86\1\x88\1\x84\1\x87\2\x84\1\x87\1\x86\1\x81\2\x86\2\x81\3\x86\3\x84\2\x81\4\x86\6\x81\2\x86\1\xa3\1\x84\4\x89\1\x81\1\x86\t\x93\1\x87\1\x84\1\x86\1\x81\1\x86\3\x81\1\x86\2\x81\1\x87\1\x84\1\x80\6\x87\1\x84\2\x81\3\x82\1\x84\1\x87\1\x84\1\x81\5\x89\1\x84\2\x81\1\x84\3\x81\20\x84\2\x81\t\x87\2\x84\1\x8b\1\x81\4\x84\3\x83\1\x81\a\x84\2\x89\1\x81\3\x8a\1\x84\1\x87\1\x83\1\x81\2\x87\1\x84\1\xa3\1\x81\1\xa2\1\x92\a\xa4\1\x84\1\x9f\1\x8f\3\x92\5\x89\3\x8c\1\x84\2\x8b\1\x89\6\x87\1\x84\1\xa3\1\x89\5\x87\1\x84\2\x89\2\x84\2\x89\5\x84\2\x8b\1\xa0\2\x89\2\x87\1\x84\2\x89\b\x84\1\x87\1\x84\1\x89\16\xa0\1\x81\1\x89\1",
b"\x80\3\x81\1\x87\1\x84\4\x81\6\x83\1\x84\1\x87\1\x81\4\x84\1\x87\1\x84\1\x8a\1\x84\2\x9b\1\x81\n\x84\2\x81\25\x8b\1\x87\1\x84\1\x85\1\x81\2\x85\1\x87\1\x84\1\x81\t\x85\1\x84\3\x81\6\x84\2\x87\1\x86\1\x8b\1\x87\3\x81\b\x8e\1\x84\1\x87\1\x84\1\x89\1\x81\n\x87\1\x84\1\x81\f\x82\1\x9a\1\x87\1\x84\1\x8e\1\x81\1\x8b\1\x84\1\x87\1\x8c\1\x81\1\x84\1\x87\1\x81\v\x84\2\x81\r\x8a\1\x84\1\x87\1\x84\2\x81\f\x84\2\x81\t\x84\2\x80\5\xa5\1\x84\3\x81\4\x84\3\x81\6\x84\1\x87\1\x81\1\x84\3\x81\20\x84\2\x81\b\x89\1\x84\2\x87\1\x81\5\x84\3\x87\1\x81\6\x83\1\x84\2\x81\5\x84\3\x81\2\x87\1\x84\1\x8b\1\x81\6\x94\1\x92\2\xa6\1\x84\1\xa7\1\x8f\3\x96\1\x92\5\x97\1\x89\1\x84\3\x89\a\x84\2\x85\1\x89\5\xa0\1\x87\1\x84\1\x89\2\x87\2\x88\1\x89\3\x9a\1\x84\1\x87\1\x89\4\x84\1\x87\1\x84\1\x89\t\x83\1\x84\2\x89\16\x8f\1\xa0\1\x80\1",
b"\x80\2\xa8\1\x9e\1\x8b\1\x84\1\x87\1\x84\2\x81\1\x82\1\x81\4\x93\1\x84\2\x81\5\x84\4\x87\1\x85\1\x81\n\x84\2\x81\25\x8a\1\x84\1\x87\1\x85\1\x81\2\x89\1\x84\2\x83\1\x89\1\x82\1\x81\6\x84\3\x85\1\x81\3\x89\1\x81\2\x89\1\x84\1\x87\2\xa9\1\x87\2\x9b\1\x81\t\x8b\1\x87\1\x84\2\x81\t\x8b\1\x84\2\x81\16\x85\1\x84\2\x85\1\x84\3\x81\2\x87\1\xa3\1\x81\v\x84\2\x81\r\x89\1\x84\2\x87\1\x84\1\x81\f\x84\1\x9b\1\x81\b\xaa\1\x87\1\x84\1\x80\5\x84\3\x9a\1\x81\4\x84\2\x87\1\x81\6\x84\1\x87\1\x81\1\x85\1\x84\2\x81\20\x88\1\x84\1\x81\b\x8d\1\x84\2\x81\6\x84\3\x87\1\x84\1\x81\5\xa3\1\x84\2\x81\5\x87\1\x84\2\x81\2\x84\2\x81\6\x82\1\x81\1\xab\1\x92\1\xa2\1\x84\1\x83\1\x81\1\x8f\1\x9c\1\x90\1\x92\6\xa2\1\x84\1\x87\1\x84\1\x89\a\x84\2\x83\1\x89\6\x84\2\x89\2\x83\1\x84\2\x89\3\x84\2\x88\1\x89\4\x87\1\x84\1\x8d\1\x89\n\x84\2\x89\r\xa0\1\x89\1\x9e\1\x80\1",
b"\x80\5\x88\1\x84\2\x87\1\x9a\1\x89\5\x8a\1\x87\1\x84\1\x89\6\x87\1\x84\3\x81\1\x89\n\x84\1\x87\1\x89\25\x85\1\x84\1\x87\1\x89\2\x81\1\x89\1\x87\1\x84\2\x89\a\x85\1\x84\2\x87\1\x89\b\x87\1\x84\1\x87\1\xa3\1\x84\2\x8c\1\x81\v\x87\1\x84\2\x81\b\x9a\1\x84\1\x87\1\x81\17\x9a\1\x84\2\x87\2\x9a\1\x81\2\x84\1\x93\1\x81\v\x84\2\x81\r\x98\1\x84\1\x87\1\x84\1\x87\1\x81\f\x84\1\x87\1\x81\a\xa0\1\x80\1\x87\1\x84\1\x80\4\x8b\1\x84\2\x87\1\x81\5\x84\2\x85\1\x81\6\x87\1\x84\1\x81\2\x84\3\x81\17\x85\1\x84\1\x81\b\x84\2\xa3\1\x82\1\x81\5\x84\5\x81\5\x84\3\x81\5\x89\1\x84\1\x9b\1\x87\1\x85\1\x84\2\x81\v\x84\1\x93\1\x81\2\x8f\1\x9c\1\x92\3\xac\1\x89\1\xa0\1\x8b\1\x84\3\x89\a\x84\2\x8a\1\x89\6\x85\1\x84\1\x8a\1\x89\2\x84\2\x89\2\x8b\1\x84\1\x87\1\x89\4\xa3\1\x87\1\x84\1\x89\v\x84\2\x89\v\x80\1\x9c\1\x89\1\x9c\1\x80\2",
b"\x80\3\x94\1\x80\1\x95\1\x8d\1\x84\3\x89\5\x83\1\x84\1\x9a\1\x89\a\x87\1\x84\1\x87\1\x9a\1\x81\1\x82\1\x89\b\x84\1\x8e\1\x89\22\xa0\1\x89\1\x8e\1\x84\2\xa3\1\x89\4\x8a\1\x87\1\x84\1\x87\1\x89\6\x84\3\x85\1\x89\b\xa0\1\x84\5\x81\r\x84\1\x87\2\x8a\1\x81\1\x82\1\x81\1\x82\1\x81\2\x87\1\x84\1\x85\1\x81\20\xa3\1\x87\1\x84\2\x81\2\x83\1\x84\1\x81\f\x84\2\x81\n\x82\1\x81\2\x84\5\x81\v\x93\1\x84\1\x93\1\x81\b\x83\1\x87\1\xad\1\x80\4\x91\1\x84\2\x85\1\x81\5\x87\1\x84\1\x8b\1\x81\6\x84\2\x81\2\x83\1\x87\2\x8b\1\x81\16\x85\1\x87\1\x81\a\x87\1\x84\2\x81\6\x85\1\x84\4\x98\1\x82\1\x81\4\x84\3\x81\6\x84\4\x87\1\x84\1\x81\v\x84\1\x8a\1\x96\1\x9c\3\x92\4\x8b\1\x89\1\x8b\1\x87\1\x84\2\x89\2\x8b\4\x8a\1\x84\1\x87\1\x8b\5\x89\1\x8b\1\x98\1\x84\1\x8a\1\x8b\1\x89\1\x84\2\xa3\1\x8b\1\x87\1\x84\1\xae\1\x8b\4\x84\1\x87\1\x84\1\x8b\v\x87\1\x84\1\x89\1\x8b\b\x89\1\x8b\1\x89\1\xa1\1\x9c\1\x89\1\x96\1\x80\1",
b"\x80\4\x89\2\x84\4\x89\5\x88\1\x84\1\x8c\1\x89\a\x85\1\x84\2\x87\1\xa3\1\x89\t\x87\1\x83\1\x89\22\xa0\1\x84\4\x8a\1\x89\5\x84\1\x87\1\x84\1\x89\6\x87\1\x84\2\x89\b\xa0\1\x92\1\xa4\1\x84\3\x88\1\x81\16\x84\1\x8d\1\x87\1\x81\5\x89\1\x84\1\x87\1\x81\22\x84\1\x87\2\x98\1\x81\1\x84\2\x81\f\x84\2\x8b\1\x81\v\x89\1\x84\1\x87\1\x9a\1\x84\2\x81\v\x87\1\x9b\1\x81\t\x87\1\x84\1\x80\5\x9b\1\x84\2\x8b\1\x81\4\x93\1\x84\2\x81\a\x84\2\x81\3\x87\1\x84\1\x87\1\x82\1\x81\r\x88\1\x84\1\x81\a\x84\2\x89\1\x81\6\x8d\1\x87\1\x84\1\x87\1\xa3\1\x81\6\x84\2\x9a\1\x81\6\x87\1\x84\4\xa3\1\x81\v\x87\1\x89\1\x97\1\x81\3\x96\1\x92\2\x89\1\x8b\3\x83\1\x84\2\x83\1\x8b\5\x83\1\x84\2\x8b\a\x93\1\x84\1\x8b\3\x88\1\x87\1\x84\3\x87\1\x8b\5\x84\2\x87\1\x8b\v\x87\1\x9b\1\x8b\17\xaf\1\x80\1",
b"\x80\3\xa0\1\x89\2\x8a\1\x84\2\x87\1\x84\1\x89\2\xa0\1\x89\1\x84\1\x9b\1\x89\b\x8b\1\x87\1\x84\2\x87\2\x89\a\xa3\1\x87\1\x89\23\x8a\1\x87\1\x84\2\x87\1\x89\a\x87\1\x9b\1\x84\1\x88\1\x89\3\x9b\1\x84\3\x89\b\x99\2\x84\4\x81\20\x84\3\x81\3\x87\1\x84\1\x87\1\x81\22\x89\1\x84\6\x81\r\x87\1\x84\1\x87\1\x81\t\x89\1\x84\2\x87\1\x81\1\x88\1\x84\1\x9b\1\x81\n\x98\1\x87\1\x84\1\x81\a\x84\3\x80\5\x81\1\x84\3\x81\5\x9b\1\x84\2\x81\6\x89\1\x84\1\x87\1\x81\2\x82\1\x84\3\x89\1\x81\r\x87\1\x84\1\x81\6\x85\1\x84\1\x87\1\x81\6\x87\1\x84\3\x8b\1\x81\1\x89\1\x81\4\x89\1\x84\2\x89\1\x81\5\x82\1\x81\1\x87\1\x84\3\x81\v\x83\1\x84\1\x81\5\xb0\1\x92\4\x90\1\x8b\2\x9b\1\x84\2\x8b\5\xa3\1\x87\1\x84\1\x8b\a\xa3\1\x84\1\x8b\4\x84\3\x87\1\x84\1\x8b\4\x98\1\x84\2\x8a\1\x8b\v\x84\2\x8b\16\xab\2\x80\1",
b"\x80\4\x89\1\x80\1\x89\1\x84\4\x87\1\x89\2\x84\2\x8a\1\x89\t\x84\4\x87\1\x84\1\x83\1\x89\1\xa0\1\x89\1\xa0\1\x84\1\x87\2\x89\1\x8b\1\x89\22\x9a\1\x84\3\x89\b\x87\1\x84\3\x89\2\x84\3\x8b\1\x89\5\x8b\1\x89\3\x98\1\x87\1\x84\3\xa6\1\x92\1\xb0\1\x81\1\x89\2\x81\a\xa0\2\x81\1\x8b\1\x84\3\x81\1\x87\2\x9b\1\x81\21\x89\1\x81\1\x87\1\x84\2\x87\1\x84\2\x8a\1\x81\16\x84\1\x87\1\x81\1\x89\1\x81\5\x89\1\x81\1\x84\3\x8c\1\x89\1\x87\2\x9a\1\x81\t\x87\1\x84\1\x87\1\x89\1\x81\6\x84\3\x87\1\x80\6\x84\1\x8d\1\x84\1\x89\1\x81\4\x84\1\x87\1\xa3\1\x81\6\x84\2\x8b\1\x81\3\x8b\1\x87\1\x84\2\x81\1\x89\1\x81\t\x89\1\x9a\1\x84\1\x9a\1\x81\2\x89\3\x81\1\x84\2\xae\1\x89\6\x84\3\x89\b\x85\1\x84\1\x87\1\x81\3\x89\3\x81\2\x93\1\x84\3\x81\1\x89\1\x81\5\x89\1\x81\1\x89\1\x81\1\x8d\1\x84\1\x82\1\x81\4\x89\1\xa0\2\x99\1\x90\1\x8b\3\x8a\1\x87\1\x84\1\x87\1\x8b\4\x84\3\x8b\6\x98\1\x84\1\x87\1\x8b\4\xae\1\x9b\1\x84\2\x9a\1\x8b\4\x9a\1\x87\1\x84\1\x8b\v\xa3\1\x84\1\x88\1\x8b\r\x87\1\x96\1\x80\2",
b"\x80\6\xb1\1\x9d\1\x84\2\x87\1\x84\1\x8b\1\x84\2\x87\1\xa0\1\x89\t\x9a\1\x84\1\x87\1\x8b\1\x84\2\x87\1\x98\1\x89\2\x87\1\x84\2\x8a\1\x89\24\x84\1\x87\1\x84\2\x8b\1\x89\a\xa0\1\x87\1\x84\1\x87\1\x84\4\x9b\1\x89\t\x83\1\x84\2\x87\1\x84\1\x87\1\x9b\1\x96\2\x92\1\x97\1\x89\t\x81\1\x89\2\x8c\1\x84\2\x87\1\x84\3\x89\2\xa0\1\x89\16\xa0\1\x89\1\x84\4\x9b\1\x84\2\x93\1\x81\1\x89\1\x81\1\x89\t\x81\1\x84\1\x87\1\x81\1\x89\5\x81\2\xa0\1\x84\2\x87\1\x9a\1\x89\1\x84\2\x83\1\x89\b\x87\1\x84\1\x87\1\x8c\1\x89\a\x84\2\x87\2\x80\5\xa8\1\x84\3\x81\4\x8b\1\x84\2\x89\1\x81\6\x84\2\x81\4\x89\1\x84\2\x87\1\xa0\1\x81\1\x89\3\x81\3\x89\1\x81\1\x82\1\x81\1\x84\2\x89\1\x81\2\x89\3\x81\1\x84\2\x89\1\x81\2\x89\3\x8b\1\x87\1\x84\2\x89\b\xa3\1\x84\1\x87\1\x89\6\x81\3\x87\3\x89\6\xa0\2\x89\2\x87\1\x84\1\x87\1\x89\b\xb0\1\x96\2\xac\1\x8b\2\x84\3\x8b\4\x87\1\x84\2\x8b\6\x8d\1\x84\1\x98\1\x8b\5\x84\1\x87\1\x84\1\x98\1\x8b\4\x87\1\x84\2\x8b\n\x8a\1\x84\2\x8b\r\x84\2\x80\3",
b"\x80\4\xa8\1\x89\1\x9c\2\xa3\1\x87\1\x84\5\x8b\v\x89\1\x84\3\x89\1\x84\3\x87\2\x84\1\x87\1\x84\1\xac\1\x89\1\x8b\21\x83\1\x84\5\x89\2\x8b\6\xac\1\x8b\2\x87\1\x84\5\x85\1\x8a\1\x8b\2\xac\1\x8a\1\x85\1\x84\5\x89\1\x84\1\x87\1\x84\1\x99\1\xa0\1\x81\1\x99\1\x92\1\x89\f\x9a\1\x84\2\x83\2\x84\2\x89\16\x81\1\x99\1\x92\1\xb2\1\x84\1\x87\1\x8a\1\x81\1\x85\1\x87\1\x84\2\x83\1\x89\r\x84\1\x87\1\x89\b\x81\1\x84\1\x87\1\x84\1\xa0\1\x87\1\x84\1\x8a\1\x89\a\x81\1\x84\3\x83\1\x81\1\x89\a\x85\1\x84\2\x80\1\x97\2\x80\2\x89\1\x85\1\x84\1\x87\1\x89\2\x82\1\x89\1\x84\2\x88\1\x89\5\x84\3\x89\1\x81\1\x89\3\x81\1\x93\1\x84\2\x87\1\xa0\1\x89\a\x81\1\x89\1\x84\2\x87\1\x89\a\x84\2\x98\1\x89\5\x93\1\x84\3\x81\1\x89\a\x84\3\x89\2\x81\1\x89\3\xa0\1\x89\1\x88\1\x84\3\x89\t\x84\2\x87\1\x89\1\xa0\1\x89\a\x97\1\x96\3\x9c\1\xb1\1\x84\3\x8a\1\x8b\2\x8a\1\x84\2\x85\1\x8b\1\x8a\2\x8b\1\x83\1\x84\1\x87\1\x84\1\x8a\5\x8b\1\x87\2\x84\1\x8a\4\x8b\1\x84\2\x87\1\x8b\1\x8a\b\xa3\1\x87\2\x83\1\xb3\1\x8a\1\x8b\1\x8a\t\x83\1\x84\2\x8f\1\x8b\2",
b"\x80\3\x92\1\x8b\3\x9c\1\x8b\1\x84\6\x8a\1\x8b\v\x87\1\x84\2\x8b\2\x8a\1\x84\4\x87\2\x8b\21\xac\1\x87\1\x84\6\x8b\f\x84\16\x87\1\x8b\1\x8f\1\x84\5\x96\2\x89\17\x84\3\x89\1\x8a\1\x84\2\x89\17\x92\1\x84\3\x96\1\x89\2\x87\1\x84\3\x9a\1\x89\f\x87\1\x84\1\x89\n\x87\1\x84\1\x87\1\x84\1\x87\1\x89\t\x8c\1\x84\2\x87\1\x89\b\xa0\1\x89\1\x84\1\x87\1\x89\2\x80\2\x89\2\x84\2\x9a\1\x89\2\x83\1\x84\2\x89\5\x87\1\x84\2\x87\1\x89\a\x88\1\x84\1\x87\1\x8d\1\x89\1\xa0\1\x89\5\x83\1\x84\1\x9b\1\x84\1\x89\b\x84\2\x88\1\x89\5\x93\1\x87\1\x84\2\x89\b\x87\1\x84\1\x9a\1\x89\b\x84\3\x87\1\x8b\1\x89\a\x87\1\x84\2\x85\1\x89\n\x96\1\x92\1\xa1\1\x8a\2\x85\1\x84\1\x87\1\x8a\4\x84\1\x87\1\x8a\4\x87\1\x84\3\x8a\a\xb1\1\x84\2\x87\1\x8a\4\x84\2\x9b\1\x8a\b\x84\3\x85\1\x8a\r\x87\1\x84\1\x87\1\xa6\1\x80\2",
b"\x80\4\x90\1\x8b\4\x98\1\x8d\1\x84\4\xa3\1\x8b\v\x8a\1\x84\1\x87\1\x8b\4\x87\1\x84\2\x87\1\x84\1\xac\2\x8b\16\x9a\1\x84\3\x87\1\xac\1\x9b\1\x84\1\x87\1\x8b\v\x87\1\x84\2\x87\1\x8b\1\x85\1\x87\1\x84\5\x87\1\x83\1\x8b\4\x84\6\xb0\1\x89\20\x84\2\x87\1\x85\1\x84\1\x87\1\x89\17\x85\1\x84\2\xa6\1\x92\1\x80\2\x84\1\x87\1\x84\1\x8d\1\x84\1\x87\1\x89\v\x8a\1\x84\1\x89\n\x84\4\x9b\1\x89\t\xa0\1\x89\1\x84\1\x87\1\x88\1\x89\b\xa3\1\x87\2\x89\2\xa0\1\x89\3\x87\1\x84\2\x89\2\x84\3\x89\5\x84\3\x87\1\x89\1\xa0\1\x89\6\x87\1\x84\2\x89\6\xa0\1\x87\3\x84\1\x89\b\x9a\1\x87\2\x89\5\x93\1\x84\3\x89\b\x84\2\x8b\1\x89\a\x87\1\x84\4\x87\1\x89\6\x8c\1\x87\1\x84\2\x85\1\x89\t\x96\2\x92\1\x9c\1\x8a\3\x87\2\x9a\1\x8a\2\x85\1\x84\2\x8a\4\x87\1\x84\2\x87\1\x8a\b\x84\3\x9a\1\x8a\3\x87\1\x84\1\x87\1\x8a\b\x84\3\x9a\1\x8a\f\x84\2\x87\1\x9b\1\x80\3",
b"\x80\4\x8f\1\x8b\5\x87\1\x84\4\x87\1\x8b\f\x84\2\x8b\6\x87\1\x84\1\x87\1\x84\1\x87\2\x83\1\x8b\a\x8a\1\x85\1\x84\6\x8b\3\x87\1\x84\2\x8b\n\x8a\1\x84\2\x87\1\x88\1\x8b\v\xac\1\x8b\2\xb4\1\x87\1\x9b\1\x84\1\x87\1\x84\1\x93\1\x89\21\x87\1\x8d\1\x84\2\x8a\1\x89\16\x87\1\x84\2\x8a\1\x89\3\x84\3\x8b\1\x84\4\x89\v\x84\1\x85\1\x89\b\x87\1\x84\4\x98\1\x89\v\xa3\1\x84\2\x89\a\x87\2\x84\1\x8b\1\x89\4\xa0\1\x89\2\x84\2\x87\1\x8b\1\x87\1\x84\1\x8a\1\x89\5\x87\1\x84\2\x87\1\x89\b\x8a\1\x87\2\x84\1\x89\6\x87\1\x84\3\x8b\1\x89\a\x8b\1\x87\1\x88\1\x89\6\x84\1\x87\1\x84\1\x89\a\x87\3\x89\b\x84\6\x89\a\x84\4\x89\b\xa0\1\x90\2\xb0\1\x96\2\x8a\2\x87\1\x84\2\x8a\2\x84\3\x8a\4\x87\1\x84\3\x8a\b\x84\4\x9a\1\x8a\2\xa3\1\x84\2\x8a\b\x84\2\x87\2\x8a\v\x84\3\xb5\1\x80\4",
b"\x80\3\x8b\1\xac\1\x8b\6\xa3\1\x84\4\x85\1\x8b\b\x8a\1\x8b\1\xa3\1\x84\1\x87\1\x8b\6\xb3\1\x87\1\x84\6\x87\1\x84\5\x87\1\x84\1\x87\1\x84\2\xae\1\x8b\6\x8a\1\x84\2\x8a\1\x8b\a\x83\1\x84\4\x8b\f\x8a\1\xb0\1\x80\1\x96\1\x9c\1\x84\3\x87\1\x84\1\xae\1\x89\20\x8b\1\x84\1\x8d\1\x84\1\x8b\1\x89\f\xa0\1\x84\1\x87\1\x84\1\x9d\1\x96\2\x89\1\x8b\1\x84\3\x8b\1\x89\1\x85\1\x84\2\x87\1\x8a\1\x89\b\x8b\1\x87\2\x89\b\x87\1\x84\2\x87\1\x84\1\x89\f\x87\3\x89\a\x84\1\x87\1\x84\1\x8b\1\xa0\1\x89\6\x84\6\xa0\1\x89\5\xa0\1\x84\3\x89\t\x9b\1\x87\1\x84\1\x87\1\xa0\1\x89\5\x98\1\x8d\1\x87\1\x84\1\x89\b\x84\1\x83\1\x89\6\x84\2\x87\1\x8b\1\x89\6\x84\1\x87\1\x8a\1\x89\a\x8c\1\x84\2\x8b\2\x84\2\x8a\1\x89\a\x84\3\x89\f\xa6\1\x96\1\xa1\1\x8a\1\x9a\1\x84\2\x8a\2\x84\2\x9a\1\x8a\5\x9a\1\x84\2\x9a\1\x8a\a\x84\3\x87\1\x84\1\x98\1\x8a\1\x83\1\x84\2\x8a\t\x87\1\x84\2\x8a\t\xae\1\x84\3\x9a\1\x8a\1\x80\1\x8a\1\x80\2",
b"\x80\3\x8b\t\x84\2\x87\2\x84\1\x8b\t\xac\1\x84\1\x87\1\x84\1\x8b\a\x87\1\x84\1\x87\1\x8b\1\x85\1\x84\n\x9a\1\x98\1\x8b\b\xac\1\x83\1\x84\2\x8b\a\x87\1\x84\3\xae\1\xac\1\x8b\r\x80\1\xab\1\xa6\1\x89\1\x84\3\x87\1\x84\1\x83\1\x89\16\xb0\1\x89\1\x84\3\x85\1\x89\2\xa0\1\x89\a\x8b\1\x89\1\x88\1\x84\1\x87\1\x84\1\x96\3\x8f\1\x89\1\x84\1\x87\1\x84\1\x83\1\x89\2\x85\1\x84\2\x87\1\x89\b\x85\1\x84\2\x89\b\x84\2\x87\1\x84\1\x8a\1\x89\t\x8b\1\x89\1\x9a\1\x84\1\x9b\1\x98\1\x89\6\xa0\1\x84\3\x83\1\x89\a\x93\1\x87\1\x84\3\x8a\1\x89\b\x87\1\x84\1\x8a\1\x89\t\x84\1\x8d\1\x84\2\x89\6\x9b\1\x84\2\x89\a\x8b\1\x84\1\x8a\1\x89\6\x9a\1\x84\2\x88\1\x89\5\x8e\1\x84\2\x89\b\x85\1\x84\1\x87\1\x89\2\x84\2\x87\1\x89\a\x8b\1\x87\1\x84\1\x8b\1\x89\v\x8f\1\x92\1\xb6\1\x96\1\x9f\1\x87\1\x84\1\x8a\2\x87\2\x8a\a\x84\3\x8a\a\x87\1\x84\5\x8a\1\x98\1\x84\2\x83\1\x8a\t\x84\2\x88\1\x8a\a\x85\1\x84\4\x8a\3\xb7\1\x80\2",
b"\x80\5\x8a\5\x8b\1\x8a\2\x84\3\x87\2\x8a\1\x8b\1\x8a\5\x85\1\x84\3\x8a\2\x8b\1\x8a\4\xac\1\x84\2\x9b\1\x8a\3\x8b\3\x8a\2\x8b\2\x8a\6\x8b\4\x8a\3\x8b\1\x9b\1\x84\1\x83\1\x8a\1\xb1\1\x8a\1\x8b\2\x84\4\x8a\4\x8b\1\x8a\t\x8b\1\x8a\1\x8b\1\x80\1\xa0\1\x89\1\x8a\1\x84\2\x8d\1\x87\1\x84\2\x89\f\x96\1\xa6\1\x96\1\xb0\1\x88\1\x84\2\x87\1\x89\t\x83\1\x84\3\x98\1\x8f\1\x96\1\xb6\1\xa6\1\x89\3\x84\1\x87\1\x84\1\x89\3\x8a\1\x84\3\x8b\1\x89\6\x84\2\x9a\1\x89\b\x84\1\x87\2\xa3\1\xa0\1\x89\v\x84\3\x8b\1\x89\b\x88\1\x84\1\x87\1\xa0\1\x89\a\x9b\1\x84\1\x87\2\x89\t\x93\1\x84\2\x89\n\x87\1\x84\2\x9b\1\x89\6\x84\2\xac\1\x89\6\x85\1\x87\1\x89\b\x84\3\x89\5\x87\1\x84\2\x89\b\x87\2\x84\1\x89\2\x8a\1\x84\2\x85\1\x89\a\x84\1\x87\1\x84\1\x89\r\xb6\1\xa6\2\x84\1\x87\1\xa7\1\x84\2\x9b\1\x92\1\x8a\2\x98\2\x8a\1\x98\1\xb5\1\x87\1\x84\1\x8a\a\x88\1\x84\1\x87\1\x88\1\x84\1\x87\1\x84\1\x8a\1\x84\2\x87\1\x8a\6\x98\1\x8a\2\x9b\1\x84\1\x87\1\x98\1\x8a\1\x98\1\x8a\3\x87\1\x84\3\x9a\1\x8a\3\x9c\1\x80\3",
b"\x80\6\x8a\a\x84\6\x8a\5\x87\1\x84\2\x87\1\x8a\b\x84\3\x98\1\x8a\30\x98\1\x84\1\xa3\1\x8a\2\xb1\1\x8a\1\x84\4\x85\1\x8a\16\xab\1\x80\2\xb6\1\xa6\1\x96\1\x8a\1\x84\2\x96\1\x9b\1\x84\3\x87\1\x89\1\x8b\1\x89\1\x8b\2\x89\1\x8b\4\x96\1\xac\1\x8f\1\x89\2\x88\1\x87\2\x84\1\x89\1\x8b\1\x89\4\x87\1\x84\3\x87\1\x8b\1\x89\1\x8b\2\x92\1\xb0\1\x80\1\xac\1\x8b\2\x87\1\x84\1\x85\1\x8b\4\x84\4\x8b\1\x89\3\x84\3\x8b\2\x89\2\x8b\3\x8a\1\x84\5\x9a\1\x8b\v\x87\1\x84\1\x87\1\x9a\1\x8b\2\x89\1\x8b\6\xa3\1\x84\2\xa0\1\x89\6\x87\1\x84\1\x8d\1\x84\2\x89\b\x87\1\x84\2\x89\v\x84\1\x9b\1\x84\2\x8b\1\x89\2\x8b\1\x98\1\x87\1\x84\1\x8b\1\x89\6\x87\1\x84\1\x89\b\xa0\1\x84\2\x88\1\x89\3\x8a\1\x84\2\x98\1\x89\b\x84\1\x87\1\xa3\1\x89\3\x87\1\x84\1\x87\1\xa0\1\x89\6\x84\2\x88\1\x89\f\xa6\3\x96\1\x84\5\xa6\3\xb4\1\x98\3\xa9\1\x87\1\x84\2\xa9\1\x98\6\xae\1\x84\1\x87\1\x98\1\x85\1\x84\2\x87\1\x84\3\x98\t\x84\3\x98\4\xb5\1\x84\1\x87\1\x84\2\xae\1\x98\4\xb1\1\x80\3",
b"\x80\2\xaf\1\x80\3\x8a\a\x84\5\x87\1\x9a\1\x8a\4\x87\3\x8a\t\x84\3\x98\1\x8a\30\xa3\1\x84\1\xae\1\x8a\3\x87\1\x84\4\x8a\17\x92\1\x80\3\xa6\2\x93\1\x87\1\x84\1\xb0\1\xb8\1\x9d\1\x84\1\x9b\1\x84\1\x8d\1\x8a\1\x89\1\x8b\a\x8f\1\xa1\1\x8b\2\x89\1\x8b\1\x84\4\x83\1\x8b\1\xac\1\x85\1\x84\2\x87\2\x85\1\x89\1\x8b\4\xac\1\x8b\1\xab\1\x90\1\xac\1\x89\1\x8a\1\x84\2\x8b\1\x89\3\xac\1\x84\1\x87\1\x84\1\x9a\1\x8b\2\x9a\1\x84\2\x8d\1\x8b\1\x89\1\x8b\4\x88\1\x84\2\x87\1\x83\1\x8b\1\x84\2\x8b\t\x89\1\x8b\2\x8d\1\x9b\1\x84\1\x8b\n\x8d\1\x84\1\x8a\1\x89\5\x85\1\x84\2\x87\1\x84\1\x87\1\x85\1\x89\a\x84\1\x87\1\x93\1\x89\v\x8b\1\x84\1\x87\1\x84\1\x87\1\x89\3\x84\1\x87\2\x89\a\x87\1\x84\1\x89\b\x8b\1\x84\2\x9b\1\x89\3\x84\3\x89\t\x84\2\x93\1\x89\3\x9a\1\x84\2\x8a\1\x89\5\x83\1\x84\1\x87\1\x8b\1\x89\a\xac\1\xb4\1\x89\2\xa6\2\x96\1\xa6\2\x84\4\x87\1\xa6\2\x96\1\xb4\3\x98\2\x87\2\x84\1\x98\b\x84\1\x87\1\x9a\1\x98\1\x87\2\x84\4\xa9\1\x98\b\x84\2\x88\1\x98\3\xae\1\x84\1\x87\2\x84\1\xb9\1\x98\1\x80\2\x98\1\xa9\1\x80\4",
b"\x80\2\x8a\2\xab\1\xb1\1\x8a\a\x84\5\x87\1\x84\1\x87\1\x8a\3\x84\1\x87\1\xa3\1\x8a\t\x87\1\x84\2\xa3\1\x8a\27\x98\1\x84\2\x8a\3\x84\4\x87\1\x8a\16\x80\6\xa6\2\x84\2\xba\1\xa6\1\x8b\1\xac\1\x8b\1\xa3\1\x84\4\x87\1\x83\1\x8b\r\x87\1\x84\6\x87\1\x85\1\x8b\17\x84\1\x8e\1\xac\1\x8b\4\x84\3\x87\2\x84\2\x87\1\x8b\5\x85\1\x87\1\x84\2\x87\1\x8b\3\x9a\1\x84\1\xa3\1\x8b\v\x83\1\x84\2\x8b\t\x89\2\x84\2\x89\4\x8b\1\x84\2\x87\1\x8b\1\x84\3\x89\1\xa0\1\x89\4\x84\3\x89\1\x8b\1\x89\f\x87\1\x84\3\x8b\2\x84\3\x8b\1\x89\6\x84\2\x8a\1\x89\6\x8b\1\x89\1\x84\2\x87\1\x89\2\x83\1\x84\2\x87\1\x89\a\x8b\1\x89\1\x87\1\x84\1\x8b\1\x89\3\xa0\1\x84\3\x89\4\x8b\1\x84\2\x87\1\x8b\1\x89\5\x8b\5\xa6\5\xbb\1\x84\4\xb8\1\xa6\2\x80\1\xb4\4\xba\1\x84\2\x9b\1\x98\b\x88\1\x84\2\x98\2\x84\3\x87\1\x84\1\x9d\1\x98\a\x87\2\x84\1\xae\1\xa9\1\xb2\1\x84\2\x87\1\x84\2\x80\5\xb4\2\x80\4",
b"\x80\3\xa1\1\x8a\b\xb1\1\x85\1\x84\2\x98\1\x87\1\x84\3\x87\1\xae\1\x8a\1\x84\3\x8a\n\x84\1\x87\1\x84\1\x8a\26\x98\1\x84\2\x8a\2\x84\5\x85\1\x8a\21\x80\5\xa6\1\x84\2\xac\1\x8b\a\x88\1\x84\1\x87\1\x84\16\x87\2\x84\3\x87\2\x8a\1\x8b\20\x84\2\x8b\5\xac\1\x8b\1\x84\3\x87\1\x8b\1\xac\1\x8b\2\x85\1\x84\4\xa3\1\x8b\6\x84\2\x8b\v\xac\1\x88\1\x84\1\x87\1\x8b\1\xac\1\x8b\5\x89\3\x9a\1\x84\1\x89\1\x8b\2\x9a\1\x87\1\x84\1\x8a\1\x8b\1\x89\1\x8b\1\x87\1\x84\1\x87\1\x8b\4\x89\1\x87\1\x84\2\x89\2\x8b\r\x88\1\x84\1\x87\3\x84\1\x87\2\x8b\a\x84\2\x83\1\x89\1\x8b\a\x87\1\x84\2\xac\1\x87\1\x84\3\xac\1\x8b\t\x84\2\x8a\1\x8b\4\x85\1\x87\1\x84\1\x87\1\x8b\3\x89\1\x84\3\x8b\1\x89\1\x8b\b\xb4\1\xa6\1\xab\1\x80\3\xbc\1\x84\4\x80\4\xb4\4\x87\1\x84\2\x9b\1\x98\t\x87\1\x84\1\x85\1\x98\2\xa9\1\x84\5\xa3\1\x98\5\x84\2\x87\1\xa3\1\x87\1\x84\1\x87\2\x84\1\xbd\1\x80\6\xb4\1\xbb\1\x80\4",
b"\x80\3\x8a\v\x9b\1\x84\2\x8a\1\x87\1\x84\2\x87\1\x84\1\x87\2\x84\2\x8a\n\x88\1\x84\2\x8a\26\x98\1\x84\2\x8a\1\x87\1\x84\4\x87\1\x8a\22\x80\5\xb9\1\x84\1\x9b\1\xa6\1\x8b\t\xae\1\x84\2\x87\1\x84\2\x87\2\x84\3\x87\1\x84\1\x87\1\x84\2\x87\1\x85\1\x88\1\x84\1\x87\1\x84\3\xa3\1\x8a\1\x8b\r\x84\2\x8b\6\xac\1\x85\1\x84\3\x8c\1\xb5\1\x87\2\x84\2\x87\1\x84\1\x83\1\x8b\a\x84\2\xac\1\x8b\f\x84\2\x8b\n\x9a\1\x84\1\x8b\2\x89\1\x84\3\x8b\2\x89\1\x8b\1\x85\1\x84\2\x8b\4\x89\1\x84\3\x8b\17\x89\1\x85\1\x84\3\x87\1\x84\2\x89\1\x8b\6\x84\2\x9a\1\x8b\b\x87\1\x84\2\x8b\1\x84\2\x87\1\x8b\v\x84\2\x83\1\x8b\5\x84\3\x83\1\x8b\3\x87\1\x84\2\x89\1\x8b\t\xa9\1\xb4\1\xa6\4\x84\2\x8d\1\x87\1\x80\5\x9f\1\xb4\3\xba\1\x84\3\x98\t\x84\2\x87\1\x98\3\xb5\1\x87\2\x84\3\x87\2\x88\1\x9a\2\x84\2\x87\1\x84\1\x87\1\x84\3\x80\a\xbe\1\xb4\1\xa6\1\x80\4",
b"\x80\6\xb4\2\xa9\1\x8a\4\x98\2\x87\1\x84\1\x88\1\x8a\1\xae\1\x84\3\x87\3\x84\1\x87\1\x98\2\x8a\6\x98\1\x8a\1\xae\1\x84\1\x87\1\x98\1\x8a\24\x84\2\x87\1\x84\5\x8a\1\x98\2\x8a\17\x98\1\x8a\1\x80\4\xbd\1\x84\2\xac\1\xb0\1\xa1\1\x8b\f\xa6\4\x8f\1\x8b\5\x84\2\x8b\5\x9a\1\x87\1\x84\3\x87\1\x84\24\x87\1\x84\1\x87\1\x84\2\x87\1\x84\3\x87\1\x93\1\x8b\b\xac\1\x9b\1\x84\1\x83\1\x8b\16\x84\1\x87\1\x8b\b\xac\1\x84\2\x8b\2\x9b\1\x87\2\x8b\5\x84\3\x8b\5\x8a\1\x84\2\x9a\1\x8b\21\x87\1\x84\1\x87\1\x84\2\xb5\1\x92\1\xa8\1\x8b\4\x84\2\x9b\1\x8b\b\x84\6\x98\1\x8b\v\x84\3\x8b\6\x87\1\x84\1\x87\1\x8b\3\x9a\1\x84\2\x85\1\x8b\b\xac\1\x8b\2\x96\1\x80\2\xbf\1\x84\3\x80\6\xb8\1\xb4\4\x84\1\x87\1\x84\1\xae\2\x98\1\xae\6\x87\1\x84\2\xae\3\x98\1\x84\1\x87\2\x84\4\x87\1\x84\2\x87\1\x84\4\x9b\1\x80\t\xbb\1\xb4\1\xbe\1\x80\4",
b"\x80\6\x8a\1\x98\1\x8a\1\x98\a\x84\2\x8a\1\x98\2\x9a\1\x84\3\x87\1\x84\2\x8a\1\xa9\1\x98\t\x87\3\x98\20\x8a\2\x98\1\x87\1\x84\4\x87\1\x84\1\x87\1\x98\25\x80\4\x87\3\xa6\2\x8b\2\xac\1\xa6\1\xb8\1\x8b\1\xb8\1\x8b\6\xa6\1\xb6\1\x80\1\xab\1\xa6\1\x8b\1\xac\1\x8b\1\xac\1\x87\1\x84\1\x85\1\x8b\t\x85\1\x88\1\x84\6\x87\3\x84\t\x87\1\x8d\1\x87\1\x84\4\x87\1\x84\2\x83\1\x8b\1\x80\3\x8b\6\x98\1\x87\1\x84\1\x8b\17\x84\2\x8b\b\x84\2\x80\1\xc0\1\x84\2\x85\1\x8b\5\x98\1\x84\2\x8b\a\x85\1\x84\1\x87\1\x8b\21\xac\1\x8b\1\x84\5\x9b\1\x8a\1\x8b\2\xac\1\x84\3\x8b\b\x84\5\x8c\1\x8b\f\x84\2\x87\1\x8b\a\x84\1\x87\2\x8b\3\x87\1\x84\2\x8b\5\xac\1\x8f\1\xb0\1\x8b\4\x80\1\x9b\1\x84\4\x80\5\xbe\1\xa6\1\xb4\4\x9a\1\x84\1\x87\1\x80\6\xae\4\x84\2\xa4\1\xae\2\xa9\1\xba\1\x84\2\xa7\1\xba\1\x87\1\x84\a\x87\1\xb4\1\x80\n\xb4\1\xa9\1\x80\5",
b"\x80\6\x9d\1\x98\t\x84\2\x85\1\x98\3\x85\1\x9b\1\x84\4\x87\1\x83\1\x98\n\x84\2\x98\22\xb5\1\x84\3\x87\1\x84\2\xae\1\x98\25\x80\5\x87\1\x84\1\xc0\1\xa6\2\xac\2\xa6\3\x80\1\xa6\1\x80\1\x92\1\x8a\1\x8b\1\xa6\1\xac\1\xa6\1\x80\3\xa6\1\xb6\1\x8b\3\x87\1\x84\1\x8b\1\xac\1\x8b\r\x8a\1\x98\1\xae\2\x85\3\x84\2\x85\4\xae\1\x83\1\x93\1\xb1\1\x8a\1\x80\1\xab\1\x84\1\x87\1\x9b\1\x84\1\x87\1\x84\1\x87\1\x80\3\x8b\2\x80\3\xac\1\x84\1\x8d\1\xc1\1\x8b\17\x84\2\x8b\a\x87\1\x84\2\xc2\1\x87\1\x84\2\x8b\6\x9b\1\x84\2\xac\1\x8b\a\x87\1\x84\1\x9a\1\x8b\21\xac\1\x8b\1\x84\2\x87\1\x84\1\x87\1\x84\2\xa4\1\xb8\1\x87\1\x84\2\xac\1\x8b\5\x88\1\x84\5\x8a\1\x8b\r\x9a\1\x84\2\x8b\6\xac\1\x84\4\x98\1\x8b\1\x85\1\x84\1\x87\1\x8b\v\xa1\1\x84\5\x80\6\xa6\2\xb4\5\x84\2\xbc\1\x80\6\xbb\1\x80\2\x87\1\x84\2\x9d\1\xb4\3\x84\2\xba\1\xa9\2\xb4\1\xa7\1\xc3\2\x9d\1\xa7\1\x84\2\xa7\1\x80\n\xa7\1\xb4\1\x80\5",
b"\x80\5\xbe\1\xb4\1\xa7\1\xa9\1\x98\b\x84\2\x98\6\x87\1\x84\2\x87\1\x84\2\x87\1\x85\1\x98\a\x84\1\x87\1\x98\17\x9a\1\x84\a\x9a\1\x98\1\xa9\1\x98\21\xa9\1\x98\1\x9c\1\x80\6\x87\1\x84\1\xc0\1\xa6\2\xb8\1\xa6\4\x80\4\xac\1\xab\1\x80\t\x9c\1\xa3\1\x84\2\x8a\1\x8b\25\x87\1\x84\1\x98\1\x8b\5\x80\4\x96\1\x85\1\x87\1\x84\1\x98\1\x87\1\x84\3\xbd\1\x80\2\xac\1\x80\3\x8b\1\x84\2\xc2\1\x80\1\x8b\16\x84\1\x9a\1\x8b\a\x84\2\x87\1\x84\2\x9a\1\x8b\6\x87\2\x9b\1\x8a\1\x8b\t\x87\2\x8b\24\x87\1\x84\1\x9b\1\x84\21\x87\1\x84\1\x8b\20\x84\1\x87\1\x85\1\x8b\a\x83\1\x87\1\x84\3\x8b\1\x8a\1\x84\2\x8b\b\x85\1\x84\a\x80\6\xa6\2\xa9\1\xa7\4\x80\1\x84\2\x80\t\xb9\1\x84\2\xa7\1\x9d\1\xa7\1\xb4\1\x84\3\xb4\1\xa7\a\xc3\1\x84\2\x80\n\x9d\1\xa7\1\x80\5",
b"\x80\5\x98\f\x84\2\x98\a\xb5\1\x87\1\x84\2\x87\1\x84\4\x87\1\xba\1\x98\3\x84\2\x98\n\x85\1\xa3\1\x84\n\x85\1\x98\26\x80\a\x84\1\x87\1\x84\1\xa6\a\xab\1\x80\16\xa6\1\x84\1\x87\1\x85\1\x8a\25\x85\1\x84\1\x87\1\x8a\5\x90\1\x80\5\x8f\1\x84\3\xb4\1\xc3\1\x87\1\x84\3\xbd\1\x80\4\x9c\1\x84\2\xab\1\x80\1\x8b\2\x8a\t\x8b\2\x84\2\x8b\1\xac\1\x8a\2\x8b\1\x8a\1\x8b\1\x8a\1\x84\4\x8b\2\xac\1\x8b\4\x87\1\x84\2\x85\1\x8b\n\x84\2\x88\1\x8b\23\x80\1\x84\2\x80\1\xbc\1\x84\f\x87\1\x84\1\x87\2\x9a\1\x8b\20\x84\1\x87\2\x8b\b\x93\1\x87\1\x84\2\x87\2\x84\2\x8e\1\x98\1\x8a\1\x98\1\x85\1\x87\2\x84\1\x87\1\x84\3\x9b\1\x84\3\x80\6\xa6\2\x9d\1\xa7\4\x80\2\x87\1\xad\1\x80\t\x84\2\xa3\1\xa7\3\xba\1\x84\2\xa7\t\xa3\1\x84\1\xc4\1\x80\t\xa7\2\x80\5",
b"\x80\4\x98\1\xa6\1\xb4\1\x98\t\xae\1\x84\1\x87\1\x98\a\xa3\1\x84\2\x85\1\x87\1\x84\2\x87\1\x84\5\x87\1\x84\1\x87\1\x9a\1\xba\1\x9a\1\xba\1\x9a\2\x9b\1\x84\5\x87\1\x84\5\x87\1\xae\1\x87\1\x84\1\x87\1\x98\23\xa6\1\xa9\1\x98\2\x80\6\x84\2\x87\1\xa6\a\xb6\1\x80\16\xc5\1\x84\1\x87\1\x8b\1\x8a\25\x84\3\x8a\5\x80\b\x87\3\x9d\1\xa7\1\x87\1\x84\1\x87\2\xc6\1\xc7\1\x80\2\x84\2\x87\1\xa8\1\x80\1\x8a\f\x88\1\x84\2\x8a\1\xb1\1\x8a\4\x98\1\x87\1\x84\1\x87\1\x84\1\x80\2\x8b\3\xb1\1\x8b\1\x84\3\x85\1\x8b\v\x98\1\x87\1\x84\1\x8b\24\x87\1\x8d\1\xc8\1\x80\2\x98\1\x9a\1\x84\b\x87\2\x84\3\x8b\3\xac\1\x96\1\x8b\f\x85\1\x84\1\x87\1\x8b\t\x83\1\x84\1\x87\2\x84\3\x8d\1\x84\4\x87\1\x84\5\xa4\1\x80\1\x84\3\x80\6\xb8\1\xa6\1\xa7\5\x80\2\x84\2\x80\t\xc0\1\x87\1\x84\1\xa7\3\x9d\1\x84\2\xa7\b\x9d\1\xa7\1\x84\1\xc0\1\x80\t\xa7\2\x80\5",
b"\x80\5\x98\1\xa9\1\x98\t\x84\2\xae\1\x98\1\xa9\1\x98\4\xae\1\x87\2\xb5\1\xae\1\x98\3\x9a\1\x84\3\x87\1\x84\1\x87\1\x84\n\x87\1\x84\1\x87\1\x84\2\x87\2\x9a\1\x98\2\x9d\1\x98\1\xa3\1\x84\1\xa3\1\x98\f\x9d\1\xa7\1\x98\3\x9d\1\xb4\1\xb8\1\xa6\2\x80\b\x84\1\x9b\1\xb8\1\xa6\a\x80\16\x84\2\xa3\1\x8a\26\x87\1\x84\1\x87\1\x8a\5\x80\b\x84\3\xa7\1\x9d\2\xa7\1\xad\1\x87\3\x84\1\xbc\1\x84\1\x87\1\x80\3\x8a\f\x84\2\x83\1\x8a\4\x98\1\x84\2\x87\3\x80\5\x9d\1\xa7\1\x9d\1\x87\1\x8d\1\x8e\1\x8b\r\x87\1\x84\1\x8b\24\xa3\1\x84\1\xc9\1\x80\1\x8b\2\x9d\1\x84\2\x83\1\x8b\5\x85\1\x84\3\x98\1\xb0\1\x92\1\x80\2\xb0\1\x8b\1\x80\1\x8b\v\x87\1\x84\1\x88\1\x8b\a\x8a\1\x8b\2\x8a\1\x84\1\x87\1\x84\a\x87\1\x84\2\xa3\1\xa7\1\x9d\1\xa7\1\x80\1\xc6\1\x84\2\x80\6\xa6\1\xb8\1\xb4\1\x9d\4\xa6\1\x80\1\x84\2\x80\n\x84\2\xba\1\x9d\2\xa7\1\x84\2\xb5\1\x9d\6\xa7\3\x84\2\x80\t\xa7\2\x80\5",
b"\x80\4\xa9\1\x9d\1\x98\2\xae\b\x84\1\x87\1\xae\2\x98\1\xae\4\x84\3\xae\t\x9d\1\x98\1\x84\2\x9b\1\x87\1\x84\5\x87\1\x9b\1\xa3\1\x9a\1\xae\b\x98\1\x85\1\x84\1\x87\1\xae\t\x9d\1\xae\1\x98\1\x9d\1\xa7\3\x9d\2\xa7\1\xa6\4\x80\a\x84\1\x87\2\xb6\1\xa6\a\x80\16\x84\2\xa3\1\x8a\26\x87\1\x84\1\x87\1\x8a\4\x96\1\x80\b\xc9\1\x84\2\xa7\2\x9d\1\xa7\1\x9d\1\x80\1\x9b\1\x87\1\x84\2\x9b\1\x84\1\xca\1\x80\3\x8a\n\xb1\1\x84\2\x83\1\x8a\1\xb1\1\x87\1\x84\2\x8d\1\x87\1\x84\1\x87\1\xc0\1\x80\5\x9d\1\xa7\1\x8b\1\x87\1\x84\1\x85\1\x8b\v\x8a\1\x8b\1\x87\1\x84\1\x8b\21\x80\1\x96\1\x90\1\xc1\1\x87\1\xbc\1\x80\1\x9d\2\x8b\1\x87\1\x84\1\x83\1\x8a\1\x8b\4\x85\1\x84\3\x80\5\x90\1\x8a\1\x8b\n\x8a\2\xb1\1\x84\2\x8b\5\x8a\5\x8b\1\x8a\1\xac\1\x8b\1\x84\2\x9a\1\xa3\1\x9a\1\xae\1\x8a\3\x8b\1\x8a\2\xa7\2\xc9\1\x87\2\x80\5\xb6\1\xa6\2\xb6\1\xa7\4\x9d\1\x80\1\x9b\1\x84\1\x80\n\x84\1\x87\1\x84\1\xa7\3\x87\1\x84\1\xba\1\xa7\t\x84\2\x80\t\xa7\2\x80\5",
b"\x80\6\xae\1\x9d\1\x98\1\xae\6\x84\2\xa3\1\xae\a\x87\1\x84\1\x87\1\x98\1\xae\b\xa9\1\xb5\1\x84\2\xae\n\x9d\1\xae\t\x87\3\x98\1\xae\a\x98\1\xae\2\xbe\1\xa7\5\x9d\1\xa7\1\xa6\5\x80\6\x84\2\x80\1\xab\1\xa6\a\x80\16\x84\2\x9b\1\x8a\26\x84\2\x87\1\x8a\1\xb1\1\x8a\2\x80\b\xcb\1\x84\3\x9d\1\xa7\1\x9d\1\xa7\2\xcc\1\x80\2\xad\1\x84\4\x87\1\x9b\1\xc2\1\xcd\1\x8a\n\x84\2\xa3\1\x84\2\x87\1\x84\2\x9a\1\x80\1\x84\3\x80\5\xa7\1\xa9\1\x8a\1\x84\2\x9b\1\x8a\v\x8b\2\x84\2\x8a\1\x8b\1\x8a\16\x8b\1\x80\3\xb9\1\x84\1\xbf\1\x9c\1\x8a\1\x9d\1\x8b\1\x8d\1\x84\1\x85\1\x8a\2\x8b\3\x85\1\x84\3\x80\5\x90\1\x8a\1\x8b\a\x8a\6\x87\1\x84\1\x85\1\x8a\t\x8b\4\x84\2\x8a\1\x8b\2\x8a\1\x8b\1\xb0\1\x80\1\xbe\1\xa7\2\x9d\1\xa7\1\xbd\1\x84\2\x80\5\xb8\1\xa6\2\x80\1\xa7\3\x9d\1\xa7\1\x80\1\x84\2\x80\n\x87\1\x84\2\xa7\3\x87\1\x84\1\xba\1\xa7\t\x87\1\x84\1\x80\b\xbe\1\xa7\2\x80\5",
b"\x80\6\xce\1\xae\a\xa3\1\x84\1\xb5\1\xae\25\x84\2\x9a\1\xae\24\x84\2\x9b\1\xae\b\xcf\1\x80\2\xbb\1\xa7\1\x9d\5\xa7\1\xb8\1\xa6\3\xb8\1\xa6\1\x80\5\x87\1\x84\1\x80\1\xab\1\xa6\6\xb8\1\x80\16\xba\1\x84\2\x8a\26\x84\3\x8a\3\x80\b\x8d\1\x84\3\xa7\1\x9d\2\xa7\1\x9d\1\xa7\1\x9d\1\x80\4\x84\4\x9b\1\x84\a\x87\1\x84\2\x87\1\x84\1\x87\2\x84\3\x87\1\x8a\2\x80\2\xbc\1\x84\1\x87\1\x80\5\x9d\1\xa7\1\x9d\1\xc0\1\x87\2\xb1\1\x8a\f\x87\2\x8a\21\x80\3\x84\2\xa9\2\x8a\3\x9a\1\x84\1\x8a\6\x84\2\x87\1\xa3\1\x80\5\xb0\1\xb1\1\x8a\r\x84\1\x9b\1\x84\1\x8a\f\x98\1\x87\1\x9b\1\xb1\2\x8a\2\x96\1\x80\3\x9d\1\xa7\1\x9d\2\x87\1\x84\1\x87\1\x80\5\xa6\3\x80\1\x9d\4\xa7\1\x80\1\x84\2\x80\n\x84\2\x87\1\x9d\2\xa7\1\x87\1\x84\1\xc5\1\x9d\b\xa7\1\x84\1\xc5\1\x80\b\xbb\1\xa7\1\x9d\1\x80\5",
b"\x80\6\x9d\1\xae\2\x9d\1\xae\1\x9d\1\xae\1\x9d\1\xae\1\x87\1\x84\1\xae\25\x84\2\x9a\1\xae\23\x9d\1\x87\2\x84\1\xae\5\x9d\1\xae\2\xab\1\x80\2\x9d\a\xb4\1\xa6\a\x80\4\x84\2\x80\1\xa6\5\xb8\3\x80\16\xb8\1\x84\2\xb5\1\x8a\25\x9a\1\x84\2\x8a\2\x80\t\xc0\1\x84\1\x80\2\x9d\1\xa7\1\x9d\4\xa7\1\xbe\1\x80\4\x84\1\x87\1\x80\1\xbe\1\x91\1\x87\1\x84\a\x87\1\x84\3\x8d\1\x83\1\xa8\1\xb1\1\x8a\1\x80\5\x84\2\xb9\1\x80\4\xa7\2\x9d\1\x8a\3\xa9\1\xb1\1\x8a\3\xb1\1\x8a\6\x87\1\x84\1\x83\1\x8a\f\xb1\1\x80\1\x8a\2\x96\1\x80\3\x84\1\x87\1\xb1\1\x8a\f\x84\3\x96\1\x80\4\x8a\20\xa3\1\x84\2\x8a\f\x84\2\xa1\1\xa6\3\x80\5\xbe\1\x9d\1\xa7\1\x9d\1\xa7\1\x80\6\xa6\1\xb8\2\xab\1\x80\1\x9d\3\xa7\1\x9d\1\xc3\1\x84\1\xca\1\x80\n\x84\1\x87\2\x9d\2\xa7\1\x87\2\xc3\1\x9d\b\x87\2\xb6\1\x80\b\xa7\1\x9d\2\x80\5",
b"\x80\5\xb8\1\xae\3\x9d\2\xae\3\x9d\1\x84\2\xb5\1\xae\a\x9d\1\xae\f\x84\2\xb5\1\xae\25\x84\2\x9a\1\xae\5\x80\1\xa7\1\x80\3\x9d\a\x9f\1\xb8\1\xa6\6\xd0\1\x80\3\x84\3\xb8\1\xa6\4\xb8\3\x80\16\xa6\1\x84\2\xa7\1\x8a\26\x87\1\x84\1\x8a\1\x92\1\x80\r\xcf\1\x9d\2\xa7\3\x9d\2\xbe\1\x80\3\x84\1\x8d\1\x80\2\x8a\3\x98\1\xae\1\x85\1\x9a\2\x85\1\xae\1\x98\1\x84\3\x8a\1\x80\1\x8a\1\x96\1\x80\5\x84\2\xbf\1\x80\4\x9d\3\x8a\3\x9d\1\x90\1\x8a\2\x80\1\x8a\a\x84\2\x8a\r\x9c\1\x80\2\x8a\2\x80\2\x84\2\xa9\1\x9d\1\x8a\v\xae\1\x84\1\x87\1\x84\1\x80\4\x8a\21\x9a\1\x84\2\x8a\v\x98\1\x8d\1\x87\1\x8a\2\xa6\2\x80\6\x9d\1\xa7\2\x9d\1\xa7\1\x80\5\xa6\1\xb8\2\x80\2\xa7\3\x9d\1\xa7\1\x84\2\x80\v\x84\2\xa3\1\xa7\2\xc3\1\x87\1\x84\1\xa7\b\xc3\1\x87\1\x84\1\xa6\1\x80\b\xa7\3\x80\5",
b"\x80\a\x9d\1\xae\1\x9d\3\xae\1\x9d\1\x80\1\x84\2\xb5\1\xae\4\x9d\1\xae\16\x84\3\xae\26\x9a\1\x84\1\x87\1\xae\2\x9d\1\x80\1\xae\1\x80\5\xa7\1\x9d\2\xa7\3\x9d\1\xbb\1\xa6\4\xb8\2\xa6\2\x80\3\xc4\1\x84\1\x87\1\xb8\2\xa6\4\xb8\1\xa6\1\x80\16\xb2\1\x84\1\x87\1\xb8\1\x9c\1\x8a\24\x87\1\x84\2\x8a\1\x80\17\x9d\b\xce\1\x80\1\xad\1\x84\1\xc6\1\x80\2\x8a\v\x84\3\x80\3\x98\1\x80\5\x84\2\x80\5\x9d\1\xa7\1\x9d\1\x8a\1\xa9\1\xa7\2\x80\1\x8a\1\x92\1\x80\1\x96\1\x8a\5\x84\3\x8a\t\x92\1\x8a\3\x90\1\x80\3\x8a\1\x80\1\x84\1\x87\1\x84\1\x9d\1\x8a\2\x9d\1\x9c\1\x8a\b\x84\4\x80\4\x96\1\x8a\20\x9a\1\x84\2\x8a\t\xb1\1\x98\1\x84\1\x87\1\xb8\3\xa6\2\x80\6\xa4\1\x9d\2\xa7\1\x9d\1\xbe\1\x80\4\xa6\1\xb8\1\xa6\1\x80\2\xa7\1\x9d\2\xc3\1\x84\2\x87\1\x80\n\xc6\1\x84\2\x9d\1\xa7\2\xba\1\x87\1\x84\1\xa7\a\x9d\1\x87\2\xc0\1\xcf\1\x80\b\xa7\1\x9d\1\xa7\1\x80\5",
b"\x80\a\xbe\1\x9d\5\xa7\1\xbb\1\x84\2\xae\3\xb5\1\xae\1\xab\1\x80\2\xae\4\x9d\1\xae\a\x84\3\xae\26\xb5\1\x8d\1\x84\1\xae\2\x80\a\xa8\1\x9d\a\xbb\1\xa6\1\xb8\b\x80\3\x84\2\xb2\1\xb8\a\x80\16\x87\1\x84\1\xc5\1\xb8\1\xa1\1\x80\1\x8a\21\x98\2\x84\2\x85\1\x98\1\x80\17\xa7\2\x9d\6\xa7\1\xa4\1\x8d\1\x84\1\x80\3\x8a\1\x98\1\xa7\1\x9d\1\x8a\a\x84\3\x80\b\x84\2\xc1\1\x80\5\xa7\1\x9d\6\x80\2\xb1\1\x8a\a\x84\1\x87\1\x84\1\x8a\t\x80\1\xb1\1\x8a\3\x80\5\x84\3\x8a\2\x9d\1\x9c\2\x8a\a\xae\1\x87\1\x84\3\x80\4\xb1\1\x8a\a\xb1\1\x8a\2\xb1\1\x8a\2\xa4\1\x8a\2\x87\1\x84\1\x9b\1\x8a\b\x90\1\xb8\1\x98\1\x87\1\x8d\1\xb8\3\xa6\1\xb8\1\x80\6\xa7\1\x9d\1\xa7\2\xa4\1\x9d\1\x80\3\xa6\1\xb8\2\xa6\1\x80\2\x9d\4\x84\2\x87\1\x80\n\x84\2\xc0\1\x9d\3\x9b\1\x84\1\x87\1\x9d\b\x87\2\xa3\1\xbb\1\x80\b\x9d\3\x80\5",
b"\x80\b\xa4\1\xa7\4\x9d\2\x84\2\xab\1\xbb\1\xae\2\xc3\1\xa7\1\x80\1\xb5\1\xae\1\xb5\1\xae\1\xb5\1\x9d\1\xae\2\xb5\1\xae\4\x84\2\x87\1\xae\24\xb5\1\xae\2\x87\1\x84\1\x80\t\xb2\1\xa7\6\x9d\1\xb8\t\xa6\1\xa8\1\x80\2\x84\2\xb2\1\xa6\1\xb8\3\xa6\1\xb8\1\xa6\1\x80\16\x84\1\x87\1\xb8\2\x8a\1\x98\24\x84\2\x98\2\x80\17\xce\1\xc3\1\xa4\a\xc0\1\x87\1\x84\1\x80\2\xab\1\xb6\1\x9d\1\xa9\1\x98\b\x84\3\x80\b\x87\1\x84\1\x80\6\xa7\a\xa8\1\x80\2\x8a\a\x84\3\x8a\5\x9c\1\x8a\2\x80\2\x9c\1\xb1\1\x80\a\x84\3\xa7\1\xa4\1\xa7\1\x80\2\x9c\1\x8a\6\x9b\1\x84\3\xc5\1\x80\6\x8a\3\x80\1\x8a\b\xa7\1\x8a\2\x84\1\x87\1\x84\1\x8a\a\xaa\1\x80\1\xb8\1\xa9\1\x84\2\x8a\1\xb8\4\x80\6\xcf\1\xa4\1\xc3\1\xa4\1\x9d\1\xa4\1\xcc\1\x80\2\xb8\2\xa6\2\x80\2\x9d\2\xa7\1\x9d\1\x84\3\x80\t\x84\1\x87\1\x84\1\xa4\1\x9d\1\xa4\1\x9d\1\x84\2\x9b\1\x9d\b\x84\1\x87\1\xa3\1\xbb\1\x80\b\x9d\1\xa7\2\x80\5",
b"\x80\b\xc3\1\xa4\1\xc3\1\xa4\1\xc3\2\xba\1\x87\1\x84\1\x80\1\x9d\1\xb5\2\x80\5\xb5\1\xbb\2\x80\1\xc3\1\xb5\6\x84\3\xb5\1\xae\1\xb5\26\x9d\1\x80\t\xc3\1\xa4\6\xc3\1\xb8\v\x80\2\xa8\1\xb8\b\x80\17\x84\2\xb8\2\xa9\1\x98\1\x8a\1\x98\22\x84\2\xab\1\x80\21\xc3\b\xa3\1\x84\2\xa4\1\xa6\1\x80\1\x98\1\x9d\1\x98\t\xb4\1\x84\2\x80\b\x87\2\x80\6\xb6\1\xc3\1\xa4\5\xc3\1\x80\3\x8a\2\xab\1\xb1\2\x80\1\x84\2\x83\1\xb1\2\x8a\1\xb1\1\x80\16\xa8\1\x84\2\x9b\1\xc3\1\x9d\1\x80\3\x96\1\x8a\1\x80\3\xab\1\xb0\1\x84\3\x87\1\xc1\1\x80\t\x9c\1\x8a\3\xb0\1\x80\2\xb1\1\x8a\1\x80\1\xbe\1\xa7\1\x84\2\x88\1\x8a\4\x9d\1\x8a\2\xb1\1\x80\1\xb8\1\x87\1\x84\1\x87\1\xb8\5\x80\a\xa4\2\xc3\1\xa4\1\xc3\2\x80\1\xab\1\xa6\1\xb8\2\x80\3\xa7\1\x9d\1\xa4\1\xc3\1\x84\2\xba\1\x80\b\xc4\1\x84\1\x87\2\xa4\3\xc3\1\x84\2\xa3\1\xa4\a\xc3\1\x87\1\x84\1\xc3\1\xb2\1\x80\b\xa4\3\x80\5",
b"\x80\b\xb2\1\xc3\5\x84\2\xb9\1\x80\t\xc3\1\x80\1\xb5\t\x87\1\x84\2\xb5\31\x80\b\xcf\1\xc3\b\xb8\1\xbb\1\xb8\n\xa6\2\xb8\b\x80\17\x84\1\x87\1\xb8\1\xa9\1\x98\17\x9c\1\x98\2\x80\1\x98\2\x87\1\x84\1\x80\23\xc3\1\xa4\2\xc3\4\xc5\1\x84\1\x87\1\xc3\4\x9d\1\x98\n\x84\2\x80\b\x87\1\x84\1\x80\a\xa4\1\xc3\6\x80\b\x9b\1\x84\1\x87\1\x80\3\x8a\1\x80\17\xba\1\x87\1\x84\1\xc3\2\xa7\1\x80\2\x9c\1\x80\a\x84\2\x87\1\x84\1\xc9\1\x80\v\x92\1\x80\2\x90\1\x80\6\x84\2\x8a\1\xcf\1\xc3\1\xa9\1\x8a\1\x9d\1\xc3\4\x9f\1\x87\1\x84\1\x87\1\xb8\1\xbb\1\xb8\3\x80\a\xa4\1\xc3\5\xab\1\xb8\2\xa6\1\xbb\1\x80\3\xa6\1\xc3\2\x9b\1\x84\2\xc3\1\x80\b\x84\3\xc3\5\x84\2\x9b\1\xc3\a\x84\1\x87\1\x84\1\xc3\1\xa7\1\x80\b\xc3\3\x80\5",
b"\x80\b\xa8\1\xc3\5\x84\1\x87\1\xc9\1\x80\n\xd1\1\xb6\1\xb5\1\xa7\1\xb5\6\x87\1\x84\2\xb5\27\xc3\1\x80\t\xc3\1\xa4\1\xc3\a\xb8\f\xbb\2\xb8\b\x80\16\xd1\1\xba\1\x84\1\x87\1\x98\20\x9f\1\xb1\1\xab\1\x80\1\xd2\1\x98\1\x84\3\x80\22\xc3\b\x84\2\x9b\1\xc3\4\x98\5\xa9\2\x98\2\xc0\1\x87\1\x84\1\x80\b\xc9\1\x87\1\x84\1\xcc\1\x80\5\xc3\a\xa4\1\x80\a\x87\1\x84\1\x9b\1\x80\22\xb6\1\x9b\1\x84\2\xc3\2\x80\v\x84\4\xc0\1\x80\34\xbb\1\xa4\1\xc3\4\x84\2\xc0\1\xb8\5\x80\a\xc3\6\xbb\1\xb8\4\x80\3\xa8\1\xc3\2\x84\3\xc3\1\x80\a\xbe\1\x87\1\x84\1\xc1\1\xa4\2\xc3\3\x84\2\x87\1\xc3\a\x84\3\xc3\1\xa7\1\x80\b\xc3\3\x80\5",
b"\x80\t\xc3\5\x9b\1\x84\2\x80\n\xce\1\x80\1\xb5\1\x80\1\xb5\1\xc3\1\xb5\4\x87\1\x84\2\xb5\27\xc3\1\x80\t\xc3\b\xb2\1\xb8\2\xbb\n\xb8\1\xbb\a\xb8\1\xab\1\x80\16\xa8\1\xb8\1\x84\2\x9b\1\xa9\1\x98\r\x9d\2\x80\3\xd3\1\x80\1\xc4\1\x84\2\x80\22\xa4\1\xc3\b\x87\1\x84\1\xc5\1\xc3\3\x98\5\xa9\1\x80\1\xa9\1\xb8\1\x84\2\xc0\1\x80\t\x84\1\x87\1\x84\1\x80\5\xb2\1\xc3\a\xb6\1\x80\6\x84\2\xc9\1\x80\21\xb2\1\xc3\1\x84\2\x87\1\xc3\2\x80\v\x84\5\x80\36\xa4\1\xc3\2\xba\1\x87\1\x84\1\xa4\1\xb8\4\xbb\1\x80\a\xab\1\xc3\6\xb8\3\xab\1\x80\4\xc3\2\x84\3\xc3\1\xb2\1\x80\6\x84\2\xc5\1\x9f\1\xc3\5\x87\1\x84\2\xc3\a\x84\3\xc3\1\xa4\1\x80\b\xc3\3\x80\5",
b"\x80\t\xc3\3\xa4\1\xc3\2\x84\2\x80\16\xb6\1\xc3\4\xb5\2\x84\2\xb5\20\xc3\1\xb5\2\xc3\1\xb5\3\x80\t\xbe\1\xc3\b\xbb\1\xb8\2\xbb\6\xb8\r\x80\17\xab\1\xbb\1\x84\2\x87\1\x98\1\x80\2\x92\1\x98\t\x9d\1\xc3\2\x80\6\x84\2\xa8\1\x80\22\xc3\b\x84\2\xba\1\xc3\3\x9d\1\x98\4\xb4\1\x80\3\x84\2\x80\n\x84\3\x80\6\xc3\a\xa4\1\xc3\1\x80\5\x84\2\xc9\1\x80\21\xc3\2\x84\3\xc3\1\x80\f\xc6\1\x84\4\x80\37\xc3\2\xba\1\x84\2\xa4\1\xb8\3\xbb\1\xb8\1\x80\b\xc3\6\xb2\1\xbb\1\xb8\1\x80\5\xc3\2\x84\1\x87\1\x84\1\xc3\2\x80\5\xc4\1\x84\2\x80\1\xc3\6\xc0\1\x84\2\xc3\a\x84\1\x87\1\x84\1\xc3\2\x80\a\xb6\1\xc3\2\xa7\1\x80\5",
b"\x80\t\xb2\1\xc3\5\x84\2\xc8\1\x80\r\xb2\1\xc3\5\xb5\1\x84\2\xb5\2\xc3\1\xb5\6\xa7\1\xc3\2\xb5\1\xc3\1\xb5\2\xc3\1\xa7\1\xc3\2\x80\f\xc3\1\xa4\1\xc3\a\xb8\2\xbb\24\x80\17\xa6\1\xbb\1\x87\1\x84\1\x87\1\xb8\1\xc8\2\x98\n\xc3\3\x80\6\x84\2\xbe\1\x80\22\xc3\b\x84\2\xc0\1\xc3\3\x98\1\xc3\1\x98\3\x80\4\x84\2\x80\n\x87\1\x84\2\x80\6\xc3\b\xa4\1\xab\1\x80\4\x87\1\x84\1\xb9\1\x80\20\xa4\2\xc3\1\x84\3\xa4\1\x80\r\x84\4\x80\37\xc3\2\xc5\1\x84\2\xc0\1\xbb\2\xb8\1\xbb\1\xb8\1\x80\b\xc3\6\xa4\1\xb8\1\x92\1\x80\5\xc3\2\x84\1\x87\1\x84\1\xa4\1\xc3\1\xb2\1\x80\4\xbf\1\x84\1\x87\1\xb7\1\xa4\1\xc3\6\x84\2\xba\1\xc3\6\x84\1\x87\2\xc3\2\x80\a\xb2\1\xc3\2\xb2\1\x80\5",
b"\x80\n\xc3\1\xa4\1\xc3\2\x84\2\xc0\1\xa4\1\x80\r\xc3\6\x9b\1\x87\1\x84\1\xc3\5\xb5\1\xba\1\xc3\2\x80\1\xd3\1\x80\25\xc3\6\xa4\1\xc3\2\xbb\25\xb6\1\x80\17\xbb\3\xc5\1\xa7\1\xa8\1\x80\1\x98\v\xc3\1\x98\1\x9d\1\xcf\1\x80\5\xa8\1\xb2\1\x80\23\xc3\b\xc5\1\xc0\1\xc3\a\x98\1\x9d\1\x80\4\x84\1\x87\1\x80\v\xc1\1\xb6\1\x80\6\xa7\1\xc3\1\xa4\1\xc3\4\xa4\1\xc3\2\xa4\1\x80\3\x84\1\x87\1\x84\1\x80\17\xc3\4\xa3\1\x84\2\xc3\1\x80\r\xcf\1\x84\3\xa8\1\x80\37\xc3\2\x84\2\x9b\1\xc3\1\xbb\3\xa6\1\x80\b\xa6\1\xc3\6\xbb\1\x80\6\xc3\2\x87\1\x84\2\xc3\2\xa4\1\x80\5\x84\1\x87\1\xba\1\xc3\a\x84\3\xc3\6\x84\3\xc3\1\xa4\1\x80\a\xa4\2\xc3\1\xcf\1\x80\5",
b"\x80\n\xc3\3\xc5\1\x84\2\xc3\2\xb2\1\x80\f\xc3\6\x84\2\x87\1\xc3\t\xb2\1\x80\24\xbb\1\xc3\a\xa4\1\xc3\1\xb6\1\xab\1\xb8\1\xbb\23\x80\20\xbb\2\xb8\1\x9f\1\xa9\2\x80\1\x98\b\xae\1\x98\3\x9d\1\xc3\2\x80\32\xa6\1\xc3\17\xae\1\xc3\1\xb6\1\x80\4\x84\2\xad\1\x80\23\xc3\v\xb2\1\x80\1\xb9\1\x84\2\x80\16\xa4\1\xc3\5\x87\1\x84\1\xbb\1\x80\16\x87\1\x84\2\xc5\1\x80\37\xc3\2\x84\1\x87\1\x84\1\xc3\2\xb8\1\xbb\1\xb6\1\x80\t\xc3\6\xbb\1\x80\6\xc3\2\x9b\1\x84\1\x87\1\xc3\3\xa4\1\x80\4\x84\1\x87\1\xc5\1\xc3\a\x87\1\x84\2\xc3\6\x84\3\xc3\2\x80\a\xc3\3\xb6\1\x80\5",
b"\x80\n\xb6\1\xc3\2\xa3\1\x84\1\x87\1\xc3\3\x80\v\xcc\1\xc3\6\x84\2\xc0\1\xc3\n\xd4\1\x80\21\xd5\1\xc3\v\x80\2\xbb\22\xb8\1\xbb\1\x80\20\xbb\2\x9f\1\xa9\1\x9f\1\x98\1\xae\1\x98\4\xae\3\x98\1\x9d\1\xae\1\x98\2\xc3\3\xcc\1\x80\32\xc3\21\x80\5\x9b\1\x84\2\x80\23\xc3\r\xab\1\x84\2\xc8\1\x80\r\xc3\6\x84\2\xb9\1\x80\17\x84\3\x80\37\xc3\2\x84\2\x87\1\xc3\3\xbb\1\xab\1\x80\t\xc3\6\xa6\1\x80\6\x9f\1\xc3\1\xc5\1\x84\2\xc5\1\xc3\3\x80\5\xc5\1\xc3\b\x87\1\x84\1\x87\1\xc3\6\xc0\1\x84\2\xc3\2\x80\a\xc3\3\xa8\1\x80\5",
b"\x80\v\xc3\2\x9b\1\x87\1\x84\1\xc3\4\x80\n\xc3\a\x87\2\xc3\f\xbb\1\x80\16\xb2\1\xc3\f\xab\1\x80\2\xbb\23\x80\20\xbb\5\xb4\1\x98\2\xae\4\x98\1\xae\1\x98\1\xae\1\xa6\1\x98\1\x9d\2\xae\1\xc3\1\xa4\1\xc3\1\x80\32\xc3\21\x80\6\x84\2\xa8\1\x80\23\xc3\f\xa4\1\x87\1\x84\1\xb2\1\x80\r\xc3\6\x84\2\xc5\1\x80\20\x87\1\x84\1\x80\36\xc3\3\xc0\1\x84\2\xc3\4\xa4\1\x80\a\xa6\1\xc3\a\xa6\1\x80\a\xc3\2\x84\2\xba\1\xc3\4\x80\4\xc3\t\xba\1\x87\1\x84\1\xc3\a\x84\1\x87\1\xc3\2\x80\a\xc3\3\x80\6",
b"\x80\v\x92\1\xc3\1\x9b\1\x84\2\xc3\5\x80\t\xc3\a\x84\2\xc3\17\x80\t\xb2\1\xc3\r\xa4\1\xc3\1\x80\3\xbb\22\x92\1\x80\20\xbb\3\xb4\1\xae\1\xbb\1\xae\b\x92\1\x80\2\x9d\1\xc3\6\x80\32\xb2\1\xc3\20\x80\6\x87\1\x84\1\xcf\1\x80\23\xab\1\xc3\f\x84\2\xc3\24\x84\1\x87\1\xb6\1\x80/\xa4\1\xc3\3\x9b\1\x84\1\x87\1\xc3\24\x80\b\xc3\2\x84\2\xc3\6\xa4\1\x80\1\xc3\v\x84\2\xc0\1\xc3\5\xc5\1\x84\1\x87\1\xc3\2\x80\a\xc3\3\x80\6",
b"\x80\f\xc3\1\xa3\1\x84\1\x87\1\xc3\6\xd5\1\x80\5\xcc\1\xc3\b\x84\1\x87\1\xc3\21\xa4\1\xb2\2\xa4\1\xc3\22\x80\4\xbb\22\x80\20\xd0\1\xbb\5\xa6\1\xae\1\xa6\1\xb8\1\xae\2\x9d\1\xae\2\xb4\1\x80\2\xc3\a\xb6\1\x80\31\xcf\1\xc3\17\xbb\1\x80\6\x84\2\xcf\1\x80\24\xc3\v\xba\1\x84\2\xc3\24\x87\1\x84\1\xbe\1\x80-\xd6\1\xc3\5\x84\3\xc3\22\xa4\1\xc3\1\x80\b\xa6\1\xc0\1\x87\1\x84\1\xc3\23\x84\2\xc0\1\xc3\5\x9b\1\x84\2\xc3\2\x80\a\xc3\3\x80\6",
b"\x80\f\xc3\1\xc5\1\x87\1\x84\1\xc0\1\xc3\1\xc5\2\xc3\4\xbb\1\x80\3\xc3\t\x84\3\xc3\1\xc5\1\xc3\v\xc5\4\xc3\b\xc5\1\xc3\v\xd3\1\x80\4\xbb\22\x80\20\xbb\5\xae\2\xa6\1\x80\1\x9d\1\xa1\1\xae\2\x9d\1\xae\1\x80\3\xab\1\xc3\2\xc5\1\xc3\4\x80\31\xb2\1\xc3\17\x80\a\xb9\1\x87\1\xcf\1\x80\25\xc3\n\x84\2\xc0\1\xc3\23\xc0\1\x84\2\xc3\1\x80+\xb6\1\xc3\2\xc5\2\xc3\3\x84\1\x87\1\xba\1\xc3\1\xc5\1\xc3\17\xc5\1\xc3\1\xd3\1\x80\t\x84\3\xc3\6\xc5\2\xc3\v\x87\2\xc0\1\xc5\1\xc3\4\x84\2\x87\1\xc3\2\x80\6\xab\1\xc3\3\x80\6",
b"\x80\f\xab\1\xc5\1\xc0\1\x87\1\x84\1\xc3\b\xc5\2\xc3\1\xc5\1\xc3\b\xc0\1\x84\2\xc5\1\xc3\37\xc5\1\xc3\1\xa4\1\xc3\1\x80\6\xbb\22\x80\17\xbb\6\xb4\1\xa6\1\x80\2\xd7\1\x80\1\x96\1\xae\1\xb8\2\x80\4\xc5\1\xc3\1\xc5\6\x80\27\xcf\1\xc5\r\xc3\1\xc5\2\x80 \xc5\2\xc3\1\xc5\1\xc3\5\x84\1\x87\1\xc5\1\xc3\23\x87\2\x84\1\xc5\1\xc3\1\x80%\xa6\1\xc3\2\xc5\3\xc3\6\xc5\1\x84\2\xc3\2\xc5\1\xc3\16\xc5\2\x80\v\x84\1\x87\2\xc3\1\xc5\1\xc3\1\xc5\17\xc3\1\x9b\2\xc3\3\xc5\1\xc3\2\x84\2\xba\1\xc3\2\x80\6\xbb\1\xc3\3\x80\6",
b"\x80\r\xc5\2\x84\2\xc5\25\x87\1\x84\1\xba\1\xc5\37\xc3\2\xc5\1\xab\1\x80\6\xbb\21\x9f\1\xaa\1\x80\r\xd1\1\xbb\5\x9f\1\xd3\1\x80\5\xaa\1\xae\1\x80\6\xc5\a\xc3\2\x80\23\xd2\1\xd5\1\xc3\3\xc5\16\xcf\1\x80!\xa4\1\xc5\1\xa4\1\xc5\5\x84\1\x87\1\xc5\24\x84\2\x87\1\xc3\1\xc5\2\xd3\1\x80\37\xd4\1\xb2\1\xc5\1\xc3\1\xc5\f\xba\1\x84\2\xc3\1\xc5\21\x80\f\x84\2\xb2\1\xc5\25\xc3\1\xc5\5\x84\2\xc5\2\xc3\1\x80\6\xa4\1\xc5\3\x80\6",
b"\x80\r\xbb\1\xc5\1\x84\1\x87\1\xc5\25\x84\1\x87\1\xc0\1\xc5!\xd3\1\x80\a\xbb\1\x9f\1\xbb\21\x80\r\xbb\a\x80\6\x9d\1\x92\1\x80\6\xc5\n\xb2\1\xab\1\x80\16\x92\1\xc5\24\x80$\xab\1\xc3\1\xc5\4\x84\2\xc5\24\x84\2\x9b\1\xc5\6\x80\33\xb2\1\xc5\21\xba\1\x84\2\xc5\20\xbb\2\x80\f\x84\2\x92\1\x80\1\xa6\1\xc3\1\xc5\23\xc3\2\xc5\3\x87\1\x84\1\xc5\3\x80\6\xc5\4\x80\6",
b"\x80\16\xa4\1\x84\2\xba\1\xc5\24\x84\1\x87\1\xa3\1\xc5\37\xb6\1\x80\b\xbb\1\x9f\1\xbb\1\x9f\17\xbb\3\x80\v\xbb\1\x9f\6\xbb\1\x80\16\xaa\1\xc5-\x80'\xa4\1\xc5\3\x84\2\xc5\24\x84\2\x87\1\xc5\b\xb9\1\x80\26\xc5\25\x84\2\xc5\f\xa4\1\x9f\3\xbb\2\x80\f\x84\1\x87\1\xbb\1\x80\3\xb2\1\xc5\27\x84\2\xc5\3\xa6\1\x80\5\xc5\4\x80\6",
b"\x80\17\x84\2\xba\1\xc5\24\xba\1\x84\1\xa3\1\xc3\1\xc5\34\xbb\1\x80\n\x9f\25\xd2\1\x80\t\x9f\6\xbb\1\x9f\1\xd7\1\x80\17\xc5-\x80(\xa4\1\xc5\2\x87\1\x84\1\xc5\24\x9b\1\x84\2\xc5\a\xc3\1\xc5\2\xb7\1\x80\23\xc5\1\xb9\1\xc5\24\x84\2\xc5\t\xbb\1\x80\1\xaa\1\x9f\5\xbb\1\x80\f\x84\2\x87\1\x80\4\xa4\1\xc5\26\x84\1\x87\1\xc0\1\xc5\2\xa4\1\x80\4\xaa\1\xc5\4\x80\6",
b"\x80\17\xa6\1\xc50\xb9\1\xb2\1\xab\1\x80\16\xbb\1\x9f\1\xbb\1\x9f\23\x80\b\xbb\1\x9f\a\xbb\1\x80\20\xa4\1\xc5+\x80*\xc5\2\x9b\1\x84\2\xc5\24\x84\2\xc0\1\xc5\r\xb2\1\xaa\1\x80\r\xaa\1\xc5\26\x84\1\x87\1\x84\1\x9f\5\x80\5\xbb\1\x9f\3\xbb\2\x92\1\x80\f\xa4\1\x87\1\x84\1\x80\6\xc5\25\x84\3\xc5\3\x80\4\xa4\1\xc5\3\xa4\1\x80\6",
b"\x80\20\xc5-\xd7\1\x80\22\xaa\1\x9f\26\xbb\1\x80\5\xd7\1\xbb\1\x9f\a\xbb\1\x80\22\xbb\1\xc5(\xa4\1\x80,\xc5\2\x84\2\x9b\1\xc5\23\x84\3\xc5\22\xa4\1\xb2\2\xc5\36\x9b\1\x84\2\xbb\1\x9f\4\x80\5\x9f\4\xbb\1\x9f\1\xaa\1\x80\r\x87\1\x84\1\xc5\1\x80\6\xab\1\xc5\24\x84\1\x87\1\xc0\1\xc5\2\xd7\1\x80\3\xc5\4\xa6\1\x80\6",
b"\x80\21\xc5+\x80\24\xbb\1\x9f\27\xbb\1\xd8\1\x80\1\xd8\1\xaa\1\x9f\t\x80\24\xc5(\x80-\xc5\2\x84\3\xc5\23\x84\3\xc53\x9b\1\x87\2\x9f\5\x80\4\xaa\1\x9f\4\xbb\1\x9f\1\xd7\1\x80\r\x84\2\x9b\1\x80\b\xc5\23\x84\1\x87\1\xc0\1\xc5\2\x9f\1\x80\3\xc5\4\xaa\1\x80\6",
b"\x80\22\xc5(\xa6\1\x80\25\x9f%\x80\26\xc5%\xd9\1\x80/\xc5\1\x84\2\x87\1\xc5\23\x84\3\xc52\xb2\1\xc3\1\x84\2\x9f\1\xbb\1\x9f\3\x80\4\xbb\1\x9f\4\xbb\1\x9f\1\x80\16\x84\3\x80\a\x92\1\xc5\23\x87\2\x9b\1\xc5\3\x80\2\xd7\1\xc5\4\x80\a",
b"\x80\23\xc5'\x80\25\x92\1\x9f$\xd7\1\x80\27\xc5\"\x802\xa4\1\x84\3\xc5\23\x84\3\xc50\xa7\1\x9f\3\x87\1\x84\1\x9f\5\xd7\1\x80\3\x9f\a\x80\16\x84\3\x80\a\xc5\24\x87\2\x9b\1\xc5\3\x9f\1\x80\1\xc5\5\x80\a",
b"\x80\23\xc5&\x80\26\x96\1\x9f#\xd7\1\x80\30\xd7\1\xc5\37\xb8\1\x803\xa6\1\x9b\1\x84\2\xc5\23\xc0\1\x84\2\xc5/\xd7\1\x9f\4\x9b\1\x84\1\x9f\5\xda\1\x80\3\x9f\a\x80\16\xc5\1\x84\1\x87\1\x80\6\xd2\1\xc5\24\x87\1\x84\1\x9b\1\xc5\4\xd7\1\xc5\5\x80\a",
b'\x80\24\xc5$\x95\1\x80\26\xb8\1\x9f"\x92\1\x80\32\xa4\1\xc5\34\x9f\1\x806\xc5F\x80\3\x9f\v\x95\1\x80\2\xd7\1\x9f\a\x80\27\xa7\1\xc5 \x9f\1\x80\a',
b'\x80\25\xc5"\x80\30\xbb\1\x9f!\xbb\1\x80\34\xc5\32\xbb\1\x808\xc5D\xb2\1\x80\4\x9f\v\x96\1\x80\2\xa6\1\x9f\a\x80\27\xc5!\x95\1\x80\a',
b"\x80\25\xb2\1\xc5 \x80\31\xbb\1\x9f!\x80\35\xa4\1\xc5\30\xa4\1\x809\xc5C\x92\1\x80\5\x9f\v\x96\1\x80\2\x9f\b\x80\27\xc5!\x80\b",
b"\x80\26\xc5\37\x80\32\xa6\1\x9f \x80\36\xd7\1\xc5\27\x80;\xc5B\x80\a\x9f\v\xb8\1\x80\2\x9f\a\xb8\1\x80\27\xc5!\x80\b",
b"\x80\27\xc5\35\x80\33\x95\1\x9f\37\xb8\1\x80\37\xbb\1\xc5\25\xb8\1\x80;\xa4\1\xc5\22\xc6\1\xc5\1\xc6\1\xc5*\xb9\1\x80\b\x9f\v\xb8\1\x80\2\x9f\a\x96\1\x80\26\x95\1\xc5\35\xc6\1\xc5\2\xc6\1\x80\b",
b"\x80\27\xda\1\xc6\1\xc5\32\xa6\1\x80\33\xda\1\x9f\37\x80 \xda\1\xc5\25\x80<\xbb\1\xc5\16\xc6\2\xc5\1\xc6\1\xc5\2\xa4\1\x80\1\xc6\1\xc5(\x80\t\x9f\v\xbb\1\x80\1\xdb\1\x9f\a\x95\1\x80\26\x95\1\xc5\36\xc6\1\xc5\1\xa6\1\x80\b",
b"\x80\30\xc5\1\xc6\2\xc5\27\xc6\1\x80\35\x9f\37\x80!\xc5\25\x80=\xc5\16\xc6\1\xc5\2\x80\6\xc5&\xc6\1\x80\n\x9f\1\xb2\1\x9f\n\x80\1\x95\1\x9f\a\xda\1\x80\27\xc6\1\xc5\37\x80\t",
b"\x80\31\xc6\1\xc5\1\xc6\27\x80\1\xa4\1\xc5\2\xc6\a\x80\23\x96\1\x9f\36\x80!\xc6\25\x80=\xc6\16\xc5\2\x9f\1\x80\6\xa4\1\xc6%\x80\v\xb8\1\x9f\v\x80\1\xbb\1\x9f\a\x80\30\xc6\37\x80\n",
b'\x80\31\x9f\1\xc6\26\xc5\2\xc6\1\xc5\1\xc6\6\xc5\1\xc6\2\xa4\1\x80\23\x9f\2\xb2\1\x9f\33\x80!\xc6\23\xc5\1\xc6\1\x80=\xc6\20\xdc\1\x80\6\xda\1\xc6\1\xc5\1\xc6"\x80\f\x96\1\x9f\n\xbb\1\x80\1\x9f\b\x80\30\xc6\37\x80\n',
b"\x80\31\x95\1\xc6\26\xc5\1\xc6\1\xc5\1\xc6\f\x80\22\x9f\36\x80!\xc6\24\xc5\1\x80=\xc6\20\x80\b\xc6#\x9f\1\x80\f\x94\1\x9f\n\xb8\1\x80\1\x9f\b\x80\30\xc6\36\xc5\1\x80\n",
b"\x80\31\xdc\1\xc6%\x96\1\x80\21\x95\1\xb2\35\x80 \xdc\1\xc6\24\x80>\xb9\1\xc6\17\x80\b\xc6#\x80\r\x94\1\x9f\n\x96\1\x80\1\x9f\b\x80\30\xc6\37\x80\n",
b"\x80\31\xdc\1\xc6&\x80\22\xb2\1\x9f\1\xb2\33\x80 \x9f\1\xc6\24\x80>\xb8\1\xc6\17\x80\b\xb9\1\xc6\3\xc5\1\x80\2\xc0\1\xc6\32\xb2\1\x80\r\x96\1\x9f\n\x96\1\xdc\1\xb2\1\x9f\6\xb2\1\x80\30\xc6\1\xc5\1\xc6\34\xa4\1\x80\n",
b"\x80\32\xc6&\x80\22\xb8\1\xb2\34\x80 \xc6\24\xa1\1\x80?\xc6\17\x80\20\xc0\1\xc6\30\xc5\1\x80\16\xb8\1\x9f\1\xb2\t\x96\1\x94\1\xb2\a\xa7\1\x80\30\xc6\36\xdc\1\x80\n",
b"\x80\32\xc6\32\xc5\1\xb0\1\xda\1\xa7\1\xc6\t\x80\22\xdc\1\xb2\1\xa7\1\xb2\31\x80\37\xdd\1\xc6\24\x80@\xc6\17\xb0\1\x80\17\xb8\1\xc6\30\x80\17\x9f\1\xb2\n\xb0\2\xb2\b\x80\30\xc6\36\x80\v",
b"\x80\32\xc6\30\xc0\1\x80\6\xc6\b\x96\1\x80\22\xb2\1\x9f\1\xb2\31\x80\37\xb8\1\xc6\24\x80@\x9f\1\xc6\r\xc0\1\xa4\1\x80\20\xc6\30\x80\17\xa7\1\x9f\1\xb2\t\xb0\2\xb2\a\x9f\1\x80\27\xd2\1\xc6\36\x80\v",
b"\x80\32\xc6\30\x80\a\xa1\1\xc6\b\x80\23\xa7\1\xb2\31\x80\37\xc6\25\x80A\xc6\17\x80\20\xc6\27\xb0\1\x80\17\xb2\1\x9f\1\xb2\t\x9f\1\xb8\1\xa7\1\xb2\6\x9f\1\x80\27\xc6\36\x9f\1\x80\v",
b"\x80\32\xc6\30\x80\b\xc6\b\x80\23\xb8\1\xa7\1\xb2\6\xa7\22\x80\37\xc6\25\x80A\xc6\17\x80\20\xc6\27\x80\20\xb2\1\xa7\v\x9f\1\xa7\a\xb2\1\x80\27\xc6\36\x80\f",
b"\x80\32\xc6\30\xde\1\x80\a\xc6\b\xa1\1\x80\23\xa7\31\x80\37\xc6\25\x80A\xc6\20\x80\17\xc6\27\x80\20\xa7\f\xb2\1\xa7\b\x80\26\xd1\1\xc6\36\x80\f",
b"\x80\32\xc6\30\x94\1\x80\a\xb0\1\xc6\b\x80\23\xb4\1\xa7\30\x80\36\xdd\1\xc6\25\x80B\xc0\1\xc6\16\xb8\1\x80\16\xc6\26\xa4\1\x80\20\xa7\f\xb4\1\xa7\b\x80\26\xc6\36\x94\1\x80\f",
b"\x80\32\xc6\30\x9f\1\x80\b\xc6\b\x80\23\xdf\1\xa7\30\x80\36\xa7\1\xc6\24\xa4\1\x80B\xc6\16\xc0\1\xc6\1\xc0\1\x80\r\xc6\26\xa2\1\x80\20\xa7\25\x80\25\xb4\1\xc6\35\xa1\1\x80\r",
b"\x80\32\xc6\30\xa4\1\x80\b\xc6\b\xb0\1\x80\23\xa7\30\x80\36\xc6\25\xa7\1\x80B\xc0\1\xc6\20\xb0\1\x80\v\xb0\1\xc6\26\x80\21\xa7\25\x80\25\xc6\36\x80\16",
b"\x80\32\xa4\1\xc6\30\x80\b\xdf\1\xc6\b\x80\23\xa7\30\x80\36\xc6\25\x9f\1\x80C\xc0\1\xc6\20\xa4\1\x80\n\xc5\1\xc6\1\xc0\1\xc6\24\x80\21\xa7\25\x80\25\xc0\1\xc6\34\xb0\1\x80\16",
b"\x80\32\xa1\1\xc6\30\x80\t\xc6\b\xdf\1\x80\22\xa7\30\x80\36\xc6\25\xe0\1\x80D\xc6\21\xc0\1\x80\t\xc0\1\xc6\26\x80\21\xa7\24\xb4\1\x80\24\xc0\1\xc6\32\xc0\1\xc6\2\x80\17",
b"\x80\32\xa2\1\xc6\30\x80\t\xc6\b\xa1\1\x80\22\xa7\30\x80\36\xc6\25\x80E\xa4\1\xc6\22\xcd\1\x80\a\xc6\27\x80\21\xa7\24\xb4\1\x80\24\xc6\2\xc0\1\xc6\32\x80\20",
b"\x80\33\xc6\30\x80\t\xc6\b\xa7\1\x80\22\xa7\30\x80\36\xc6\25\x80F\xc6\23\xc0\1\x94\1\x80\4\xdf\1\xc6\27\x80\20\xe1\1\xa7\24\x9f\1\x80\23\xc6\34\xa2\1\x80\21",
b"\x80\33\xc6\30\x80\t\xc6\b\xc5\1\x80\22\xa7\30\x80\35\xe1\1\xc6\25\x80G\xa1\1\xc6\25\xa1\1\xc6\30\xb0\1\x80\20\xe1\1\xa7\24\xa1\1\x80\22\xc6\32\xad\1\xc6\2\x80\22",
b"\x80\33\xc6\30\x80\t\xc6\t\x80\22\xb4\1\xa7\27\x80\35\xa1\1\xc6\25\x80H\xc6\25\xe2\1\xc6\30\x80\21\xe1\1\xa7\24\xa1\1\x80\21\xd0\1\xc0\1\xc6\31\xc0\1\xc6\1\x80\23",
b"\x80\32\xe1\1\xc6\27\xe2\1\x80\t\xad\1\xc6\b\x80\22\x90\1\xa7\27\x80\35\xc5\1\xc6\22\xe2\2\xc6\1\x80I\xc6\21\xad\1\xc6\33\x80\21\xe1\1\xa7\24\xa1\1\x80\21\xc6\1\xe2\1\xc6\32\x80\24",
b"\x80\32\xa7\1\xc6\30\x80\t\xc6\6\xe2\1\xc6\2\x80\22\xa2\1\xa7\27\x80\35\xc6\23\xe2\1\xc6\1\xa7\1\x80K\xc6*\xb4\1\x80\22\xa7\24\x90\1\x80\20\xe2\1\xc6\30\xad\1\xc6\2\xa4\1\x80\24",
b"\x80\32\xc5\1\xc6\30\x80\b\xa1\1\xc6\t\x80\22\xe1\1\xa7\27\x80\35\xc6\25\xa1\1\x80K\xa2\1\xc6)\xe1\1\x80\b\xe3\1\x80\t\xa7\24\x90\1\x80\17\xc5\1\xc6\31\xe2\1\xc6\1\xc0\1\x80\25",
b"\x80\32\xc5\1\xad\30\xe1\1\x80\a\xe2\1\xad\a\xc6\1\xa4\1\x80\23\xa7\27\x80\35\xe2\1\xad\24\x80N\xad(\xc3\1\x80\b\xc3\1\x80\t\xa7\24\x90\1\x80\16\x90\1\xc6\34\xa1\1\x80\25",
b"\x80\32\xa4\1\xad\30\xc5\1\x80\6\xa7\1\xad\a\xe2\1\xad\1\x90\1\x80\23\xa7\27\x80\35\xad\24\xe2\1\x80O\xe2\1\xad#\xe2\2\xad\1\xc3\1\x80\a\xc3\2\x80\1\xc3\1\x80\2\xc3\1\x80\4\xa7\24\xb0\1\x80\16\xad\33\xc6\1\xa7\1\x80\26",
b"\x80\32\xa1\1\xe2\30\xc6\1\x80\1\xa2\1\x80\1\xe4\1\x80\2\xe2\1\xc0\1\xe2\b\x80\24\xa7\27\xe3\1\x80\33\xe1\1\xad\1\xe2\22\xc6\2\x80O\x90\1\xc6\1\xe2#\xc6\1\xad\1\xc3\1\xdb\1\xe5\1\xe6\1\xd0\1\xdb\1\x99\1\xa1\1\xa4\1\xc3\1\x80\1\xc3\1\xb4\1\xe7\1\xc3\1\x80\4\xa7\24\x90\1\x80\f\xe3\1\xad\1\xe2\1\xc6\1\xe2\32\x80\27",
b"\x80\32\xe1\1\xe2\30\xc6\1\x80\1\xc3\1\x80\1\xa4\1\x80\2\xad\1\xc6\1\xe2\a\xa1\1\x80\24\xa7\27\xb0\1\x80\33\xa7\1\xe2\24\x97\1\x80P\x97\1\xc6\1\xe2!\xc6\1\xe2\1\xc5\1\xc3\6\xa4\1\xc3\3\xa2\1\xc3\1\xa4\1\xc3\2\x80\4\xa7\24\xa1\1\x80\f\xe2\35\xa7\1\x80\27",
b"\x80\33\xe2\31\xa1\1\xc3\1\x80\1\xc3\1\x80\1\xa7\1\xe2\1\xad\1\xe2\3\xad\1\xe2\2\xad\1\x80\25\xa7\30\x80\33\xe2\1\xad\1\xe2\23\x80S\xe2\2\xad\1\xe2 \xc3\v\x9d\1\xc3\5\x90\1\x80\1\xe1\1\xb4\1\xa7\23\xa1\1\x80\v\xc6\1\xe2\32\xc6\1\xe2\1\xad\1\x80\30",
b'\x80\17\x9c\1\x80\2\xd2\1\x80\6\x90\1\xa4\1\xe2\31\xa7\1\xc3\3\xd0\1\xad\1\xe2\1\xad\1\xe2\6\xa4\1\x80\25\xa7\30\x80\33\xe2\25\x80T\xe2"\xc3\22\x80\1\xa4\1\xa2\1\xa7\23\xa1\1\x80\n\xe8\1\xad\3\xe2\33\x80\30',
b"\x80\17\xc3\1\x80\2\xc3\1\x80\6\xc3\2\xad\1\xe2\30\xc3\4\xc5\1\xe2\b\xad\1\x80\26\xa7\30\x80\33\xe2\24\xc6\1\x80T\xa4\1\xad\1\xe2\37\xc6\1\xc3\21\x80\1\x90\1\xc3\1\x80\1\xa4\1\xa7\22\xa1\1\x80\t\xa2\1\xe2\1\xad\1\xe2\33\xad\1\x80\31",
b"\x80\17\xc3\1\xa4\1\x9d\1\xc3\1\x80\1\xc3\2\x80\3\xc3\2\xad\1\xe2\30\xc3\3\xc6\1\xc0\1\xe2\b\xa7\1\x80\26\xa7\30\x80\33\xe2\21\xad\1\xe2\2\x80U\xe7\1\xa4\1\xe2\2\xad\1\xe2\34\xc5\1\xc3\23\x80\2\xa7\2\xc3\1\xa4\1\xa7\17\x9f\1\x80\t\xad\1\xe2\35\x80\32",
b"\x80\17\xc3\4\xb4\1\xc3\2\x80\1\xc3\1\xa1\1\xa7\1\xc3\1\xc6\1\xad\1\xe2\27\xc3\3\xad\1\xe2\t\x80\27\xa7\t\xa4\2\xa7\r\xe1\1\x80\31\xd2\1\xe2\23\xc6\1\x80O\xc3\1\x9c\1\x80\6\xad\1\xe2\36\xc3\25\x80\1\xb0\1\xc3\2\xa4\1\xa7\20\x80\b\xe2\2\xad\1\xe2\33\xad\1\x80\2\xc3\1\xe6\1\xd2\1\x80\25",
b"\x80\n\xc3\1\x80\5\xc3\6\x80\1\xb4\1\xc3\3\xc6\1\xe2\1\xad\1\xe2\26\xc3\1\xc6\1\xad\1\xe2\t\x80\30\xa4\1\xa7\26\xa4\2\x80\31\xa7\1\xe2\24\x80O\xc3\2\x9c\1\x80\5\xc6\1\xe2\36\xc3\24\xa4\1\xb0\1\xc3\3\xa7\21\x80\a\xe2\2\xad\1\xe2\34\xb0\1\x80\2\xc3\1\xa4\1\xc3\2\x80\24",
b"\x80\n\xc3\2\x80\5\xc3\5\x9d\1\xa2\1\xc3\3\xc5\1\xe2 \xad\1\xe2\2\xa4\1\x80\30\xa7\4\xa4\1\xa7\4\xc3\2\xa7\2\xa4\1\xa7\2\xa4\1\xc3\1\xa7\1\xa4\2\xa7\2\xc3\1\xa4\1\xc3\1\x80\30\xad\1\xe2\23\xb4\1\x80O\xc3\3\x80\5\xc5\1\xad\1\xe2\35\xc3\30\xa7\2\xa4\1\xa7\3\xa4\1\xa7\1\xa4\1\xa7\2\xa4\2\xa7\5\x80\6\xad\2\xe2\36\x80\4\xc3\3\x80\24",
b"\x80\n\xc3\2\x80\4\xc3\f\xad\1\xe2 \xad\1\xe2\1\xe9\1\x80\b\xe3\1\x80\t\xb7\1\xa2\1\x80\4\xa4\1\xa7\1\xa4\a\xc3\2\xa4\5\xc3\4\xa4\3\xc3\3\xa2\1\x80\27\xe2\24\x80M\xd0\1\x85\1\x80\1\xc3\3\x80\2\xe6\1\x80\1\xb4\1\xc5\1\xad\1\xe2\34\xad\1\xc5\1\xc3\27\xa4\v\xc3\2\xa4\5\x80\6\xe2\37\xc0\1\xb0\1\x80\1\xea\1\xc3\4\x80\24",
b'\x80\a\xa7\1\x90\1\x80\1\xc3\2\x80\1\xa7\1\x80\2\xc3\v\xc5\1\xe2"\xa7\1\xc3\1\x80\1\xdf\1\x90\1\x80\4\xa4\1\xb4\1\x80\1\xdf\1\x80\6\x9d\1\xa7\1\xdf\1\x80\4\xa4\1\xa7\1\xa4\2\xc3\2\xa4\3\xc3\2\xa4\5\xc3\5\xa4\2\xc3\3\x80\30\xe2\1\xad\1\xe2\21\xc5\1\x80M\xc3\3\x9d\1\xc3\3\x99\1\xc3\1\x80\1\xc3\2\xe2\1\xad\1\xe2\35\xc6\1\xc3\25\xa4\2\xc3\2\xa4\1\xc3\2\xa4\4\xc3\3\xa4\1\xc3\2\xa4\2\x80\5\xad\1\xe2\36\xad\1\xc3\3\xa4\1\xc3\3\x9d\1\x80\24',
b"\x80\5\xb4\1\xc3\3\xb4\1\xc3\3\xa4\1\xc3\1\xa1\1\xc3\v\xc5\1\xe2\1\xad\35\xe2\1\xad\2\xa7\1\x90\1\xc3\1\xe1\1\xc3\2\x80\3\xa4\1\xc3\1\xb4\1\xe1\1\xc3\1\xa2\1\x80\5\xc3\2\x80\5\xa4\4\xc3\3\xa4\1\xc3\4\xa4\2\xc3\1\xa4\1\xc3\t\xa4\2\x80\27\xad\23\x80M\xc3\r\xad\35\xe2\3\xc3\34\xa4\1\xc3\6\xa4\1\xc3\3\xa4\1\x80\1\xb0\1\xa1\1\x80\2\xe2\37\xc5\1\xc3\n\xa1\1\xc3\2\xdf\1\x80\16",
b'\x80\1\x90\1\xc3\a\xa4\2\xc3\20\xe2\1\xad\1\xe2\1\xad\34\xe2\1\xad\2\xc3\3\xa7\1\xc3\a\xa7\1\xa2\1\xc3\2\x80\2\xe1\1\x80\2\xc3\2\xa2\1\x80\4\xa4\4\xc3\3\xa4\1\xc3\4\xa4\2\xc3\r\xd2\1\xc3\1\xa7\1\xe5\1\x80\22\xdb\1\xad\22\xe2\1\x80L\xc3\16\xad\35\xe2\3\xc6\1\xc3"\xa4\1\xc3\4\x9f\1\xa4\2\x80\1\xa2\1\xad\37\xa4\1\xc3\n\x9c\1\xc3\2\x80\17',
b"\xa1\1\xc3\32\xad\1\xe2\1\xad\36\xc6\1\xc3\r\xb4\1\xc3\2\xb0\1\xa4\1\xc3\1\x80\1\xa2\1\xc3\1\xa1\1\xc3\1\xdf\1\x80\3\xa4\2\xc3\31\xa4\2\xc3\1\x80\23\xa2\1\xad\23\x80K\xc3\17\xad\35\xe2\4\xc3(\xa4\2\xc3\1\xad\37\xe2\1\xc3\f\xa7\1\x80\20",
b"\xc3\33\xc6\1\xad\1\xe2\1\xad\33\xe2\1\xc3\30\x80\1\xb4\1\xc3\1\xa2\1\x80\1\xc3\2\xa4\1\xc3\33\x80\24\xa7\1\xad\23\x80J\xc3\2\xa4\1\xc3\r\xad!\xc6\1\xc3)\xc5\1\xe2\1\xad\37\xc3\f\x80\1\xdf\1\xe1\1\x80\16",
b'\xc3\33\xc5\1\xad\36\xc3\26\xc5\2\x80\1\xb4\1\xc3\2\xb4\1\x9d\1\xc3\35\xe4\1\xa2\1\x80\22\xc6\1\xad\23\x80I\xa1\1\xa4\1\xc3\17\xad"\xc3)\xc6\1\xe2\1\xad\37\xc3\16\x80\2\xe1\1\x80\f',
b'\xc3\34\xad\36\xc3\26\xc5\2\x80\1\x9d\1\xc3"\x80\2\xa1\1\x80\20\xe2\1\xad\22\xb9\1\x80H\xc3\22\xad"\xc5\1\xc3(\xe2\1\xad\37\xe2\1\xc3\16\x80\1\xc3\2\x80\f',
b"\xc3\34\xad\36\xc3\25\xc5\3\xc3$\x80\1\xb4\1\xc3\1\x80\2\xdf\1\xc3\2\x80\v\xad\23\xb2\1\x80G\xa7\1\xc3\22\xad#\xc3(\xad!\xc3\16\x80\1\xc3\2\xa7\1\x80\1\xdf\1\xa7\1\xc3\2\x90\1\x80\5",
b"\xc3\34\xad\35\xe2\1\xc3\25\xc5\2\xc3%\x80\1\xc3\2\xe7\1\x80\1\xc3\3\x80\n\xb0\1\xe2\1\xad\22\xa1\1\x80F\xe4\1\xc3\23\xad#\xc3(\xad!\xc3\16\xdf\1\xc3\3\xe3\1\xc3\4\xdd\1\x80\5",
b"\xc3\34\xad\35\xc0\1\xa4\1\xc3\23\xc5\3\xc3%\xb4\1\xc3\3\xdd\1\xc3\3\x80\n\xc6\1\xad\23\xb8\1\x80E\xa7\1\xc3\24\xad#\xc3(\xad!\xc5\1\xc3\24\xa4\1\xc3\1\x80\6",
b"\xc3\34\xad\35\xa4\1\xc3\24\xc6\3\xc3,\x94\1\xa7\1\x80\1\xc3\1\x80\a\xad\24\xb0\1\x80D\xb4\1\xc3\24\xad#\xc3)\xad!\xe2\1\xc3\24\xa4\1\xc3\3\x80\4",
b'\xc3\34\xad\35\xc3\25\xc6\3\xc30\x80\2\xdd\1\xa1\1\x80\3\xad\24\xb8\1\x80C\xe9\1\xc3\23\xc5\1\xad#\xc5\1\xc3)\xad"\xc3\31\xa1\1\xe3\1\x80\1',
b"\xc3\34\xad\34\xc5\1\xc3\25\xc6\2\xc5\1\xc34\x80\2\xdf\1\xad\1\xe2\1\xad\22\x80C\x9d\1\xc3\23\xe2\2\xad\1\xe2\3\xad\37\xc3*\xe2\1\xad!\xc3\31\xa7\1\x80\2",
b"\xc3\33\xc5\1\xad\2\xe2\30\xad\2\xc3\25\xc6\3\xc3\4\xc5\1\xc0\1\xc6\2\xc5\1\xc3*\xa4\1\xa1\1\x80\2\xc6\1\xe2\1\xad\1\xe2\17\xad\1\xe2\1\xad\1\x80B\xc3\24\xe2%\xa4\1\xc3*\xad\2\xe2 \xc5\1\xc3\30\xb0\1\x80\2",
b"\xc3\33\xad\2\xe2\31\xad\1\xc5\1\xc3\24\xc5\1\xc6\1\xc0\2\xc3\2\xc0\1\xc6\b\xc3\23\xc6\1\xc3\23\xa4\1\xb0\1\x80\3\xe2\23\xad\2\x80A\xb4\1\xa4\1\xc3\22\xad\2\xe2!\xad\2\xc5\1\xc3+\xad\2\xe2\36\xad\1\xe2\1\xc5\1\xc3\33",
b'\xc3\33\xe2\1\xad\1\xe2\31\xad\1\xc3\25\xc6\23\xc5\1\xc3\r\xc6\1\xc0\1\xc3\24\xa1\1\x80\3\xad\1\xe2\21\xad\1\xe2\1\x9f\1\x80@\xc3\23\xa4\1\xad\1\xe2\1\xad\1\xe2"\xc5\1\xc3,\xad\1\xe2\37\xad\2\xc6\1\xc3\30\xa4\1\xc3\2',
b'\xc3\33\xad\1\xe2\1\xad\31\xe2\1\xc3\24\xad\1\xc6\27\xe2\1\xc6\b\xe2\1\xc5\1\xc3\27\xa1\1\xa7\1\xe2\24\x80?\xa7\1\xc3\23\xc5\1\xad#\xe2\1\xad\2\xc3-\xad"\xc6\1\xc3\33',
b'\xc3\33\xad\3\xe2\31\xc3\23\xc5\1\xe2\30\xad\6\xe2\1\xc6\2\xc5\1\xc3\30\x80\1\xe2\1\xad\24\x80>\xc3\25\xad\2\xe2"\xad\2\xa4\1\xc3-\xad\2\xe2\36\xad\2\xc5\1\xc3\33',
b"\xc3\33\xad\34\xc3\22\xc6\1\xe2\32\xad\2\xe2\3\xad\1\xc5\1\xc3\31\xb4\1\xc5\1\xad\24\xa1\1\x80=\xc3\25\xad\1\xe2\1\xad#\xe2\1\xc3/\xe2\1\xad!\xc3\34",
b"\xc3\33\xad\34\xc3\22\xe2\1\xad\a\xe2\2\xad\1\xe2\1\xad\3\xe2\4\xad\1\xe2\t\xc5\1\xc3\34\xb0\1\x80\1\xad\25\x80=\xa1\1\xc3\24\xad%\xeb\1\xa4\1\xc30\xe2\1\xad \xc3\34",
b"\xc3\33\xad\33\xc6\1\xc3\21\xad\2\xe2\a\xad\1\xe2\2\xad\1\xe2\1\xad\1\xe2\1\xad\1\xe2\4\xad\1\xe2\b\xc6\1\xa4\2\xc3\34\xad\25\x80<\xd0\1\xc3\24\xad\1\xe2\1\xad%\xc31\xc6\1\xad \xc3\34",
b"\xc3\33\xad\33\xc6\1\xc3\17\xa4\1\xc0\1\xad\2\xe2\1\xad\b\xc6\1\xc3\n\xc6\1\xe2\3\xad\4\xe2\1\xc5\1\xc3\34\xad\26\x80<\xc3\24\xad\1\xe2\2\xad$\xc33\xad\37\xe2\1\xc3\34",
b"\xc3\32\xad\34\xc6\1\xc3\v\xa4\1\xc3\3\xad\v\xc6\1\xc3\17\xad\a\xc0\1\xc3\33\xad\25\xa4\1\x80;\xc3\24\xad'\xa4\1\xc33\xad\37\xc6\1\xc3\34",
b"\xc3\32\xe2\1\xad\33\xc6\1\xc3\16\xad\1\xe2\1\xad\n\xc3\21\xc6\1\xad\6\xc3\33\xad\25\x80;\xea\1\xc3\23\xc6\1\xad&\xc35\xc5\1\xad\36\xe2\1\xc3\34",
b"\xc3\31\xc5\1\xad\34\xc6\1\xc3\f\xc0\1\xe2\2\xad\t\xc3\22\xa4\1\xc3\1\xad\2\xe2\1\xad\2\xe2\1\xad\1\xc3\31\xad\26\x80;\xc3\24\xad&\xc37\xad\36\xe2\1\xc3\34",
b"\xc3\31\xad\1\xec\1\xad\33\xe2\1\xc3\v\xc6\1\xad\b\xe2\1\xad\2\xc3\26\xad\1\xe2\1\xad\4\xc0\1\xc3\27\xad\1\xe2\1\xad\23\xe2\1\xad\1\x80:\xc3\24\xad%\xeb\1\xc38\xc6\1\xe2\1\xad\35\xc3\34",
b"\xc3\31\xec\1\xeb\1\xad\34\xc3\n\xa4\1\xad\v\xc6\1\xc3\26\xad\6\xeb\1\xc3\27\xeb\2\xad\25\x809\x9f\1\xc3\23\xc5\1\xeb\1\xad#\xec\1\xc5\1\xc38\xc5\1\xad\36\xc3\34",
b"\xc3\30\xe2\1\xad\36\xc3\t\xc6\1\xeb\1\xad\n\xc3\30\xad\b\xa4\1\xc3\24\xad\1\xec\1\xad\23\xe2\1\xad\2\x809\xc3\23\xc5\1\xeb\1\xad$\xc6\1\xc3:\xad\34\xe2\1\xeb\1\xe2\1\xc3\33",
b'\xc3\30\xec\1\xad\35\xe2\1\xc3\b\xc5\1\xad\1\xeb\1\xad\a\xec\1\xe2\1\xc5\1\xc3\30\xad\2\xeb\1\xec\2\xad\3\xe2\1\xc3\21\xa4\2\xc3\1\xad\26\xe2\2\x808\xc3\20\xa4\1\xc3\3\xe2\1\xad"\xeb\1\xad\1\xc0\1\xc3;\xc6\1\xad\34\xeb\1\xad\1\xc3\33',
b"\xc3\27\xc5\1\xad\36\xe2\1\xc3\b\xad\1\xe2\1\xad\b\xe2\1\xad\1\xc3\31\xad\1\xeb\1\xad\1\xc6\2\xe2\1\xad\1\xec\2\xc3\23\xad\26\xe2\2\xa4\1\x807\xc3\22\xa4\1\xc3\1\xc5\1\xec\1\xad#\xe2\1\xc3=\xad\34\xeb\1\xe2\1\xc3\33",
b"\x80\27\x87 \x80\a\x84\2\x87\t\x84\1\x80\32\x87\3\x80\3\x87\2\x84\1\x80\22\x87\30\x84\1\x80K\x87&\x80>\x84\1\x87\33\x84\1\x87\2\x80\32",
b"\x80\26\x84\1\x87 \x80\6\x84\b\x87\1\x84\3\x80\33\x84\2\x80\5\x87\1\x84\2\x80\20\x87\32\x80J\x84\1\x87%\x80?\x87\1\x84\1\x87\34\x84\1\x80\32",
b"\x80\26\x87!\x80\5\x84\1\x87\1\x84\b\x87\1\x84\1\x80\33\x84\1\x87\2\x80\a\x84\1\x87\1\x80\16\x84\1\x87\2\x84\1\x87\26\xc7\1\x80H\x8e\1\x87%\x80A\x87\2\x84\1\x87\35\x80\31",
b'\x80\25\x84\1\x87 \x80\5\x87\1\x84\f\x80\33\x84\2\x80\b\x84\2\x87\1\x80\f\x84\1\x87\31\x84\2\x80G\x88\1\x84\1\x87\2\x84\1\x87"\x80B\x84\1\x87\34\x84\1\x87\2\x80\30',
b"\x80\25\x87\36\x84\1\x87\1\x80\5\x84\v\x87\1\x84\1\x80\33\x84\2\x80\n\x87\2\x80\v\x87\35\x80F\x84\1\x87\6\x84\2\x87\33\x84\2\x87\1\x80C\x87\1\x84\1\x87\37\x80\27",
b'\x80\25\x87\37\x80\5\x87\1\x84\f\x80\33\x84\2\x87\1\x80\f\x84\1\x87\1\x80\a\x87 \x80D\x84\1\x87\2\x84\1\x87"\x80\v\xed\n\xb7\1\x80/\x84\1\x87 \x80\27',
b"\x80\24\x84 \x80\4\x88\1\x84\r\x80\33\x84\2\x80\r\x84\2\x80\6\x87\1\x84 \x80C\x84\b\x87\1\xcd\1\x87\1\x84\33\x80\t\xed\1\xd5\1\xd4\1\xd5\b\xd4\1\xd5\4\x80-\x87\1\x84\37\x87\1\x84\1\x80\26",
b"\x80\24\x84\37\x80\4\x84\r\x87\1\x80\34\x84\2\x80\16\x84\2\x80\3\xcd\1\x87\1\x84\22\x87\1\x84\2\x87\1\x84\v\x80B\x88\1\x84\b\xd5\3\x84\32\x80\6\xe8\1\xd5\26\x80*\x84\6\x87\2\x84\33\x80\25",
b'\x80\23\x87\2\x84\36\x80\3\x84\17\x80\33\x84\3\x80\17\x84\2\x80\1\x84\2\x87\1\x84"\x80A\x84\2\x87\1\x84\6\x87\1\xd5\2\xcd\1\x84\30\x80\3\xd5\35\x80(\x84$\x80\24',
b"\x80\23\x84 \x80\1\x84\16\x87\1\x84\1\x80\34\x84\3\x80\20\x84\1\x87\1\x84%\x80@\x84\v\xd5\3\xcd\1\x84\22\x87\1\x84\1\xcd\2\xd6\1\xd5!\x80'\x87\1\x84#\x87\1\x80\23",
b"\x80\23\x84\35\x87\1\x84\2\x87\1\x84\20\x80\34\x88\1\x80\22\x84'\x80?\x87\1\x84\f\xee\1\xd5\4\xcd\2\xc7\1\xcd\5\xee\2\xd6\1\xd5*\xd6\2\xd5\1\x80$\x8e\1\x84'\x80\21",
b'\x80\22\x8e\1\x84\1\x87\1\x84\35\x87\1\x80?\x84(\x87\1\x80>\x84\1\x87\1\x84\t\x87\3\xc7\1\xd6\1\xd5\3\xd6\1\xd5\t\xd6\1\xd5)\xd6\2\xef\1\xd6\1\xd4\1\x80"\x87\1\x84\1\x87\1\x84$\x87\1\x84\1\x80\20',
b"\x80\22\x87\1\x84 \x80?\x84)\x87\1\x80<\x87\1\x84\17\x87\1\xd6\2\xd5\1\xd64\xee\4\xd6\2\x80!\x84'\x87\3\x80\17",
b"\x80\22\x84\36\x87\1\x84\1\x88\1\x80>\x84*\x87\1\x80<\x84\22\x87\1\xee<\x80\37\x87\1\x84+\x80\16",
b"\x80\21\x87\1\x84 \x80>\x84\1\x87\1\x84*\x80;\x87\1\x84\22\x87\3\xee<\x80\33\x84\1\x87\2\x84,\xcd\1\x80\f",
b"\x80\21\x84\37\x87\1\x84\1\x80>\x84\1\x87\1\x84*\x80;\x84\27\x87\1\xee;\x80\32\x840\x80\f",
b"\x80\20\x84 \x87\1\x84\1\x87\1\x80<\x87\1\x84,\x80;\x84\32\x87\2\xcd\3\xee6\x80\27\x842\x80\v",
b"\x80\20\x84\1\x87\1\x84\37\x87\1\x84\1\x80<\x87\1\x84-\x809\x84\35\x87\1\xcd\1\xee\23\xcd\1\xee\2\xcd\1\xee\1\xcd\1\xee\1\xcd\2\xee\1\xcd\1\xee\2\xcd\2\xee\22\xcd\2\xee\1\xcd\1\x80\25\x844\x88\1\x80\t",
b"\x80\17\x84$\x87\1\x80;\x84.\x809\x84\36\xee\1\xcd\1\xee\31\x80\4\xe9\1\xee\1\xcd\1\xee\30\x80\24\x87\1\x843\xf0\1\x80\t",
b"\x80\17\x84$\x87\1\x80:\x84.\x80:\x84\32\x87\1\x84\2\xee\1\xcd\f\xee\1\xcd\5\x80\22\xcd\27\x80\22\x87\1\x84\1\x87\1\x843\x87\1\x80\b",
b"\x80\16\x87\1\x84%\x87\1\x808\x84/\x8e\1\x808\x84\35\xcd\20\x80\30\xcd\27\x80\20\x847\x80\b",
b"\x80\16\x87\1\x84$\x87\3\x807\x84/\xcd\1\x808\x84\33\x87\1\xcd\17\x80\33\xcd\27\x80\17\x84\1\x87\2\x843\x87\1\x84\1\x80\a",
b"\x80\r\x84)\xc7\1\x806\x84/\x88\1\x808\x84\f\xec\a\x84\b\xc7\1\xcd\r\x80\37\xcd\26\x80\r\x849\xcd\1\x80\6",
b"\x80\r\x84,\x803\x84\f\x87\3\x84\20\xec\2\x84\a\xec\a\x84\2\x807\x87\1\x84\t\xec\17\x84\2\x87\1\xcd\r\x80!\xee\1\xcd\26\x80\n\x84\4\xec\v\x84\24\xec\2\x84\r\xec\1\x84\1\xec\2\x84\5\x80\6",
b"\x80\f\x84\f\xec\20\x84\t\xec\4\x84\5\x802\x84\v\x87\5\x84\b\xec\31\x807\x84\a\xec\23\x84\1\xcd\16\x80#\xcd\25\x80\n\x84\1\xec\34\x84\4\xec\4\x84\f\xec\n\x80\6",
b"\x80\v\x88\1\x84\b\xec\27\x80\3\xf0\1\x84\2\xec\n\xdb\1\x80/\xf1\1\xec\a\x84\3\xc7\1\x87\2\x80\3\xc7\1\x84\2\xec\36\x807\xec\32\xcd\22\x80!\xcd\25\x80\t\xec%\x84\n\xec\f\x80\6",
b"\x80\v\xec \x80\6\xed\1\xec\v\x80-\xec\t\x84\1\x87\1\xc7\1\x87\1\x80\a\xec \x804\xec\34\xcd\r\xec\1\xcd\a\x80\37\xcd\25\xcc\1\x80\6\xec%\x80\n\xec\r\x80\6",
b"\x80\n\xec!\x80\a\xcd\1\xec\n\x80-\xec\t\xcd\3\x80\b\xec \x803\xec\33\xcd\17\xec\3\xcd\a\x80\36\xcd\25\x80\6\xec%\x80\v\xcd\1\xec\v\x80\6",
b'\x80\t\xec"\x80\b\xcd\1\xf1\1\xec\n\x80+\xec\t\xcd\2\x80\n\xec \x801\x9e\1\xf2\1\xec\31\xcd\17\xec\a\xcd\6\x80\35\xcd\25\x80\4\xec&\x80\f\xec\f\x80\5',
b"\x80\t\xec\17\xcd\a\xec\f\x80\b\xcd\3\xec\t\x80+\xec\b\xcd\2\x80\v\xec\25\x80\2\xec\t\x800\xec\f\xad\1\xec\2\xd5\1\xf3\1\x80\a\xec\4\xcd\17\xec\t\xcd\6\xd2\1\x80\33\xcd\25\xf4\1\x80\2\xec&\x80\r\xec\v\x80\5",
b"\x80\b\xec\r\xcd\v\xf5\1\xec\n\x80\t\xcd\3\xec\t\x80)\xb7\1\xec\a\xcd\3\x80\v\xec\24\x80\3\xec\n\x80.\xec\r\xb7\1\xcd\3\x80\t\xec\2\xcd\20\xec\v\xcd\6\x80\33\xcd\25\x80\1\xec'\x80\16\xcd\1\xec\t\x80\5",
b"\x80\b\xec\n\xcd\3\x80\2\xcc\1\xd1\1\xcd\b\xec\n\x80\t\xcd\4\xd6\1\xec\a\x80)\xec\a\xcd\3\x80\f\xec\22\x80\6\xec\t\x80-\xec\f\xcd\4\x80\v\xec\1\xcd\20\xec\16\xcd\a\x80\30\xcd\26\xec'\x80\16\xcd\1\xec\t\x80\5",
b"\x80\a\xec\t\xcd\3\x80\n\xcd\5\xec\n\x80\t\xcd\4\xec\b\x80(\xec\6\xcd\3\x80\r\xec\16\xcd\4\x80\a\xec\t\x80,\xec\v\xcd\4\x80\f\xcd\21\xec\21\xcd\t\xd2\1\x80\23\xcd\26\xec&\x80\17\xee\1\xec\b\x80\5",
b"\x80\a\xec\b\xcd\3\x80\3\xb7\1\x80\b\xcd\4\xec\n\x80\n\xcd\4\xec\b\x80&\xec\a\xcd\3\x80\r\xec\v\xee\1\xcd\6\x80\a\xec\t\x80+\xec\v\xcd\4\x80\r\xcd\21\xec\23\xcd\v\x80\21\xcd\25\xec\22\x80\2\xec\22\x80\17\xcd\1\xee\1\xec\a\x80\5",
b"\x80\a\xec\a\xcd\3\x80\1\xd0\1\x80\2\xea\1\x80\3\xe7\1\x80\4\xcd\5\xec\n\x80\t\xcd\5\xec\a\x80&\xec\a\xcd\3\x80\f\xcd\1\xec\b\xcd\3\x80\1\xcd\6\x80\b\xec\t\x80)\xec\n\xcd\5\x80\r\xcd\22\xec\26\xcd\f\x80\16\xcd\25\xec\5\x80\4\xec\a\xcd\1\xee\1\x80\4\xec\16\xef\1\xcd\2\x80\r\xcd\2\x8e\1\xec\6\x80\5",
b"\x80\6\xec\a\xcd\3\x80\5\xd4\1\x80\4\xd4\1\x80\3\xcd\6\xec\t\x80\t\xcd\6\xec\a\x80$\xec\a\xcd\4\x80\v\xcd\2\xec\6\x80\2\xcd\3\x80\2\xcd\5\x80\b\xec\t\x80(\xec\n\xcd\1\xd4\3\x80\16\xcd\23\xec\31\xcd\f\xe7\1\x80\v\xcd\25\xec\3\x80\6\xec\5\x80\1\xcd\2\x80\4\xe7\1\xee\1\xec\f\xcd\3\x80\r\xcd\2\x80\2\xec\5\x80\5",
b"\x80\6\xec\6\x80\1\xcd\3\x80\1\xe8\1\x80\3\xea\1\x80\4\xd5\1\x80\3\xcd\a\xec\t\x80\t\xcd\3\xd5\1\xcd\1\xec\a\x80 \xea\1\xe8\1\x80\2\xec\a\xcd\3\x80\v\xcd\3\xec\5\x80\3\x8e\1\xcd\2\x80\2\xcd\5\x80\t\xec\t\x80&\xec\n\xcd\3\xe8\1\xe7\1\x80\r\xea\1\xcd\23\xec\34\xcd\6\xec\1\xcd\4\x80\n\xcd\26\xec\1\x80\a\xec\5\x80\1\xcd\1\x8e\1\x80\4\xcd\2\xec\v\x80\1\xcd\4\x80\f\xcd\3\x80\2\xec\4\x80\5",
b"\x80\6\xec\6\xea\1\xcd\2\x80\2\xef\1\x80\4\xe5\1\x80\3\xef\1\x80\2\xd4\2\xcd\5\xe7\1\xe5\1\xec\b\x80\t\xcd\3\xef\1\xcd\1\xea\1\xec\a\x80#\xec\6\xcd\4\x80\2\xef\2\xd5\1\x80\6\xcd\2\xec\6\x80\4\xcd\2\x80\2\xcd\5\x80\t\xec\t\x80\v\xe9\1\x80\31\xec\n\xcd\4\x80\2\xe9\1\x80\f\xcd\f\x80\2\xcd\6\x80\1\xec\37\xcd\2\xec\2\xcd\5\xe4\1\x80\b\xcd\26\x80\6\xec\5\x80\1\xcd\2\x80\5\xcd\2\x80\1\xec\t\x80\3\xcd\3\x80\f\xcd\3\x80\2\xec\4\x80\5",
b"\x80\6\xec\5\x80\1\xcd\3\x80\1\xe4\1\x80\5\xee\1\x80\3\xee\1\x80\1\xcd\1\xd5\1\xd4\1\xcd\5\x80\2\xec\n\x80\b\xcd\2\xd4\1\xcd\2\x80\1\xec\a\x80!\xec\a\xcd\3\x80\6\xef\1\x80\5\xcd\2\xec\5\x80\5\xcd\2\x80\3\xcd\5\x80\b\xec\t\x80\v\xee\1\x80\30\xec\t\xcd\3\xd4\1\xcd\2\x80\2\xee\1\x80\2\xee\1\x80\t\xcd\r\x80\1\xcd\6\x80\2\xec\n\x80\1\x8e\1\xec\25\xee\1\xec\1\xcd\6\x80\b\xcd\26\x80\1\xe4\1\x80\3\xec\4\x80\2\xcd\1\x80\6\xcd\2\x80\2\xec\a\x80\4\xcd\3\x80\f\xee\1\xcd\1\x80\4\xec\3\x80\5",
b"\x80\5\xec\6\x80\1\xcd\3\x80\a\xee\1\xe4\1\x80\2\xe4\1\x80\1\xcd\1\xef\2\xcd\4\x80\3\xec\1\x80\1\xec\b\x80\b\xcd\5\x80\2\xec\6\x80!\xee\1\xec\6\xcd\3\x80\v\xcd\2\xd4\1\xec\1\xee\1\xec\2\x80\6\xcd\2\x80\3\xcd\5\x80\a\xe4\1\x80\1\xec\b\x80\v\xee\1\x80\27\xec\n\xcd\3\xee\1\xcd\2\x80\17\xcd\24\x80\2\xec\b\x80\3\xcd\3\x80\2\xec\20\xad\1\xee\1\xec\4\xcd\4\x80\a\xcd\26\xef\1\x80\3\xec\5\x80\1\xcd\1\x80\a\xcd\2\x80\2\xec\4\xf6\1\xec\2\x80\4\xcd\3\x80\f\xcd\1\xee\1\x80\4\xec\3\x80\5",
b"\x80\5\xec\5\x80\2\xcd\3\x80\a\xee\2\x80\3\xd4\1\xcd\1\xd5\1\xee\1\xcd\3\x80\4\xec\1\x80\2\xec\b\x80\a\xcd\2\xd4\1\xcd\2\x80\2\xec\6\x80\30\xe9\1\x80\3\xee\1\x80\4\xee\1\xec\5\xcd\4\x80\6\xee\1\x80\4\xcd\2\xec\2\xcd\1\xee\1\xec\1\x80\6\xcd\2\x80\3\xcd\5\x80\a\xee\1\x80\1\xec\t\x80\1\xee\1\x80\b\xee\1\x80\n\xee\1\x80\5\x8e\1\x80\4\xec\1\x80\1\xec\6\x80\3\xec\1\xcd\3\xee\1\xcd\2\x80\1\xee\1\x80\4\xee\1\x80\a\xcd\b\x80\1\xcd\4\x80\1\xcd\a\x80\2\xec\6\x80\4\xcd\4\x80\5\xec\r\xee\2\xec\t\xcd\1\x80\6\xcd\26\x80\2\xec\5\x80\2\xcd\1\x80\a\xcd\2\x80\3\xec\3\xf6\1\xec\1\x80\5\xcd\2\xee\1\x80\v\xee\1\xcd\2\x80\5\xec\2\x80\5",
b"\x80\5\xec\5\x80\2\xcd\3\x80\2\xef\1\x80\4\xee\2\x80\2\xcd\1\xee\1\xcd\1\xd4\1\xee\1\xcd\2\x80\a\xec\2\x80\1\xec\a\x80\a\xcd\1\xee\1\xcd\2\x80\2\xec\a\x80\f\xef\1\x80\n\xe9\1\x80\3\xee\1\x80\3\xee\1\xec\4\xee\1\xec\1\xcd\4\x80\v\xcd\2\xec\5\x80\6\xcd\2\x80\3\xcd\5\x80\a\xee\1\x80\1\xec\4\x80\2\xec\3\x80\n\xee\1\x80\v\xee\1\x80\4\xee\1\x80\4\xec\a\x80\4\xec\1\xcd\3\xd5\1\xcd\1\xe5\1\xef\2\x80\f\xcd\b\x80\1\xcd\4\x80\1\xcd\a\x80\1\xec\6\x80\5\xcd\4\x80\a\xec\b\x80\2\xe4\1\xee\1\xcd\1\xec\f\x80\5\xcd\26\xec\5\x80\3\xcd\1\x80\a\xcd\2\x80\3\xec\3\xf6\1\x80\6\xcd\2\xef\1\x80\2\xe5\1\x80\b\xee\1\xcd\2\x80\5\xec\2\x80\1\xe4\1\x80\3",
b"\x80\4\xec\6\x80\2\xcd\3\x80\2\xe4\1\x80\4\xee\1\xef\1\x80\2\xcd\1\xee\1\xcd\1\xd4\1\xee\1\xcd\1\xee\1\x80\a\xec\2\x80\1\xe4\1\xec\6\x80\a\xcd\1\xee\1\xcd\2\x80\2\xec\a\x80\f\xee\1\x80\n\xe9\1\x80\3\xee\1\x80\3\xee\1\xec\5\xe8\1\xcd\4\x80\5\xee\1\x80\5\xcd\2\xef\1\xec\4\x80\6\xcd\2\x80\4\xcd\4\x80\a\xee\1\x80\1\xec\4\x80\3\xec\3\x80\1\xef\1\x80\3\xe4\1\xee\1\xef\1\xe4\1\xee\1\x80\20\xe5\1\x80\4\xec\6\x80\5\xec\1\xcd\5\x80\1\xee\1\xef\1\x80\v\xcd\b\x80\2\xcd\4\x80\1\xcd\b\xec\5\x80\6\xcd\4\x80\b\xec\6\x80\3\xee\1\xef\1\xcd\2\x80\4\xec\n\x80\3\xcd\26\xec\3\x80\4\xcd\1\x80\a\xcd\2\x80\3\xec\4\x80\1\xef\1\xee\2\x80\3\xcd\2\x80\b\xe9\1\x80\2\xee\1\xe4\1\xcd\1\x80\5\xec\2\x80\5",
b"\x80\4\xec\6\x80\1\xcd\4\x80\6\xee\2\x80\2\xcd\2\xef\1\xcd\2\xee\1\x80\4\xee\1\x80\2\xe9\1\x80\1\xec\2\x80\3\xec\5\x80\6\xe4\1\xcd\5\x80\1\xec\1\x80\1\xec\5\x85\1\x80\v\xef\1\x80\2\xef\1\x80\a\xef\1\xe4\1\x80\5\xad\1\xee\1\xec\5\x80\1\xcd\3\xea\1\x80\5\xef\1\x80\5\xcd\2\xe8\1\xec\2\xef\1\xec\1\x80\6\xcd\2\x80\4\xcd\4\x80\a\xee\1\x80\1\xec\4\x80\2\xec\4\x80\5\xee\1\x80\3\xef\1\x80\f\xe4\1\x80\b\xec\6\x80\5\xec\1\xcd\2\xee\1\xcd\2\x80\1\xee\2\x80\t\xcd\n\x80\2\xcd\5\x80\2\xcd\6\xec\4\x80\a\xcd\4\x80\b\xec\6\x80\3\xee\2\xcd\2\x80\a\xec\b\x80\2\xcd\22\xef\1\xcd\4\xef\1\x80\5\xcd\1\x80\a\xcd\2\x80\3\xec\3\x80\4\xe4\1\xef\1\x80\2\xcd\2\x80\3\xee\1\x80\4\xef\1\x80\2\xee\1\xea\1\xcd\1\x80\5\xec\2\x80\5",
b"\x80\4\xec\5\x80\2\xcd\3\xea\1\x80\3\xef\1\x80\2\xd5\1\xef\1\x80\2\xcd\2\xef\1\xcd\2\xef\1\x80\4\xe4\1\x80\2\xef\1\x80\1\xec\2\x80\3\xec\6\x80\4\xe4\1\xe9\1\xcd\2\xef\1\xcd\2\x80\1\xe4\1\x80\2\xec\5\x80\v\xef\1\x80\n\xef\1\x80\2\xef\1\x80\3\xec\1\xad\1\xec\4\x80\2\xcd\3\xd0\1\x80\5\xef\1\x80\5\xcd\3\xec\3\xe5\1\x80\6\xcd\2\x80\4\xcd\4\x80\a\xef\1\x80\1\xec\4\x80\3\xec\4\x80\3\xd5\1\x80\21\xe9\1\xef\1\x80\2\xe9\1\x80\4\xec\5\x80\1\xec\1\x80\4\xec\1\xcd\2\xef\1\xcd\2\x80\2\xef\2\x80\b\xcd\v\x80\1\xcd\5\x80\2\xcd\6\xec\4\x80\a\xcd\4\x80\t\xec\5\x80\4\xef\1\xcd\2\x80\b\xcd\1\xec\b\x80\1\xcd\24\x80\1\xef\1\xcd\1\x80\5\xcd\1\x80\a\xcd\2\x80\3\xec\3\x80\1\xef\1\x80\3\xef\1\x80\2\xcd\2\x80\b\xef\1\x80\2\xef\1\x80\1\xcd\1\x80\5\xec\2\xad\1\xec\1\x80\3",
b"\x80\4\xec\5\x80\2\xcd\3\xe7\1\x80\3\xef\1\x80\2\xef\1\x80\3\xcd\2\xef\1\xcd\2\xef\1\x80\4\xe5\1\x80\2\xef\1\x80\1\xec\2\x80\3\xec\6\x80\4\xef\1\x80\1\xe7\1\xcd\1\xd4\1\xcd\2\x80\4\xec\5\xe4\1\x80\n\xef\2\x80\t\xef\1\x80\2\xef\1\x80\3\xec\6\xe4\1\x80\1\xcd\3\xef\1\x80\5\xef\1\x80\5\xcd\3\xec\1\xad\1\xec\1\x80\a\xcd\2\x80\4\xcd\5\x80\6\xef\1\xe5\1\xec\4\x80\3\xec\4\x80\3\xef\1\x80\3\xd5\1\x80\16\xef\1\x80\1\xef\1\x80\3\xec\a\x80\1\xec\1\x80\4\xec\1\xcd\2\xef\1\xcd\2\x80\2\xef\2\x80\2\xcd\1\x80\3\xe5\1\xcd\f\xe4\1\xcd\5\x80\2\xcd\6\xec\3\x80\b\xcd\4\x80\t\xec\5\x80\4\xd5\1\xcd\2\x80\b\xcd\3\xec\6\x80\2\xcd\24\xef\1\xcd\2\x80\4\xcd\1\x80\a\xcd\2\x80\3\xec\3\x80\1\xef\1\x80\3\xe4\1\x80\2\xcd\1\xc8\1\x80\b\xe4\1\x80\2\xef\1\xd0\1\xcd\1\x80\5\xec\3\xad\1\x80\3",
b"\x80\4\xec\5\x80\2\xcd\3\x80\4\xd5\1\x80\2\xee\1\x80\3\xcd\2\xef\1\xcd\2\xd5\1\x80\6\xd5\1\xef\1\x80\1\xec\2\x80\3\xec\6\x80\a\xcd\2\xd4\1\xcd\1\xe7\1\x80\3\xec\6\x80\n\xef\2\x80\4\xef\1\x80\4\xef\1\x80\2\xef\1\x80\2\xec\2\xad\1\xec\4\x80\2\xcd\3\xe9\1\x80\5\xd5\1\xef\1\x80\4\xcd\3\xec\1\xad\1\xec\1\x80\a\xcd\2\x80\4\xcd\5\x80\6\xef\1\xe4\1\xec\4\x80\2\xe5\1\x80\1\xec\3\x80\3\xe9\1\x80\3\xef\1\x80\r\xd5\1\x80\2\xd5\1\x80\3\xec\a\x80\6\xec\1\xcd\1\xe8\1\xef\1\xcd\1\xe9\1\x80\2\xe5\1\xef\1\x80\2\xcd\1\x80\2\xcd\v\x80\2\xcd\b\x80\1\xcd\a\xec\2\x80\b\xcd\4\x80\n\xec\4\x80\4\xd5\1\xcd\2\x80\t\xcd\3\xec\6\x80\1\xcd\21\xef\2\xcd\1\xef\1\xcd\3\x80\3\xcd\1\x80\a\xcd\2\x80\3\xec\3\x80\1\xef\1\xe9\1\x80\2\xe4\1\x80\2\xcd\1\xef\1\x80\3\xee\1\x80\5\xef\1\x80\1\xef\1\xe5\1\xcd\1\x80\5\xad\1\xec\2\xad\1\x80\3",
b"\x80\3\xec\a\x80\1\xcd\3\x80\2\xe9\1\xd6\1\xee\4\x80\2\xe7\1\xcd\2\xef\1\xcd\2\xe9\1\x80\6\xef\1\xe4\1\x80\2\xec\1\x80\3\xe5\1\xec\6\x80\6\xcd\2\xef\1\xcd\2\x80\4\xec\5\x80\n\xef\2\x80\1\xd5\1\x80\a\xef\1\x80\2\xef\1\x80\2\xec\a\x80\2\xcd\3\x80\6\xef\2\xe5\1\x80\3\xcd\3\xec\1\xad\1\xef\1\xe5\1\x80\6\xcd\2\x80\4\xcd\5\x80\6\xef\1\xec\5\x80\1\xe9\1\x80\3\xec\3\x80\5\xe9\1\xef\1\x80\3\xe5\1\x80\b\xef\1\x80\3\xe9\1\xef\1\x80\2\xec\a\x80\6\xec\1\xcd\1\xc8\1\xef\1\xcd\1\x80\4\xd5\1\x80\2\xcd\1\x80\1\xcd\f\x80\2\xcd\6\x80\2\xcd\b\xec\2\x80\b\xcd\4\x80\n\xec\5\x80\2\xef\2\xcd\2\x80\t\xcd\3\x80\2\xec\5\x80\1\xcd\17\xef\2\xcd\3\xef\1\xcd\4\x80\1\xcd\1\x80\a\xcd\2\x80\3\xec\3\x80\1\xef\2\x80\5\xcd\1\xef\1\x80\4\xee\1\x80\4\xef\1\x80\1\xe9\1\xe5\1\xcd\1\x80\3\xee\2\x80\1\xec\2\xad\1\x80\3",
b"\x80\3\xec\a\x80\1\xcd\3\x80\1\xd6\1\xee\1\xd6\1\xee\1\xd6\3\xee\1\xd6\1\xee\1\xd4\1\xcd\1\xef\1\xcd\2\xe4\1\x80\4\xef\1\x80\1\xef\1\x80\3\xec\1\x80\4\xec\6\x80\6\xcd\2\xd4\1\xcd\2\x80\4\xec\6\x80\t\xee\2\x80\1\xee\1\x80\a\xd6\1\x80\2\xee\1\x80\1\xe4\1\xec\3\xee\1\xec\2\xd6\1\x80\2\xcd\3\xef\1\x80\6\xd6\1\xef\1\x80\3\xcd\3\xec\3\xef\1\x80\6\xcd\2\x80\4\xcd\5\x80\6\xe9\1\xec\5\x80\1\xef\1\x80\3\xec\3\x80\5\xe9\1\xef\1\x80\3\xef\1\x80\b\xef\1\x80\4\xef\1\xe4\1\x80\1\xec\a\x80\6\xcd\3\xef\1\xcd\1\x80\4\xef\1\x80\2\xcd\r\x80\3\xcd\6\x80\2\xcd\t\xec\1\x80\b\xcd\4\x80\5\xee\1\x80\5\xec\4\x80\2\xd5\1\xef\1\xcd\2\x80\t\xcd\3\x80\2\xe4\1\xec\4\x80\1\xcd\17\xef\1\xcd\5\xef\1\xcd\5\x80\a\xcd\2\x80\3\xec\3\x80\1\xd5\1\xef\1\x80\2\xe4\1\x80\2\xcd\1\xef\1\xe5\1\x80\3\xef\1\x80\3\xe4\1\xee\1\x80\3\xcd\1\x80\2\xd6\1\xee\2\xd6\1\xec\2\xee\1\x80\3",
b"\x80\3\xec\a\xea\1\xcd\2\xee\17\xcd\2\x80\5\xee\1\x80\1\xef\1\x80\3\xec\1\x80\4\xec\6\x80\3\xee\1\x80\2\xcd\1\xd4\1\xcd\3\xee\1\x80\3\xe4\1\xec\5\x80\t\xee\1\x80\2\xee\2\x80\6\xe4\1\x80\2\xee\1\x80\1\xec\4\xee\1\xec\2\xee\1\xe4\1\x80\1\xcd\3\xee\1\x80\6\xee\2\x80\3\xcd\3\xec\3\xee\1\x80\6\xcd\2\x80\4\xcd\5\xe5\1\x80\6\xec\6\xee\2\x80\3\xec\3\x80\2\xe9\1\x80\1\xe4\1\xee\1\x80\f\xe9\1\x80\5\xee\1\x80\1\xec\a\x80\1\xec\1\x80\3\xd1\1\xcd\3\xee\1\xcd\1\x80\3\xef\1\xee\1\x80\1\xe9\1\xee\2\xcd\v\x80\3\xcd\6\x80\2\xcd\t\xec\1\x80\b\xcd\4\x80\3\xef\1\xcd\2\x80\5\xec\2\xee\1\x8e\1\xe9\1\x80\1\xee\2\xcd\2\x80\3\xe5\1\x80\6\xcd\1\xd4\1\xcd\1\x80\3\xec\4\x80\1\xcd\16\xee\1\xcd\5\xee\1\xcd\6\x80\6\xcd\2\x80\3\xec\3\x80\1\xee\1\xef\1\x80\2\xe9\1\x80\2\xcd\1\xee\1\x80\3\xee\2\x80\3\xef\1\xee\1\x80\2\xe4\1\xcd\1\x80\1\xee\6\xec\2\x80\3",
b"\x80\3\xec\6\x80\1\xd1\1\xed\1\xcd\22\x80\1\xee\1\x80\2\xef\1\xe9\1\xe4\1\x80\4\xec\1\x80\4\xec\6\x80\3\xee\1\x80\2\xcd\1\xee\1\xcd\3\xee\1\x80\4\xec\5\x80\t\xee\1\x80\3\xee\1\x80\1\xee\1\x80\a\xee\1\xec\4\xee\2\xec\1\x80\1\xe4\1\xef\1\x80\1\xcd\3\x80\1\xee\1\x80\5\xee\2\x80\3\xcd\3\xec\4\x80\6\xcd\2\x80\4\xcd\5\x80\1\xe9\1\x80\1\xee\1\xe5\1\xe4\1\x80\1\xec\6\xe4\1\xee\2\x80\2\xec\3\x80\1\xe9\1\xe5\1\x80\2\xee\1\xe4\1\x80\3\xe9\1\x80\a\xee\1\x80\4\xee\2\x80\1\xec\5\x80\1\xcd\4\xee\1\x80\1\xec\1\xcd\3\xee\1\x80\3\xee\3\xef\1\xee\1\xcd\r\x80\3\xcd\6\x80\2\xcd\t\xec\1\xe5\1\x80\a\xcd\4\x80\2\xcd\4\x80\5\xec\3\xee\2\x80\1\xee\2\xcd\2\x80\n\xef\1\xee\1\xcd\1\x80\4\xec\4\xcd\36\x80\3\xcd\2\x80\2\xe9\1\xec\3\x80\1\xee\1\xe9\1\x80\2\xee\1\x80\2\xcd\1\xee\1\x80\2\xe5\1\xee\2\x80\3\xee\2\xef\2\xcd\1\xd6\1\xcd\b\x8e\1\xe9\1\x80\2",
b"\x80\2\xec\a\x80\1\xee\1\xcd\25\xef\1\x80\1\xef\1\xe5\1\x80\5\xec\2\x80\3\xec\6\x80\3\xee\1\x80\2\xcd\1\xee\1\xef\1\xcd\2\xee\1\xef\1\x80\3\xef\1\xec\5\x80\b\xcd\1\x80\3\xcd\1\x80\1\xee\1\x80\3\xe9\1\x80\3\xcd\1\xad\1\xec\1\xad\1\xec\1\xcd\2\xec\1\x80\2\xee\1\x80\1\xcd\3\x80\1\xcd\1\x80\4\xcd\2\xef\1\x80\3\xcd\3\xec\3\xcd\1\x80\6\xcd\2\x80\4\xcd\5\x80\1\xcd\5\x80\1\xec\6\x80\1\x8e\1\xee\1\x80\2\xec\3\x80\1\xee\1\x80\3\xee\1\xef\1\x80\3\xe6\1\x80\a\xee\1\x80\3\xcd\1\xee\1\x80\1\xec\6\x80\1\xcd\a\xec\1\xcd\3\x80\3\xee\1\xcd\1\xee\1\xef\2\xcd\f\x80\3\xee\2\xcd\5\x80\1\xe9\1\xee\1\xcd\4\xee\1\xcd\b\xee\1\x80\3\xcd\4\x80\1\xcd\a\x80\3\xcd\1\xec\1\xad\1\xcd\2\xee\1\xcd\1\xee\1\xcd\2\xef\1\xcd\1\xef\1\x80\a\xcd\3\x80\4\xec\4\x80\1\xcd\35\x80\3\xcd\2\x80\2\xef\1\xec\3\x80\1\xee\1\x80\3\xee\1\x80\2\xcd\1\xee\1\x80\2\xee\1\xcd\1\x80\4\xcd\17\xee\1\x80\2",
b"\x80\2\xec\a\xcb!\xcd\1\x80\3\xec\6\x80\3\xcd\1\x80\2\xcd\5\x80\1\xcd\1\x80\4\xec\5\x80\a\x8e\1\xcd\1\x80\3\xe9\1\x80\1\xee\1\xe9\1\x80\2\xcd\1\x80\3\xcd\1\xec\3\xcd\3\xe6\1\x80\2\xcd\1\x80\1\xcd\3\x80\1\xcd\1\x80\3\xe6\1\xcd\2\x80\3\xe9\1\xcd\3\xec\3\xcd\1\x80\6\xcd\2\x80\3\xcd\6\x80\1\xcb\5\xe9\1\xec\6\x80\2\xcd\1\x80\3\xad\1\xec\2\xcd\1\x80\3\xcd\2\x80\f\xcd\1\x80\1\xee\1\xcd\1\x80\2\xe6\1\xec\1\xcd\1\xec\3\xcb\n\xcd\2\x80\3\xcd\2\xee\1\x8e\2\xcb\5\xcd\a\x80\3\xcd\a\x80\1\xcd\1\xe4\1\xee\1\xcb\17\x80\1\xcb\f\xcd\1\x80\2\xcd\2\xee\1\xcd\5\xd5\1\xee\1\xcd\2\x80\2\xe9\1\xee\1\xcd\1\x80\2\xcd\2\xd5\1\xcd\1\x80\5\xec\4\x80\1\xcd\6\xcb\t\xcd\a\xcb\5\xcd\1\x80\3\xcd\2\x80\2\xec\4\x80\1\xcd\1\x80\3\xef\1\x8e\1\x80\1\xcd\1\xee\1\x80\2\xcd\1\xee\1\x80\4\xcb\17\xcd\1\x80\2",
b"\x80\2\xec\4\xad\1\xcb\1\xf7\2\xf0\2\xf7\34\xf0\1\xc7\1\xf7\1\x8e\1\x80\2\xec\6\x80\3\xc7\1\x80\2\xcd\2\xcb\1\xcd\2\x80\1\xc7\1\x80\2\xe9\1\xc7\1\xec\6\x80\6\xc7\1\x80\4\x8e\1\x80\2\xe9\1\x80\1\xc7\2\x80\3\xc7\1\xcd\3\xc7\1\xcb\1\xcd\1\x80\3\xc7\1\xe4\1\xcd\3\x80\1\xc7\1\x80\3\xc7\2\xcd\1\x80\4\xcd\5\xcb\1\x80\a\xcd\2\x80\3\xc7\1\x80\1\xcd\3\xc7\1\xf0\1\xcb\1\xf7\4\xc7\1\xf0\1\xf7\1\xf0\1\xec\3\x8e\1\xcb\2\x80\3\xec\1\xcd\1\xc7\1\x80\4\xc7\1\xcb\1\x80\2\xcb\1\x80\b\xc7\1\xe6\1\x80\1\xc7\1\x80\3\xe6\1\xcd\1\xc7\1\xcd\2\xec\1\xc7\1\xf0\1\xf7\6\xcb\1\xf0\1\xf7\1\xc7\1\xf7\2\xcd\1\xc7\1\xcb\1\xcd\3\xf7\3\xf0\1\xcb\1\xf7\1\xf0\1\xcd\5\x80\3\xcb\1\xc7\1\xcd\4\x8e\1\xe6\1\xc7\1\xf7\17\xf0\1\xc7\1\xf7\2\xf0\1\xf7\v\x8e\1\x80\1\x8e\1\xcb\1\xc7\1\x8e\1\xcb\3\xc7\2\xcb\2\x80\1\xc7\2\xcb\1\xc7\1\x80\1\x8e\1\xcb\1\xc7\1\xee\1\xcd\3\x80\1\xcb\1\x80\2\xec\4\x80\1\xcd\5\xf0\1\xf7\6\xf0\1\xf7\3\xf0\2\xcb\2\xf0\1\xcb\1\xf7\4\xcb\1\xcd\1\x80\3\xcd\2\x80\2\xec\1\xc7\1\xec\2\xe6\1\xc7\1\x80\4\xcb\1\x80\1\xc8\1\xd5\1\x80\2\xcd\1\xc7\1\xcb\1\x80\3\xcb\1\xf0\1\xf7\16\xe6\1\x80\1",
b"\x80\1\xec\3\xc7\1\xf0\5\xf7\2\xf0 \x80\2\xec\6\x80\3\xc7\1\x80\2\xcd\2\xc7\1\xcd\2\x80\1\xc7\1\x80\2\xcd\1\x80\2\xec\5\x80\6\xc7\1\x80\4\xc7\1\x80\1\xe6\1\x80\2\xc7\1\x8e\1\x80\3\xc7\1\xcd\3\xc7\3\x80\3\xc7\1\xcd\4\x80\1\xc7\1\x80\3\xc7\2\x8e\1\x80\4\xcd\5\xc7\1\xf7\1\xf0\1\xf7\2\xf0\1\xc7\1\xe9\1\xcd\2\x80\3\xc7\1\x80\1\xcd\2\xf0\f\xf7\2\xec\1\xf0\1\xc7\1\xcd\1\x80\4\xcd\1\xc7\1\x80\4\xc7\2\x80\2\xc7\1\x80\b\xc7\1\x80\2\xc7\1\x80\3\x8e\1\xcd\1\xc7\1\xcd\2\xc7\1\xf7\2\xf0\6\xf7\1\xf0\a\xc7\2\xcd\1\xc7\1\xf0\a\xc7\1\xcd\4\x80\3\xc7\3\xcd\3\x80\1\xf0\1\xf7\2\xf0\1\xf7\1\xf0\r\xf7\1\xf0\16\xc7\1\xcd\1\x80\1\xc7\4\xf0\1\xc7\n\xe9\1\xc7\2\x8e\1\x80\1\xcd\3\x80\1\xcd\1\x80\3\xec\4\x80\1\xcd\2\xc7\1\xf0\27\xcd\2\x80\2\xcd\2\x80\2\xad\1\xc7\1\xad\2\x8e\1\xc7\1\xe6\1\x80\3\xc7\1\x80\1\xc8\1\xcb\1\xf0\1\xf7\1\xe6\1\xc7\2\xcd\1\xc7\1\xf0\21\xcd\1\x80\1",
b"\x80\1\xc7\1\xf0\1\xf8*\x80\1\xec\6\x80\3\xf0\1\x80\2\xcd\2\xf0\1\xcd\2\x80\1\x84\1\x80\2\xc7\1\x80\2\xf8\1\xc7\1\xec\2\xc7\2\x80\5\xf0\1\x80\4\xf0\1\x80\4\xf0\1\x80\4\xf0\1\xc7\1\x87\1\xc7\1\xf0\3\x80\3\xf0\1\xcd\4\x80\1\xf0\1\x80\3\xf0\2\xcd\1\x80\4\xcd\2\x8e\1\xcd\1\xc7\1\xf8\t\xf0\1\x80\2\xcd\1\xf0\1\x80\1\xf8\25\xc7\1\xcd\1\x80\2\xf0\1\x87\1\x80\3\xf0\2\xf8\a\xf0\1\x80\3\xf0\1\x80\2\xf0\1\xf8\3\xf0\1\xc7\1\xf0\1\xc7\2\xf8\24\xf0\1\xf8\a\xc7\1\xf0\1\xcd\2\xe9\1\x80\3\xf0\3\xc7\1\xf8#\xcd\1\x80\1\xf0\2\x87\1\xf0\v\xc7\1\x80\2\xf0\3\x80\2\xed\2\xd5\1\xf0\1\x80\4\x87\4\x80\1\xc7\1\xf0\1\xf8\30\x87\1\xc7\1\x80\2\xcd\2\x80\2\xc7\2\x87\2\x8e\1\xf0\1\xc7\1\x80\3\xf8\35\x80\1",
b"\xf9\1\xfa\2\xf9\t\xfa\1\xf9 \xfa\1\xec\6\x80\3\xf9\1\xfa\4\xf8\1\xd6\1\xee\1\xf9\1\xfa\1\xf9\1\xfa\1\xf9\1\x80\1\xf0\1\xfa\4\xf9\1\xfa\3\xf9\4\xfa\2\xf9\2\xfa\3\xf9\2\xfa\4\xf9\1\xfa\2\xf9\5\x80\2\xfb\1\x84\1\xcd\3\xef\1\xfb\1\x80\4\xfb\2\x80\5\xcd\2\x8e\1\x80\1\xf9\1\xfa\1\xf9\6\xfa\1\xf9\1\xfa\1\xf9\1\xfa\1\xf9\1\xfa\2\xf9\25\xfa\2\x80\1\x84\1\xfb\1\x84\1\x80\2\x84\1\xfa\2\xf9\t\xfa\4\xf9\1\xfa\3\xf9\1\xfa\1\xf9\1\xfb\1\xf9\1\xfa\1\xf9\1\xfa\1\xf9\20\xfa\1\xf9\t\xfa\2\xf9\2\xcd\1\x80\3\xf9\1\xf8\2\xf9!\xfa\1\xf9\1\x80\2\xf8\1\x80\1\xf8\f\xfb\1\xf8\3\xfb\1\xf8\1\xfb\1\xf0\1\x80\1\xf8\2\xf0\1\x80\5\x84\5\xf9\33\x84\1\x80\2\xd6\2\x80\2\x84\2\xfb\2\xf8\1\xf9\1\xfa\1\xf9\1\xfa\4\xf9\3\xfa\1\xf9\27\xfa\1",
b"\xfc\1\xfd\1\xfc\33\xfd\1\xfc\20\xec\4\xfa\1\xec\2\x80\1\xfc\a\xf0\1\xfe\1\xfd\1\xfc\5\xfa\1\xfd\1\xfc\r\xfd\1\xfc\t\xfd\1\xfc\5\xfd\1\xfc\4\xfa\1\xfb\1\xcd\4\xfa\1\x80\4\xfc\3\xfa\1\x80\3\xcd\2\x8e\1\xfc\v\xfd\1\xfc\33\xfd\1\x80\1\xfb\1\xfa\1\xfb\1\xfa\2\xfc\n\xfd\1\xfc\6\xfd\1\xfc\3\xfd\2\xfc \xfd\1\xfc\2\xfd\1\x80\2\xfc%\xfd\1\x80\3\xfa\30\xff\1\xfe\1\xcd\1\xfb\1\xfa\3\xfb\1\xfa\1\xfb\2\xfc\2\xfd\1\xfc\31\xfb\1\x80\2\xd6\2\x84\1\xfa\1\xfd\1\xfc\v\xfd\1\xfc\33",),
((0, 0, 0), (0, 107, 12), (0, 106, 21), (0, 67, 8), (0, 28, 0), (0, 59, 10), (6, 113, 19), (0, 33, 0), (4, 42, 0), (0, 99, 14), (0, 84, 17), (1, 91, 15), (6, 81, 6), (2, 28, 9), (2, 50, 0), (0, 91, 30), (4, 91, 43), (3, 42, 33), (0, 92, 67), (0, 76, 9), (1, 98, 60), (0, 98, 66), (1, 89, 59), (0, 100, 33), (0, 77, 18), (0, 98, 43), (0, 51, 8), (0, 34, 9), (0, 83, 31), (3, 66, 22), (63, 100, 1), (4, 73, 40), (0, 101, 24), (5, 83, 42), (0, 99, 49), (1, 42, 5), (0, 60, 33), (9, 65, 80), (5, 83, 59), (0, 67, 34), (0, 92, 82), (2, 74, 23), (9, 98, 72), (0, 91, 76), (0, 91, 23), (3, 34, 17), (0, 68, 17), (59, 91, 3), (0, 91, 49), (3, 84, 25), (0, 70, 42), (2, 89, 3), (0, 74, 34), (0, 59, 16), (0, 84, 65), (36, 84, 2), (0, 82, 47), (0, 52, 32), (0, 51, 15), (3, 77, 48), (1, 53, 44), (2, 64, 64), (0, 84, 76), (0, 65, 57), (0, 42, 13), (0, 65, 48), (6, 71, 75), (0, 57, 26), (6, 74, 67), (2, 51, 26), (2, 43, 25), (8, 34, 3), (36, 76, 0), (0, 58, 43), (0, 77, 75), (13, 36, 0), (46, 89, 0), (13, 43, 0), (0, 85, 82), (6, 75, 58), (28, 85, 2), (36, 91, 0), (40, 100, 0), (0, 98, 83), (23, 66, 2), (24, 59, 0), (25, 52, 0), (0, 110, 81), (50, 109, 0), (40, 97, 24), (0, 109, 75), (40, 115, 0), (0, 107, 67), (0, 114, 67), (40, 109, 0), (9, 107, 56), (26, 97, 30), (0, 111, 53), (1, 35, 23), (23, 108, 2), (13, 75, 1), (9, 81, 0), (2, 60, 3), (23, 99, 4), (26, 76, 3), (14, 67, 2), (25, 91, 0), (3, 28, 26), (0, 28, 16), (32, 66, 0), (13, 51, 1), (12, 58, 1), (3, 27, 0), (86, 152, 0), (41, 89, 17), (56, 130, 0), (73, 170, 0), (30, 73, 18), (8, 36, 14), (17, 28, 0), (6, 20, 0), (9, 9, 0), (2, 12, 0), (0, 17, 1), (1, 4, 0), (10, 3, 1), (24, 40, 0), (25, 36, 2))],
)

def draw_sprite_line(rle, nbits, x, y, dw, palette, **kwargs):
  '''affiche tout ou partie d'une ligne d'une image, avec :
  * arguments obligatoires :
  - rle : les donnees compressees RLE de l'image
  - nbits : le nombre de bits utilises pour la compression RLE
  - y : numero de la ligne a afficher
  - x et dw : position et longueur a afficher dans la ligne
  - palette : palette de couleurs indexee a utiliser
  * arguments nommes optionnels :
  - xmin et xmax : bornes horizontales pour tronquer l'affichage
  - itransp : index de la couleur transparente dans la palette
  - zoom : zoom a appliquer a l'affichage (entier)
  - cfond : couleur a utiliser a la place de la couleur transparente
  '''
  itransp, zoom, cfond, xmin, xmax = 0, 1, None, 0, L_ECRAN - 1
  if "xmin" in kwargs: xmin = kwargs["xmin"]
  if "xmax" in kwargs: xmax = kwargs["xmax"]
  if "itransp" in kwargs: itransp = kwargs["itransp"]
  if "zoom" in kwargs: zoom = kwargs["zoom"]
  if "cfond" in kwargs: cfond = kwargs["cfond"]
  x, y = round(x), round(y)
  dw *= zoom
  maskval, maskcnt = (1 << nbits) - 1, (255 >> nbits >> 1) << nbits
  i = 0
  while x <= xmax and dw > 0:
    v = rle[i]
    mv = v & maskval
    c = (v & maskcnt) >> nbits
    if v & 128:
      i += 1
      c |= rle[i] << (7 - nbits)
    if c:
      w = c * zoom
      if (mv != itransp or cfond) and x + w >= xmin and x <= xmax:
        xf = max(xmin, x)
        draw_horiz(floor(xf), y, ceil(min(dw, min(w - xf + x, xmax - xf + 1))), mv != itransp and palette[mv] or cfond)
      x += w
      dw -= w
    i = (i + 1) % len(rle)

#---------
# COULEURS
#---------

C_LUKE, C_YODA = (96, 184, 243), (139, 235, 162)

def rgb2hsv(r, g, b):
  '''convertit une couleur donnee en coordonnees Rouge-Vert-Bleu (RGB) vers des coordonnees Teinte-Saturation-Valeur (HSV), avec :
  - r, g, b : les coordonnees rouge/vert/bleu (entier de 0 a 255)
  '''
  cmax = max(r, g, b)
  d = cmax - min(r, g, b)
  h = d and (cmax == b and (r-g)/d+4 or cmax==g and (b-r)/d+2 or cmax==r and ((g -b)/d)%6)
  s = cmax and d/cmax
  return h/60, s, cmax/255

def hsv2rgb(h, s=1, v=1):
  '''convertit une couleur donnee en coordonnees Teinte-Saturation-Valeur (HSV) vers des coordonnees Rouge-Vert-Bleu (RGB), avec :
  - h : la teinte (sur l'intervalle [0;60[)
  - s et v : les saturation et valeur (sur l'intervalle [0;1])
  '''
  h *= 6
  c = v * s
  x = c * (1 - abs((h % 2) - 1))
  r, g, b = h < 1 and (c, x, 0) or h < 2 and (x, c, 0) or h < 3 and (0, c, x) or h < 4 and (0, x, c) or h < 5 and (x, 0, c) or (c, 0, x)
  return [round((k + v - c) * 255) for k in (r, g, b)]

def gradient(start, end, progress):
  '''calcule un degrade de couleur en coordonnees HSV, avec :
  - start : couleur HSV de depart
  - end : couleur HSV de fin
  - progress : position de la couleur intermediaire (sur l'intervalle [0;1])
  '''
  return [start[i] + (end[i] - start[i]) * progress for i in range(3)]

#--------------------
# AFFICHAGE - GENERAL
#--------------------
# extension de la bibliotheque casioplot

L_ECRAN, H_ECRAN = 384, 192 # largeur et hauteur de la zone graphique
H_POLICE = {"small":10, "medium":14, "large":20} # hauteur des caracteres des polices
L_POLICE = {"small":8, "medium":12, "large":18} # largeur des caracteres numeriques des polices

def lnum(i):
  '''calcul la largeur d'affichage du nombre i en pixels'''
  return 1 + int(log10(max(1, i)))*L_POLICE[POLICE]

def draw_horiz(x, y, w, c):
  '''trace une ligne horizontale, avec :
  - x et y : les coordonnees de la borne de gauche
  - w : la longueur
  - c : la couleur
  '''
  for dx in range(w): set_pixel(x + dx, y, c)

def fill_rect(x, y, w, h, c):
  '''trace un rectangle plein, avec :
  - x et y : les coordonnees du coin superieur gauche
  - w et h : les largeur et hauteur
  - c : la couleur
  '''
  for dy in range(h): draw_horiz(x, y + dy, w, c)

#-----------------------
# AFFICHAGE - SPECIFIQUE
#-----------------------

def draw_surface_marais(y, xmin=0, xmax = L_ECRAN - 1):
  '''trace une ligne de la surface du marais, avec :
  * parametre obligatoire :
  - y : l'ordonnee
  * parametres optionnels :
  - xmin et xmax : les bornes horizontales
  '''
  x = 0
  seed(42 * y)
  while x <= xmax:
    c = hsv2rgb(120.6/360, 1, random())
    w = randint(1, L_ECRAN // 4)
    if x + w >= xmin and x < xmax:
      xf = max(xmin, x)
      draw_horiz(floor(xf), y, ceil(min(w - xf + x, xmax - xf + 1)), c)
    x += w

#-----
# MATH
#-----
# extension de la bibliotheque math

def sign(x):
  '''retourne le signe du nombre x, sous la forme -1, 0 ou 1'''
  return (x > 0) - (x < 0)

#-----------------
# RAFRAICHISSEMENT
#-----------------
# fonction essentielle, appelee en boucle dans ce qui va suivre

def refresh(ymin=0, ymax=H_ECRAN - 1, xmin=0, xmax = L_ECRAN - 1):
  '''rafraichit l'affichage en ne redessinant que les elements necessaires, avec :
  - ymin et ymax : les bornes verticales de la zone a rafraichir
  - xmin et max : les bornes horizontales de la zone a rafraichir
  '''
  global forceon, score
  ymin, ymax = max(0, floor(ymin)), min(H_ECRAN - 1, floor(ymax))
  xmin, xmax = max(0, xmin), min(L_ECRAN - 1, xmax)
  txmin, txmax = xmin, xmax
  ly = (134,152,160,164)
  for y in range(ymin, ymax + 1):

    if y >= ly[0] and y < ly[1]: # surface du marais entre arbres et fond d'ecran
      draw_surface_marais(y, xmin, xmax)

    if y == H_ECRAN - H_BOUTON:
      if status[2] or not isinstance(status[0], str) and forceon:
        txmax = min(xmax, L_ECRAN - L_BOUTON)
      if not isinstance(status[0], str):
        txmin = max(xmin, lnum(score))

    # decor du marais
    if y < ly[1] and (isinstance(status[0], str) or y <= 1 or y >= H_BARRE + 2*M_BARRE - 2) or y >= ly[-1]:
      if y < ly[0]:
        c = gradient((205/360, 1, .565), (157.5/360, 1, .439), y / (ly[0] - 1))
        c = hsv2rgb(c[0], c[1], c[2])
      else:
        c = y >= ly[-1] and (255, 255, 255)
      draw_sprite_line(SPRITES[I_AP][S_RLE][y], SPRITES[I_AP][S_BITS], 0, y, SPRITES[I_AP][S_L], SPRITES[I_AP][S_PALETTE], itransp=SPRITES[I_AP][S_ITRANSP], cfond=c, xmin=txmin, xmax=txmax)
      for x in range(txmax + 1, xmax + 1):
        set_pixel(x, y, (0, 0, 255))
    if not isinstance(status[0], str) and y >= ly[-1]:
      for x in range(xmin, txmin):
        set_pixel(x, y, (0, 0, 255))

    # message or force bar
    if isinstance(status[0], str):
      if y == 1 + H_POLICE[POLICE] and ymin < y:
        draw_string(0, 1, status[0], status[1], POLICE)
    elif y < H_BARRE + 2*M_BARRE:
      xf = round((L_ECRAN - 1) * status[0])
      for x in range(txmin, txmax + 1):
        if abs(x - xf) <= M_CURSEUR and y >= 1 and y < 2*M_BARRE + H_BARRE - 1 or abs(x - xf) < M_CURSEUR:
          set_pixel(x, y, forceon and (255, 0, 255) or (127, 127, 127))
        elif y >= M_BARRE and y < M_BARRE + H_BARRE:
          c = gradient((0, 1, 1), (120/360, 1, 1), (x - 2) / (L_ECRAN - 2))
          set_pixel(x, y, hsv2rgb(c[0], c[1], c[2]))

    if y >= ly[1] and y < ly[2]: # surface du marais entre plateformes et arbres
      draw_surface_marais(y, txmin, txmax)

    if y >= SPRITES[I_PF_G][S_Y] and y < SPRITES[I_PF_G][S_Y] + SPRITES[I_PF_G][S_H]: # grande plateforme
      draw_sprite_line(SPRITES[I_PF_G][S_RLE][y - ceil(SPRITES[I_PF_G][S_Y])], SPRITES[I_PF_G][S_BITS], SPRITES[I_PF_G][S_X], y, SPRITES[I_PF_G][S_L], SPRITES[I_PF_G][S_PALETTE], itransp=SPRITES[I_PF_G][S_ITRANSP], xmin=xmin, xmax=xmax)

    if y >= SPRITES[I_PF_P][S_Y] and y < SPRITES[I_PF_P][S_Y] + SPRITES[I_PF_P][S_H]: # petite plateforme
      draw_sprite_line(SPRITES[I_PF_P][S_RLE][y - ceil(SPRITES[I_PF_P][S_Y])], SPRITES[I_PF_P][S_BITS], SPRITES[I_PF_P][S_X], y, SPRITES[I_PF_P][S_L], SPRITES[I_PF_P][S_PALETTE], itransp=SPRITES[I_PF_P][S_ITRANSP], xmin=xmin, xmax=xmax)

    if y >= SPRITES[I_LUKE][S_Y] and y < SPRITES[I_LUKE][S_Y] + SPRITES[I_LUKE][S_H]: # Luke
      draw_sprite_line(SPRITES[I_LUKE][S_RLE][y - ceil(SPRITES[I_LUKE][S_Y])], SPRITES[I_LUKE][S_BITS], SPRITES[I_LUKE][S_X], y, SPRITES[I_LUKE][S_L], SPRITES[I_LUKE][S_PALETTE], itransp=SPRITES[I_LUKE][S_ITRANSP], xmin=xmin, xmax=xmax)

    if y >= SPRITES[I_YODA][S_Y] and y < SPRITES[I_YODA][S_Y] + SPRITES[I_YODA][S_H]: # Yoda
      draw_sprite_line(SPRITES[I_YODA][S_RLE][y - ceil(SPRITES[I_YODA][S_Y])], SPRITES[I_YODA][S_BITS], SPRITES[I_YODA][S_X], y, SPRITES[I_YODA][S_L], SPRITES[I_YODA][S_PALETTE], itransp=SPRITES[I_YODA][S_ITRANSP], xmin=xmin, xmax=xmax)

    if y >= SPRITES[I_XWING][S_Y] and y < SPRITES[I_XWING][S_Y] + SPRITES[I_XWING][S_H]*SPRITES[I_XWING][S_ZOOM]: # X-Wing
      draw_sprite_line(SPRITES[I_XWING][S_RLE][(y - ceil(SPRITES[I_XWING][S_Y])) // SPRITES[I_XWING][S_ZOOM]], SPRITES[I_XWING][S_BITS], SPRITES[I_XWING][S_X], y, SPRITES[I_XWING][S_L], SPRITES[I_XWING][S_PALETTE], itransp=SPRITES[I_XWING][S_ITRANSP], zoom=2, xmin=xmin, xmax=xmax)

    if y >= ly[2] and y < ly[3]: # surface du marais jusqu'aux plateformes
      draw_surface_marais(y, txmin, txmax)

    if y >= ly[-1]: # sous la surface du marais
      c1a_hsv = (196.5/360, 1, .655)
      c1b_hsv = (171.1/360, 1, .396)
      c1_hsv = gradient(c1a_hsv, c1b_hsv, sqrt((y - ly[-1]) / (H_ECRAN - ly[-1])))
      c1_rgb = rgb2hsv(c1_hsv[0], c1_hsv[1], c1_hsv[2])
      for x in range(txmin, txmax + 1):
        c2_rgb = get_pixel(x, y)
        c2_hsv = rgb2hsv(c2_rgb[0], c2_rgb[1], c2_rgb[2])
        k = 2 + sqrt((y - ly[-1]) / (H_ECRAN - ly[-1]))
        c3_rgb = hsv2rgb(c1_hsv[0], (c1_hsv[1] + c2_hsv[1])/k , (c1_hsv[1] + c2_hsv[2])/k)
        set_pixel(x, y, c3_rgb)

    if status[2] and y == H_ECRAN - 1 and xmax >= L_ECRAN - 1 or not isinstance(status[0], str) and forceon:
      draw_string(L_ECRAN - L_BOUTON, H_ECRAN - H_BOUTON, "AC/ON", (255, 255, 0), "small")
    if not isinstance(status[0], str) and y == H_ECRAN - 1 and xmin <= 0:
      draw_string(0, H_ECRAN - H_BOUTON, str(round(score)), (255, 255, 0), "small")

#----------
# ANIMATION
#----------

M_HORIZ, M_VERT = tuple(range(1, 3))

def fanim(lst, mode_osc = 0, loop=True):
  '''joue une animation, avec :
  - lst : liste d'images a animer, avec pour chaque element :
  -- index de l'image principale a animer
  -- index d'une image liee a la position de l'image precedente (ou sinon None)
  -- abscisse ou deplacer l'image principale (ou None)
  -- ordonnee ou deplacer l'image principale (ou None)
  - mode_osc : masque indiquant si l'image doit subit des oscillations, pouvant alors etre horizontales (M_HORIZ), verticales (M_VERT) ou bien les deux a la fois
  - loop : indique si l'animation doit etre jouee en boucle ou bien une seule fois
  '''
  global x_c, y_c
  x_c, y_c = SPRITES[lst[-1][0]][S_X : S_Y + 1]
  ix, iy = 0, 0
  while 1:
    stop = True
    for i in range(len(lst)):
      i1_sprite, i2_sprite, destx, desty = lst[i]
      tx1, ty1 = SPRITES[i1_sprite][S_X : S_Y + 1]
      if not i2_sprite is None: tx2, ty2 = SPRITES[i2_sprite][S_X : S_Y + 1]
      if not destx is None and SPRITES[i1_sprite][S_X] != destx:
        SPRITES[i1_sprite][S_X] += sign(destx - SPRITES[i1_sprite][S_X])
        if not i2_sprite is None:
          tx2 = SPRITES[i2_sprite][S_X]
          SPRITES[i2_sprite][S_X] += SPRITES[i1_sprite][S_X] - tx1
        stop = False
        if SPRITES[i1_sprite][S_X] == destx:
          lst[i][2] = None
          x_c = SPRITES[lst[-1][0]][S_X]
      elif i + 1 == len(lst) and mode_osc & M_HORIZ:
        SPRITES[i1_sprite][S_X] = x_c - round(sin(ix*pi/180) * SPRITES[i2_sprite][S_L] / 16)
        SPRITES[i2_sprite][S_X] += SPRITES[i1_sprite][S_X] - tx1
        ix += 18
      if not desty is None and SPRITES[i1_sprite][S_Y] != desty:
        SPRITES[i1_sprite][S_Y] += sign(desty - SPRITES[i1_sprite][S_Y])
        if not i2_sprite is None:
          ty2 = SPRITES[i2_sprite][S_Y]
          SPRITES[i2_sprite][S_Y] += SPRITES[i1_sprite][S_Y] - ty1
        stop = False
        if SPRITES[i1_sprite][S_Y] == desty:
          lst[i][3] = None
          y_c = SPRITES[lst[-1][0]][S_Y]
      elif i + 1 == len(lst) and mode_osc & M_VERT:
        SPRITES[i1_sprite][S_Y] = y_c - round(sin(iy*pi/180) * SPRITES[i2_sprite][S_H] / 8)
        SPRITES[i2_sprite][S_Y] += SPRITES[i1_sprite][S_Y] - ty1
        iy += 1
      if not i2_sprite is None: refresh(min(ty2, SPRITES[i2_sprite][S_Y]), max(ty1, SPRITES[i1_sprite][S_Y]) - 1, min(tx2, SPRITES[i2_sprite][S_X]), max(tx2, SPRITES[i2_sprite][S_X]) + SPRITES[i2_sprite][S_L])
      refresh(min(ty1, SPRITES[i1_sprite][S_Y]), max(ty1, SPRITES[i1_sprite][S_Y]) + SPRITES[i1_sprite][S_H]*SPRITES[i1_sprite][S_ZOOM] - 1, min(tx1, SPRITES[i1_sprite][S_X]), max(tx1, SPRITES[i1_sprite][S_X]) + SPRITES[i1_sprite][S_L]*SPRITES[i1_sprite][S_ZOOM])
    if stop:
      if not mode_osc or not loop: break
      if not status[2]:
        status[2] = True
        refresh(H_ECRAN - H_BOUTON, H_ECRAN - 1, L_ECRAN - L_BOUTON, L_ECRAN - 1)
    show_screen()

def ac(fanim, loop=True, lmsg=None, lparams_anim=()):
  ''' lance une animation, tout en permettant a tout moment son interruption avec la touche [AC] et dans ce cas le nettoyage correct de l'affichage, avec :
  - fanim : la fonction d'animation
  - loop : indique si l'animation doit etre jouee en boucle ou bien une seule fois
  - lmsg : liste avec le message a afficher et sa couleur
  - lparams_anim : liste des parametres a passer a la fonction d'animation fanim()
  '''
  try:
    global status
    if not lmsg is None:
      status[:2] = lmsg
      refresh(1, 1 + H_POLICE[POLICE])
    fanim(*(lparams_anim + (loop,)))
  except KeyboardInterrupt:
    try:
      if loop:
        status[2] = False
        refresh(H_ECRAN - H_POLICE[POLICE], H_ECRAN - 1, 346, L_ECRAN - 1)
        fanim(False, *(lparams_anim + (loop,)))
    except: pass

#-----------------------------
# AUTRES FONCTIONS SPECIFIQUES
#-----------------------------

def force(f):
  '''fait appel a la Force, avec :
  - f l'intensite de la Force sur l'intervalle [0;1]
  '''
  global vy, forceon, score
  if forceon:
    vy += 2*f - 1
    forceon = False
    score += f*kscore/(1 - min(0, vy))*1000
    refresh(H_ECRAN - H_BOUTON, H_ECRAN - 1, 0, lnum(score))
    refresh(H_ECRAN - H_BOUTON, H_ECRAN - 1, L_ECRAN - L_BOUTON, L_ECRAN - 1)

def gameover():
  '''teste si on a gagne le jeu'''
  return SPRITES[I_XWING][S_Y] < -SPRITES[I_XWING][S_H] * SPRITES[I_XWING][S_ZOOM]

score, kscore, fscore = 0, 1, .999

def main():
  '''lance la partie jeu'''
  global vy, forceon, kscore, score
  try:
    refresh(H_ECRAN - H_BOUTON, H_ECRAN - 1, L_ECRAN - L_BOUTON, L_ECRAN - 1)
    w = 220
    t = 0
    of = -1
    while not gameover():
      try:
        try:
          f = 1 - abs(cos(t*pi/w))
          if t % w == 1 and not forceon:
            forceon = True
            refresh(H_ECRAN - H_BOUTON, H_ECRAN - 1, L_ECRAN - L_BOUTON, L_ECRAN - 1)
          status[:2] = f, None
          xf = round((L_ECRAN - 1) * f)
          refresh(0, H_BARRE + 2*M_BARRE, of >= 0 and min(xf - M_CURSEUR, oxf - M_CURSEUR), of < 0 and L_ECRAN - 1 or max(xf + M_CURSEUR, oxf + M_CURSEUR) or L_ECRAN - 1)
          show_screen()
          t, of, oxf = (t + 1) % w, f, xf
          vy = SPRITES[I_XWING][S_Y] < H_ECRAN and vy - .005*180/w
          kscore *= fscore
        except KeyboardInterrupt: force(f)
        ty, SPRITES[I_XWING][S_Y] = SPRITES[I_XWING][S_Y], min(H_ECRAN, SPRITES[I_XWING][S_Y] - vy)
        if round(ty) != round(SPRITES[I_XWING][S_Y]):
          refresh(min(ty, SPRITES[I_XWING][S_Y]), max(ty, SPRITES[I_XWING][S_Y]) + SPRITES[I_XWING][S_H]*SPRITES[I_XWING][S_ZOOM] + 1, SPRITES[I_XWING][S_X], SPRITES[I_XWING][S_X] + SPRITES[I_XWING][S_L]*SPRITES[I_XWING][S_ZOOM])
      except KeyboardInterrupt: force(f)
    score *= kscore + 1
    force(1)
  except KeyboardInterrupt:
    force(f)
    main()

#---------------
# INITIALISATION
#---------------

POLICE = "small" # police a utiliser

# reglage du zoom des differentes images
for sprite in SPRITES:
  sprite.append(1)
SPRITES[I_XWING][S_ZOOM] = 2

# positionnement des differentes images a l'ecran
SPRITES[I_XWING].extend(((L_ECRAN - SPRITES[I_XWING][S_L]*SPRITES[I_XWING][S_ZOOM])//2, 164 - SPRITES[I_XWING][S_H]))
SPRITES[I_PF_G].extend((-SPRITES[I_PF_G][S_L], 146))
SPRITES[I_PF_P].extend((L_ECRAN, 151))
SPRITES[I_YODA].extend((SPRITES[I_PF_P][S_X] + (SPRITES[I_PF_P][S_L] - SPRITES[I_YODA][S_L]) // 2, SPRITES[I_PF_P][S_Y] - SPRITES[I_YODA][S_H] + SPRITES[I_PF_P][S_H] // 4))
SPRITES[I_LUKE].extend((SPRITES[I_PF_G][S_X] + (SPRITES[I_PF_G][S_L] - SPRITES[I_LUKE][S_L]) // 2, SPRITES[I_PF_G][S_Y] - SPRITES[I_LUKE][S_H] + SPRITES[I_PF_G][S_H] // 2))

# largeurs et hauteurs de differentes elements graphiques
# - barre de Force et son curseur :
M_CURSEUR = H_POLICE[POLICE] // 4
M_BARRE = 2
H_BARRE = H_POLICE[POLICE] - M_CURSEUR - M_BARRE
# - bouton invitant a taper la touche action [AC]
H_BOUTON = H_POLICE[POLICE]
L_BOUTON = 39

status = ["", None, False]

refresh(0, H_ECRAN - 1) # 1er affichage, dessine tout l'ecran
show_screen()

# anime les differentes etapes du dialogue introductif Luke-Yoda
ac(fanim, True, ("Oh non le vaisseau, nous ne pourrons plus le recuperer...", C_LUKE), (([I_XWING, None, None, H_ECRAN], [I_PF_G, I_LUKE, (L_ECRAN - SPRITES[I_PF_G][S_L]) // 2, None]), M_VERT))
ac(fanim, True, ("Quelle certitude as-tu ? Avec toi, rien n'est jamais possible.", C_YODA), (([I_PF_G, I_LUKE, 33, None], [I_PF_P, I_YODA, (L_ECRAN - SPRITES[I_PF_P][S_L]) // 2, None]), M_VERT))
ac(fanim, True, ("Faire bouger des pierres est une chose mais la c'est different", C_LUKE), (([I_PF_G, I_LUKE, None, None],), M_VERT | M_HORIZ))
ac(fanim, True, ("Different dans ton esprit. Desapprends ce que tu as appris.", C_YODA), (([I_PF_P, I_YODA, 280, None],), M_VERT))
ac(fanim, True, ("C'est trop gros, j'y arriverai pas.", C_LUKE), (([I_PF_G, I_LUKE, None, None],), M_VERT | M_HORIZ))
ac(fanim, True, ("La taille importe peu. Par ma taille peux-tu me juger ?", C_YODA), (([I_PF_P, I_YODA, None, 64],), M_VERT))
ac(fanim, True, ("Tres bien, je vais essayer.", C_LUKE), (([I_PF_G, I_LUKE, None, None],), M_VERT))
ac(fanim, True, ("Non, fais-le. Ou ne le fais pas. Mais il n'y a pas d'essai.", C_YODA), (([I_PF_P, I_YODA, None, None],), M_VERT | M_HORIZ))

vy = 0 # vitesse verticale du X-Wing
forceon = True # indique si la Force est avec toi

main() # lance la partie jeu

# le jeu est gagne, animation de fin
ac(fanim, False, None, (([I_PF_G, I_LUKE, SPRITES[I_XWING][S_X], -SPRITES[I_PF_G][S_H]],), 0))
ac(fanim, True, ("Va Luke, la Force est avec toi, a jamais.", C_YODA), (([I_PF_P, I_YODA, None, None],), M_VERT))
print(score)
Télécharger

Merci Casio ! :favorite:

Source : https://www.casio-education.fr/actualit ... -4th-2023/
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 44.1%
 
Messages: 41576
Images: 15112
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Retourner vers News Casio

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 36 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Offre de test des nouveautés de rentrée 2024 par Casio. Enseignant(e), reçois gratuitement 1 exemplaire, à ton choix, de la Graph Light ou bien de la Graph Math+
14€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 31 Octobre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 90+E d'ici le 31 Décembre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 25 d'ici le 31 Décembre 2024
8€ remboursés par Casio sur l'achat de ta calculatrice Graph Math+ d'ici le 31 Octobre 2024
Reprise de ton ancienne fx-92 Collège ou Graph 25/35/90 à 3€ peu importe son état. Même non fonctionnelle et donc invendable, même ancienne Graph 35 non conforme aux programmes (pas de Python), même ancienne Graph 25/35 inutilisable aux examens (pas de mode examen) et donc invendable. Etiquette de retour fournie, pas de frais de port à payer.
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2024
5€ de remise immédiate sur l'achat de ta calculatrice TI-83 Premium CE Edition Python chez les revendeurs partenaires
4€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced Edition Python chez les revendeurs partenaires
3€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced chez les revendeurs partenaires
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234567891011121314
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
906 utilisateurs:
>850 invités
>51 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)