super_dupont_7.py

Created by florian-allard

Created on May 19, 2021

11.8 KB


from kandinsky import set_pixel
palette="""\u114c\x00\u010a\u124d\uffff\xe9\u014a\u0109\u128f\u01f9\u51ec\u124e\uf7be\u6d59\u80a2\u01cd\u126e\u0841\ud944\u10a2\xa6\u78a2\u0128\x01\u12b0\u120b\u4966\ufed9\u98c2\u022e\uc924\uffdf\u014b\uef7d\u2d3a\u80c3\u1042\u018c\uef5d\ue965\u8aa9\ue73c\u4861\u0a0d\xa4\x20\u94b1\u6985\u6861\u01aa\x03\u120c\u10a4\x82\x42\ud46d\x44\uff5b\uedd5\u9b4a\u8b8d\u228d\xc8\uef7e\u11ca\u02b0\uecae\ucebb\u9533\u8c72\u0126\ua533\u6b6e\u018b\uff7d\ud269\uc944\u8b4a\u09cc\u01cc\xa8\uce37\u8c51\uf922\uefdf\ud699\ud552\ube39\ub595\uab8a\u7226\u632d\u6cb5\u3229\uf9c6\uce59\u9cd2\u8c0e\u7269\u31c8\uffbd\ufeb7\ufdd3\uf655\uf52f\udedb\u9061\u73af\u52ab\u41c8\u1126\u0866\udefc\u58e3\u0234\u020c\ud4cd\u73b1\u3146\u2862\u20c4\u1000\u0b75\u014c\ufe57\udcce\ub924\ua861\u5acc\u31a6\u0333\u0189\uf944\uf592\ud5b5\uac4e\u8020\u5228\ufaa8\ufa27\u94d4\u8985\u7aaa\u11a9\u0296\uf73a\udf3d\ub38d\uadb7\u8a66\u2124\u0a8e\ufe35\uaa89\u9d55\u3124\u01ce\ufe32\ueeb9\ud800\ud77e\u524a\u4a2a\u2000\u1332\ufd50\ud36d\ud103\ucb8a\uc881\ubdd7\ub8a2\u51c9\u2c56\u1437\x02\ufa48\uf9a4\uedb3\ued51\ub42b\ua904\u7c31\u2126\u020b\u01b2\uee57\uecd1\ube37\ubc2c\u2923\u0292\ub5d8\u9aad\u7b0b\u4208\u2986\u1148\u09ad\uf081\ud1a6\ube7a\ubd52\ub2cc\uad55\ua903\uf79e\ueedb\uea89\udf1c\ud4b1\ucedc\u98e3\u8bd0\u7c52\u70a2\u4cb6\u330f\u24b9\u1125\uf122\ucdf8\uacd2\ua9a6\u23b5\u4aad\ueb2b\u5391\u532d\u5207\u4a8a\u30c4\xca\u61e8\u21a9\u0399\u02b9\uc0a4\ua4f4\u6acd\ub6fc\u1372\uf226\uda06\u4b34\u0881\u0153\ueb4c\u2b31\u2ad1\ue1e8\uaa87\u8d78"""

dupont="""+N+++++\xc6+sN3\xb8s33ss\xb8sN=\xd9\xd9=\xd9=====OO++++++ssssI1I1INN+Ns+sN+3O3—s=3\xb8s\xb8\xb83\xb8+OO++——N+@1INNss—+++6+=\xb8—=33—3\xb8—+%%++œs+On,@4—OFƒ1OƒF1N+\xc55@3s—=3—\xb8\xb83%+s++—F4F—A35oI6ƒ1N@@,\xc5@nn=3—%+++AF—5411n1,1,ƒn6n4@\xc5,,4@\xd9=——@@@\xea%%%Os+5FoAs6,Fnn,ƒ,5o6\xc5N5nN@@@\xc6n1=1@5Fz,\xf5zF‚A\xc5\xb8+O%I+sOO,61@255654,\xdb@,44\xc5\xc5@$1\xeb,I\xeb6O\xebz8\xeb\xebœ®\xeb®‚=\xc6IO%OO11I,F1,F5,ƒƒ1114r\xbf,4 \xeb‚ƒ5\xebœ\xebœz\xeb,z\xe0un\xd9\x5c£,Œ–b\xcb\xc1¦\xcbFNIO%s{\xdb6ƒ1n1\xc5\xc6%\xc6@,1rrr%\xec\xec\xc61\xec,,\xe0\xe3\xe3\xd5\xc1\xfa\xd0(\xe3\xf7nŠ¬/ŠlK„S\xf3/sN {rrr1811œ6rrr{r\xbfrr8œrrP\xe3\xc1\xcb\xd5\xdb\xf5\xf2\xe2\xf2']‹\xc8'\xf2\xd0™^¡\xdfSb™\xd0n\xe2Kƒ1+%,8111rr\xf6r1,6r\xec1r\xec{rrr¤=u\xc1\xcbu5-\xd0„^±™^\xdfFŠ‹@b°\xa8^\xc4,\xf3™\xd0\xf7–Š/%ƒ=%œ\xf61\xf6rr1{8\xec\xaf\xe8ru\xcb\xc8±¦]±„±±;n‹K\xe4'^l°/\xc4\xd0\xf9\xf3K-\xd0™K¦SŠ•Š1+Oo{\xf6\xf4Ž\xcbŽ\xf6\x09o \xec\xc1K\xcb\x0a,Š„‹\xf2b^bl„°\xd9°•K‹(‹/\xe2m™„‹\xf2\xc4K1\xd0K\xdf¬S\xf366Š\xf3\xb8\xb8@%1-\xa8±S±™\xf4\xf4¦K]°S±\xc7°\xe1±\xfa\xec\xc6‹\xfb\x0a1‹™™°A‹\xc8S™5K±KŠŽ\xd04\xf7Ž\xea;cs31NOI–\xe2SSŠ¦‰\xc4ŠŠ5\xea^]°Kl\xc8±M'K\xf9\xe1Šu°°F/‹¤\xc1‹\xea^\xe3^\xdfŠ(+As¢K±\xefƒŽ\xea@n6INO%(^„“=6\xc3^K]°\xdf]Š(\xf2\xc8l^S±\xa86(^S\xd0\xc4™°“„\xc1q\xe9K±Kƒ‰¦ƒAƒFFF5152556,3333@N% %œƒ\xf3SŠ\xf6\xe5‹K‰°\xdfmŠu\xc1‹‰m±Ku\xc56\xc8°ŠK\xd0„^(\xc7\xb5Z(/›I‚\xf9n52,@n@33333@\xb8+™„S\xcb\xec\x00‰‹™‰‹(°„„“5^\xf4\x09{–^™\xe1\xf2\xe2=\xc1(Ž/©«§\xdc\xcdq@A‚N33N3FP1\xe2SS\xe2\xf46ŠKb°/¬^„\xcb,-™^\xc1\xdfK]\xf7•0(•/\xd4©§~~~~~§«q1\xbf¤@NNIƒ-1–\xa8°\xc7‹Žc^¦Š\xe5^\xc1#02K^‹‹(Ž©«§§\xed~~~~~L\xdc«\xe7‚@3@N%œI \xeco5[\xd0\xc7‹<„\xcbr(^\xc3/°b§\xc2(b\xe9#§©\xedL~LLL~~\xc8\xdcj‚3\xc63NO6-\xf6\xe4^S\xde^\xc7“'‹](¦««~\xd7\xd4©§©§L\xed©\xed©©©\xed§§LLLL~\xdc©4A¤\xc633N%%\xcb\xf4@\xdb\xc1„^\xe6l‹S^\xc1q\xe9/\xb5§««\xc8\xdf\xc8\xc8^©©Ÿ©§LL§L~\xc7*A¤3N%OIF‹S\xd0\xe2SS\xa8\xdbqb\xc1Ž/©«~\xb5~~«ŸLY\xd2††_UU)dD\xca\xd2»K©Ÿ©LLL\xed~L\xdc*—¤\xc63={IOOœI\xa8±„S±¦]«\xd7j\xb5\xcd\xb5«~«\xedYVU’ Ci&&\xd1Ua]  š’\xcf\xd2\xc8ŸŸ\xc8LLL\xdc0A‚\xc631 IIO%1\xe1Ž(\xe1F0§\xcd«\xb5\xcd\xcd\xb5~«7U iUQ_)UQXa\xbc\xcc)aX\xdd¶WT†KŸ©'LLLLS*\xbfN@II%IO% 1o0~\xb5\xb5\xd4\xcd\xb5\xb5ŸY_\xf0_Q__U\xd1X`R`XE[\xc4\xc3UR\xd5\xd1TV§ŸLL\xdcw‚1{IO%OOA 0«\xb5\xd4\xcd\xcd\xb5V\xc9\xc9aQ_Qi)G\xc3v-–_a\xd5RpT\xcfKŸ'L'\xc7n‚1I%O%œw«\xd4\xb5\xcd~\xbc\xf0XaQ_\xbc‘\xd1a··x4xx··–5H\xcc`\xd5iTT»Ÿ§LL' ‚\xc6\xc6%o\xd4\xb5\xcd\xcd«™\xc9WX\xbcQ\xbcQ‘i‰·¢·-$··6XRG\xd1T†Ÿ\xdc'LSA\xbfAA=œI0«#\xcd\xb5j•W\xbc\xca\xbc\xbc\xbcQi\xd1\xc3–xmcŒa\xd1k_d))T\xddŸ\xdc'L\xc8\xdc·‚ II\xbe\xcd##\xd4\xbcXGQQXQ_U[\xc4v$·¡\xe1m$[E’&))\xd1T†ŸS'„œ¤AIƒœ>ˆ#\xcdjX”G\xcaXXQQQ`¢m$$v€H¡-–EX!†U)))&T¦Ÿ''S\xe7zAI I%w#j‡š.GX\xbcaaQa€\xe1·v¡\xefHm6–k[\xf5u†i&9&&&K\xc7''''¤N%\xd4#ˆ(\xbcaGXXX\xbcQG[\xe1¢c¡€€\x0aW!&&)T)Ÿ\xdc'''SvAN%  xj##jDD‡DGG\xbcUG¢]\x0ac¢¢¡m$$RaXR€_?)p)\xce\xce)T»Ÿ'''§„1¤A1 I*j##ˆ<”aDGG\xcaUa\xc4–$$4$4·¡mlu_.`U_CiXa!??\xc7\xfa'''''\xc7\xc5zA1OF0###ˆDDG.GGQa2<\xde\xde:V!w\xef€·–mkUXE&\xceT»Ÿ''''''„q‚\xbfI\xbej###0MDR‡GGGX‰›\xd2\xde<\xcaM\xbe-H\xee\xbe]\xcc6\xaf$[iR?!\xdcS'''„A‚A1*jjRDaDG.aaan\xdb\xdb555·5(5\xc3›<<\xdd46-UlE\xf7\xc7„''''\xc7Nz\xbfA0\xd7ˆD.DD.aHH\xe4==s=\xe6z–•‡Q</BY\xe7“G.g<`<†m6\xf5U_\xc5¢pC?†Ÿ\xc7\xc7S„''Sz\xbf¤A1 ##ˆ(DaaaakHk]\xb8ƒ\xc2V\xd8zxK2:“™eY\xe7“»|Y\xc3\xd1oX4)`oE\xd1__)!†¦KŸŸ\xdc±q\xbf¤\xbfA 4ˆ##ˆkD..G...¶\xb8=\xb8,ae»\xf8®¥žVY\xe2\xbd2J¥*”&[\xc3\xc4i€]†i\xcfžUožo¦§\xc7ˆ\xbf‚A\xbf¤w\xd7###ˆ.D...GGQ\xd6—®\xdefV|\xd8‚‚¬\xf7VwKo\xd2BZ:\xa8\xdexc\xc06`†<\xc3==\xe1\xe4\xce»P‚1 wj\xd7#D...DG\xcaQ¶AF\xcaopX\xbfA\xe4B“(|Bxv…}xŽi–\xdb\xfc›5¶[ƒ‚z®\xda\x22\xda®z¤3c¶Uš{\xbf¤w\xd7\xd6a.D.G\xcaQ\xf8\xb8\xe6ežžž†{»Z\xdb4y£,-bM[.6\xf45F=Fs\xda\x22®\xda­\xf1A\xf1­\xda\x22\xda®\xe0nlžŒ{œ*\xd7#ˆZD....XXG\xd9FM¥»:ikRPP“‡q(;™(›\xbe&\xdbF@@\xda\x22®A1,4\xe6F\xd9­\xda\xe0­\xda32<\xe3*ˆ(DR.`GG`kF/73f|ašW€,2Qo*•\xfb(i\xbe=4\xea\xf9\x22\xf1n-w\xe9‰`\xdda\xbe=\xda®®­­ƒ†ow0#ˆ•DR..G.akZY¦¥\xdeš’uM†<lgYE†\xca;\xcf–@\xc6zzF$\xefH7V:gV‡\xc0E,\xf8­­­\xda,\xd5>*j\xd7#jZDE.DDEaHƒŽY•;\xeep\xd6yB…Q<¥fŽ)\xc5]c=\xd9¢šŒ}9\xcfo9†yE)–\xe0­\xe0\xda®F*j#ˆD`.G`E<HF]Y•ZC?l*B\xa8h\xcaM;q\xa8Z<‰,“||g3\xd5\xc0\xf0(¥J\xcfo\xcfd2q\xef&-\xd9\xe0­\xd8­wj#0.R.D`aak=ƒv(;b??¢•BBBh“M<-\xbetB¥e\xeeEk™¥|\xcfJJ9d9˜qH`y\xf8­­\xd8{wj.D..`Rk<]n\xcb/Z\xd5?[\xfbBB:BBf.\xa8B}…\xd2Œ’&\xe5\xa8329&9JdJh£\xdd$\xd9­\xd8\xc6%ˆjaD.`DREHc;(/ETJk•7}g˜»::˜V<‡_žg\xeeCT\xc0•B7…g99Jdd‘•¬E-\xd9\xd8%0###ˆ(DRGGš\xe4‰“/¬/x`?JR•\xbd73:žB7e|QižVW?uYt\xa8B3|9999‘¥Y›!5\xd9%>0##ˆDR`Dc\xbe3d–$v\xee’Œ/77V\xd2žg77»32V:Q:X’p(\xa87\xa87¥|‘9…¦w`€  *###ˆaš\xcc\xc4qf9‡$mi\xce!d \xc2\xd2}g};7}VV:žg\xd2\xc9\xc9<7¦7\xa8»:e‘9:}q¡E-%xj#ˆ;”]3ž\xcfh¥‰)!\xceŒZ“7}g;(\xbd7VVQ:fX\xce\xc0‡BBt}»2ž99˜Bb4X  %F0j##j\xd7\xe15Y|\xcf2h37w_?!?\xef(\xbd72Ž/M‡V77\xd2\xca’?\xc0‡¥»B»3fg||ž˜B($\xddU  *0*£‰:\xcf9h…}¦`J!Cb\xfb}}\xe5M\xbd‡7\xdeVC!J”\xd2gf…»…»f:::f:fBb$†{xj0*£-MJ˜}}B;-kJ!WMY;\xe7•;““Q’!&”†e:::3…f::f…f…\xa8b$Uk%00**yw\xd2J3::7¬¬y] ??!T\xc9.<\xe9b\xc2X’TJ?!&\xce\xcc†‘ž::2…ff…f¥;$\xef $j\xd700*£<dh7b\xe9›”\xd3)!)& Wa\xf0\xd3&?!&)!Œ†‘::2f2…f…f…h\xfbw&a1 P00*c[\xcc|Y:…“›¬v$€\xc9C\xd3?J!…\xd0ˆ\xcb:J!!!&)J!Œ\xca˜¥…•7e||||eeM\xcc   {wj*›a·[\xe6[\xdet\xbd\xe9mx¢–l\xbcWC’!\xe2\xdfq/*©¦&!!)9&J\xfc<B7Z7|‘9df/U` %£y\xcad2lRH;Ž\xc4]¢cvcŒš\xc9\xde\xbe\x5c ]wo9!&)&J&pŒŽ\xe7\xe76\xbeh…o9‘9de\xa8›)i-> \xe85Z\xc2V7glx]\xc3\xc4ccc\xc5H[4€D‰*=z\xe4]*\xc1))&J&&&\xddW\xd6mm$4Bf:o9dd|h*[–2‡‰b}‡$4-,w*[k]\xc4cn€W`€\xe6·y¬\xdb\xeašv)\xd3C\xd1)’CpC””R¡46\xbdf2:‘9d9|¥Z›–-\xf5 2\xbe2:\xc2<\xbd‡3<›ˆ‰l]\xea4_Cšpp\xde0<uƒ\xe4EqwH”CpC\xd1UW\xbcš€\xe7-‰¥fgge9˜h)4P‡eeet›‡Ž$550#**cn–U_\xcc \xd3\xfa]E¢\xc8\xc1\xd6l€Hu¶¶[cxxxv$6;¥f:˜˜o|h(qbJ-- P5\xbeg3\xb4•7;M›-50\xcd#\xd70££c\xd3&?U “j\xc8\xf3\xb5\xcb?CŒuHH\xd5¶u\xe4kR¡c<Bhh¥hBY¬¬q_?\xd5--o\xaf6›/Z\xc2‰\xc2¥M\xbe\xe5c0#00*££-\xc3 p!\xce <K\xdf\xcb\xcaT))CWWWu¢\xc0\xc344(;YY;Z/b(/\xc2\xc0EP82}eeh<7;\xbem0#00*££-\xd3\xd3&?CCT!J!!?&’i)’\xd6\xe4v¡4bZbbb(((Z<&†k88\xaf2\xaf5‡aZ\xe5‡VZ\xe5*0**££$=W\xc0\xc9C&!&!?!JW\xc0[Œuv6v//Z;\xb4;;•<!o8\xaf\xaf\xaf\xb4\xb4\xb4(lt‰£\xd70*wyyyƒH”\xccWpJ!!J?\xce)\xc0WkŒ\xd3Hxx‰/;Vg‘tZ\xd5[\xe8o2\xaf2\xaf;\xb4M\xbe/Mˆ0*£yyy4NR`Œ\xc9&?\xce\xceJ??!iuT\xd6-EW[4\xe6m2“˜‘Jdd9ehq_”Po2\xaf2226(o\xe8{{,*0*£yyyA@\xd6<\xc0\xc9’\xce??!¶Cš-E\xc0‰›kk8o<˜eJdd9eh›\xefaP26\xaf28on\xe8%>$££yyy\xe0{]<’W\xd3J!?!JdCWakH\xc2\xc6\xf9m5o<f9dd‘‘ott\xefE822\xaf,P,6yyy-\xd8zAœEp!?\xc9D===\xea\xea\xe0¡feJdd‘9h\xb4Yw\xd5uP82>  >26a\x0d{œO\xe3\x0d\xd8\x5c\x0d\xfc\xf0\xc9\xfc\x5c\xe3\xe3\xf8%+m\xd8\xf1¤F}g&dd9‘gh7\xa8\xe9\xaf\xdek  >8828\xbe\x0d%œ%œ{ {%œ1A—A\xf1\xf1¤¤R\xd6®8‰|9‘o‘ž2}\xb4“;cmo >>,8828`\xc0\xf9œ\xbfz¤‚A—\xbfA\xbf\xe0zz®\xda®­\xda­\xe0­®34\xafY˜9‘žg2V}‡\xb4<\xe9\xe7mP 88222\xddT Œ­\xf1‚zz®\xf1¤¤z\xe0\xe3\xd9——\xf8®®z\xd6vv\xdb¬ežeeQVttM\xb4Mvv-\xe8\xe8Po882\xaf8*\xd2  U\xc0\xd8\xe0z‚‚‚z‚‰…gQV3V\xe1\xe3Hk]\xdb·…|ogggG‡tM;;¡P{ >82282yˆ™a\xf0\xf0&i\xfc\x5c\xd8\xd8\xd8\xd8V\xa8B˜˜h7u\xe4\xe6b‡ogVtt\xbd\xc2M;¬¬vP >8\xaf282*q*ˆ“U\xd3\xd3!\xcf}h/•YBB‘\xde\xdb]\xc2\xb4t\xca†˜g\xbd\xbd7M;M›¬v>P >88824[q*w0\xb5\xd2_   “q;My•heeMM\xb4Z\xc2}\xb43h\xbd\xb4ŽM;¡v\xe8PP88\xc3\xd6*/q\xd7~¦†\xdd <hY-y(…ge˜9\xc2\xb4\xb4MbŽb¬x{PPo8uETl*q\xd7\xdf\xd4\xed\xfa\xe27Mt2o\xbd7}ž˜|˜hb‡\xc2b//Ž¬$\xe8>>>8\xaf`T¶EC\xc4R\xe50\xd4\xdf\xd4\xed\xd4tZ2d9‘Qe3hYYak\xe5‰›\xf5 >>>>šT\xf0TH\xbc¶€¶u\xe90j\xd4\xdfqŽt\xe5t…˜˜fVB\xb4tM<[Œ\xc3\xf5-{>>>>>P2šTC’T&€W[€š\xc9WE(\xd4/(tZBh3t}}Bt\xb4“Ž\xc2\xcc¶->>>>  >o\xafŒ?Ci!i!ŒHCEHU p\xd5qZYt/aY77tt\xbd;(/x\xc4--6P>>>\xe8{ o2ETCCp’&Eplš\xd6”ilEC\xd1\xe5/ZY\xbd;\xbd\xbdYŽZ/›w-$$$$$P>{o\xc5nHTCp\xcf)\xd1išu”v&)\xdd\xcc¶EHWWZM;;›w6$$$$$$$$\xc5PF>oHncpi\xcf)i\xce__\xd5\xd6¢[i””\xee]\xee”W\xe7Zqw\xe7xmuuH[l¡¡mcc$$44PP> oo\xe1c’’i)pp\xd3_)\xee”k¶\xc4šCCŒR\xdd\xcc\xe6H`¬\xe6RX`RHllll¡¢mv·x4$vPPPP\xe82x€\xc0UpCpC_\xc9\xddaE\xcc[mšW??TŒ\xc3Tk\xd6’\xee\xe6\xc3¢l€H€[€¡¢mx4$x\xc5o88¶p)ppp\xd3_C\xdd”ŒR¶l–¢W\xccR\xccR”[¶U€v[`š”WaŒEuk€¢mcc¡¡6-"""

l,c=100,75


for ligne in range(l):
  for colonne in range(c):
    etape1=dupont[c*ligne+colonne]
    etape2=ord(etape1)
    print(etape2)
    etape3=ord(palette[etape2])
    etape4=(etape3>>11,(etape3>>5)%64,etape3%32)
    set_pixel(colonne,ligne,(8*etape4[0],4*etape4[1],8*etape4[2]))