ETH Price: $2,385.78 (+0.10%)

Contract

0x3ffDDe70f128de8A5c8b116142d79889d6d5a551
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Transaction Hash
Method
Block
From
To
Transfer207188282024-09-10 7:49:2323 days ago1725954563IN
0x3ffDDe70...9d6d5a551
0 ETH0.000284724.83540666
Transfer203873862024-07-26 1:18:2370 days ago1721956703IN
0x3ffDDe70...9d6d5a551
0 ETH0.000133881.76228611
Approve202723332024-07-09 23:51:4786 days ago1720569107IN
0x3ffDDe70...9d6d5a551
0 ETH0.00016063.47234048
Approve202723172024-07-09 23:48:3586 days ago1720568915IN
0x3ffDDe70...9d6d5a551
0 ETH0.000187244.05346944
Transfer202310622024-07-04 5:28:4792 days ago1720070927IN
0x3ffDDe70...9d6d5a551
0 ETH0.000259073.41115419
Approve200965562024-06-15 10:20:11110 days ago1718446811IN
0x3ffDDe70...9d6d5a551
0 ETH0.000089393.68877764
Approve200265432024-06-05 15:32:23120 days ago1717601543IN
0x3ffDDe70...9d6d5a551
0 ETH0.0011275324.23923047
Approve198819272024-05-16 10:25:35140 days ago1715855135IN
0x3ffDDe70...9d6d5a551
0 ETH0.000328327.10029461
Transfer198819062024-05-16 10:21:23140 days ago1715854883IN
0x3ffDDe70...9d6d5a551
0 ETH0.000657458.65533174
Approve197135222024-04-22 21:08:35164 days ago1713820115IN
0x3ffDDe70...9d6d5a551
0 ETH0.0004702210.10874713
Transfer197117482024-04-22 15:10:47164 days ago1713798647IN
0x3ffDDe70...9d6d5a551
0 ETH0.0018504424.360746
Approve195159522024-03-26 3:30:11192 days ago1711423811IN
0x3ffDDe70...9d6d5a551
0 ETH0.0005052220.84865662
Approve193501712024-03-02 21:29:11215 days ago1709414951IN
0x3ffDDe70...9d6d5a551
0 ETH0.0012138650.09136944
Approve193457322024-03-02 6:35:47215 days ago1709361347IN
0x3ffDDe70...9d6d5a551
0 ETH0.0017090936.6939331
Approve193313662024-02-29 6:23:59218 days ago1709187839IN
0x3ffDDe70...9d6d5a551
0 ETH0.0023392150.22246741
Approve193260242024-02-28 12:27:35218 days ago1709123255IN
0x3ffDDe70...9d6d5a551
0 ETH0.0029322563.03618585
Approve193184642024-02-27 11:02:35219 days ago1709031755IN
0x3ffDDe70...9d6d5a551
0 ETH0.0017483960.07197157
Approve192196122024-02-13 14:15:11233 days ago1707833711IN
0x3ffDDe70...9d6d5a551
0 ETH0.0025721955.66911626
Approve192196012024-02-13 14:12:59233 days ago1707833579IN
0x3ffDDe70...9d6d5a551
0 ETH0.001485851.07100385
Approve192195872024-02-13 14:10:11233 days ago1707833411IN
0x3ffDDe70...9d6d5a551
0 ETH0.0015131457.52294501
Approve192195822024-02-13 14:09:11233 days ago1707833351IN
0x3ffDDe70...9d6d5a551
0 ETH0.0023396950.63732069
Approve192191412024-02-13 12:38:23233 days ago1707827903IN
0x3ffDDe70...9d6d5a551
0 ETH0.0012419726.88656532
Approve192190582024-02-13 12:21:47233 days ago1707826907IN
0x3ffDDe70...9d6d5a551
0 ETH0.0008045127.34860082
Approve192165262024-02-13 3:51:35234 days ago1707796295IN
0x3ffDDe70...9d6d5a551
0 ETH0.0014343830.79605498
Approve192165072024-02-13 3:47:23234 days ago1707796043IN
0x3ffDDe70...9d6d5a551
0 ETH0.0010768623.30624489
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
202723432024-07-09 23:53:4786 days ago1720569227
0x3ffDDe70...9d6d5a551
0.05278848 ETH
202723432024-07-09 23:53:4786 days ago1720569227
0x3ffDDe70...9d6d5a551
0.05278848 ETH
193184112024-02-27 10:51:59219 days ago1709031119
0x3ffDDe70...9d6d5a551
0.07886623 ETH
193184112024-02-27 10:51:59219 days ago1709031119
0x3ffDDe70...9d6d5a551
0.07886623 ETH
190377602024-01-19 1:55:47259 days ago1705629347
0x3ffDDe70...9d6d5a551
0.08872763 ETH
190377602024-01-19 1:55:47259 days ago1705629347
0x3ffDDe70...9d6d5a551
0.08872763 ETH
190256432024-01-17 9:14:23260 days ago1705482863
0x3ffDDe70...9d6d5a551
0.04652365 ETH
190256432024-01-17 9:14:23260 days ago1705482863
0x3ffDDe70...9d6d5a551
0.04652365 ETH
190254802024-01-17 8:41:35260 days ago1705480895
0x3ffDDe70...9d6d5a551
0.00789849 ETH
190254802024-01-17 8:41:35260 days ago1705480895
0x3ffDDe70...9d6d5a551
0.00789849 ETH
190254742024-01-17 8:40:23260 days ago1705480823
0x3ffDDe70...9d6d5a551
0.02406499 ETH
190254742024-01-17 8:40:23260 days ago1705480823
0x3ffDDe70...9d6d5a551
0.02406499 ETH
186816802023-11-30 3:16:23309 days ago1701314183
0x3ffDDe70...9d6d5a551
0.13510318 ETH
186816802023-11-30 3:16:23309 days ago1701314183
0x3ffDDe70...9d6d5a551
0.13510318 ETH
185500782023-11-11 17:08:23327 days ago1699722503
0x3ffDDe70...9d6d5a551
0.10394134 ETH
185500782023-11-11 17:08:23327 days ago1699722503
0x3ffDDe70...9d6d5a551
0.10394134 ETH
185042482023-11-05 7:13:23333 days ago1699168403
0x3ffDDe70...9d6d5a551
0.09530583 ETH
185042482023-11-05 7:13:23333 days ago1699168403
0x3ffDDe70...9d6d5a551
0.09530583 ETH
185007822023-11-04 19:33:47334 days ago1699126427
0x3ffDDe70...9d6d5a551
0.02772723 ETH
185007822023-11-04 19:33:47334 days ago1699126427
0x3ffDDe70...9d6d5a551
0.02772723 ETH
184586182023-10-29 21:48:47340 days ago1698616127
0x3ffDDe70...9d6d5a551
0.14125439 ETH
184586182023-10-29 21:48:47340 days ago1698616127
0x3ffDDe70...9d6d5a551
0.14125439 ETH
184436932023-10-27 19:40:59342 days ago1698435659
0x3ffDDe70...9d6d5a551
0.2871412 ETH
184436932023-10-27 19:40:59342 days ago1698435659
0x3ffDDe70...9d6d5a551
0.2871412 ETH
184404872023-10-27 8:55:47342 days ago1698396947
0x3ffDDe70...9d6d5a551
0.02821142 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HarryPotterOhtaniStreetFighter2CultInu

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-09
*/

/**
 
*/

/*

⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣠⣤⣴⣶⣿⣿⣿⣿⣿⣶⣤⣄⣀⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣴⣿⣿⣿⣿⣿⡿⠛⣿⣿⡿⢻⣿⡿⠿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠁⣹⣿⣟⣸⣟⣀⠠⠿⣥⣤⣾⣿⡀⠀⠈⢻⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⢻⣿⣿⡋⠀⣠⣴⣾⣿⣯⣁⠈⠻⣷⣤⡀⣉⢿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⢿⣿⣿⡆⠈⠙⠿⣿⠓⠛⠃⠀⢹⡿⢫⠾⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣻⠃⠀⠀⠀⠈⠀⠀⠀⠀⠈⠁⣻⣷⣽⣷⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⡶⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⣿⣿⠏⠌⢷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣿⣿⡥⠤⢄⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⠀⠐⠘⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣿⣿⣷⡀⠀⠀⠀⠀⢀⣴⣿⣿⠟⠸⢿⠀⢠⡇⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⣾⣿⣿⣿⣿⣿⣧⣀⣀⣠⣶⣿⣿⣿⡏⠀⠀⢸⣴⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢬⣿⣶⣦⣀⡀⢀⣀⠸⢷⡶⢦⣴⣶⣿⣷⣿⣿⣿⣿⣿⡟⠿⣿⣿⣿⣿⣿⣿⣿⢻⡇⠀⠀⣞⢿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠻⣿⣿⣿⣿⣿⣿⣾⣿⣷⣿⣶⣍⢈⢻⣿⡿⣌⠙⠻⣕⠈⠐⠌⠻⢿⣿⣿⣿⠇⢸⡇⠀⠀⣿⣷⣍⠢⣀⣀⣀⡠⡇⠀⠀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠰⠾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠷⡈⠳⣄⠈⠳⣤⡀⠀⠀⠙⣿⣿⣆⢸⡇⢀⠀⣿⣿⣿⣷⣌⢆⡑⠤⣌⣉⠁⠸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣠⣤⣿⣿⣿⣿⡿⠛⠉⠙⠻⢿⣿⣿⣶⣄⠀⠀⠀⠈⠳⣦⡈⢻⡂⡀⠀⠘⠿⣿⣿⣇⣸⣾⣿⣿⣿⣿⣿⣧⡹⣦⠘⢿⣧⡀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠐⣲⣽⣿⣿⣿⣿⣿⣿⣷⠀⠀⠀⠀⠈⠉⠙⠛⢷⣤⡀⠀⠀⠀⠘⢿⡄⠹⣮⡢⡀⠀⠈⠻⣿⣿⠉⠉⠉⠉⠙⠻⣿⣷⡸⣧⠈⢤⡑⠌⠙⠓⣾⡀⠀⠀⠀⠀⠀
⠀⠀⠀⣽⣿⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⢛⣿⣠⠀⠀⠀⠈⢷⠀⠸⡟⢌⢀⠀⠀⠈⢿⠋⠁⠀⠀⠀⠀⢼⣿⣇⠹⡄⠀⠙⠂⠸⢝⡋⢿⢆⠀⠀⠀⠀
⠀⠀⢼⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⡀⠀⠀⠀⠀⠀⢉⣿⣿⠀⠀⠀⠀⠈⠀⠀⢳⠀⠣⡠⠀⠀⢀⢳⠀⠀⠀⠀⠀⠀⢹⣿⡄⠷⠀⠀⠀⠀⢠⣵⠈⠎⢆⠀⠀⠀
⠀⠘⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣠⣾⣧⠀⠀⠀⠀⠀⣰⣿⠃⠀⠀⠀⠀⠀⠀⡄⠀⣷⡀⠱⡡⠀⠀⢀⢡⠀⠀⠀⠀⠀⠀⢿⣇⠰⠀⠀⠀⢻⡌⢿⡄⠀⠘⡆⠀⠀
⠀⢀⣴⣿⣿⣿⣿⣿⡿⠻⢿⣿⣿⣿⣿⣦⣤⣀⣤⣾⣿⣯⣤⣤⡀⠀⠀⢀⣤⣷⠀⠸⣷⠀⢣⠱⡀⠀⢃⢣⠄⠀⠀⠀⠀⣸⣿⠀⡇⠀⠀⠀⢻⣾⢷⣄⠀⣷⡀⠀
⣶⣿⣿⣿⣿⣿⣿⠋⠀⠀⠀⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠁⠀⠀⢀⣿⣿⠇⠀⠀⢿⡇⠘⣧⠰⠀⠀⢂⢧⠀⠀⠀⠙⣿⣿⠀⢸⠀⠀⠀⠀⢿⣿⣿⣇⡿⢷⡀
⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠈⣿⢿⣿⣿⣿⣿⣿⣿⣿⡿⠃⢀⣀⣴⣿⣿⠏⠀⠀⠀⢸⡇⠀⢻⢁⢡⠀⠈⠌⢆⠀⢀⣴⣿⣿⡇⠘⡀⠀⠀⠀⠘⣿⣿⣿⡇⠀⢳
⢠⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⢼⠁⠀⠘⠀⠂⢂⠀⠈⡘⣾⣿⣿⣿⣿⡇⠀⡇⠀⠀⢸⣤⣿⣿⣿⣇⠀⠈
⢸⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⣀⠀⢰⣿⡿⢿⢿⣿⣿⣿⣿⣿⣿⠟⠁⠀⠀⠀⠀⠀⠁⠀⠀⠀⡆⠘⠈⡄⠀⠰⠹⣿⣿⣿⣿⠇⠀⠃⠀⠀⢸⣿⡟⡟⠙⣿⠀⠀
⠀⣿⣿⣿⣿⣿⣷⣠⣶⠀⠀⠰⣿⣤⣿⡿⠁⠀⣾⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠃⠰⠀⠀⢁⢹⣿⣿⣿⠀⠀⢰⣤⣴⣾⣿⡇⢃⠀⠈⠀⠀
⢀⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⢀⣿⣿⡿⠁⠀⢰⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠀⠀⡇⠀⠸⠀⠆⠀⠈⡄⢻⣿⡿⠀⠀⠊⣿⣿⣿⣿⣿⠸⠀⠀⠀⠀
⢸⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⢸⣿⣿⠁⠀⡄⣾⣿⣿⣿⣿⣿⣿⡄⠀⠀⠀⠀⠀⠀⢀⣴⡇⠀⠀⡇⠀⠀⠃⠘⠀⠀⢰⠸⣿⡇⠀⠀⣤⣿⣿⣿⣿⣿⣧⣇⠀⢀⡀
⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⢸⣿⣿⣤⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣤⣄⣀⣠⣴⣿⡿⠀⠀⠀⣷⠀⠀⢸⠀⡆⠀⠀⡆⡿⠀⠀⢸⣿⣿⡿⠋⠉⢿⣿⣿⣶⣾⣇
⢻⣿⣿⣿⣿⣿⣿⣿⣷⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⣿⠀⠀⠀⡆⠡⠀⠀⣱⠇⠀⠀⣾⣿⡇⠀⠀⠀⠈⣿⣿⣿⣿⣿

HarryPotterOhtaniStreetFighter2CultInu (XLM)
https://www.hposf2ci.xyz
https://t.me/hposf2ciXLM
https://twitter.com/hposf2ciXLM

*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.20;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval (address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract HarryPotterOhtaniStreetFighter2CultInu is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    address payable private _taxWallet;
    uint256 firstBlock;

    uint256 private _initialBuyTax=25;
    uint256 private _initialSellTax=30;
    uint256 private _finalBuyTax=2;
    uint256 private _finalSellTax=2;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=35;
    uint256 private _preventSwapBefore=25;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000 * 10**_decimals;
    string private constant _name = unicode"HarryPotterOhtaniStreetFighter2CultInu";
    string private constant _symbol = unicode"XLM";
    uint256 public _maxTxAmount =   20000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 10000 * 10**_decimals;
    uint256 public _maxTaxSwap= 10000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {

        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");

                if (firstBlock + 3  > block.number) {
                    require(!isContract(to));
                }
                _buyCount++;
            }

            if (to != uniswapV2Pair && ! _isExcludedFromFee[to]) {
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function isContract(address account) private view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    function addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

    function isBot(address a) public view returns (bool){
      return bots[a];
    }

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
        firstBlock = block.number;
    }

    receive() external payable {}

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526019600755601e60085560026009556002600a556014600b556023600c556019600d555f600e556009600a6200003b919062000328565b6200004990614e206200033f565b600f556200005a6009600a62000328565b6200006890614e206200033f565b601055620000796009600a62000328565b62000087906127106200033f565b601155620000986009600a62000328565b620000a6906127106200033f565b6012556014805461ffff60a81b19169055348015620000c3575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b03191633179055620001246009600a62000328565b6200013390620f42406200033f565b335f9081526001602081905260408220929092556003906200015c5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600554909116835291208054909216179055620001ba3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001f36009600a62000328565b6200020290620f42406200033f565b60405190815260200160405180910390a362000359565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200026d57815f190482111562000251576200025162000219565b808516156200025f57918102915b93841c939080029062000232565b509250929050565b5f82620002855750600162000322565b816200029357505f62000322565b8160018114620002ac5760028114620002b757620002d7565b600191505062000322565b60ff841115620002cb57620002cb62000219565b50506001821b62000322565b5060208310610133831016604e8410600b8410161715620002fc575081810a62000322565b6200030883836200022d565b805f19048211156200031e576200031e62000219565b0290505b92915050565b5f6200033860ff84168362000275565b9392505050565b808202811582820484141762000322576200032262000219565b611a4c80620003675f395ff3fe60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb14610322578063bf474bed14610341578063c9567bf914610356578063d34628cc1461036a578063dd62ed3e14610389575f80fd5b8063751039fc146102935780637d1db4a5146102a75780638da5cb5b146102bc5780638f9a55c0146102e257806395d89b41146102f7575f80fd5b8063313ce567116100e3578063313ce567146101d857806331c2d847146101f35780633bbac5791461021457806370a082311461024b578063715018a61461027f575f80fd5b806306fdde0314610129578063095ea7b3146101535780630faee56f1461018257806318160ddd146101a557806323b872dd146101b9575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013d6103cd565b60405161014a9190611535565b60405180910390f35b34801561015e575f80fd5b5061017261016d3660046115a7565b6103ed565b604051901515815260200161014a565b34801561018d575f80fd5b5061019760125481565b60405190815260200161014a565b3480156101b0575f80fd5b50610197610403565b3480156101c4575f80fd5b506101726101d33660046115d1565b610422565b3480156101e3575f80fd5b506040516009815260200161014a565b3480156101fe575f80fd5b5061021261020d366004611623565b610489565b005b34801561021f575f80fd5b5061017261022e3660046116e3565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610256575f80fd5b506101976102653660046116e3565b6001600160a01b03165f9081526001602052604090205490565b34801561028a575f80fd5b50610212610523565b34801561029e575f80fd5b50610212610594565b3480156102b2575f80fd5b50610197600f5481565b3480156102c7575f80fd5b505f546040516001600160a01b03909116815260200161014a565b3480156102ed575f80fd5b5061019760105481565b348015610302575f80fd5b50604080518082019091526003815262584c4d60e81b602082015261013d565b34801561032d575f80fd5b5061017261033c3660046115a7565b610642565b34801561034c575f80fd5b5061019760115481565b348015610361575f80fd5b5061021261064e565b348015610375575f80fd5b50610212610384366004611623565b6109fa565b348015610394575f80fd5b506101976103a33660046116fe565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b60606040518060600160405280602681526020016119c960269139905090565b5f6103f9338484610a88565b5060015b92915050565b5f6104106009600a611829565b61041d90620f4240611837565b905090565b5f61042e848484610bab565b61047f843361047a856040518060600160405280602881526020016119ef602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111b1565b610a88565b5060019392505050565b5f546001600160a01b031633146104bb5760405162461bcd60e51b81526004016104b29061184e565b60405180910390fd5b5f5b815181101561051f575f60045f8484815181106104dc576104dc611883565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790558061051781611897565b9150506104bd565b5050565b5f546001600160a01b0316331461054c5760405162461bcd60e51b81526004016104b29061184e565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105bd5760405162461bcd60e51b81526004016104b29061184e565b6105c96009600a611829565b6105d690620f4240611837565b600f556105e56009600a611829565b6105f290620f4240611837565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106226009600a611829565b61062f90620f4240611837565b60405190815260200160405180910390a1565b5f6103f9338484610bab565b5f546001600160a01b031633146106775760405162461bcd60e51b81526004016104b29061184e565b601454600160a01b900460ff16156106d15760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104b2565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561071990309061070c6009600a611829565b61047a90620f4240611837565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610769573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078d91906118af565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ec573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061081091906118af565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561085a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087e91906118af565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108c5816001600160a01b03165f9081526001602052604090205490565b5f806108d85f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561093e573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096391906118ca565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109dc91906118f5565b506014805462ff00ff60a01b19166201000160a01b17905543600655565b5f546001600160a01b03163314610a235760405162461bcd60e51b81526004016104b29061184e565b5f5b815181101561051f57600160045f848481518110610a4557610a45611883565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610a8081611897565b915050610a25565b6001600160a01b038316610aea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104b2565b6001600160a01b038216610b4b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104b2565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c0f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b2565b6001600160a01b038216610c715760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b2565b5f8111610cd25760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b2565b5f80546001600160a01b03858116911614801590610cfd57505f546001600160a01b03848116911614155b15611074576001600160a01b0384165f9081526004602052604090205460ff16158015610d4257506001600160a01b0383165f9081526004602052604090205460ff16155b610d4a575f80fd5b610d766064610d70600b54600e5411610d6557600754610d69565b6009545b85906111e9565b9061126e565b6014549091506001600160a01b038581169116148015610da457506013546001600160a01b03848116911614155b8015610dc857506001600160a01b0383165f9081526003602052604090205460ff16155b15610ecf57600f54821115610e1f5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104b2565b60105482610e41856001600160a01b03165f9081526001602052604090205490565b610e4b9190611914565b1115610e995760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104b2565b436006546003610ea99190611914565b1115610eba57823b15610eba575f80fd5b600e8054905f610ec983611897565b91905055505b6014546001600160a01b03848116911614801590610f0557506001600160a01b0383165f9081526003602052604090205460ff16155b15610f845760105482610f2c856001600160a01b03165f9081526001602052604090205490565b610f369190611914565b1115610f845760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104b2565b6014546001600160a01b038481169116148015610faa57506001600160a01b0384163014155b15610fd757610fd46064610d70600c54600e5411610fca57600854610d69565b600a5485906111e9565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561100d57506014546001600160a01b038581169116145b80156110225750601454600160b01b900460ff165b801561102f575060115481115b801561103e5750600d54600e54115b156110725761106061105b84611056846012546112af565b6112af565b6112c3565b4780156110705761107047611433565b505b505b80156110ec57305f90815260016020526040902054611093908261146a565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e39085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461110e90836114c8565b6001600160a01b0385165f9081526001602052604090205561115161113383836114c8565b6001600160a01b0385165f908152600160205260409020549061146a565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119a85856114c8565b60405190815260200160405180910390a350505050565b5f81848411156111d45760405162461bcd60e51b81526004016104b29190611535565b505f6111e08486611927565b95945050505050565b5f825f036111f857505f6103fd565b5f6112038385611837565b905082611210858361193a565b146112675760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104b2565b9392505050565b5f61126783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611509565b5f8183116112bd5782611267565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130957611309611883565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611360573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138491906118af565b8160018151811061139757611397611883565b6001600160a01b0392831660209182029290920101526013546113bd9130911684610a88565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f59085905f90869030904290600401611959565b5f604051808303815f87803b15801561140c575f80fd5b505af115801561141e573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561051f573d5f803e3d5ffd5b5f806114768385611914565b9050838110156112675760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104b2565b5f61126783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b1565b5f81836115295760405162461bcd60e51b81526004016104b29190611535565b505f6111e0848661193a565b5f6020808352835180828501525f5b8181101561156057858101830151858201604001528201611544565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611594575f80fd5b50565b80356115a281611580565b919050565b5f80604083850312156115b8575f80fd5b82356115c381611580565b946020939093013593505050565b5f805f606084860312156115e3575f80fd5b83356115ee81611580565b925060208401356115fe81611580565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611634575f80fd5b823567ffffffffffffffff8082111561164b575f80fd5b818501915085601f83011261165e575f80fd5b8135818111156116705761167061160f565b8060051b604051601f19603f830116810181811085821117156116955761169561160f565b6040529182528482019250838101850191888311156116b2575f80fd5b938501935b828510156116d7576116c885611597565b845293850193928501926116b7565b98975050505050505050565b5f602082840312156116f3575f80fd5b813561126781611580565b5f806040838503121561170f575f80fd5b823561171a81611580565b9150602083013561172a81611580565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561178357815f190482111561176957611769611735565b8085161561177657918102915b93841c939080029061174e565b509250929050565b5f82611799575060016103fd565b816117a557505f6103fd565b81600181146117bb57600281146117c5576117e1565b60019150506103fd565b60ff8411156117d6576117d6611735565b50506001821b6103fd565b5060208310610133831016604e8410600b8410161715611804575081810a6103fd565b61180e8383611749565b805f190482111561182157611821611735565b029392505050565b5f61126760ff84168361178b565b80820281158282048414176103fd576103fd611735565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f600182016118a8576118a8611735565b5060010190565b5f602082840312156118bf575f80fd5b815161126781611580565b5f805f606084860312156118dc575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611905575f80fd5b81518015158114611267575f80fd5b808201808211156103fd576103fd611735565b818103818111156103fd576103fd611735565b5f8261195457634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156119a75784516001600160a01b031683529383019391830191600101611982565b50506001600160a01b0396909616606085015250505060800152939250505056fe4861727279506f747465724f6874616e69537472656574466967687465723243756c74496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f14517570d72a154cf62ddf324d62c3cc85bc6eeb2bb53554d94a9a38b83efe964736f6c63430008140033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb14610322578063bf474bed14610341578063c9567bf914610356578063d34628cc1461036a578063dd62ed3e14610389575f80fd5b8063751039fc146102935780637d1db4a5146102a75780638da5cb5b146102bc5780638f9a55c0146102e257806395d89b41146102f7575f80fd5b8063313ce567116100e3578063313ce567146101d857806331c2d847146101f35780633bbac5791461021457806370a082311461024b578063715018a61461027f575f80fd5b806306fdde0314610129578063095ea7b3146101535780630faee56f1461018257806318160ddd146101a557806323b872dd146101b9575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013d6103cd565b60405161014a9190611535565b60405180910390f35b34801561015e575f80fd5b5061017261016d3660046115a7565b6103ed565b604051901515815260200161014a565b34801561018d575f80fd5b5061019760125481565b60405190815260200161014a565b3480156101b0575f80fd5b50610197610403565b3480156101c4575f80fd5b506101726101d33660046115d1565b610422565b3480156101e3575f80fd5b506040516009815260200161014a565b3480156101fe575f80fd5b5061021261020d366004611623565b610489565b005b34801561021f575f80fd5b5061017261022e3660046116e3565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610256575f80fd5b506101976102653660046116e3565b6001600160a01b03165f9081526001602052604090205490565b34801561028a575f80fd5b50610212610523565b34801561029e575f80fd5b50610212610594565b3480156102b2575f80fd5b50610197600f5481565b3480156102c7575f80fd5b505f546040516001600160a01b03909116815260200161014a565b3480156102ed575f80fd5b5061019760105481565b348015610302575f80fd5b50604080518082019091526003815262584c4d60e81b602082015261013d565b34801561032d575f80fd5b5061017261033c3660046115a7565b610642565b34801561034c575f80fd5b5061019760115481565b348015610361575f80fd5b5061021261064e565b348015610375575f80fd5b50610212610384366004611623565b6109fa565b348015610394575f80fd5b506101976103a33660046116fe565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b60606040518060600160405280602681526020016119c960269139905090565b5f6103f9338484610a88565b5060015b92915050565b5f6104106009600a611829565b61041d90620f4240611837565b905090565b5f61042e848484610bab565b61047f843361047a856040518060600160405280602881526020016119ef602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111b1565b610a88565b5060019392505050565b5f546001600160a01b031633146104bb5760405162461bcd60e51b81526004016104b29061184e565b60405180910390fd5b5f5b815181101561051f575f60045f8484815181106104dc576104dc611883565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790558061051781611897565b9150506104bd565b5050565b5f546001600160a01b0316331461054c5760405162461bcd60e51b81526004016104b29061184e565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105bd5760405162461bcd60e51b81526004016104b29061184e565b6105c96009600a611829565b6105d690620f4240611837565b600f556105e56009600a611829565b6105f290620f4240611837565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106226009600a611829565b61062f90620f4240611837565b60405190815260200160405180910390a1565b5f6103f9338484610bab565b5f546001600160a01b031633146106775760405162461bcd60e51b81526004016104b29061184e565b601454600160a01b900460ff16156106d15760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104b2565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561071990309061070c6009600a611829565b61047a90620f4240611837565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610769573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078d91906118af565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ec573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061081091906118af565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561085a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087e91906118af565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108c5816001600160a01b03165f9081526001602052604090205490565b5f806108d85f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561093e573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096391906118ca565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156109b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109dc91906118f5565b506014805462ff00ff60a01b19166201000160a01b17905543600655565b5f546001600160a01b03163314610a235760405162461bcd60e51b81526004016104b29061184e565b5f5b815181101561051f57600160045f848481518110610a4557610a45611883565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610a8081611897565b915050610a25565b6001600160a01b038316610aea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104b2565b6001600160a01b038216610b4b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104b2565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c0f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b2565b6001600160a01b038216610c715760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b2565b5f8111610cd25760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b2565b5f80546001600160a01b03858116911614801590610cfd57505f546001600160a01b03848116911614155b15611074576001600160a01b0384165f9081526004602052604090205460ff16158015610d4257506001600160a01b0383165f9081526004602052604090205460ff16155b610d4a575f80fd5b610d766064610d70600b54600e5411610d6557600754610d69565b6009545b85906111e9565b9061126e565b6014549091506001600160a01b038581169116148015610da457506013546001600160a01b03848116911614155b8015610dc857506001600160a01b0383165f9081526003602052604090205460ff16155b15610ecf57600f54821115610e1f5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104b2565b60105482610e41856001600160a01b03165f9081526001602052604090205490565b610e4b9190611914565b1115610e995760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104b2565b436006546003610ea99190611914565b1115610eba57823b15610eba575f80fd5b600e8054905f610ec983611897565b91905055505b6014546001600160a01b03848116911614801590610f0557506001600160a01b0383165f9081526003602052604090205460ff16155b15610f845760105482610f2c856001600160a01b03165f9081526001602052604090205490565b610f369190611914565b1115610f845760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104b2565b6014546001600160a01b038481169116148015610faa57506001600160a01b0384163014155b15610fd757610fd46064610d70600c54600e5411610fca57600854610d69565b600a5485906111e9565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561100d57506014546001600160a01b038581169116145b80156110225750601454600160b01b900460ff165b801561102f575060115481115b801561103e5750600d54600e54115b156110725761106061105b84611056846012546112af565b6112af565b6112c3565b4780156110705761107047611433565b505b505b80156110ec57305f90815260016020526040902054611093908261146a565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e39085815260200190565b60405180910390a35b6001600160a01b0384165f9081526001602052604090205461110e90836114c8565b6001600160a01b0385165f9081526001602052604090205561115161113383836114c8565b6001600160a01b0385165f908152600160205260409020549061146a565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61119a85856114c8565b60405190815260200160405180910390a350505050565b5f81848411156111d45760405162461bcd60e51b81526004016104b29190611535565b505f6111e08486611927565b95945050505050565b5f825f036111f857505f6103fd565b5f6112038385611837565b905082611210858361193a565b146112675760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104b2565b9392505050565b5f61126783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611509565b5f8183116112bd5782611267565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130957611309611883565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611360573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138491906118af565b8160018151811061139757611397611883565b6001600160a01b0392831660209182029290920101526013546113bd9130911684610a88565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f59085905f90869030904290600401611959565b5f604051808303815f87803b15801561140c575f80fd5b505af115801561141e573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561051f573d5f803e3d5ffd5b5f806114768385611914565b9050838110156112675760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104b2565b5f61126783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111b1565b5f81836115295760405162461bcd60e51b81526004016104b29190611535565b505f6111e0848661193a565b5f6020808352835180828501525f5b8181101561156057858101830151858201604001528201611544565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611594575f80fd5b50565b80356115a281611580565b919050565b5f80604083850312156115b8575f80fd5b82356115c381611580565b946020939093013593505050565b5f805f606084860312156115e3575f80fd5b83356115ee81611580565b925060208401356115fe81611580565b929592945050506040919091013590565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611634575f80fd5b823567ffffffffffffffff8082111561164b575f80fd5b818501915085601f83011261165e575f80fd5b8135818111156116705761167061160f565b8060051b604051601f19603f830116810181811085821117156116955761169561160f565b6040529182528482019250838101850191888311156116b2575f80fd5b938501935b828510156116d7576116c885611597565b845293850193928501926116b7565b98975050505050505050565b5f602082840312156116f3575f80fd5b813561126781611580565b5f806040838503121561170f575f80fd5b823561171a81611580565b9150602083013561172a81611580565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561178357815f190482111561176957611769611735565b8085161561177657918102915b93841c939080029061174e565b509250929050565b5f82611799575060016103fd565b816117a557505f6103fd565b81600181146117bb57600281146117c5576117e1565b60019150506103fd565b60ff8411156117d6576117d6611735565b50506001821b6103fd565b5060208310610133831016604e8410600b8410161715611804575081810a6103fd565b61180e8383611749565b805f190482111561182157611821611735565b029392505050565b5f61126760ff84168361178b565b80820281158282048414176103fd576103fd611735565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f600182016118a8576118a8611735565b5060010190565b5f602082840312156118bf575f80fd5b815161126781611580565b5f805f606084860312156118dc575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611905575f80fd5b81518015158114611267575f80fd5b808201808211156103fd576103fd611735565b818103818111156103fd576103fd611735565b5f8261195457634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156119a75784516001600160a01b031683529383019391830191600101611982565b50506001600160a01b0396909616606085015250505060800152939250505056fe4861727279506f747465724f6874616e69537472656574466967687465723243756c74496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f14517570d72a154cf62ddf324d62c3cc85bc6eeb2bb53554d94a9a38b83efe964736f6c63430008140033

Deployed Bytecode Sourcemap

8918:8042:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10807:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11640:161;;;;;;;;;;-1:-1:-1;11640:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;11640:161:0;1162:187:1;10083:49:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;10083:49:0;1354:177:1;11084:95:0;;;;;;;;;;;;;:::i;11809:313::-;;;;;;;;;;-1:-1:-1;11809:313:0;;;;;:::i;:::-;;:::i;10993:83::-;;;;;;;;;;-1:-1:-1;10993:83:0;;9689:1;2139:36:1;;2127:2;2112:18;10993:83:0;1997:184:1;15950:162:0;;;;;;;;;;-1:-1:-1;15950:162:0;;;;;:::i;:::-;;:::i;:::-;;16120:83;;;;;;;;;;-1:-1:-1;16120:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;16188:7:0;16167:4;16188:7;;;:4;:7;;;;;;;;;16120:83;11187:119;;;;;;;;;;-1:-1:-1;11187:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;11280:18:0;11253:7;11280:18;;;:9;:18;;;;;;;11187:119;7999:148;;;;;;;;;;;;;:::i;15511:159::-;;;;;;;;;;;;;:::i;9901:53::-;;;;;;;;;;;;;;;;7785:79;;;;;;;;;;-1:-1:-1;7823:7:0;7850:6;7785:79;;-1:-1:-1;;;;;7850:6:0;;;3842:51:1;;3830:2;3815:18;7785:79:0;3696:203:1;9961:53:0;;;;;;;;;;;;;;;;10898:87;;;;;;;;;;-1:-1:-1;10970:7:0;;;;;;;;;;;;-1:-1:-1;;;10970:7:0;;;;10898:87;;11314:167;;;;;;;;;;-1:-1:-1;11314:167:0;;;;;:::i;:::-;;:::i;10021:55::-;;;;;;;;;;;;;;;;16211:707;;;;;;;;;;;;;:::i;15778:164::-;;;;;;;;;;-1:-1:-1;15778:164:0;;;;;:::i;:::-;;:::i;11489:143::-;;;;;;;;;;-1:-1:-1;11489:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;11597:18:0;;;11570:7;11597:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11489:143;10807:83;10844:13;10877:5;;;;;;;;;;;;;;;;;10870:12;;10807:83;:::o;11640:161::-;11715:4;11732:39;5619:10;11755:7;11764:6;11732:8;:39::i;:::-;-1:-1:-1;11789:4:0;11640:161;;;;;:::o;11084:95::-;11137:7;9742:13;9689:1;9742:2;:13;:::i;:::-;9732:23;;:7;:23;:::i;:::-;11157:14;;11084:95;:::o;11809:313::-;11907:4;11924:36;11934:6;11942:9;11953:6;11924:9;:36::i;:::-;11971:121;11980:6;5619:10;12002:89;12040:6;12002:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12002:19:0;;;;;;:11;:19;;;;;;;;5619:10;12002:33;;;;;;;;;;:37;:89::i;:::-;11971:8;:121::i;:::-;-1:-1:-1;12110:4:0;11809:313;;;;;:::o;15950:162::-;7912:6;;-1:-1:-1;;;;;7912:6:0;5619:10;7912:22;7904:67;;;;-1:-1:-1;;;7904:67:0;;;;;;;:::i;:::-;;;;;;;;;16023:6:::1;16018:87;16039:6;:13;16035:1;:17;16018:87;;;16090:5;16072:4;:15;16077:6;16084:1;16077:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;16072:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;16072:15:0;:23;;-1:-1:-1;;16072:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;16054:3;::::1;::::0;::::1;:::i;:::-;;;;16018:87;;;;15950:162:::0;:::o;7999:148::-;7912:6;;-1:-1:-1;;;;;7912:6:0;5619:10;7912:22;7904:67;;;;-1:-1:-1;;;7904:67:0;;;;;;;:::i;:::-;8106:1:::1;8090:6:::0;;8069:40:::1;::::0;-1:-1:-1;;;;;8090:6:0;;::::1;::::0;8069:40:::1;::::0;8106:1;;8069:40:::1;8137:1;8120:19:::0;;-1:-1:-1;;;;;;8120:19:0::1;::::0;;7999:148::o;15511:159::-;7912:6;;-1:-1:-1;;;;;7912:6:0;5619:10;7912:22;7904:67;;;;-1:-1:-1;;;7904:67:0;;;;;;;:::i;:::-;9742:13:::1;9689:1;9742:2;:13;:::i;:::-;9732:23;::::0;:7:::1;:23;:::i;:::-;15564:12;:22:::0;9742:13:::1;9689:1;9742:2;:13;:::i;:::-;9732:23;::::0;:7:::1;:23;:::i;:::-;15597:14;:22:::0;15635:27:::1;9742:13;9689:1;9742:2;:13;:::i;:::-;9732:23;::::0;:7:::1;:23;:::i;:::-;15635:27;::::0;1500:25:1;;;1488:2;1473:18;15635:27:0::1;;;;;;;15511:159::o:0;11314:167::-;11392:4;11409:42;5619:10;11433:9;11444:6;11409:9;:42::i;16211:707::-;7912:6;;-1:-1:-1;;;;;7912:6:0;5619:10;7912:22;7904:67;;;;-1:-1:-1;;;7904:67:0;;;;;;;:::i;:::-;16275:11:::1;::::0;-1:-1:-1;;;16275:11:0;::::1;;;16274:12;16266:47;;;::::0;-1:-1:-1;;;16266:47:0;;6820:2:1;16266:47:0::1;::::0;::::1;6802:21:1::0;6859:2;6839:18;;;6832:30;6898:25;6878:18;;;6871:53;6941:18;;16266:47:0::1;6618:347:1::0;16266:47:0::1;16324:15;:80:::0;;-1:-1:-1;;;;;;16324:80:0::1;16361:42;16324:80:::0;;::::1;::::0;;;16415:58:::1;::::0;16432:4:::1;::::0;9742:13:::1;9689:1;9742:2;:13;:::i;:::-;9732:23;::::0;:7:::1;:23;:::i;16415:58::-;16518:15;;;;;;;;;-1:-1:-1::0;;;;;16518:15:0::1;-1:-1:-1::0;;;;;16518:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16500:55:0::1;;16564:4;16571:15;;;;;;;;;-1:-1:-1::0;;;;;16571:15:0::1;-1:-1:-1::0;;;;;16571:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16500:94;::::0;-1:-1:-1;;;;;;16500:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7456:15:1;;;16500:94:0::1;::::0;::::1;7438:34:1::0;7508:15;;7488:18;;;7481:43;7373:18;;16500:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16484:13;:110:::0;;-1:-1:-1;;;;;16484:110:0;;::::1;-1:-1:-1::0;;;;;;16484:110:0;;::::1;;::::0;;16605:15:::1;::::0;::::1;:31;16644:21;16675:4;16681:24;16675:4:::0;-1:-1:-1;;;;;11280:18:0;11253:7;11280:18;;;:9;:18;;;;;;;11187:119;16681:24:::1;16706:1;16708::::0;16710:7:::1;7823::::0;7850:6;-1:-1:-1;;;;;7850:6:0;;7785:79;16710:7:::1;16605:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;16605:129:0;;;-1:-1:-1;;;;;7894:15:1;;;16605:129:0::1;::::0;::::1;7876:34:1::0;7926:18;;;7919:34;;;;7969:18;;;7962:34;;;;8012:18;;;8005:34;8076:15;;;8055:19;;;8048:44;16718:15:0::1;8108:19:1::0;;;8101:35;7810:19;;16605:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;16752:13:0::1;::::0;16783:15:::1;::::0;16745:71:::1;::::0;-1:-1:-1;;;16745:71:0;;-1:-1:-1;;;;;16783:15:0;;::::1;16745:71;::::0;::::1;8632:51:1::0;-1:-1:-1;;8699:18:1;;;8692:34;16752:13:0;::::1;::::0;-1:-1:-1;16745:29:0::1;::::0;8605:18:1;;16745:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;16827:11:0::1;:18:::0;;-1:-1:-1;;;;16856:18:0;-1:-1:-1;;;16856:18:0;;;16898:12:::1;16885:10;:25:::0;16211:707::o;15778:164::-;7912:6;;-1:-1:-1;;;;;7912:6:0;5619:10;7912:22;7904:67;;;;-1:-1:-1;;;7904:67:0;;;;;;;:::i;:::-;15852:6:::1;15847:88;15868:5;:12;15864:1;:16;15847:88;;;15919:4;15902;:14;15907:5;15913:1;15907:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;15902:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;15902:14:0;:21;;-1:-1:-1;;15902:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15882:3;::::1;::::0;::::1;:::i;:::-;;;;15847:88;;12130:335:::0;-1:-1:-1;;;;;12223:19:0;;12215:68;;;;-1:-1:-1;;;12215:68:0;;9221:2:1;12215:68:0;;;9203:21:1;9260:2;9240:18;;;9233:30;9299:34;9279:18;;;9272:62;-1:-1:-1;;;9350:18:1;;;9343:34;9394:19;;12215:68:0;9019:400:1;12215:68:0;-1:-1:-1;;;;;12302:21:0;;12294:68;;;;-1:-1:-1;;;12294:68:0;;9626:2:1;12294:68:0;;;9608:21:1;9665:2;9645:18;;;9638:30;9704:34;9684:18;;;9677:62;-1:-1:-1;;;9755:18:1;;;9748:32;9797:19;;12294:68:0;9424:398:1;12294:68:0;-1:-1:-1;;;;;12373:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12425:32;;1500:25:1;;;12425:32:0;;1473:18:1;12425:32:0;;;;;;;12130:335;;;:::o;12473:2228::-;-1:-1:-1;;;;;12561:18:0;;12553:68;;;;-1:-1:-1;;;12553:68:0;;10029:2:1;12553:68:0;;;10011:21:1;10068:2;10048:18;;;10041:30;10107:34;10087:18;;;10080:62;-1:-1:-1;;;10158:18:1;;;10151:35;10203:19;;12553:68:0;9827:401:1;12553:68:0;-1:-1:-1;;;;;12640:16:0;;12632:64;;;;-1:-1:-1;;;12632:64:0;;10435:2:1;12632:64:0;;;10417:21:1;10474:2;10454:18;;;10447:30;10513:34;10493:18;;;10486:62;-1:-1:-1;;;10564:18:1;;;10557:33;10607:19;;12632:64:0;10233:399:1;12632:64:0;12724:1;12715:6;:10;12707:64;;;;-1:-1:-1;;;12707:64:0;;10839:2:1;12707:64:0;;;10821:21:1;10878:2;10858:18;;;10851:30;10917:34;10897:18;;;10890:62;-1:-1:-1;;;10968:18:1;;;10961:39;11017:19;;12707:64:0;10637:405:1;12707:64:0;12782:17;7850:6;;-1:-1:-1;;;;;12816:15:0;;;7850:6;;12816:15;;;;:32;;-1:-1:-1;7823:7:0;7850:6;-1:-1:-1;;;;;12835:13:0;;;7850:6;;12835:13;;12816:32;12812:1533;;;-1:-1:-1;;;;;12874:10:0;;;;;;:4;:10;;;;;;;;12873:11;:24;;;;-1:-1:-1;;;;;;12889:8:0;;;;;;:4;:8;;;;;;;;12888:9;12873:24;12865:33;;;;;;12925:76;12997:3;12925:67;12947:15;;12937:9;;:25;12936:55;;12977:14;;12936:55;;;12964:12;;12936:55;12925:6;;:10;:67::i;:::-;:71;;:76::i;:::-;13030:13;;12913:88;;-1:-1:-1;;;;;;13022:21:0;;;13030:13;;13022:21;:55;;;;-1:-1:-1;13061:15:0;;-1:-1:-1;;;;;13047:30:0;;;13061:15;;13047:30;;13022:55;:83;;;;-1:-1:-1;;;;;;13083:22:0;;;;;;:18;:22;;;;;;;;13081:24;13022:83;13018:436;;;13145:12;;13135:6;:22;;13127:60;;;;-1:-1:-1;;;13127:60:0;;11249:2:1;13127:60:0;;;11231:21:1;11288:2;11268:18;;;11261:30;11327:27;11307:18;;;11300:55;11372:18;;13127:60:0;11047:349:1;13127:60:0;13240:14;;13230:6;13214:13;13224:2;-1:-1:-1;;;;;11280:18:0;11253:7;11280:18;;;:9;:18;;;;;;;11187:119;13214:13;:22;;;;:::i;:::-;:40;;13206:79;;;;-1:-1:-1;;;13206:79:0;;11733:2:1;13206:79:0;;;11715:21:1;11772:2;11752:18;;;11745:30;11811:28;11791:18;;;11784:56;11857:18;;13206:79:0;11531:350:1;13206:79:0;13328:12;13310:10;;13323:1;13310:14;;;;:::i;:::-;:30;13306:103;;;14948:20;;14996:8;13365:24;;;;;;13427:9;:11;;;:9;:11;;;:::i;:::-;;;;;;13018:436;13480:13;;-1:-1:-1;;;;;13474:19:0;;;13480:13;;13474:19;;;;:47;;-1:-1:-1;;;;;;13499:22:0;;;;;;:18;:22;;;;;;;;13497:24;13474:47;13470:167;;;13576:14;;13566:6;13550:13;13560:2;-1:-1:-1;;;;;11280:18:0;11253:7;11280:18;;;:9;:18;;;;;;;11187:119;13550:13;:22;;;;:::i;:::-;:40;;13542:79;;;;-1:-1:-1;;;13542:79:0;;11733:2:1;13542:79:0;;;11715:21:1;11772:2;11752:18;;;11745:30;11811:28;11791:18;;;11784:56;11857:18;;13542:79:0;11531:350:1;13542:79:0;13662:13;;-1:-1:-1;;;;;13656:19:0;;;13662:13;;13656:19;:43;;;;-1:-1:-1;;;;;;13679:20:0;;13694:4;13679:20;;13656:43;13653:174;;;13732:79;13807:3;13732:70;13754:16;;13744:9;;:26;13743:58;;13786:15;;13743:58;;;13772:13;;13732:6;;:10;:70::i;:79::-;13720:91;;13653:174;13892:4;13843:28;11280:18;;;:9;:18;;;;;;13918:6;;-1:-1:-1;;;13918:6:0;;;;13917:7;:32;;;;-1:-1:-1;13936:13:0;;-1:-1:-1;;;;;13928:21:0;;;13936:13;;13928:21;13917:32;:47;;;;-1:-1:-1;13953:11:0;;-1:-1:-1;;;13953:11:0;;;;13917:47;:89;;;;;13989:17;;13968:20;:38;13917:89;:121;;;;;14020:18;;14010:9;;:28;13917:121;13913:421;;;14059:67;14076:49;14080:6;14087:37;14091:20;14112:11;;14087:3;:37::i;:::-;14076:3;:49::i;:::-;14059:16;:67::i;:::-;14174:21;14217:22;;14214:105;;14264:35;14277:21;14264:12;:35::i;:::-;14040:294;13913:421;12850:1495;12812:1533;14360:11;;14357:161;;14428:4;14410:24;;;;:9;:24;;;;;;:39;;14439:9;14410:28;:39::i;:::-;14403:4;14385:24;;;;:9;:24;;;;;;;:64;;;;14467:39;;-1:-1:-1;;;;;14467:39:0;;;;;;;14496:9;1500:25:1;;1488:2;1473:18;;1354:177;14467:39:0;;;;;;;;14357:161;-1:-1:-1;;;;;14544:15:0;;;;;;:9;:15;;;;;;:27;;14564:6;14544:19;:27::i;:::-;-1:-1:-1;;;;;14528:15:0;;;;;;:9;:15;;;;;:43;14596:40;14614:21;:6;14625:9;14614:10;:21::i;:::-;-1:-1:-1;;;;;14596:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;14582:13:0;;;;;;;:9;:13;;;;;:54;;;;14652:41;;;14671:21;:6;14682:9;14671:10;:21::i;:::-;14652:41;;1500:25:1;;;1488:2;1473:18;14652:41:0;;;;;;;12542:2159;12473:2228;;;:::o;6677:190::-;6763:7;6799:12;6791:6;;;;6783:29;;;;-1:-1:-1;;;6783:29:0;;;;;;;;:::i;:::-;-1:-1:-1;6823:9:0;6835:5;6839:1;6835;:5;:::i;:::-;6823:17;6677:190;-1:-1:-1;;;;;6677:190:0:o;6875:246::-;6933:7;6957:1;6962;6957:6;6953:47;;-1:-1:-1;6987:1:0;6980:8;;6953:47;7010:9;7022:5;7026:1;7022;:5;:::i;:::-;7010:17;-1:-1:-1;7055:1:0;7046:5;7050:1;7010:17;7046:5;:::i;:::-;:10;7038:56;;;;-1:-1:-1;;;7038:56:0;;12443:2:1;7038:56:0;;;12425:21:1;12482:2;12462:18;;;12455:30;12521:34;12501:18;;;12494:62;-1:-1:-1;;;12572:18:1;;;12565:31;12613:19;;7038:56:0;12241:397:1;7038:56:0;7112:1;6875:246;-1:-1:-1;;;6875:246:0:o;7129:132::-;7187:7;7214:39;7218:1;7221;7214:39;;;;;;;;;;;;;;;;;:3;:39::i;14711:98::-;14768:7;14795:1;14793;:3;14792:9;;14800:1;14792:9;;;-1:-1:-1;14798:1:0;14711:98;-1:-1:-1;14711:98:0:o;15020:483::-;10414:6;:13;;-1:-1:-1;;;;10414:13:0;-1:-1:-1;;;10414:13:0;;;15122:16:::1;::::0;;15136:1:::1;15122:16:::0;;;;;::::1;::::0;;-1:-1:-1;;15122:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;15122:16:0::1;15098:40;;15167:4;15149;15154:1;15149:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;15149:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;15193:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;15193:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;15149:7;;15193:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15183:4;15188:1;15183:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;15183:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;15258:15:::1;::::0;15226:62:::1;::::0;15243:4:::1;::::0;15258:15:::1;15276:11:::0;15226:8:::1;:62::i;:::-;15299:15;::::0;:196:::1;::::0;-1:-1:-1;;;15299:196:0;;-1:-1:-1;;;;;15299:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;15380:11;;15299:15:::1;::::0;15422:4;;15449::::1;::::0;15469:15:::1;::::0;15299:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;10450:6:0;:14;;-1:-1:-1;;;;10450:14:0;;;-1:-1:-1;;;;15020:483:0:o;15678:92::-;15735:10;;:27;;-1:-1:-1;;;;;15735:10:0;;;;:27;;;;;15755:6;;15735:10;:27;:10;:27;15755:6;15735:10;:27;;;;;;;;;;;;;;;;;;;6346:179;6404:7;;6436:5;6440:1;6436;:5;:::i;:::-;6424:17;;6465:1;6460;:6;;6452:46;;;;-1:-1:-1;;;6452:46:0;;13830:2:1;6452:46:0;;;13812:21:1;13869:2;13849:18;;;13842:30;13908:29;13888:18;;;13881:57;13955:18;;6452:46:0;13628:351:1;6533:136:0;6591:7;6618:43;6622:1;6625;6618:43;;;;;;;;;;;;;;;;;:3;:43::i;7269:189::-;7355:7;7390:12;7383:5;7375:28;;;;-1:-1:-1;;;7375:28:0;;;;;;;;:::i;:::-;-1:-1:-1;7414:9:0;7426:5;7430:1;7426;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:127::-;2247:10;2242:3;2238:20;2235:1;2228:31;2278:4;2275:1;2268:15;2302:4;2299:1;2292:15;2318:1121;2402:6;2433:2;2476;2464:9;2455:7;2451:23;2447:32;2444:52;;;2492:1;2489;2482:12;2444:52;2532:9;2519:23;2561:18;2602:2;2594:6;2591:14;2588:34;;;2618:1;2615;2608:12;2588:34;2656:6;2645:9;2641:22;2631:32;;2701:7;2694:4;2690:2;2686:13;2682:27;2672:55;;2723:1;2720;2713:12;2672:55;2759:2;2746:16;2781:2;2777;2774:10;2771:36;;;2787:18;;:::i;:::-;2833:2;2830:1;2826:10;2865:2;2859:9;2928:2;2924:7;2919:2;2915;2911:11;2907:25;2899:6;2895:38;2983:6;2971:10;2968:22;2963:2;2951:10;2948:18;2945:46;2942:72;;;2994:18;;:::i;:::-;3030:2;3023:22;3080:18;;;3114:15;;;;-1:-1:-1;3156:11:1;;;3152:20;;;3184:19;;;3181:39;;;3216:1;3213;3206:12;3181:39;3240:11;;;;3260:148;3276:6;3271:3;3268:15;3260:148;;;3342:23;3361:3;3342:23;:::i;:::-;3330:36;;3293:12;;;;3386;;;;3260:148;;;3427:6;2318:1121;-1:-1:-1;;;;;;;;2318:1121:1:o;3444:247::-;3503:6;3556:2;3544:9;3535:7;3531:23;3527:32;3524:52;;;3572:1;3569;3562:12;3524:52;3611:9;3598:23;3630:31;3655:5;3630:31;:::i;3904:388::-;3972:6;3980;4033:2;4021:9;4012:7;4008:23;4004:32;4001:52;;;4049:1;4046;4039:12;4001:52;4088:9;4075:23;4107:31;4132:5;4107:31;:::i;:::-;4157:5;-1:-1:-1;4214:2:1;4199:18;;4186:32;4227:33;4186:32;4227:33;:::i;:::-;4279:7;4269:17;;;3904:388;;;;;:::o;4297:127::-;4358:10;4353:3;4349:20;4346:1;4339:31;4389:4;4386:1;4379:15;4413:4;4410:1;4403:15;4429:422;4518:1;4561:5;4518:1;4575:270;4596:7;4586:8;4583:21;4575:270;;;4655:4;4651:1;4647:6;4643:17;4637:4;4634:27;4631:53;;;4664:18;;:::i;:::-;4714:7;4704:8;4700:22;4697:55;;;4734:16;;;;4697:55;4813:22;;;;4773:15;;;;4575:270;;;4579:3;4429:422;;;;;:::o;4856:806::-;4905:5;4935:8;4925:80;;-1:-1:-1;4976:1:1;4990:5;;4925:80;5024:4;5014:76;;-1:-1:-1;5061:1:1;5075:5;;5014:76;5106:4;5124:1;5119:59;;;;5192:1;5187:130;;;;5099:218;;5119:59;5149:1;5140:10;;5163:5;;;5187:130;5224:3;5214:8;5211:17;5208:43;;;5231:18;;:::i;:::-;-1:-1:-1;;5287:1:1;5273:16;;5302:5;;5099:218;;5401:2;5391:8;5388:16;5382:3;5376:4;5373:13;5369:36;5363:2;5353:8;5350:16;5345:2;5339:4;5336:12;5332:35;5329:77;5326:159;;;-1:-1:-1;5438:19:1;;;5470:5;;5326:159;5517:34;5542:8;5536:4;5517:34;:::i;:::-;5587:6;5583:1;5579:6;5575:19;5566:7;5563:32;5560:58;;;5598:18;;:::i;:::-;5636:20;;4856:806;-1:-1:-1;;;4856:806:1:o;5667:140::-;5725:5;5754:47;5795:4;5785:8;5781:19;5775:4;5754:47;:::i;5812:168::-;5885:9;;;5916;;5933:15;;;5927:22;;5913:37;5903:71;;5954:18;;:::i;5985:356::-;6187:2;6169:21;;;6206:18;;;6199:30;6265:34;6260:2;6245:18;;6238:62;6332:2;6317:18;;5985:356::o;6346:127::-;6407:10;6402:3;6398:20;6395:1;6388:31;6438:4;6435:1;6428:15;6462:4;6459:1;6452:15;6478:135;6517:3;6538:17;;;6535:43;;6558:18;;:::i;:::-;-1:-1:-1;6605:1:1;6594:13;;6478:135::o;6970:251::-;7040:6;7093:2;7081:9;7072:7;7068:23;7064:32;7061:52;;;7109:1;7106;7099:12;7061:52;7141:9;7135:16;7160:31;7185:5;7160:31;:::i;8147:306::-;8235:6;8243;8251;8304:2;8292:9;8283:7;8279:23;8275:32;8272:52;;;8320:1;8317;8310:12;8272:52;8349:9;8343:16;8333:26;;8399:2;8388:9;8384:18;8378:25;8368:35;;8443:2;8432:9;8428:18;8422:25;8412:35;;8147:306;;;;;:::o;8737:277::-;8804:6;8857:2;8845:9;8836:7;8832:23;8828:32;8825:52;;;8873:1;8870;8863:12;8825:52;8905:9;8899:16;8958:5;8951:13;8944:21;8937:5;8934:32;8924:60;;8980:1;8977;8970:12;11401:125;11466:9;;;11487:10;;;11484:36;;;11500:18;;:::i;11886:128::-;11953:9;;;11974:11;;;11971:37;;;11988:18;;:::i;12019:217::-;12059:1;12085;12075:132;;12129:10;12124:3;12120:20;12117:1;12110:31;12164:4;12161:1;12154:15;12192:4;12189:1;12182:15;12075:132;-1:-1:-1;12221:9:1;;12019:217::o;12643:980::-;12905:4;12953:3;12942:9;12938:19;12984:6;12973:9;12966:25;13010:2;13048:6;13043:2;13032:9;13028:18;13021:34;13091:3;13086:2;13075:9;13071:18;13064:31;13115:6;13150;13144:13;13181:6;13173;13166:22;13219:3;13208:9;13204:19;13197:26;;13258:2;13250:6;13246:15;13232:29;;13279:1;13289:195;13303:6;13300:1;13297:13;13289:195;;;13368:13;;-1:-1:-1;;;;;13364:39:1;13352:52;;13459:15;;;;13424:12;;;;13400:1;13318:9;13289:195;;;-1:-1:-1;;;;;;;13540:32:1;;;;13535:2;13520:18;;13513:60;-1:-1:-1;;;13604:3:1;13589:19;13582:35;13501:3;12643:980;-1:-1:-1;;;12643:980:1:o

Swarm Source

ipfs://f14517570d72a154cf62ddf324d62c3cc85bc6eeb2bb53554d94a9a38b83efe9

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.