ETH Price: $2,713.97 (+2.99%)

Transaction Decoder

Block:
8662706 at Oct-02-2019 11:55:13 AM +UTC
Transaction Fee:
0.00117743664 ETH $3.20
Gas Used:
1,930,224 Gas / 0.61 Gwei

Emitted Events:

53 DCS.Distr( to=0x238f3b575fed6e7f16CDdD1F39F5f734576fAc64, amount=1000000000000 )
54 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x238f3b575fed6e7f16CDdD1F39F5f734576fAc64, _value=1000000000000 )
55 DCS.Transfer( _from=0x238f3b575fed6e7f16CDdD1F39F5f734576fAc64, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
56 DCS.Distr( to=0x405a0E90a9106cf6009A20CD8142587aF44541b6, amount=1000000000000 )
57 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x405a0E90a9106cf6009A20CD8142587aF44541b6, _value=1000000000000 )
58 DCS.Transfer( _from=0x405a0E90a9106cf6009A20CD8142587aF44541b6, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
59 DCS.Distr( to=0xd8939Bd26aCEbBb454b837C8dB1155A997F6fA01, amount=1000000000000 )
60 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xd8939Bd26aCEbBb454b837C8dB1155A997F6fA01, _value=1000000000000 )
61 DCS.Transfer( _from=0xd8939Bd26aCEbBb454b837C8dB1155A997F6fA01, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
62 DCS.Distr( to=0x4388602672a6CBCD31B0A5830fF63890A52582a9, amount=1000000000000 )
63 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x4388602672a6CBCD31B0A5830fF63890A52582a9, _value=1000000000000 )
64 DCS.Transfer( _from=0x4388602672a6CBCD31B0A5830fF63890A52582a9, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
65 DCS.Distr( to=0xf059A882ac179d99f81f3A6e549df3B45f7e193F, amount=1000000000000 )
66 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xf059A882ac179d99f81f3A6e549df3B45f7e193F, _value=1000000000000 )
67 DCS.Transfer( _from=0xf059A882ac179d99f81f3A6e549df3B45f7e193F, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
68 DCS.Distr( to=0x42148361D6C706a5330dab492123F187E2D59E2d, amount=1000000000000 )
69 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x42148361D6C706a5330dab492123F187E2D59E2d, _value=1000000000000 )
70 DCS.Transfer( _from=0x42148361D6C706a5330dab492123F187E2D59E2d, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
71 DCS.Distr( to=0x2bb02F10a33DB4DD97b632f8B8d5a55F43bd7A5a, amount=1000000000000 )
72 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x2bb02F10a33DB4DD97b632f8B8d5a55F43bd7A5a, _value=1000000000000 )
73 DCS.Transfer( _from=0x2bb02F10a33DB4DD97b632f8B8d5a55F43bd7A5a, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
74 DCS.Distr( to=0x6553fEf81E6B6C3f12f6347fe9aAc3027eC266ca, amount=1000000000000 )
75 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x6553fEf81E6B6C3f12f6347fe9aAc3027eC266ca, _value=1000000000000 )
76 DCS.Transfer( _from=0x6553fEf81E6B6C3f12f6347fe9aAc3027eC266ca, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
77 DCS.Distr( to=0x97a9b03a33B63714Aac92C74eF509327FCb6bBB4, amount=1000000000000 )
78 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x97a9b03a33B63714Aac92C74eF509327FCb6bBB4, _value=1000000000000 )
79 DCS.Transfer( _from=0x97a9b03a33B63714Aac92C74eF509327FCb6bBB4, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
80 DCS.Distr( to=0xDf747bF378CC961BDC73B0EE11E97D050B73D85d, amount=1000000000000 )
81 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xDf747bF378CC961BDC73B0EE11E97D050B73D85d, _value=1000000000000 )
82 DCS.Transfer( _from=0xDf747bF378CC961BDC73B0EE11E97D050B73D85d, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
83 DCS.Distr( to=0xd2202134c3b41D243E16754e617F79d8C53DD7EA, amount=1000000000000 )
84 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xd2202134c3b41D243E16754e617F79d8C53DD7EA, _value=1000000000000 )
85 DCS.Transfer( _from=0xd2202134c3b41D243E16754e617F79d8C53DD7EA, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
86 DCS.Distr( to=0x000CcD4F02910e80C86fD408F56c82b44bCbB863, amount=1000000000000 )
87 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x000CcD4F02910e80C86fD408F56c82b44bCbB863, _value=1000000000000 )
88 DCS.Transfer( _from=0x000CcD4F02910e80C86fD408F56c82b44bCbB863, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
89 DCS.Distr( to=0x5c539eB3148985AB8a824d67ED1894Cf7437F922, amount=1000000000000 )
90 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x5c539eB3148985AB8a824d67ED1894Cf7437F922, _value=1000000000000 )
91 DCS.Transfer( _from=0x5c539eB3148985AB8a824d67ED1894Cf7437F922, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
92 DCS.Distr( to=0x320C599D3C8917277d53ECde8A51E138833bb945, amount=1000000000000 )
93 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x320C599D3C8917277d53ECde8A51E138833bb945, _value=1000000000000 )
94 DCS.Transfer( _from=0x320C599D3C8917277d53ECde8A51E138833bb945, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
95 DCS.Distr( to=0xDdF8799d9AC4Cdb8417254FCf30c8FE820f9e96d, amount=1000000000000 )
96 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xDdF8799d9AC4Cdb8417254FCf30c8FE820f9e96d, _value=1000000000000 )
97 DCS.Transfer( _from=0xDdF8799d9AC4Cdb8417254FCf30c8FE820f9e96d, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
98 DCS.Distr( to=0x768650640FA5B714CF98ECED0dB28a4B7b004964, amount=1000000000000 )
99 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x768650640FA5B714CF98ECED0dB28a4B7b004964, _value=1000000000000 )
100 DCS.Transfer( _from=0x768650640FA5B714CF98ECED0dB28a4B7b004964, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
101 DCS.Distr( to=0xc9974aC7eeb29cE2E3eac9E48407A8272F7E1A08, amount=1000000000000 )
102 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xc9974aC7eeb29cE2E3eac9E48407A8272F7E1A08, _value=1000000000000 )
103 DCS.Transfer( _from=0xc9974aC7eeb29cE2E3eac9E48407A8272F7E1A08, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
104 DCS.Distr( to=0x9729Fe228187B734E54EDC6973F1caF0e0d13710, amount=1000000000000 )
105 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x9729Fe228187B734E54EDC6973F1caF0e0d13710, _value=1000000000000 )
106 DCS.Transfer( _from=0x9729Fe228187B734E54EDC6973F1caF0e0d13710, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
107 DCS.Distr( to=0xC2E56f556812e83E0ff603266c362E55dC4037F0, amount=1000000000000 )
108 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xC2E56f556812e83E0ff603266c362E55dC4037F0, _value=1000000000000 )
109 DCS.Transfer( _from=0xC2E56f556812e83E0ff603266c362E55dC4037F0, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
110 DCS.Distr( to=0x2D62B993776cE9B12524E288D7B46090DF8e85DE, amount=1000000000000 )
111 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0x2D62B993776cE9B12524E288D7B46090DF8e85DE, _value=1000000000000 )
112 DCS.Transfer( _from=0x2D62B993776cE9B12524E288D7B46090DF8e85DE, _to=[Sender] 0x40480c7b2286c7ec2615c99f73d6db977e3041d0, _value=999999999999 )
113 DCS.Distr( to=0xA154345d0829B5296BEB882784769088e0e19404, amount=1000000000000 )
114 DCS.Transfer( _from=0x0000000000000000000000000000000000000000, _to=0xA154345d0829B5296BEB882784769088e0e19404, _value=1000000000000 )
115 DCS.Transfer( _from=0xA154345d0829B5296BEB882784769088e0e19404, _to=0x06221Dcca4C7ec37A9A0aF90EEee8f2fE1C5B47a, _value=999999999999 )

Account State Difference:

  Address   Before After State Difference Code
0x40480C7B...77E3041d0
0.0036975725276 Eth
Nonce: 39
0.0025201358876 Eth
Nonce: 40
0.00117743664
(Nanopool)
5,323.966953499381885482 Eth5,323.968130936021885482 Eth0.00117743664
0xbdeD3f75...9AfdE12B1
0xf331FF3d...62FE82757

Execution Trace

0xf331ff3d2eaf9a2009dc935816665c962fe82757.f5dd50d2( )
  • 0x238f3b575fed6e7f16cddd1f39f5f734576fac64.60806040( )
    • DCS.CALL( )
      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
      • DCS.balanceOf( _owner=0x238f3b575fed6e7f16CDdD1F39F5f734576fAc64 ) => ( 1000000000000 )
      • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
      • 0x405a0e90a9106cf6009a20cd8142587af44541b6.60806040( )
        • DCS.CALL( )
          • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
          • DCS.balanceOf( _owner=0x405a0E90a9106cf6009A20CD8142587aF44541b6 ) => ( 1000000000000 )
          • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
          • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
          • 0xd8939bd26acebbb454b837c8db1155a997f6fa01.60806040( )
            • DCS.CALL( )
              • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
              • DCS.balanceOf( _owner=0xd8939Bd26aCEbBb454b837C8dB1155A997F6fA01 ) => ( 1000000000000 )
              • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
              • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
              • 0x4388602672a6cbcd31b0a5830ff63890a52582a9.60806040( )
                • DCS.CALL( )
                  • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                  • DCS.balanceOf( _owner=0x4388602672a6CBCD31B0A5830fF63890A52582a9 ) => ( 1000000000000 )
                  • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                  • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                  • 0xf059a882ac179d99f81f3a6e549df3b45f7e193f.60806040( )
                    • DCS.CALL( )
                      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                      • DCS.balanceOf( _owner=0xf059A882ac179d99f81f3A6e549df3B45f7e193F ) => ( 1000000000000 )
                      • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                      • 0x42148361d6c706a5330dab492123f187e2d59e2d.60806040( )
                        • DCS.CALL( )
                          • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                          • DCS.balanceOf( _owner=0x42148361D6C706a5330dab492123F187E2D59E2d ) => ( 1000000000000 )
                          • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                          • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                          • 0x2bb02f10a33db4dd97b632f8b8d5a55f43bd7a5a.60806040( )
                            • DCS.CALL( )
                              • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                              • DCS.balanceOf( _owner=0x2bb02F10a33DB4DD97b632f8B8d5a55F43bd7A5a ) => ( 1000000000000 )
                              • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                              • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                              • 0x6553fef81e6b6c3f12f6347fe9aac3027ec266ca.60806040( )
                                • DCS.CALL( )
                                  • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                  • DCS.balanceOf( _owner=0x6553fEf81E6B6C3f12f6347fe9aAc3027eC266ca ) => ( 1000000000000 )
                                  • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                  • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                  • 0x97a9b03a33b63714aac92c74ef509327fcb6bbb4.60806040( )
                                    • DCS.CALL( )
                                      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                      • DCS.balanceOf( _owner=0x97a9b03a33B63714Aac92C74eF509327FCb6bBB4 ) => ( 1000000000000 )
                                      • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                      • 0xdf747bf378cc961bdc73b0ee11e97d050b73d85d.60806040( )
                                        • DCS.CALL( )
                                          • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                          • DCS.balanceOf( _owner=0xDf747bF378CC961BDC73B0EE11E97D050B73D85d ) => ( 1000000000000 )
                                          • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                          • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                          • 0xd2202134c3b41d243e16754e617f79d8c53dd7ea.60806040( )
                                            • DCS.CALL( )
                                              • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                              • DCS.balanceOf( _owner=0xd2202134c3b41D243E16754e617F79d8C53DD7EA ) => ( 1000000000000 )
                                              • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                              • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                              • 0x000ccd4f02910e80c86fd408f56c82b44bcbb863.60806040( )
                                                • DCS.CALL( )
                                                  • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                  • DCS.balanceOf( _owner=0x000CcD4F02910e80C86fD408F56c82b44bCbB863 ) => ( 1000000000000 )
                                                  • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                  • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                  • 0x5c539eb3148985ab8a824d67ed1894cf7437f922.60806040( )
                                                    • DCS.CALL( )
                                                      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                      • DCS.balanceOf( _owner=0x5c539eB3148985AB8a824d67ED1894Cf7437F922 ) => ( 1000000000000 )
                                                      • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                      • 0x320c599d3c8917277d53ecde8a51e138833bb945.60806040( )
                                                        • DCS.CALL( )
                                                          • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                          • DCS.balanceOf( _owner=0x320C599D3C8917277d53ECde8A51E138833bb945 ) => ( 1000000000000 )
                                                          • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                          • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                          • 0xddf8799d9ac4cdb8417254fcf30c8fe820f9e96d.60806040( )
                                                            • DCS.CALL( )
                                                              • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                              • DCS.balanceOf( _owner=0xDdF8799d9AC4Cdb8417254FCf30c8FE820f9e96d ) => ( 1000000000000 )
                                                              • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                              • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                              • 0x768650640fa5b714cf98eced0db28a4b7b004964.60806040( )
                                                                • DCS.CALL( )
                                                                  • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                  • DCS.balanceOf( _owner=0x768650640FA5B714CF98ECED0dB28a4B7b004964 ) => ( 1000000000000 )
                                                                  • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                                  • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                  • 0xc9974ac7eeb29ce2e3eac9e48407a8272f7e1a08.60806040( )
                                                                    • DCS.CALL( )
                                                                      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                      • DCS.balanceOf( _owner=0xc9974aC7eeb29cE2E3eac9E48407A8272F7E1A08 ) => ( 1000000000000 )
                                                                      • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                                      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                      • 0x9729fe228187b734e54edc6973f1caf0e0d13710.60806040( )
                                                                        • DCS.CALL( )
                                                                          • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                          • DCS.balanceOf( _owner=0x9729Fe228187B734E54EDC6973F1caF0e0d13710 ) => ( 1000000000000 )
                                                                          • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                                          • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                          • 0xc2e56f556812e83e0ff603266c362e55dc4037f0.60806040( )
                                                                            • DCS.CALL( )
                                                                              • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                              • DCS.balanceOf( _owner=0xC2E56f556812e83E0ff603266c362E55dC4037F0 ) => ( 1000000000000 )
                                                                              • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                                              • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                              • 0x2d62b993776ce9b12524e288d7b46090df8e85de.60806040( )
                                                                                • DCS.CALL( )
                                                                                  • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                                  • DCS.balanceOf( _owner=0x2D62B993776cE9B12524E288D7B46090DF8e85DE ) => ( 1000000000000 )
                                                                                  • DCS.transfer( _to=0x40480C7B2286C7eC2615C99F73D6DB977E3041d0, _amount=999999999999 ) => ( success=True )
                                                                                  • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                                  • 0xa154345d0829b5296beb882784769088e0e19404.60806040( )
                                                                                    • DCS.CALL( )
                                                                                      • 0xbcd7fd0624187248fc06c5f8d920386f8d5728bf.CALL( )
                                                                                      • DCS.balanceOf( _owner=0xA154345d0829B5296BEB882784769088e0e19404 ) => ( 1000000000000 )
                                                                                      • DCS.transfer( _to=0x06221Dcca4C7ec37A9A0aF90EEee8f2fE1C5B47a, _amount=999999999999 ) => ( success=True )
                                                                                      • 0x175e8ca2a7ad4f205688a6896daa572733e0b6e1.SELFDESTRUCT( )
                                                                                        pragma solidity ^0.4.25;
                                                                                        
                                                                                        // ----------------------------------------------------------------------------
                                                                                        // 'DCSTOKEN
                                                                                        //
                                                                                        // NAME     : DCS TOKEN
                                                                                        // Symbol   : DCS
                                                                                        // Total supply: 27,000,000,000
                                                                                        // Decimals    : 8
                                                                                        //
                                                                                        // 
                                                                                        // -----------------------------------------------------------------------------
                                                                                        
                                                                                        library SafeMath {
                                                                                            function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
                                                                                                if (a == 0) {
                                                                                                    return 0;
                                                                                                }
                                                                                                c = a * b;
                                                                                                assert(c / a == b);
                                                                                                return c;
                                                                                            }
                                                                                        
                                                                                            function div(uint256 a, uint256 b) internal pure returns (uint256) {
                                                                                                // assert(b > 0); // Solidity automatically throws when dividing by 0
                                                                                                // uint256 c = a / b;
                                                                                                // assert(a == b * c + a % b); // There is no case in which this doesn't hold
                                                                                                return a / b;
                                                                                            }
                                                                                        
                                                                                            function sub(uint256 a, uint256 b) internal pure returns (uint256) {
                                                                                                assert(b <= a);
                                                                                                return a - b;
                                                                                            }
                                                                                        
                                                                                            function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
                                                                                                c = a + b;
                                                                                                assert(c >= a);
                                                                                                return c;
                                                                                            }
                                                                                        }
                                                                                        
                                                                                        contract ForeignToken {
                                                                                            function balanceOf(address _owner) constant public returns (uint256);
                                                                                            function transfer(address _to, uint256 _value) public returns (bool);
                                                                                        }
                                                                                        
                                                                                        contract ERC20Basic {
                                                                                            uint256 public totalSupply;
                                                                                            function balanceOf(address who) public constant returns (uint256);
                                                                                            function transfer(address to, uint256 value) public returns (bool);
                                                                                            event Transfer(address indexed from, address indexed to, uint256 value);
                                                                                        }
                                                                                        
                                                                                        contract ERC20 is ERC20Basic {
                                                                                            function allowance(address owner, address spender) public constant returns (uint256);
                                                                                            function transferFrom(address from, address to, uint256 value) public returns (bool);
                                                                                            function approve(address spender, uint256 value) public returns (bool);
                                                                                            event Approval(address indexed owner, address indexed spender, uint256 value);
                                                                                        }
                                                                                        
                                                                                        contract DCS is ERC20 {
                                                                                            
                                                                                            using SafeMath for uint256;
                                                                                            address owner = msg.sender;
                                                                                        
                                                                                            mapping (address => uint256) balances;
                                                                                            mapping (address => mapping (address => uint256)) allowed;
                                                                                            mapping (address => bool) public Claimed; 
                                                                                        
                                                                                            string public constant name = "DCS TOKEN";
                                                                                            string public constant symbol = "DCS";
                                                                                            uint public constant decimals = 8;
                                                                                            uint public deadline = now + 45 * 1 days;
                                                                                            uint public round2 = now + 35 * 1 days;
                                                                                            uint public round1 = now + 30 * 1 days;
                                                                                            
                                                                                            uint256 public totalSupply = 27000000000e8;
                                                                                            uint256 public totalDistributed;
                                                                                            uint256 public constant requestMinimum = 1 ether / 200; // 0.005 Ether
                                                                                            uint256 public tokensPerEth = 12000000e8;
                                                                                            
                                                                                            uint public target0drop = 50000000;
                                                                                            uint public progress0drop = 0;
                                                                                            
                                                                                            address multisig = 0xbCd7fd0624187248fc06c5F8d920386F8d5728BF;
                                                                                        
                                                                                        
                                                                                            event Transfer(address indexed _from, address indexed _to, uint256 _value);
                                                                                            event Approval(address indexed _owner, address indexed _spender, uint256 _value);
                                                                                            
                                                                                            event Distr(address indexed to, uint256 amount);
                                                                                            event DistrFinished();
                                                                                            
                                                                                            event Airdrop(address indexed _owner, uint _amount, uint _balance);
                                                                                        
                                                                                            event TokensPerEthUpdated(uint _tokensPerEth);
                                                                                            
                                                                                            event Burn(address indexed burner, uint256 value);
                                                                                            
                                                                                            event Add(uint256 value);
                                                                                        
                                                                                            bool public distributionFinished = false;
                                                                                            
                                                                                            modifier canDistr() {
                                                                                                require(!distributionFinished);
                                                                                                _;
                                                                                            }
                                                                                            
                                                                                            modifier onlyOwner() {
                                                                                                require(msg.sender == owner);
                                                                                                _;
                                                                                            }
                                                                                            
                                                                                            constructor() public {
                                                                                                uint256 teamFund = 1000000000e8;
                                                                                                owner = msg.sender;
                                                                                                distr(owner, teamFund);
                                                                                            }
                                                                                            
                                                                                            function transferOwnership(address newOwner) onlyOwner public {
                                                                                                if (newOwner != address(0)) {
                                                                                                    owner = newOwner;
                                                                                                }
                                                                                            }
                                                                                        
                                                                                            function finishDistribution() onlyOwner canDistr public returns (bool) {
                                                                                                distributionFinished = true;
                                                                                                emit DistrFinished();
                                                                                                return true;
                                                                                            }
                                                                                            
                                                                                            function distr(address _to, uint256 _amount) canDistr private returns (bool) {
                                                                                                totalDistributed = totalDistributed.add(_amount);        
                                                                                                balances[_to] = balances[_to].add(_amount);
                                                                                                emit Distr(_to, _amount);
                                                                                                emit Transfer(address(0), _to, _amount);
                                                                                        
                                                                                                return true;
                                                                                            }
                                                                                            
                                                                                            function Distribute(address _participant, uint _amount) onlyOwner internal {
                                                                                        
                                                                                                require( _amount > 0 );      
                                                                                                require( totalDistributed < totalSupply );
                                                                                                balances[_participant] = balances[_participant].add(_amount);
                                                                                                totalDistributed = totalDistributed.add(_amount);
                                                                                        
                                                                                                if (totalDistributed >= totalSupply) {
                                                                                                    distributionFinished = true;
                                                                                                }
                                                                                                
                                                                                                emit Airdrop(_participant, _amount, balances[_participant]);
                                                                                                emit Transfer(address(0), _participant, _amount);
                                                                                            }
                                                                                            
                                                                                            function DistributeAirdrop(address _participant, uint _amount) onlyOwner external {        
                                                                                                Distribute(_participant, _amount);
                                                                                            }
                                                                                        
                                                                                            function DistributeAirdropMultiple(address[] _addresses, uint _amount) onlyOwner external {        
                                                                                                for (uint i = 0; i < _addresses.length; i++) Distribute(_addresses[i], _amount);
                                                                                            }
                                                                                        
                                                                                            function updateTokensPerEth(uint _tokensPerEth) public onlyOwner {        
                                                                                                tokensPerEth = _tokensPerEth;
                                                                                                emit TokensPerEthUpdated(_tokensPerEth);
                                                                                            }
                                                                                                   
                                                                                            function () external payable {
                                                                                                getTokens();
                                                                                             }
                                                                                        
                                                                                            function getTokens() payable canDistr  public {
                                                                                                uint256 tokens = 0;
                                                                                                uint256 bonus = 0;
                                                                                                uint256 countbonus = 0;
                                                                                                uint256 bonusCond1 = 1 ether / 2;
                                                                                                uint256 bonusCond2 = 1 ether;
                                                                                                uint256 bonusCond3 = 3 ether;
                                                                                        
                                                                                                tokens = tokensPerEth.mul(msg.value) / 1 ether;        
                                                                                                address investor = msg.sender;
                                                                                        
                                                                                                if (msg.value >= requestMinimum && now < deadline && now < round1 && now < round2) {
                                                                                                    if(msg.value >= bonusCond1 && msg.value < bonusCond2){
                                                                                                        countbonus = tokens * 10 / 100;
                                                                                                    }else if(msg.value >= bonusCond2 && msg.value < bonusCond3){
                                                                                                        countbonus = tokens * 50 / 100;
                                                                                                    }else if(msg.value >= bonusCond3){
                                                                                                        countbonus = tokens * 75 / 100;
                                                                                                    }
                                                                                                }else if(msg.value >= requestMinimum && now < deadline && now > round1 && now < round2){
                                                                                                    if(msg.value >= bonusCond2 && msg.value < bonusCond3){
                                                                                                        countbonus = tokens * 25 / 100;
                                                                                                    }else if(msg.value >= bonusCond3){
                                                                                                        countbonus = tokens * 50 / 100;
                                                                                                    }
                                                                                                }else{
                                                                                                    countbonus = 0;
                                                                                                }
                                                                                        
                                                                                                bonus = tokens + countbonus;
                                                                                                
                                                                                                if (tokens == 0) {
                                                                                                    uint256 valdrop = 10000e8;
                                                                                                    if (Claimed[investor] == false && progress0drop <= target0drop ) {
                                                                                                        distr(investor, valdrop);
                                                                                                        Claimed[investor] = true;
                                                                                                        progress0drop++;
                                                                                                    }else{
                                                                                                        require( msg.value >= requestMinimum );
                                                                                                    }
                                                                                                }else if(tokens > 0 && msg.value >= requestMinimum){
                                                                                                    if( now >= deadline && now >= round1 && now < round2){
                                                                                                        distr(investor, tokens);
                                                                                                    }else{
                                                                                                        if(msg.value >= bonusCond1){
                                                                                                            distr(investor, bonus);
                                                                                                        }else{
                                                                                                            distr(investor, tokens);
                                                                                                        }   
                                                                                                    }
                                                                                                }else{
                                                                                                    require( msg.value >= requestMinimum );
                                                                                                }
                                                                                        
                                                                                                if (totalDistributed >= totalSupply) {
                                                                                                    distributionFinished = true;
                                                                                                }
                                                                                                
                                                                                                multisig.transfer(msg.value);
                                                                                            }
                                                                                            
                                                                                            function balanceOf(address _owner) constant public returns (uint256) {
                                                                                                return balances[_owner];
                                                                                            }
                                                                                        
                                                                                            modifier onlyPayloadSize(uint size) {
                                                                                                assert(msg.data.length >= size + 4);
                                                                                                _;
                                                                                            }
                                                                                            
                                                                                            function transfer(address _to, uint256 _amount) onlyPayloadSize(2 * 32) public returns (bool success) {
                                                                                        
                                                                                                require(_to != address(0));
                                                                                                require(_amount <= balances[msg.sender]);
                                                                                                
                                                                                                balances[msg.sender] = balances[msg.sender].sub(_amount);
                                                                                                balances[_to] = balances[_to].add(_amount);
                                                                                                emit Transfer(msg.sender, _to, _amount);
                                                                                                return true;
                                                                                            }
                                                                                            
                                                                                            function transferFrom(address _from, address _to, uint256 _amount) onlyPayloadSize(3 * 32) public returns (bool success) {
                                                                                        
                                                                                                require(_to != address(0));
                                                                                                require(_amount <= balances[_from]);
                                                                                                require(_amount <= allowed[_from][msg.sender]);
                                                                                                
                                                                                                balances[_from] = balances[_from].sub(_amount);
                                                                                                allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_amount);
                                                                                                balances[_to] = balances[_to].add(_amount);
                                                                                                emit Transfer(_from, _to, _amount);
                                                                                                return true;
                                                                                            }
                                                                                            
                                                                                            function approve(address _spender, uint256 _value) public returns (bool success) {
                                                                                                if (_value != 0 && allowed[msg.sender][_spender] != 0) { return false; }
                                                                                                allowed[msg.sender][_spender] = _value;
                                                                                                emit Approval(msg.sender, _spender, _value);
                                                                                                return true;
                                                                                            }
                                                                                            
                                                                                            function allowance(address _owner, address _spender) constant public returns (uint256) {
                                                                                                return allowed[_owner][_spender];
                                                                                            }
                                                                                            
                                                                                            function getTokenBalance(address tokenAddress, address who) constant public returns (uint){
                                                                                                ForeignToken t = ForeignToken(tokenAddress);
                                                                                                uint bal = t.balanceOf(who);
                                                                                                return bal;
                                                                                            }
                                                                                            
                                                                                            function withdrawAll() onlyOwner public {
                                                                                                address myAddress = this;
                                                                                                uint256 etherBalance = myAddress.balance;
                                                                                                owner.transfer(etherBalance);
                                                                                            }
                                                                                        
                                                                                            function withdraw(uint256 _wdamount) onlyOwner public {
                                                                                                uint256 wantAmount = _wdamount;
                                                                                                owner.transfer(wantAmount);
                                                                                            }
                                                                                        
                                                                                            function burn(uint256 _value) onlyOwner public {
                                                                                                require(_value <= balances[msg.sender]);
                                                                                                address burner = msg.sender;
                                                                                                balances[burner] = balances[burner].sub(_value);
                                                                                                totalSupply = totalSupply.sub(_value);
                                                                                                totalDistributed = totalDistributed.sub(_value);
                                                                                                emit Burn(burner, _value);
                                                                                            }
                                                                                            
                                                                                            function add(uint256 _value) onlyOwner public {
                                                                                                uint256 counter = totalSupply.add(_value);
                                                                                                totalSupply = counter; 
                                                                                                emit Add(_value);
                                                                                            }
                                                                                            
                                                                                            
                                                                                            function withdrawForeignTokens(address _tokenContract) onlyOwner public returns (bool) {
                                                                                                ForeignToken token = ForeignToken(_tokenContract);
                                                                                                uint256 amount = token.balanceOf(address(this));
                                                                                                return token.transfer(owner, amount);
                                                                                            }
                                                                                        }