from kandinsky import * from math import * R=130 def choix(i): if i==0:return 'MTHGMSHJMVHKFBKWDTKLDIKLDLKNDUKKDLKJDGKIDHKLDGKHDFKGDCJXCYJTDBJWDBJXDWJUDAJVCWJGCTJMCTIQCTITCDJDCJJICIJGCJIKNPIHCFJACMJPCYJNDCJZDDKEEBJQCVJSDLKLDUKNDWJZDZJXCWJVCYISCTIOCSJJCSIOCKIOABGYFBGYEWGREWHAADIKNSIENNIANMIDNNIDNLBONIICCKIPFAHZNPIENLBRNMIANLIFBXBLHMBJJRBMJQCTJGDLJNCKIKCHJCCFFHLDFGLDFJDNKMDGJCCOJQDOJVDCKHDCIYFFDGFFIYFCHBANBQBEHJBEHKMUHNBNJSDIJCCMINNVGWEYHEMTGLMOGLERGKMRGKMZGLEPGKEQGLCDIYDEKHDHKJDJKICWJTBPJVDFJTCWFGKYFCJBDHJCFELBFLLAFEISCOJTDPJPDGKKDIJFCEIYDHJACPJADHJBCFHWNFBQMJGHMWHOMQGKCFFJEZIOAAGWAAGZADILNRIPCQGTCPJJCTJNDBJUDXKKDHLPDIKJDFKIDLLTDKFJLAGIMOGJCDFGJBCHGPNKHYEZKWGEKPEHGGCFHZCJINNSHWNEHQNCBONOHONGBPMGGAKNDPIUFCKZGLEMMIBQNCHLMXHKMSBWINCSIPBYIZCSFHJHCKGPNJBRBCHIMPHLBHJOCVFHBLJTCOJDCFIGALILAQIBNOBOMHGJCCGEMNGGMXHONPHTNRIGBXIRFDDFKNDXJZDUJVDDJKBIFKCIGPCIFGCKGRCGGPCNIRCGGIMJBQMYBQJSCOITDMJNCWIXFEDMLSDMKICZITFEKEFXKFDEKJDLKKGBKLGBEWHQBSNHBMMAGWNNILEZMUEZIKNRHUANJDFFKYGIELMIGCMKGZNUIJAMHCANJCCEISAGEEJWDRKSGCKXGIMMHFMYHBEYHVNFFAIKCEHZCAMUHEMJHGAHEGAGEHGPCHGIEGKREHFHJKFCJCFGDILM' if i==1:return 'GRNRHSBSMYHSAAGSNSBMJPBKJQBLBXITCCGNCGIIARIMAQBRNLGXLOFMBIJOCTJWDCIWCWIYCSJXDDJVDBJSDNIVCZJSCMIKAMIFBVMQBSHVEYMOEZIWDEIZDFJQDHNJDPNRHVNHBOHOAIEEAJHMBLLZEQFFJBCGGMCNFILBFJAWHHAEHAAAISCZFHJPCUIPNSBOAUEVFHJJCYKGFEJBAMJDFCLBGICJGIEEKJDDHIMSBXIMNTINNUIKCYIXASEQFHBGHLBIJLDAFSDHKACCJYDZKFCWJSCVHJAJICBXIOCQFHNCBQNGHVAAGXAAHBAAIREYMXHSNVHMDHKGDAFEIVCFGRCKGOCKFMCAMWBTMQBVIHNTIGAGHEMVBRMOGCKLBKGSLNDWJYDBIVFHLAFCKDDJFEJLFANAHJNOIBAHEEGNCJITATIXBWMQEZMZBQJVDOIVFEIXDHBLJQDJLRDKLODJNNDTNODLKGCXFJAXFHCAFHBHFLLFFHEJAGIOATIZCWITCYJXDONPIKCRIKALIAAJEELPGZBKJODFHICVGULMGONPILATBOMSHGAUESFCDEJNDNACIJBXIQBYIWCMIDBXNVITBWHZNSGTCMGPCEGICIGLNGHOBSMRBRNJBONTIICUHHCVHEMSBVMSFAKREGAJIFCKGIMKGIEIMGGBKQFAIOBYMTHEAEBMNOHRBVIINRHLBKJMFDKFDHKPGFKZGEDZGFCCGGMGGHCGIJEZMYCDIUACHAAFIYCLFODLNNDIKNGFMGGYNUIDALICBVHYNPBONVGSCQIUFDJDCCGMCKFRDONKDPNNGPCCJDEYMYCAISAJIDNKFSDONMDPNIGNNCHIMIGDKVGHKUCGHWNGFMBKJTDKKNDGKNDIKFCXKHEDKGFYDEJVCQJVDNLQGYEPHXAEEDMDEWMADYGHMGEJJYDVLXDOHNNGBRMTEWMPGPCKGLMPHKDCJVCTIVFCJEFEIRCRIMNVBXMUBQHVNTBO' if i==2:return 'GUNLDHNSIONVHSABIOEZLBFHAYBMJSBIFOJPFSJRCUJVDMNNGRCNIVEZMOHGCSHJAGDVLYDTJVBSMLGGMJHICYKICXKGDEGSCIIBCFIIAIHYCABICWFEEBADDXNTDEJOCMGXMLGKNFBOACEDNUIOFCNGFPCRFIAUEKAOHXBRMQEXJZENFHJCAPIJEXIKNVICAKGZAFEEKLCPFEIKCZIYAFHZCHFHLBFAJEDGJFDBJIFECXHEAFIZAKIDABBOJQCNGRCMIVCYIONTDYGKCIFIJPBIHKNODGNPDNAHJGCGJHEEHRCENBBQNRIEAPISFECNJICSKODUKZGIMZHICSHHCSIVFBJDCSIZDCJLCNFOCOJVBQHUABHPBTNFHZBQNABUHZCEMZCFINFEJEEZNCHKBEJICGHVAPJVBTMTBTICNQHVELHRAGDPBGFLDEHFCVHHDDKLFIJHBYMUHKDKLTHINPDGNSIQBBHIDILNDIJBFFDXKADDJSDDGSCNGOLTDQNIDJKNDZFAMYCEHSNRBOASHHMQHECTJODHNGEYKWGHDNKQCSHGMYCHFTDAIVEYMUGQNHGOMKFIBTMVBQNFHVBSIHBXMMGNCIKUEJAPJHFDCVGZCTJBFELWENLTDLKIEDLPGXNRIRBYIXDCNIFQBICAIQNTIBAMHFEHKVGEKXFBHWBQNMIENIDFKCEMKTFZKADXGFMUBXIYDDGTNTHUAAJFDIFIATJYCAMSHEDJNPGOCRGWLMFSCTHIAJIHNJDQGZMLGEKZDUKLDSKHBGJRCMGSCKFOBGDDJWCRFGDTLYFCNABYFRDTLWEMHSBUICBZBPMVGGKVEQMMEWHZCDFSEFKOGJMGGEMJGCCHHWCJGGKSGHCJKVCLGKCNJKFBDAIQNODNNNBMAWHGCRGYCOGOLNGUCPFODDNSDFFHDDJYEKAVBMFVKRCGHQNEBQHPMQHJBCJFFCIXDENGBQATKBDZFCINCNGAJXIFALFGCMGRBGHQ' if i==3:return 'MYCIFTCFHTANJVAOJVCOHYBTGYACITCUKCCZKAENKQDXLGFRCDNDGNMKHBACEEAHIGNTHWBRMSBTMSGFCHFRCCHQNDEZJBNPHCMOGDMHHFCSGWERLZDTLXDABGKFDAHJDMNJHHBDFCJPDEJBCMKLFLCNKLBNKPCEFHBNMTHKCVHGEGADDTNPDKJJEGAIGMCHNDFFJLDKLRHEAUETLUCWFBEIEUHMBQAMIDNGBUHPNGDINGFNCCFXJZCCKBDCJNFUBJJPCKJRIDNRDEJWDVHPAIDMKPGKKWGCKKFJBUBIJKCRNDBQIECPNABQEMMEEYMNBXIZFGKGEDADFLKMCOKLEWMNEXMMBVMIHECUJBNODFIYFHJGDSKJDCKEDDIVFNCPJWAOJCFDELFBJQDCJAAEEIMIHGLRHCCUHFNBCCGOLKGQCKGSEDAMIHNRHXCCHONJDMAHGNCKGJMRBVIEBXNBFECCMWBQNLDCHAEHMGGGKZGKMEEZJHDILTDTMBETLVCZKCEKMJGWDPNKFYAZBKLPHDMSGCKCDWKNFUCOGRDJJSDTFFIXAVIJBVIQNRIANVBOJVCMFOCMIABXMIEJEWKZGHMXCHFJCCNABVMUBTHZNODMJKDNKKEEKQGKMGBQNDFHDNJMCYIYCYGOCAJWAMBMMUHCAKIICXFIJFEWIXFGJCCKGUCIMZBMLSDNKACPNCEZJNCQJNCXFZJXCABNHQBXMWGTBGJFEYEFKQEYJBDCNSJCCHKSDMNGHNCWHJLVCYIVDCJBCVHKAGIRARJZDAIRDLFHJAANHSNTBRHRCJFRJFFAMFEGJJEWMLGFCNISDDJQCHJGFEJRDQACIVFDISCUHICQGWDQLSHJCUKQEZEHHXMZFCJLBIEGAKENKBDKNNDCBSMWHPMTBXNCHUBVIGKHCLJIDNLSDILKGNCMGMMLGIKUETAXIRNUHVABDEKBEBKGGDCGFZAZFINCCJGPNMHJBFEBKZGCDSNKGTDEJZCW' def conv(s):return 26*(ord(s[0])-65)+ord(s[1])-65 for k in range(4): fils=choix(k) a=conv(fils[:2]) x1,y1=R*cos(a*pi/180),R*sin(a*pi/180) for i in range(len(fils)/2-1): a=conv(fils[2*i+2:2*i+4]) x2,y2=R*cos(a*pi/180),R*sin(a*pi/180) for n in range(131): x=int(160+x1+(x2-x1)*n/R) y=int(110-y1-(y2-y1)*n/R) set_pixel(x,y,(max(0,get_pixel(x,y)[0]-20),)*3) x1,y1=x2,y2