diff --git a/.gitignore b/.gitignore index 4b5f56a..22f98f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +fuzzer/ + # Byte-compiled / optimized / DLL files __pycache__/ *.py[cod] diff --git a/ast_parser/general_unparser.py b/ast_parser/general_unparser.py index 3a3967d..fdfa39f 100644 --- a/ast_parser/general_unparser.py +++ b/ast_parser/general_unparser.py @@ -107,15 +107,15 @@ class GeneralUnparser: raise Exception("Unknown tag: " + node.tag) def unparse_block(self, node): - self.source += f"{self.block_delimiters[0]}\n" + self.source += f"{self.indentation * self.indentation_character}{self.block_delimiters[0]}\n" self.indentation += 4 for child in node: self.unparse_node(child) self.indentation -= 4 if node.get(GAZ_TY_KEY) is None: - self.source += f"{self.block_delimiters[1]}\n\n" + self.source += f"{self.indentation * self.indentation_character}{self.block_delimiters[1]}\n\n" elif node.get(GAZ_TY_KEY) in [GAZ_TRUE_BLOCK_TAG, GAZ_FALSE_BLOCK_TAG]: - self.source += f"{self.block_delimiters[1]}" + self.source += f"{self.indentation * self.indentation_character}{self.block_delimiters[1]}" def unparse_declaration(self, node, declaration_op: str = '='): variable = node.find(GAZ_VAR_TAG) diff --git a/fuzzer.py b/fuzzer.py index b2dcbd8..a5ddd98 100644 --- a/fuzzer.py +++ b/fuzzer.py @@ -1,4 +1,6 @@ +import io import sys +from contextlib import redirect_stdout from io import StringIO import xml @@ -28,7 +30,7 @@ class GazpreaFuzzer: def fuzz(self): self.generator.generate_ast() - self.write_ast() + self.write_ast() # FIXME sometimes this is none self.gaz_source_gen = GazUnparser(self.generator.ast, True) self.gaz_source_gen.unparse() @@ -40,10 +42,13 @@ class GazpreaFuzzer: self.python_source_gen.unparse() self.ground_truth = self.python_source_gen.source - output = StringIO() - sys.stdout = output - exec(self.ground_truth) - self.out = output.getvalue() + # input = "if __name__ == '__main__':\n while True:\n pass\n" # debug + + with redirect_stdout(io.StringIO()) as buf: + # exec(str(self.ground_truth)) + exec(self.ground_truth, globals(), locals()) # FIXME the exec doesn't actually execute for some reason... + + self.out = buf.getvalue() def write_ast(self): dom = xml.dom.minidom.parseString(ET.tostring(self.generator.ast).decode('utf-8')) diff --git a/fuzzer/ground_truth/fuzz_0.py b/fuzzer/ground_truth/fuzz_0.py deleted file mode 100644 index 9443d4a..0000000 --- a/fuzzer/ground_truth/fuzz_0.py +++ /dev/null @@ -1,95 +0,0 @@ -def main() -> int: - print("Yay!!!") - if True != False != False or True or False and False and False or True == False or False == True != True == False != False == True == False or True != False or False != False != True or False and True == True == True == False and True or False == True == False: - while False: - iFvvefk: int = 998.6637088307759 + -1335048998 + -531.7624818991756 * 979796269 + -792.6322607125422 + -592225416 - 1087839350 * -837.3160123364254 * 1318958218 * 67.52625503105969 / 287.8508430369195 + 601.5365699738045 + -6122332 + -878348699 / 1827562123 - -432984427 + -726373057 + -366679856 * 901.9969603831776 + -426.9157386079004 * 251.33844718767568 * -37832757 + -976.5097884289411 * -895.4327919680005 * 322986991 + 785626801 * 11.219465574590345 + 204.4709439540527 - pass - - - pass - else: - if True and True or False and True == True or False and True != True or True and False or False == False or False == True != True or True == False or True or True and False or False: - print(1674112203, end='') - print(-357617756 + -338692398 + 558.8728008014541 / -1335717708 + -623.9402047782767 + 1817610251 + 541.3719953029026 * -962816756 + 125.81140002531265 * 570.3460551237342 / 240518748 / -222.74020077686328 / 960.9150983750785 - 1390148842 * 836384051 - 1621393886 * -459.58343859673073 * 285.51945160721766 * 1576530159 * -132.25330548257853, end='') - print(1031752209 * 222028194 + -636.0973462532993 - 955092299 * 747251234 - -1206091773 * -1796227373 + -1162458459 / 1707828195 + 1878826318 / 1681883775 * -1683170441 + 1759950489 + 721.9776979656133 / 530.4327145676984 + -1426483774, end='') - ZJZFo: int = -486.02097674215725 - print(628914716 * 302205867 / 2116153093 + 152.12068303647698 / -496.58880394411574 - 929.651686108537 - -1722838888 - 584.027570724123 * 933130609 + 1953485083 + 492.90391164212883 + -596.6237802889334, end='') - print(962.9275944555027 - 169.67642927524935 - 697032692 * 1375145814 * -754700817 + -414631958 * 615.81277796102 + 822.9997967291438 * -603.0399512656624 * 333919199 + -750.057747574866 - 439.73698501911394 - 773.9890935236579 * -872857264 + -547843701 + 290251502 - -45.24754845864982 / 588.4993200501308 + -279.0667725308831 + 951.8256446194405 - 176657293, end='') - FbVToe: int = 931.5528777402608 / -384.14493538823467 / -878.738694418784 + 2079952892 * 329.04472410202493 / -755.9762349474795 / -791.3878148680285 + 1169885815 + -68.24015862155022 / -777616542 + 221.67162445844315 * -1988450944 / 552.1127910986474 + -1174826084 * 1785203291 + -1704822319 * 88.4290866635738 / -315.5047787045164 + -683.2733412633838 * -868.954990376124 - 1771457556 * 262.2895291115592 / 601.995705683303 + 785.6857977079244 + 1391828095 - -1364519159 * -377.6420867107672 * -1594608592 / 637.3004003053406 * -747.3486154250131 - if True == False == False and True == False and False == False != False != False != False: - print(675.6016808105894 / 672.1846725504749 + 393864248 - -34962671 + -949730280 * 365640577 * -1170199599 + -81.80146328099272 * 588827844 * 162.5386788480048 + -829.2585235494105 / -1093607028 + 1561461150 + -377103317 * 432.2527286002239 + -335.52744127916685 / -459.9208089268643, end='') - ZJZFo = 365436160 + -824.2701415327817 / -625705023 + 360.29009098841493 - -734.4370149967081 + -950249541 - -735625562 * -1548062370 + 225.57810251641126 + 947206351 + 439852663 * 951.7801062924127 / -303.15064609905744 + -582.5879735544413 - ZJZFo = -435.9235927999363 * -1555159807 + -721.9124288984544 + 100821 * -840714627 / -609023358 / 2145406266 + -146844113 / -1404381794 / 1093122919 + -472.6755669274552 * -247.39528478109935 + -643.0685712069444 * -178.72817577979208 * -265131176 / -360.93160201140245 + 944444162 * -490.77322680638713 * 225.84812523315054 - -1244460682 * 1275918434 * -770837738 * 1417421722 - -1305660701 + -74952025 - 2026153493 - if True or True and True != False == False == True or False == False == False and True or False and True or False != True == True or True and True != False or False == False == True or True and True != False: - mXmau: int = 529.0245670386205 - pass - else: - print(280.3650720555179 + -714.7021125607312 + 677.4595108817746 / -848.5961314359109 + 356.06809071174166 + 571807716 + -636.4006417759947 * -995511309 + -2021507208 + -691.3940762520989 - -1361466285 + -1064832014 / -1069860870 * -330610489 / -259389380 * 1171580909 + -86.33525227650728 - 1791916538 / 174.88981989270633 + -464552306 - -430.50385756665 + 1678833446 + 1190278621 + -1528894250, end='') - print(-1509668201 * -575.3647742520532 - -393.1748928494843 - 809615523 / -1266677292 * 304.15628152695103 + -116.09357754443579 + 346.7462841831864 - -1947535897 - 1072165870 + 283.54626500118115 + -1990955046 + 1083196355 + -210.38102614686636 * 1812179447 - -906.868356555841, end='') - print(-323922098 - 1024625665 / 324409137 * 846251651 / 1473996679 + 973.356915485263 + 1442336635 + -774988972 + 165851165 * 1214534978 - 1604736495 / -712.5639484919421 + -929.3346058446986 + 467.84359666611704 + -263.60505845487035 * 893075746 * -520.4818097424368 + -1034398754 / -1509517197, end='') - GippAHk: int = 270.070811501746 / -544.3100462772375 * 898.4244473446197 / -49.017587497639056 - 1970055173 * 803.5659927128338 / 625165306 + 412.3103357246064 + 640.1810041192198 * -1461793244 - 203.80269155322117 / -897.8863463278215 * -793907577 * -1241535471 / -827.7884319080499 + 943866055 * 798524002 - 705.5170266551672 + -484.91170227674286 * 411.43294809229724 + 726.6959496544891 + -847.6115013097972 / 338.59120858007896 * -239824504 - -1881491221 * -708.2010116279498 * -269149175 + -2035598696 / 240.21469939083045 - 452.68382843780773 * -247.81118896400335 - print(639.7115673087274 - 792.1545794502192 + -427.13065893012185 - 921.719113885503 + 341668546 - -496.4294789299277 + 1801951246 - -50.00352891614398 * -1257746077 + 1518501592 / -34.931014260717575 + 98397192 + 1707028437 + -422071392 - 411.1331084638043 * -1610145721 * 760.9930717001826 * 533.4787858568322, end='') - pass - pass - else: - ZJZFo = 60260502 - 64.5452567337004 / -302.92195527561944 + -1381097228 * -427079432 + 350.25199292221487 - 523.5332793693046 + -705689050 / -317.14848025528534 + 2144851551 / -824784416 + 1463156443 / 785.2643174917516 * 379455319 + -1167398968 + 807.675203612825 - pass - print(1926359165 / 415.1610205846316 / 681.2652031043594 * 724.504760776291 / -563.2984437512482 * -160747264 + 734.8641217600436 / 788775086 / 1182596185 + 350088873 * -763.5792856345267, end='') - pass - else: - print(-832.986047759642 * 193.01265861146476 - 938072888 - -556.1356245393301 - -246.38375205294574 + -372.6979351427053 / -557.1220823370436 + -475.832653176896 + -471767374 * 52.18972712838831 + -272.19259189394404 / 207.91230146549333 / -575.0903560214897 * 1001718999 / -362.36240656362236 + 2052730730 / -323490487 + -1381195092 * -1560279573 - -1866650835 * 78.50430260164694 / 1605260713 / -33611568 / -1804809171 + 393.2603485106615 * -422699864 * 426.7065947662493 - 755.5778941241831, end='') - print(1409503489 * -965999680 * -1190338883 * -410955789 / -442450543 + -737755477 - 1636929549 * 1574064022 - 355.52021111667955 * 821537720 * -943214676 * -920.7134316768561 * -175.6903534153356, end='') - print(871.324161344799, end='') - yIX: int = -13.616741019374558 - 205.11323175721918 + -616.6329280552021 + 228.58535492598003 + 1582714246 * -675.0129831195715 - -796.9866478177992 + -983.3072247811614 + -1805417156 + 404.93160710091524 * -86.83473775520861 * -1844684386 + 681220187 * 508.9111445520066 * -113142180 - yIX = -770.6633946459676 + -1298404372 * 1135919888 / -1270463238 - -982432246 / 342746605 * 665.1385773708698 - -1316863665 / -59.12396966566496 / -95.31460732448932 + 2074989382 - -1478383919 / 535.370471722543 - pass - pass - return 0 - print(522700167 / -936.2188737818726 - -284314512 + -1807470644 * 460.13479111933 + -107.29385671773355 * -1916345270 + -1111741236 + 678.1422394273245 / -2043374407 - -515443325 / 230.46623212150212 + -329.91429488181257 + -315.14455474867395 + -666.9738647220536, end='') - pass - - -def cKeFfvNSO(tJjRMY: int, OJdnm: int, idabmXc: int, goVSueDFUF: int, WqKxMhdf: int, an: int, RWcDd: int, yiqLW: int, fhSQifpS: int) -> int: - return 976.5604811132835 - pass - - -def QZFVtOgND(dl: int, dngIWNH: int, caJPVxfNM: int, VXuZq: int, remsGTyuP: int, UaAQkOSn: int) -> int: - E: int = -1728566667 / -21284470 / -911.6747617503182 + 956.2186341171032 / -97.84650245209843 / 984.3340879674806 * -947394397 * 1149672856 * 2014419534 * -621.5460477024158 - 1560595300 * 1250081533 * -202200985 * -131.4553046771873 / -422.53358983217447 * -559.5246275170678 * -1578783722 * -918.2520731761932 * -945.9371969335295 / -952.7353381159473 / 297856255 / -646.0313016538208 / -1705737067 + 657466258 * -1259868657 - return -814291224 / -156.12049869140105 / 501.3299188630551 - 780.5447650695846 * 478699662 + -50.75240815043139 / -548.9773428465007 / 471.5258722815322 + -996483372 / 2019442779 + 708.8459689251431 + 446.9582514870467 - 975.7591211250124 - 855.0164391020755 / 424.59904045018015 - 394.1549861877645 * -342.6762496548479 / -905.7484897703898 * -704.0803281173152 + -1492107194 - 219759481 + 97.48229295950955 - E = -63.050266535063656 - -2143078511 * 300.10590716531647 / 280.4552750890541 * -354.33371271110616 + -779.2911153798611 * 804723086 + -131.87470429028588 + -426843037 * -1230391487 - 259579962 / 420.75618928173867 / 630.8876151700647 * 714.7667619482725 * -383.9772396595331 + -777.2904649615396 / 47.033828130535085 + 1702254500 + -841.5589229263278 - 34371587 - print(214.04345700655244 + -132.38854892731558 * 1918637766 - -814.1333073890353 * 954.734071747846 + -791.4098380274695 - 376.43801246424005 / -598.4353372745975 * -1188591955 * -1239683678 - 23.150208310398284 * 1690049913 + 1723686148 * -123.83650939461518 - 273756616 + -1946894287 / -982.9431222409283 * -1907836473 - -1579999152 * 984.3543468036967 - 2138102924, end='') - E = 819852514 + 263.2852661619545 / -100.64760053419366 - 916.2690137402069 * 334815646 * 120.90775118449255 / -954.4156806714317 + 886094541 / -989.2746376791006 / 779237095 - print(1311220517, end='') - E = -800423064 * 1737371444 + 570529613 + 302.79744282760885 + 261.6655428509639 * 244.9287296021596 - 744.6401448172285 / -722.2584625059367 * 116.71837714576122 - -822549358 + -39.44830412691999 / -241.03855775427155 + -1390020720 + -1847370652 + -458.4446475643174 + -2005658162 - 372453583 * -1044399789 + 1886656262 - 747.3311081878439 - print(589.4378665302779 / 953529642 + 311.3945418743824 / -17114969 / -1739185577 + 289.88025107634803 + 98859896 / 939.0892161270897 + 1922387879 / 553.8928310603637 + -676155939 - -443.7849761752093 + 902.051215497898, end='') - print(-320.3860601132285, end='') - E = -227775535 + 1954435512 - 16748881 / 360673060 + 217374628 * -772112545 - 407.4543873460407 * -881506117 * 426781126 / 1518425547 / 796.4830793155686 * 57.92316805524774 - -776901536 + -799912212 * -581591422 / 915.7263690951838 * -71.05673981846519 + 726354568 * 228.45444184425241 * 473.30224190639115 + 1499886015 / -201.5816286645627 / -299.91102193986 / 1852599670 + 1429157377 * 435525372 - pass - - -def V(DQkWq: int, UAXuR: int, pG: int) -> int: - return -920429093 / 888496412 * -658.3870073127405 / -1417101544 * -1275305719 - -281.6824215940437 + -1666383182 / -495.60216497070473 + -326.22167955002874 - pass - - -def srGY(JNV: int) -> int: - pQfshZN: int = 839.6152210820176 - return 881.0625330521868 * -908723143 * 1858896514 / -1328090603 * 36.36570370147365 - -1771203910 * -561283564 + -1722038900 * -475.0002098029436 / 579.7075647636375 - -1895682099 * -941.7336917064931 * -1754977252 + -1640629691 + -670.8881757298172 * 111.08062415554764 + 976.2271943452752 + -2102310242 + 374.2186457232542 + 954943165 / 1741122145 / -382.6037188677907 * 690.3824830798746 - print(-40.601593053755096, end='') - UvzUChcm: int = 193.62568976793523 * -484.35103116894584 / -51.684934772985116 + 507.75001138046287 + 1535171137 + -70.44524594535926 * -1172691871 / -670.11924273522 / -1757407880 + 676848125 - -349.9942854850193 - 414.2967678577695 - 182.84029916285886 - -103534265 - 58.09385626050698 * -517.0303797391917 / 382.56939485664157 * -320.44879750373934 + -1159792823 / 21.820215432466284 * -1421683464 - pQfshZN = 1925085733 * -605.3315012546727 - -26.166433031155293 * 293717536 / 552.5314482677707 / -301125219 + -545312999 + -894633829 - -2105582813 + -1001432334 + -333954651 - -361748183 / -309.970509470558 / 944273833 - 163.18861805280358 + 645927236 - Nfugb: int = -1487202995 - pQfshZN = 885987034 + -199888337 / 259.4435222273189 * -1170143277 / -330.328436221984 * -847.5033952774336 * -1369051563 / -2068253809 * 382.5493980540059 + 419340224 / -736.1909489568326 + 2062414382 * 676692011 / 916.6212081198407 + 351.6862060774074 / -665.6329915979682 - pass - - -def iChNRWyV(B: int, hmKUUXf: int, zbITwEBKk: int, SJkO: int, BsoQOUF: int, zvG: int, KSqncEoUye: int, f: int) -> int: - return 588.3957194112329 + 588.7810854308932 + 92.722978820045 / -986764485 / -540217960 - -268403962 + 1059509805 + -355.0128693450048 + -838.5077570385592 + 116347036 - -729.0420157778348 + -1303163846 / -1840264690 + -844.3739283992902 * 1334796152 + -951.0726105711817 / 1383758772 + -1658388648 + 238053614 - asLE: int = 456.5738209745707 * -770.3671020540505 + 286296762 - -2067139425 / -1156277300 - -1398650096 - -758.7474093607465 - -151982089 / -1478176182 - pass - - - -if __name__ == '__main__': - main() \ No newline at end of file diff --git a/fuzzer/input/fuzz_0.in b/fuzzer/input/fuzz_0.in deleted file mode 100644 index 7390dda..0000000 --- a/fuzzer/input/fuzz_0.in +++ /dev/null @@ -1,76 +0,0 @@ -procedure main() returns integer { - if (true xor false xor false or true or false and false and false or true == false or false == true xor true == false xor false == true == false or true xor false or false xor false xor true or false and true == true == true == false and true or false == true == false) { - loop (false) { - var integer iFvvefk = 998.6637088307759 + -1335048998 + -531.7624818991756 * 979796269 + -792.6322607125422 + -592225416 - 1087839350 * -837.3160123364254 * 1318958218 * 67.52625503105969 / 287.8508430369195 + 601.5365699738045 + -6122332 + -878348699 / 1827562123 - -432984427 + -726373057 + -366679856 * 901.9969603831776 + -426.9157386079004 * 251.33844718767568 * -37832757 + -976.5097884289411 * -895.4327919680005 * 322986991 + 785626801 * 11.219465574590345 + 204.4709439540527; -} - -} else { - if (true and true or false and true == true or false and true xor true or true and false or false == false or false == true xor true or true == false or true or true and false or false) { - 1674112203 -> std_output; - -357617756 + -338692398 + 558.8728008014541 / -1335717708 + -623.9402047782767 + 1817610251 + 541.3719953029026 * -962816756 + 125.81140002531265 * 570.3460551237342 / 240518748 / -222.74020077686328 / 960.9150983750785 - 1390148842 * 836384051 - 1621393886 * -459.58343859673073 * 285.51945160721766 * 1576530159 * -132.25330548257853 -> std_output; - 1031752209 * 222028194 + -636.0973462532993 - 955092299 * 747251234 - -1206091773 * -1796227373 + -1162458459 / 1707828195 + 1878826318 / 1681883775 * -1683170441 + 1759950489 + 721.9776979656133 / 530.4327145676984 + -1426483774 -> std_output; - var integer ZJZFo = -486.02097674215725; - 628914716 * 302205867 / 2116153093 + 152.12068303647698 / -496.58880394411574 - 929.651686108537 - -1722838888 - 584.027570724123 * 933130609 + 1953485083 + 492.90391164212883 + -596.6237802889334 -> std_output; - 962.9275944555027 - 169.67642927524935 - 697032692 * 1375145814 * -754700817 + -414631958 * 615.81277796102 + 822.9997967291438 * -603.0399512656624 * 333919199 + -750.057747574866 - 439.73698501911394 - 773.9890935236579 * -872857264 + -547843701 + 290251502 - -45.24754845864982 / 588.4993200501308 + -279.0667725308831 + 951.8256446194405 - 176657293 -> std_output; - const integer FbVToe = 931.5528777402608 / -384.14493538823467 / -878.738694418784 + 2079952892 * 329.04472410202493 / -755.9762349474795 / -791.3878148680285 + 1169885815 + -68.24015862155022 / -777616542 + 221.67162445844315 * -1988450944 / 552.1127910986474 + -1174826084 * 1785203291 + -1704822319 * 88.4290866635738 / -315.5047787045164 + -683.2733412633838 * -868.954990376124 - 1771457556 * 262.2895291115592 / 601.995705683303 + 785.6857977079244 + 1391828095 - -1364519159 * -377.6420867107672 * -1594608592 / 637.3004003053406 * -747.3486154250131; - if (true == false == false and true == false and false == false xor false xor false xor false) { - 675.6016808105894 / 672.1846725504749 + 393864248 - -34962671 + -949730280 * 365640577 * -1170199599 + -81.80146328099272 * 588827844 * 162.5386788480048 + -829.2585235494105 / -1093607028 + 1561461150 + -377103317 * 432.2527286002239 + -335.52744127916685 / -459.9208089268643 -> std_output; - ZJZFo = 365436160 + -824.2701415327817 / -625705023 + 360.29009098841493 - -734.4370149967081 + -950249541 - -735625562 * -1548062370 + 225.57810251641126 + 947206351 + 439852663 * 951.7801062924127 / -303.15064609905744 + -582.5879735544413; - ZJZFo = -435.9235927999363 * -1555159807 + -721.9124288984544 + 100821 * -840714627 / -609023358 / 2145406266 + -146844113 / -1404381794 / 1093122919 + -472.6755669274552 * -247.39528478109935 + -643.0685712069444 * -178.72817577979208 * -265131176 / -360.93160201140245 + 944444162 * -490.77322680638713 * 225.84812523315054 - -1244460682 * 1275918434 * -770837738 * 1417421722 - -1305660701 + -74952025 - 2026153493; - if (true or true and true xor false == false == true or false == false == false and true or false and true or false xor true == true or true and true xor false or false == false == true or true and true xor false) { - const integer mXmau = 529.0245670386205; -} else { - 280.3650720555179 + -714.7021125607312 + 677.4595108817746 / -848.5961314359109 + 356.06809071174166 + 571807716 + -636.4006417759947 * -995511309 + -2021507208 + -691.3940762520989 - -1361466285 + -1064832014 / -1069860870 * -330610489 / -259389380 * 1171580909 + -86.33525227650728 - 1791916538 / 174.88981989270633 + -464552306 - -430.50385756665 + 1678833446 + 1190278621 + -1528894250 -> std_output; - -1509668201 * -575.3647742520532 - -393.1748928494843 - 809615523 / -1266677292 * 304.15628152695103 + -116.09357754443579 + 346.7462841831864 - -1947535897 - 1072165870 + 283.54626500118115 + -1990955046 + 1083196355 + -210.38102614686636 * 1812179447 - -906.868356555841 -> std_output; - -323922098 - 1024625665 / 324409137 * 846251651 / 1473996679 + 973.356915485263 + 1442336635 + -774988972 + 165851165 * 1214534978 - 1604736495 / -712.5639484919421 + -929.3346058446986 + 467.84359666611704 + -263.60505845487035 * 893075746 * -520.4818097424368 + -1034398754 / -1509517197 -> std_output; - var integer GippAHk = 270.070811501746 / -544.3100462772375 * 898.4244473446197 / -49.017587497639056 - 1970055173 * 803.5659927128338 / 625165306 + 412.3103357246064 + 640.1810041192198 * -1461793244 - 203.80269155322117 / -897.8863463278215 * -793907577 * -1241535471 / -827.7884319080499 + 943866055 * 798524002 - 705.5170266551672 + -484.91170227674286 * 411.43294809229724 + 726.6959496544891 + -847.6115013097972 / 338.59120858007896 * -239824504 - -1881491221 * -708.2010116279498 * -269149175 + -2035598696 / 240.21469939083045 - 452.68382843780773 * -247.81118896400335; - 639.7115673087274 - 792.1545794502192 + -427.13065893012185 - 921.719113885503 + 341668546 - -496.4294789299277 + 1801951246 - -50.00352891614398 * -1257746077 + 1518501592 / -34.931014260717575 + 98397192 + 1707028437 + -422071392 - 411.1331084638043 * -1610145721 * 760.9930717001826 * 533.4787858568322 -> std_output; -}} else { - ZJZFo = 60260502 - 64.5452567337004 / -302.92195527561944 + -1381097228 * -427079432 + 350.25199292221487 - 523.5332793693046 + -705689050 / -317.14848025528534 + 2144851551 / -824784416 + 1463156443 / 785.2643174917516 * 379455319 + -1167398968 + 807.675203612825; -} 1926359165 / 415.1610205846316 / 681.2652031043594 * 724.504760776291 / -563.2984437512482 * -160747264 + 734.8641217600436 / 788775086 / 1182596185 + 350088873 * -763.5792856345267 -> std_output; -} else { - -832.986047759642 * 193.01265861146476 - 938072888 - -556.1356245393301 - -246.38375205294574 + -372.6979351427053 / -557.1220823370436 + -475.832653176896 + -471767374 * 52.18972712838831 + -272.19259189394404 / 207.91230146549333 / -575.0903560214897 * 1001718999 / -362.36240656362236 + 2052730730 / -323490487 + -1381195092 * -1560279573 - -1866650835 * 78.50430260164694 / 1605260713 / -33611568 / -1804809171 + 393.2603485106615 * -422699864 * 426.7065947662493 - 755.5778941241831 -> std_output; - 1409503489 * -965999680 * -1190338883 * -410955789 / -442450543 + -737755477 - 1636929549 * 1574064022 - 355.52021111667955 * 821537720 * -943214676 * -920.7134316768561 * -175.6903534153356 -> std_output; - 871.324161344799 -> std_output; - var integer yIX = -13.616741019374558 - 205.11323175721918 + -616.6329280552021 + 228.58535492598003 + 1582714246 * -675.0129831195715 - -796.9866478177992 + -983.3072247811614 + -1805417156 + 404.93160710091524 * -86.83473775520861 * -1844684386 + 681220187 * 508.9111445520066 * -113142180; - yIX = -770.6633946459676 + -1298404372 * 1135919888 / -1270463238 - -982432246 / 342746605 * 665.1385773708698 - -1316863665 / -59.12396966566496 / -95.31460732448932 + 2074989382 - -1478383919 / 535.370471722543; -}} return 0; - 522700167 / -936.2188737818726 - -284314512 + -1807470644 * 460.13479111933 + -107.29385671773355 * -1916345270 + -1111741236 + 678.1422394273245 / -2043374407 - -515443325 / 230.46623212150212 + -329.91429488181257 + -315.14455474867395 + -666.9738647220536 -> std_output; -} - -procedure cKeFfvNSO(integer tJjRMY, integer OJdnm, integer idabmXc, integer goVSueDFUF, integer WqKxMhdf, integer an, integer RWcDd, integer yiqLW, integer fhSQifpS) returns integer { - return 976.5604811132835; -} - -procedure QZFVtOgND(integer dl, integer dngIWNH, integer caJPVxfNM, integer VXuZq, integer remsGTyuP, integer UaAQkOSn) returns integer { - var integer E = -1728566667 / -21284470 / -911.6747617503182 + 956.2186341171032 / -97.84650245209843 / 984.3340879674806 * -947394397 * 1149672856 * 2014419534 * -621.5460477024158 - 1560595300 * 1250081533 * -202200985 * -131.4553046771873 / -422.53358983217447 * -559.5246275170678 * -1578783722 * -918.2520731761932 * -945.9371969335295 / -952.7353381159473 / 297856255 / -646.0313016538208 / -1705737067 + 657466258 * -1259868657; - return -814291224 / -156.12049869140105 / 501.3299188630551 - 780.5447650695846 * 478699662 + -50.75240815043139 / -548.9773428465007 / 471.5258722815322 + -996483372 / 2019442779 + 708.8459689251431 + 446.9582514870467 - 975.7591211250124 - 855.0164391020755 / 424.59904045018015 - 394.1549861877645 * -342.6762496548479 / -905.7484897703898 * -704.0803281173152 + -1492107194 - 219759481 + 97.48229295950955; - E = -63.050266535063656 - -2143078511 * 300.10590716531647 / 280.4552750890541 * -354.33371271110616 + -779.2911153798611 * 804723086 + -131.87470429028588 + -426843037 * -1230391487 - 259579962 / 420.75618928173867 / 630.8876151700647 * 714.7667619482725 * -383.9772396595331 + -777.2904649615396 / 47.033828130535085 + 1702254500 + -841.5589229263278 - 34371587; - 214.04345700655244 + -132.38854892731558 * 1918637766 - -814.1333073890353 * 954.734071747846 + -791.4098380274695 - 376.43801246424005 / -598.4353372745975 * -1188591955 * -1239683678 - 23.150208310398284 * 1690049913 + 1723686148 * -123.83650939461518 - 273756616 + -1946894287 / -982.9431222409283 * -1907836473 - -1579999152 * 984.3543468036967 - 2138102924 -> std_output; - E = 819852514 + 263.2852661619545 / -100.64760053419366 - 916.2690137402069 * 334815646 * 120.90775118449255 / -954.4156806714317 + 886094541 / -989.2746376791006 / 779237095; - 1311220517 -> std_output; - E = -800423064 * 1737371444 + 570529613 + 302.79744282760885 + 261.6655428509639 * 244.9287296021596 - 744.6401448172285 / -722.2584625059367 * 116.71837714576122 - -822549358 + -39.44830412691999 / -241.03855775427155 + -1390020720 + -1847370652 + -458.4446475643174 + -2005658162 - 372453583 * -1044399789 + 1886656262 - 747.3311081878439; - 589.4378665302779 / 953529642 + 311.3945418743824 / -17114969 / -1739185577 + 289.88025107634803 + 98859896 / 939.0892161270897 + 1922387879 / 553.8928310603637 + -676155939 - -443.7849761752093 + 902.051215497898 -> std_output; - -320.3860601132285 -> std_output; - E = -227775535 + 1954435512 - 16748881 / 360673060 + 217374628 * -772112545 - 407.4543873460407 * -881506117 * 426781126 / 1518425547 / 796.4830793155686 * 57.92316805524774 - -776901536 + -799912212 * -581591422 / 915.7263690951838 * -71.05673981846519 + 726354568 * 228.45444184425241 * 473.30224190639115 + 1499886015 / -201.5816286645627 / -299.91102193986 / 1852599670 + 1429157377 * 435525372; -} - -function V(integer DQkWq, integer UAXuR, integer pG) returns integer { - return -920429093 / 888496412 * -658.3870073127405 / -1417101544 * -1275305719 - -281.6824215940437 + -1666383182 / -495.60216497070473 + -326.22167955002874; -} - -function srGY(integer JNV) returns integer { - var integer pQfshZN = 839.6152210820176; - return 881.0625330521868 * -908723143 * 1858896514 / -1328090603 * 36.36570370147365 - -1771203910 * -561283564 + -1722038900 * -475.0002098029436 / 579.7075647636375 - -1895682099 * -941.7336917064931 * -1754977252 + -1640629691 + -670.8881757298172 * 111.08062415554764 + 976.2271943452752 + -2102310242 + 374.2186457232542 + 954943165 / 1741122145 / -382.6037188677907 * 690.3824830798746; - -40.601593053755096 -> std_output; - const integer UvzUChcm = 193.62568976793523 * -484.35103116894584 / -51.684934772985116 + 507.75001138046287 + 1535171137 + -70.44524594535926 * -1172691871 / -670.11924273522 / -1757407880 + 676848125 - -349.9942854850193 - 414.2967678577695 - 182.84029916285886 - -103534265 - 58.09385626050698 * -517.0303797391917 / 382.56939485664157 * -320.44879750373934 + -1159792823 / 21.820215432466284 * -1421683464; - pQfshZN = 1925085733 * -605.3315012546727 - -26.166433031155293 * 293717536 / 552.5314482677707 / -301125219 + -545312999 + -894633829 - -2105582813 + -1001432334 + -333954651 - -361748183 / -309.970509470558 / 944273833 - 163.18861805280358 + 645927236; - var integer Nfugb = -1487202995; - pQfshZN = 885987034 + -199888337 / 259.4435222273189 * -1170143277 / -330.328436221984 * -847.5033952774336 * -1369051563 / -2068253809 * 382.5493980540059 + 419340224 / -736.1909489568326 + 2062414382 * 676692011 / 916.6212081198407 + 351.6862060774074 / -665.6329915979682; -} - -function iChNRWyV(integer B, integer hmKUUXf, integer zbITwEBKk, integer SJkO, integer BsoQOUF, integer zvG, integer KSqncEoUye, integer f) returns integer { - return 588.3957194112329 + 588.7810854308932 + 92.722978820045 / -986764485 / -540217960 - -268403962 + 1059509805 + -355.0128693450048 + -838.5077570385592 + 116347036 - -729.0420157778348 + -1303163846 / -1840264690 + -844.3739283992902 * 1334796152 + -951.0726105711817 / 1383758772 + -1658388648 + 238053614; - var integer asLE = 456.5738209745707 * -770.3671020540505 + 286296762 - -2067139425 / -1156277300 - -1398650096 - -758.7474093607465 - -151982089 / -1478176182; -} - diff --git a/fuzzer/outputs/fuzz_0.out b/fuzzer/outputs/fuzz_0.out deleted file mode 100644 index e69de29..0000000 diff --git a/gazprea_fuzzer.py b/gazprea_fuzzer.py index d8ed67c..a979c3c 100644 --- a/gazprea_fuzzer.py +++ b/gazprea_fuzzer.py @@ -1,5 +1,6 @@ import os import random +from contextlib import redirect_stdout import yaml @@ -36,10 +37,13 @@ class Fuzzer(): f.write(self.fuzzer.source) with open("fuzzer/debug/{}_{}.out".format(self.file_name, i), 'w') as f: f.write(pretty) - with open("fuzzer/outputs/{}_{}.out".format(self.file_name, i), 'w') as f: - f.write(self.fuzzer.out) with open("fuzzer/ground_truth/{}_{}.py".format(self.file_name, i), 'w') as f: f.write(self.fuzzer.ground_truth) + with open("fuzzer/ground_truth/{}_{}.py".format(self.file_name, i), 'r') as f: + with open("fuzzer/outputs/{}_{}.out".format(self.file_name, i), 'w') as y: + with redirect_stdout(y): # Workaround for fuzzer.py:49 + exec(f.read(), globals(), locals()) + # y.write(self.fuzzer.out) # with open("fuzzer/instream/{}.in".format(i), 'w') as f: # f.write(self.fuzzer.source) # with open("fuzzer/outputs/{}.out".format(i), 'w') as f: