Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2994 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5  6
Auteur Sujet :

CL4$H ~ ## MagicBuzz VS Masklinn ##

n°1558185
MagicBuzz
Posté le 10-05-2007 à 16:01:26  profilanswer
 

Reprise du message précédent :
A l'époque, y'avais pas de requêtes paramétrées.
A partir de là, le moindre ' était systématiquement échappé en \' ce qui n'est absolument pas reconnu par SQL Server.
 
Que tu fasses propre ou non, explique moi comment t'arrive à pallier à ce problème, moi je suis preneur d'une solution :spamafote:

mood
Publicité
Posté le 10-05-2007 à 16:01:26  profilanswer
 

n°1558207
rufo
Pas me confondre avec Lycos!
Posté le 10-05-2007 à 16:23:06  profilanswer
 

un bouquin que j'ai trouvé pas mal du tout : http://www.amazon.fr/Best-practice [...] 909&sr=8-1

n°1558238
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 16:49:32  profilanswer
 

MagicBuzz a écrit :

A l'époque, y'avais pas de requêtes paramétrées.
A partir de là, le moindre ' était systématiquement échappé en \' ce qui n'est absolument pas reconnu par SQL Server.

 

Que tu fasses propre ou non, explique moi comment t'arrive à pallier à ce problème, moi je suis preneur d'une solution :spamafote:


  • Tu appelles "set_magic_quotes_runtime(FALSE);" histoire d'être tranquille
  • Tu vérifies si get_magic_quotes_gpc() renvoie 1
  • Si oui, tu stripslashes() sur toutes les valeurs contenues dans $_SERVER, $_GET, $_POST, $_COOKIE, $_FILES, $_ENV, $_REQUEST, $HTTP_SERVER_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_COOKIE_VARS, $HTTP_POST_FILES et $HTTP_ENV_VARS (enfin au moins sur les valeurs des arrays que tu utilises e.g. si tu utilises pas $HTTP_ENV_VARS pas besoin de stripslasher son contenu)

Message cité 1 fois
Message édité par masklinn le 10-05-2007 à 16:49:52

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558255
omega2
Posté le 10-05-2007 à 16:58:22  profilanswer
 

Masklinn > Il me semble qu'il parle d'une transformation des " ' " en " \' " au moment de l'envoie de la requette à la base. Dans ce cas tu fais comment pour que la requette arrive comme il faut alors que tu n'as plus la main quand ça arrive?
 
MagicBuzz > Reprend moi si je me trompe. ;)

n°1558259
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 16:59:40  profilanswer
 

omega2 a écrit :

Masklinn > Il me semble qu'il parle d'une transformation des " ' " en " \' " au moment de l'envoie de la requette à la base. Dans ce cas tu fais comment pour que la requette arrive comme il faut alors que tu n'as plus la main quand ça arrive?


Heuu ça existe pas ça, sauf à utiliser la mauvaise fonction d'escaping [:petrus75]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558266
omega2
Posté le 10-05-2007 à 17:02:03  profilanswer
 

Il me semble avoir conus ça avec php3, mais c'était il y a tellement longtemps que je n'en suis pas certain.

n°1558317
MagicBuzz
Posté le 10-05-2007 à 17:26:45  profilanswer
 

masklinn a écrit :

  • Tu appelles "set_magic_quotes_runtime(FALSE);" histoire d'être tranquille
  • Tu vérifies si get_magic_quotes_gpc() renvoie 1

Ze soucy, c'est que quand tu sais coder et que tu t'attends pas à ce qu'un truc pareil puisse exister, bah tu connais pas ces deux trucs, et tu peux donc pas désactiver cette merde. C'est justement là que ça devenait fun : écriture dans un fichier des données avec les \
=> relecture avec suppression des \
=> et enfin écriture dans la base "comme si de rien n'était"
 
c'est tout ce que j'avais trouvé après 3 heures de crise de nerfs :D
depuis, je refuse de m'approcher d'un truc écrit en PHP :o

n°1558322
MagicBuzz
Posté le 10-05-2007 à 17:29:13  profilanswer
 

omega2 a écrit :

MagicBuzz > Reprend moi si je me trompe. ;)


oui, c'est ça. dans le contexte où tu n'imagines même pas que magic_quotes puisse exister (y'a qu'un débile profond qui a pu inventer ça, et l'équipe qui s'occupe de gérer la cohérence du langage doit se patager le même bocal rempli de chlorophorme en guise de cerveau, c'est tout ce que je vois comme explication :spamafote: du coup, avec mon cerveau normal, et à force de m'entendre dire "l'asp c'est d'la merde, php c'est mieux c'est plus propre" j'étais à des années lumières de m'imaginer un tel truc !

n°1558323
MagicBuzz
Posté le 10-05-2007 à 17:31:01  profilanswer
 

omega2 a écrit :

Il me semble avoir conus ça avec php3, mais c'était il y a tellement longtemps que je n'en suis pas certain.


en fait c'est pas au moment de l'envoi du truc, c'est au moment de la récupération des variables de post/get, etc.
sauf que je sais plus pkoi, mais virer les \ ne suffisait pas, il me les recollait. en fait je sais pas ce qu'il foutais, mais le seul truc qui marchait, c'était effectivement de passer par ce foutu fichier sur le disque pour récupérer mes variables...

n°1558326
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 17:34:45  profilanswer
 

MagicBuzz a écrit :

Ze soucy, c'est que quand tu sais coder et que tu t'attends pas à ce qu'un truc pareil puisse exister, bah tu connais pas ces deux trucs, et tu peux donc pas désactiver cette merde


C'est juste que tu sais pas coder en PHP ça, le problème ici c'est toi pas l'outil :o
(enfin l'outil aussi, si, mais surtout toi)


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
mood
Publicité
Posté le 10-05-2007 à 17:34:45  profilanswer
 

n°1558337
MagicBuzz
Posté le 10-05-2007 à 17:42:17  profilanswer
 

masklinn a écrit :

C'est juste que tu sais pas coder en PHP ça, le problème ici c'est toi pas l'outil :o
(enfin l'outil aussi, si, mais surtout toi)


ben en attendant, je suis une quiche en C# et j'ai pas ce genre de surprises :o

n°1558408
Zorro561
Posté le 10-05-2007 à 19:00:31  profilanswer
 

Stop le squattage de topic les mecs !
Je voudrais savoir si il y a un intêret (même léger) à savoir coder des classes. J'ai envie de progresser, et j'ai pensé qu'une nouvelle notion m'aiderait dans cette voie...
 
Pour le truc du SQL, c'est juste qu'apparemment, avec une classe qui gère tout ça c'est carrément plus simple de coder ses requêtes et tout.

n°1558411
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 19:02:17  profilanswer
 

Zorro561 a écrit :

Stop le squattage de topic les mecs !
Je voudrais savoir si il y a un intêret (même léger) à savoir coder des classes.


Bien sûr qu'il y a un intérêt à savoir codé de l'OO, ce qu'on te dit c'est que PHP est un extrèmement mauvais langage (l'un des pires) pour apprendre les concepts de POO [:spamafote]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558414
dwogsi
Défaillance cérébrale...
Posté le 10-05-2007 à 19:10:54  profilanswer
 

Ouai et même mauvais pour apprendre la programmation en générale.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1558418
MagicBuzz
Posté le 10-05-2007 à 19:26:20  profilanswer
 

* mauvais tout court d'ailleurs

n°1558422
dwogsi
Défaillance cérébrale...
Posté le 10-05-2007 à 19:29:40  profilanswer
 

Le pire de tous? Ou ya ENCORE pire?  :pt1cable:


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1558425
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 19:33:39  profilanswer
 

dwogsi a écrit :

Le pire de tous? Ou ya ENCORE pire?  :pt1cable:


Il y a des langages pires, mais la majorité ne sont pas vraiment faits pour coder à la base, ce sont plutôt des plaisanteries (cf Esoteric Programming Languages)


Message édité par masklinn le 10-05-2007 à 19:34:13

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558430
dwogsi
Défaillance cérébrale...
Posté le 10-05-2007 à 19:38:14  profilanswer
 

A oui mais alors là c'est exceptionnel, je découvre à l'instant le Befunge... C'est pire que de l'assembleur, si vous saviez comme j'aime l'assembleur...

 

Sinon, oui faut apprendre la POO, c'est merveilleux!

Message cité 1 fois
Message édité par dwogsi le 10-05-2007 à 19:42:51

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1558437
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 19:58:42  profilanswer
 

dwogsi a écrit :

A oui mais alors là c'est exceptionnel, je découvre à l'instant le Befunge... C'est pire que de l'assembleur, si vous saviez comme j'aime l'assembleur...
 
Sinon, oui faut apprendre la POO, c'est merveilleux!


Ouais mais je dois dire que je préfère encore Java2K, c'est l'un des rares langages probabilistes que je connaisse.


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558442
dwogsi
Défaillance cérébrale...
Posté le 10-05-2007 à 20:18:45  profilanswer
 

Langages probabilistes, le sujet m'a toujours parut intéressant mais un peu hors de porté. J'ai du mal à comprendre ce que ça apporte vraiment et dans quel but ça pourrait être utilisé. Peut être n'ai-je pas lu les bonnes doc... Alors en passant, puisque ce topic dérive pas mal, je suis preneur de liens parlant "langages probabilistes".


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1558443
MagicBuzz
Posté le 10-05-2007 à 20:20:37  profilanswer
 

C'est pas mal comme truc ça :
http://en.wikipedia.org/wiki/White [...] anguage%29
 
En gros :

Code :
  1. Sub Main(    )
  2.   MsgBox      (    "Hello World !         "                        )
  3.    
  4.                  
  5.    End Sub


 
=> Et hop, tu le parse avec un résident en mémoire qui interprette le langage WHITESPACE en même temps que VBS et zou, tu viens de m'envoyer ton numéro de carte bancaire par mail :D
 
Funny pour diffuser des macro virus en tout cas :)

n°1558476
masklinn
í dag viðrar vel til loftárása
Posté le 10-05-2007 à 22:02:40  profilanswer
 

dwogsi a écrit :

J'ai du mal à comprendre ce que ça apporte vraiment


Rien à part un peu d'amusement

dwogsi a écrit :

et dans quel but ça pourrait être utilisé.

 
Aucun à part se marrer, c'est d'ailleurs le cas de tous les langages "ésotériques", ils sont là pour être là, pas pour être utilisés dans de vrais projets ;)


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558521
MagicBuzz
Posté le 11-05-2007 à 00:29:52  profilanswer
 

ça donne quoi ce type de langages ? (en gros)

n°1558530
masklinn
í dag viðrar vel til loftárása
Posté le 11-05-2007 à 00:45:46  profilanswer
 

Quel type de langage? Les langages ésotériques? Ben ce sont les langages dont j'ai posté la liste, donc Befunge, Whitespace, ou bien Brainfuck

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.


(c'est un hello world)
 
Chef

99 Bottles of Beer brewed on malted barley hops and assorted adjuncts.
 
By Rune Berge. Written in Chef (http://www.dangermouse.net/esoteric/chef.html).  
This recipe utilizes three sous-chefs to help prepare the barley, hops and adjuncts. Sous-chefs,
however, are notoriously slow working, so be patient and don't give up if it takes a while before
any beer is produced.
 
Ingredients.
99 kg barley
0 g malt extract
1 kg sugar
111 ml ale yeast
78 ml lager yeast
1 tablespoon mixture
32 ml wild yeasts
10 l water
 
Method.
Put malt extract into the 2nd mixing bowl.
Mash the barley.  
Put water into the 1st mixing bowl.
Serve with hops.
Serve with malted barley.
Boil the malt extract.
Put malt extract into the 1st mixing bowl.
Set aside.
Stir until boiled.
Ferment the mixture.
Put ale yeast into the 1st mixing bowl.
Put lager yeast into the 1st mixing bowl.
Put wild yeasts into the 1st mixing bowl.
Condition the mixture until fermented.
Add sugar into the 2nd mixing bowl.
Fold malt extract into the 2nd mixing bowl.
Serve with adjuncts.
Put malt extract into the 2nd mixing bowl.
Serve with malted barley.
Put malt extract into the 1st mixing bowl.
Serve with hops.
Serve with malted barley.
Put malt extract into the 1st mixing bowl.
Mash the barley until mashed.
Pour contents of the 1st mixing bowl into the baking dish.
 
Serves 1.
 
 
Malted barley.
 
Ingredients.
98 ml lager malt
111 ml pale ale malt
116 ml wheat malt
108 ml rye malt
101 ml victory malt
115 ml Munich malt
102 ml Vienna malt
114 ml Dextrin malt
32 l water
1 kg barley
 
Method.
Remove barley from the 2nd mixing bowl.
Fold barley into the 2nd mixing bowl.
Clean 1st mixing bowl.
Put Dextrin malt into the 1st mixing bowl.
Put victory malt into the 1st mixing bowl.
Put victory malt into the 1st mixing bowl.
Put lager malt into the 1st mixing bowl.
Put water into the 1st mixing bowl.
Put Vienna malt into the 1st mixing bowl.
Put pale ale malt into the 1st mixing bowl.
Put water into the 1st mixing bowl.
Kiln the barley.
Put Munich malt into the 1st mixing bowl.
Set aside.
Dry the barley until kilned.
Put victory malt into the 1st mixing bowl.
Put rye malt into the 1st mixing bowl.
Put wheat malt into the 1st mixing bowl.
Put wheat malt into the 1st mixing bowl.
Put pale ale malt into the 1st mixing bowl.
Put lager malt into the 1st mixing bowl.
Put water into the 1st mixing bowl.
 
 
Hops.
 
Ingredients.
10 l water
111 ml Tettnanger
116 ml Spalter
108 ml Hallertauer Mittelfrueh
101 ml Fuggle
110 ml Golding
104 ml Hersbruck
119 ml Styrian
97 ml sugar
32 ml Saaz
 
Method.
Clean 1st mixing bowl.
Put water into the 1st mixing bowl.
Put Hallertauer Mittelfrueh into the 1st mixing bowl.  
Put Hallertauer Mittelfrueh into the 1st mixing bowl.
Put sugar into the 1st mixing bowl.
Put Styrian into the 1st mixing bowl.
Put Saaz into the 1st mixing bowl.
Put Fuggle into the 1st mixing bowl.
Put Hersbruck into the 1st mixing bowl.
Put Spalter into the 1st mixing bowl.
Put Saaz into the 1st mixing bowl.
Put Golding into the 1st mixing bowl.
Put Tettnanger into the 1st mixing bowl.
Put Saaz into the 1st mixing bowl.
 
 
Adjuncts.
 
Ingredients.
10 l water
111 ml brown sugar
116 ml corn
101 ml rice
115 ml oats
114 ml apple juice
110 ml black berries
119 ml grape juice
97 ml prune extract
84 ml mango
107 ml red currants
100 ml wild berries
112 ml smashed bananas
105 ml wheat
117 ml rye
32 ml honey
 
Method.
Clean 1st mixing bowl.
Put water into the 1st mixing bowl.  
Put wild berries into the 1st mixing bowl.
Put black berries into the 1st mixing bowl.
Put rye into the 1st mixing bowl.
Put brown sugar into the 1st mixing bowl.
Put apple juice into the 1st mixing bowl.
Put prune extract into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put corn into the 1st mixing bowl.
Put wheat into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put oats into the 1st mixing bowl.
Put oats into the 1st mixing bowl.
Put prune extract into the 1st mixing bowl.
Put smashed bananas into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put wild berries into the 1st mixing bowl.
Put black berries into the 1st mixing bowl.
Put prune extract into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put black berries into the 1st mixing bowl.
Put grape juice into the 1st mixing bowl.
Put brown sugar into the 1st mixing bowl.
Put wild berries into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put rice into the 1st mixing bowl.
Put black berries into the 1st mixing bowl.
Put brown sugar into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put rice into the 1st mixing bowl.
Put red currants into the 1st mixing bowl.
Put prune extract into the 1st mixing bowl.
Put mango into the 1st mixing bowl.
Put honey into the 1st mixing bowl.
Put water into the 1st mixing bowl.


(c'est un 99 bottles of beer)
 
, Intercal

PLEASE DO ,10 <- #1
PLEASE DO ,10SUB#1 <- #176
PLEASE DO ,11 <- #30
PLEASE DO ,11SUB#1 <- #76
       DO ,11SUB#2 <- #190
       DO ,11SUB#3 <- #80
       DO ,11SUB#4 <- #200
PLEASE DO ,11SUB#5 <- #256
       DO ,11SUB#6 <- #248
       DO ,11SUB#7 <- #144
       DO ,11SUB#8 <- #216
PLEASE DO ,11SUB#9 <- #202
       DO ,11SUB#10 <- #14
       DO ,11SUB#11 <- #144
       DO ,11SUB#12 <- #98
PLEASE DO ,11SUB#13 <- #190
       DO ,11SUB#14 <- #160
       DO ,11SUB#15 <- #256
       DO ,11SUB#16 <- #88
PLEASE DO ,11SUB#17 <- #74
       DO ,11SUB#18 <- #14
       DO ,11SUB#19 <- #128
       DO ,11SUB#20 <- #114
PLEASE DO ,11SUB#21 <- #214
       DO ,11SUB#22 <- #24
       DO ,11SUB#23 <- #112
       DO ,11SUB#24 <- #162
PLEASE DO ,11SUB#25 <- #22
       DO ,11SUB#26 <- #104
       DO ,11SUB#27 <- #80
       DO ,11SUB#28 <- #256
PLEASE DO ,11SUB#29 <- #2
       DO ,11SUB#30 <- #228
PLEASE DO ,12 <- #49
PLEASE DO ,12SUB#1 <- #76
       DO ,12SUB#2 <- #190
       DO ,12SUB#3 <- #80
       DO ,12SUB#4 <- #200
PLEASE DO ,12SUB#5 <- #256
       DO ,12SUB#6 <- #248
       DO ,12SUB#7 <- #144
       DO ,12SUB#8 <- #216
PLEASE DO ,12SUB#9 <- #202
       DO ,12SUB#10 <- #14
       DO ,12SUB#11 <- #144
       DO ,12SUB#12 <- #98
PLEASE DO ,12SUB#13 <- #190
       DO ,12SUB#14 <- #160
       DO ,12SUB#15 <- #256
       DO ,12SUB#16 <- #88
PLEASE DO ,12SUB#17 <- #218
       DO ,12SUB#18 <- #36
       DO ,12SUB#19 <- #38
       DO ,12SUB#20 <- #164
PLEASE DO ,12SUB#21 <- #176
       DO ,12SUB#22 <- #48
       DO ,12SUB#23 <- #162
       DO ,12SUB#24 <- #14
PLEASE DO ,12SUB#25 <- #128
       DO ,12SUB#26 <- #208
       DO ,12SUB#27 <- #162
       DO ,12SUB#28 <- #222
PLEASE DO ,12SUB#29 <- #48
       DO ,12SUB#30 <- #8
       DO ,12SUB#31 <- #120
       DO ,12SUB#32 <- #66
PLEASE DO ,12SUB#33 <- #48
       DO ,12SUB#34 <- #246
       DO ,12SUB#35 <- #136
       DO ,12SUB#36 <- #184
PLEASE DO ,12SUB#37 <- #256
       DO ,12SUB#38 <- #202
       DO ,12SUB#39 <- #110
       DO ,12SUB#40 <- #104
PLEASE DO ,12SUB#41 <- #42
       DO ,12SUB#42 <- #126
       DO ,12SUB#43 <- #56
       DO ,12SUB#44 <- #88
PLEASE DO ,12SUB#45 <- #72
       DO ,12SUB#46 <- #56
       DO ,12SUB#47 <- #80
       DO ,12SUB#48 <- #242
PLEASE DO ,12SUB#49 <- #228
PLEASE DO ,13 <- #31
PLEASE DO ,13SUB#1 <- #76
       DO ,13SUB#2 <- #190
       DO ,13SUB#3 <- #80
       DO ,13SUB#4 <- #200
PLEASE DO ,13SUB#5 <- #256
       DO ,13SUB#6 <- #248
       DO ,13SUB#7 <- #144
       DO ,13SUB#8 <- #216
PLEASE DO ,13SUB#9 <- #202
       DO ,13SUB#10 <- #14
       DO ,13SUB#11 <- #144
       DO ,13SUB#12 <- #98
PLEASE DO ,13SUB#13 <- #190
       DO ,13SUB#14 <- #160
       DO ,13SUB#15 <- #256
       DO ,13SUB#16 <- #88
PLEASE DO ,13SUB#17 <- #74
       DO ,13SUB#18 <- #14
       DO ,13SUB#19 <- #128
       DO ,13SUB#20 <- #114
PLEASE DO ,13SUB#21 <- #214
       DO ,13SUB#22 <- #24
       DO ,13SUB#23 <- #112
       DO ,13SUB#24 <- #162
PLEASE DO ,13SUB#25 <- #22
       DO ,13SUB#26 <- #104
       DO ,13SUB#27 <- #80
       DO ,13SUB#28 <- #256
PLEASE DO ,13SUB#29 <- #194
       DO ,13SUB#30 <- #36
       DO ,13SUB#31 <- #256
PLEASE DO ,20 <- #10
PLEASE DO ,20 SUB #1 <- #76
       DO ,20 SUB #2 <- #196
       DO ,20 SUB #3 <- #4
       DO ,20 SUB #4 <- #132
PLEASE DO ,20 SUB #5 <- #36
       DO ,20 SUB #6 <- #164
       DO ,20 SUB #7 <- #228
       DO ,20 SUB #8 <- #100
PLEASE DO ,20 SUB #9 <- #52
       DO ,20 SUB #10 <- #180
PLEASE DO ,21 <- #10 BY #10
PLEASE DO ,21SUB#1#1 <- #248
PLEASE DO ,21SUB#1#2 <- #120
PLEASE DO ,21SUB#1#3 <- #184
PLEASE DO ,21SUB#1#4 <- #56
PLEASE DO ,21SUB#1#5 <- #216
PLEASE DO ,21SUB#1#6 <- #88
PLEASE DO ,21SUB#1#7 <- #152
PLEASE DO ,21SUB#1#8 <- #24
PLEASE DO ,21SUB#1#9 <- #232
PLEASE DO ,21SUB#1#10 <- #104
       DO ,21SUB#2#1 <- #128
       DO ,21SUB#2#2 <- #256
       DO ,21SUB#2#3 <- #64
       DO ,21SUB#2#4 <- #192
       DO ,21SUB#2#5 <- #96
       DO ,21SUB#2#6 <- #224
       DO ,21SUB#2#7 <- #32
       DO ,21SUB#2#8 <- #160
       DO ,21SUB#2#9 <- #112
       DO ,21SUB#2#10 <- #240
       DO ,21SUB#3#1 <- #64
       DO ,21SUB#3#2 <- #192
       DO ,21SUB#3#3 <- #256
       DO ,21SUB#3#4 <- #128
       DO ,21SUB#3#5 <- #32
       DO ,21SUB#3#6 <- #160
       DO ,21SUB#3#7 <- #224
       DO ,21SUB#3#8 <- #96
       DO ,21SUB#3#9 <- #48
       DO ,21SUB#3#10 <- #176
       DO ,21SUB#4#1 <- #192
       DO ,21SUB#4#2 <- #64
       DO ,21SUB#4#3 <- #128
       DO ,21SUB#4#4 <- #256
       DO ,21SUB#4#5 <- #160
       DO ,21SUB#4#6 <- #32
       DO ,21SUB#4#7 <- #96
       DO ,21SUB#4#8 <- #224
       DO ,21SUB#4#9 <- #176
       DO ,21SUB#4#10 <- #48
PLEASE DO ,21SUB#5#1 <- #32
PLEASE DO ,21SUB#5#2 <- #160
PLEASE DO ,21SUB#5#3 <- #224
PLEASE DO ,21SUB#5#4 <- #96
PLEASE DO ,21SUB#5#5 <- #256
PLEASE DO ,21SUB#5#6 <- #128
PLEASE DO ,21SUB#5#7 <- #192
PLEASE DO ,21SUB#5#8 <- #64
PLEASE DO ,21SUB#5#9 <- #16
PLEASE DO ,21SUB#5#10 <- #144
       DO ,21SUB#6#1 <- #160
       DO ,21SUB#6#2 <- #32
       DO ,21SUB#6#3 <- #96
       DO ,21SUB#6#4 <- #224
       DO ,21SUB#6#5 <- #128
       DO ,21SUB#6#6 <- #256
       DO ,21SUB#6#7 <- #64
       DO ,21SUB#6#8 <- #192
       DO ,21SUB#6#9 <- #144
       DO ,21SUB#6#10 <- #16
       DO ,21SUB#7#1 <- #96
       DO ,21SUB#7#2 <- #224
       DO ,21SUB#7#3 <- #32
       DO ,21SUB#7#4 <- #160
       DO ,21SUB#7#5 <- #64
       DO ,21SUB#7#6 <- #192
       DO ,21SUB#7#7 <- #256
       DO ,21SUB#7#8 <- #128
       DO ,21SUB#7#9 <- #80
       DO ,21SUB#7#10 <- #208
       DO ,21SUB#8#1 <- #224
       DO ,21SUB#8#2 <- #96
       DO ,21SUB#8#3 <- #160
       DO ,21SUB#8#4 <- #32
       DO ,21SUB#8#5 <- #192
       DO ,21SUB#8#6 <- #64
       DO ,21SUB#8#7 <- #128
       DO ,21SUB#8#8 <- #256
       DO ,21SUB#8#9 <- #208
       DO ,21SUB#8#10 <- #80
PLEASE DO ,21SUB#9#1 <- #16
PLEASE DO ,21SUB#9#2 <- #144
PLEASE DO ,21SUB#9#3 <- #208
PLEASE DO ,21SUB#9#4 <- #80
PLEASE DO ,21SUB#9#5 <- #240
PLEASE DO ,21SUB#9#6 <- #112
PLEASE DO ,21SUB#9#7 <- #176
PLEASE DO ,21SUB#9#8 <- #48
PLEASE DO ,21SUB#9#9 <- #256
PLEASE DO ,21SUB#9#10 <- #128
       DO ,21SUB#10#1 <- #144
       DO ,21SUB#10#2 <- #16
       DO ,21SUB#10#3 <- #80
       DO ,21SUB#10#4 <- #208
       DO ,21SUB#10#5 <- #112
       DO ,21SUB#10#6 <- #240
       DO ,21SUB#10#7 <- #48
       DO ,21SUB#10#8 <- #176
       DO ,21SUB#10#9 <- #128
       DO ,21SUB#10#10 <- #256
PLEASE DO ,22 <- #10
PLEASE DO ,22 SUB #1 <- #8
       DO ,22 SUB #2 <- #136
       DO ,22 SUB #3 <- #72
       DO ,22 SUB #4 <- #200
PLEASE DO ,22 SUB #5 <- #40
       DO ,22 SUB #6 <- #168
       DO ,22 SUB #7 <- #104
       DO ,22 SUB #8 <- #232
PLEASE DO ,22 SUB #9 <- #24
       DO ,22 SUB #10 <- #152
       DO .10 <- #9
       DO .11 <- #9
PLEASE DO ,10 <- #1
PLEASE DO ,10SUB#1 <- #176
       DO READ OUT ,10  
       DO COME FROM (999)  
       DO (500) NEXT  
PLEASE DO ,11SUB#1 <- .5  
       DO READ OUT ,11
       DO (500) NEXT  
       DO ,12SUB#1 <- .5  
PLEASE DO READ OUT ,12
PLEASE DO .6 <- '?"!10~.10'~#1"$#1'~#3
       DO (50) NEXT
PLEASE DO .7 <- '?"!11~.11'~#1"$#1'~#3  
       DO (70) NEXT
       DO .2 <- #1
       DO .1 <- .11
PLEASE DO (1010) NEXT  
       DO .11 <- .3
       DO (600) NEXT  
       DO (101) NEXT  
(70)   DO (71) NEXT
       DO .11 <- #9  
       DO .2 <- #1
PLEASE DO .1 <- .10
       DO (1010) NEXT  
       DO .10 <- .3
       DO (600) NEXT  
       DO (101) NEXT  
(71)   DO RESUME .7  
(50)   DO (51) NEXT
PLEASE DO FORGET #1
       DO .2 <- #1
       DO .1 <- .11
PLEASE DO (1010) NEXT  
       DO .11 <- .3
       DO (600) NEXT  
PLEASE DO .7 <- '?"!11~.11'~#1"$#1'~#3  
       DO (80) NEXT
       DO (101) NEXT
(80)   DO (81) NEXT
       DO GIVE UP
(81)   DO RESUME .7
(51)   DO RESUME .6  
(101) DO FORGET #1
(999) DO FORGET #1  
(600)  DO (500) NEXT  
       DO ,13SUB#1 <- .5  
       DO READ OUT ,13  
       DO RESUME #1
(500)  DO ,30 <- #1  
       DO .1 <- .10  
       DO (1020) NEXT  
PLEASE DO ,30SUB#1 <- ,20SUB.1  
       DO READ OUT ,30  
       DO .3 <- .1  
       DO .1 <- .11  
       DO (1020) NEXT  
PLEASE DO ,30SUB#1 <- ,21SUB .3 .1  
       DO READ OUT ,30  
       DO .5 <- ,22SUB.1  
PLEASE DO RESUME #1


 
ou le terrifiant Malbolge
 

b'`;$9!=IlXFiVwwvtPO0)pon%IHGFDV|dd@Q=+^:('&Y$#m!1S|.QOO=v('98$65aCB}0i.Tw+QPU'7qK#I20jiDVgG
S(bt<%@#!7~|4{y1xv.us+rp(om%lj"ig}fd"cx``uz]rwvYnslkTonPfOjiKgJeG]\EC_X]@[Z<R;VU7S6QP2N1LK-I
,GF(D'BA#?>7~;:9y16w43s10)p-,l*#(i&%e#d!~``{tyxZpuXsrTTongOkdMhg`Hd]ba`_^W@[ZYXW9UNSRQPOHMLK
J-++FE''<A$?>=<;:387xw43s10/(-&m*)('&}${d!~}|^zyxwvutmVqpiRQlkjiKafedc\E`_^@\[ZYX;V9NMRQ42NG
LK.IH*F?DCBA$#>7~;{{8xx5uu2rr/oo,ll)ii&f|e"!aw`{z\r[vXnmVTpongPkNihgJ_dcFa`B^]\UZ=RWV8TSLQ4O
N0LE.IHA)E>'BA:?!7~5|38y6/v321q).-&m*)i'&%|{d!~}_{zs\wvutsUqTonPlOjiKgJedFbE`_A]@[Z<X;VU7S6Q
P22GL/JIB+FEDC%;@?>7~;:987w5v32r0)p-,+k)('~g$#"b~w|uz]xwvutsrqTinQlOjLhgfeH]bE`CB]\>ZSXWVUTS
RQPON1LE.I,+*((&&$$""~~||zzxxv4u210/(-n+l)(i&g$ddy~}`u^]\ZvutVlUjSQQOOdMKgfeG]F[DBB@@>><<:VU
T6L5JO200EJ-HG*E>'B%$9>=<|4{2y05v321r).o,mlj(igg|#d!~}`uz]x[ZotWUUjoRmlkNibKJIGGEEZ_B]\?Z=XW
PU876442NM/KD-B+))''%%##!!}}{{yyw5v32s0q.-&+l)j'hff{"caav{^yxwZutslUpSnQOOdiLgfHHcba`Y^A\?Z=
;;PU8SRQ4ONMLEJ-,+))''%%##!=<;{3z1xvvttrrppnnll#j!&g$#d!b}|{zyr[vYtsrTjShQfkNihgJedcba`Y^A\?
Z=;WV9TSRQPOHM0K.-++)ED&B;$9"~<;:z2y0wuussqqoom+ljj!&%$dzcx}`{zy\wvutsrqjSnQPNNLhgIedG\EZCA]
\[=S<Q:886644220L/JIHA*)(&&$@?!=6}4{yywwuus10/o'n%lj('&f|ezcaa__]][wvuWmVkTRnQlkNLLaJIHFbE`_
B]@U>Y<;P9775533H1/KJ,HA*?(&&$$">=<|4{2ywwu321q)p'nl*k('gg${"c~a`^z]xwvYtmrUpSRPlOMMbK`IGGEE
Z_^]?U>S<::8866442200.JIH*@)>C&A@?"=<5|{8y65vtt10/(-n+lk"'&%e{dyb``^^\\ZvutVlUjSQmlkMcLaJHHF
bECCX]\[=S<Q:886R5PON1LKJCH+F)(=BA@"8!6}{{2y0543s+r)pnnlljjhhffddbb`|_zyx[vutslUTSQQOOMihgI_
H]FDDBB@@>><XWV8N7L5331MLK-C,A*(D'BA$""=<;:927xwvt2s0/p-n+*)('~%f#dcaa__]y\ZZotsrTjShQOkjiKa
J_HFFDDBB@@>><X;99NS6QPO2MLKJIHA*E('%%:#8=~;:9z7654321*/p-,m*k(hh}$#dyb}`{zy[qZoXVVTTRnmlNdM
bKIIGGEECCAA?[>YXWP9T76K42200.JI+G@)>'%A@?!7~5|zzx654t,s*qo-n+*jj!h%fec!b}|{^s\[vYWWlqTonQlO
jchKfIHFFDDB^]\>T=R;P9NS6QPO2MLE.-,*FED&<%:#!!}}{{yyw543s+r)pnnl*kii~%f#"caa|{zsx[ZutVrkTinQ
lkNiLgfe^cFEDYBW\[=YR;P977553O200EJIH*@)>C&$$9>!<;|9z7654-tsrppnnll#('&f|ezca}|{]s\qZXtsrTjS
hQOOMihgI_H]FDDB^A\[><<WVUTSLQ43NM/KD-BG*ED'B%@?>=<5:{zy0wuussqqoomm$ki'hff{"c~}`{t]\wvuWmVk
pSnmPNNcLKfIGG\aD_^A\?T=<;99775QPO1G0E.,HG)E>'<%#?"~~5:98x0w.ussq/pnn%*k('hff#z!ba|{z\r[puXs
rUpSnglONihgI_H]FDDYBW\[Z<R;P977553311//--++))'CBA#9"7<}:9z7x54-t1rq(ommkkiiggeecca}|{]s\qZX
tsrTjShQOkjiKaJ_HFFDDB^A\[==XWVOT7R542N1LKJ-HGF?D'B%$""7~5|zzxxv43s1*q(ommk)jhh}$e"!~a|{zyr[
vYXVVTTRRPPNNLLJJHH]FD`_A]V?TY<WVU8SRQPOHM0K.-++))''%%#?"~~5:9y70w.us1r/.-n+*)('~%fedbbw`u^\
xwvXnWlUSSQQOOMMKKIIGGEa`_AW@UZ=XW:U8SRQPONG0/.C,*FED&<%:#!!}}{{yywwuussqqo-n+*k(!h%f#"!aw`u
^\\ZZoXVrqpRhQfOMMKgfeG]F[DBB@\[Z<R;P97S6QP22GL/J-,*F)DCB%:?"!~||zz1x/432r*q(ommkkiiggeeccaa
_{^yx[vYtmVqTSQQOOMMKKIeHFF[`_A]V?T=;;9977553O2MLK.IHAF)('%%##!=~||3876v.u,sq/pnn%*)(h~g|ecc
aa__]][[YuXsrUSSnmleNMhgfH^G\aD_^A\?ZYXQ:98M644220LK-IB+@)''%%#?>=}5|3zxxv4u21r/p-,+*#(i&g$#
c!~av_t][[YutsUkTiRPPNNLLJJHHFFDDB^A\[Z=XWVUTM6Q43HM0..CH+FE''BA@?>=6;|9z765u-t+0q.-,m*)('&%
|#dcb``uzy[wpYnWUUSonmOeNcLJJHHFFDDBB@\?ZY<W:UTSRQPOH1L/.,,**(D'%%:?>=}5|3zxxvvttrrppn,m*)ii
&%$#"!~}v{^y\wvuWmVkpSnmlOjihgfedc\aD_BAV[Z<XQ:OT7RQPI2M0/--++)EDC%;$9"~~||zz1xvv-trrppn,m*)
(!hg$#c!xav_]yxwYoXmVTTRRPPNjihJ`I^GEECCAA??=Y<::OT7RQ4O2G0K.-BGFE'=&;$9"7<}:98y6/4ut10/o'n%
*kii~%f#"c~a|{t]x[ZXXVrqpRhQfOMMKKIIGGEECCA]@[Z<<WVUNS6Q431M0KJI,GFE>C&%$""7~|:9y70w.us10/o'
n%ljjhhffddb~a|{^\\wvutmVUTRnQlkNiLgfed]FE`_A]V?TY<WV977RQPONMF/.I,**?D'BA$?"=<;:981x5vussq/
.-m%l#jh&%$dzcxa_{zy[qZoXVrqpRhQfOMMKgJHH]ba`BXAV?=Y<WV88SRQPONMFK.I,+)E(CBA$?>=<;:927x5vuss
qqo-,+k#j!hffddbb``^^s\qZXXVVTpSQQfkNihg`IHcbaCYBW\?==RW:UT755J321FK.IH+F)>'B%$9"~~||zzxxvvt
210p(o&mkki'&%e{dyb``^z]xwvYtmrUTSQmlkMcLaJHdcbDZCXA?[><<QVUT6L5J31MLK-C,A*((&&$$""~<}:9zxx5
4-tsrp.o,+l)j'&}f#d!~}_u^s\ZZXXVrqpRhQfOMihJf_H]FDDB^]\>T=R;99775Q4ON00KJIBG*E('%A$?>=~;:927
xwvttr0/.n,m$)('g}f{"c~}`{^yxwvoXsVUSShQOkjLhaJ_HFba`BXAV?=YX:VO8M644220L/JI++FEDCB;@#>!<;:z
2y05v321r/.-,+$)j'hgeeccaa__]][wZXXmVkTiRPPNjMhgfIdcba`_XA@?==;;9977L5J31MLK-C,A*((&BA@"8!6}
{{y765u-t+rppn,m*)j'h%$#"!~}v{^y\[YutsUkTiRPPNNLhgfH^G\ECCAA??==;;9UTS5K4IN1LKJC,G*)''%%#?>=
}5|3zxxvvttrrppnnl*k('gg|e"c~a__ty\wvuXmVUTinmlNdMbKIedFb[DYB@\?==RWVU7M6K42N1LK.,,G@E('&$@#
>=~;|927xw4uss*/.n,%l#(i&%f#d!~w`{^][[YYWWlUjonmOeNcLJJHHFFDDB^A\[==XWVOT7R542N1LKJ-HGF?D'&%
:?"=<}:3z7xwuussqqo-,+k#j!h}fddb~}_{t]r[YYWWUqpoQgPeNLLJJHHFFDDBB@@>Z=XWV9N7R54I2GLKJ,B+@)''
%%#?>=}5|3zx654t,s*qoommkkiig%f#"bb}v{^y\wvuWmVkpSnmlOjchKJIGGEaD_^A\?ZYR;V986RQP2H1F/--++))
''%%##!=~;:zz765.3t1rq(-,+k#j!&g$#"c~}|uz]x[ZXtsrTjShQOOMMKKIIGGEECCAA?[><<QV9TSR5PONMF/.-+G
FE'=&;$""~~||zzxxvvttrrp.o,+ljj'&%$#z!ba|_]]rwZutWrUponmlejMLKIIGGEECCX]\[=S<Q:8TSR4J3H1F/DI
,GF)D'BA@?>=6}|9zxx/432r*q(o&mk)j'&g$e"!~}|{zsx[vYXVVTponPfOdMbKIIGG\ECCAA??=YXW9O8MR5PONG0K
.I,**?D'BA@9"=~}4{yywwuussqqoommkki'h%$ddyb}`_ty\ZZotsrTjShmPkjiLaJIHFba`BXAV?==;;9977553311
//-IHG)?(=B%@?"=~;49z7x543s+r)pnnl*)(h~g|ec!b``uzyxZpYnWUqpoQgPeNLLJJHHFFD`C^]??ZYR;V986R5PO
N1LKD-,+))''%%##!=<;{3z1xvvttrrppn,mkk"'&f${dy~a|{^\\wvunsVUpSQQfkNihKfIdcb[`C^A\[Z<R;PUT6RQ
4I2GL/JIH+FEDC<%@#"~~|:98x0w.ussqqoommkkiigge#"!aw`uz]xwYYtsrqpinQlOjMKK`eHcbaD_^]\[TY<;:O86
R5PO2MF/J-,A*((&BA@"8!6}{{yywwu3trr).-,l$k"igge#dbbw|{z\r[pYWsVqpRRgPkNMKgJedcF[D_B]\>ZS<QV9
TS55POH1L/J-++@E(CBA$?>7~;|{y76v4-t+rp.-,l$k"iggeecca}`{z\\wvunsVqTonPleNchKfedGba`Y^A@?==;W
VU7M6K42N1//DIHG)?(=&$$""~~||zzxxv4u21rpp-,+*#ji&geez!b}|_z]xwvunWrUpSQQfkjiKaJ_HFbE`_AA\[ZY
XQV9T764P3NML/JIHGF?D'&%##!=<;{3z1x/v-2s0/p-n+*)('&}f#d!b``uz][[pYnsrqSiRgPNNLLJfedF\EZCA]\[
=S<Q:886644220L/JI++FEDCBA@9>!<}:{yy05v321r/.-,+*)"'hg$e"!b``{zyxwvutmVqToRPlkNihgfedcb[DCBW
@>><<::8TSR4J3H1//--++))''%A@?!7~5:{87x5.u2s0/o-&m$)j'&ff{"c~a|_]]rwZutsVkpSnQPeNchgfH^G\ECC
AA??==;;997S6QPO2MF/J-,A*((&&$$""~~||zzxx/4u210q.-&+l)jig%$d"ybw|_zyx[vunsVUTRnmlNdMbKIIGGEa
`B^W@U><<::88664PON0F/DI,GF)D'BA@9"=~}4{yy0wuus10/o'n%ljjh&%$dzcxa__]][wvXtmVkTRRPPNjMhgIIdc
baZ_B]@[ZY;Q:OT7RQP3NMLKDI,+FED&<%:#!=<|:3z1xvvttrrppnnlljjh&g$#d!b}|{zyr[vYXVrqpRhQfOMMKKII
GGEECCAA??=Y<WV88SRQPONGL/J-HGF(>'<A$?>=~;:9876/4utsq/pnn%*)i'~g|ec!b}|_z]xwvutsrkToRQOkjiKa
J_HFFDDBB@\?==RWV8TM6K42NML.D-B+))'C&A@""=<;:9876/4u2s0/o-&m$)j'&%f#"!~}|{zsx[vuXsVqSShmlOdM
hKJ_HFFDDBB@\[Z<R;P977553311//--++)E(CBA:#"!6}{{yyww.us10/o'n%ljjhhf$#"bxav_]yxwYoXmVTTRRPPN
NLhKfeHFF[DC^]\>T=RW:UT7R5J32M0KJ-++F?D'&A@">7~5:{87xvv32+rq.omm$)j'&g$e"!xa|_^\xwYunWlUSonm
OeNcLJJHHFFDDBB@@>Z=XW99TSRKP3N10.J-HGF)DCB;@#"!6}{{y765u-t+rppn,+*j"i~geeccaa__]][wZutWUUpo
nmfONihgI_H]bE`_B]@[ZYXQ:9T755JO200E.CHGF(>'<A$?>!<}:9876/4utsq/.-m%l#jhhf$#c!xav_]][[YuXsrU
pSnmlkjchKJIGGEa`_AW@U><<::8TS5QJ3H1/KJI+A*?(&&$@#>=~||9876543,1rq.-m+$k"'h%$e"c~}|{zyxqvYXs
VTTinmlNdMbgJedGbE`_^]\[ZYR;:9775QPO1M0EJ-HG*E>'B%$9"~~||zzxxvvttrrppn,m*)ii~%f#d!b``uz]xwvY
nsVqTSQQOkjiKaJ_HFFDDBB@@>><<::886R5PON1LE.-H+))>'<A@?!7~5|z8y65v3t10).onmkkiiggeec!~}_u^s\Z
ZXXVrqSohQfOMMKKIeHcbE`C^]V[>Y<;P977553311//--++)EDC%;$9"7~5:{876w432+rqpnn%lj('g%|ezcaa__]y
\wvYtWrqpohmPkNMKKIIGGEECCAA??==;W:88MR5PON1LKJIHA*)(=&$$">!<;|zz765432+0qpo&+*)i!h}fd"!~`v_
t][[YutsUkTiRPPNNLLJJHdGbaD_B]\[ZYXQV9T76KP3NM//JIHGFED=&A$#8=~||3876v.u,1r/.-n+*)('&%|edcx}
|^zs\qZXXVrqSohQfkNihKf_HGF[`_^@V?TY<::OT7RQ4OH10K.IH+F)>'B%@#!=<}4{z765u-t+r).o,+l)j'~%fedb
~a__ty\wvYtWrkpSRQfkNLLafIdcFaD_^W@?Z=;;PU8SR533NMLEJ-,G*((=B%@?"=~;:927xw43s10q(-,+k#j!hffd
db~}_{t]r[YYWWUUSSQQOkNihKfIdcbaZCBA?[><<QVU7SL5J311//--++))''%%#?"=<}{{87654-2srqo-n+*k(i&%
$#"y~a|_^sxwYunWlUSSQQOkjiKaJ_HFFDDBB@@>><<:V9TSR5PONMLKD-,+@)>C&$$9>!<;|92yx543s+r)p'n%lj(i
&%f#zc~a`u^\\ZZXXVVTTRRPPNNLLafIdcbEZ_B]@?=Y<::OT7RQP3HM0K.-BG*((=B%@?>!<5|{z1xvvt2sqq(-,+k#
j!hffddbb``^^\\ZvuWslUjoRmlOMMhg`eHGbECCX]@[Z=X;VUNS6Q4O200EJ-++@E(CBA$?>=6}:{8yww.3t10pp-,+
*#(i&g$eccx}`{zy\wvutmrUpSnQOOdiLJJ_dGba`C^]\[ZS<W:U866KP3NM//JIHGFE>C&A$?"~~5:{876w43210/(-
n+l)jhh}$eccx}`{zy\wvutsrqjSnQlOMMbgJedFFa`_^]\[ZSX;V9T755JO2MLK.IHGFEDCB;@#"!6}{{y765u3t+0q
.-n+$k(i&geez!b``uz]xwvYnWrUpSQQfkNihJJe^cFaD_B@@UZ=XWV9TMR5P3200..,,**((&&$$""~<;:z2y0w.3t1
0/p-,%l)jiggeecca}|{]s\qZXXVVTponPfOdMKgfeG]F[DBB@@>><<:V9TS55PONGL/J-H+))>C&A@?"=<;49zy6w43
tr*qp-n+*kii~g$e"ca}|_t]x[vuWslUjoRmlNNibgJeHcFDDY^A\[Z=XQV9T76K4INML.D-B+))''%%##!!}}{9z765
v32+rqp'nllj('&f|ezca}|{]s\qZXtsrTjShmPkjMKKfed]bEDCA]@[Z=X;VUTMR5P320LKJ,B+@)''%%##!!}}{{yy
wwu321q)p',m*)(i&%$#zc~a|{]yr[pYWsVqpohQlOjMKK`I^cbD`YBW\?ZYX;PU8S653311//--+GFE'=&;$""~~|:9
y70w.ussqqo-n+*)j!&g$e"!~`v{zyx[voXWrUpoRmPkdMhKJHdGEEZ_^]?U>S<:VUT6L5J311//--++))''%A$?>~~;
:38y6wvt2s0/.o,+$)j'hgeeccaa_{zy[qZoXmVTTRRPPeNLLJJHdGba`C^]\U>=X;VU86L5P32GLKJ,B+@)''%%##!=
~||3876v.u,sqqo-,+k#j!&g$#ccx}`{^y\ZZotWrqpShmPkNMKK`edFb[DYB@@>><<::88664PON0F/D-BG*EDC&A:#
"!}}{{yyw543s+r)p'n%*k('h%f#"y~a|_^\\ZZXXmrqpRhQfOMiLJJ_dcEaZCXA?[ZY;Q:O8664PO1MF/DI,GFE(CBA
:#"=~||38y65v3,srq(-n+*k(i~%f#dcaav_t][wvuWmVkTRRPPNNLLJJHHFFD`CAAV[>YXW:UN7R542N1//D-BG*((=
B%@?>!<;49z7x5vtt+r).-,l$k"'h%$#d!~w|_z]\ZZoXVrqSohQfOMMKgfeG]F[DBB@@>ZYX:P9N75QPO1G0E.,,**(
(&B%@?!!<;:3z7xwu3t10/p-,+$kj'h%$ecc~}|{ty\wZutVrkTinQlkMMhgfed]FaD_B@@UZ=XWV9TSRQPI21LKJ,B+
@)''%%##!!}}{{yyw5v32sqq.-,+*)"'hg$#"bxav{^yx[vYtsrqpohmPONchKII^cFa`C^W@?Z=;;PU8SR5PI2M0/D-
++)EDC%;$9"~~||z876v.u,sqqoommk)j'&ff{d!ba_{^yxwZoXWVkTinmlNdMbgJedGbE`Y^A@?=YXW9O8M6442NM/K
D-B+))''%A$?>!<}:38y6wv-21q/(o&mk)(h&}f{dbb``^^\\ZZXXVVTpSnmOOjihafIdGFD`C^]\?ZYXQV9T7R533HM
LK-C,AF)DCB%@?>=6}|{2ywwuuss*q(om+*)i!h}fddbb``^^\\ZvYtsVTTonmlkdiLKJHdGbaD_B]\[ZYRW:U87L5J3
H1/KJI+A*?D'BA@9"!<}{{2765u-t+0q.-n+l#jih}f{dy~a|{^y\qZuXWlUjonmOeNcLJfIdcbE`Y^A\?><<::88664
PON0F/D-++))'CB$@9"7~||zzx6w432s0).onmk)(h&}f{db~}|^t]r[YYWWUUSSQQOOMMKgJHH]bE`_B]@[ZS<W:977
L53ON0LE.C,**((&B%@?>!<;:38y6w432r*/.-,m*)('~gf#d!~a|_zyxwpYXWUqpoQgPeNLLJJHHFFDDBB@@UZ=XW:U
8SRQPOHM0/.,HG)E>'<%#?"~~5:98x0w.ussq/p-,m*k('&%${"c~a`u^\\qZotWrqSSnmlkjibKfIdcbDZCX]@[ZY<W
VUTSRK4O21//--++)E(&&;@?!=6}4{yywwuussq/p-,+$kjiggeec!~}_u^s\ZZXtsUqjShQOkNihKII^cFEDY^]\>T=
RW:UT7R5JO21L/JI,G*E>'&A$?>!<}:3z7xwu321q)p'nlljjhhffddbb``^zyxZpYnsVqpRRmlejMhKfIGG\aD_^]@[
ZSX;:977553311//--++)E(&&;@?>~6}49z76w4u210)po,mkk"'h%$ecc~}|{ty\[vuWslUjoRmlOjMhgfe^cFaDCXA
?[><<Q:O8MRQP2H1F/--++))''%%##!!};|987x54321*qp-n+*ki!hgfd"!~`|_ty\wvYtmVqTSQmPkjiLafIHG\ECC
AA??==RWVU7M6K42NML.D-B+))'CBA#9"7~||zzxxvvttr0q.-nll)"ih%fddy~a|{^y\wpYXWUUSonmOeNcLJJHHFba
`BXAV?==;;997S6QP311LKDI,+*(D'BA$?"=<5:{z7x54uss0/.'n+l)jh&%f#"!xa`{z\xqZotWrqTRRmlkjchKJeHF
F[`C^]@[>YXWVOT7R542200..,HGF(>'<%:#8!}}{987w/v-2sqq(-n+*)j'&%$#zcb}`{z]x[vutsrqjoRQlOjiLgJe
dcba`Y^A@?=YXW9O8M6K4I20L/--BGFE'=&;@#>=~;|9876543,s0qpnnlljjhhffddbb`|_]]rwZutVVqponmlkjchK
fIdcbDZCX]@[ZY<WVUTSRQPIN1L/.,HGF(>'<%:#!!}}{{2ywwuussq/pnn%*k('&}f#d!b``uz]xwvoXsVUjonPlkNc
LafedF\EZCAA??==;;997SRQ3I2G0..,H+FED'<%$#!!};:9y1x/vttrrppnnlljjh&g$#dbb}v{^]\ZvYtsVqTohmPO
NchgIe^G\EC_^]?U>SX;VU8S6QPI210..,,*FED&<%:#!!}}{{yywwu3t10qoo,+*#(ihge#d!~a|_zyxqvYtWVTTinm
OkdMbKIedFbaDY^]\>T=R;997SR4PI2G0..,HG)E>'<A$?>~~;:981x5vus1r/.-n+*)(!hg$e"!b``{zyxwpuXsVqTR
nmPkjihg`eHcFa`B^W@UZ=XW99TSRQPOH1L/J-++@E(CBA$?>=<;:3zy654t,s*/p-,m*#jih}$#"b~av{^yx[voXWVT
TRRPPNNLhgfH^G\ECCA]\[=S<QV9TS644IN10K.,,AF)DC&A$9>!~;|98y6w4-ts0q.-n+l)"i&gfd"!~`v_t]r[pYWs
VqpoRmlejMLKIIGGEECCAA??==;W:88MRQP2H1FK.IH+F)DCB;$?"!6;|zz16w43ss0/.-&+l)j'hff{"c~}|_zyxwpu
XWVTpSQQfOdMbgfeG]F[DBB@@>><<::88664P311FKJI+A*?D'BA$?"=<;:92yx54t2+r).o,+l)"i&gfd"!~`|_ty\w
vuXmrUTShQOOMMKKIIGGEECCAA?[ZY;Q:OT7RQ4O2MF/.-B+@EDC%;$9>!<;|9z76/4uts*qoommkki'&f${dyb`|{]y
r[pYWsVqpSnQlkdiLKJ_dcbDZCXA??==;;99775QPO1G0E.,,*F)''<A@?!7~5|z8y65vtt10/(onmk)j'&g$e"!~w`_
zyxZpYnWUUSonmOeNcLJfedF\EZCXA??=Y<WV977RQPOHM0/J-++@E(CB%@#>=<;49zyxvvttrrp.-,l$k"iggeeccaa
__]][wvuWmVkpSnmPkNihgfe^GbEDYBW\[Z<R;P97S6QPO2MLKJIHAF)D'&$$""~~||z876v.u,sqqoom+*j(!h}fddb
b`|_zyx[vutsrqjoRQlOMMbgfeG]F[`C^]@[T=<WV8TS6K4IN1LK.IB+*)'CBA#9"7~||zzx654t,s*qoommkkiigge#
d!~a__t]\wvXtmVkpSnmPkNcLKJHHFFD`_^@V?T=;WVU7M6K42200..,,**(D'BA$""=6;|{zx6w43t1r/(-nmljjhhf
fd"caav{zy[qZoXVrqpRhQfOMMKgJHH]ba`BXAV?=Y<WV977RQJ321/K.IH+F)DC<%@#"7~||zzxxvvtt+0qoo&+l)('
h%$#z!b}`_]][[YYWWUqTRRglkMibK`IGcFa`_B]\[TY<W:9N7L533HMLK-C,A*((&&$$""~~||zzx6wuu,1r/.nn+*)
(!h%f#"!aw`uz]xwvYtsrqjSRQOkjiKaJ_H]F[DBB@@>Z=XW:U8SRQPOHM0/.,,**((&&$@?>~6}4{yyw5vtt+0/.n&m
$kiig%$#cybw|_]]rwZutWrUponmlkdMhgJeHcEEZ_^AV?Z=XW9UN7LQ422GL/JIHA*E('%%##!!}}{987w/v-trrppn
nlljjh&g$#ccx}`{^yxZvoXmrUponQfkNMLaJHHFba`BXAV?==;WVU7M6K4220L/--BGFE'=&;@#>=~;|92y6wvttrrp
.-,l*k"'h%$#d!~w|_^yxZvoXmrUSShmPkjMhKfed]FaD_^]?U>S<::8866442200..,H+FE''BA@?8=~;|{y7x543t1
0/.',m*kjh&geez!b}|{t]\wZXXmrqpRhQfOdMKgfeG]F[DBB@\[Z<R;P977553311//-I,**?D'BA$""7~}:98x0w.3
t10q.o&m*kjhhf$#"bxav_]][[YYWWUUSSQmPkjLLg`eHcFaDBBW\?ZYX;VOT7R54I2GLKJ,B+@)''%A$""7<;:z2y0w
uus1r/.-n+*#jihf$e"!b``{zyrwZYXmrUSShmlkMcLaJHHFFDDBB@\?==RW:UT7R5PONGL/J-,**(DCB$:#8!};:9y1
x/vttrrppnnlljjh&geez!b}|^^yxwvoXsVqpoQgPejMhgfIdcbaZCB]@[Z=;;VUTSRKP3N1LK-IB+@E(CB$$?>=<;:3
z7x5vtt+0q.-,m*)('&%|e"!b}`{]]rwvYnWVUSSQQOOMihJf_H]bE`_B]V?Z=<Q:8T755JON0LE.C,*F)DC%%:?"=~;
:9y1x/4u210q(-nml#jh&g$#dbb}|uz]\wvuWmVkpSnmPkNihafIdGFDDBB@\?==R;PUTS5K4I200.JIH*@)>'%%##!=
<|:3z1xvvttr0q.-mm*)(!h%f#"!aw`uz]xwvYtsrkTSRPPNNLhgfH^G\ECCAA??==;;997S6QP311LKJIBG*)DCB$:#
8=~;:{8y6543,1rqp'nl*)i'~g|ec!~}_u^s\ZZXXVVTTRRPPNNLhKfeHcFa`_^]V?>Y<WV97M6542NML.J-BG*ED'B;
$?"!}}{{y76v43t+0/o-&m$kiig%fddy~}_{t]rwZutVVkpSnQPNjMhgfI^cFE`CAAV[ZY;Q:OT755JO2ML/J-HA*)D'
BA$""=<5:{8y654t,10/.o,+$)jihffddbb``^^\\ZZXXVrqpRhQfkNLLafIdcFaD_^]V?>YXW9O8M6442200.JIH*@)
>'%A$?>!}}:98705vutr0q.-n+l)('&}$e"cbw`^zyxZpYnWUUSonmOeNcLJJHdcEaZCXA??==;W:UT66QPONMF/J-HG
F(>'<A$?>=~;:9870w4ut+0/o-&m$kiiggeeccaa__]yxwYoXmrUponQlkjihg`eHcFECCX]@>>SX;VUT7RQPONMFK.I
,+@E(&&;@?>~6}49zxx/4u210)p-n+ljj!&g$#"yb}`_t][wvuWmVkTRRPPNNLLJJHHFFDDB^A\[Z=R;:97SRQ3I2G0.
.,,**((&&;$">=};4{2yw5v32s0q.',m*k('g%|ezcaa__]][[YYWWUUSSQmPNNchKfeGGbaZC^A\[Z<R;PU8SRQ4ONG
0/JIH*@)>'%%:?>=}5|3zx654t,s*qo-n+*k(i&%${"cb}|{]s\qZXXmrqSohQfkNihKfIdcb[`CBAV?=YXW9O8MR5PO
200KJIHA*)(=B%@?"=~;:981xwvt210p(o&+l)(i&}f#dcaa__]][[pYWWUqpRngPeNLLJfedF\EZCAA??==R;9U8SRQ
4IN10/--++)E(CB%##>7~}|3876v.u,sqqoommkkiig%$#cybw|_zy\wZunWVUSoRPPejiKg`I^GEECCAA??=YXW9O8M
64P3NM0..IHAF)('%A$?>!<}:927x5vussqqoom+*j(!h}fddb~}|^t]r[pYnWUqTonPPkjibKfIdcbDZCX]@[ZY<WVU
N7653ONM/K.CH+FE(C&A@?>7<}|{yywwu321q)p'nlljjhhf$#"bxav_]][wZXXmrqpRhQfOMMKgJedGbE`_^]\U>=X;
VU86L5P32GL/JIHA*E('<%:#8=~;:9z16wvus10p.-n%*)i'~g|ecca}`^^sxwYunWlUSoRmlOjMhaJIHFba`BXAV?==
;WV8TM6K4220LKJ,B+@)''%%##!!};|98yww43,1rq.omm$)j'&g$e"!x}`{^yxwYoXmVTTRRPlkjLbK`IGcbaCYBW@>
><<::88664P3NM//JIHA*E(C&$$9>!<;:{876/vutrrppn,m*)jhh%$#"y~a`_tyxwYoXmVTTRnmlNdMbKIIGGEECCA]
@[Z=X;VUTSLQ4O21//-IHG)?(=&$@?>~6}4{yywwuussqqo-n+*jj'&%$#zc~a`^z]xwvYtsrqpiRmPkjiKaJ_HFF[DY
B@\[=YR;PU8SRQJ321/K.,,AFED&<%:#!!}}{{yywwuussq/p-,mkk"'hgfd"c~}`{^sx[ZYWsrqSiRgPNNLLJJHHFFD
`_^@V?T=;;9U8SR5P3NMLKJC,+*((&&$$""~~5:9y70w.3t10q.o,+*)('~%fe"caav_ty\ZZotWrqToRmlkjihafIdG
F[DBB@@U><XWV8N7L53311//--++))'C&$$9>!<;:{8765432+rqpnnl*)(h~g|eccaa__]][[YutsUkTinQlkNibKJe
HFF[`C^]@[T=X;:88M64PON0F/D-++))''%%##!!};|98xx/4u2s0qoo&+l)('h}$edcx}|^zy\qvYtsVqTohQlOjMKK
`eHcbDD_^W\?Z=X;99NS6QPO2MLEJ-,G*((=BA#?8!6;|98y6w432+r/p-nll#(i&%ee"!~}v{^y\wZXXmrUponQlkji
bgJIdGbaD_B]\[ZYR;VU8S6Q332MLKJIB+F)D'%%:?"=<||987654-2s0q.omm$)j'&%f#"!~}|uz]x[vYWWlqpoQgPe
NLLJJHHFFDDBB@@>><X;VUTM65PON0F/D-+GFE'=&;$">=};4{2ywwuussqqoommk)('g}f{"c~}`{^s\wZYWsrTpiRg
lOjiKKf_dGbE`CAAV[>YXW:UNS65P311FKJ,HA*?D'BA$?"=<5|9z7xvv-2s0/oo,+*#(i&g$eccx}`{zy\wvunsVUpS
QQfkjiKaJ_dGbaD_B]\[ZS<W:U866KP3NM//JIHGF?D'B%@#!!6;|987x54321*/po,+*j"i~ge#"b~w`u^\\ZZXXVVT
TRRPPNNLhKfeHcFa`_^]\U>Y<W:88MR5PO11LKJIHGF?D'B%@#!!6;|987x543210/(-nm*kii~%fddybw|{z\r[puXs
rUpiRmPOMMbgfHd]F[DBB@\[Z<R;P977553311//--++)E(CBA$9"!~5|zzxxvv-21q/(o&mkkiiggeeccaa_{^yx[YY
tmrUTonmOeNchKfeHcFaZ_B]@[><<QVUT6L5JO2MLK.IHA*)(&BA@"8!6}{{yywwuussqqoommk)j'&gee"!~w|_^y\Z
ZotWrqToRmlkdiLgJIGGEa`_AW@U><<::8866442200.JIH*@)>C&A@?"=<;:3z7xwuussqqoommkk"iggeec!b``uzy
xZpYnsVqpoRmlkjibgJIH]FDDY^]\>T=R;9977553311//--++)EDC%;$9>!<;|9z765432+rq.o,+l)j'&%$#"!x}`_
^s\ZZXXVVkTRRPlkMibK`IGGEECCAA??=Y<::OT7RQ4O2MLKJIHGF?(CB%@#>~~5:9z1x5vussqqoommk)('g}f{dbb`
`^^\\ZvYWWlqTonmfONiLgfIdG\aDC^A\[>Y<QV9875QPO1G0E.,,**((&&$$""~~||z876v.u,1r/.o,m*#j'h%fddy
~a__t]r[puXsrqTonglONiLJJ_dGEEZ_B]\?Z=XWVO8S6Q422GL/--BG*EDC&A@?>7<}|{yywwuussqqoom+ljj!h}$e
"!b}`{zyxwpYtWrUSShmPNNchKfedGba`_^]V[>=<:VUT6L5J311//-IHG)?(=&$$""~~||z8yww.321q)p',m*)j'h%
$#"!~}v_z]x[YYnsVTTinQlkjMhgfedcbaZ_BA@U>S<QVUT6L5JO2ML/JC,G*)>'%%:?>=}5|3zxxv4uss*/.n,%l#jh
hffddbb``^^\x[YYnsVqpoRgPONLLJfedF\EZCAA?[Z<XQ:O86644220L/JI,**E>C&%@#!!6;|98y6w4-2sr/.-m%l#
jhhffddbb``^^\\ZZXXmrUSShmlkMcLafIdcFaD_^W@?><<::88664422G0..,,*F)''<A@?!7~5:{87x5v321*/p-n+
ljj!&%$dzcxav_ty\wvuXsrqpiRQlOMMbgJHH]bE`_B]@[ZYXWPU8S65331MLK-C,A*(DCB$:#8!}}{{yywwuussq/p-
,+l)('&%${dc~a__ty\ZZotWrqToRmlkjihg`eHcFECCXAV[ZY;Q:OT755JO2MLK.IHGFEDCB;$#>!}}49z76w4-ts0q
oo&+l)(i&g|#d!ba__]][[YYWWUUSSQQOkNLLafedF\EZ_B]\[>YR;:U8SR5P3NMFK.I,+@)''%%:?>=}5|3zxxvvttr
rppnnllj('&f|ez!b}|{^yxwpYtWVkTinQlkjcLKfIGG\aDBBW\?ZY<W:OT7R542200EJIH*@)>'%%##!!}}{{yywwu3
21q)p',m*)(i&}fe"caav{^\\qvYtsVqTonglOjMLJJHHFFDDB^]?[T=R;997755331MLK-C,A*(D'BA@#>=<5|{8yww
.3trr).o,+l)j'&%${"cba__]yxwYoXmVTponPfOdMKKIIGGEECCA]@[Z=;;VUTSRQJO210.J-HG*E(CBA@?>7<}:{zx
xv43s1*q(om+*)i!h}fddbb``^^\\ZZXXVrUponQlkjihgf_HGFD`_A]V?T=;;9UTS5K4I200..,,**((&&$@#>=~;4{
z7xvv-2s0/p-&m*kjhhffddbb``^^s\ZZXXVrUSShmlkMcLafIdcbEZ_BA\[Z<R;P977553311//--++))'C&$$9"7<}
:9z7x5.u2s0qoo&+ljj!&g$#"c~}v{^]xwvXnWlUSonmOeNcLJJHHFFDDBB@@>><<:V9TS6Q4ONMF/J-H+))>C&$$9>!
<;:{8765.3tsr)pnn%*)(h~g|#dbbw|_zy\wZutsrqjSnQlOMMbgJHH]bE`_^A\[ZYXWPU87644220LKJ,B+@)''<%##
!!}}{{yy05v32s0)p-nmkki'&f${dyb`|{]yx[putVrkTiRPlkMibK`IGGEECCAA??=Y<WVU8M6Q4311//--B+)ED&B;
$9"~~||zzxxv432r*q(-n+*)j'~%fedbb``uzyxZpYnWUUSSQQOOMMKKIIGcbaCYBW\?ZY<W:UTM65P3NM0K.IHG@E('
&$@#!!6;:9y1x/vttrrppnnlljjhhffd"c~}`{^yxwvoXsVqTRRglOMMbgJedcFa`_^]V[>=XWV8N7L53ONM/K.CHGF(
>'<A$?>!<}:98765.u2s0qoo&+ljj!&g$#"c~}|{zyxqvYtWrqpRhQfkNihg`IdGF[DBBW\[=YR;P977553311//--+G
FE'=&;@#>=<}4{8yxvvttrrppn,+*j"i~ge#"!aw`u^s\qZXtWrqpSnglONMKKIIGGEECCAA??==;WV8TM6KP311FK.I
H+F)DC<%$?"=<}:{876/4ut10/o'n%ljjhhffddbb``^^sx[vuXsVqpongPkNiLJJ_dGEEZ_B]\[>YXWVUNS65P311FK
.,,AF)DC&A$?>=<;:3z7x5vtt+0qoo&+l)('h%$#"!~}v{^y\[YYnWUUSonPleNcLJJHdGba`YB]@[ZY;Q:O866K4IN1
LKJC,+F)''<A$""7~5:98x0w.3t10qoo&+lk(igg|#d!~a|_ty\[ZXXVVkponPfOdMKKIIGGEECCAA??==;WVU7M6KP3
NM0K.IB+F)(&&$@?!=6}4{yywwuussqqoom+*)i!h}$e"!~a|{ty\[ZoXVVTTinQlkNiLgfe^GbE`CAAV[><<QV9TSR5
PONMFK.I,+))'CBA#9"7~|:98x0w.ussqqoommkki'h%$dd!~}|{zsx[vYXVrUponQlkjihg`eHcFECCAA??TYXW9O8M
6442200..,,**(DCB$:#8!};|987x543210/(o,ml#jh&%e#zcxa__]][[YYWWUUSSQmlkMcLaJ_dGba`C^]\[ZYXWPU
8S6QP2NG0E.,H+FED=&%@#!!6;|zz16w43t1r)p-nmkkiiggeeccaa__]][wvuWmVkpSnmlOjchKJeHFF[`CAAV[>YX;
V9TSL5P3N1//DI,**?D'BA@#>=<5:{8yxvv-trrp.-m+$k"igge#d!~``{zyxwpuXsVqpoQgPejMhgfIdcba`Y^A@[ZY
;Q:O86R533HML.JC,A*((&&$$""~~||zzx654t,s*/p-,m*k('&%$#zc~a`^^\\ZvuWslUjSQQOOMMKKIIGGEaDBBW\?
ZYX;VUTSRQPIN10/D-++))>C&A@#>!<;:98765.u2srp.-,l$k"iggeeccaa__]][[YutsUkTinQlkjcLgJI^cbD`YBW
@>Z=XWV9NS6Q4311F/--+GF(D=&;$">=<|4{2ywwuussqqo-n+*)j'~g$e"!a}v_t][[YutsUkTiRPPNNLLJJHH]FDDB
B@\?ZYX;VUNS6Q4311FKJI+A*?(&&$$""~~||zzxxvvt2sqq(-n+*)j'&%|ed!b}|_z]xwvunsVqTSQQOOMMKgJHH]ba
C_^AV[Z<XQ:O866442200..,H+FED'BA@?>7~}:{87x5v3210/.',ml)('g}f{dbb``^^\\ZZXXVVTponPfOdiLgfIdG
ba`_^]\U>Y<W:88MR533H1FK.IHG*EDCBA@?>7<}:9z7x5uu,10q(onm$ki'&%e{dyb``^^\\ZvutVlUjSQQOOMMKKIe
HFF[`C^]@[T=X;VUT6L5J31M0..C,AFED&<%:?"~~5:{876w.utsqq(ommkkii~%$#cybw`^^\\ZZXXVVTpSnmPkNibg
JeHGEECCAA?[Z<XQ:O866442200..,HGF(>'<A$?>=~;:3zy6wuu,1rpp',m*)j'h%$#z!b}`{zy[qZoXVrqpRhQfOMM
KKIIGGEECCAA??=Y<WVU8SRQPI21L/--BG*((=B%@?"=~;:98705v3tsqqo-,+k#j!hf$#"bxav_]][[YYWWUUSSQmPk
jiLgfedcb[DC^A??TY<::OT7RQ4O2MLKJIHG@E(C&A@?!7~5|z876v4u,10/o'n%*k('&g$#"!~}|{t]\[pYWsrqSoRg
lOjiLg`IdGFDDBB@@>><<::O866442N1//DIHG)?(=B%@?>!6;|9zyww.3trr).-,l$k"ig%$#cybw`^^\\ZZXXVVTTR
RPlOMMbgJedcFaZCBAV?TY<WV9T7RQJO2M0/--++)ED&B;$9"~<;:z2y0wuussqqoo&mkk"'h%$#d!~}v_^y\wvYWmVU
pSQQfkNLLafIdcFaDY^A@?==;;997SRQ3I2G0..,,**(D'%%:#8=~||3876v.u,1r/.o,m*#jihffddbb``^zyxZpYnW
UqpoQgPeNcLaJHdGbaD_B]\UZ=X;VUT6L5J31MLK-C,A*((&&$$""~~||zzxxv4u210q.-,%lk(igg|#dbbw|_zy\wZu
tsrkpSnQPNjihJ`I^GEaDBBW\[=YR;P9775QPO1G0E.,,**((&&$$">!<;:{87654-ts0qoo&+ljj!&g$#d!b}|{zyxq
vYtWVkTRRPPNNcLafedF\EZCAA??==;;997755331M0KJIB+*EDC%;$9"~<}{{2y0543s+r).omm$)j'&g$ezc~a`^^\
\ZZXtsrTjShQOOMMKKIIGGEaD_^]@[TY<;:8866442NM/KD-B+))''%%##!!};:z81x/4u21r/p-,%l)j'hff{"caav{
^yxwZutslqToRQOOdihgI_H]FDDBB@@>><<::88664P311FK.IHG*EDCB;$#>!<;|9z76543,1rq.o,+lj"i&g$#"b~a
v{^yxwpYXWUqpoQgPeNLLJJHHFFDDBB@@>><X;99NS6QP3N1F/.-++))''<%#?>~<5|3zxxvvttrrp.-,l$k"'h%$e"c
~w|_^][[putsUkTiRPlkjLbK`IGcbD`YBW@>><<::8866442N1//DI,GF)D'BA:#"!}}{{yy0wu32r0)p'nlljjhhffd
"!~`v_ty\wvYtWrqpinQPkjiKaJ_HFbECCXAV[ZY;Q:OT755JO2ML/J-HGFE>'&%##!!}}{{yyww.ussqqo-nll#('&f
|ez!b}|_z]xwvutmrUTSQQOkjLhaJ_HFbaC_^AV[Z<XQ:O86RQP2H1F/--++))''%A$?>!<}:98765.ut10p.'n%*kii
~g|#d!~a|_zyxwvutmrUpoRmPkMMbgfI^GFEC_^]?U>S<::8866442200..,H+FE(C<%@#"7~5:98x0w.us10/o'n%lj
jh&%e#zcxa__]][[YYWWUqpoQgPejMhgfI^GFEC_B@@UZ=XW:U8SLQ4O21F/--BG*((=BA@"8!6;|987x54-ts0qoo&+
ljj!&g$#d!b}|{ty\wZYWWUUSSQQOOMMKKIIGcbD`YBW\?==RW:UTS6QPONG0/J-HG*E(CBA@?8=~;|987w5v-2s0/.'
nmljj!&%$dzcxa_{zy[qZoXVrqSohQfOMMKKIIGGEECCA]\[=S<QV9TS6Q4I2M0KJI+A*?(&&$@?>~6}4{yyw543s+r)
pnnlljjhhffd"c~}|_zsx[ZuXVVkpSQQfOdMbgJedGbE`_XA\?Z=;;PU866KP3NML/JIHAF)D'&$$">=<|4{2ywwu321
q)p'nlljjhhff{"c~}|_zyxwpYtWVTTRRPPNNLLJJ_dcbDZCXA??==;;99775Q4ONM0KJIHG@E('BA@"8!6}{987w/v-
trrppnnlljjhhffddb~a|{^y\wvutsrkToRQOkNLLaJ_H]ba`BXAV?==;;9977553311//-I,GFE>'B%$""~~||z876v
.u,sqqoommkkiig%f#"!bw|_z]\ZZoXVrqpRhQfOMMKKIIGGEECCAA?[><<QV9TSR5PI2M0/-IH*F?(=&$$""~~||zzx
6wuu,s*qoommk)j'&%f#"y~a`_]yxwYoXmVTpSQQfkjLhaJ_HFFD`_^@V?T=;;997755331M0KJ-H+FED=&A$?"~~5:{
yy05v321r/.-,%*kji~geeccx}`{z]x[vutsrkToRmPNNchKII^cFa`_B]\[ZYXQV9TS6Q4O11FKJ-B+F)(&&$$">=<|
4{2yw543s+r)pnnlljjhhf$e"!~w`_z][[puXVVkTinQlkNLLafIHcbD`YBW\?ZY<W:OT7R5P311FKJ,HG*?D'BA@#>7
~;|{yywwuussqq(-,+k#j!hffddbb``^^\x[vutWrqjoRmPOMihgI_H]FDDB^]\>T=R;9977553311//--BG*EDC&A@?
8!~}4{2ywwuus10p.'n%ljjhhffddbb``^zyxZpYnsVqpSnQlkjibgJIdcbDZCXA?[><<Q:OTSR4J3HM0..CH+FE(C&A
@?>=6}|{yywwuussqqoo&mkkiig%fddy~}|^t]rwZutWrUponmlkdiLgJedFb[DYB@\[Z<R;P977553311//--++))'C
&A@?"=<;:9870wv32r0)p'nl*kii~%f#"c~w`_^\\ZZXXVVTTRRPPNNLhKII^cbaCYBW\?ZY<W:OT7R54220LK-IB+@)
''%A@?!7~5|zzxxvvttr0q.-,m*#ji&geez!b``uz]xwZuXsrkpSnQPNjihJ`I^GEECCAA??==;;99775Q422GL/JIH+
FED=&A$#8!6;|9870wv3trr).omm$)j'&g$ez!b}`_]]rwvuWmVkTRRPPNjihJ`I^GEECCAA??=Y<::OTSR4J3HM0KJI
,G@)(C&$$9>!}}49z76w4u21*/ponlljjh&geez!~}_u^s\ZvutVlUjSQQOOMMKKIeHcbECC^]\[TY<;:8T7RQ4O2MLK
JCH+FE(C&A##8=<}4{8y65u3,10/.'nml#jhhff{"!~`v_t][[YutsUkTiRPPNNLLJJHHFFD`C^]@[>S<;V977LQ4ON1
//JCHGF)D&&;@#>=~;|92765vussq/.-m%l#jhhf$#"bxav_]y\ZZoXW2qjiR.-e=)KgJ%^]F!~C}W@[ZY;WPbTSqK#m
2k}ih,gTF)bPO%:"K7I54zW7gvv-sr*N.'JI[6FE&fUeAR>P+u:9[[pYW3lkS/.QyON*bKJ%dcF!m_^W@>-<;W:sN6%4
]n[MjEWz,GFd'&s`#L]~6;|WW7UBeuc1qNpLJIk6FEgD1{zyQ=|*:([775WVrUSoAQ,Od*KJJ%HFF!!}}|?.Z=;QPtTq
%4o31kj/WIyfSRbC<`MLo\<|k{2V0fv-Qb=q.o&JH#G4~V$Bdy>P_;](x8vH5"3UpSh.fe=ib(J%7cF!`2B{i.Z<wuPt
'qLQn"2~YK-hBG)ccC<NM]K7}|Y{i1U/Ad2sO/LoJIkZFEhf$TA!~>+{]]88Y6XslT0B.zl,=<;(J%d]F!`}BW@yyY+d
tO8Mq5PINkjih-BTecQCa`qp>J~5XzW165eR,bO/L^m8[6j'D%UBdc>}`N^9x&vonF2qCSRmf>M*;J&8^]\n~}}@?[xY
+:Pt8S6o]3l~Y..,,*@RQ


(oui c'est du code, et c'est également un 99 bottles of beer)


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558531
dwogsi
Défaillance cérébrale...
Posté le 11-05-2007 à 00:46:35  profilanswer
 

masklinn a écrit :

Rien à part un peu d'amusement


Je lis de la doc à propos de ce genre de langages et je vois que le comportement de portion de code est déterminé en fonction de probabilité. Donc par exemple 90% de chance que ça fasse telle chose ou telle autre chose. Ce que je ne comprend pas, c'est en quoi ce n'est pas réalisable avec tous les autres langages? Une condition ne peut-elle pas être basée sur le résultat du calcul d'une probabilité? En ce sens, je ne comprend pas ce qu'apporte les langages probabilistes. Alors soit j'ai rien compris, soit ça existe juste pour exister mais dans ce cas je ne suis pas sûr de comprendre en quoi ça diffère de ce qui se fait avec d'autre langages plus "classiques".

 

Sinon un peut de Befunge?

Code :
  1. vv  <      <
  2.     2
  3.     ^  v<
  4. v1<?>3v4
  5.     ^   ^
  6. >  >?>  ?>5^
  7.     v   v
  8. v9<?>7v6
  9.     v  v<
  10.     8
  11. .  >  >   ^
  12. ^<


Non mais franchement, comment voulez-vous relire un code pareil?

Message cité 1 fois
Message édité par dwogsi le 11-05-2007 à 00:48:16

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1558536
MagicBuzz
Posté le 11-05-2007 à 01:22:10  profilanswer
 

ma question concernait les langages probabilistes, et c'est pas des exmples que je voulais, mais une explication "qu'est-ce que c'est, ça fait quoi ? ça marche comment ?" (en gros)

Message cité 1 fois
Message édité par MagicBuzz le 11-05-2007 à 01:22:20
n°1558544
pimsa
Posté le 11-05-2007 à 03:40:35  profilanswer
 

zomg dis iz uber interestin' !!1! [:dawa]
 
 
"PLEASE DO" [:hahaguy]

n°1558703
masklinn
í dag viðrar vel til loftárása
Posté le 11-05-2007 à 10:47:17  profilanswer
 

dwogsi a écrit :

Je lis de la doc à propos de ce genre de langages et je vois que le comportement de portion de code est déterminé en fonction de probabilité. Donc par exemple 90% de chance que ça fasse telle chose ou telle autre chose. Ce que je ne comprend pas, c'est en quoi ce n'est pas réalisable avec tous les autres langages? Une condition ne peut-elle pas être basée sur le résultat du calcul d'une probabilité? En ce sens, je ne comprend pas ce qu'apporte les langages probabilistes. Alors soit j'ai rien compris, soit ça existe juste pour exister mais dans ce cas je ne suis pas sûr de comprendre en quoi ça diffère de ce qui se fait avec d'autre langages plus "classiques".

 

Sinon un peut de Befunge?

Code :
  1. vv  <      <
  2.     2
  3.     ^  v<
  4. v1<?>3v4
  5.     ^   ^
  6. >  >?>  ?>5^
  7.     v   v
  8. v9<?>7v6
  9.     v  v<
  10.     8
  11. .  >  >   ^
  12. ^<


Non mais franchement, comment voulez-vous relire un code pareil?


Seriez pas un peu obtus toi et magicbuzz? Ca fait 2 pages que j'essaie de vous faire comprendre que les langages ésotériques n'existent que pour l'amusement du créateur du langage et de quelques personnes autour c'est pourtant pas très compliqué [:pingouino]

MagicBuzz a écrit :

ma question concernait les langages probabilistes, et c'est pas des exmples que je voulais, mais une explication "qu'est-ce que c'est, ça fait quoi ? ça marche comment ?" (en gros)


Dans un langage probabiliste comme Java2K, une instruction du langage a un certain pourcentage de chances de faire ce que la doc dit qu'elle fait (e.g. "print" d'imprimer un truc dans stdout) ou de renvoyer un résultat correct.

 

Le reste du temps, soit elle fait quelque chose n'ayant rien à voir avec la doc, soit elle renvoie des résultats faux (par exemple 1 + 1 qui renvoie 18).

 

En Java2K, les instructions (sauf une) ont 90% de chances de retourner un résultat correct, 10% de chances de renvoyer un résultat aléatoire.

 

http://p-nand-q.com/humor/programm [...] anual.html

Message cité 2 fois
Message édité par masklinn le 11-05-2007 à 10:47:43

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558705
Shinuza
This is unexecpected
Posté le 11-05-2007 à 10:49:23  profilanswer
 

Quoi, on peut pas développer un logiciel commercial en Brainfuck? [:moule_bite]


Message édité par Shinuza le 11-05-2007 à 10:50:18

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1558708
skeye
Posté le 11-05-2007 à 10:51:27  profilanswer
 

masklinn a écrit :

En Java2K, les instructions (sauf une) ont 90% de chances de retourner un résultat correct, 10% de chances de renvoyer un résultat aléatoire.
 
http://p-nand-q.com/humor/programm [...] anual.html


[:tibo2002]


---------------
Can't buy what I want because it's free -
n°1558709
MagicBuzz
Posté le 11-05-2007 à 10:52:16  profilanswer
 

Euh... Et concrètement, mise à part tester des routines de hande d'erreur, ça sert à quoi ? :D

n°1558711
omega2
Posté le 11-05-2007 à 10:53:57  profilanswer
 

masklinn a écrit :

Dans un langage probabiliste comme Java2K, une instruction du langage a un certain pourcentage de chances de faire ce que la doc dit qu'elle fait (e.g. "print" d'imprimer un truc dans stdout) ou de renvoyer un résultat correct.
 
Le reste du temps, soit elle fait quelque chose n'ayant rien à voir avec la doc, soit elle renvoie des résultats faux (par exemple 1 + 1 qui renvoie 18).
 
En Java2K, les instructions (sauf une) ont 90% de chances de retourner un résultat correct, 10% de chances de renvoyer un résultat aléatoire.
 
http://p-nand-q.com/humor/programm [...] anual.html

D'où la question : A quoi ça sert un langage qui ne fait pas ce qu'on lui demande?

n°1558713
Shinuza
This is unexecpected
Posté le 11-05-2007 à 10:55:15  profilanswer
 

A rigoler?


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1558719
skeye
Posté le 11-05-2007 à 11:00:14  profilanswer
 

omega2 a écrit :

D'où la question : A quoi ça sert un langage qui ne fait pas ce qu'on lui demande?


à tester ta capacité à créer un langage.[:dawa]
La finalité de ce genre de langage, c'est de créer le langage, pas de s'en servir.:D


---------------
Can't buy what I want because it's free -
n°1558721
0x90
Posté le 11-05-2007 à 11:00:45  profilanswer
 

dwogsi a écrit :


Sinon un peut de Befunge?

Code :
  1. vv  <      <
  2.     2
  3.     ^  v<
  4. v1<?>3v4
  5.     ^   ^
  6. >  >?>  ?>5^
  7.     v   v
  8. v9<?>7v6
  9.     v  v<
  10.     8
  11. .  >  >   ^
  12. ^<


Non mais franchement, comment voulez-vous relire un code pareil?


J'ai dja codé plusieurs fois en befunge, c'est pas aussi illisible qu'on le croit :o

 

Enfin ça dépends  [:0x90]

Code :
  1. n#0e;$_]#:<;p}+]00g+g,1v
  2. vi##q#$]>x]y+a94:p1+dag]
  3. [2k$20p10p>0:#v^j`g01::<
  4. `-1g02:+1g00,a<^:0p00qj!



Message édité par 0x90 le 11-05-2007 à 11:01:45

---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1558723
MagicBuzz
Posté le 11-05-2007 à 11:03:51  profilanswer
 

omega2 a écrit :

D'où la question : A quoi ça sert un langage qui ne fait pas ce qu'on lui demande?


Ben très franchement, j'imagine que ça peut être utile pour tester des handles d'erreur.
 
Par exemple, j'ai jamais vu quelqu'un faire un try {} autour d'un printf(); quand bien même ce dernier peut planter (stdout indisponible, altération de la mémoire, etc.)
 
J'imagine que pour un programme critique, il peut être intéressant de pouvoir produit des erreurs aléatoirement, y compris les plus improbables.
 
Je pense notamment à l'histoire de mode "protégé" avec Win32, qui a été créé justement à cause des risques de chevauchement de zones mémoire entre plusieurs programme, risquant ainsi que modifier le code en cours d'exécution, ou les données sur lesquelles il se base.
Même sous Vista, il existe toujours des moyens de déborder de ce mode protéger, et commencer à écrite n'importe quoi n'importe où. Ca peut être pas mal de pouvoir tester l'improbable... Le seul truc, c'est que d'après moi ça devrait plus être une option de compilation que le fonctionnement normal du programme finale.
 
Je veux dire, par exemple, en C#, tu lances le truc en mode debug, avec l'option qui va bien, et le programme commence à partir en live comme s'il était victime d'un débordement de mémoire ou autre, afin de vérifier que tout a bien été géré partout.
 
Par comparaison, c'est l'inverse de ce que fais un compilateur ADA, qui va vérifier au moment de la compilation que toutes les erreurs levables par une instruction on bien été handlée et verrouillées avant l'exécution.
Il existe par exemple en ADA un mode qui implique l'obligation de tester la nullité du diviseur d'une division, ou alors de mettre obligatoirement un handle pour gérer le fameux "divised by zero".
 
J'imagine que dans le cas d'un langage propabiliste, il s'agit non pas de vérifier à l'avance qu'on a bien fait tous les tests, mais de vérifier le comportement du programme au cas où ça arrive.
 
Je me trompe ?

n°1558736
masklinn
í dag viðrar vel til loftárása
Posté le 11-05-2007 à 11:14:38  profilanswer
 

MagicBuzz a écrit :

Euh... Et concrètement, mise à part tester des routines de hande d'erreur, ça sert à quoi ? :D


omega2 a écrit :

D'où la question : A quoi ça sert un langage qui ne fait pas ce qu'on lui demande?


Ptin mais c'est pas possible, vous êtes tous attardés ce matin, j'veux bien que ce soit vendredi mais quand même [:pingouino]

 

Bon, c'est pas très compliqué, j'vais essayer de vous résummer ça, faites gaffe ça va aller très vite:

   

http://img129.imageshack.us/img129/1751/amuserdr5.png

 


Ca va, vous avez pigé là ou faut vous la refaire?

 

edit:

MagicBuzz a écrit :

Ben très franchement, j'imagine que ça peut être utile pour tester des handles d'erreur.


Putain mais c'est pas possible d'être aussi con [:pingouino]


Message édité par masklinn le 11-05-2007 à 11:15:28

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°1558775
MagicBuzz
Posté le 11-05-2007 à 11:43:03  profilanswer
 

tu t'amuses jamais utile toi ?
 
heureusement que tout le monde n'a pas ton approche. si personne n'était amusé à coller un bout de bidoche au dessus des flammes et voir si ça servait à quelquechose, on boufferait du poulet cru aujour'd'hui :spamafote:
 
PS : et c'est grace à des théories inutiles et le grand amusement de scientifiques qu'on sait aujourd'hui envoyer des fusées dans l'espace... va donc expliquer à archimède que grace à sa théorie, on sait aujourd'hui faire flotter des navires en acier de plusieurs milliers de tonnes... tu vas voir comme il va te recevoir avec sa savonnette

Message cité 2 fois
Message édité par MagicBuzz le 11-05-2007 à 11:46:13
n°1558778
Elmoricq
Modérateur
Posté le 11-05-2007 à 11:47:09  profilanswer
 

MagicBuzz a écrit :

tu t'amuses jamais utile toi ?
 
heureusement que tout le monde n'a pas ton approche. si personne n'était amusé à coller un bout de bidoche au dessus des flammes et voir si ça servait à quelquechose, on boufferait du poulet cru aujour'd'hui :spamafote:
 
PS : et c'est grace à des théories inutiles et le grand amusement de scientifiques qu'on sait aujourd'hui envoyer des fusées dans l'espace... va donc expliquer à archimède que grace à sa théorie, on sait aujourd'hui faire flotter des navires en acier de plusieurs milliers de tonnes... tu vas voir comme il va te recevoir avec sa savonnette


 
[:prozac]

n°1558779
omega2
Posté le 11-05-2007 à 11:49:02  profilanswer
 

C'est clair qu'il aurait honte d'être vu dans son bain. [:anathema]  [:gzk]  

n°1558785
MagicBuzz
Posté le 11-05-2007 à 11:57:30  profilanswer
 

Tu veux du plus concret ?
 
Linus Torvalds, tu le connais non ?
Tu sais peut-être pas qu'au départ, Linux est un petit OS qu'il s'est amusé à programmer chez lui pour pouvoir faire les TD de son université depuis chez lui sans devoir acheter un serveur Unix à 1M$
 
A la base, le truc n'avait absolument aucune utilité dans "le monde réel", c'était 100% expérimental, et plus pour s'amuser que pour autrechose... Bah aujourd'hui, c'est juste un des OS les plus répendus au monde :spamafote:
 
Quand madame ADA et son mari ont inventé l'algorythmie, il n'existait même pas encore d'ordinateurs. Si c'était pas juste "pour le fun", explique moi à quoi ils pouvaient imaginer que ça serve...
 
Allez voir un labo de recherche les gars... Y'a que dans le privé qu'on fait de la recherche "utile". T'as pas idée du nombre de choses burelesques qui sont mises au point, et dont on trouve une application des années plus tard dans un tout autre domaine. c'est la définition même de la recherche.
 
J'ai pas en tête d'exemple flagrants, mais il n'est pas rare qu'une découverte en physique cantique n'ait une application concrète que dans la micro-biologie.
 
Alors ouais, les gars qui ont inventé ces trucs l'ont très certainement fait "pour le plaisir de faire un truc qui sert à rien". Mais cela n'implique absolument pas qu'il n'existe pas d'applications où cet invention peut être utile.
 
Faut arrêter votre char les gars.
 
(et je reste persuadé qu'une routime qui a une certaineme probabilité de "faire n'importe quoi" sans aucun contrôle dessus peut parfaitement avoir des applications concrètes - pourquoi pas un jeu de test utilisateur par exemple... super, ton jeu de test crer 25 000 commandes en 1 seconde. génial. mais il se passe quoi si l'utilisateur va pisser en plein milieu d'une saisie et ferme tout comme un bourrin en plein milieu d'un traîtement ? c'est de genre de choses qu'on oublie soigneusement de prévoir généralement :spamafote: donc si ton plan de test peut "de lui-même" ajouter son lot de débilité c'est pas plus mal)

Message cité 3 fois
Message édité par MagicBuzz le 11-05-2007 à 12:03:01
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  6

Aller à :
Ajouter une réponse
 

Sujets relatifs
blabla@fonctionnel : Taiche ne sert à rienun grand merci à Masklinn !! pb float
[C#] MagicBuzz qui se remet au .NET, ça va être bô tiens ![Resolu (Merci MagicBuzz)] Problème pour lire un flux de byte en C#
La vie très intéressante de MagicBuzz[Considérations d'ordre générales] Où est passé Magicbuzz
Plus de sujets relatifs à : CL4$H ~ ## MagicBuzz VS Masklinn ##


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)