Tutorial About Api





A list of candidate functions for the exploit.

Done using a modified version of ChainSecurity's reentrancy scan script for Eveem/Bigquery.

The list contains most of the mainnet contracts that
have a send that is followed by a storage write.

I used it to find the first potential contracts that
would be exploitable using the fork.

Understanding the list and finding exploits - click here


Check out this article to learn how to generate such lists yourself.

Happy hunting!



unique functions:  3325

0xEcB9DAC84d77a4a31264CDb2F863288A6FC44235
0xade45fD0e602543B76cFAbBC0c8515F3A91B25B9
0xC04D150599D35833fFfbF45913ddd532Fa47e276
0xF5FCfFA54Be40Da1BEF2eD5A1A9C3D2A2b06B818
0x5B0CbC09555D3160F287ac40954dBe2cc547AA2E
+160 more

safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor7.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], False
          if not stor7.0:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor7.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, False

0x8dd6735Eb57D145e2a3Df4eea07F06ffC45403BC
0x6c1B0b8E4aA66bFE6Ce1019Ef93887F32BC50A85
0x296DEE77531ede4167e4e2a26fc3d3AfCF05C566
0xfb4f9E002763b9D8A48EFcE8AB8A33e4d3bC9efC
0xCc57496a0594197476719eaB4e35950454B4AC3C
+80 more...

safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor7.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], 0
          if not stor7.0:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor7.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, 0

0xD5278C0bbB7A3e5Dd9C6BcA5da814b989e266016
0x29cd957139DAe4a381eaC1913b2A41d432235637
0xeD4bA2958a08511B615b6C92015a56C2cA05ba07
0xf757d403Bf7Fc70B6912FEB03f52F40f1880c445
0xd25cd68fD05176d6188c55eED8E2f079158b6237
0x62aAE52eaE43e7f8DE39Aa3cA42F06185AB7aaC9
0xEcbD0854075009D23360C62dA07047EfC2312144
0x7f15a739714fEC5E32039Eec91a22B0560EAFd46
0xb04eE6be2B98C9Ed24be5585329891fEa036829a
0x1F02BC916F0e4C5ea0FaA2b7DD1811A4C111d556
0x9B2dE3808E64a2a7DdFAb46E991D9F354Acde54D
0x9d3053E598b3332dDe14825C03141dC32EaB4E77
0x9CB7C480e3B9d7811BEA315d7d0d6e5494305365
0xca64A1F5437E74bB1B77c9a7618838e55F9dDf2d
0x62588245724a19E7E0Fe837eaf6D657815A678e2
0xC43fbA7Bf0250FcD88439AF086475FDf117fa255
0x462e094B91c48082dab6650Dd9DD44a0a3774343
0x8420bf54893d472C6053CBdEcdAe90412698Afa7
0x5C00813a248fFa27e725dd24963964767A4223F3
0x36bDfebC5c817bD1B1BC042410439170267B31E5
0xAb93b5814E683C541f694992C6787C31249183E4
0x9193f99d251a2d3535EC66e9aC3cbC2DDa2C551C
0x078FDF6570B2385793e1a2dB2d76FceEafb46F74
0x2Eb8c35Df66B52CE453B49b5c12A201c61438877
0x565df1918bE0037dB046118B0231cE84c7A84160
0x9D282df895d805bb4e17F804c5af4e3191752B9e
0x538A06c81f95CEa33becaD16B8d3FEfe08Eb4C45
0x7eE5a349EC61b92b649aa8fF30fFBa5DF4733Fe7
0x24F8752aE86cdd340BC40e606e6F89844B1cFe77
0x6F7D68Ae5Ecc966fF4415197DE4756211DEDa0fF
0x12566c0B378a75cF972abdABf0F4eda813C34Ca6
0x613d60f5511ca45907f1aB32f7F6F0eb8eb6150B
0x1A7f7770De7FBBfE242DB161e69BdF96e155f136
0xAB4C1308608873Be5c7dB454668AB7E3e0dbE030
0x937380C8A525bA060d3a5Fa0bEd51E8dF0BBdE10
0x8c9Ddf927dfB6Ca309E6ef23BB1A92Af68367079
0x15f9C17272CBFeB6Dc4F655a405411b13fF5E04e
0x57137Beaf66d898903a562674bf00Bc1060D0B5E
0x1ef596539bA58f6eD3E88Dcff53819f236AF7Ef6
0xc190fE7b78E72d6a581CCC7DA04de990207AD290
0x2e7Ee6CAFbEA371d3d85a491e6d47922c80F6B3b
0x25Aa2D83d193F3d83C9fA2A5FA90b3D195d61355
0x7ebE04aC78C0d965A9b740e25fc871cCa35E00Fb
0x341718867202dA12142858fa26e1184942B3996A
0xAd1d1b60a5713E684D299137C60F7Ba2D8029d78
0x2842AE38e9F5E52517DdB9936c0a3610Caf543a9
0xd946bE2B7a614cA2D60BD042cF8A40d0d0Af93b9
0xb938e9992a6E24a3961671838e129967b7ea42fB
0xC3Af01b683521e0206DC167aC4Bd8aCC8fA2b424
0x3De2716ab58d3243D514D78a1B39D90224E91879
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor7.0.uint8:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], False
          if not stor7.0.uint8:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor7.0.uint256 = False or (stor7.8.248 << 248)
      log 0xe842aea7, beneficiaryAddress, amountRaised, False

0xDf94E52c958815efcfB8B2f22c50b62fDe6585ca
0x29Df438580C9363582beCde65D49B9b742e4D7B3
0xc511b0457AC7F513f6fFb8a6e69f05C551de932b
0x2b23ffB70Ff204f91ab9a882EDac85cA929fEB5b
0xE80Cb69684E55C3E7eBbdd27Ec8A7f1251da6E94
0x15d94EBd8672C4E94166C49Af1d6f842658E4Ebb
0x1F2504FafBE603c237Ae63BCb3eEC25837B9E151
0x2A04cFC0D4838E223505438Dcd18d425D952C9B1
0x98456dB61759E2Bec7C8018B574a4b046c52e770
0x8121c58F3F7785197d39162822f771806B318380
0x38A0e6d52Fb63f7B6f9eBc326c3Fd8b06eDdf9B6
0xA29d8Dbd8E5F4c36843845D6fBcD587F02EdB327
0xC40f54c263c657292FE85868711F01D99A633836
0x6129546245748Ef8dA16B6B88Aecf4e4e6019722
0x8E47C173e5875779b5beABfeb41D7b2bf312dada
0x8C9B7307002752E470445E0CE6F2badef452e8C3
0x3ec6475845eE1f5036B074075188D9A91140921A
0x9fd34d2eB546481232F8f56EAd393E6f17ED5D85
0x88DB39fE6ad8509EC28C2747D4965F795c19efA7
0x3FbbA132b0def93a928bBdF5070468078dF2DC4d
0x52263d5712bC27B611622fedcF3C6fDcB2252d94
0x681b1778a95bB26384753754493c7645e4dda36F
0x1C83cA8Fa6A5F883AAa54C12561B0533f7DDC220
0xfD3172da9b1e26aC37639bfBdCb9013E965DC5d5
0x12029cBE6076b72cA603E7A30bce89963830f41B
0x3008a7b14710a1117ee71C45f0F978B419CA6E19
0x4A11D3587af195BD5d1611a96e4D5d5559585E4F
0x04DD05a9da04b3eCbf529B9514cb5803314b6805
0x1De9Ac4B32D69956d721fCB9Df57fF1f9eC97B37
0x45E2A1978c1E21D2f057DEaDFCD6bb47b0b3B5c3
0x99c69134877a76f82d0D0043e37b9F22B78bc979
0x4dE9324A4F769885Fbad60bD58Cabba69DDdfaef
0xA734B570EC79D31Ed40d8c64ec39C062af7344a1
0xc5F48613c69CB274e6C20CD56132c61652C639Cc
0xbcf2dA7ffCAb7e8B82aFAe1aF58AB3E75643DA1f
0xAd294B80c75a22FDC2a202feb95d7F0FBa8C7017
0xB342183947711D0d58f6783d66845c5Ee4F429C0
0xf1BdB75104c33550f1c632c2f88d064c75046897
0x126D3F9f8e6b2743CA3855611fd5F7cC32692547
0x14eF76DDF0D81A2e120859C8Cc31e6Fd64e8Deb0
0xa379667F7e36DE848aB0a0DBCF8A4E796854aC3B
0xd9b8733dCD81eF8Cdd05e8635c891eC4a2D60a67
0x049C194043CcF955aF6d7A2fc58E683DD6F0FD10
0x46Ff57CbC8D72609E673dAe0200b719eaF2c6998
0xB7236937bC717711b1E200A8fc5Ef77e23ACC233
0x8A0ec522a1C635F2620cD6786a80375F266BfCcA
liquidateUser(address _user, uint256 _sentValue)
def liquidateUser(address _user, uint256 _sentValue) : # not payable
  require caller == ownerAddress.addr
  require totalSupply
  call addr(_user) with:	# withdraw / default function
       gas 2300 * not ((_sentValue * ((10000000 * balanceOf[addr(_user)]) / totalSupply)) / 10000000) wei
     value (_sentValue * ((10000000 * balanceOf[addr(_user)]) / totalSupply)) / 10000000 wei
  if ext_call.success:
      balanceOf[addr(_user)] = 0

0x6E561B66f393166d611f40A1e82E373f00270393
0xFc370fDD6a5441A7B367099645E4393c904F7c94
0x46C4723111e2bAFeF7d5d0664B3F7BC68D875DeA
0x39B058eC8B2fa19Cec655A87EaC127Ba434111b1
0x558CEFcA4779f3c3d9203b3fb0F3b5bC54e681E9
0x103865d9E8532bC26F9E6E881a586BAcfBaeE36D
0xb439fa46F991908396fDF9D8911C91C3125E42D7
0x90AFF3cBF501DDC53DD3aE68c810E88923bA5aE5
0x964b016c9549d0b8f1991D0Ec6d6d822099ea95f
0x0E7C091138A9abF27927326bE457B3F57Db5184D
0xE060618270ff55F74a313c1D5Aa616757d21E1c6
0x87767E3aa2479b3faF5FbbB7C7C6874E9e3aB14e
0x18407adFf40bEb8D8609E1ec7dF9D07bE5e1c446
0xb73b0f7Fa4553129c75CeF71d9c07f9BB8a1A0Bc
0xEfe7b3f041C563e90870af5BB74ae3A2AFC217c5
0x1d3c5728b682A82132b59C18e56eB4170c4D543b
0x2548b7E9A2fB81Ba095c8203AD5f5E5F0C9EED15
0xb45e6719FDAa8f25D883bf042c4fE07b14aC8146
0x8e1399b884f8202EB4E7e7861878f2de4C1f529e
0xC2b2cD010812Df044363687a0287efE84CfeE1f1
0xB885B6F499694c912aBA2cd9A8D524b1d8cEceE8
0x3C06B757E24815F2dcD71BAA9516BCa2D691F8Fc
0x64b14525d7886744F422f315bc8C58811987Cbdc
0xa58ae2DF9c899156B29dBDf8aAE640C0Aef1e999
0xA27C29CE0c7096Cc27f1F165dC265DaF152B0f45
0x635CcA1Be68DaD2c741211b8b50d2FfF83165827
0x136876A8BA859A6Be77BDE8deB1d044bc50ED2e4
0x7B1C9c817A21E41Da8db5b4CC92a08A71580386c
0xD8eBEF4D8e0e6114b7CCDB7fC33A02100696Ce50
0x7f3d8086bCf7c94476bb794875c349F3B4b1a108
0x338C6fbcEff5433412382590a7de6da03Bb57389
0x76B517f253f8A8BAc8c36e365B02A2fF6e2A0D96
0x1792B673de93aF7050114b021A706B2eAbe595E2
0xA314D1C078239D4571d564a9e0ba6E2B4C32FBF2
0x105485CFBcB8acDEC209bbe1896390Be4F7c6603
0xA31b0bF8dBe5c2AB7bb077D9e8692c4000b3F5DF
0xEb87139c6ad01D8A718C4cfC1B7Fe0A99b3fCA2D
0x927DcF52A932d6640bA09a8B5e32C204225024E8
0x427660b9D5F56A067915F38bE3080DDc668276d9
0x52D38D9D852db7D072b4F32768037771B97EC367
0x3cF5c70AAA219031AE21dCF8618588a1BBCB058a
0x3273eF350E9ffC8f33eA80971650c7c627B43120
0x9Bd4F745e5052058718803D07380aa8c87AEBD2a
0xc3f35591Cb6a8F56C581bC9396c190719973CcE7
0x1e66AEbC62755085852519748424ee54b57e9E34
0xf3Dfa32B947Bc250FB8cD946e1d6ACA8a3921237
unknownd21f6c51(?)
def unknownd21f6c51(?) : # not payable
  call stor0 with:	# withdraw / default function
       gas 2300 * not amountRaised wei
     value amountRaised wei
  require ext_call.success
  amountRaised = 0

0x0F771AA18C5003aBa1B0feEE082a0dd6acd29956
0x828bE8eA7bbbe246216e7017b35057F64cf6449a
0xABcaea6f4099b1eD62169d39c26F808f948C86d6
0x275056dbC285b311A6CcDF7c89c2D6980b58839B
0x6b31a898F7E711b323A6212EaC4AE250E0D6624F
0x2066a2E0cd7f19589f582E2FC9Af9669Cc9e02F1
0x9D0A108fbb9B311e9976bC071D4469123659562F
0xEd8c98fbC6B5f92dAFAD21667A1a221260D547B3
0x54c5a50f090E1f4c2cB732C35a52c8FCcB213E70
0xEfe14cde6752B34693E368dbA320f4F1897D0556
0x8446563E75Cd7821B5bF2199c26976EFC5CAC803
0x03772AdEF77671499D6f2cD67e8F95Cf38C45651
0x353230862Ae8Ab6CA5DDe592654aCD6cDEc1c1B2
0x6FDFCe60998725F4cFB4Cc57505A3abDbb6d0646
0x1cf6949F4B661018B3195f3FF98effe12f587263
0x42b03689FBAA9635edBC10aD1FDC7eA5FeEFBb70
0x69c9E34A64B6BA1e39fB15ffAEFDc7e75524f600
0xD4fAc84b747AbA53fd86a9951D20E7330DAA3414
0xAdFd49cD83f2A9f7bDC9204020A343ce6E9d72a3
0x818eBdad12D3dEceFabE6CCb16f33c9BBFe1B30a
0x27929bcfe96D06c438F43Fb576dB6e29930AD4F2
0x82bb5DCD77686587633ba6744bd706Ea09833FBf
0xdd04338F5c7219BC44fb754EA5904b01D649241f
0x38e308c4AC50fd6C31c5F53d7B25f25116d80A3a
0x889A32263d237872B4F7985eaD9C29eBfE8B464d
0x51489a328C9BDfCB67ccE77C0d87BE54b5F8D172
0x263C92c1F84150BD608ece563EE7642756FD00d4
0x1A51F16b4D385a06c542d3686412AB6517B5515d
0x2920e0B7d86aB76AA09bcddfFEdEf081fAAf6E2c
0xB09bD0cDA4c4254ACebC130cA17915B93519079C
0x155E7e9ab193Aa37c87D22f66002e3dB64C9E0Ce
0x9432f91bFC2335b0485AA4967D0ACff3e34Ae134
0x928989D4d0D71DAAF86819cA69Df620ebAAAD407
0x11838ECe89439C4f0224Bc7b9f76E07721d99f9e
0x2Bf36e414C52a9fd81E21a0aB5742DCE750389D3
0xcf9627E31668420C935DCc9B0Eac1b787F23B12b
0xb655D58aB703C8755104468c20a1D4107d22E8E3
0xe50B0cEfeb80bDD9e3d03517976909765c96E962
changeOwner(address _newOwnerAddr)
def changeOwner(address _newOwnerAddr) payable: 
  if call.value >= 1000000000000000000000:
      call ownerAddress.addr with:	# withdraw / default function
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      call ownerAddress.addr with:	# withdraw / default function
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      ownerAddress.addr = addr(_newOwnerAddr)

0x0A52B6AFf54fA4B5004D8Bb821d559dF5743A5F0
0xc9AfD006a19216B0d377ad1bAb731C02c0Dc3ca8
0x2edDBb663018253E76FfFCb8074A0fF7BE7C708D
0x69508230DFa8c4211fD0C419fF6590F25cd25f0a
0x6AdF77A9AEc21e1910444B133cD984bD7C817C7b
0xC7d35A3BD644Fe258904Df6d2D7C6DB18a0C8b4A
0x80B53000E41aC46783d0c30F0a2F0Ec4AC1358cb
0xACC56Ea642c580Ae8b59f74Eb63556950C004947
0xeEe05E9c4F7f9Bc6A2eA4df1843B26B146824eFC
0x599Bc4E827CdB702b60994Dd9e19213F29Df86bC
0xa3e82661d88294c5F9F84789D89DA64B63752579
0xeBc87AD5e1a24AEFD55D462983E95B5C5a813C70
0xaAc27a688f37BD4b7498A092FAAb6f8295Ed3060
0xeA4cEc0A4d41B48EE71196Ed541b95aca62c8e64
0x5D9A6a50C1aB08ef559E8c54a1E7D12b308F3D8A
0x547514fC79B235E863A53da814e100B2B4b0aEF8
0xb5F76141dFE10Babbbd04D2a46a6e194b4888780
0x6Bf1dE66c1b230Ae277190b5654818C1c266a9e3
0x1ED2DDa8c1C0C37a4804bd7B153FbB2c64d05200
0x3A9B1E98c1eD1c0e05B1aAB453fa4075a427D18f
0xD9C2D3D03abb2C90beFC52777737Fe4F00415aD1
0x945f6aeC5f077f558C2CE7Ee6dD5A9C89FD7361d
0xf5a41752463dd585923A4960b60fec7dA6efba8d
0x6cEB9d47f17Aeb14E7F7b532B0895d5BbF0Cd197
0xb80bE52ac966956df17c382AA7A909E8bb93456C
0x8c989f28c0eF48Dc52f8bAe6aE4A699B39342023
0x403862188383B626267AeA653e52324963B96D43
0x8e034522821076137619Ad9F1cc3C718656CdE0a
0x5287985075576993d7aF22c00821DEcC34d88d16
0x9C47e7cD19C1AfC9a9055D8B1Fea73D299c0feB0
0xe54B77779c8Bf33e9cef89ed4b11661a52486b28
0x5b6d32D15f2bc0b19cAAd814FF79a19d6770C908
0x37633ef4f80dD61CE553D2c326F327d7CB546AFF
0x1fa6a3cbD688989812F749CFdbb0D60288C875F4
unknown9f75ccc8(?)
def unknown9f75ccc8(?) : # not payable
  require block.timestamp >= deadline
  require caller == ownerAddress
  require unknown1b08d96f == 0
  require caller == ownerAddress
  log 0x8d2f010d, caller, eth.balance(this.address), False
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  unknown1b08d96f = 1
  return True

0xC8eA4AedA55d6e154edAFC002F04918CB84D4590
0x1de23F02E185fDc4f6BACc98D6c6419370E38538
0x2eCf5c6E08F4d96A782EF6639356147a44B050F6
0x57D02550f47dd932d2fB84E0aA883C9D8d53C313
0xAe13471Ee125e68Cd54e1a20ef6DfDf7536bA8e9
0x3fCB2D173389b7CD8079Ef8B439dBd92e7E0AE28
0x7a18CfC4a36E48163034E51A9Ed19D4bdEa05F6f
0xC4Bd484C3e4fB63F18810f6Cf7eEFB20E6d3A82D
0x8822f619A9dD64D17Caa3f5CA1B257808f7369bD
0xd430f67cc42918Cc2CFeC1ccE063Ea9f79d2FD39
0x3B0009071A0a9983E9AAb537FD8c9ad478310Aeb
0xB8E0C282B6557939A6692AC2AF627938d5513489
0x2ebF9a969640A08925c2163Eccb387ADCBF2B13d
0xF50771cE30D235B27db401341edC26F435FdDd9a
0x576e6242026805deffC975086be156F89671aC50
0x5c06bf92669ea4A11B808E65abE65b7c7302e0b9
0x21BE5a910462BB6EBA057C5855DA67FDaB973DE9
0xEDBB74356883128ce078987a5E4D7e5D3f39AAB8
0xf4207D1B8d4f4C570d8b2265C94AD33DDEbe0049
0xe580fC80D40d8968A2b571c562984f62e9D59215
0x5e5D6f6706420F932d796C0F28A83B26dabcFd8D
0xdbe7E8860640eE4B2D2e90b0EC1747364770b48f
0xf957C36656dc13E84BEFC5D9c9b390F662E92Cec
0x1d69c5a202F44ae2F5dFE2Cb36a2Eb6a1A11A118
0x6880fdd9F861e85822eb5b25c74D0179A912d70C
0xf36952500ADA1b35F768A6900f9dEa06112D5d27
0xaB396AE5BF0A017b2864538E06F4b896eF542414
0x1051E8eF1E0b9BEE61c04126392C11A74B603d3c
0x34959919244b18128d084834dBa11f0c91732eDe
0x8E88b887c24A6B19841A3dE2F6746029Dc91A881
0x1BA1a6d591c757434d34FB5F905FBEEfA05eF5D8
0xA1Ec098c32bde89A29c330E62faA62F3fCCCe64E
0x0A4318C4EE4417b733183929d947f9785c0e1739
0x31cd34aC28CFbdbcebd4FaAE6a1C844C52c7cD6d
withdrawReward()
def withdrawReward() : # not payable
  require block.timestamp >= (deadline + 2592000)
  if block.timestamp < deadline:
      require currentStage >= 2
  require balances[caller] != 0
  if stor17[caller].512 >= lastDivideRewardTime:
      return 0
  require unknown44cb9d03
  if stor17[caller].768 <= lastDivideRewardTime:
      if ((stor16 * balances[caller]) / unknown44cb9d03) == 0:
          return 0
      call caller with:	# withdraw / default function
           gas 2300 * not ((stor16 * balances[caller]) / unknown44cb9d03) wei
         value (stor16 * balances[caller]) / unknown44cb9d03 wei
      require ext_call.success
      if balances[caller] != 0:
          stor17[caller].512 = block.timestamp
      else:
          stor17[caller].0 = 0
          stor17[caller].256 = 0
          stor17[caller].512 = 0
          stor17[caller].768 = 0
      return ((stor16 * balances[caller]) / unknown44cb9d03)
  if ((stor16 * stor17[caller].256) / unknown44cb9d03) == 0:
      return 0
  call caller with:	# withdraw / default function
       gas 2300 * not ((stor16 * stor17[caller].256) / unknown44cb9d03) wei
     value (stor16 * stor17[caller].256) / unknown44cb9d03 wei
  require ext_call.success
  if balances[caller] != 0:
      stor17[caller].512 = block.timestamp
  else:
      stor17[caller].0 = 0
      stor17[caller].256 = 0
      stor17[caller].512 = 0
      stor17[caller].768 = 0
  return ((stor16 * stor17[caller].256) / unknown44cb9d03)

0x7796c2De43098AB2a12075D0BA226Bfb6542f3FD
0x3d645C798Ad3ceb15631b5fF84aaEbFC42F01a57
0x0b42E23700392095273bB0d7296DB5EC21a4bF6C
0x391FF23Ca1Cb36Fb5483be7a97b2C7462aECe4B5
0x9D37EeF6c9e5E3FDFFdB3eF4fE345136F9548391
0xe520c332f04501b4BB51221d215470F21b065c30
0x899e56c81B55eFb2BCF6a52DEfe829d25AB3CB38
0x98f16Fa019006E46f7A0355DD2F3eC92AAE20481
0x0ef9Cfd0bE51E0B12D6231A0CF4A8Abcf08e53A6
0x74d62728aBe75e2f0c5f592DBC33A08d92Fb9473
0x6D5B6b159561f9e9216c328b3FAf211b5F920925
0xF3F743972a9E61e6A22bc758f8F88268f56645bb
0x5D96Fcec8AE1157E546F21fFd2264ad34e770aBA
0xfaf81b84f940B8E4a7858C046522a962a14FACe2
0xa35bF4CD017805110CCfc415820D996F8dc8A3ef
0x9e07A10542b9CB7B34f8025197487Ed6Ee7c8516
0xC6d274D1dFbf7351C7cCf89cdCE0378827A51629
0x67EbD91AAEAE330828F4cae0382ddE792c650225
0xF1F8257753B801Ea92027C669d7c8C5b0fe77E4e
0xe1c0c7306a11772cDcE2238140313f2De7b020e1
0x8B21c5A77d200D2c0D14FF1884D909Bed214BA84
0x16B59c0553B7e20ea1255A95129a7e07A09F1C24
0x96d06224888E6f89Ea552E0854DCEdAa6e93A195
0x8f97CD35D53015df640592f8CfeF6B784C49bbFb
0xAaB08d5de0aCe74A33f35497313C89027896eD1a
0x3FE5B84e615D8e7EcE9193BfCA9ec9E2a4797afB
0x928E98108120eEe54A1458Ac5885e4A0a0d781aA
0x747fFd30bF8aA9bFbCFD855C3d6c4d624D42eB33
0x5AF5b41A926c222f393071b0D15DC0689E0B7194
unknown89c2dcb0(?)
def unknown89c2dcb0(?) : # not payable
  if exchangeAddress == caller:
      if not unknowne8c0f815Address:
          call unknown1bcfc432Address with:	# withdraw / default function
               gas 2300 * not eth.balance(this.address) wei
             value eth.balance(this.address) wei
      else:
          require ext_code.size(unknowne8c0f815Address)
          call unknowne8c0f815Address.balanceOf(address) with:
               gas gas_remaining - 710 wei
              args addr(this.address)
          require ext_call.success
          require ext_code.size(unknowne8c0f815Address)
          call unknowne8c0f815Address.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args msg.origin, ext_call.return_data[-32 + RETURNDATASIZE len 32]
      require ext_call.success
      unknown38c8f2ce = 0
      unknown07262375 = 0
  else:
      if unknown1bcfc432Address == msg.origin:
          if not unknowne8c0f815Address:
              call unknown1bcfc432Address with:	# withdraw / default function
                   gas 2300 * not eth.balance(this.address) wei
                 value eth.balance(this.address) wei
          else:
              require ext_code.size(unknowne8c0f815Address)
              call unknowne8c0f815Address.balanceOf(address) with:
                   gas gas_remaining - 710 wei
                  args addr(this.address)
              require ext_call.success
              require ext_code.size(unknowne8c0f815Address)
              call unknowne8c0f815Address.transfer(address,uint256) with:
                   gas gas_remaining - 710 wei
                  args msg.origin, ext_call.return_data[-32 + RETURNDATASIZE len 32]
          require ext_call.success
          unknown38c8f2ce = 0
          unknown07262375 = 0

0xdfE3662F696af844ae9C578196f15Bce19aAFEe4
0x0C24e3aa0Fc411deBf74F138674cF2066C2e0ace
0x0057826D01B84775dBc9b3a5Ba1152b095988481
0x21732476Ec79BB32373Deaf58D796755664780E6
0x0aA39DfB6968c279cEDdfAb187668001e3df3Dcb
0xE6074Bf0124c4f67cFA10A5eFDfD16Bd0541537a
0x6cD6215a23890630f39400cE37e3cB5D31304b8C
0x87E44796Ce77E972149852cdA66cfD1C403D5eC3
0x32f778F246bA5F8Ad8EB35A0D638E9075ABe5B19
0x675F070E80f89DDCC3F2457D9FE571814741e904
0x1A4f7a5208c7dd4Cf24633aC4d42e41b21e3D5f7
0x5afd842DC2d4Dc11FFf43d3ac7Cc58b6153deD2c
0x7f9433949f2cbbC6421f1F496D689837be35934e
0xd9913F9823fA526840869f1cb8F515Bb69E6A51c
0xBEA35CdDF0029321beA86715BDCe6D7dB73D2a43
0x163c64805C98FA2732f13030De457165f89493F9
0x58d46475da68984bACF1f2843B85e0FdbcBc6cEf
0x4Cb697daB84df0192b6693a2eFAd75b1C9a3FDC9
0xB44d36a18b18015C546f5EFa37bb1e3Db5F24063
0x58AFF91f5b48245Bd83deeB2C7d31875f68b3f0D
0x09f6742e42DAAFaE735E14ec53b5ee95b66c2886
0xE76aF0bb0f71a041b3b0179156F5d71573eBb91C
0x55d743F548490C837858de0e815b2C3a7d4C3198
0xF448322A37793479045EDc23D871b48913887E6B
0x28474ef546033A129bDF27E0b74Bc8579AF31D17
0x67601d7a7cbbD77368785122c508503f168B1dAa
0x246a3CC8430909cB9b4ea2C55064045096656792
0x0F14260BBE72E0992377ECe7bc8BaF2E8be320b8
buyEggs()
def buyEggs() payable: 
  require stor4.0.uint8
  require call.value <= eth.balance(this.address)
  if stor2 == 0:
      if stor3 == 0:
          require call.value
          require (stor3 + (0 / call.value)) >= stor3
          require stor3 + (0 / call.value)
          if (0 / (stor3 + (0 / call.value))) == 0:
              require 0 <= (0 / (stor3 + (0 / call.value)))
              if call.value == 0:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require call.value
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require (claimedEggs[caller] + (0 / (stor3 + (0 / call.value)))) >= claimedEggs[caller]
              claimedEggs[caller] = claimedEggs[caller] + (0 / (stor3 + (0 / call.value)))
          else:
              require 0 / (stor3 + (0 / call.value))
              require ((4 * (0 / (stor3 + (0 / call.value)))) / (0 / (stor3 + (0 / call.value)))) == 4
              require ((4 * (0 / (stor3 + (0 / call.value)))) / 100) <= (0 / (stor3 + (0 / call.value)))
              if call.value == 0:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require call.value
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require (claimedEggs[caller] + (0 / (stor3 + (0 / call.value))) - ((4 * (0 / (stor3 + (0 / call.value)))) / 100)) >= claimedEggs[caller]
              claimedEggs[caller] = claimedEggs[caller] + (0 / (stor3 + (0 / call.value))) - ((4 * (0 / (stor3 + (0 / call.value)))) / 100)
      else:
          require stor3
          require ((stor3 * call.value) / stor3) == call.value
          require call.value
          require (stor3 + ((stor3 * call.value) / call.value)) >= stor3
          require stor3 + ((stor3 * call.value) / call.value)
          if (0 / (stor3 + ((stor3 * call.value) / call.value))) == 0:
              require 0 <= (0 / (stor3 + ((stor3 * call.value) / call.value)))
              if call.value == 0:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require call.value
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require (claimedEggs[caller] + (0 / (stor3 + ((stor3 * call.value) / call.value)))) >= claimedEggs[caller]
              claimedEggs[caller] = claimedEggs[caller] + (0 / (stor3 + ((stor3 * call.value) / call.value)))
          else:
              require 0 / (stor3 + ((stor3 * call.value) / call.value))
              require ((4 * (0 / (stor3 + ((stor3 * call.value) / call.value)))) / (0 / (stor3 + ((stor3 * call.value) / call.value)))) == 4
              require ((4 * (0 / (stor3 + ((stor3 * call.value) / call.value)))) / 100) <= (0 / (stor3 + ((stor3 * call.value) / call.value)))
              if call.value == 0:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require call.value
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require (claimedEggs[caller] + (0 / (stor3 + ((stor3 * call.value) / call.value))) - ((4 * (0 / (stor3 + ((stor3 * call.value) / call.value)))) / 100)) >= claimedEggs[caller]
              claimedEggs[caller] = claimedEggs[caller] + (0 / (stor3 + ((stor3 * call.value) / call.value))) - ((4 * (0 / (stor3 + ((stor3 * call.value) / call.value)))) / 100)
  else:
      require stor2
      require ((stor2 * marketEggs) / stor2) == marketEggs
      if stor2 == 0:
          if stor3 == 0:
              require call.value
              require (stor3 + (0 / call.value)) >= stor3
              require stor3 + (0 / call.value)
              if ((stor2 * marketEggs) / (stor3 + (0 / call.value))) == 0:
                  require 0 <= ((stor2 * marketEggs) / (stor3 + (0 / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (0 / call.value)))
              else:
                  require (stor2 * marketEggs) / (stor3 + (0 / call.value))
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) / ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) == 4
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) / 100) <= ((stor2 * marketEggs) / (stor3 + (0 / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (0 / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) / 100)) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (0 / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (0 / call.value)))) / 100)
          else:
              require stor3
              require ((stor3 * call.value) / stor3) == call.value
              require call.value
              require (stor3 + ((stor3 * call.value) / call.value)) >= stor3
              require stor3 + ((stor3 * call.value) / call.value)
              if ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value))) == 0:
                  require 0 <= ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))
              else:
                  require (stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value))
                  require ((4 * ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) / ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) == 4
                  require ((4 * ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) / 100) <= ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) / 100)) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + ((stor3 * call.value) / call.value)))) / 100)
      else:
          require stor2
          require (((eth.balance(this.address) * stor2) - (call.value * stor2)) / stor2) == (eth.balance(this.address) - call.value)
          if stor3 == 0:
              require call.value
              require (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)) >= stor3
              require stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)
              if ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value))) == 0:
                  require 0 <= ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))
              else:
                  require (stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value))
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) / ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) == 4
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) / 100) <= ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) / 100)) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value)))) / 100)
          else:
              require stor3
              require ((stor3 * call.value) / stor3) == call.value
              require ((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) >= ((eth.balance(this.address) * stor2) - (call.value * stor2))
              require call.value
              require (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)) >= stor3
              require stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)
              if ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value))) == 0:
                  require 0 <= ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))
              else:
                  require (stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value))
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) / ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) == 4
                  require ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) / 100) <= ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))
                  if call.value == 0:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require call.value
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) / 100)) >= claimedEggs[caller]
                  claimedEggs[caller] = claimedEggs[caller] + ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value))) - ((4 * ((stor2 * marketEggs) / (stor3 + (((eth.balance(this.address) * stor2) - (call.value * stor2) + (stor3 * call.value)) / call.value)))) / 100)

0x80623C126Ce442980666ef38A72eC7b9E80F4706
0x6E50A486CA037e92cCb3a5AB3D084626b546C9c0
0x253f6E0BfE6C7675E8513B4c132f00B00B951d5E
0x4ef25326f1Cd07Ea6A03202F8fd1f29115A44bc2
0xaB962B6BDC0A0A15a0CCE88294F7e1C011f28dbe
0x705051Bbfd9f287869A412cbA8bC7d112de48E69
0xDE30d26ae03E472DAae5e1fF794290388f1d4F23
0x91EdEC8C1F44D34244B5E7e2631dd7c5cEE1B19C
0x4C1A22be48ef517391A491547389fB5F4F75a885
0x62eC022aca1fC3874295baD446915BD349d64eBC
0x111877926446bC92cEea9EDac12854e2AAA25eb2
0x3b72B2766c0499910345687eE5B16Dc859d4a7c8
0xcF083512F5152B2BA4293cafE78466596b253782
0xc4E8Cb21436e79Ba9Ed0ABEaEC010a1982125b80
0xd4c045255dA06E593bD9e6207920b5496b814efe
0x373ad45763e2D30a67aF55E15855256DF7049c1a
0xFFee4DB0f30a43955398776A9524fDFF0680dD7f
0x7d81c361d6aC60634117dD81Ab1b01b8Dc795A9D
0x8760acB548366a1E89ba0369f5b321B347B40bD3
0x84c8129F145ae59cbA7a0221702FCbc4c2A1472F
0x33E972A4c2624D5B4CF2D5FeE3A1E54daBe9d25e
0x89D97659a9bcA181044e1B3e819Ec484747D200C
0x1C1D65C424A7C316F3134532e80adC4De142fd50
0x88735C50abbB3658ca4D03E37240fF99A9426b75
0x5337094f96E1AF5eBdbE421dd11790EB2eF46d48
0xf003e8C65a28a445e0318e83416567336fB1c667
autoDistribute()
def autoDistribute() payable: 
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor10[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0x80623C126Ce442980666ef38A72eC7b9E80F4706
0x6E50A486CA037e92cCb3a5AB3D084626b546C9c0
0x253f6E0BfE6C7675E8513B4c132f00B00B951d5E
0x4ef25326f1Cd07Ea6A03202F8fd1f29115A44bc2
0xaB962B6BDC0A0A15a0CCE88294F7e1C011f28dbe
0x705051Bbfd9f287869A412cbA8bC7d112de48E69
0xDE30d26ae03E472DAae5e1fF794290388f1d4F23
0x91EdEC8C1F44D34244B5E7e2631dd7c5cEE1B19C
0x4C1A22be48ef517391A491547389fB5F4F75a885
0x62eC022aca1fC3874295baD446915BD349d64eBC
0x111877926446bC92cEea9EDac12854e2AAA25eb2
0x3b72B2766c0499910345687eE5B16Dc859d4a7c8
0xcF083512F5152B2BA4293cafE78466596b253782
0xc4E8Cb21436e79Ba9Ed0ABEaEC010a1982125b80
0xd4c045255dA06E593bD9e6207920b5496b814efe
0x373ad45763e2D30a67aF55E15855256DF7049c1a
0xFFee4DB0f30a43955398776A9524fDFF0680dD7f
0x7d81c361d6aC60634117dD81Ab1b01b8Dc795A9D
0x8760acB548366a1E89ba0369f5b321B347B40bD3
0x84c8129F145ae59cbA7a0221702FCbc4c2A1472F
0x33E972A4c2624D5B4CF2D5FeE3A1E54daBe9d25e
0x89D97659a9bcA181044e1B3e819Ec484747D200C
0x1C1D65C424A7C316F3134532e80adC4De142fd50
0x88735C50abbB3658ca4D03E37240fF99A9426b75
0x5337094f96E1AF5eBdbE421dd11790EB2eF46d48
0xf003e8C65a28a445e0318e83416567336fB1c667
_fallback()
def _fallback() payable: # default function
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor10[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0x33a6FDAf4B601c62f29015f6E6b26f6d6E4D01e7
0x0843A6A8734eEB21b146209692A47C1b7965CE66
0xAe64a9F14837282a0422b704Ec6191808e1f2118
0xeFb1534329a626dbe7900e28DA70983604429C74
0xB22078418F7038C01442D328e09E8c9a362c1807
0x2c18388BcE828C807062691A8B3590d4b1d75261
0x92568E502218F57766030065e1A5Ce976B721525
0xACbfB851D69EF8Eca1453d82f38B590268ca46B1
0x1717c9523f5ac35beaBc88c9f4190d52f91C0457
0x4f3008427D814b743B910503cb9Ba52eF3554B16
0x225b85f46E64317c6e4bD4d67E058bdFbdE9e80d
0xc38903631217edC18d5eBfD32455E4BcF0724A73
0xa874A92fc31c218671421639288576542600d6B5
0xfdC98074a83c209FCB2286dE784F670799380aa7
0x0eB0c472c3396b0E2922b4064108808de89d6fa3
payOut()
def payOut() : # not payable
  require state <= 3
  require state == 2
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  state = 3
  currentBalance = 0
  log LogWinnerPaid(address), beneficiaryAddress

0xAB7E6086B04f3F2C11F05f9A97eAf8dD7F941053
0xCb23352C0D3C705904519Db87600518Ce1aafe0f
0x64878fFEcD5da3E1BdEe753Ed2b4AB2aE0C0908B
0xa4Ae66156fB34C237c9Dd905149a344672e113E4
0x48F4F6Bc179b170382997bbFFB54d0eF707B6CcB
0xe14E1AeA71E200616c2A01e163fF6c9Caec59A97
0x2fD717Fb9a7AA1ce12E78480437703aF5FdFF7C2
0x9e7A7455D3Ee4C71237E75D1C3B7fc74FF650B7A
0xa3050e720Aa6E35e28187bfA7c9E27677EB17bed
0x96Fc6463B77A0D88EE5390b9505AA0e7aa80A586
0xfc846dF6D13037c9d2cedf7153Cb28d5052258E0
0xd7F8621d66e8113D71ed0Bac90F7506a696809a8
0xDbB1676D1Af12a8Ee87a65a4F0fc6400b373E5c4
0xf4776D7128D90eA2aCd815fE3435bAEEA1768e88
0x8efeE1b0041a739662D312A44cE01BD36012E445
finalize()
def finalize() : # not payable
  require ownerAddress == caller
  require not stor8.0
  require block.timestamp > unknown4c936ea8
  require not stor8.8
  if highestBidderAddress:
      tokenBalances[highestBidderAddress] = 0
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args walletAddress, tokenBalances[highestBidderAddress]
      require ext_call.success
      require ext_call.return_data
      log 0x144cfb58, tokenBalances[highestBidderAddress], 0
      etherBalances[highestBidderAddress] = 0
      call walletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not etherBalances[highestBidderAddress] wei
         value etherBalances[highestBidderAddress] wei
      require ext_call.success
      log 0x3a9cb570, etherBalances[highestBidderAddress], 0
  stor8.8 = 1
  log 0xd464a66f, highestBidderAddress, unknown9b412150, highestBid, 0
  return True

0x218fcaEe62b186CbFCdb06F301D95a9f8D7B0D18
0x72f04dBF08d7644FF35fC96c707709937af844DD
0x54809c3f66009C597583A3820a91Eb675a1eB94C
0x6056ef3BF4249171E94b4FD728c9eCCA2cE00dee
0x00B42eD0bd7BBbfDB964FEB33B4511B11Bbc15c4
0x19B0CB6555Bb3EFe9FC0D3c1199157C3cfa623Ff
0x60347c0ad81a1c5A838796A657a01Fe4AaF335b1
0x0B7F21892599F89C7dE78a88d226bf5AF7a3D9af
0x495c976a2D163733eE0CEED9B065fFC6018cA2b4
0xC036BA4fC11956C8C35895e2Fe61930c6Faa0A9e
0xBAECff1273800AF158C413C40645062A4457bDFF
0x8ed3E1b64318edB409203F2255a911e82EC6E464
0x1aD13cCBd039090a46F6e56d92e44eCff1632cEd
0x8EC46ba1766DF39a4406E10b54f434D8830533B6
refund()
def refund() : # not payable
  require not stor13
  require block.number > stor9
  require crowdSale < 2100000000000000000000000
  require beneficiaryAddress != caller
  balanceOf[caller] = 0
  balanceOf[ownerAddress] = balanceOf[caller] + balanceOf[ownerAddress]
  require crowdSale >= balanceOf[caller]
  crowdSale = crowdSale - balanceOf[caller]
  require rate
  require (balanceOf[caller] / rate) > 0
  log LogRefund(address,uint256), caller, (balanceOf[caller] / rate)
  call caller.(Mask(32, 224, (balanceOf[caller] / rate)) >> 224) with:
       gas 2300 * not (balanceOf[caller] / rate) wei
     value balanceOf[caller] / rate wei
  require ext_call.success
  require amountRaised >= (balanceOf[caller] / rate)
  amountRaised = amountRaised - (balanceOf[caller] / rate)

0x33a6FDAf4B601c62f29015f6E6b26f6d6E4D01e7
0xAe64a9F14837282a0422b704Ec6191808e1f2118
0xeFb1534329a626dbe7900e28DA70983604429C74
0xB22078418F7038C01442D328e09E8c9a362c1807
0x2c18388BcE828C807062691A8B3590d4b1d75261
0x92568E502218F57766030065e1A5Ce976B721525
0xACbfB851D69EF8Eca1453d82f38B590268ca46B1
0x1717c9523f5ac35beaBc88c9f4190d52f91C0457
0x4f3008427D814b743B910503cb9Ba52eF3554B16
0x225b85f46E64317c6e4bD4d67E058bdFbdE9e80d
0xa874A92fc31c218671421639288576542600d6B5
0x0eB0c472c3396b0E2922b4064108808de89d6fa3
checkIfFundingCompleteOrExpired()
def checkIfFundingCompleteOrExpired() : # not payable
  if not fundingMaximumTargetInWei:
      if block.timestamp > deadline:
          if stor2.length.0 < fundingMinimumTargetInWei:
              state = 1
          else:
              state = 2
              log LogFundingSuccessful(uint256), stor2.length.0
              require 2 <= 3
              require 2 == 2
              call beneficiaryAddress.storage(32, 224, 2) with:
                   gas 2300 * not eth.balance(this.address) wei
                 value eth.balance(this.address) wei
              require ext_call.success
              state = 3
              stor0.256 = 0
              currentBalance = 0
              log LogWinnerPaid(address), beneficiaryAddress
          completedAt = block.timestamp
  else:
      if stor2.length.0 > fundingMaximumTargetInWei:
          state = 2
          log LogFundingSuccessful(uint256), stor2.length.0
          require 2 <= 3
          require 2 == 2
          call beneficiaryAddress.storage(32, 224, 2) with:
               gas 2300 * not eth.balance(this.address) wei
             value eth.balance(this.address) wei
          require ext_call.success
          state = 3
          stor0.256 = 0
          currentBalance = 0
          log LogWinnerPaid(address), beneficiaryAddress
          completedAt = block.timestamp
      else:
          if block.timestamp > deadline:
              if stor2.length.0 < fundingMinimumTargetInWei:
                  state = 1
              else:
                  state = 2
                  log LogFundingSuccessful(uint256), stor2.length.0
                  require 2 <= 3
                  require 2 == 2
                  call beneficiaryAddress.storage(32, 224, 2) with:
                       gas 2300 * not eth.balance(this.address) wei
                     value eth.balance(this.address) wei
                  require ext_call.success
                  state = 3
                  stor0.256 = 0
                  currentBalance = 0
                  log LogWinnerPaid(address), beneficiaryAddress
              completedAt = block.timestamp

0x58264A0b6958eb0042A1430c25a8A656f6E09EB7
0xC38f3378C74986262a051FFbAF9ddaEA4cC3B63F
0x789D598c98e6941a67068DA5c7D86EE2cE731bB9
0x72e5c521e9CcA1852d9C75ba10524976D1011f54
0xb235432112EDF153a12B5EA59128150F6b4d5053
0xE3F2F4746713A3A930C98cf088d5a2b0E21eB4b5
0x0d4526737cabE5Fc147d75c9b29c4DF1d915c790
0x031bD616F44D952F5b6F1C3E257E5c09E25cc498
0x1319eB1d4CefC8eB14580f1a5bFEc79AfAd53572
0x83c70F9462286605C22C65b4e1745A1Cdb55D84f
0xfcE878e244f51E6A149efbaA31525896C37D0a73
0x00A9F7D093C46D95F0318e4A6fFc6Ed68F73044C
refund()
def refund() : # not payable
  require block.timestamp >= endTime
  require not stor15.0
  require not stor16[caller]
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require ext_call.return_data
  require price
  if (ext_call.return_data / price) > eth.balance(this.address):
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      require ext_call.success
      stor16[caller] = 1
      require (eth.balance(this.address) + weiRefunded) >= weiRefunded
      weiRefunded = eth.balance(this.address) + weiRefunded
      log 0xd7dee270, caller, eth.balance(this.address)
  else:
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not (ext_call.return_data / price) wei
         value ext_call.return_data / price wei
      require ext_call.success
      stor16[caller] = 1
      require ((ext_call.return_data / price) + weiRefunded) >= weiRefunded
      weiRefunded = (ext_call.return_data / price) + weiRefunded
      log 0xd7dee270, caller, (ext_call.return_data / price)

0x066420fF2aF331b3F7c1a5925121e068c69614dF
0xf8B89Bf6121792455C8604FcA6e43B8fa5E15E69
0x6940c3a2f57b2867d18f2A160B5736cBC172F0dE
0x12CCA3373658D7D9a6d92403065377723ceB7B9b
0xA3479736e9d2BeD529F14d787B4d16F4d0748256
0x97244c7640c8A7d525E056E1b020204D9e0742c6
0xb50c7dAEF9EC0F8B38fb742b5C5D4697318Fd223
0x0B4cE72A70e87BEe66e0f43E9c861366e9D7DE19
0x723035B0A191bb440dAd962bd0B6fD544c0126f7
0x42718620862272dC629979a2DB3E7EFE69876EB0
0x4b15b2D301dD81e05fc404e16bdd138b29dcDeFd
_fallback()
def _fallback() payable: # default function
  require stor0.160
  if call.value >= (1000000000000000 * mINfinney):
      call stor0.0 with:	# withdraw / default function
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      totalContribution = call.value + totalContribution
      totalSupply = (100000000 * aIRDROPBounce) + (iCORatio * (call.value / 10000000000)) + totalSupply
      balanceOf[caller] = (100000000 * aIRDROPBounce) + (iCORatio * (call.value / 10000000000)) + balanceOf[caller]
      log 0xddf252ad, addr(this.address), caller, ((100000000 * aIRDROPBounce) + (iCORatio * (call.value / 10000000000)))

0x6959F7fa12392b93e6aF39c300E67923928B184F
0xc96567d557aCf460c59Cb2816F3Ff65b907FdE89
0xa29389657442109e2C2503ba1fC31957D74E0afd
0x7e5FCC0334DbF7645313F47409D7642878025142
0xaAB5124e9C24aBc84490e5Fb73BE2C8B97713Bb7
0x42fdDbc32481F7aa38b20819fE8Ae21bb4B79b9e
0x20A7b2cEd4b791cFAb8328DA4C7684B5613800C7
0x041d26DCCEDA7fd82898cd7DCE0AE7da6031EE51
0x207Ff240D2F5bAAeFce160785F38EbD5d7BbdCe4
0x7b14573FadF32294f996f1C8168AB9e986E49A56
0xA03739a3bf5CeCD871121f488E27A79C98Bb00f9
withdraw()
def withdraw() : # not payable
  stor5[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not stor5[caller] wei
     value stor5[caller] wei
  if ext_call.success:
      return True
  stor5[caller] = stor5[caller]
  return False

0x45F047e524c83339a5701984Fd79E9D98375a5c6
0x760FaE3a4278B3B46C5bbf08C0d107EcC3981A6A
0xf6881c8d07d7A4775eEF414DCC58242258587498
0x6Fc135d4A065fbaa45E3dF178f2EBc150f0401b1
0x3B7FF5809E40BF2388dcB4F269Fc139707379888
0x262F4BB83B7A1a611d2abeA14C9d336320b538C7
0x870f9DF5C15927cE20D02246829c6f2A34B3F3fb
0xC1E7c74A13608Bcbb13479b59B81991CFeD96632
0x8851Db785eD637aB8f6FcDCC396cEdeaE2A204E0
0xe34A64c32654597B24B96F4ed6743F86B1cfed3C
0xA667227cA1b68563D9245AD91AAb9DB58A60C382
safeWithdrawalAmount(uint256 _withdrawAmount)
def safeWithdrawalAmount(uint256 _withdrawAmount) : # not payable
  if beneficiaryAddress == caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not _withdrawAmount wei
         value _withdrawAmount wei
      if not ext_call.success:
          log WithdrawFailed(address,uint256,bool), beneficiaryAddress, _withdrawAmount, False
      log 0xe842aea7, beneficiaryAddress, _withdrawAmount, False
      remainAmount = remainAmount - _withdrawAmount

0x45F047e524c83339a5701984Fd79E9D98375a5c6
0x760FaE3a4278B3B46C5bbf08C0d107EcC3981A6A
0xf6881c8d07d7A4775eEF414DCC58242258587498
0x6Fc135d4A065fbaa45E3dF178f2EBc150f0401b1
0x3B7FF5809E40BF2388dcB4F269Fc139707379888
0x262F4BB83B7A1a611d2abeA14C9d336320b538C7
0x870f9DF5C15927cE20D02246829c6f2A34B3F3fb
0xC1E7c74A13608Bcbb13479b59B81991CFeD96632
0x8851Db785eD637aB8f6FcDCC396cEdeaE2A204E0
0xe34A64c32654597B24B96F4ed6743F86B1cfed3C
0xA667227cA1b68563D9245AD91AAb9DB58A60C382
safeWithdrawalAll()
def safeWithdrawalAll() : # not payable
  if beneficiaryAddress == caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          log WithdrawFailed(address,uint256,bool), beneficiaryAddress, amountRaised, False
      log 0xe842aea7, beneficiaryAddress, amountRaised, False
      remainAmount = remainAmount - amountRaised

0x58264A0b6958eb0042A1430c25a8A656f6E09EB7
0xC38f3378C74986262a051FFbAF9ddaEA4cC3B63F
0x72e5c521e9CcA1852d9C75ba10524976D1011f54
0xb235432112EDF153a12B5EA59128150F6b4d5053
0xE3F2F4746713A3A930C98cf088d5a2b0E21eB4b5
0x0d4526737cabE5Fc147d75c9b29c4DF1d915c790
0x031bD616F44D952F5b6F1C3E257E5c09E25cc498
0x1319eB1d4CefC8eB14580f1a5bFEc79AfAd53572
0x83c70F9462286605C22C65b4e1745A1Cdb55D84f
0xfcE878e244f51E6A149efbaA31525896C37D0a73
0x00A9F7D093C46D95F0318e4A6fFc6Ed68F73044C
withdraw()
def withdraw() : # not payable
  require ownerAddress == caller
  require stor15.0
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not collected wei
     value collected wei
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args beneficiaryAddress, ext_call.return_data[-32 + RETURNDATASIZE len 32]
  require ext_call.success
  stor15.8 = 1

0xeC94d178D97bAC527FDCD4b3D4bf41b57D640c5B
0x31098C25BC3834403D032999A648Db87191E6dE4
0xAa947f043099c126cf78437b730bf5cd2AEFF816
0x34e2801C4358116987377f7099017f62FDe63c31
0x89d9C2adECa0761bea5033a29E1c4691b43B5Ec9
0xdbD1D191854256508CfeF97Ed0B7B9C1AfDb1F25
0x3B6B74df081BC0E2c4776b3Ceb3D4Bc61C20ad32
0x6c37246d0548F6F6F3619de1671B0b5b98aDB78a
0xCB60D1eCd0E6CB45924322869Ddf4F251Bd0731B
0x0E2C543d69B201B835bda851F8F849a51824801b
0xA1877c74562821fF59Ffc0BC999E6a2e164F4D87
devResWithdrawal()
def devResWithdrawal() : # not payable
  require stor4.8.uint8
  require beneficiaryAddress == caller
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not resAmount wei
     value resAmount wei
  if ext_call.success:
      log 0xe842aea7, (beneficiaryAddress << 160), resAmount, 0
      resAmount = 0

0xeC94d178D97bAC527FDCD4b3D4bf41b57D640c5B
0x31098C25BC3834403D032999A648Db87191E6dE4
0xAa947f043099c126cf78437b730bf5cd2AEFF816
0x34e2801C4358116987377f7099017f62FDe63c31
0x89d9C2adECa0761bea5033a29E1c4691b43B5Ec9
0xdbD1D191854256508CfeF97Ed0B7B9C1AfDb1F25
0x3B6B74df081BC0E2c4776b3Ceb3D4Bc61C20ad32
0x6c37246d0548F6F6F3619de1671B0b5b98aDB78a
0xCB60D1eCd0E6CB45924322869Ddf4F251Bd0731B
0x0E2C543d69B201B835bda851F8F849a51824801b
0xA1877c74562821fF59Ffc0BC999E6a2e164F4D87
_fallback()
def _fallback() payable: # default function
  require not stor4.0.uint8
  require (maximumTarget - amountRaised) >= call.value
  balanceOf[caller] = call.value + balanceOf[caller]
  amountRaised = call.value + amountRaised
  resAmount = call.value + resAmount
  require price
  soldTokens = soldTokens + (call.value / price)
  require ext_code.size(tokenRewardAddress)
  call tokenRewardAddress.transfer(address,uint256) with:
       gas gas_remaining - 50 wei
      args caller, (call.value / price)
  require ext_call.success
  log 0xe842aea7, caller, call.value, 1
  if (call.value + amountRaised) < minimumTarget:
      if not stor4.8.uint8:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not call.value wei
         value call.value wei
      if not ext_call.success:
      log 0xe842aea7, (beneficiaryAddress << 160), call.value, 0
      resAmount = resAmount
  else:
      if stor4.8.uint8:
          call beneficiaryAddress with:	# withdraw / default function
               gas 2300 * not call.value wei
             value call.value wei
          if not ext_call.success:
          log 0xe842aea7, (beneficiaryAddress << 160), call.value, 0
      else:
          stor4.8.uint8 = 1
          log 0xec3f991c, (beneficiaryAddress << 160), 0, minimumTarget
          if not 1:
          call (beneficiaryAddress or 0) with:	# withdraw / default function
               gas 2300 * not call.value wei
             value call.value wei
          if not ext_call.success:
          log 0xe842aea7, (beneficiaryAddress << 160), 0, call.value, 0
      resAmount = resAmount

0x779B7b713C86e3E6774f5040D9cCC2D43ad375F8
0x9Df201422BB3B28c29f30c86d99163AB73B376ae
0x6cBc1A135d3C9a835d523aaE9E4723B9b776fC49
0x53d8afEf22cC812339Adc717FD372Cb608c2CE5D
0x1f1Ef5839E7D2B35a46Ae1Dcae438C3fe01cfcE4
0x527980169Ea610d13887B97F12024320C75f26a3
0x876E426192fEc893fEb2605AeF4f8f5FB122187e
0x1EAb19e6623E8cBcAfc252E275F5b51C27656fAF
0x07551a0625C9CC7306DfE3569D818562c6780C4A
0x9541FD8B9b5FA97381783783CeBF2F5fA793C262
_fallback()
def _fallback() payable: # default function
  require not stor20.0.uint8
  require block.timestamp < stopTime
  if call.value != 0:
      require call.value
      require ((call.value * price) / call.value) == price
  if (call.value * price) != 0:
      require (call.value * price)
      require ((call.value * price * stor27) / (call.value * price)) == stor27
  require (totalSupply + ((call.value * price * stor27) / 10^18)) >= totalSupply
  require (totalSupply + ((call.value * price * stor27) / 10^18)) <= hardcap
  require (amountRaised + (call.value / 10^18)) >= amountRaised
  amountRaised = amountRaised + (call.value / 10^18)
  if call.value != 0:
      require call.value
      require ((call.value * price) / call.value) == price
  if (call.value * price) != 0:
      require (call.value * price)
      require ((call.value * price * stor27) / (call.value * price)) == stor27
  require (totalSupply + ((call.value * price * stor27) / 10^18)) >= totalSupply
  totalSupply = totalSupply + ((call.value * price * stor27) / 10^18)
  require (balanceOf[caller] + ((call.value * price * stor27) / 10^18)) >= balanceOf[caller]
  balanceOf[caller] = balanceOf[caller] + ((call.value * price * stor27) / 10^18)
  call multiSigWalletAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  log Transfer(address,address,uint256), 0, caller, ((call.value * price * stor27) / 10^18)
  if stor23[caller] == 0:
      if (balanceOf[caller] + ((call.value * price * stor27) / 10^18)) == 0:
      stor23[caller] = stor19.0.uint256
      stor19.0.uint256 = stor19.0.uint256 + 1
      if not stor19.0.uint256 > (stor19.0.uint256 + 1):
      tokenHolder[stor19.0.uint256].addr = caller
      numberOfTokenHolders = numberOfTokenHolders + 1

0xD842d51e84b5D4A8E681e213d4ff69759eC19846
0xD42988c3AF0B9A6D1Ad846a8786833165476150D
0x430ca678E49327C5B3Fad98BA80E0D67922c031d
0x5232d444B9e2B09e524279ED676a4DbE05DDA571
0x6a1428910fCFf75f8a31803f34D697b7754A4926
0xba8296eB90327eE125B659d5e7720FFaEa732ea9
0x23fB85Ab9b6fb60A23dB5823B45c185678159B83
0x5DF06ED6e31ada78356859628F0993E88e2f4BB4
0xcbee9aABE977A3c6236ff48148056d546eCD16CB
0x7fE52904070Ef775e87c0B6c24575f8119A29154
_fallback()
def _fallback() payable: # default function
  require stor10.168.uint8
  if blockICOdatetime != 0:
      require stor10.168.uint8
      require block.timestamp <= blockICOdatetime
  require (currentICOpublicSupply + ((call.value * oneEtherEqualsInWei) / 10^18)) <= maxICOpublicSupply
  call iCOfundsReceiverAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  currentICOpublicSupply = currentICOpublicSupply + ((call.value * oneEtherEqualsInWei) / 10^18)
  balanceOf[caller] = balanceOf[caller] + ((call.value * oneEtherEqualsInWei) / 10^18)
  allowance.length = allowance.length + ((call.value * oneEtherEqualsInWei) / 10^18)
  log Transfer(address,address,uint256), addr(this.address), caller, ((call.value * oneEtherEqualsInWei) / 10^18)

0x1BFFA323d25Ce1B2709D4D346b3a4670FAA948C7
0x89E16aC1755497A63BF8c9275b6e0A4CCb9DB0a8
0xd1C6DF57698ec31F6f487f11c005FcedA503E75B
0x49E907007473aF568fc20b606962A6B04d635B9C
0xD62c0d47809d828E7B84F86Bda508F53e4E50B1A
0x74B9751aF2B1f2f4bd07BDDAa550e1586b32Cb21
0xacBcadfcb387B6762422347a8ea74c3f499b3247
0xdd92a257d279C99579aad35B544285fa42d563bD
0xdC97dD0786A431f4A5eE5E02c816E28BCbe10C07
0x7C0f6468838d8256A6bb334DA2136a825AA3eA15
_fallback()
def _fallback() payable: # default function
  require not stor0.160.uint8
  require block.gasprice <= 50000000000
  require caller != 0
  if (call.value / 10000000000) != 0:
      require call.value / 10000000000
      require (((call.value / 10000000000) * rate) / (call.value / 10000000000)) == rate
  require (tokensSold + ((call.value / 10000000000) * rate)) >= tokensSold
  if block.timestamp >= startTime:
      require block.timestamp <= endTime
  else:
      require block.timestamp >= startTime
  require call.value != 0
  require (tokensSold + ((call.value / 10000000000) * rate)) <= capTokens
  if (call.value / 10000000000) != 0:
      require call.value / 10000000000
      require (((call.value / 10000000000) * rate) / (call.value / 10000000000)) == rate
  call wallet_address with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require ext_code.size(token_address)
  call token_address.transferFrom(address,address,uint256) with:
       gas gas_remaining - 710 wei
      args wallet_address, caller, ((call.value / 10000000000) * rate)
  require ext_call.success
  if ext_call.return_data:
      weiRaised = weiRaised + call.value
      require (tokensSold + ((call.value / 10000000000) * rate)) >= tokensSold
      tokensSold = tokensSold + ((call.value / 10000000000) * rate)
      log 0x623b3804, caller, caller, call.value, ((call.value / 10000000000) * rate)

0xe4B2AcD9d84E29fba1939a76e15F4Cb530CBB52c
0x3cB6C45A7689769de60d423ee6c546d3ca4B15a6
0x3c96c6e76c403c774ba2aB023dF5730375c09B2d
0xB4959bcC38F34DDB9cFD95d4935b18AFd5bB4817
0x2268003d92FF03Be6ca6dA029F8D8127FD2F617e
0xD534111478E5cF4BB8806972d1352Fd52837b68e
0x0A71a23873bD88E42E5c7E404b61e97878b39142
0xf2cdf0A92075eD6DA179a2AD142021936673651b
0x0BB622A8C564BDc98e8F40F23e5077CD4a8699Ea
claimDonations(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs)
def claimDonations(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs) : # not payable
  require stor0 == caller
  signer = erecover(sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])), uint8(cd[324]), cd[356], cd[388]) # precompiled
  require erecover.result
  require addr(signer) == addr(_tokenMinMaxDMWCNonce)
  require block.number > cd[196]
  call stor0.(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]))) >> 224) with:
       gas 2300 * not (stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 + returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) wei
     value stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 + returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 wei
  require ext_call.success
  require ext_code.size(addr(_tokenUser))
  call addr(_tokenUser).transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args stor0, returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 3), addr(_tokenUser)].uint256
  require ext_call.success
  stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 = 0
  returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 = 0
  returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 3), addr(_tokenUser)].uint256 = 0
  log DonationClaimed(address[2],uint256[8],uint8,bytes32[2],uint256,uint256), calldata[-60 + CALLDATASIZE len 60], calldata[-188 + CALLDATASIZE len 188], uint8(cd[324]), 0, 0

0xD50118677d57e4c13DaF22797BDE166eF7Fd52d5
0xB0674652da462015E71a6C8A7Cb52912EE52231A
0xf70D32836E669f1C4562fB8fe268974ca0ADC81C
0x6d64c54E8c0fb4531d266D71BDd8acbc2A2b8928
0xc3F12A70F88dd0C0cF2FbE36e278EC805c9bD781
0x5F5A705f903136EE732bCbC7f7241b761cF71329
0x49223b7aFf30fD2ab4c1D1202D90d1f3A68E5eE9
0x20594A669AC1F354b3A77148a483Ee50C232f68a
0xfB100935A7810bcDfE3405fdD41A30cDe7f3FE57
finalize()
def finalize() : # not payable
  if ownerAddress == caller:
      require not stor14
      if eth.balance(this.address) <= 500000000000000000000:
          call commissionAddress with:	# withdraw / default function
               gas 2300 * not ((10 * eth.balance(this.address)) / 100) wei
             value (10 * eth.balance(this.address)) / 100 wei
      else:
          if eth.balance(this.address) <= 1000000000000000000000:
              call commissionAddress with:	# withdraw / default function
                   gas 2300 * not ((8 * eth.balance(this.address)) / 100) wei
                 value (8 * eth.balance(this.address)) / 100 wei
          else:
              if eth.balance(this.address) >= 10000000000000000000000:
              call commissionAddress with:	# withdraw / default function
                   gas 2300 * not ((6 * eth.balance(this.address)) / 100) wei
                 value (6 * eth.balance(this.address)) / 100 wei
      require ext_call.success
      call multisigETHAddress with:	# withdraw / default function
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      require ext_code.size(tokenAddress)
      call tokenAddress.balanceOf(address) with:
           gas gas_remaining - 710 wei
          args addr(this.address)
      require ext_call.success
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args ownerAddress, ext_call.return_data[-32 + RETURNDATASIZE len 32]
      require ext_call.success
      require ext_call.return_data
      require ext_code.size(tokenAddress)
      call tokenAddress.unlock() with:
           gas gas_remaining - 710 wei
      require ext_call.success
      stor14 = 1
      log 0x41493253, True

0xF7a2b8fA50f043d4e6D243B598FF1D03F18c1A00
0x4A6B53706EF8ffA05B777F29e46ff7be119d69E5
0xe71c0f3930fD0B123A744dAD4f9A6b98a07Fe7D6
0x1190B071b80a37953ab465a34896d96Ef2Ea4b9d
0x2f61082FE531d41975b435AbC65826d869ef9424
0xcEc8A8521D49080E5b7a04Ae5fF022C70B1eFD0f
0xD6Dc348abEc70A641bb6e775fA025F5599CA78CC
0x433E6d2E5A2Eb07a62885b3c1FB08d74E7927811
0xF6CaA4bebD8Fab8489bC4708344d9634315c4340
autoDistribute()
def autoDistribute() payable: 
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor10[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0xF7a2b8fA50f043d4e6D243B598FF1D03F18c1A00
0x4A6B53706EF8ffA05B777F29e46ff7be119d69E5
0xe71c0f3930fD0B123A744dAD4f9A6b98a07Fe7D6
0x1190B071b80a37953ab465a34896d96Ef2Ea4b9d
0x2f61082FE531d41975b435AbC65826d869ef9424
0xcEc8A8521D49080E5b7a04Ae5fF022C70B1eFD0f
0xD6Dc348abEc70A641bb6e775fA025F5599CA78CC
0x433E6d2E5A2Eb07a62885b3c1FB08d74E7927811
0xF6CaA4bebD8Fab8489bC4708344d9634315c4340
_fallback()
def _fallback() payable: # default function
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor10[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0x30919C5c5c7727eea89b110d7258CBb36d541377
0xAE214284A5150c705391Cc907A8a03b1E2b50316
0xA85B55495a6c7fE7d41dd2494D42Be2622EE20DA
0x05E2555A234c5cc36d86406211fb2dd7fA6a5f63
0xcd85b6CfcB0ABE69c8c727B45fDEf1c9327CD642
0x84c91EfA4bFe61907EDF6A7fC9E5515E55B1c703
0xb33ac900927F8B35383d1647d47a62FB16EE6fA2
0x95C4963E7017b2583282Aa98D6af4A391fF6D96A
0x90E7d47Adb84DF3293850D08CbcD5B5D088Da147
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if ext_call.success:
          log 0xe842aea7, beneficiaryAddress, amountRaised, False
          require ext_code.size(tokenRewardAddress)
          call tokenRewardAddress.balanceOf(address) with:
               gas gas_remaining - 710 wei
              args addr(this.address)
          require ext_call.success
          require ext_code.size(tokenRewardAddress)
          call tokenRewardAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args beneficiaryAddress, ext_call.return_data[-32 + RETURNDATASIZE len 32]
          require ext_call.success
          tokenBalance = 0

0x88ca3E9767016841034404630031f7878e3dd41C
0x9A9B840586990c1147f456d123Dc7704592541fB
0xEE390b37452dE3CB2BAbD31a71Fb1DA0072005Be
0x090d334788C89D4E46F7a9D9252117A4bfbFE7Dc
0x1e43C0D9Dd77797A92166c9E0DaB76c458Ab16D1
0x53AB88b8d4ed45e5273FAF3306C06d239E1a68d0
0x71dC5076eb4af938EE007a5034370FA0a8d964B4
0xE11902D6450A5235a02B93939669CEBB0eA1e279
0xCD74482034bB11a2C95aa87e111Eaaa1857F7E39
unknown1fa60a5f(?)
def unknown1fa60a5f(?) : # not payable
  if stor1 != caller:
      return 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
  call stor2 with:	# withdraw / default function
       gas 2300 * not stor7 wei
     value stor7 wei
  if ext_call.success:
      stor7 = 0
      stor8 = 6
  return 0

0xe4B2AcD9d84E29fba1939a76e15F4Cb530CBB52c
0x3cB6C45A7689769de60d423ee6c546d3ca4B15a6
0x3c96c6e76c403c774ba2aB023dF5730375c09B2d
0xB4959bcC38F34DDB9cFD95d4935b18AFd5bB4817
0x2268003d92FF03Be6ca6dA029F8D8127FD2F617e
0xD534111478E5cF4BB8806972d1352Fd52837b68e
0x0A71a23873bD88E42E5c7E404b61e97878b39142
0xf2cdf0A92075eD6DA179a2AD142021936673651b
exerciseLong(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs)
def exerciseLong(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs) : # not payable
  signer = erecover(sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])), uint8(cd[324]), cd[356], cd[388]) # precompiled
  require erecover.result
  require addr(signer) == addr(_tokenMinMaxDMWCNonce)
  require block.number > cd[164]
  require block.number <= cd[196]
  require stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 >= _v
  require stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256
  if returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256:
      require returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256
      require (((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) / returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) == (returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256)
  if not stor2[sha3(caller, 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].0.uint8:
      require (returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 + ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)) >= ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)
      require (returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 + ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)) >= returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256
      call caller.(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]))) >> 224) with:
           gas 2300 * not (returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 + ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)) wei
         value returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 + ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) wei
      require ext_call.success
      require ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) <= returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256
      returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 = returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 - ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)
      require returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 <= stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256
      stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 = stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 - returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256
      returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 = 0
      log EthLongExercised(address[2],uint256[8],uint8,bytes32[2],uint256,uint256), calldata[-60 + CALLDATASIZE len 60], calldata[-188 + CALLDATASIZE len 188], uint8(cd[324]), ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256), 0
  else:
      if returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256:
          require returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256
          require ((cd[260] * returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256) / returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256) == cd[260]
      call caller.(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]))) >> 224) with:
           gas 2300 * not ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) wei
         value ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) wei
      require ext_call.success
      require ext_code.size(addr(_tokenUser))
      call addr(_tokenUser).transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, (cd[260] * returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256)
      require ext_call.success
      require ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256) <= returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256
      returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 = returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 - ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256)
      require returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 <= stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256
      stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 = stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 - returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256
      require (cd[260] * returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256) <= returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 3), addr(_tokenUser)].uint256
      returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 3), addr(_tokenUser)].uint256 = returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 3), addr(_tokenUser)].uint256 - (cd[260] * returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256)
      returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 = 0
      log TokenLongExercised(address[2],uint256[8],uint8,bytes32[2],uint256,uint256), calldata[-60 + CALLDATASIZE len 60], calldata[-188 + CALLDATASIZE len 188], uint8(cd[324]), ((returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 / stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256) * returnCoupon[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256), (cd[260] * returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256)

0x0Cf5a500A615ADbb12Ea08d681B39186C9BdE4fb
0x1b693A49a2Fba5d5C814FfDF7f695C3ED9764534
0x4D7eDd5f94515B0f35b38F6FB2Ea975A20823465
0x69294Da06fe22d2e1Bfe59467bA22E31c0953dCF
0x3365845E915FB3bA57D8901DE971aE9EC8223d90
0xf3C8Ed6C721774C022c530E813a369dFe78a6E85
0xd0B3585986332180575AB99e8465B88770741202
0x5acD164EBAecba00345d756c29364E6a6b17d5A4
withdraw()
def withdraw() : # not payable
  require caller == ownerAddress
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not etherForOwner wei
     value etherForOwner wei
  require ext_call.success
  call storage(160, 0, 3) with:	# withdraw / default function
       gas 2300 * not etherForCharity wei
     value etherForCharity wei
  etherForOwner = 0
  etherForCharity = 0

0x95583A705587EDed8ecBaF1E8DE854e778f366C4
0x4f1DcdAbEEA91ED4b6341e7396127077161F69eD
0x1FCC17b8e72b65fD6224ababaA72128D2153C1FA
0xa3cE9716F5914e6Bb5e6F80E5DD692d640F8608c
0x98eA61752e448b5b87e1ed9b64fe024B40c6127d
0xc14971b19a39327C032CcFfBD1b714C0F886dc76
0x22164E957ac4C0cB0f19C49B05e627675436DFE1
0xC82Fe8071B352Ee022FaB5064Ff5c0148e3ac3aa
fillBid()
def fillBid() : # not payable
  if ownerAddress != caller:
      if block.timestamp <= (highestBidTime + 86400):
          require not balanceOf[ownerAddress]
  if stor20 == caller:
      require block.timestamp > (activationTime + 31536000)
  if lowestAskAddress == caller:
      require balanceOf[caller] > 1
  require stor16.0
  require balanceOf[caller] >= 1
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not ((highestBidPrice / 10000) * ownerCommission) wei
     value ((highestBidPrice / 10000) * ownerCommission) wei
  require ext_call.success
  call caller with:	# withdraw / default function
       gas 2300 * not (highestBidPrice - ((highestBidPrice / 10000) * ownerCommission) - (highestBidPrice / 40)) wei
     value highestBidPrice - ((highestBidPrice / 10000) * ownerCommission) - (highestBidPrice / 40) wei
  call stor20 with:	# withdraw / default function
       gas 2300 * not (highestBidPrice / 40) wei
     value highestBidPrice / 40 wei
  balanceOf[highestBidAddress] = balanceOf[highestBidAddress] + 1
  require ext_code.size(stor20)
  call stor20.issuePatrons(address,uint256) with:
       gas gas_remaining - 710 wei
      args highestBidAddress, Mask(255, 0, (highestBidPrice / 5))
  require ext_call.success
  balanceOf[caller] = balanceOf[caller] - 1
  log pieceSold(address,address,uint256), caller, highestBidAddress, highestBidPrice
  stor16.0 = 0
  highestBidPrice = 0
  highestBidAddress = 0

0x95583A705587EDed8ecBaF1E8DE854e778f366C4
0x4f1DcdAbEEA91ED4b6341e7396127077161F69eD
0x1FCC17b8e72b65fD6224ababaA72128D2153C1FA
0xa3cE9716F5914e6Bb5e6F80E5DD692d640F8608c
0x98eA61752e448b5b87e1ed9b64fe024B40c6127d
0xc14971b19a39327C032CcFfBD1b714C0F886dc76
0x22164E957ac4C0cB0f19C49B05e627675436DFE1
0xC82Fe8071B352Ee022FaB5064Ff5c0148e3ac3aa
cancelBid()
def cancelBid() : # not payable
  require highestBidAddress == caller
  require stor16.0
  require block.timestamp > (highestBidTime + 86400)
  stor16.0 = 0
  call caller with:	# withdraw / default function
       gas 2300 * not highestBidPrice wei
     value highestBidPrice wei
  require ext_call.success
  highestBidPrice = 0
  highestBidAddress = 0
  log 0x4346962b, 0, 0

0x95583A705587EDed8ecBaF1E8DE854e778f366C4
0x4f1DcdAbEEA91ED4b6341e7396127077161F69eD
0x1FCC17b8e72b65fD6224ababaA72128D2153C1FA
0xa3cE9716F5914e6Bb5e6F80E5DD692d640F8608c
0x98eA61752e448b5b87e1ed9b64fe024B40c6127d
0xc14971b19a39327C032CcFfBD1b714C0F886dc76
0x22164E957ac4C0cB0f19C49B05e627675436DFE1
0xC82Fe8071B352Ee022FaB5064Ff5c0148e3ac3aa
offerPieceForSale(uint256 _price)
def offerPieceForSale(uint256 _price) : # not payable
  if stor20 == caller:
      require block.timestamp > (activationTime + 31536000)
  if _price >= lowestAskPrice:
      require not stor11
  if _price > highestBidPrice:
      stor11 = 1
      lowestAskPrice = _price
      lowestAskAddress = caller
      lowestAskTime = block.timestamp
      log newLowestAsk(uint256,address), _price, caller
  else:
      if ownerAddress != caller:
          if block.timestamp <= (highestBidTime + 86400):
              require not balanceOf[ownerAddress]
      if stor20 == caller:
          require block.timestamp > (activationTime + 31536000)
      if lowestAskAddress == caller:
          require balanceOf[caller] > 1
      require stor16.0
      require balanceOf[caller] >= 1
      call ownerAddress with:	# withdraw / default function
           gas 2300 * not ((highestBidPrice / 10000) * ownerCommission) wei
         value ((highestBidPrice / 10000) * ownerCommission) wei
      require ext_call.success
      call caller with:	# withdraw / default function
           gas 2300 * not (highestBidPrice - ((highestBidPrice / 10000) * ownerCommission) - (highestBidPrice / 40)) wei
         value highestBidPrice - ((highestBidPrice / 10000) * ownerCommission) - (highestBidPrice / 40) wei
      call stor20 with:	# withdraw / default function
           gas 2300 * not (highestBidPrice / 40) wei
         value highestBidPrice / 40 wei
      balanceOf[highestBidAddress] = balanceOf[highestBidAddress] + 1
      require ext_code.size(stor20)
      call stor20.issuePatrons(address,uint256) with:
           gas gas_remaining - 710 wei
          args highestBidAddress, Mask(255, 0, (highestBidPrice / 5))
      require ext_call.success
      balanceOf[caller] = balanceOf[caller] - 1
      log pieceSold(address,address,uint256), caller, highestBidAddress, highestBidPrice
      stor16.0 = 0
      highestBidPrice = 0
      highestBidAddress = 0

0x95583A705587EDed8ecBaF1E8DE854e778f366C4
0x4f1DcdAbEEA91ED4b6341e7396127077161F69eD
0x1FCC17b8e72b65fD6224ababaA72128D2153C1FA
0xa3cE9716F5914e6Bb5e6F80E5DD692d640F8608c
0x98eA61752e448b5b87e1ed9b64fe024B40c6127d
0xc14971b19a39327C032CcFfBD1b714C0F886dc76
0x22164E957ac4C0cB0f19C49B05e627675436DFE1
0xC82Fe8071B352Ee022FaB5064Ff5c0148e3ac3aa
buyPiece()
def buyPiece() payable: 
  require stor11
  require call.value >= lowestAskPrice
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not ((call.value / 10000) * ownerCommission) wei
     value ((call.value / 10000) * ownerCommission) wei
  require ext_call.success
  call lowestAskAddress with:	# withdraw / default function
       gas 2300 * not (call.value - ((call.value / 10000) * ownerCommission) - (call.value / 40)) wei
     value call.value - ((call.value / 10000) * ownerCommission) - (call.value / 40) wei
  call stor20 with:	# withdraw / default function
       gas 2300 * not (call.value / 40) wei
     value call.value / 40 wei
  balanceOf[lowestAskAddress] = balanceOf[lowestAskAddress] - 1
  balanceOf[caller] = balanceOf[caller] + 1
  require ext_code.size(stor20)
  call stor20.issuePatrons(address,uint256) with:
       gas gas_remaining - 710 wei
      args caller, Mask(255, 0, (call.value / 5))
  require ext_call.success
  log pieceSold(address,address,uint256), lowestAskAddress, caller, call.value
  stor11 = 0
  lowestAskPrice = 0
  lowestAskAddress = 0

0x95583A705587EDed8ecBaF1E8DE854e778f366C4
0x4f1DcdAbEEA91ED4b6341e7396127077161F69eD
0x1FCC17b8e72b65fD6224ababaA72128D2153C1FA
0xa3cE9716F5914e6Bb5e6F80E5DD692d640F8608c
0x98eA61752e448b5b87e1ed9b64fe024B40c6127d
0xc14971b19a39327C032CcFfBD1b714C0F886dc76
0x22164E957ac4C0cB0f19C49B05e627675436DFE1
0xC82Fe8071B352Ee022FaB5064Ff5c0148e3ac3aa
placeBid()
def placeBid() payable: 
  if call.value <= highestBidPrice:
      require stor11
      require call.value >= lowestAskPrice
  if stor16.0:
      call highestBidAddress with:	# withdraw / default function
           gas 2300 * not highestBidPrice wei
         value highestBidPrice wei
      require ext_call.success
  if not stor11:
      stor16.0 = 1
      highestBidPrice = call.value
      highestBidAddress = caller
      highestBidTime = block.timestamp
      log 0x4346962b, call.value, caller
  else:
      if call.value < lowestAskPrice:
          stor16.0 = 1
          highestBidPrice = call.value
          highestBidAddress = caller
          highestBidTime = block.timestamp
          log 0x4346962b, call.value, caller
      else:
          require stor11
          require call.value >= lowestAskPrice
          call ownerAddress with:	# withdraw / default function
               gas 2300 * not ((call.value / 10000) * ownerCommission) wei
             value ((call.value / 10000) * ownerCommission) wei
          require ext_call.success
          call lowestAskAddress with:	# withdraw / default function
               gas 2300 * not (call.value - ((call.value / 10000) * ownerCommission) - (call.value / 40)) wei
             value call.value - ((call.value / 10000) * ownerCommission) - (call.value / 40) wei
          call stor20 with:	# withdraw / default function
               gas 2300 * not (call.value / 40) wei
             value call.value / 40 wei
          balanceOf[lowestAskAddress] = balanceOf[lowestAskAddress] - 1
          balanceOf[caller] = balanceOf[caller] + 1
          require ext_code.size(stor20)
          call stor20.issuePatrons(address,uint256) with:
               gas gas_remaining - 710 wei
              args caller, Mask(255, 0, (call.value / 5))
          require ext_call.success
          log pieceSold(address,address,uint256), lowestAskAddress, caller, call.value
          stor11 = 0
          lowestAskPrice = 0
          lowestAskAddress = 0

0x31bc759F583e0D8dbf8E7649483dCd85fbC18029
0xC9096abee70893B5A325eB799E32115A01ac50EC
0x21a669beE022eB8d3A78631DC935D08B2c284eB3
0x790aB3c76d6589B489ad60938411b8Dd1C0D32EF
0x6d66A8D205Acd98F35d31dfed59e6bE75ba1641D
0x348fcC80a18B6C247ce2889bFC063e281A4e2951
0x47BFde592c302bFcD103Be3899EEF0215422520F
0xE973D3dA47b2EFFbb00F13900B1888012a25A7DF
approveMint(uint256 _nonce)
def approveMint(uint256 _nonce) : # not payable
  require caller == validatorAddress
  require ext_code.size(whiteListingContractAddress)
  call whiteListingContractAddress.isInvestorApproved(address) with:
       gas gas_remaining wei
      args stor9[_nonce].0.addr
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  require ext_call.return_data
  weiRaised = stor9[_nonce].512 + weiRaised
  require ext_code.size(tokenAddress)
  call tokenAddress.mint(address,uint256) with:
       gas gas_remaining wei
      args stor9[_nonce].0.addr, stor9[_nonce].0.uint256
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  log 0x623b3804, caller, stor9[_nonce].0.addr, stor9[_nonce].0.uint256, stor9[_nonce].0.uint256
  call walletAddress.storage(32, 224, 9, _nonce) with:
       gas 2300 * not stor9[_nonce].512 wei
     value stor9[_nonce].512 wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  stor9[_nonce].0.addr = 0
  stor9[_nonce].256 = 0
  stor9[_nonce].512 = 0
  return True

0xdD9F7157ddbf60f5db68084821f82Ea048EfE881
0x3302fEA6FeFb6EeA9644A367DA497C2B3dBC9F5C
0x775677bbbb575bCA9F052E2f7e01294cAFd5422B
0x73cA853D767Aa545d936e648B2025f0dd33657Ed
0x1770b9668DA1aCEa5d8c6fFE8Edb303A14203c55
0xb8a29B5440f3C7B3114f6D0dcE236190B745c672
0x7D770810ea75CBb5b15c71d156a5d4DAe818fD7F
0x840B42E40a622f82D91Ed832Fe4019990f57BF32
_fallback()
def _fallback() payable: # default function
  require ext_code.size(stor2)
  call stor2.balances(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require ext_call.return_data
  require vOTING_START_BLOCKNR
  require block.number >= vOTING_START_BLOCKNR
  require block.timestamp <= vOTING_END_TIME
  require call.value <= 10^18
  call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor8[caller] = call.value

0xC6f103a2D749b3A8Fd59E905b0d3eeD02AAF23FC
0xa311c8E3dFfbbC510177994cC2537c112dC5EC1b
0x36885D5202B315b5FEDC2C77028041617DE52f88
0x5E1FdcEd8E61FDE29982481475ab7d2B76C47b96
0x97453fdCE7dd5E94Ae00ae5f31bd1A9c57f58B6c
0x4d0E1f096095c0892E527e4e26a2248d12C550C7
0x0495fDBF20B35380A3d133511561fc5484f02fCe
0x45483c4B9c780349220D75d840Ac3FEb488dD3f3
finalize()
def finalize() : # not payable
  require not stor0.160
  require ownerAddress == caller
  call storage(160, 0, 1) with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  stor0.160 = 1

0xc88a9E1C1Ef77a1C9964CE9010734ad553C6f2F1
0xeF38893768960F9d7F9b20Cc2cf63C7f6A113136
0x335cD59a7196b41B11A786673d95Eff8355ABEf7
0x90296b63Fc58512F388b085Caad23e1c4845e11e
0x554bb05483601093Bf2e60A3492f4e5438e0c6A7
0x96Ee07c53fdEdDdA0F83642808B9a707744fd449
0x82C453724BC9d746E61B164085f60752C595411b
0x484ae89cb0B1A03c94Dc78Ed02999ef010c9f258
start()
def start() : # not payable
  require ext_code.size(ownableAddress)
  call ownableAddress.allowed(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require ext_call.return_data
  if playersInGame[game] == 1:
      call stor2[sha3(game, 10)].0.addr.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not gameJackpot[game] wei
         value gameJackpot[game] wei
      require ext_call.success
      require ext_code.size(statsAddress)
      call statsAddress.4038254313 with:
           gas gas_remaining - 710 wei
          args stor2[sha3(game, 10)].0.addr, game, playersInGame[game], gameJackpot[game], gType
      require ext_call.success
      allTimeJackpot = gameJackpot[game] + allTimeJackpot
  else:
      require playersInGame[game] - 1
      require (sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1)) <= (playersInGame[game] - 1)
      if (sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1)) < 0:
          call stor2[sha3(game, 10)].0.addr.(Mask(32, 224, ((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) >> 224) with:
               gas 2300 * not (gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100)) wei
             value gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100) wei
          require ext_call.success
          call fundsDistributorAddress.(Mask(32, 224, ((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) >> 224) with:
               gas 200000 wei
             value (gameJackpot[game] * unknownb53627b2) / 100 wei
          require ext_code.size(statsAddress)
          call statsAddress.4038254313 with:
               gas gas_remaining - 710 wei
              args stor2[sha3(game, 10)].0.addr, game, playersInGame[game], (gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100)), gType
      else:
          require (sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1)) < playersInGame[game]
          call stor2[sha3(game, 10), (sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1))].0.addr.(Mask(32, 224, ((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) >> 224) with:
               gas 2300 * not (gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100)) wei
             value gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100) wei
          require ext_call.success
          call fundsDistributorAddress.(Mask(32, 224, ((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) >> 224) with:
               gas 200000 wei
             value (gameJackpot[game] * unknownb53627b2) / 100 wei
          require (sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1)) < playersInGame[game]
          require ext_code.size(statsAddress)
          call statsAddress.4038254313 with:
               gas gas_remaining - 710 wei
              args stor2[(sha3(((sha3((block.timestamp * block.difficulty * block.number * block.hash((block.number - 1)))) % 10) + 1)) % (playersInGame[game] - 1)), sha3(game, 10)].0.addr, game, playersInGame[game], (gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100)), gType
      require ext_call.success
      allTimeJackpot = gameJackpot[game] - ((gameJackpot[game] * unknownb53627b2) / 100) + allTimeJackpot
  allTimePlayers = playersInGame[game] + allTimePlayers
  require stor6.0
  require ext_code.size(ownableAddress)
  call ownableAddress.allowed(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require ext_call.return_data
  game = block.number
  if newPrice:
      ticketPrice.uint256 = newPrice
      newPrice = 0
  if stor6.8.uint8:
      stor6.0 = uint8(not stor6.0)
      stor6.8.uint8 = 0
      stor6.16 = Mask(240, 16, not stor6.0) >> 16
  log 0xc1e01725, block.timestamp, block.number

0x1bAf3AC16104109e2139061E0a4c197E58462838
0x22DC4C793cD0Da474Fd2C02e83d5818D534b2A03
0x171999ccB722704aaC1214fA42B3A501ecCA3C41
0x29AE89fF19D4129994D9BBbeFdfE2E6a293E3429
0x4F568449501Dc5aAb69bAD0057842EB14A45b507
0xAF32f3696F09689061c5551CFC3eC799282120Eb
0x5fD66370B7fc3c8f6e313cd4bD5802A595DF05A3
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor7.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], 0
          if not stor7.0:
      if caller != beneficiaryAddress:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor7.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, 0

0xDf9E97970C953Ff6730B155845FB7Bbd5ae72abF
0xc409392e5eA00E0051BcABD2B5E221d5A7A12cbd
0x77a9fE3E5b0589CCE65f1B1848Ce8162abae9CF7
0xe6685836b3076d4EEC5969E1f3a4c46774816961
0x1c4080B2d44A2C67Cd535eF4BF0CAD65E7a55dc7
0x22A3f0b0F414a26E0465B9D3A25356C43094B1B0
0x956EE5ca197D1d81913De0d68e97b5C261f5d64d
requestDivident()
def requestDivident() payable: 
  stor20 = stor20 + 1
  stor19[(stor20 + 1)] = caller
  if bool(stor18[addr(caller)].0.uint8) == True:
      log dividentSent(uint256,address,uint256), (stor20 + 1), addr(caller), stor18[addr(caller)].0.uint256
      call addr(caller).(Mask(32, 224, (stor20 + 1)) >> 224) with:
           gas 2300 * not stor18[addr(caller)].0.uint256 wei
         value stor18[addr(caller)].0.uint256 wei
      stor18[addr(caller)].256 = False or (stor18[addr(caller)].8 << 248)

0xEBC9adcC7a70AE3e6771892500f2E558e25b2F08
0x899e746a024C26761F31Ebacb99f08e610386e76
0xEA003AB3222E63ABba2c289A294622c59E004685
0xaaD519a73AC8901299eff818C0B065DCB3E43A2b
0xdB0c777c86bB8aB60f82659d00f1c7D061211D2d
0xF97917e303d3D9d3d55d8516bcDd51E583d1330D
0x99D634eB209Cc155864b36CF9Dd1AB29a921C008
unknown49c15bd9(?)
def unknown49c15bd9(?) payable: 
  require value <= call.value
  call caller with:	# withdraw / default function
       gas 2300 * not (call.value - value) wei
     value call.value - value wei
  require ext_call.success
  ownerAddress = caller
  if bool(stor1.160) == 1:
      call unknownbe2bc53eAddress with:	# withdraw / default function
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      require ext_call.success
  stor1.160 = 0

0x54bb85B3773d71e7f56bE009BF47cde74Df80Ca4
0x72d77Bc283cf6f50CF075593235419DAdaa47a76
0x05E3a714DF97EAdf8FC34F7fb5caF0FEA624b4a7
0x989c15913e69ba777Be9a19EA4Ad6e872fC2832e
0x3b09594C491C3192E468de39c1A3F46C463B0109
0x42D14954160DB7992a5E3516065aDA14d409Cc74
0x8BdF5a5E9B3b043DA9968489EF4FF1d72e87aA59
createTokens()
def createTokens() payable: 
  if call.value:
      require call.value
      require ((rATE * call.value) / call.value) == rATE
  require (((rATE * call.value) / 10^18) + totalSupply) >= totalSupply
  totalSupply = ((rATE * call.value) / 10^18) + totalSupply
  require (((rATE * call.value) / 10^18) + balanceOf[caller]) >= balanceOf[caller]
  balanceOf[caller] = ((rATE * call.value) / 10^18) + balanceOf[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor1.0 = 1

0x54bb85B3773d71e7f56bE009BF47cde74Df80Ca4
0x72d77Bc283cf6f50CF075593235419DAdaa47a76
0x05E3a714DF97EAdf8FC34F7fb5caF0FEA624b4a7
0x989c15913e69ba777Be9a19EA4Ad6e872fC2832e
0x3b09594C491C3192E468de39c1A3F46C463B0109
0x42D14954160DB7992a5E3516065aDA14d409Cc74
0x8BdF5a5E9B3b043DA9968489EF4FF1d72e87aA59
_fallback()
def _fallback() payable: # default function
  if call.value:
      require call.value
      require ((rATE * call.value) / call.value) == rATE
  require (((rATE * call.value) / 10^18) + totalSupply) >= totalSupply
  totalSupply = ((rATE * call.value) / 10^18) + totalSupply
  require (((rATE * call.value) / 10^18) + balanceOf[caller]) >= balanceOf[caller]
  balanceOf[caller] = ((rATE * call.value) / 10^18) + balanceOf[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor1.0 = 1

0x6Fa89ed0f4C229226f94950a7e4132a9637AF845
0x1E0490d9515a2Ef9c6e7aD8A598527b149A8E432
0x1556ef624B143556956055c281a08E588d422402
0x4403e15053786ABaEF11d73f2a08a54C9f58fC34
0x5B399540A3Cd4c6Cc017BEc2b9e29Eb008390aFc
0x512238c600D187f375324936D701bace47E15d92
0x386771Ba5705Da638D889381471Ec1025A824F53
addguess()
def addguess() payable: 
  require state <= 1
  require state == 0
  require state <= 1
  require state == 0
  require call.value >= bettingPrice.uint256
  hash = sha256hash(block.timestamp, addr(block.coinbase), block.difficulty, stor1004) # precompiled
  require sha256hash.result
  stor1004 = hash
  if (stor1003 + 1) <= maxContenders:
      stor1003 = stor1003 + 1
      require stor1003 < 1000
      stor2[stor1003].768 = caller
      if (stor1003 + 1) >= maxContenders:
          state = 1
          require stor1003 + 1
          require (((hash + block.timestamp) % 1000001) % (stor1003 + 1)) < 1000
          stor1008 = stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr
          call addr(stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr).(Mask(32, 224, hash) >> 224) with:
               gas 2300 * not (eth.balance(this.address) - (eth.balance(this.address) / 100)) wei
             value eth.balance(this.address) - (eth.balance(this.address) / 100) wei
          require ext_call.success
          log SentPrizeToWinner(address,uint256,uint256,uint256,uint256,uint256), addr(stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr), (eth.balance(this.address) - (eth.balance(this.address) / 100)), stor1005, ((hash + block.timestamp) % 1000001), stor1006, block.timestamp
          call developerAddress with:	# withdraw / default function
               gas 2300 * not (eth.balance(this.address) / 100) wei
             value (eth.balance(this.address) / 100) wei
          log SentDeveloperFee(uint256,uint256), (eth.balance(this.address) / 100), eth.balance(this.address)
          stor1003 = 0
          stor1005 = stor1005 + 1
          state = 0
          stor0.256 = 0
          stor1006 = block.timestamp

0x6Fa89ed0f4C229226f94950a7e4132a9637AF845
0x1E0490d9515a2Ef9c6e7aD8A598527b149A8E432
0x1556ef624B143556956055c281a08E588d422402
0x4403e15053786ABaEF11d73f2a08a54C9f58fC34
0x5B399540A3Cd4c6Cc017BEc2b9e29Eb008390aFc
0x512238c600D187f375324936D701bace47E15d92
0x386771Ba5705Da638D889381471Ec1025A824F53
finish()
def finish() : # not payable
  if caller == developerAddress:
      state = 1
      require stor1003
      require (((stor1004 + block.timestamp) % 1000001) % stor1003) < 1000
      stor1008 = stor2[(((stor1004 + block.timestamp) % 1000001) % stor1003)].0.addr
      call addr(stor2[(((stor1004 + block.timestamp) % 1000001) % stor1003)].0.addr) with:	# withdraw / default function
           gas 2300 * not (eth.balance(this.address) - (eth.balance(this.address) / 100)) wei
         value eth.balance(this.address) - (eth.balance(this.address) / 100) wei
      require ext_call.success
      log SentPrizeToWinner(address,uint256,uint256,uint256,uint256,uint256), addr(stor2[(((stor1004 + block.timestamp) % 1000001) % stor1003)].0.addr), (eth.balance(this.address) - (eth.balance(this.address) / 100)), stor1005, ((stor1004 + block.timestamp) % 1000001), stor1006, block.timestamp
      call developerAddress with:	# withdraw / default function
           gas 2300 * not (eth.balance(this.address) / 100) wei
         value (eth.balance(this.address) / 100) wei
      log SentDeveloperFee(uint256,uint256), (eth.balance(this.address) / 100), eth.balance(this.address)
      stor1003 = 0
      stor1005 = stor1005 + 1
      state = 0
      stor0.256 = 0
      stor1006 = block.timestamp

0x6Fa89ed0f4C229226f94950a7e4132a9637AF845
0x1E0490d9515a2Ef9c6e7aD8A598527b149A8E432
0x1556ef624B143556956055c281a08E588d422402
0x4403e15053786ABaEF11d73f2a08a54C9f58fC34
0x5B399540A3Cd4c6Cc017BEc2b9e29Eb008390aFc
0x512238c600D187f375324936D701bace47E15d92
0x386771Ba5705Da638D889381471Ec1025A824F53
_fallback()
def _fallback() payable: # default function
  require state <= 1
  require state == 0
  require call.value >= bettingPrice.uint256
  hash = sha256hash(block.timestamp, addr(block.coinbase), block.difficulty, stor1004) # precompiled
  require sha256hash.result
  stor1004 = hash
  if (stor1003 + 1) <= maxContenders:
      stor1003 = stor1003 + 1
      require stor1003 < 1000
      stor2[stor1003].768 = caller
      if (stor1003 + 1) >= maxContenders:
          state = 1
          require stor1003 + 1
          require (((hash + block.timestamp) % 1000001) % (stor1003 + 1)) < 1000
          stor1008 = stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr
          call addr(stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr).(Mask(32, 224, hash) >> 224) with:
               gas 2300 * not (eth.balance(this.address) - (eth.balance(this.address) / 100)) wei
             value eth.balance(this.address) - (eth.balance(this.address) / 100) wei
          require ext_call.success
          log SentPrizeToWinner(address,uint256,uint256,uint256,uint256,uint256), addr(stor2[(((hash + block.timestamp) % 1000001) % (stor1003 + 1))].0.addr), (eth.balance(this.address) - (eth.balance(this.address) / 100)), stor1005, ((hash + block.timestamp) % 1000001), stor1006, block.timestamp
          call developerAddress with:	# withdraw / default function
               gas 2300 * not (eth.balance(this.address) / 100) wei
             value (eth.balance(this.address) / 100) wei
          log SentDeveloperFee(uint256,uint256), (eth.balance(this.address) / 100), eth.balance(this.address)
          stor1003 = 0
          stor1005 = stor1005 + 1
          state = 0
          stor0.256 = 0
          stor1006 = block.timestamp

0x31098C25BC3834403D032999A648Db87191E6dE4
0xAa947f043099c126cf78437b730bf5cd2AEFF816
0x89d9C2adECa0761bea5033a29E1c4691b43B5Ec9
0x3B6B74df081BC0E2c4776b3Ceb3D4Bc61C20ad32
0x6c37246d0548F6F6F3619de1671B0b5b98aDB78a
0x0E2C543d69B201B835bda851F8F849a51824801b
0xA1877c74562821fF59Ffc0BC999E6a2e164F4D87
devWithdrawal(uint256 _num, uint256 _den)
def devWithdrawal(uint256 _num, uint256 _den) : # not payable
  require stor4.8.uint8
  require beneficiaryAddress == caller
  require _den
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not (_num / _den) wei
     value _num / _den wei
  if ext_call.success:
      log 0xe842aea7, (beneficiaryAddress << 160), (_num / _den), 0
      resAmount = resAmount - (_num / _den)

0x31098C25BC3834403D032999A648Db87191E6dE4
0xAa947f043099c126cf78437b730bf5cd2AEFF816
0x89d9C2adECa0761bea5033a29E1c4691b43B5Ec9
0x3B6B74df081BC0E2c4776b3Ceb3D4Bc61C20ad32
0x6c37246d0548F6F6F3619de1671B0b5b98aDB78a
0x0E2C543d69B201B835bda851F8F849a51824801b
0xA1877c74562821fF59Ffc0BC999E6a2e164F4D87
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      require stor4.0.uint8
      if not stor4.8.uint8:
          if not stor4.0.uint8:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          log 0xe842aea7, caller, balanceOf[caller], 0
          resAmount = resAmount - balanceOf[caller]

0xe1DDd076758c30766C0366590a69e45C3459AEAA
0x6aB1453ae2CDfB7524DEcFC71bC9105Bf2a58d5A
0xE94a93e43551513D46197C649BfBA9F9D6d73F59
0x340DbA127F099DAB9DC8599C75b16e44D9b02Fdb
0x09E780855f195FCBB0B403A6676A4b34467ae510
0x5a50C7D96fC68ea2F0bEE06D86CD971c31F85604
0x65CFAc6E114860410147cb164A69B54e17180112
refundEther(address _to)
def refundEther(address _to) : # not payable
  require ext_code.size(stor2)
  call stor2.owner() with:
       gas gas_remaining wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  require caller == ext_call.return_data[-20 + RETURNDATASIZE len 20]
  call addr(_to).ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
       gas 2300 * not etherUser[addr(_to)] wei
     value etherUser[addr(_to)] wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  etherUser[addr(_to)] = 0
  pendingTokenUser[addr(_to)] = 0

0xa5E9FD547d78F2b658AE6C45Ad08D9Ab432c797c
0xbFE9c8aDB5e61898b0f189310776D1233A73329A
0xDeE39B26698E927d63cBEca5E43c8b59D834ec79
0x1074F517213165d5C37c2bcc452C7Afd7A9da3bB
0xE7debbaf22969965bEf5C868A742D9810070296a
0x68939C65482912ECE477f679964931aDE480AE92
0x48473B1ec1852CE0242f571Ab92C19aB66F4f4C3
withdraw()
def withdraw() : # not payable
  require ownerAddress == caller
  require stor14.0
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not collected wei
     value collected wei
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args beneficiaryAddress, ext_call.return_data[-32 + RETURNDATASIZE len 32]
  require ext_call.success
  stor14.8 = 1

0xE48999C416dC6b8e384A4e1929d9CB37D7Bd1Ab8
0xe906bB7FC3F342C36e2f0811dE87883a2fCbCf55
0xFc0D55363651BcB0da1c8C6Ec2bC68A5c1a2bCD3
0xcE5E20D040aFBF9072d5B9E901Ce825117eA21CD
0x96d8fbf95F72f5Abe9EF04f1AdE94E1Ba79Be508
0xB344F584E002e2aD84A71A60e395eCd057060d19
0x8C628caaFf01B61140f5576292Bf57154E119b0b
FoundationTransfer(address _to, uint256 _amtEth, uint256 _amtToken)
def FoundationTransfer(address _to, uint256 _amtEth, uint256 _amtToken) : # not payable
  require caller == stor0.0
  require eth.balance(this.address) >= _amtEth
  require balanceOf[addr(this.address)] >= _amtToken
  call addr(_to) with:	# withdraw / default function
       gas 2300 * not _amtEth wei
     value _amtEth wei
  require ext_call.success
  log TransferedEth(address,uint256), addr(_to), _amtEth
  balanceOf[addr(this.address)] = balanceOf[addr(this.address)] - _amtToken
  balanceOf[addr(_to)] = balanceOf[addr(_to)] + _amtToken
  log Transfer(address,address,uint256), addr(this.address), addr(_to), _amtToken

0x1ffD205d11B2e200fcC8908afd649cfF256F16d0
0x2c594E1cB006E86C3879b1d8191a8B059AF52bE7
0x319A1af29dF98435B251Dfb4c56277B621703018
0x373604ee6f3bCE3b7126BB38f54CE6fD5eC59803
0x7F32D1959B5361e884DF8c9d017A03F4Ce29c8B2
0xd49c04Ada501F092f15a01bBCb40E7d15AD24856
0x7d5404ea3344745F80D039c28EfBE44742935593
autoDistribute()
def autoDistribute() payable: 
  require balanceOf[ownerAddress] >= distributeAmount
  require bool(stor10[caller].0.uint8) == False
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = balanceOf[caller] + distributeAmount
  log Transfer(address,address,uint256), ownerAddress, caller, distributeAmount

0x1ffD205d11B2e200fcC8908afd649cfF256F16d0
0x2c594E1cB006E86C3879b1d8191a8B059AF52bE7
0x319A1af29dF98435B251Dfb4c56277B621703018
0x373604ee6f3bCE3b7126BB38f54CE6fD5eC59803
0x7F32D1959B5361e884DF8c9d017A03F4Ce29c8B2
0xd49c04Ada501F092f15a01bBCb40E7d15AD24856
0x7d5404ea3344745F80D039c28EfBE44742935593
_fallback()
def _fallback() payable: # default function
  require balanceOf[ownerAddress] >= distributeAmount
  require bool(stor10[caller].0.uint8) == False
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = balanceOf[caller] + distributeAmount
  log Transfer(address,address,uint256), ownerAddress, caller, distributeAmount

0xdEca7A07BD58fc6d091E86469077D1c4372Cf04A
0x5805b8c8d2363384b031537Ee2F10216fF1684b3
0xFE0cBfe053FF1986c616612aD97E5ADaAFE2a761
0xf6f1a2A798F94c426274Ed58438015718D107894
0x8b9dBDFACf9D0659044C4C83C213E5A245785729
0x09df4D4490c34608b13AFdEa0a1e6577F8e6B21A
withdrawEther()
def withdrawEther() : # not payable
  require caller == ownerAddress
  require not stor0.160.uint8
  stor0.160.96 = Mask(96, 0, True)
  if eth.balance(this.address) > 0:
      call stor2.length with:	# withdraw / default function
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
  stor0.160.96 = Mask(96, 0, False)
  stor0.168 = Mask(88, 8, True) >> 8
  return True

0xc9A4e838653bb7AF485ec483b54D8B4be87583C5
0x0af1b9634B8829915EDf74accbB1e975397C0B49
0x39eD5C1a5386e832C3761Bb32e186F1FE2526a02
0xca99A964e8cD290297997aa951FE9eCA66590FF1
0x08F8F3407c7885eED3A5d342935aD8a0220999B1
0x8F4826D1F2462b120FDC76E539656c19B1F60D9a
mintMAN()
def mintMAN() payable: 
  if block.timestamp <= (startTime + stor18):
      currentStage = 0
      stor29.8 = 1
      require 10^(-allowance.length + 18)
      if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
          stor21 = call.value + stor21
          stor23 = stor23 + 1
          availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          require caller
          require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
          balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
          log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
          call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
               gas 2300 * not call.value wei
             value call.value wei
      else:
          require currentTokenPerETH
          require stor3
          call caller with:	# withdraw / default function
               gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
             value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
          require ext_call.success
          stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
          stor23 = stor23 + 1
          availableSupply = 0
          require caller
          require balanceOf[stor20] >= availableSupply
          balanceOf[stor20] = balanceOf[stor20] - availableSupply
          balanceOf[caller] = availableSupply + balanceOf[caller]
          log Transfer(address,address,uint256), stor20, caller, availableSupply
          tokenHasDistributed = availableSupply + tokenHasDistributed
          call storage(160, 0, 5).storage(32, 224, 28) with:
               gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
             value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
  else:
      if tokenHasDistributed <= stor26:
          currentStage = 1
          stor29.8 = 1
          stor29.256 = 0
          require 10^(-allowance.length + 18)
          if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
              stor21 = call.value + stor21
              stor23 = stor23 + 1
              availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              require caller
              require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
              balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
              log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
              call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                   gas 2300 * not call.value wei
                 value call.value wei
          else:
              require currentTokenPerETH
              require stor3
              call caller with:	# withdraw / default function
                   gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                 value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
              require ext_call.success
              stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
              stor23 = stor23 + 1
              availableSupply = 0
              require caller
              require balanceOf[stor20] >= availableSupply
              balanceOf[stor20] = balanceOf[stor20] - availableSupply
              balanceOf[caller] = availableSupply + balanceOf[caller]
              log Transfer(address,address,uint256), stor20, caller, availableSupply
              tokenHasDistributed = availableSupply + tokenHasDistributed
              call storage(160, 0, 5).storage(32, 224, 28) with:
                   gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                 value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
      else:
          if block.timestamp <= (startTime + stor18):
              require 10^(-allowance.length + 18)
              if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                  stor21 = call.value + stor21
                  stor23 = stor23 + 1
                  availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  require caller
                  require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                  balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                  log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                  call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                       gas 2300 * not call.value wei
                     value call.value wei
              else:
                  require currentTokenPerETH
                  require stor3
                  call caller with:	# withdraw / default function
                       gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                     value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                  require ext_call.success
                  stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                  stor23 = stor23 + 1
                  availableSupply = 0
                  require caller
                  require balanceOf[stor20] >= availableSupply
                  balanceOf[stor20] = balanceOf[stor20] - availableSupply
                  balanceOf[caller] = availableSupply + balanceOf[caller]
                  log Transfer(address,address,uint256), stor20, caller, availableSupply
                  tokenHasDistributed = availableSupply + tokenHasDistributed
                  call storage(160, 0, 5).storage(32, 224, 28) with:
                       gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                     value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
          else:
              if tokenHasDistributed <= (35000000 * stor3):
                  currentTokenPerETH = 3430000
                  currentStage = 2
                  stor29.8 = 0
                  stor29.256 = 0
                  require 10^(-allowance.length + 18)
                  if ((3430000 * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                      stor21 = call.value + stor21
                      stor23 = stor23 + 1
                      availableSupply = availableSupply - ((3430000 * call.value) / 10^(-allowance.length + 18))
                      require caller
                      require balanceOf[stor20] >= ((3430000 * call.value) / 10^(-allowance.length + 18))
                      require (balanceOf[caller] + ((3430000 * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                      balanceOf[stor20] = balanceOf[stor20] - ((3430000 * call.value) / 10^(-allowance.length + 18))
                      balanceOf[caller] = ((3430000 * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                      log Transfer(address,address,uint256), stor20, caller, ((3430000 * call.value) / 10^(-allowance.length + 18))
                      tokenHasDistributed = ((3430000 * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                      call storage(160, 0, 5).(Mask(32, 224, ((3430000 * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                           gas 2300 * not call.value wei
                         value call.value wei
                  else:
                      require stor3
                      call caller with:	# withdraw / default function
                           gas 2300 * not (call.value - (((stor4 * availableSupply) / 3430000) / stor3)) wei
                         value call.value - (((stor4 * availableSupply) / 3430000) / stor3) wei
                      require ext_call.success
                      stor21 = (((stor4 * availableSupply) / 3430000) / stor3) + stor21
                      stor23 = stor23 + 1
                      availableSupply = 0
                      require caller
                      require balanceOf[stor20] >= availableSupply
                      balanceOf[stor20] = balanceOf[stor20] - availableSupply
                      balanceOf[caller] = availableSupply + balanceOf[caller]
                      log Transfer(address,address,uint256), stor20, caller, availableSupply
                      tokenHasDistributed = availableSupply + tokenHasDistributed
                      call storage(160, 0, 5).storage(32, 224, 28) with:
                           gas 2300 * not (((stor4 * availableSupply) / 3430000) / stor3) wei
                         value ((stor4 * availableSupply) / 3430000) / stor3 wei
              else:
                  if block.timestamp <= (startTime + stor18):
                      require 10^(-allowance.length + 18)
                      if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                          stor21 = call.value + stor21
                          stor23 = stor23 + 1
                          availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          require caller
                          require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                          balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                          log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                          call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                               gas 2300 * not call.value wei
                             value call.value wei
                      else:
                          require currentTokenPerETH
                          require stor3
                          call caller with:	# withdraw / default function
                               gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                             value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                          require ext_call.success
                          stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                          stor23 = stor23 + 1
                          availableSupply = 0
                          require caller
                          require balanceOf[stor20] >= availableSupply
                          balanceOf[stor20] = balanceOf[stor20] - availableSupply
                          balanceOf[caller] = availableSupply + balanceOf[caller]
                          log Transfer(address,address,uint256), stor20, caller, availableSupply
                          tokenHasDistributed = availableSupply + tokenHasDistributed
                          call storage(160, 0, 5).storage(32, 224, 28) with:
                               gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                             value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
                  else:
                      if tokenHasDistributed < (35000000 * stor3):
                          require 10^(-allowance.length + 18)
                          if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                              stor21 = call.value + stor21
                              stor23 = stor23 + 1
                              availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              require caller
                              require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                              balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                              call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                                   gas 2300 * not call.value wei
                                 value call.value wei
                          else:
                              require currentTokenPerETH
                              require stor3
                              call caller with:	# withdraw / default function
                                   gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                                 value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                              require ext_call.success
                              stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                              stor23 = stor23 + 1
                              availableSupply = 0
                              require caller
                              require balanceOf[stor20] >= availableSupply
                              balanceOf[stor20] = balanceOf[stor20] - availableSupply
                              balanceOf[caller] = availableSupply + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, availableSupply
                              tokenHasDistributed = availableSupply + tokenHasDistributed
                              call storage(160, 0, 5).storage(32, 224, 28) with:
                                   gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                                 value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
                      else:
                          currentTokenPerETH = 3150000
                          currentStage = 3
                          stor29.8 = 0
                          stor29.256 = 0
                          require 10^(-allowance.length + 18)
                          if ((3150000 * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                              stor21 = call.value + stor21
                              stor23 = stor23 + 1
                              availableSupply = availableSupply - ((3150000 * call.value) / 10^(-allowance.length + 18))
                              require caller
                              require balanceOf[stor20] >= ((3150000 * call.value) / 10^(-allowance.length + 18))
                              require (balanceOf[caller] + ((3150000 * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                              balanceOf[stor20] = balanceOf[stor20] - ((3150000 * call.value) / 10^(-allowance.length + 18))
                              balanceOf[caller] = ((3150000 * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, ((3150000 * call.value) / 10^(-allowance.length + 18))
                              tokenHasDistributed = ((3150000 * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                              call storage(160, 0, 5).(Mask(32, 224, ((3150000 * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                                   gas 2300 * not call.value wei
                                 value call.value wei
                          else:
                              require stor3
                              call caller with:	# withdraw / default function
                                   gas 2300 * not (call.value - (((stor4 * availableSupply) / 3150000) / stor3)) wei
                                 value call.value - (((stor4 * availableSupply) / 3150000) / stor3) wei
                              require ext_call.success
                              stor21 = (((stor4 * availableSupply) / 3150000) / stor3) + stor21
                              stor23 = stor23 + 1
                              availableSupply = 0
                              require caller
                              require balanceOf[stor20] >= availableSupply
                              balanceOf[stor20] = balanceOf[stor20] - availableSupply
                              balanceOf[caller] = availableSupply + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, availableSupply
                              tokenHasDistributed = availableSupply + tokenHasDistributed
                              call storage(160, 0, 5).storage(32, 224, 28) with:
                                   gas 2300 * not (((stor4 * availableSupply) / 3150000) / stor3) wei
                                 value ((stor4 * availableSupply) / 3150000) / stor3 wei
  require ext_call.success

0xc9A4e838653bb7AF485ec483b54D8B4be87583C5
0x0af1b9634B8829915EDf74accbB1e975397C0B49
0x39eD5C1a5386e832C3761Bb32e186F1FE2526a02
0xca99A964e8cD290297997aa951FE9eCA66590FF1
0x08F8F3407c7885eED3A5d342935aD8a0220999B1
0x8F4826D1F2462b120FDC76E539656c19B1F60D9a
_fallback()
def _fallback() payable: # default function
  require not stor29.16
  require block.timestamp >= startTime
  require block.timestamp <= endTime
  if block.timestamp <= (startTime + stor18):
      currentStage = 0
      stor29.8 = 1
      require 10^(-allowance.length + 18)
      if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
          stor21 = call.value + stor21
          stor23 = stor23 + 1
          availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          require caller
          require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
          balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
          log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
          tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
          call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
               gas 2300 * not call.value wei
             value call.value wei
      else:
          require currentTokenPerETH
          require stor3
          call caller with:	# withdraw / default function
               gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
             value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
          require ext_call.success
          stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
          stor23 = stor23 + 1
          availableSupply = 0
          require caller
          require balanceOf[stor20] >= availableSupply
          balanceOf[stor20] = balanceOf[stor20] - availableSupply
          balanceOf[caller] = availableSupply + balanceOf[caller]
          log Transfer(address,address,uint256), stor20, caller, availableSupply
          tokenHasDistributed = availableSupply + tokenHasDistributed
          call storage(160, 0, 5).storage(32, 224, 28) with:
               gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
             value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
  else:
      if tokenHasDistributed <= stor26:
          currentStage = 1
          stor29.8 = 1
          stor29.256 = 0
          require 10^(-allowance.length + 18)
          if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
              stor21 = call.value + stor21
              stor23 = stor23 + 1
              availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              require caller
              require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
              balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
              log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
              tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
              call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                   gas 2300 * not call.value wei
                 value call.value wei
          else:
              require currentTokenPerETH
              require stor3
              call caller with:	# withdraw / default function
                   gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                 value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
              require ext_call.success
              stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
              stor23 = stor23 + 1
              availableSupply = 0
              require caller
              require balanceOf[stor20] >= availableSupply
              balanceOf[stor20] = balanceOf[stor20] - availableSupply
              balanceOf[caller] = availableSupply + balanceOf[caller]
              log Transfer(address,address,uint256), stor20, caller, availableSupply
              tokenHasDistributed = availableSupply + tokenHasDistributed
              call storage(160, 0, 5).storage(32, 224, 28) with:
                   gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                 value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
      else:
          if block.timestamp <= (startTime + stor18):
              require 10^(-allowance.length + 18)
              if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                  stor21 = call.value + stor21
                  stor23 = stor23 + 1
                  availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  require caller
                  require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                  balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                  log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                  tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                  call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                       gas 2300 * not call.value wei
                     value call.value wei
              else:
                  require currentTokenPerETH
                  require stor3
                  call caller with:	# withdraw / default function
                       gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                     value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                  require ext_call.success
                  stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                  stor23 = stor23 + 1
                  availableSupply = 0
                  require caller
                  require balanceOf[stor20] >= availableSupply
                  balanceOf[stor20] = balanceOf[stor20] - availableSupply
                  balanceOf[caller] = availableSupply + balanceOf[caller]
                  log Transfer(address,address,uint256), stor20, caller, availableSupply
                  tokenHasDistributed = availableSupply + tokenHasDistributed
                  call storage(160, 0, 5).storage(32, 224, 28) with:
                       gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                     value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
          else:
              if tokenHasDistributed <= (35000000 * stor3):
                  currentTokenPerETH = 3430000
                  currentStage = 2
                  stor29.8 = 0
                  stor29.256 = 0
                  require 10^(-allowance.length + 18)
                  if ((3430000 * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                      stor21 = call.value + stor21
                      stor23 = stor23 + 1
                      availableSupply = availableSupply - ((3430000 * call.value) / 10^(-allowance.length + 18))
                      require caller
                      require balanceOf[stor20] >= ((3430000 * call.value) / 10^(-allowance.length + 18))
                      require (balanceOf[caller] + ((3430000 * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                      balanceOf[stor20] = balanceOf[stor20] - ((3430000 * call.value) / 10^(-allowance.length + 18))
                      balanceOf[caller] = ((3430000 * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                      log Transfer(address,address,uint256), stor20, caller, ((3430000 * call.value) / 10^(-allowance.length + 18))
                      tokenHasDistributed = ((3430000 * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                      call storage(160, 0, 5).(Mask(32, 224, ((3430000 * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                           gas 2300 * not call.value wei
                         value call.value wei
                  else:
                      require stor3
                      call caller with:	# withdraw / default function
                           gas 2300 * not (call.value - (((stor4 * availableSupply) / 3430000) / stor3)) wei
                         value call.value - (((stor4 * availableSupply) / 3430000) / stor3) wei
                      require ext_call.success
                      stor21 = (((stor4 * availableSupply) / 3430000) / stor3) + stor21
                      stor23 = stor23 + 1
                      availableSupply = 0
                      require caller
                      require balanceOf[stor20] >= availableSupply
                      balanceOf[stor20] = balanceOf[stor20] - availableSupply
                      balanceOf[caller] = availableSupply + balanceOf[caller]
                      log Transfer(address,address,uint256), stor20, caller, availableSupply
                      tokenHasDistributed = availableSupply + tokenHasDistributed
                      call storage(160, 0, 5).storage(32, 224, 28) with:
                           gas 2300 * not (((stor4 * availableSupply) / 3430000) / stor3) wei
                         value ((stor4 * availableSupply) / 3430000) / stor3 wei
              else:
                  if block.timestamp <= (startTime + stor18):
                      require 10^(-allowance.length + 18)
                      if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                          stor21 = call.value + stor21
                          stor23 = stor23 + 1
                          availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          require caller
                          require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                          balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                          log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                          tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                          call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                               gas 2300 * not call.value wei
                             value call.value wei
                      else:
                          require currentTokenPerETH
                          require stor3
                          call caller with:	# withdraw / default function
                               gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                             value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                          require ext_call.success
                          stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                          stor23 = stor23 + 1
                          availableSupply = 0
                          require caller
                          require balanceOf[stor20] >= availableSupply
                          balanceOf[stor20] = balanceOf[stor20] - availableSupply
                          balanceOf[caller] = availableSupply + balanceOf[caller]
                          log Transfer(address,address,uint256), stor20, caller, availableSupply
                          tokenHasDistributed = availableSupply + tokenHasDistributed
                          call storage(160, 0, 5).storage(32, 224, 28) with:
                               gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                             value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
                  else:
                      if tokenHasDistributed < (35000000 * stor3):
                          require 10^(-allowance.length + 18)
                          if ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                              stor21 = call.value + stor21
                              stor23 = stor23 + 1
                              availableSupply = availableSupply - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              require caller
                              require balanceOf[stor20] >= ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              require (balanceOf[caller] + ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                              balanceOf[stor20] = balanceOf[stor20] - ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              balanceOf[caller] = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))
                              tokenHasDistributed = ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                              call storage(160, 0, 5).(Mask(32, 224, ((currentTokenPerETH * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                                   gas 2300 * not call.value wei
                                 value call.value wei
                          else:
                              require currentTokenPerETH
                              require stor3
                              call caller with:	# withdraw / default function
                                   gas 2300 * not (call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3)) wei
                                 value call.value - (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                              require ext_call.success
                              stor21 = (((stor4 * availableSupply) / currentTokenPerETH) / stor3) + stor21
                              stor23 = stor23 + 1
                              availableSupply = 0
                              require caller
                              require balanceOf[stor20] >= availableSupply
                              balanceOf[stor20] = balanceOf[stor20] - availableSupply
                              balanceOf[caller] = availableSupply + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, availableSupply
                              tokenHasDistributed = availableSupply + tokenHasDistributed
                              call storage(160, 0, 5).storage(32, 224, 28) with:
                                   gas 2300 * not (((stor4 * availableSupply) / currentTokenPerETH) / stor3) wei
                                 value ((stor4 * availableSupply) / currentTokenPerETH) / stor3 wei
                      else:
                          currentTokenPerETH = 3150000
                          currentStage = 3
                          stor29.8 = 0
                          stor29.256 = 0
                          require 10^(-allowance.length + 18)
                          if ((3150000 * call.value) / 10^(-allowance.length + 18)) <= availableSupply:
                              stor21 = call.value + stor21
                              stor23 = stor23 + 1
                              availableSupply = availableSupply - ((3150000 * call.value) / 10^(-allowance.length + 18))
                              require caller
                              require balanceOf[stor20] >= ((3150000 * call.value) / 10^(-allowance.length + 18))
                              require (balanceOf[caller] + ((3150000 * call.value) / 10^(-allowance.length + 18))) > balanceOf[caller]
                              balanceOf[stor20] = balanceOf[stor20] - ((3150000 * call.value) / 10^(-allowance.length + 18))
                              balanceOf[caller] = ((3150000 * call.value) / 10^(-allowance.length + 18)) + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, ((3150000 * call.value) / 10^(-allowance.length + 18))
                              tokenHasDistributed = ((3150000 * call.value) / 10^(-allowance.length + 18)) + tokenHasDistributed
                              call storage(160, 0, 5).(Mask(32, 224, ((3150000 * call.value) / 10^(-allowance.length + 18))) >> 224) with:
                                   gas 2300 * not call.value wei
                                 value call.value wei
                          else:
                              require stor3
                              call caller with:	# withdraw / default function
                                   gas 2300 * not (call.value - (((stor4 * availableSupply) / 3150000) / stor3)) wei
                                 value call.value - (((stor4 * availableSupply) / 3150000) / stor3) wei
                              require ext_call.success
                              stor21 = (((stor4 * availableSupply) / 3150000) / stor3) + stor21
                              stor23 = stor23 + 1
                              availableSupply = 0
                              require caller
                              require balanceOf[stor20] >= availableSupply
                              balanceOf[stor20] = balanceOf[stor20] - availableSupply
                              balanceOf[caller] = availableSupply + balanceOf[caller]
                              log Transfer(address,address,uint256), stor20, caller, availableSupply
                              tokenHasDistributed = availableSupply + tokenHasDistributed
                              call storage(160, 0, 5).storage(32, 224, 28) with:
                                   gas 2300 * not (((stor4 * availableSupply) / 3150000) / stor3) wei
                                 value ((stor4 * availableSupply) / 3150000) / stor3 wei
  require ext_call.success

0x296EC7B2b224ea122F8f8F9be2A824dF092Fc82c
0x4afF7f37696cE3bB0DBe10Dd63Bae8DC9F634623
0x2b47D4F1FA2135e764917ee01858BaF796A2058C
0x9DE71f91f9E5c3054FFcd0F624fcA5655E600aC6
0xcE9Ecc71e134A4D2d36a8258082eEAB6d1318DA7
0x90Fd55Fb4D68Cb96E9aB26253D0f0b59a728ABC1
autoDistribute()
def autoDistribute() payable: 
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor11[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0x296EC7B2b224ea122F8f8F9be2A824dF092Fc82c
0x4afF7f37696cE3bB0DBe10Dd63Bae8DC9F634623
0x2b47D4F1FA2135e764917ee01858BaF796A2058C
0x9DE71f91f9E5c3054FFcd0F624fcA5655E600aC6
0xcE9Ecc71e134A4D2d36a8258082eEAB6d1318DA7
0x90Fd55Fb4D68Cb96E9aB26253D0f0b59a728ABC1
_fallback()
def _fallback() payable: # default function
  require balanceOf[ownerAddress] >= distributeAmount
  require not stor11[caller].0.uint8
  require block.timestamp > unlockUnixTime[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require distributeAmount <= balanceOf[ownerAddress]
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - distributeAmount
  balanceOf[caller] = distributeAmount + balanceOf[caller]
  log 0xddf252ad, ownerAddress, caller, distributeAmount

0x31F62b8b0577De0399b08E6bD3c8cb9d8537c870
0x7D227Fe3C5885c3875180E03C548D09EBE1B0119
0x0b7093536Abf6943278a310cFe87ee15cecBF337
0x2C02bEA9d5Fac66fC06519C5B823Aa5dd8B26ACE
0x241C248B0Db328e25921a91D04F43c985dedbd07
0xe40FfF0babdF8bBC6F0001d17b0c8d15AEbA8975
_fallback()
def _fallback() payable: # default function
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require caller != 0
  require balanceOf[ownerAddress] >= (call.value * buyPrice)
  require not stor9[ownerAddress].0.uint8
  require not stor9[caller].0.uint8
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - (call.value * buyPrice)
  balanceOf[caller] = balanceOf[caller] + (call.value * buyPrice)
  log Transfer(address,address,uint256), ownerAddress, caller, (call.value * buyPrice)

0xB4959bcC38F34DDB9cFD95d4935b18AFd5bB4817
0x2268003d92FF03Be6ca6dA029F8D8127FD2F617e
0xD534111478E5cF4BB8806972d1352Fd52837b68e
0x0A71a23873bD88E42E5c7E404b61e97878b39142
0xf2cdf0A92075eD6DA179a2AD142021936673651b
0x0BB622A8C564BDc98e8F40F23e5077CD4a8699Ea
nonActivationShortWithdrawal(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs)
def nonActivationShortWithdrawal(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs) : # not payable
  signer = erecover(sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])), uint8(cd[324]), cd[356], cd[388]) # precompiled
  require erecover.result
  require addr(signer) == caller
  require block.number > cd[132]
  require stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 < _v
  call caller.(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]))) >> 224) with:
       gas 2300 * not returnCoupon[sha3(caller, 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 wei
     value returnCoupon[sha3(caller, 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 wei
  require ext_call.success
  returnCoupon[sha3(caller, 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].uint256 = 0
  log NonActivationWithdrawal(address[2],uint256[8],uint8,bytes32[2],uint256), calldata[-60 + CALLDATASIZE len 60], calldata[-188 + CALLDATASIZE len 188], uint8(cd[324]), 0

0xB4959bcC38F34DDB9cFD95d4935b18AFd5bB4817
0x2268003d92FF03Be6ca6dA029F8D8127FD2F617e
0xD534111478E5cF4BB8806972d1352Fd52837b68e
0x0A71a23873bD88E42E5c7E404b61e97878b39142
0xf2cdf0A92075eD6DA179a2AD142021936673651b
0x0BB622A8C564BDc98e8F40F23e5077CD4a8699Ea
nonActivationWithdrawal(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs)
def nonActivationWithdrawal(address[2] _tokenUser, uint256[8] _tokenMinMaxDMWCNonce, uint8 _v, bytes32[2] _rs) : # not payable
  signer = erecover(sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])), uint8(cd[324]), cd[356], cd[388]) # precompiled
  require erecover.result
  require addr(signer) == addr(_tokenMinMaxDMWCNonce)
  require block.number > cd[132]
  require block.number <= cd[196]
  require stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 < _v
  call caller.(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]))) >> 224) with:
       gas 2300 * not returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 wei
     value returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 wei
  require ext_call.success
  require returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 <= stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256
  stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 = stor2[sha3(addr(_tokenMinMaxDMWCNonce), 1), sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292])].256 - returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256
  returnCoupon[(sha3(sha3(addr(_tokenUser), addr(_tokenMinMaxDMWCNonce), _v, _rs, cd[132], cd[164], cd[196], cd[228], cd[260], cd[292]), sha3(addr(_tokenMinMaxDMWCNonce), 1)) + 4), caller].uint256 = 0
  log 0xb40fb509, calldata[-60 + CALLDATASIZE len 60], calldata[-188 + CALLDATASIZE len 188], uint8(cd[324]), 0

0x0226e37Fcd999A4bb8Ad02E5CbD6E3eF376ca879
0xdC7C764e9E7EcA8CE52F36E00Bf518c5E45E6850
0x82b2aD426967B6fEe7332bD34946Cf1e0e9579d5
0x4D183bDB38260B0F3Fabc6e59c41fC5A19805D54
0x5cA37b53F95c8F5d09faa191D6A0e1563Ef3e895
0xEe77BAb3F9BfE9EB01CAf96c3A052f49F82b645D
withdraw()
def withdraw() : # not payable
  stor2[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not stor2[caller] wei
     value stor2[caller] wei
  if ext_call.success:
      return True
  stor2[caller] = stor2[caller]
  return False

0xA21771ca34771371D29815f299A9385434eD43DF
0x3546831E5C17bc50a4a590723cD099c3dDf76c5e
0x4dD11F6BF035b907D468e76b5d00BAea7A41b139
0x15FB1ADDc8602e2bDE8EdD2C7A05CFC94FBcfe93
0x7459Feb42266704B46EE8b9CD7a799d1B5500700
0xA4C0e3e41d5BD406DD088d409f730c1fF651a6AB
unknown45c2aaee(?)
def unknown45c2aaee(?) payable: 
  require 1 == unknown20db38ed
  require stor7.0.uint8
  require makerAddress != caller
  require price
  require (call.value / price) > 0
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require units
  if call.value <= ((ext_call.return_data / units) * price):
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, ((call.value / price) * units)
      require ext_call.success
      require ext_call.return_data
      call makerAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      log 0x5c5d1d57, caller, call.value, 0, ((call.value / price) * units)
  else:
      if (call.value - ((ext_call.return_data / units) * price)) > 0:
          call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (call.value - ((ext_call.return_data / units) * price)) wei
             value call.value - ((ext_call.return_data / units) * price) wei
          require ext_call.success
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, ((ext_call.return_data / units) * units)
      require ext_call.success
      require ext_call.return_data
      call makerAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data / units) * price) wei
         value ((ext_call.return_data / units) * price) wei
      require ext_call.success
      log 0x5c5d1d57, caller, call.value, (call.value - ((ext_call.return_data / units) * price)), ((ext_call.return_data / units) * units)
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  if not ext_call.return_data:
      stor7.0.uint8 = 0
      makerAddress = 0
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.2724792073 with:
           gas gas_remaining - 710 wei
          args addr(this.address), True
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.634590048 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.1262513163 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success

0xA21771ca34771371D29815f299A9385434eD43DF
0x3546831E5C17bc50a4a590723cD099c3dDf76c5e
0x4dD11F6BF035b907D468e76b5d00BAea7A41b139
0x15FB1ADDc8602e2bDE8EdD2C7A05CFC94FBcfe93
0x7459Feb42266704B46EE8b9CD7a799d1B5500700
0xA4C0e3e41d5BD406DD088d409f730c1fF651a6AB
unknown877fd79d(?)
def unknown877fd79d(?) : # not payable
  require 0 == unknown20db38ed
  require stor7.0.uint8
  require makerAddress != caller
  require price
  require units
  if (cd[4] / units) <= (eth.balance(this.address) / price):
      require (cd[4] / units) > 0
      require ext_code.size(tokenAddress)
      call tokenAddress.transferFrom(address,address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, makerAddress, ((cd[4] / units) * units)
      require ext_call.success
      require ext_call.return_data
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((cd[4] / units) * price) wei
         value ((cd[4] / units) * price) wei
      require ext_call.success
      log 0x13a7c7ac, caller, cd[4], ((cd[4] / units) * units), ((cd[4] / units) * price)
  else:
      require (eth.balance(this.address) / price) > 0
      require ext_code.size(tokenAddress)
      call tokenAddress.transferFrom(address,address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, makerAddress, ((eth.balance(this.address) / price) * units)
      require ext_call.success
      require ext_call.return_data
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((eth.balance(this.address) / price) * price) wei
         value ((eth.balance(this.address) / price) * price) wei
      require ext_call.success
      log 0x13a7c7ac, caller, cd[4], ((eth.balance(this.address) / price) * units), ((eth.balance(this.address) / price) * price)
  if not eth.balance(this.address):
      stor7.0.uint8 = 0
      makerAddress = 0
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.2724792073 with:
           gas gas_remaining - 710 wei
          args addr(this.address), True
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.634590048 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.1262513163 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success

0xA21771ca34771371D29815f299A9385434eD43DF
0x3546831E5C17bc50a4a590723cD099c3dDf76c5e
0x4dD11F6BF035b907D468e76b5d00BAea7A41b139
0x15FB1ADDc8602e2bDE8EdD2C7A05CFC94FBcfe93
0x7459Feb42266704B46EE8b9CD7a799d1B5500700
0xA4C0e3e41d5BD406DD088d409f730c1fF651a6AB
_fallback()
def _fallback() payable: # default function
  require 1 == unknown20db38ed
  require stor7.0.uint8
  require makerAddress != caller
  require price
  require (call.value / price) > 0
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require units
  if call.value <= ((ext_call.return_data / units) * price):
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, ((call.value / price) * units)
      require ext_call.success
      require ext_call.return_data
      call makerAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      log 0x5c5d1d57, caller, call.value, 0, ((call.value / price) * units)
  else:
      if (call.value - ((ext_call.return_data / units) * price)) > 0:
          call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (call.value - ((ext_call.return_data / units) * price)) wei
             value call.value - ((ext_call.return_data / units) * price) wei
          require ext_call.success
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args caller, ((ext_call.return_data / units) * units)
      require ext_call.success
      require ext_call.return_data
      call makerAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data / units) * price) wei
         value ((ext_call.return_data / units) * price) wei
      require ext_call.success
      log 0x5c5d1d57, caller, call.value, (call.value - ((ext_call.return_data / units) * price)), ((ext_call.return_data / units) * units)
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  if not ext_call.return_data:
      stor7.0.uint8 = 0
      makerAddress = 0
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.2724792073 with:
           gas gas_remaining - 710 wei
          args addr(this.address), True
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.634590048 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success
      require ext_code.size(unknown53253d31Address)
      call unknown53253d31Address.1262513163 with:
           gas gas_remaining - 710 wei
          args addr(this.address), False
      require ext_call.success

0x106302aA07955306c31b8e916A16500482016Ec2
0x11320D0B29E59da6b1b08A85e9d689Ec4ed42E6c
0xcC208C28644D60fa0eAe08C4b19521E27EbcdDFa
0x51f37F32CD84908F58Eb2c5B7e141b61d5774f0A
0x118f17F1C67BC53E6341De3f9B6112abf81505F0
buyTicket(address _ref)
def buyTicket(address _ref) payable: 
  require stor7.0
  require call.value == stor2.length.0.uint256
  gameJackpot[game] = call.value + gameJackpot[game]
  playersInGame[game] = playersInGame[game] + 1
  stor2[playersInGame[game], sha3(game, 10)].0.uint256 = caller or (stor2[playersInGame[game], sha3(game, 10)].160 << 96)
  require ext_code.size(referralInstanceAddress)
  call referralInstanceAddress.2947703129 with:
       gas gas_remaining wei
      args caller
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  if addr(_ref):
      require ext_code.size(referralInstanceAddress)
      if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
          call referralInstanceAddress.addReferral(address,address) with:
               gas gas_remaining wei
              args addr(_ref), caller
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
      call referralInstanceAddress.2947703129 with:
           gas gas_remaining wei
          args caller
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
      require RETURNDATASIZE >= 32
      if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
          require ext_code.size(referralInstanceAddress)
          call referralInstanceAddress.3768534361 with:
               gas gas_remaining wei
              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
          require RETURNDATASIZE >= 32
          if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
              if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                  call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                       gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                     value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                  log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], caller, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                  require ext_code.size(referralInstanceAddress)
                  call referralInstanceAddress.908250230 with:
                       gas gas_remaining wei
                      args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require RETURNDATASIZE >= 32
                  if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                      require ext_code.size(referralInstanceAddress)
                      call referralInstanceAddress.109417420 with:
                           gas gas_remaining wei
                          args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      require RETURNDATASIZE >= 32
                      if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                          if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                              call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                   gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                 value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                              if not ext_call.success:
                                  revert with ext_call.return_data[0 len RETURNDATASIZE]
                              paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                              log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
  else:
      if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
          require ext_code.size(referralInstanceAddress)
          if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
              call referralInstanceAddress.addReferral(address,address) with:
                   gas gas_remaining wei
                  args addr(_ref), caller
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
          call referralInstanceAddress.2947703129 with:
               gas gas_remaining wei
              args caller
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
          require RETURNDATASIZE >= 32
          if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
              require ext_code.size(referralInstanceAddress)
              call referralInstanceAddress.3768534361 with:
                   gas gas_remaining wei
                  args ext_call.return_data[-20 + RETURNDATASIZE len 20]
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require RETURNDATASIZE >= 32
              if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                  if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                      call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                           gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                         value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                      log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], caller, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                      require ext_code.size(referralInstanceAddress)
                      call referralInstanceAddress.908250230 with:
                           gas gas_remaining wei
                          args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      require RETURNDATASIZE >= 32
                      if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                          require ext_code.size(referralInstanceAddress)
                          call referralInstanceAddress.109417420 with:
                               gas gas_remaining wei
                              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          require RETURNDATASIZE >= 32
                          if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                              if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                                  call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                       gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                     value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                                  if not ext_call.success:
                                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                                  paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                                  log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
  log 0xcc0ff04a, caller, game, playersInGame[game], block.timestamp

0x106302aA07955306c31b8e916A16500482016Ec2
0x11320D0B29E59da6b1b08A85e9d689Ec4ed42E6c
0xcC208C28644D60fa0eAe08C4b19521E27EbcdDFa
0x51f37F32CD84908F58Eb2c5B7e141b61d5774f0A
0x118f17F1C67BC53E6341De3f9B6112abf81505F0
start()
def start() : # not payable
  require ext_code.size(ownableAddress)
  call ownableAddress.allowed(address) with:
       gas gas_remaining wei
      args caller
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  require ext_call.return_data
  if playersInGame[game] == 1:
      call stor2[sha3(game, 10)].0.addr.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not gameJackpot[game] wei
         value gameJackpot[game] wei
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
      paidToPartners = 0
      require ext_code.size(statsAddress)
      call statsAddress.106061737 with:
           gas gas_remaining wei
          args stor2[sha3(game, 10)].0.addr, game, playersInGame[game], gameJackpot[game], gType, 0
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
      allTimeJackpot = gameJackpot[game] + allTimeJackpot
  else:
      require playersInGame[game] + 1
      if ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 1) > playersInGame[game]:
          require playersInGame[game] < 1
          call stor2[sha3(game, 10)].0.addr.(Mask(32, 224, ((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) >> 224) with:
               gas 2300 * not (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)) wei
             value gameJackpot[game] - ((gameJackpot[game] * fee) / 100) wei
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
          require ext_code.size(referralInstanceAddress)
          call referralInstanceAddress.2947703129 with:
               gas gas_remaining wei
              args stor2[sha3(game, 10)].0.addr
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
          require RETURNDATASIZE >= 32
          if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
              call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 30000 wei
                 value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
              require ext_call.success
          else:
              require ext_code.size(referralInstanceAddress)
              call referralInstanceAddress.3768534361 with:
                   gas gas_remaining wei
                  args ext_call.return_data[-20 + RETURNDATASIZE len 20]
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require RETURNDATASIZE >= 32
              if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                       gas 30000 wei
                     value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                  require ext_call.success
              else:
                  if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                      call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                           gas 30000 wei
                         value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                      require ext_call.success
                  else:
                      call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                           gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                         value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                      log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], stor2[sha3(game, 10)].0.addr, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                      require ext_code.size(referralInstanceAddress)
                      call referralInstanceAddress.908250230 with:
                           gas gas_remaining wei
                          args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      require RETURNDATASIZE >= 32
                      if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                          call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                               gas 30000 wei
                             value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                          require ext_call.success
                      else:
                          require ext_code.size(referralInstanceAddress)
                          call referralInstanceAddress.109417420 with:
                               gas gas_remaining wei
                              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          require RETURNDATASIZE >= 32
                          if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                              call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                   gas 30000 wei
                                 value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                              require ext_call.success
                          else:
                              if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                       gas 30000 wei
                                     value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                                  require ext_call.success
                              else:
                                  call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                       gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                     value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                                  if not ext_call.success:
                                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                                  paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                                  log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                                  call fundsDistributorAddress with:	# withdraw / default function
                                       gas 30000 wei
                                     value ((gameJackpot[game] * fee) / 100) - (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) - paidToPartners wei
          paidToPartners = 0
          require ext_code.size(statsAddress)
          call statsAddress.106061737 with:
               gas gas_remaining wei
              args stor2[sha3(game, 10)].0.addr, game, playersInGame[game], (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)), gType, 0
      else:
          if ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 1) < 1:
              call stor2[sha3(game, 10)].0.addr.(Mask(32, 224, ((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) >> 224) with:
                   gas 2300 * not (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)) wei
                 value gameJackpot[game] - ((gameJackpot[game] * fee) / 100) wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ext_code.size(referralInstanceAddress)
              call referralInstanceAddress.2947703129 with:
                   gas gas_remaining wei
                  args stor2[sha3(game, 10)].0.addr
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require RETURNDATASIZE >= 32
              if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                       gas 30000 wei
                     value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                  require ext_call.success
              else:
                  require ext_code.size(referralInstanceAddress)
                  call referralInstanceAddress.3768534361 with:
                       gas gas_remaining wei
                      args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require RETURNDATASIZE >= 32
                  if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                      call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                           gas 30000 wei
                         value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                      require ext_call.success
                  else:
                      if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                          call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                               gas 30000 wei
                             value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                          require ext_call.success
                      else:
                          call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                               gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                             value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                          log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], stor2[sha3(game, 10)].0.addr, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                          require ext_code.size(referralInstanceAddress)
                          call referralInstanceAddress.908250230 with:
                               gas gas_remaining wei
                              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          require RETURNDATASIZE >= 32
                          if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                              call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                   gas 30000 wei
                                 value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                              require ext_call.success
                          else:
                              require ext_code.size(referralInstanceAddress)
                              call referralInstanceAddress.109417420 with:
                                   gas gas_remaining wei
                                  args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                              if not ext_call.success:
                                  revert with ext_call.return_data[0 len RETURNDATASIZE]
                              require RETURNDATASIZE >= 32
                              if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                       gas 30000 wei
                                     value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                                  require ext_call.success
                              else:
                                  if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                                      call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                           gas 30000 wei
                                         value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                                      require ext_call.success
                                  else:
                                      call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                           gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                         value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                                      if not ext_call.success:
                                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                                      paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                                      log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                                      call fundsDistributorAddress with:	# withdraw / default function
                                           gas 30000 wei
                                         value ((gameJackpot[game] * fee) / 100) - (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) - paidToPartners wei
              paidToPartners = 0
              require ext_code.size(statsAddress)
              call statsAddress.106061737 with:
                   gas gas_remaining wei
                  args stor2[sha3(game, 10)].0.addr, game, playersInGame[game], (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)), gType, 0
          else:
              require ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 2) < playersInGame[game]
              call stor2[sha3(game, 10), (sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1))].0.addr.(Mask(32, 224, ((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) >> 224) with:
                   gas 2300 * not (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)) wei
                 value gameJackpot[game] - ((gameJackpot[game] * fee) / 100) wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 2) < playersInGame[game]
              require ext_code.size(referralInstanceAddress)
              call referralInstanceAddress.2947703129 with:
                   gas gas_remaining wei
                  args stor2[sha3(game, 10), (sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1))].0.addr
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require RETURNDATASIZE >= 32
              if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                       gas 30000 wei
                     value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                  require ext_call.success
              else:
                  require ext_code.size(referralInstanceAddress)
                  call referralInstanceAddress.3768534361 with:
                       gas gas_remaining wei
                      args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require RETURNDATASIZE >= 32
                  if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                      call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                           gas 30000 wei
                         value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                      require ext_call.success
                  else:
                      if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                          call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                               gas 30000 wei
                             value ((gameJackpot[game] * fee) / 100) - paidToPartners wei
                          require ext_call.success
                      else:
                          call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                               gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                             value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                          log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], stor2[sha3(game, 10), (sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1))].0.addr, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                          require ext_code.size(referralInstanceAddress)
                          call referralInstanceAddress.908250230 with:
                               gas gas_remaining wei
                              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                          if not ext_call.success:
                              revert with ext_call.return_data[0 len RETURNDATASIZE]
                          require RETURNDATASIZE >= 32
                          if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                              call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                   gas 30000 wei
                                 value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                              require ext_call.success
                          else:
                              require ext_code.size(referralInstanceAddress)
                              call referralInstanceAddress.109417420 with:
                                   gas gas_remaining wei
                                  args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                              if not ext_call.success:
                                  revert with ext_call.return_data[0 len RETURNDATASIZE]
                              require RETURNDATASIZE >= 32
                              if not ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                                  call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                       gas 30000 wei
                                     value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                                  require ext_call.success
                              else:
                                  if not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100):
                                      call fundsDistributorAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                           gas 30000 wei
                                         value ((gameJackpot[game] * fee) / 100) - ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) - paidToPartners wei
                                      require ext_call.success
                                  else:
                                      call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                           gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                         value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                                      if not ext_call.success:
                                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                                      paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                                      log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                                      call fundsDistributorAddress with:	# withdraw / default function
                                           gas 30000 wei
                                         value ((gameJackpot[game] * fee) / 100) - (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) - paidToPartners wei
              paidToPartners = 0
              require ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 2) < playersInGame[game]
              require ext_code.size(statsAddress)
              call statsAddress.106061737 with:
                   gas gas_remaining wei
                  args stor2[(sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)), sha3(game, 10)].0.addr, game, playersInGame[game], (gameJackpot[game] - ((gameJackpot[game] * fee) / 100)), gType, ((sha3(((sha3((block.hash((block.number - 1)) * block.number * block.timestamp * block.difficulty)) % 10) + 1)) % (playersInGame[game] + 1)) - 2)
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
      allTimeJackpot = gameJackpot[game] - ((gameJackpot[game] * fee) / 100) + allTimeJackpot
  allTimePlayers = playersInGame[game] + allTimePlayers
  require stor7.0
  game = block.number
  if newPrice:
      stor2.length.0.uint256 = newPrice
      newPrice = 0
  if stor7.8.uint8:
      stor7.0 = uint8(not stor7.0)
      stor7.8.uint8 = 0
      stor7.16 = Mask(240, 16, not stor7.0) >> 16
  log 0xc1e01725, block.timestamp, block.number

0x106302aA07955306c31b8e916A16500482016Ec2
0x11320D0B29E59da6b1b08A85e9d689Ec4ed42E6c
0xcC208C28644D60fa0eAe08C4b19521E27EbcdDFa
0x51f37F32CD84908F58Eb2c5B7e141b61d5774f0A
0x118f17F1C67BC53E6341De3f9B6112abf81505F0
_fallback()
def _fallback() payable: # default function
  require stor7.0
  require call.value == stor2.length.0.uint256
  gameJackpot[game] = call.value + gameJackpot[game]
  playersInGame[game] = playersInGame[game] + 1
  stor2[playersInGame[game], sha3(game, 10)].0.uint256 = caller or (stor2[playersInGame[game], sha3(game, 10)].160 << 96)
  require ext_code.size(referralInstanceAddress)
  call referralInstanceAddress.2947703129 with:
       gas gas_remaining wei
      args caller
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
      require ext_code.size(referralInstanceAddress)
      if not ext_call.return_data[-20 + RETURNDATASIZE len 20]:
          call referralInstanceAddress.addReferral(address,address) with:
               gas gas_remaining wei
              args 0, caller
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
      call referralInstanceAddress.2947703129 with:
           gas gas_remaining wei
          args caller
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
      require RETURNDATASIZE >= 32
      if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
          require ext_code.size(referralInstanceAddress)
          call referralInstanceAddress.3768534361 with:
               gas gas_remaining wei
              args ext_call.return_data[-20 + RETURNDATASIZE len 20]
          if not ext_call.success:
              revert with ext_call.return_data[0 len RETURNDATASIZE]
          require RETURNDATASIZE >= 32
          if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
              if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                  call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                       gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                     value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  paidToPartners = ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) + paidToPartners
                  log 0x7267ae1f, ext_call.return_data[-20 + RETURNDATASIZE len 20], caller, ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
                  require ext_code.size(referralInstanceAddress)
                  call referralInstanceAddress.908250230 with:
                       gas gas_remaining wei
                      args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require RETURNDATASIZE >= 32
                  if ext_call.return_data[-20 + RETURNDATASIZE len 20]:
                      require ext_code.size(referralInstanceAddress)
                      call referralInstanceAddress.109417420 with:
                           gas gas_remaining wei
                          args ext_call.return_data[-20 + RETURNDATASIZE len 20]
                      if not ext_call.success:
                          revert with ext_call.return_data[0 len RETURNDATASIZE]
                      require RETURNDATASIZE >= 32
                      if ext_call.return_data[-1 + RETURNDATASIZE len 1]:
                          if (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100:
                              call ext_call.return_data[-20 + RETURNDATASIZE len 20].ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                                   gas 2300 * not ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100) wei
                                 value (((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100 wei
                              if not ext_call.success:
                                  revert with ext_call.return_data[0 len RETURNDATASIZE]
                              paidToPartners = (2 * ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100)) + paidToPartners
                              log 0x3fa7b2cc, ext_call.return_data[-20 + RETURNDATASIZE len 20], ext_call.return_data[-20 + RETURNDATASIZE len 20], ((((fee * stor2.length.0.uint256) / 100) * ext_call.return_data[-1 + RETURNDATASIZE len 1]) / 100), block.timestamp
  log 0xcc0ff04a, caller, game, playersInGame[game], block.timestamp

0xec5E34963E2bBECFf309D5581dBE1A21f428fB2b
0xE22E88686Ce1542AcA083C4b572eFD6b3827cFB6
0xA72ba8665992f2D48851BCa8889E320f67B12557
0xe26D837DEBB2066AD6243eEcC8E51cb52E97e1b6
0x2C6796c608262DA64E52348E460E39E0Ab3EDDFb
reFund()
def reFund() : # not payable
  balanceOfFund[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not balanceOfFund[caller] wei
     value balanceOfFund[caller] wei
  require ext_call.success
  balanceOf[ownerAddress] = balanceOf[ownerAddress] + balanceOf[caller]
  balanceOf[caller] = 0
  log 0x56ddf252, caller, addr(this.address), 0
  return True

0xec5E34963E2bBECFf309D5581dBE1A21f428fB2b
0xE22E88686Ce1542AcA083C4b572eFD6b3827cFB6
0xA72ba8665992f2D48851BCa8889E320f67B12557
0xe26D837DEBB2066AD6243eEcC8E51cb52E97e1b6
0x2C6796c608262DA64E52348E460E39E0Ab3EDDFb
reFundByOther(address _fundaddr)
def reFundByOther(address _fundaddr) : # not payable
  balanceOfFund[addr(_fundaddr)] = 0
  call addr(_fundaddr) with:	# withdraw / default function
       gas 2300 * not balanceOfFund[addr(_fundaddr)] wei
     value balanceOfFund[addr(_fundaddr)] wei
  require ext_call.success
  balanceOf[ownerAddress] = balanceOf[ownerAddress] + balanceOf[addr(_fundaddr)]
  balanceOf[addr(_fundaddr)] = 0
  log 0x56ddf252, caller, addr(this.address), 0
  return True

0x511c1343c41900DbD64dDBAc04635f4Ef25177c8
0xAFAbe4280633530a015150f6aCF2993112Db6817
0x3F17Af8d4e950eCCE6f24bFaf0E43a56d8FB3491
0x3a18c41A82FB81B0D294998B7A0bB9bF6F57974B
0x94F211C0aFA8f1Ef70e1876cd3A4Ff392a1d3F99
_fallback()
def _fallback() payable: # default function
  require stor0.160
  if call.value:
      call stor0.0 with:	# withdraw / default function
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      totalContribution = call.value + totalContribution
      if call.value < 10000000000000000:
          totalSupply = (100 * call.value) + totalSupply
          balanceOf[caller] = (100 * call.value) + balanceOf[caller]
          log Transfer(address,address,uint256), addr(this.address), caller, (100 * call.value)
      else:
          totalSupply = (101 * call.value) + totalContribution + totalSupply
          balanceOf[caller] = (101 * call.value) + totalContribution + balanceOf[caller]
          log Transfer(address,address,uint256), addr(this.address), caller, ((101 * call.value) + totalContribution)

0x77d6456C941C9ddc0eC8165C843Ae56F7F528032
0xB11f5386C8b06Be6e213871fB7d512846b743b25
0x2d8c6B166B25dF6ab041A46858B8B4DFEceF305D
0x727800b0223Ca62bbb44E45C747e8A9760fDB368
0x157052B14B7b7AB5BCD40C9d19FD785B2E2eFb5c
requestDividends()
def requestDividends() : # not payable
  require stor5[caller].0.uint8
  require stor6[caller].0.uint8
  require (etherBalance - unknowna50e20c1[caller]) >= 0
  etherBalance = etherBalance - unknowna50e20c1[caller]
  call caller with:	# withdraw / default function
       gas 2300 * not unknowna50e20c1[caller] wei
     value unknowna50e20c1[caller] wei
  require ext_call.success
  unknowna50e20c1[caller] = 0
  stor5[caller].0.uint256 = False or (stor5[caller].8 << 248)

0x6904cFa3eBD1b845b1C3A6A141EbB18720a3f36d
0xdf92c7D29b9782685C3a8C628Fe22Ec7F5E39878
0x9fe2903C4E08821f05E5347C71d7D20D7DD8C59c
0xcf768B4D181048BB5E0E6E1A9546033483779753
0x16AC88dD8b5Be520D6A14f4c0963d8249161Ab98
createTokens()
def createTokens() payable: 
  require not stor0.160
  require call.value >= minPrice
  require slaveWalletPercent <= percentRate
  if call.value:
      require call.value
      require (((percentRate * call.value) - (slaveWalletPercent * call.value)) / call.value) == (percentRate - slaveWalletPercent)
  require percentRate
  require (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) <= call.value
  call masterWalletAddress with:	# withdraw / default function
       gas 2300 * not (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) wei
     value ((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate wei
  require ext_call.success
  call slaveWalletAddress with:	# withdraw / default function
       gas 2300 * not (call.value - (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate)) wei
     value call.value - (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) wei
  require block.timestamp >= start
  require block.timestamp < ((86400 * stor2.length.0) + start)
  require totalInvested <= totalHardcap
  var1 = 0
  loop 2261_12:498:1775:5046
  require var1 < stor5.length.0.uint256
  if 0 != stor5[Mask(254, 0, var1)].768:
      var1 = var1 + 1
      repeat 2261_12:498:1775:5046
  require var1 < stor5.length.0.uint256
  if call.value:
      require call.value
      require ((stor5[Mask(254, 0, var1)].256 * call.value) / call.value) == stor5[Mask(254, 0, var1)].256
  require ext_code.size(tokenAddress)
  call tokenAddress.mint(address,uint256) with:
       gas gas_remaining - 710 wei
      args addr(this.address), (stor5[Mask(254, 0, var1)].256 * call.value)
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args caller, (stor5[Mask(254, 0, var1)].256 * call.value)
  require ext_call.success
  totalTokensMinted = (stor5[Mask(254, 0, var1)].256 * call.value) + totalTokensMinted
  totalInvested = call.value + totalInvested
  stor5[Mask(254, 0, var1)].512 = call.value + stor5[Mask(254, 0, var1)].512
  if (call.value + stor5[Mask(254, 0, var1)].512) >= stor5[Mask(254, 0, var1)].0.uint256:
      stor5[Mask(254, 0, var1)].768 = block.timestamp

0x6904cFa3eBD1b845b1C3A6A141EbB18720a3f36d
0xdf92c7D29b9782685C3a8C628Fe22Ec7F5E39878
0x9fe2903C4E08821f05E5347C71d7D20D7DD8C59c
0xcf768B4D181048BB5E0E6E1A9546033483779753
0x16AC88dD8b5Be520D6A14f4c0963d8249161Ab98
_fallback()
def _fallback() payable: # default function
  require not stor0.160
  require call.value >= minPrice
  require slaveWalletPercent <= percentRate
  if call.value:
      require call.value
      require (((percentRate * call.value) - (slaveWalletPercent * call.value)) / call.value) == (percentRate - slaveWalletPercent)
  require percentRate
  require (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) <= call.value
  call masterWalletAddress with:	# withdraw / default function
       gas 2300 * not (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) wei
     value ((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate wei
  require ext_call.success
  call slaveWalletAddress with:	# withdraw / default function
       gas 2300 * not (call.value - (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate)) wei
     value call.value - (((percentRate * call.value) - (slaveWalletPercent * call.value)) / percentRate) wei
  require block.timestamp >= start
  require block.timestamp < ((86400 * stor2.length.0) + start)
  require totalInvested <= totalHardcap
  var1 = 0
  loop 2261_12:498:1775:5046
  require var1 < stor5.length.0.uint256
  if 0 != stor5[Mask(254, 0, var1)].768:
      var1 = var1 + 1
      repeat 2261_12:498:1775:5046
  require var1 < stor5.length.0.uint256
  if call.value:
      require call.value
      require ((stor5[Mask(254, 0, var1)].256 * call.value) / call.value) == stor5[Mask(254, 0, var1)].256
  require ext_code.size(tokenAddress)
  call tokenAddress.mint(address,uint256) with:
       gas gas_remaining - 710 wei
      args addr(this.address), (stor5[Mask(254, 0, var1)].256 * call.value)
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args caller, (stor5[Mask(254, 0, var1)].256 * call.value)
  require ext_call.success
  totalTokensMinted = (stor5[Mask(254, 0, var1)].256 * call.value) + totalTokensMinted
  totalInvested = call.value + totalInvested
  stor5[Mask(254, 0, var1)].512 = call.value + stor5[Mask(254, 0, var1)].512
  if (call.value + stor5[Mask(254, 0, var1)].512) >= stor5[Mask(254, 0, var1)].0.uint256:
      stor5[Mask(254, 0, var1)].768 = block.timestamp

0x3fe3D6f405b5858A320B33FbcB0Bea3b2C2eB7BE
0x44977767DFe24dc8a95FF0AFFb48a3871312BcCf
0xb736EF42Db215fc748370A63cBcA8e4325dDe190
0x68f8927b9656C4278f2623323169F54517A38838
0x0D226ce4ae0f37Bea0af2dbE8554243175394F80
transfer(address _to, uint256 _value)
def transfer(address _to, uint256 _value) : # not payable
  require not stor10[caller].0.uint8
  require balanceOf[caller] >= _value
  if eth.balance(caller) >= stor8:
      if eth.balance(_to) >= stor8:
          balanceOf[caller] = balanceOf[caller] - _value
      else:
          require sellPrice
          require balanceOf[caller] >= ((stor8 - eth.balance(_to)) / sellPrice)
          balanceOf[addr(this.address)] = balanceOf[addr(this.address)] + ((stor8 - eth.balance(_to)) / sellPrice)
          balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(_to)) / sellPrice)
          call caller with:	# withdraw / default function
               gas 2300 * not (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
             value (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
          log Transfer(address,address,uint256), caller, addr(this.address), ((stor8 - eth.balance(_to)) / sellPrice)
          call addr(_to).(Mask(32, 224, ((stor8 - eth.balance(_to)) / sellPrice)) >> 224) with:
               gas 2300 * not (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
             value (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
          balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(_to)) / sellPrice) - _value
  else:
      require sellPrice
      require balanceOf[caller] >= ((stor8 - eth.balance(caller)) / sellPrice)
      balanceOf[addr(this.address)] = balanceOf[addr(this.address)] + ((stor8 - eth.balance(caller)) / sellPrice)
      balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(caller)) / sellPrice)
      call caller with:	# withdraw / default function
           gas 2300 * not (((stor8 - eth.balance(caller)) / sellPrice) * sellPrice) wei
         value (((stor8 - eth.balance(caller)) / sellPrice) * sellPrice) wei
      log Transfer(address,address,uint256), caller, addr(this.address), ((stor8 - eth.balance(caller)) / sellPrice)
      if eth.balance(_to) >= stor8:
          balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(caller)) / sellPrice) - _value
      else:
          require sellPrice
          require (balanceOf[caller] - ((stor8 - eth.balance(caller)) / sellPrice)) >= ((stor8 - eth.balance(_to)) / sellPrice)
          balanceOf[addr(this.address)] = balanceOf[addr(this.address)] + ((stor8 - eth.balance(caller)) / sellPrice) + ((stor8 - eth.balance(_to)) / sellPrice)
          balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(caller)) / sellPrice) - ((stor8 - eth.balance(_to)) / sellPrice)
          call caller.(Mask(32, 224, ((stor8 - eth.balance(caller)) / sellPrice)) >> 224) with:
               gas 2300 * not (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
             value (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
          log Transfer(address,address,uint256), caller, addr(this.address), ((stor8 - eth.balance(_to)) / sellPrice)
          call addr(_to).(Mask(32, 224, ((stor8 - eth.balance(_to)) / sellPrice)) >> 224) with:
               gas 2300 * not (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
             value (((stor8 - eth.balance(_to)) / sellPrice) * sellPrice) wei
          balanceOf[caller] = balanceOf[caller] - ((stor8 - eth.balance(caller)) / sellPrice) - ((stor8 - eth.balance(_to)) / sellPrice) - _value
  balanceOf[addr(_to)] = balanceOf[addr(_to)] + _value
  log Transfer(address,address,uint256), caller, addr(_to), _value

0xDFB74041eb54585Cdb23fB633F80d0e8c1A505C3
0x32ecbB0538b00741CC741C5AA2b456a2da23b658
0xBA34f1f4073eFA723dd84D07fEA5d3D6927bED3E
0xD78670582b4DE31701ceFc996216c9005FDFe321
0xb160cA082335B8C060739e94F5c68Ef0a2700C36
unknown9f75ccc8(?)
def unknown9f75ccc8(?) : # not payable
  require block.timestamp >= deadline
  require caller == ownerAddress
  require unknown1b08d96f == 0
  require block.timestamp >= deadline
  require caller == ownerAddress
  log 0x8d2f010d, caller, eth.balance(this.address), False
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  unknown1b08d96f = 1
  return True

0xFF833d42C6A9953342dCb2e24f5579DeA8305995
0x30D3a214d9F1F39A3C03de63d6Df6f021fcDc674
0x89fd8971fEf41923eE6f1416c1fbaF5Fe6698eEa
0x92579f2fa430B20BF6CE9d19938Fe061aad992E2
0x7afc31E987eD570Ae52E0550cd857cCCBbd97EB4
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor9.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], False
          if not stor9.0:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor9.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, False

0x7332077DB22F7c1Df320E757a77E8871377976Da
0x2C7Bc39B1B0C9Fdf200fd30C74C0a9a41C2C7047
0x8DaAF6deE6bb625fCFd1D5fBF3E4c1F6f5eF71f5
0x902E9bF649bA31B33089cC77815B54Ddd8beA824
0x3b8B95ECCcE73667305B322FD89e5a148e262F62
buyEggs()
def buyEggs() payable: 
  require stor4.0
  require call.value <= eth.balance(this.address)
  if not stor2:
      if not stor3:
          require call.value
          require ((0 / call.value) + stor3) >= stor3
          require (0 / call.value) + stor3
          if not (0 / ((0 / call.value) + stor3)):
              require 0 <= (0 / ((0 / call.value) + stor3))
              if not call.value:
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              require ext_call.success
              require ((0 / ((0 / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
              claimedEggs[caller] = (0 / ((0 / call.value) + stor3)) + claimedEggs[caller]
          else:
              require ((4 * (0 / ((0 / call.value) + stor3))) / (0 / ((0 / call.value) + stor3))) == 4
              require ((4 * (0 / ((0 / call.value) + stor3))) / 100) <= (0 / ((0 / call.value) + stor3))
              if not call.value:
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              require ext_call.success
              require ((0 / ((0 / call.value) + stor3)) - ((4 * (0 / ((0 / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
              claimedEggs[caller] = (0 / ((0 / call.value) + stor3)) - ((4 * (0 / ((0 / call.value) + stor3))) / 100) + claimedEggs[caller]
      else:
          require ((call.value * stor3) / stor3) == call.value
          require call.value
          require (((call.value * stor3) / call.value) + stor3) >= stor3
          require ((call.value * stor3) / call.value) + stor3
          if not (0 / (((call.value * stor3) / call.value) + stor3)):
              require 0 <= (0 / (((call.value * stor3) / call.value) + stor3))
              if not call.value:
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              require ext_call.success
              require ((0 / (((call.value * stor3) / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
              claimedEggs[caller] = (0 / (((call.value * stor3) / call.value) + stor3)) + claimedEggs[caller]
          else:
              require ((4 * (0 / (((call.value * stor3) / call.value) + stor3))) / (0 / (((call.value * stor3) / call.value) + stor3))) == 4
              require ((4 * (0 / (((call.value * stor3) / call.value) + stor3))) / 100) <= (0 / (((call.value * stor3) / call.value) + stor3))
              if not call.value:
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              require ext_call.success
              require ((0 / (((call.value * stor3) / call.value) + stor3)) - ((4 * (0 / (((call.value * stor3) / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
              claimedEggs[caller] = (0 / (((call.value * stor3) / call.value) + stor3)) - ((4 * (0 / (((call.value * stor3) / call.value) + stor3))) / 100) + claimedEggs[caller]
  else:
      require ((marketEggs * stor2) / stor2) == marketEggs
      if not stor2:
          if not stor3:
              require call.value
              require ((0 / call.value) + stor3) >= stor3
              require (0 / call.value) + stor3
              if not ((marketEggs * stor2) / ((0 / call.value) + stor3)):
                  require 0 <= ((marketEggs * stor2) / ((0 / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((0 / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((0 / call.value) + stor3)) + claimedEggs[caller]
              else:
                  require ((4 * ((marketEggs * stor2) / ((0 / call.value) + stor3))) / ((marketEggs * stor2) / ((0 / call.value) + stor3))) == 4
                  require ((4 * ((marketEggs * stor2) / ((0 / call.value) + stor3))) / 100) <= ((marketEggs * stor2) / ((0 / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((0 / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((0 / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((0 / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((0 / call.value) + stor3))) / 100) + claimedEggs[caller]
          else:
              require ((call.value * stor3) / stor3) == call.value
              require call.value
              require (((call.value * stor3) / call.value) + stor3) >= stor3
              require ((call.value * stor3) / call.value) + stor3
              if not ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3)):
                  require 0 <= ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3)) + claimedEggs[caller]
              else:
                  require ((4 * ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))) / ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))) == 4
                  require ((4 * ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))) / 100) <= ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / (((call.value * stor3) / call.value) + stor3))) / 100) + claimedEggs[caller]
      else:
          require (((eth.balance(this.address) * stor2) - (call.value * stor2)) / stor2) == (eth.balance(this.address) - call.value)
          if not stor3:
              require call.value
              require ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3) >= stor3
              require (((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3
              if not ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)):
                  require 0 <= ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) + claimedEggs[caller]
              else:
                  require ((4 * ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) == 4
                  require ((4 * ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) <= ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((((eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) + claimedEggs[caller]
          else:
              require ((call.value * stor3) / stor3) == call.value
              require ((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) >= ((eth.balance(this.address) * stor2) - (call.value * stor2))
              require call.value
              require ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3) >= stor3
              require (((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3
              if not ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)):
                  require 0 <= ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) + claimedEggs[caller]
              else:
                  require ((4 * ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) == 4
                  require ((4 * ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) <= ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))
                  if not call.value:
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  require ext_call.success
                  require (((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) + claimedEggs[caller]) >= claimedEggs[caller]
                  claimedEggs[caller] = ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3)) - ((4 * ((marketEggs * stor2) / ((((call.value * stor3) + (eth.balance(this.address) * stor2) - (call.value * stor2)) / call.value) + stor3))) / 100) + claimedEggs[caller]

0x601E1210Bc20Ee9368a591340e5f04637525CC38
0xC7607b41d21Ed8d9C749273771BECACE3aB032ab
0x714c880aA33fB6Aa6BD2272832AD6a766DeAdDC6
0xa50Be22a06898eA2F3512c0c3aa33392796Be693
0xd375e7fDdeFDf15573DFf5D17e6E977Dd51ac359
claimTokensAndRefund()
def claimTokensAndRefund() : # not payable
  require stor10[caller]
  require block.number >= fundingEndBlock
  if stor11 < targetEth:
      call caller with:	# withdraw / default function
           gas 2300 * not stor10[caller] wei
         value stor10[caller] wei
      require ext_call.success
      log 0xbf230d9c, caller, stor10[caller]
  else:
      if totalSupply:
          require totalSupply
          require ((stor10[caller] * totalSupply) / totalSupply) == stor10[caller]
      require stor11
      balanceOf[caller] = (stor10[caller] * totalSupply) / stor11
      if targetEth:
          require targetEth
          require ((stor10[caller] * targetEth) / targetEth) == stor10[caller]
      require stor11
      call caller with:	# withdraw / default function
           gas 2300 * not (stor10[caller] - ((stor10[caller] * targetEth) / stor11)) wei
         value stor10[caller] - ((stor10[caller] * targetEth) / stor11) wei
      require ext_call.success
      log 0x4d7f917f, caller, ((stor10[caller] * totalSupply) / stor11)
  stor10[caller] = 0

0x949C9B8dFf9b264CAD57F69Cd98ECa1338F05B39
0xD3c0F7BD1e329Efd7DE3B5baE04f7c3bA023a99A
0x55C17fae7bf86b1bf1C3C2e38db912d5C9D28439
0x221B9e453391c24D52c551542d791206f5747C57
0x00AfDB701A3Acb9dF23417D4106De5cd8af24605
withdraw()
def withdraw() : # not payable
  require caller == ownerAddress
  require stor14.0.uint8
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not collected wei
     value collected wei
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args beneficiaryAddress, ext_call.return_data[-32 + RETURNDATASIZE len 32]
  require ext_call.success
  stor14.8.248 = Mask(248, 0, True)

0x5489b3D1693ba4186b0D504452422D30b148085f
0x3268813BC91a3DcAE566E40F7C9d4724C05DfA1D
0x4D1325073B35bb3402C0F24fCE28129D55B94E0f
0xE52dd97080EBdc8De148EcC2d52040238f4596D1
0x8e9ae741BefD06F6fe4aefDa71A5F598BDB7BB12
withdraw()
def withdraw() : # not payable
  stor6[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not stor6[caller] wei
     value stor6[caller] wei
  if ext_call.success:
      return True
  stor6[caller] = stor6[caller]
  return False

0x3520bA6A529b2504a28eeBDA47D255DB73966694
0x82E9d98Ea9aE74ec8EfCDf82c209f95455E76d5b
0x2fE0Bc5ffB80A84739da913F0A393A4b0CCE661b
0x657A5DC7628f0F976Eb443f9De0B358F468191D9
0x3da6C7db68f17E72CE153E485E453922f46B1d4a
_fallback()
def _fallback() payable: # default function
  require stor16.168.uint8
  require currentDistribPublicSupply_ <= maxDistribPublicSupply_
  call distribFundsReceiverAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  if stor19[caller]:
      if call.value >= 9000000000000000:
          currentDistribPublicSupply_ = (4 * call.value * stor13) + currentDistribPublicSupply_
          balanceOf[caller] = (4 * call.value * stor13) + balanceOf[caller]
          allowance.length = (4 * call.value * stor13) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (4 * call.value * stor13)
      if call.value >= 6000000000000000:
          currentDistribPublicSupply_ = (3 * call.value * stor13) + currentDistribPublicSupply_
          balanceOf[caller] = (3 * call.value * stor13) + balanceOf[caller]
          allowance.length = (3 * call.value * stor13) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (3 * call.value * stor13)
      if call.value >= 3000000000000000:
          currentDistribPublicSupply_ = (2 * call.value * stor13) + currentDistribPublicSupply_
          balanceOf[caller] = (2 * call.value * stor13) + balanceOf[caller]
          allowance.length = (2 * call.value * stor13) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (2 * call.value * stor13)
      currentDistribPublicSupply_ = (call.value * stor13) + currentDistribPublicSupply_
      balanceOf[caller] = (call.value * stor13) + balanceOf[caller]
      allowance.length = (call.value * stor13) + allowance.length
      log 0xddf252ad, addr(this.address), caller, (call.value * stor13)
  else:
      currentDistribPublicSupply_ = (10^18 * stor3) + currentDistribPublicSupply_
      balanceOf[caller] = (10^18 * stor3) + balanceOf[caller]
      allowance.length = (10^18 * stor3) + allowance.length
      log 0xddf252ad, addr(this.address), caller, (10^18 * stor3)
      stor19[caller] = 1
      if call.value >= 9000000000000000:
          currentDistribPublicSupply_ = (4 * call.value * stor13) + (10^18 * stor3) + currentDistribPublicSupply_
          balanceOf[caller] = (4 * call.value * stor13) + (10^18 * stor3) + balanceOf[caller]
          allowance.length = (4 * call.value * stor13) + (10^18 * stor3) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (4 * call.value * stor13)
      if call.value >= 6000000000000000:
          currentDistribPublicSupply_ = (3 * call.value * stor13) + (10^18 * stor3) + currentDistribPublicSupply_
          balanceOf[caller] = (3 * call.value * stor13) + (10^18 * stor3) + balanceOf[caller]
          allowance.length = (3 * call.value * stor13) + (10^18 * stor3) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (3 * call.value * stor13)
      if call.value >= 3000000000000000:
          currentDistribPublicSupply_ = (2 * call.value * stor13) + (10^18 * stor3) + currentDistribPublicSupply_
          balanceOf[caller] = (2 * call.value * stor13) + (10^18 * stor3) + balanceOf[caller]
          allowance.length = (2 * call.value * stor13) + (10^18 * stor3) + allowance.length
          log 0xddf252ad, addr(this.address), caller, (2 * call.value * stor13)
      currentDistribPublicSupply_ = (call.value * stor13) + (10^18 * stor3) + currentDistribPublicSupply_
      balanceOf[caller] = (call.value * stor13) + (10^18 * stor3) + balanceOf[caller]
      allowance.length = (call.value * stor13) + (10^18 * stor3) + allowance.length
      log 0xddf252ad, addr(this.address), caller, (call.value * stor13)

0xC6f103a2D749b3A8Fd59E905b0d3eeD02AAF23FC
0xa311c8E3dFfbbC510177994cC2537c112dC5EC1b
0x36885D5202B315b5FEDC2C77028041617DE52f88
0x4d0E1f096095c0892E527e4e26a2248d12C550C7
0x45483c4B9c780349220D75d840Ac3FEb488dD3f3
_fallback()
def _fallback() payable: # default function
  require not stor0.160
  require stor2 <= 10000000000000000000000000
  require call.value
  require ((28570 * call.value) / call.value) == 28570
  require (28570 * call.value) > 1
  stor2 = (28570 * call.value) + stor2
  call storage(160, 0, 1) with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor4.0.uint256 = stor4.0.uint256 + 1
  if not stor4.0.uint256 > (stor4.0.uint256 + 1):
  stor4[stor4.0.uint256].0.addr = caller
  stor3[caller] = (28570 * call.value) + stor3[caller]
  log CreatePreSale(address,uint256), caller, (28570 * call.value)

0xaa9244a72cF89041c95536a6CB451FBE6a11ecc7
0x9cA22E813A49C91fAda53B571e0Ec8cAC92ACf86
0x94780756B4065618FDa3fDa81FE5de83187d65f4
0x79Bb6f4492D5CB13Fad8cA0ecfBccD9e2c26ac42
0x484AFD352AD835510885cfba359c31E97609f2E2
transferFee()
def transferFee() : # not payable
  require caller == ownerAddress
  call feeAccount1Address with:	# withdraw / default function
       gas 2300 * not stor5.1 wei
     value stor5.1 wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require stor5.1 <= balanceOfEthFee
  balanceOfEthFee = balanceOfEthFee - stor5.1
  call currencyPayment.length.addr with:	# withdraw / default function
       gas 2300 * not (balanceOfEthFee - stor5.1) wei
     value balanceOfEthFee - stor5.1 wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  balanceOfEthFee = 0

0xdcfaE5EC906742f66E57e09Ce098f5ADb76abABa
0xE4fb506F5e6d8c68e71CB9f7cC2Fde4C059D3925
0x4eb3ce14FdA3a874ECAd0E9ad988258C827Bae82
0xCFc60841Bb8A64446771704159a1130a526d4b86
0x155805DD07c90188278E8a5BE2A041fC1E583CAf
WithdrawToSponsor(address _addr, uint256 _wei)
def WithdrawToSponsor(address _addr, uint256 _wei) payable: 
  if stor1 == caller:
      call addr(_addr) with:	# withdraw / default function
           gas 2300 * not _wei wei
         value _wei wei
      if not ext_call.success:
      if charterCapital < _wei:
          charterCapital = 0
      charterCapital = charterCapital - _wei

0x50D14578E0cAF771f92d4D72FF423cFf7234277d
0xB199E0fb768d84e2B83C6519131BE9EE9d3c7a4A
0xe7B48cD3381bC95C004De86452bDf353FcacF44e
0x2713FdfC558Fbae3aD603e3504C73E668Fe15aA1
0x4E64e18F6E6f5d694725c8C02eC8Ace180aDE2d0
refundToOwner(uint256 _amountOfEth, uint256 _dcn)
def refundToOwner(uint256 _amountOfEth, uint256 _dcn) : # not payable
  require caller == ownerAddress
  if _amountOfEth != 0:
      require _amountOfEth
      require ((10^18 * _amountOfEth) / _amountOfEth) == 10^18
  call caller with:	# withdraw / default function
       gas 2300 * not (10^18 * _amountOfEth) wei
     value 10^18 * _amountOfEth wei
  require ext_call.success
  log Transfer(address,address,uint256), addr(this.address), caller, (10^18 * _amountOfEth)
  require balanceOf[addr(this.address)] >= _dcn
  balanceOf[caller] = balanceOf[caller] + _dcn
  require _dcn <= balanceOf[addr(this.address)]
  balanceOf[addr(this.address)] = balanceOf[addr(this.address)] - _dcn
  log Transfer(address,address,uint256), addr(this.address), caller, _dcn

0x7799FfB5704D2782F6f190A460784B32e24319bD
0xD65cf79e1d52c92372c1dC70922eac555C94EA74
0xEE15c19B575893BDb1Fe94e1e699dEF94D912A73
0x85de5aB3aE4737f9346C80593Ad05663156c662b
approveMint(uint256 _nonce)
def approveMint(uint256 _nonce) : # not payable
  require caller == validatorAddress
  require ext_code.size(whiteListingContractAddress)
  call whiteListingContractAddress.isInvestorApproved(address) with:
       gas gas_remaining wei
      args stor11[_nonce].0.addr
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  require ext_call.return_data
  weiRaised = stor11[_nonce].512 + weiRaised
  totalSupply = stor11[_nonce].256 + totalSupply
  require ext_code.size(tokenAddress)
  call tokenAddress.mint(address,uint256) with:
       gas gas_remaining wei
      args stor11[_nonce].0.addr, stor11[_nonce].0.uint256
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  log 0x623b3804, caller, stor11[_nonce].0.addr, stor11[_nonce].0.uint256, stor11[_nonce].0.uint256
  call walletAddress.storage(32, 224, 11, _nonce) with:
       gas 2300 * not stor11[_nonce].512 wei
     value stor11[_nonce].512 wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  stor11[_nonce].0.addr = 0
  stor11[_nonce].256 = 0
  stor11[_nonce].512 = 0
  return True

0x0990A01c880D016e19dCD49Ec549F266F8b41Bf9
0x9527FCc8963Ab8DccF50Cf6731E0abcd6Bf262BA
0x4D298856B006463743b41fa6F1eA6d84938156C0
0x41598475A44D6d6f8785544dE7629632b97c4981
finalize()
def finalize() : # not payable
  require caller == ownerAddress
  require stor9.160
  if block.timestamp <= closingTime:
      require stor9.160
      require tokensCap <= tokensMinted
  if eth.balance(this.address) > 0:
      call poolAddrAddress with:	# withdraw / default function
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      if not ext_call.success:
          revert with ext_call.return_data[0 len RETURNDATASIZE]
  log 0x6823b073, 0
  stor6.160 = 1

0x50161dbD524d2619792B7c28C923ba943a18Bc6E
0x80b91d985305D531767152753E7D13E3bee2db94
0x2111b3a31D3e8550c81D7F40c4C5c7Ab902C0Eb7
0xbBd01b272938304bF888c0a611E73b28025D6adA
unknownf45196ae(?)
def unknownf45196ae(?) payable: 
  if call.value != 0:
      require call.value
      require ((call.value * stor1) / call.value) == stor1
  call stor2 with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  if ((call.value * stor1) / 10^18) != 0:
      require (call.value * stor1) / 10^18
      require ((86400 * ((call.value * stor1) / 10^18)) / ((call.value * stor1) / 10^18)) == 86400
  unknown725f4fa7 = unknown725f4fa7 + (86400 * ((call.value * stor1) / 10^18))
  return True

0x50161dbD524d2619792B7c28C923ba943a18Bc6E
0x80b91d985305D531767152753E7D13E3bee2db94
0x2111b3a31D3e8550c81D7F40c4C5c7Ab902C0Eb7
0xbBd01b272938304bF888c0a611E73b28025D6adA
_fallback()
def _fallback() payable: # default function
  if call.value != 0:
      require call.value
      require ((call.value * stor1) / call.value) == stor1
  call stor2 with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  if ((call.value * stor1) / 10^18) != 0:
      require (call.value * stor1) / 10^18
      require ((86400 * ((call.value * stor1) / 10^18)) / ((call.value * stor1) / 10^18)) == 86400
  unknown725f4fa7 = unknown725f4fa7 + (86400 * ((call.value * stor1) / 10^18))

0x9a9C62cC05ceb3C189C43B18B070821794DB6944
0xd768Bca1ca5e5DeFF16274Be27e24552AC08D2F2
0x736D9b6A58aB142e9EA171FB9cb5C401deCbE1D0
0xEdA2B1CC85743AD07d6eB8E5a22cDBE142C10E6d
withdrawBalance()
def withdrawBalance() payable: 
  balances[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not balances[caller] wei
     value balances[caller] wei
  if not ext_call.success:
      balances[caller] = balances[caller]

0xD1833acC401a6c723a90AFa30a23b3c779B676CB
0x4b928DCc3EfdAEFc60fa47ba7B8C7B13F9cEC390
0xF0222722b6b89A292474665e7e2D3A08B46aa063
0x53c1531650504C0fd15626b17ca95741e0B0a597
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor5.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], False
          if not stor5.0:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor5.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, False

0x77d6456C941C9ddc0eC8165C843Ae56F7F528032
0xB11f5386C8b06Be6e213871fB7d512846b743b25
0x2d8c6B166B25dF6ab041A46858B8B4DFEceF305D
0x157052B14B7b7AB5BCD40C9d19FD785B2E2eFb5c
drainETH()
def drainETH() : # not payable
  require caller == stor2
  call stor2 with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  etherBalance = 0

0x4Ef4090ece9b4C504A4095B6a79782868eD69040
0xE98fa14aD54c2D470Bef4A64203BD50666708B67
0x9f7d93d078A4f833e2aa00169F23d09Af8B171E5
0xD55F58E694E04FC1F72fE94f052AC92f431d4130
unknown7fed722e(?)
def unknown7fed722e(?) payable: 
  require call.value >= value
  require unknown4c6ce11fAddress.addr == caller
  call holderAddress.addr with:	# withdraw / default function
       gas 2300 * not value wei
     value value wei
  require ext_call.success
  unknown4c6ce11fAddress.addr = 0
  stor4.8.248 = Mask(248, 0, caller)
  log 0xddd46510, caller
  if call.value > value:
      call caller with:	# withdraw / default function
           gas 2300 * not (call.value - value) wei
         value call.value - value wei

0x4Ef4090ece9b4C504A4095B6a79782868eD69040
0xE98fa14aD54c2D470Bef4A64203BD50666708B67
0x9f7d93d078A4f833e2aa00169F23d09Af8B171E5
0xD55F58E694E04FC1F72fE94f052AC92f431d4130
unknownd1419c75(?)
def unknownd1419c75(?) : # not payable
  require unknownb14d30b9Address == caller
  call holderAddress.addr with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  holderAddress.addr = unknownb14d30b9Address
  log 0xddd46510, unknownb14d30b9Address
  unknown4c6ce11fAddress.addr = 0
  stor4.0 = 0

0xfa4795E4b66548C1cE62ec43ED7BCf15015A0aE2
0x66d69D37febfC0D9f93C0353d9355cc78B65A37e
0xb0B95E6AAc744EFC8E028493A1d5EB3eD94acA18
0x579bc5E48f1595FCa45cd80Ce0b38904941ba48d
createTokens()
def createTokens() payable: 
  if call.value != 0:
      require call.value
      require ((200 * call.value) / call.value) == 200
  balanceOf[caller] = balanceOf[caller] + (200 * call.value)
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  totalSupply = totalSupply + (200 * call.value)

0xfa4795E4b66548C1cE62ec43ED7BCf15015A0aE2
0x66d69D37febfC0D9f93C0353d9355cc78B65A37e
0xb0B95E6AAc744EFC8E028493A1d5EB3eD94acA18
0x579bc5E48f1595FCa45cd80Ce0b38904941ba48d
_fallback()
def _fallback() payable: # default function
  if call.value != 0:
      require call.value
      require ((200 * call.value) / call.value) == 200
  balanceOf[caller] = balanceOf[caller] + (200 * call.value)
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  totalSupply = totalSupply + (200 * call.value)

0xFbb0Ff118b17160f32Dc734BB59d04A2aBC436be
0x2d8DB9cf8bD7c02AE6dbd993366362BD91610F1c
0x3a7F08D2C01D5A9fA393D849Fe9E7a143a56A22D
0x2acac61173865Cd324536D9a65237A2FC590E43E
closeCrowdsale()
def closeCrowdsale() : # not payable
  require caller == ownerAddress
  require not stor4.8.uint8
  call beneficiaryAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.totalSupply() with:
       gas gas_remaining - 710 wei
  require ext_call.success
  if (ext_call.return_data / 100) == 0:
      require ext_code.size(tokenAddress)
      call tokenAddress.mint(address,uint256) with:
           gas gas_remaining - 710 wei
          args beneficiaryAddress, 0
  else:
      require ext_call.return_data / 100
      require ((65 * (ext_call.return_data / 100)) / (ext_call.return_data / 100)) == 65
      require ext_code.size(tokenAddress)
      call tokenAddress.mint(address,uint256) with:
           gas gas_remaining - 710 wei
          args beneficiaryAddress, (65 * (ext_call.return_data / 100))
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.finishMinting() with:
       gas gas_remaining - 710 wei
  require ext_call.success
  require ext_code.size(tokenAddress)
  call tokenAddress.transferOwnership(address) with:
       gas gas_remaining - 710 wei
      args beneficiaryAddress
  require ext_call.success
  stor4.8.248 = Mask(248, 0, True)
  log 0x587261db, 0

0xBAe533C9C0A67D5dE2B89a8fD0bc01A2b450bD2d
0x61F4CB3FE48ed4Cd56A14007347E3937FD19a9Cb
0x9466C98D772DD536B2fb5618404CF437Dc108241
0x9CC5404e0aD06FE0FF4D2C7cC5f28a32ae95E483
adopt(uint256 _ticketId)
def adopt(uint256 _ticketId) payable: 
  require _ticketId <= 15
  require _ticketId < 16
  require _ticketId < 16
  if stor3[Mask(255, 0, _ticketId)].512.uint256 == 10000000000000000:
      stor3[Mask(255, 0, _ticketId)].512.uint256 = 20000000000000000
      require call.value >= 20000000000000000
      require _ticketId < 16
      call stor3.0.addr with:	# withdraw / default function
           gas 2300 * False wei
         value 18000000000000000 wei
      require ext_call.success
      require _ticketId < 16
      call storage(160, 0, 0) with:	# withdraw / default function
           gas 2300 * False wei
         value 2000000000000000 wei
      require ext_call.success
      require _ticketId < 16
      stor3[Mask(255, 0, _ticketId)].256 = caller
      return _ticketId, 20000000000000000
  stor3[Mask(255, 0, _ticketId)].512.1 = 0
  stor3[Mask(255, 0, _ticketId)].513 = stor3[Mask(255, 0, _ticketId)].0.255
  require call.value >= (stor3[Mask(255, 0, _ticketId)].0.255 << 256)
  require _ticketId < 16
  call stor3.0.addr with:	# withdraw / default function
       gas 2300 * not (9 * ((stor3[Mask(255, 0, _ticketId)].0.255 << 256) / 10)) wei
     value 9 * ((stor3[Mask(255, 0, _ticketId)].0.255 << 256) / 10) wei
  require ext_call.success
  require _ticketId < 16
  call storage(160, 0, 0) with:	# withdraw / default function
       gas 2300 * not ((stor3[Mask(255, 0, _ticketId)].0.255 << 256) / 10) wei
     value ((stor3[Mask(255, 0, _ticketId)].0.255 << 256) / 10) wei
  require ext_call.success
  require _ticketId < 16
  stor3[Mask(255, 0, _ticketId)].256 = caller
  return _ticketId, stor3[Mask(255, 0, _ticketId)].0.255

0x62a644E03659fe3E0F5dB08260bb201f912d0e28
0x74028170d74751878228cDa221FD0AC42A830921
0xE03e6B186F02Cf7fB585D85041033e97E9eE4b9c
0x3aca398197478e1F911e4eDd8fF7b4d608B98a3a
_fallback()
def _fallback() payable: # default function
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require caller
  require balanceOf[ownerAddress] >= (buyPrice * call.value)
  require not stor9[ownerAddress].0.uint8
  require not stor9[caller].0.uint8
  balanceOf[ownerAddress] = balanceOf[ownerAddress] - (buyPrice * call.value)
  balanceOf[caller] = (buyPrice * call.value) + balanceOf[caller]
  log Transfer(address,address,uint256), ownerAddress, caller, (buyPrice * call.value)

0xeC94d178D97bAC527FDCD4b3D4bf41b57D640c5B
0x34e2801C4358116987377f7099017f62FDe63c31
0xdbD1D191854256508CfeF97Ed0B7B9C1AfDb1F25
0xCB60D1eCd0E6CB45924322869Ddf4F251Bd0731B
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if stor4.8.uint8:
      if not stor4.0.uint8:
      balanceOf[caller] = 0
      call caller with:	# withdraw / default function
           gas 2300 * not balanceOf[caller] wei
         value balanceOf[caller] wei
      if not ext_call.success:
          balanceOf[caller] = balanceOf[caller]
      log 0xe842aea7, caller, balanceOf[caller], 0

0xe4a8D88f93707a6692C7DD1252a6D6B1F23bE336
0x3F796139C44bB79eA4744A1ca43b9aE91fdF62EB
0xb4d1F40FD55724F61F41DF83fbE570D5AA25518f
0x0c0eaEDa142E4053a5590D2BeEB271225f2F6976
proxyBuy(bytes32 _proxy, address _recipient)
def proxyBuy(bytes32 _proxy, address _recipient) payable: 
  require block.gasprice <= 50000000000
  require not stor10.0.uint8
  require block.timestamp >= saleStartTime
  require block.timestamp <= saleEndTime
  if participated[addr(_recipient)] == 0:
      require call.value >= minCap
  require block.timestamp >= saleStartTime
  require block.timestamp < saleEndTime
  require ext_code.size(listAddress)
  call listAddress.getCap(address) with:
       gas gas_remaining - 710 wei
      args addr(_recipient)
  require ext_call.success
  require ext_call.return_data != 0
  if block.timestamp <= firstRoundTime:
      require participated[addr(_recipient)] <= ext_call.return_data
      if (ext_call.return_data - participated[addr(_recipient)]) > call.value:
          participated[addr(_recipient)] = participated[addr(_recipient)] + call.value
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not call.value wei
             value call.value wei
          require ext_call.success
          raisedWei = raisedWei + call.value
          if call.value != 0:
              require call.value
              require ((5000 * call.value) / call.value) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args addr(_recipient), (5000 * call.value)
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), addr(_recipient), (5000 * call.value), call.value
          proxyPurchases[_proxy] = proxyPurchases[_proxy] + call.value
          log ProxyBuy(bytes32,address,uint256), _proxy, addr(_recipient), call.value
          return call.value
      require (ext_call.return_data - participated[addr(_recipient)]) > 0
      require ext_call.return_data >= participated[addr(_recipient)]
      participated[addr(_recipient)] = ext_call.return_data
      require (ext_call.return_data - participated[addr(_recipient)]) > 0
      if call.value <= (ext_call.return_data - participated[addr(_recipient)]):
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (ext_call.return_data - participated[addr(_recipient)]) wei
             value ext_call.return_data - participated[addr(_recipient)] wei
          require ext_call.success
      else:
          require (ext_call.return_data - participated[addr(_recipient)]) <= call.value
          call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (call.value - ext_call.return_data + participated[addr(_recipient)]) wei
             value call.value - ext_call.return_data + participated[addr(_recipient)] wei
          require ext_call.success
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (ext_call.return_data - participated[addr(_recipient)]) wei
             value ext_call.return_data - participated[addr(_recipient)] wei
      require (raisedWei + ext_call.return_data - participated[addr(_recipient)]) >= raisedWei
      raisedWei = raisedWei + ext_call.return_data - participated[addr(_recipient)]
      if (ext_call.return_data - participated[addr(_recipient)]) != 0:
          require ext_call.return_data - participated[addr(_recipient)]
          require (((5000 * ext_call.return_data) - (5000 * participated[addr(_recipient)])) / (ext_call.return_data - participated[addr(_recipient)])) == 5000
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args addr(_recipient), ((5000 * ext_call.return_data) - (5000 * participated[addr(_recipient)]))
      require ext_call.success
      require ext_call.return_data
      log Buy(address,uint256,uint256), addr(_recipient), ((5000 * ext_call.return_data) - (5000 * participated[addr(_recipient)])), (ext_call.return_data - participated[addr(_recipient)])
      require (proxyPurchases[_proxy] + ext_call.return_data - participated[addr(_recipient)]) >= proxyPurchases[_proxy]
      proxyPurchases[_proxy] = proxyPurchases[_proxy] + ext_call.return_data - participated[addr(_recipient)]
      log ProxyBuy(bytes32,address,uint256), _proxy, addr(_recipient), (ext_call.return_data - participated[addr(_recipient)])
      return (ext_call.return_data - participated[addr(_recipient)])
  if ext_call.return_data != 0:
      require ext_call.return_data
      require ((ext_call.return_data * xtime) / ext_call.return_data) == xtime
  require participated[addr(_recipient)] <= (ext_call.return_data * xtime)
  if ((ext_call.return_data * xtime) - participated[addr(_recipient)]) > call.value:
      participated[addr(_recipient)] = participated[addr(_recipient)] + call.value
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      raisedWei = raisedWei + call.value
      if call.value != 0:
          require call.value
          require ((5000 * call.value) / call.value) == 5000
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args addr(_recipient), (5000 * call.value)
      require ext_call.success
      require ext_call.return_data
      log Buy(address,uint256,uint256), addr(_recipient), (5000 * call.value), call.value
      proxyPurchases[_proxy] = proxyPurchases[_proxy] + call.value
      log ProxyBuy(bytes32,address,uint256), _proxy, addr(_recipient), call.value
      return call.value
  require ((ext_call.return_data * xtime) - participated[addr(_recipient)]) > 0
  require (ext_call.return_data * xtime) >= participated[addr(_recipient)]
  participated[addr(_recipient)] = (ext_call.return_data * xtime)
  require ((ext_call.return_data * xtime) - participated[addr(_recipient)]) > 0
  if call.value <= ((ext_call.return_data * xtime) - participated[addr(_recipient)]):
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data * xtime) - participated[addr(_recipient)]) wei
         value (ext_call.return_data * xtime) - participated[addr(_recipient)] wei
      require ext_call.success
  else:
      require ((ext_call.return_data * xtime) - participated[addr(_recipient)]) <= call.value
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not (call.value - (ext_call.return_data * xtime) + participated[addr(_recipient)]) wei
         value call.value - (ext_call.return_data * xtime) + participated[addr(_recipient)] wei
      require ext_call.success
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data * xtime) - participated[addr(_recipient)]) wei
         value (ext_call.return_data * xtime) - participated[addr(_recipient)] wei
  require (raisedWei + (ext_call.return_data * xtime) - participated[addr(_recipient)]) >= raisedWei
  raisedWei = raisedWei + (ext_call.return_data * xtime) - participated[addr(_recipient)]
  if ((ext_call.return_data * xtime) - participated[addr(_recipient)]) != 0:
      require (ext_call.return_data * xtime) - participated[addr(_recipient)]
      require (((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_recipient)])) / ((ext_call.return_data * xtime) - participated[addr(_recipient)])) == 5000
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args addr(_recipient), ((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_recipient)]))
  require ext_call.success
  require ext_call.return_data
  log Buy(address,uint256,uint256), addr(_recipient), ((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_recipient)])), ((ext_call.return_data * xtime) - participated[addr(_recipient)])
  require (proxyPurchases[_proxy] + (ext_call.return_data * xtime) - participated[addr(_recipient)]) >= proxyPurchases[_proxy]
  proxyPurchases[_proxy] = proxyPurchases[_proxy] + (ext_call.return_data * xtime) - participated[addr(_recipient)]
  log ProxyBuy(bytes32,address,uint256), _proxy, addr(_recipient), ((ext_call.return_data * xtime) - participated[addr(_recipient)])
  return ((ext_call.return_data * xtime) - participated[addr(_recipient)])

0xe4a8D88f93707a6692C7DD1252a6D6B1F23bE336
0x3F796139C44bB79eA4744A1ca43b9aE91fdF62EB
0xb4d1F40FD55724F61F41DF83fbE570D5AA25518f
0x0c0eaEDa142E4053a5590D2BeEB271225f2F6976
buy(address _referredBy)
def buy(address _referredBy) payable: 
  require block.gasprice <= 50000000000
  require not stor10.0.uint8
  require block.timestamp >= saleStartTime
  require block.timestamp <= saleEndTime
  if participated[addr(_referredBy)] == 0:
      require call.value >= minCap
  require block.timestamp >= saleStartTime
  require block.timestamp < saleEndTime
  require ext_code.size(listAddress)
  call listAddress.getCap(address) with:
       gas gas_remaining - 710 wei
      args addr(_referredBy)
  require ext_call.success
  require ext_call.return_data != 0
  if block.timestamp <= firstRoundTime:
      require participated[addr(_referredBy)] <= ext_call.return_data
      if (ext_call.return_data - participated[addr(_referredBy)]) > call.value:
          participated[addr(_referredBy)] = participated[addr(_referredBy)] + call.value
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not call.value wei
             value call.value wei
          require ext_call.success
          raisedWei = raisedWei + call.value
          if call.value != 0:
              require call.value
              require ((5000 * call.value) / call.value) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args addr(_referredBy), (5000 * call.value)
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), addr(_referredBy), (5000 * call.value), call.value
          return call.value
      require (ext_call.return_data - participated[addr(_referredBy)]) > 0
      require ext_call.return_data >= participated[addr(_referredBy)]
      participated[addr(_referredBy)] = ext_call.return_data
      require (ext_call.return_data - participated[addr(_referredBy)]) > 0
      if call.value <= (ext_call.return_data - participated[addr(_referredBy)]):
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (ext_call.return_data - participated[addr(_referredBy)]) wei
             value ext_call.return_data - participated[addr(_referredBy)] wei
          require ext_call.success
      else:
          require (ext_call.return_data - participated[addr(_referredBy)]) <= call.value
          call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (call.value - ext_call.return_data + participated[addr(_referredBy)]) wei
             value call.value - ext_call.return_data + participated[addr(_referredBy)] wei
          require ext_call.success
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not (ext_call.return_data - participated[addr(_referredBy)]) wei
             value ext_call.return_data - participated[addr(_referredBy)] wei
      require (raisedWei + ext_call.return_data - participated[addr(_referredBy)]) >= raisedWei
      raisedWei = raisedWei + ext_call.return_data - participated[addr(_referredBy)]
      if (ext_call.return_data - participated[addr(_referredBy)]) != 0:
          require ext_call.return_data - participated[addr(_referredBy)]
          require (((5000 * ext_call.return_data) - (5000 * participated[addr(_referredBy)])) / (ext_call.return_data - participated[addr(_referredBy)])) == 5000
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args addr(_referredBy), ((5000 * ext_call.return_data) - (5000 * participated[addr(_referredBy)]))
      require ext_call.success
      require ext_call.return_data
      log Buy(address,uint256,uint256), addr(_referredBy), ((5000 * ext_call.return_data) - (5000 * participated[addr(_referredBy)])), (ext_call.return_data - participated[addr(_referredBy)])
      return (ext_call.return_data - participated[addr(_referredBy)])
  if ext_call.return_data != 0:
      require ext_call.return_data
      require ((ext_call.return_data * xtime) / ext_call.return_data) == xtime
  require participated[addr(_referredBy)] <= (ext_call.return_data * xtime)
  if ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) > call.value:
      participated[addr(_referredBy)] = participated[addr(_referredBy)] + call.value
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not call.value wei
         value call.value wei
      require ext_call.success
      raisedWei = raisedWei + call.value
      if call.value != 0:
          require call.value
          require ((5000 * call.value) / call.value) == 5000
      require ext_code.size(tokenAddress)
      call tokenAddress.transfer(address,uint256) with:
           gas gas_remaining - 710 wei
          args addr(_referredBy), (5000 * call.value)
      require ext_call.success
      require ext_call.return_data
      log Buy(address,uint256,uint256), addr(_referredBy), (5000 * call.value), call.value
      return call.value
  require ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) > 0
  require (ext_call.return_data * xtime) >= participated[addr(_referredBy)]
  participated[addr(_referredBy)] = (ext_call.return_data * xtime)
  require ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) > 0
  if call.value <= ((ext_call.return_data * xtime) - participated[addr(_referredBy)]):
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) wei
         value (ext_call.return_data * xtime) - participated[addr(_referredBy)] wei
      require ext_call.success
  else:
      require ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) <= call.value
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not (call.value - (ext_call.return_data * xtime) + participated[addr(_referredBy)]) wei
         value call.value - (ext_call.return_data * xtime) + participated[addr(_referredBy)] wei
      require ext_call.success
      call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) wei
         value (ext_call.return_data * xtime) - participated[addr(_referredBy)] wei
  require (raisedWei + (ext_call.return_data * xtime) - participated[addr(_referredBy)]) >= raisedWei
  raisedWei = raisedWei + (ext_call.return_data * xtime) - participated[addr(_referredBy)]
  if ((ext_call.return_data * xtime) - participated[addr(_referredBy)]) != 0:
      require (ext_call.return_data * xtime) - participated[addr(_referredBy)]
      require (((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_referredBy)])) / ((ext_call.return_data * xtime) - participated[addr(_referredBy)])) == 5000
  require ext_code.size(tokenAddress)
  call tokenAddress.transfer(address,uint256) with:
       gas gas_remaining - 710 wei
      args addr(_referredBy), ((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_referredBy)]))
  require ext_call.success
  require ext_call.return_data
  log Buy(address,uint256,uint256), addr(_referredBy), ((5000 * ext_call.return_data * xtime) - (5000 * participated[addr(_referredBy)])), ((ext_call.return_data * xtime) - participated[addr(_referredBy)])
  return ((ext_call.return_data * xtime) - participated[addr(_referredBy)])

0xe4a8D88f93707a6692C7DD1252a6D6B1F23bE336
0x3F796139C44bB79eA4744A1ca43b9aE91fdF62EB
0xb4d1F40FD55724F61F41DF83fbE570D5AA25518f
0x0c0eaEDa142E4053a5590D2BeEB271225f2F6976
_fallback()
def _fallback() payable: # default function
  require block.gasprice <= 50000000000
  require not stor10.0.uint8
  require block.timestamp >= saleStartTime
  require block.timestamp <= saleEndTime
  if participated[caller] == 0:
      require call.value >= minCap
  require block.timestamp >= saleStartTime
  require block.timestamp < saleEndTime
  require ext_code.size(listAddress)
  call listAddress.getCap(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require ext_call.return_data != 0
  if block.timestamp <= firstRoundTime:
      require participated[caller] <= ext_call.return_data
      if (ext_call.return_data - participated[caller]) > call.value:
          participated[caller] = participated[caller] + call.value
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not call.value wei
             value call.value wei
          require ext_call.success
          raisedWei = raisedWei + call.value
          if call.value != 0:
              require call.value
              require ((5000 * call.value) / call.value) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args caller, (5000 * call.value)
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), caller, (5000 * call.value), call.value
      else:
          require (ext_call.return_data - participated[caller]) > 0
          require ext_call.return_data >= participated[caller]
          participated[caller] = ext_call.return_data
          require (ext_call.return_data - participated[caller]) > 0
          if call.value <= (ext_call.return_data - participated[caller]):
              call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not (ext_call.return_data - participated[caller]) wei
                 value ext_call.return_data - participated[caller] wei
              require ext_call.success
          else:
              require (ext_call.return_data - participated[caller]) <= call.value
              call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not (call.value - ext_call.return_data + participated[caller]) wei
                 value call.value - ext_call.return_data + participated[caller] wei
              require ext_call.success
              call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not (ext_call.return_data - participated[caller]) wei
                 value ext_call.return_data - participated[caller] wei
          require (raisedWei + ext_call.return_data - participated[caller]) >= raisedWei
          raisedWei = raisedWei + ext_call.return_data - participated[caller]
          if (ext_call.return_data - participated[caller]) != 0:
              require ext_call.return_data - participated[caller]
              require (((5000 * ext_call.return_data) - (5000 * participated[caller])) / (ext_call.return_data - participated[caller])) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args caller, ((5000 * ext_call.return_data) - (5000 * participated[caller]))
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), caller, ((5000 * ext_call.return_data) - (5000 * participated[caller])), (ext_call.return_data - participated[caller])
  else:
      if ext_call.return_data != 0:
          require ext_call.return_data
          require ((ext_call.return_data * xtime) / ext_call.return_data) == xtime
      require participated[caller] <= (ext_call.return_data * xtime)
      if ((ext_call.return_data * xtime) - participated[caller]) > call.value:
          participated[caller] = participated[caller] + call.value
          call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
               gas 2300 * not call.value wei
             value call.value wei
          require ext_call.success
          raisedWei = raisedWei + call.value
          if call.value != 0:
              require call.value
              require ((5000 * call.value) / call.value) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args caller, (5000 * call.value)
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), caller, (5000 * call.value), call.value
      else:
          require ((ext_call.return_data * xtime) - participated[caller]) > 0
          require (ext_call.return_data * xtime) >= participated[caller]
          participated[caller] = (ext_call.return_data * xtime)
          require ((ext_call.return_data * xtime) - participated[caller]) > 0
          if call.value <= ((ext_call.return_data * xtime) - participated[caller]):
              call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not ((ext_call.return_data * xtime) - participated[caller]) wei
                 value (ext_call.return_data * xtime) - participated[caller] wei
              require ext_call.success
          else:
              require ((ext_call.return_data * xtime) - participated[caller]) <= call.value
              call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not (call.value - (ext_call.return_data * xtime) + participated[caller]) wei
                 value call.value - (ext_call.return_data * xtime) + participated[caller] wei
              require ext_call.success
              call multiSigWalletAddress.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
                   gas 2300 * not ((ext_call.return_data * xtime) - participated[caller]) wei
                 value (ext_call.return_data * xtime) - participated[caller] wei
          require (raisedWei + (ext_call.return_data * xtime) - participated[caller]) >= raisedWei
          raisedWei = raisedWei + (ext_call.return_data * xtime) - participated[caller]
          if ((ext_call.return_data * xtime) - participated[caller]) != 0:
              require (ext_call.return_data * xtime) - participated[caller]
              require (((5000 * ext_call.return_data * xtime) - (5000 * participated[caller])) / ((ext_call.return_data * xtime) - participated[caller])) == 5000
          require ext_code.size(tokenAddress)
          call tokenAddress.transfer(address,uint256) with:
               gas gas_remaining - 710 wei
              args caller, ((5000 * ext_call.return_data * xtime) - (5000 * participated[caller]))
          require ext_call.success
          require ext_call.return_data
          log Buy(address,uint256,uint256), caller, ((5000 * ext_call.return_data * xtime) - (5000 * participated[caller])), ((ext_call.return_data * xtime) - participated[caller])

0x094917260135da7bd85B0379C76b06b88d056BEB
0x58F792248d5fE5cadcc8Cc222eAA97c1F4089F8b
0xC63A07695BE31159f68593D1B182BA827a5aA42D
0xA7fCb35dC10B2d175Fd9d200357bF69a66a5D582
withdrawBoardMeetingFees()
def withdrawBoardMeetingFees() : # not payable
  pendingFees[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not pendingFees[caller] wei
     value pendingFees[caller] wei
  if not ext_call.success:
      pendingFees[caller] = pendingFees[caller]
      return False
  log 0x7fcf532c, caller, pendingFees[caller]
  return True

0x46C77e806d9a238EdF5B498Bff5338dAb7C24424
0x603E789b6b3747d5191C6f8C7Deb99464D27FfBE
0x5156bEFd7ff0fA0aC1E1d40441eFAbe07C1d91B1
0xcA58cfA9dE25229Dc1446F9Cce9d69c31D966028
createTokens()
def createTokens() payable: 
  if call.value:
      require call.value
      require ((rATE * call.value) / call.value) == rATE
  totalSupply = (rATE * call.value) + totalSupply
  balanceOf[caller] = (rATE * call.value) + balanceOf[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor1.0 = 1

0x46C77e806d9a238EdF5B498Bff5338dAb7C24424
0x603E789b6b3747d5191C6f8C7Deb99464D27FfBE
0x5156bEFd7ff0fA0aC1E1d40441eFAbe07C1d91B1
0xcA58cfA9dE25229Dc1446F9Cce9d69c31D966028
_fallback()
def _fallback() payable: # default function
  if call.value:
      require call.value
      require ((rATE * call.value) / call.value) == rATE
  totalSupply = (rATE * call.value) + totalSupply
  balanceOf[caller] = (rATE * call.value) + balanceOf[caller]
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  stor1.0 = 1

0x46C69FeE08Ee6dF808A6D0A05A0D12674a8E9Bc5
0x9517C7C2aAf069897Cd975fE9bE5B68f0Ba8d7e4
0x8e52Fd6f49066CaafcaaB5bF02f5be645399F354
0xF688b76988AE1230470B6bC4F43d2983928CC59d
withdraw()
def withdraw() : # not payable
  require caller == ownerAddress
  require eth.balance(this.address) >= stor2.length
  call ownerAddress with:	# withdraw / default function
       gas 2300 * not stor2.length wei
     value stor2.length wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  stor2.length = 0

0xcF321C5E50EA2222843fa4F0124cC2d1e0110AEa
0x8815dFae43dd8F6E772Cb700b4721d1DEAB0faC0
0x837b926e698A999EeD00cf5001569D00AC23F6a8
0x9A6AD871E40E3ad74c55d94495e0207BcE77C762
withdrawReward()
def withdrawReward() : # not payable
  require (block.number - holdedOf[caller]) > 172800
  holdedOf[caller] = block.number
  call caller with:	# withdraw / default function
       gas 2300 * not (tokenReward * balanceOf[caller]) wei
     value (tokenReward * balanceOf[caller]) wei
  require ext_call.success
  log LogWithdrawal(address,uint256), caller, (tokenReward * balanceOf[caller])
  if block.timestamp < 1519862460:
      if totalSupply < 50000000000000:
          buyPrice = 7500000000000000
      buyPrice = 8000000000000000
  else:
      if block.timestamp < 1520640060:
          buyPrice = 8000000000000000
      if block.timestamp < 1521504060:
          buyPrice = 8500000000000000
      if block.timestamp < 1522368060:
          buyPrice = 9000000000000000
      if block.timestamp < 1523232060:
          buyPrice = 9500000000000000
      buyPrice = 10000000000000000

0xF7a110bdB7010EA94F2d523cd628aF3d5726Ae20
0x4874Fd71Cd01e83cFAf8bdC0Bbff452c655bD3d0
0x86b784AEF0e9c9A581550bA07fb85B64c780c320
0x652925633dbE6d274A3cF3d762ee920E2170c041
refundEther(address _to)
def refundEther(address _to) : # not payable
  require ext_code.size(stor2)
  call stor2.owner() with:
       gas gas_remaining wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  require RETURNDATASIZE >= 32
  require ext_call.return_data[-20 + RETURNDATASIZE len 20] == caller
  call addr(_to).ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
       gas 2300 * not etherUser[addr(_to)] wei
     value etherUser[addr(_to)] wei
  if not ext_call.success:
      revert with ext_call.return_data[0 len RETURNDATASIZE]
  etherUser[addr(_to)] = 0
  pendingTokenUser[addr(_to)] = 0

0x949C9B8dFf9b264CAD57F69Cd98ECa1338F05B39
0x55C17fae7bf86b1bf1C3C2e38db912d5C9D28439
0x221B9e453391c24D52c551542d791206f5747C57
0x00AfDB701A3Acb9dF23417D4106De5cd8af24605
refund()
def refund() : # not payable
  require block.number >= endBlock
  require not stor0.160.uint8
  require bool(stor14.0.uint8) == False
  require bool(stor15[caller].0.uint8) == False
  require ext_code.size(tokenAddress)
  call tokenAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args caller
  require ext_call.success
  require price
  if (ext_call.return_data / price) > eth.balance(this.address):
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not eth.balance(this.address) wei
         value eth.balance(this.address) wei
      require ext_call.success
      stor15[caller].0.uint256 = True or (stor15[caller].8 << 248)
      require (weiRefunded + eth.balance(this.address)) >= weiRefunded
      weiRefunded = weiRefunded + eth.balance(this.address)
      log 0xd7dee270, caller, eth.balance(this.address)
  else:
      call caller.ext_call.return_data[-32 + RETURNDATASIZE len 4] with:
           gas 2300 * not (ext_call.return_data / price) wei
         value ext_call.return_data / price wei
      require ext_call.success
      stor15[caller].0.uint256 = True or (stor15[caller].8 << 248)
      require (weiRefunded + (ext_call.return_data / price)) >= weiRefunded
      weiRefunded = weiRefunded + (ext_call.return_data / price)
      log 0xd7dee270, caller, (ext_call.return_data / price)

0x2c46664818784A86eE0E371fa951d1bFa083944e
0x4F6079f46f4FD13BDbACCC48E8106621d29AFbbE
0xC5559887f94EA5c406b3f6D582dC738C4cF0eAcE
0x25A41D70784CB6DE4750C8Fdbf43Dd34E3D79255
withdraw()
def withdraw() : # not payable
  require not stor2.160.uint8
  stor13[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not stor13[caller] wei
     value stor13[caller] wei
  if not ext_call.success:
      stor13[caller] = stor13[caller]
      return False
  log 0xf279e6a1, caller, stor13[caller], block.timestamp
  return True

0x2c46664818784A86eE0E371fa951d1bFa083944e
0x4F6079f46f4FD13BDbACCC48E8106621d29AFbbE
0xC5559887f94EA5c406b3f6D582dC738C4cF0eAcE
0x25A41D70784CB6DE4750C8Fdbf43Dd34E3D79255
play(bytes1 _byte)
def play(bytes1 _byte) payable: 
  require stor2.160.uint8
  require call.value >= fee
  stor12[Mask(8, 248, _byte)] = stor12[Mask(8, 248, _byte)] + 1
  if not stor12[Mask(8, 248, _byte)] > (stor12[Mask(8, 248, _byte)] + 1):
  stor2[stor12[Mask(8, 248, _byte)], sha3(Mask(8, 248, _byte), 12)].0 = caller
  if eth.balance(this.address) >= jackpot:
      call stor2.length.0 with:	# withdraw / default function
           gas 2300 * not ((eth.balance(this.address) * owner_fee) / 100) wei
         value (eth.balance(this.address) * owner_fee) / 100 wei
      if not ext_call.success:
          return False
      stor2.160.96 = Mask(96, 0, False)
      result_block = block.number + 10
      log 0xc15f25c4, bool(uint8(False))
  log 0xe8d947d7, eth.balance(this.address)
  log Play(address,bytes1,uint256), caller, Mask(8, 248, _byte), block.timestamp
  return True

0x32EC2e6967687825123C5C0f30C18E2c47708Df1
0xa3562570b9da1bF1A8FAD1A6C531EE5F6C77e715
0xCa425A640821f4EAb9aF8b4283A0A2EC5F07c9a9
0xE3781E9B16007c2e859d641683C206f1F2D6224F
finalizeCampaign()
def finalizeCampaign() : # not payable
  if 1 != campaignState:
      require campaignState
      require block.timestamp > (tCampaignEnd + 172800)
  campaignState = 0
  call trusteeVaultAddrAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  if tokensGenerated:
      require tokensGenerated
      require ((3 * tokensGenerated) / tokensGenerated) == 3
  if tokensGenerated:
      require tokensGenerated
      require ((10 * tokensGenerated) / tokensGenerated) == 10
  require ext_code.size(tokenAddress)
  call tokenAddress.generate_token_for(address,uint256) with:
       gas gas_remaining - 710 wei
      args bountyVaultAddrAddress, ((3 * tokensGenerated) / 100)
  require ext_call.success
  require ext_call.return_data
  require (((3 * tokensGenerated) / 100) + tokensGenerated) >= tokensGenerated
  tokensGenerated = ((3 * tokensGenerated) / 100) + tokensGenerated
  tFinalized = block.timestamp
  require ext_code.size(tokenAddress)
  call tokenAddress.generate_token_for(address,uint256) with:
       gas gas_remaining - 710 wei
      args teamVaultAddrAddress, ((10 * tokensGenerated) / 100)
  require ext_call.success
  require ext_call.return_data
  require (((10 * tokensGenerated) / 100) + ((3 * tokensGenerated) / 100) + tokensGenerated) >= (((3 * tokensGenerated) / 100) + tokensGenerated)
  tokensGenerated = ((10 * tokensGenerated) / 100) + ((3 * tokensGenerated) / 100) + tokensGenerated
  require ext_code.size(tokenAddress)
  call tokenAddress.finalize() with:
       gas gas_remaining - 710 wei
  require ext_call.success
  log 0x839cf22e, block.timestamp

0x260A9ceb69FD1dD0848CF9b1EeF415feb1B9a580
0x88dCa05d560900219cc133b9857D842A8B2B5764
0xd4d30F909cc591481da615fb921493AD2Aa7228E
0x9B1a5a8fDEA9af4016D8ab1304a3Eb9Af8f08242
_fallback()
def _fallback() payable: # default function
  if call.value != 0:
      require call.value
      require ((310 * call.value) / call.value) == 310
  require (310 * call.value) >= 10000000000000000000
  require not stor6.0.uint8
  require block.timestamp >= 1513728000
  require block.timestamp <= 1514678399
  require (tokensSold + (310 * call.value)) <= 600000000000000000000000
  call storage(160, 0, 7) with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require (310 * call.value) <= balanceOf[(santaFundWalletAddress.addr << 160)]
  balanceOf[(santaFundWalletAddress.addr << 160)] = balanceOf[(santaFundWalletAddress.addr << 160)] - (310 * call.value)
  balanceOf[caller] = balanceOf[caller] + (310 * call.value)
  log Transfer(address,address,uint256), santaFundWalletAddress.addr, caller, (310 * call.value)
  amountRaised = amountRaised + call.value
  tokensSold = tokensSold + (310 * call.value)
  log FundTransfer(address,uint256,bool,uint256), caller, call.value, True, (amountRaised + call.value)

0x4477Ab43254ce5D6DBCE26aBAeFCBFEcC5ee5fe0
0x3C7fB89a141F6c4Cd6027C6Bd0441164C6006Fa0
0x475e492E378e37DFe97f3D1D6E54341E95Fcb7b3
0x33ef83B02C718db3ddced54c28D31aF22bfd93d9
createTokens()
def createTokens() payable: 
  if (call.value / 10^18) != 0:
      require call.value / 10^18
      require ((200 * (call.value / 10^18)) / (call.value / 10^18)) == 200
  if (200 * (call.value / 10^18)) != 0:
      require 200 * (call.value / 10^18)
      require ((200000 * (call.value / 10^18)) / (200 * (call.value / 10^18))) == 1000
  require (stor1 + (200000 * (call.value / 10^18))) >= stor1
  require (stor1 + (200000 * (call.value / 10^18))) <= totalSupply
  require (balanceOf[caller] + (200000 * (call.value / 10^18))) >= balanceOf[caller]
  balanceOf[caller] = balanceOf[caller] + (200000 * (call.value / 10^18))
  require (totalSupply + (200000 * (call.value / 10^18))) >= totalSupply
  totalSupply = totalSupply + (200000 * (call.value / 10^18))
  call ownerAddress.addr with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require (stor1 + (200000 * (call.value / 10^18))) >= stor1
  stor1 = stor1 + (200000 * (call.value / 10^18))

0x4477Ab43254ce5D6DBCE26aBAeFCBFEcC5ee5fe0
0x3C7fB89a141F6c4Cd6027C6Bd0441164C6006Fa0
0x475e492E378e37DFe97f3D1D6E54341E95Fcb7b3
0x33ef83B02C718db3ddced54c28D31aF22bfd93d9
_fallback()
def _fallback() payable: # default function
  if (call.value / 10^18) != 0:
      require call.value / 10^18
      require ((200 * (call.value / 10^18)) / (call.value / 10^18)) == 200
  if (200 * (call.value / 10^18)) != 0:
      require 200 * (call.value / 10^18)
      require ((200000 * (call.value / 10^18)) / (200 * (call.value / 10^18))) == 1000
  require (stor1 + (200000 * (call.value / 10^18))) >= stor1
  require (stor1 + (200000 * (call.value / 10^18))) <= totalSupply
  require (balanceOf[caller] + (200000 * (call.value / 10^18))) >= balanceOf[caller]
  balanceOf[caller] = balanceOf[caller] + (200000 * (call.value / 10^18))
  require (totalSupply + (200000 * (call.value / 10^18))) >= totalSupply
  totalSupply = totalSupply + (200000 * (call.value / 10^18))
  call ownerAddress.addr with:	# withdraw / default function
       gas 2300 * not call.value wei
     value call.value wei
  require ext_call.success
  require (stor1 + (200000 * (call.value / 10^18))) >= stor1
  stor1 = stor1 + (200000 * (call.value / 10^18))

0x0A2eA71d943BF917b410593194595e1f48d40e54
0x5d7517C2DCE1B9E358dDa98Bee2cf11A866eC9A2
0xdeC55815E13f8144d284ABA60696A7d03d603209
0x37512EEc5e3EE7843a1aB59ef99Fb52589037774
withdrawPayments()
def withdrawPayments() : # not payable
  payments[caller] = 0
  call caller with:	# withdraw / default function
       gas 2300 * not payments[caller] wei
     value payments[caller] wei
  if not ext_call.success:
      payments[caller] = payments[caller]

0xf77Ac34CD0eD42F2B5D8cFcF4FA0F4BB1B80b9d8
0x6846B938f9be9f1Eeeb9BFD853636C805f8f54d3
0x8E66FfE69B3F8D78F2a696e40c02f7454C0a01d9
0x95C2906DEbBb9203fF7007F26C2F00A936C77B5D
sell(uint256 _amount)
def sell(uint256 _amount) : # not payable
  require balanceOf[caller].uint256 >= _amount
  balanceOf[caller].uint256 = balanceOf[caller].uint256 - _amount
  call caller with:	# withdraw / default function
       gas 2300 * not _amount wei
     value _amount wei
  require ext_call.success
  totalSupply = totalSupply - _amount
  log 0xae92ab4b, caller, _amount

0xa8e007C7891267cfAe2b084855052F2C1013076D
0x5c2af640207c2E1CF1251bD1dA1411411704BcBD
0x1dd615A4C5FCF0641e68E515Db2556b427415c40
0xAa70aFa8C5B5a2E420D1967c4dC904e067CeA11c
finalize()
def finalize() : # not payable
  require caller == ownerAddress
  if block.timestamp < endTime:
      require coinSentToEther == 10000000000000
  if coinSentToEther < 1:
      require block.timestamp >= (endTime + 1296000)
  call multisigEtherAddress with:	# withdraw / default function
       gas 2300 * not eth.balance(this.address) wei
     value eth.balance(this.address) wei
  require ext_call.success
  require ext_code.size(coinAddress)
  call coinAddress.balanceOf(address) with:
       gas gas_remaining - 710 wei
      args addr(this.address)
  require ext_call.success
  require ext_code.size(coinAddress)
  call coinAddress.burn(uint256) with:
       gas gas_remaining - 710 wei
      args ext_call.return_data[-32 + RETURNDATASIZE len 32]
  require ext_call.success
  require ext_call.return_data
  stor8.0.uint256 = True or (stor8.8 << 248)

0x3cb9d2D739ea2b1B0f9878eC6D734f67C83AC8ab
0x51f9e287687508f019B6b84C8413c106000e6848
0xc179CcB5C0495B6b7DB487110Ec26BB5eb1f356b
0x266E21d7Af740AD1641a80F593313D0f713CE550
withdrawl()
def withdrawl() : # not payable
  require caller == ownerAddress
  unknown74064bb8 = 0
  call caller with:	# withdraw / default function
       gas 2300 * not unknown74064bb8 wei
     value unknown74064bb8 wei
  if ext_call.success:
      return True
  unknown74064bb8 = unknown74064bb8
  return False

0xC5e0572D77f2cc0AE161da5E20f736C510d080c5
0x6EAB27E83143e84035A3d3E14A22c95eb0463Dfc
0xa33f2333FeF94297216bfB32ED37A5d9EA3c1822
0x82F2984EdC9A56467dA04eCb5ea040fCa7880131
safeWithdrawal()
def safeWithdrawal() : # not payable
  if block.timestamp >= deadline:
      if not stor8.0:
          balanceOf[caller] = 0
          call caller with:	# withdraw / default function
               gas 2300 * not balanceOf[caller] wei
             value balanceOf[caller] wei
          if not ext_call.success:
              balanceOf[caller] = balanceOf[caller]
          else:
              log 0xe842aea7, caller, balanceOf[caller], 0
          if not stor8.0:
      if beneficiaryAddress != caller:
      call beneficiaryAddress with:	# withdraw / default function
           gas 2300 * not amountRaised wei
         value amountRaised wei
      if not ext_call.success:
          stor8.0 = 0
      log 0xe842aea7, beneficiaryAddress, amountRaised, 0

0xA22699668370e409de77976623c75AC3C0B8Dfc0
0x950b6B04D4822492223694F64AddF085fDcABD56
0x950b6B04D4822492223694F64AddF085fDcABD56
0x950b6B04D4822492223694F64AddF085fDcABD56
buyMorties()
def buyMorties() payable: 
  require stor6.0
  require call.value <= eth.balance(this.address)
  if not stor4:
      if not stor5:
          require call.value
          require ((0 / call.value) + stor5) >= stor5
          require (0 / call.value) + stor5
          if not (0 / ((0 / call.value) + stor5)):
              require 0 <= (0 / ((0 / call.value) + stor5))
              if not call.value:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ((0 / ((0 / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
              claimedmorties[caller] = (0 / ((0 / call.value) + stor5)) + claimedmorties[caller]
          else:
              require ((4 * (0 / ((0 / call.value) + stor5))) / (0 / ((0 / call.value) + stor5))) == 4
              require ((4 * (0 / ((0 / call.value) + stor5))) / 100) <= (0 / ((0 / call.value) + stor5))
              if not call.value:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ((0 / ((0 / call.value) + stor5)) - ((4 * (0 / ((0 / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
              claimedmorties[caller] = (0 / ((0 / call.value) + stor5)) - ((4 * (0 / ((0 / call.value) + stor5))) / 100) + claimedmorties[caller]
      else:
          require ((call.value * stor5) / stor5) == call.value
          require call.value
          require (((call.value * stor5) / call.value) + stor5) >= stor5
          require ((call.value * stor5) / call.value) + stor5
          if not (0 / (((call.value * stor5) / call.value) + stor5)):
              require 0 <= (0 / (((call.value * stor5) / call.value) + stor5))
              if not call.value:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ((0 / (((call.value * stor5) / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
              claimedmorties[caller] = (0 / (((call.value * stor5) / call.value) + stor5)) + claimedmorties[caller]
          else:
              require ((4 * (0 / (((call.value * stor5) / call.value) + stor5))) / (0 / (((call.value * stor5) / call.value) + stor5))) == 4
              require ((4 * (0 / (((call.value * stor5) / call.value) + stor5))) / 100) <= (0 / (((call.value * stor5) / call.value) + stor5))
              if not call.value:
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * True wei
              else:
                  require ((4 * call.value) / call.value) == 4
                  call ceoAddress.addr with:	# withdraw / default function
                       gas 2300 * not ((4 * call.value) / 100) wei
                     value (4 * call.value) / 100 wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              require ((0 / (((call.value * stor5) / call.value) + stor5)) - ((4 * (0 / (((call.value * stor5) / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
              claimedmorties[caller] = (0 / (((call.value * stor5) / call.value) + stor5)) - ((4 * (0 / (((call.value * stor5) / call.value) + stor5))) / 100) + claimedmorties[caller]
  else:
      require ((marketmorties * stor4) / stor4) == marketmorties
      if not stor4:
          if not stor5:
              require call.value
              require ((0 / call.value) + stor5) >= stor5
              require (0 / call.value) + stor5
              if not ((marketmorties * stor4) / ((0 / call.value) + stor5)):
                  require 0 <= ((marketmorties * stor4) / ((0 / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((0 / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((0 / call.value) + stor5)) + claimedmorties[caller]
              else:
                  require ((4 * ((marketmorties * stor4) / ((0 / call.value) + stor5))) / ((marketmorties * stor4) / ((0 / call.value) + stor5))) == 4
                  require ((4 * ((marketmorties * stor4) / ((0 / call.value) + stor5))) / 100) <= ((marketmorties * stor4) / ((0 / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((0 / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((0 / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((0 / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((0 / call.value) + stor5))) / 100) + claimedmorties[caller]
          else:
              require ((call.value * stor5) / stor5) == call.value
              require call.value
              require (((call.value * stor5) / call.value) + stor5) >= stor5
              require ((call.value * stor5) / call.value) + stor5
              if not ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5)):
                  require 0 <= ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5)) + claimedmorties[caller]
              else:
                  require ((4 * ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))) / ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))) == 4
                  require ((4 * ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))) / 100) <= ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / (((call.value * stor5) / call.value) + stor5))) / 100) + claimedmorties[caller]
      else:
          require (((eth.balance(this.address) * stor4) - (call.value * stor4)) / stor4) == (eth.balance(this.address) - call.value)
          if not stor5:
              require call.value
              require ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5) >= stor5
              require (((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5
              if not ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)):
                  require 0 <= ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) + claimedmorties[caller]
              else:
                  require ((4 * ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) == 4
                  require ((4 * ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) <= ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((((eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) + claimedmorties[caller]
          else:
              require ((call.value * stor5) / stor5) == call.value
              require ((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) >= ((eth.balance(this.address) * stor4) - (call.value * stor4))
              require call.value
              require ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5) >= stor5
              require (((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5
              if not ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)):
                  require 0 <= ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) + claimedmorties[caller]
              else:
                  require ((4 * ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) == 4
                  require ((4 * ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) <= ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))
                  if not call.value:
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * True wei
                  else:
                      require ((4 * call.value) / call.value) == 4
                      call ceoAddress.addr with:	# withdraw / default function
                           gas 2300 * not ((4 * call.value) / 100) wei
                         value (4 * call.value) / 100 wei
                  if not ext_call.success:
                      revert with ext_call.return_data[0 len RETURNDATASIZE]
                  require (((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) + claimedmorties[caller]) >= claimedmorties[caller]
                  claimedmorties[caller] = ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5)) - ((4 * ((marketmorties * stor4) / ((((call.value * stor5) + (eth.balance(this.address) * stor4) - (call.value * stor4)) / call.value) + stor5))) / 100) + claimedmorties[caller]

0x3523Ee7CA22F56EfdA09928c4D664C5fe0e010A5
0xe4537dF9E1735E69965c65132a29125240100E30
0x7294Bc223f020A8213e75cB292aFc866d4adAA66
0x017B6c08C00e362256E992fdB967238099E2C3a3
unknown829bc4c5(?)
def unknown829bc4c5(?) : # not payable
  if block.timestamp >= deadline:
      if stor13.0:
      stor1[caller].256.uint256 = 0
      stor1[caller].512 = 0
      call caller with:	# withdraw / default function
           gas 2300 * not stor1[caller].256.uint256 wei
         value stor1[caller].256.uint256 wei
      if ext_call.success:
          log 0xe842aea7, caller, stor1[caller].0.uint256, False
      stor1[caller].256.uint256 = stor1[caller].256.uint256
      stor1[caller].512 = stor1[caller].512
      log WithdrawFailed(address,uint256,bool), beneficiaryAddress, amountRaised, False

0xb6F6f6F47e92E517876D30C04198F45A3bC1B281
0x57684f9059AfBF7BB11b07263500292aC9D78e7B
0x611aE0Be21A9c0AB284A4A68c8C44843330072a7
0x062e659a3C8991bc1739E72c68EDB9ac7b5a8ca7
Play(uint8 _bet)
def Play(uint8 _bet) payable: 
  require caller == msg.origin
  if result.uint8 == uint8(_bet):
      if call.value > 1000000000000000:
          if not stor0.8.uint8:
              call caller with:	# withdraw / default function
                   gas 2300 * not eth.balance(this.address) wei
                 value eth.balance(this.address) wei
              if not ext_call.success:
                  revert with ext_call.return_data[0 len RETURNDATASIZE]
              stor0.8.248 = Mask(248, 0, True)

0xB4959bcC38F34DDB9cFD95d4935b18AFd5bB4817
0x2268003d92FF03Be6ca6dA029F8D8127FD2F617e
0x0A71a23873bD88E42E5c7E404b61e97878b39142
0x0BB622A8C564BDc98e8F40F23e5077CD4a8699Ea
buyLong(address[2] _sellerShort, uint256[5] _amountNonceExpiryDM, uint8 _v, bytes32[3] _hashRS)
def buyLong(address[2] _sellerShort, uint256[5] _amountNonceExpiryDM, uint8 _v, bytes32[3] _hashRS) payable: 
  signer = erecover(sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_sellerShort), _v, _hashRS, cd[132])), uint8(cd[228]), cd[292], cd[324]) # precompiled
  require erecover.result
  require addr(signer) == addr(_amountNonceExpiryDM)
  require block.number > cd[164]
  require cd[132] <= cd[196]
  require block.number <= (cd[196] - cd[132])
  require _v == call.value
  call addr(_sellerShort).(Mask(32, 224, sha3(0x19457468657265756d205369676e6564204d6573736167653a0a3300000000, sha3(addr(_sellerShort), _v, _hashRS, cd[132]))) >> 224) with:
       gas 2300 * not _v wei
     value _v wei
  require ext_call.success
  returnCoupon[caller, (sha3(cd[260], sha3(addr(_amountNonceExpiryDM), 1)) + 4)].uint256 = returnCoupon[(sha3(cd[260], sha3(addr(_amountNonceExpiryDM), 1)) + 4), addr(_sellerShort)].uint256
  returnCoupon[(sha3(cd[260], sha3(addr(_amountNonceExpiryDM), 1)) + 4), addr(_sellerShort)].uint256 = 0
  log LongBought(address[2],uint256[5],uint8,bytes32[3],uint256), calldata[-60 + CALLDATASIZE len 60], calldata[-92 + CALLDATASIZE len 92], uint8(cd[228]), _v

0x6aB1453ae2CDfB7524DEcFC71bC9105Bf2a58d5A
0x86b784AEF0e9c9A581550bA07fb85B64c780c320
0x5a50C7D96fC68ea2F0bEE06D86CD971c31F85604
0x652925633dbE6d274A3cF3d762ee920E2170c041
buyTokens(uint64 _buyerId, uint256 _maxAmount, uint8 _v, bytes32 _r, bytes32 _s)
def buyTokens(uint64 _buyerId, uint256 _maxAmount, uint8 _v, bytes32 _r, bytes32 _s) payable: 
  hash = sha256hash(Mask(232, 24, Eidoo icoengine authorization), 0, caller, uint64(_buyerId), _maxAmount)