// SPDX-License-Identifier: MIT
pragma solidity 0.8.26;
/*//////////////////////////////////////////////////////////////
// //
// GONGSIN 功臣 — 8,888 founding subjects of the new //
// dynasty, on Robinhood Chain. //
// //
// · 8 classes x 5 tiers, exact pyramid per class: //
// 777 clay · 222 jade · 88 crimson · 22 obsidian · //
// 2 gold = 1,111 per class //
// · 0.004 ETH public · 0.0024 ETH for GIWA TILES holders //
// (max 4 discounted mints per wallet) //
// · 100% of mint ETH forwarded to the migration treasury //
// in the same transaction. Policy: 80% migration //
// liquidity · 20% operations. //
// · art is 100% onchain SVG. Land deeds in the GIWA //
// world scale by tier. The founders get the land. //
// //
//////////////////////////////////////////////////////////////*/
interface IERC721Receiver {
function onERC721Received(address, address, uint256, bytes calldata) external returns (bytes4);
}
interface ITiles {
function balanceOf(address) external view returns (uint256);
}
library B64 {
string internal constant TABLE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
function encode(bytes memory data) internal pure returns (string memory) {
if (data.length == 0) return "";
string memory table = TABLE;
string memory result = new string(4 * ((data.length + 2) / 3));
assembly {
let tablePtr := add(table, 1)
let resultPtr := add(result, 32)
for { let dataPtr := data let endPtr := add(data, mload(data)) } lt(dataPtr, endPtr) {} {
dataPtr := add(dataPtr, 3)
let input := mload(dataPtr)
mstore8(resultPtr, mload(add(tablePtr, and(shr(18, input), 0x3F)))) resultPtr := add(resultPtr, 1)
mstore8(resultPtr, mload(add(tablePtr, and(shr(12, input), 0x3F)))) resultPtr := add(resultPtr, 1)
mstore8(resultPtr, mload(add(tablePtr, and(shr(6, input), 0x3F)))) resultPtr := add(resultPtr, 1)
mstore8(resultPtr, mload(add(tablePtr, and(input, 0x3F)))) resultPtr := add(resultPtr, 1)
}
switch mod(mload(data), 3)
case 1 { mstore(sub(resultPtr, 2), shl(240, 0x3d3d)) }
case 2 { mstore(sub(resultPtr, 1), shl(248, 0x3d)) }
}
return result;
}
}
contract GongsinNFT {
string public constant name = unicode"GONGSIN 功臣";
string public constant symbol = "GONGSIN";
// official links, etched into the verified source - trust nothing else
string public constant website = "https://giwa.markets/gongsin";
string public constant twitterX = "https://x.com/GIWALAUNCHPAD";
string public constant telegram = "https://t.me/giwachat";
uint256 public constant MAX_SUPPLY = 8888;
uint256 public constant PRICE = 0.004 ether;
uint256 public constant TILES_PRICE = 0.0024 ether;
// discount rule: 1 discounted mint per TILE held (lifetime, tracked per wallet)
uint256 public constant MAX_PER_TX = 20;
address public immutable treasury;
ITiles public immutable tiles;
uint256 public immutable mintStart;
uint256 public totalSupply;
uint256 public totalRaised;
// class -> remaining per tier [clay, jade, crimson, obsidian, gold]
uint16[5][8] public tierRemaining;
uint16[8] public classRemaining;
// tokenId -> packed traits: (class << 8) | tier
mapping(uint256 => uint256) public traitOf;
mapping(address => uint256) public discountUsed;
mapping(uint256 => address) public ownerOf;
mapping(address => uint256) public balanceOf;
mapping(uint256 => address) public getApproved;
mapping(address => mapping(address => bool)) public isApprovedForAll;
event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
event GongsinMinted(address indexed minter, uint256 indexed tokenId, uint256 class_, uint256 tier, uint256 paid);
constructor(address _treasury, address _tiles, uint256 _mintStart) {
require(_treasury != address(0), "treasury");
treasury = _treasury;
tiles = ITiles(_tiles);
mintStart = _mintStart;
for (uint256 c = 0; c < 8; c++) {
tierRemaining[c] = [uint16(777), 222, 88, 22, 2];
classRemaining[c] = 1111;
}
}
// ------------------------------ mint -------------------------------------
function mint(uint256 qty) external payable {
require(block.timestamp >= mintStart, "mint not open");
require(qty > 0 && qty <= MAX_PER_TX, "qty");
require(totalSupply + qty <= MAX_SUPPLY, "sold out");
// pricing: 1 discounted mint (0.0024) per TILE held; everything beyond at 0.004
uint256 cost;
uint256 discLeft = 0;
if (address(tiles) != address(0)) {
uint256 bal = tiles.balanceOf(msg.sender);
uint256 used = discountUsed[msg.sender];
discLeft = bal > used ? bal - used : 0;
}
uint256 discounted = qty < discLeft ? qty : discLeft;
cost = discounted * TILES_PRICE + (qty - discounted) * PRICE;
require(msg.value == cost, "wrong ETH");
if (discounted > 0) discountUsed[msg.sender] += discounted;
for (uint256 i = 0; i < qty; i++) {
uint256 id = ++totalSupply;
(uint256 c, uint256 t) = _draw(id);
traitOf[id] = (c << 8) | t;
ownerOf[id] = msg.sender;
emit Transfer(address(0), msg.sender, id);
emit GongsinMinted(msg.sender, id, c, t, cost / qty);
}
balanceOf[msg.sender] += qty;
totalRaised += msg.value;
// 100% of proceeds to the treasury, atomically
(bool ok, ) = treasury.call{value: msg.value}("");
require(ok, "treasury xfer");
}
/// draw class+tier without replacement, weighted by remaining supply
function _draw(uint256 id) internal returns (uint256 c, uint256 t) {
uint256 seed = uint256(keccak256(abi.encodePacked(blockhash(block.number - 1), id, msg.sender, address(this))));
uint256 totalLeft = MAX_SUPPLY - (totalSupply - 1); // includes this one
uint256 r = seed % totalLeft;
for (c = 0; c < 8; c++) {
if (r < classRemaining[c]) break;
r -= classRemaining[c];
}
if (c == 8) c = 7; // safety, unreachable
uint256 r2 = (seed >> 128) % classRemaining[c];
for (t = 0; t < 5; t++) {
if (r2 < tierRemaining[c][t]) break;
r2 -= tierRemaining[c][t];
}
if (t == 5) t = 4; // safety, unreachable
tierRemaining[c][t] -= 1;
classRemaining[c] -= 1;
}
receive() external payable { revert("mint()"); }
// --------------------------- erc721 core ----------------------------------
function supportsInterface(bytes4 id) external pure returns (bool) {
return id == 0x80ac58cd || id == 0x5b5e139f || id == 0x01ffc9a7 || id == 0x2a55205a;
}
/// @notice ERC-2981: 5% of every secondary sale to the migration treasury.
function royaltyInfo(uint256, uint256 salePrice) external view returns (address, uint256) {
return (treasury, salePrice * 5 / 100);
}
function approve(address to, uint256 tokenId) external {
address o = ownerOf[tokenId];
require(msg.sender == o || isApprovedForAll[o][msg.sender], "auth");
getApproved[tokenId] = to;
emit Approval(o, to, tokenId);
}
function setApprovalForAll(address op, bool ok) external {
isApprovedForAll[msg.sender][op] = ok;
emit ApprovalForAll(msg.sender, op, ok);
}
function transferFrom(address from, address to, uint256 tokenId) public {
require(ownerOf[tokenId] == from, "owner");
require(to != address(0), "zero");
require(msg.sender == from || getApproved[tokenId] == msg.sender || isApprovedForAll[from][msg.sender], "auth");
delete getApproved[tokenId];
ownerOf[tokenId] = to;
balanceOf[from] -= 1;
balanceOf[to] += 1;
emit Transfer(from, to, tokenId);
}
function safeTransferFrom(address from, address to, uint256 tokenId) external {
transferFrom(from, to, tokenId);
require(to.code.length == 0 || IERC721Receiver(to).onERC721Received(msg.sender, from, tokenId, "") == IERC721Receiver.onERC721Received.selector, "receiver");
}
function safeTransferFrom(address from, address to, uint256 tokenId, bytes calldata data) external {
transferFrom(from, to, tokenId);
require(to.code.length == 0 || IERC721Receiver(to).onERC721Received(msg.sender, from, tokenId, data) == IERC721Receiver.onERC721Received.selector, "receiver");
}
// --------------------------- onchain art -----------------------------------
// base body as row runs (y, x0, len, role), class diffs as pokes (x, y, role).
// roles 0-5 are tier-colored (J j d G g R), 6-15 fixed (K k S s W w T t B F).
bytes constant BASE = hex"0507020b0509060a050f020b0607010b06080309060b020a060d03090610010b0707010b0708010a07090114070a0107070b020a070d0114070e0107070f010a0710010b0807010b0808030a080b020b080d030a0810010b0907020b0909060a090f020b0a08020b0a0a040a0a0e020b0b08020c0b0a04000b0e020c0c0602000c0801020c0906000c0f01020c1002000d0403000d0701020d0808000d1001020d1103000e0404000e0801020e0902000e0b02030e0d02000e0f01020e1004000f0401010f0503000f0801020f0901000f0a01030f0b02040f0d01030f0e01000f0f01020f1003000f13010110040101100503001008010210090200100b0203100d0200100f0102101003001013010111040101110503001108080511100300111301011204010112050e00121301011304010113050e00131301011404010114050500140a0102140b0200140d0102140e0500141301011504010115050500150a0102150b0200150d0102150e050015130101160401011605040016090102160a0400160e0102160f04001613010117040101170503001708010217090600170f0102171003001713010118040101180503001808010218090600180f010218100300181301011904010219050e00191301021a0410021b0502081b1102081c0503081c100308";
bytes constant CLS0 = hex"0b02080c02080a03080b03080c03080d03080704030804030904030a04030b04030c04030d04030e04030f0403100403020b04020c0d040c03050c02060c02070c02090c020a0c020b0c020c0c020d0c020e0c02100c02110c02120c02130c03020d0d040d02050d02060d02080d02090d020a0d020b0d020c0d020d0d020e0d020f0d02110d02120d02130d02020e0d020f0d01100302100303100302110d03110b02120d02130d02140d02150d02160d02170d02180d02190d021a08";
bytes constant TOP0 = hex"020a06010c06010e060110060112060a12150b12150d12150913150c13160e1315011406011606011806";
bytes constant CLS1 = hex"0a01080b01080c01080d01080902080a02080b02080c02080d02080e02080603080703080803080903080a03080b03080c03080d03080e03080f03081003081103080504080604080704080804080904080a04080b04080c04080d04080e04080f0408100408110408120408130e03140e0c150e0c160e0c120f0b130f0d140f0d150f0d160f0d";
bytes constant TOP1 = hex"140d06150d06140e16150e16160f17";
bytes constant CLS2 = hex"0803050903050a03050b03050c03050d03050e03050f03051003030704050804050904050a04050b04050c04050d04050e04050f0405100405140c13150c13160c13130d13140d13150d13160d13170d13130e13140e13150e13160e13170e13020f03150f1003100b14100b021103021303";
bytes constant TOP2 = hex"0b05180c0518140b06150b06160b06020f16021116021316";
bytes constant CLS3 = hex"0803020903020a03020b03020c03020d03020e03020f03020704020804020904020a04020b04020c04020d04020e04020f04021004020705020805020905020a05020b05020c05020d05020e05020f050210050207060208060b09060b0a060b0b060b0c060b0d060b0e060b0f060b1006020809080909080a09080b09080c09080d09080e09080f0908080a08090a080a0a080b0a080c0a080d0a080e0a080f0a08020e0d150e0d020f0d150f0d02100d03100b14100b15100d02110d15110d02120d15120d021308151308";
bytes constant TOP3 = hex"0c03170d03170a04170b0417010e06160e06011006161006011206161206";
bytes constant CLS4 = hex"0b01100c01100a02100b02100c02100d02100803100903100a03100b03100c03100d03100e03100f03100604100704100804100904100a04100b04100c04100d04100e04100f0410100410110410020a0d020b10140b04150b04010c10020c10140c0f150c0f020d10140d0f150d0f020e10140e0f150e0f020f10140f0f150f0f02101014100f15100f02111003110b02121002131002141002151002161001171002171002181002190d";
bytes constant TOP4 = hex"140a17150a16010d06010f06011106011306011506";
bytes constant CLS5 = hex"09030a0a030a0b030a0c030a0d030a0e030a08040a09040a0a040b0b040a0c040b0d040a0e040b0f040a020903010a03020a10030a03020b10020c10090c0e0a0c0e0b0c0e0c0c0e0d0c0e0e0c0e020d10080d0e090d0e0a0d0e0b0d0e0c0d0e0d0d0e0e0d0e0f0d0e020e10020f1002101003100b021110021210021310021410021510021610021710021810021910021a10";
bytes constant TOP5 = hex"0901160a01160b01160c01160d01160e01160802160f0216020806010906030906";
bytes constant CLS6 = hex"0804050904050a04050b04050c04050d04050e04050f0405130b0d140b0d150b0d160b0d170b0d090c0e0a0c0e0b0c0e0c0c0e0d0c0e0e0c0e130c09140c09150c09160c09170c09090d0f0a0d0f0b0d0f0c0d0f0d0d0f0e0d0f130d09140d09150d09160d09170d09090e0f0a0e0f0b0e0f0c0e0f0d0e0f0e0e0f150e10090f0f0a0f0f0b0f0f0c0f0f0d0f0f0e0f0f150f1009100f0a100f0b100f0c100f0d100f0e100f14100b15101009110f0a110f0b110f0c110f0d110f0e110f15111009120f0a120f0b120f0c120f0d120f0e120f15121009130f0a130f0b130f0c130f0d130f0e130f15131009140f0a140f0b140f0c140f0d140f0e140f15141009150f0a150f0b150f0c150f0d150f0e150f15151009160f0a160f0b160f0c160f0d160f0e160f15161009170f0a170f0b170f0c170f0d170f0e170f09180f0a180f0b180f0c180f0d180f0e180f09190f0a190f0b190f0c190f0d190f0e190f";
bytes constant TOP6 = hex"160916120a16140a17130b06140b06150b06160b06170b060b0f160c0f170b10170c1017";
bytes constant CLS7 = hex"0705110805120905120a05120b05120c05120d05120e05120f05121005110706120806120906120a06120b06120c06120d06120e06120f06121006120707120807080a07080b07080c07080d07080e07140f07081007120708120808120908120a08120b08120c08120d08120e08120f08121008120709120809120909110a09110b09110c09110d09110e09110f0912100912080a12090a120a0a120b0a120c0a120d0a120e0a120f0a12150c10130d0d140d0e150d0e160d0e170d0d130e0d140e0e150e0e160e0e170e0d130f0d140f0e150f0e160f0e170f0d14100b";
bytes constant TOP7 = hex"0b04180c04180908170e0817130c06170c06";
bytes constant TIER_PAL = hex"7a6046967a5c5a4430a08660b89e767c4a340000001a16143a6652588a6c26463878a88296c69e9a392b0000001a16148a3028ac4a3c60201cd4a83cf0cd6e3c14120000001a1614302c384842541e1c26786e96a094c45a286ec8a5ffb991ffbe9230e4ba548c6822fce28cfff8c89a392bfff8be96ffc3";
bytes constant FIXED_PAL = hex"18161434302cdeba94a88464eee6d2c8c0b0b06042783e2c8c643cc83c32e6c85a5a8cbef6f2e856d282ffd85cff543a78e6ff";
bytes constant BG_COLS = hex"1b181515241d2f0f0f0e0b1638280e";
bytes constant BG0 = hex"";
bytes constant BG1 = hex"0d00223a2d0004223a2d1209223a2d0a12223a2d0415223a2d1115223a2d1319223a2d";
bytes constant BG2 = hex"0d0b461814160b4618140f0d220a0a1510461814081646181413174618141718220a0a0d1b220a0a151c461814";
bytes constant BG3 = hex"0302786ea50702786ea50203786ea50303e1d7ff0403786ea50304786ea51407786ea51408e1d7ff040be1d7ff120b786ea50511786ea51211786ea50912786ea50f14786ea50915786ea51218e1d7ff051c786ea50a1c786ea5111c786ea50f1de1d7ff";
bytes constant BG4 = hex"0100966e260700d8a43c0a00d8a43c0e00d8a43c1200966e260201966e260301966e260701d8a43c0b01d8a43c0d01d8a43c0e01fff4b21101d8a43c0402966e260702fff4b20802d8a43c0b02d8a43c0d02d8a43c1002d8a43c1602966e261702966e260403d8a43c0503d8a43c0803d8a43c0b03d8a43c0d03d8a43c1003d8a43c1403966e261503966e260604d8a43c0904d8a43c0f04d8a43c1204d8a43c1304d8a43c0005966e260705d8a43c1205d8a43c0106966e260206966e260306d8a43c0806d8a43c1006d8a43c1106d8a43c1406fff4b20407d8a43c0507d8a43c0607d8a43c1507966e261607966e261707966e260208fff4b20708d8a43c1008d8a43c1108d8a43c1208d8a43c1308d8a43c1408d8a43c030ad8a43c040ad8a43c050ad8a43c060ad8a43c070ad8a43c100ad8a43c000b966e26010b966e26020b966e26110bd8a43c120bd8a43c130bd8a43c060cd8a43c070cd8a43c0f0cd8a43c140cd8a43c150c966e26160c966e26050dd8a43c100dd8a43c160dfff4b2170d966e26040ed8a43c050ed8a43c080ed8a43c0e0ed8a43c110ed8a43c160efff4b2020f966e26030f966e26070fd8a43c0a0fd8a43c0c0fd8a43c0f0fd8a43c120fd8a43c130fd8a43c0010966e260110fff4b20710d8a43c0a10d8a43c0c10d8a43c0f10d8a43c1310966e260611d8a43c0a11d8a43c0c11d8a43c1011d8a43c1411966e261511966e260512966e260912d8a43c0d12d8a43c1012d8a43c1612966e260513966e260913d8a43c0d13d8a43c1113966e261713966e260414966e260914966e260d14966e261114966e260415966e260915966e261215966e261315fff4b20316966e260816966e260d16966e261216966e260217966e260617fff4b20817966e260d17966e261317966e260218966e260d18966e261318966e260119966e260819966e260d19fff4b21419966e26081a966e260d1a966e26141a966e26071b966e260e1b966e26151b966e26071c966e260e1c966e26071d966e26";
function classOf(uint256 id) public view returns (uint256) { return traitOf[id] >> 8; }
function tierOf(uint256 id) public view returns (uint256) { return traitOf[id] & 0xff; }
function _className(uint256 c) internal pure returns (string memory) {
return [unicode"HWARANG 화랑", unicode"SEONBI 선비", unicode"MUDANG 무당", unicode"JAGAEK 자객",
unicode"GUNGSU 궁수", unicode"SEUNGNYEO 승려", unicode"DAEJANG 대장", unicode"GWANGDAE 광대"][c];
}
function _tierName(uint256 t) internal pure returns (string memory) {
return [unicode"CLAY 흙", unicode"JADE 옥", unicode"CRIMSON 혈", unicode"OBSIDIAN 흑", unicode"GOLD 금"][t];
}
function _landName(uint256 t) internal pure returns (string memory) {
return ["1 land plot", "2 land plots, choice zone", "named building + 4 plots", "district, 8x8 plots", "named village + hero lord"][t];
}
function _u(uint256 v) internal pure returns (string memory s) {
if (v == 0) return "0";
uint256 t = v; uint256 len;
while (t > 0) { len++; t /= 10; }
bytes memory b = new bytes(len);
while (v > 0) { len--; b[len] = bytes1(uint8(48 + v % 10)); v /= 10; }
return string(b);
}
function _colorAt(bytes memory pal, uint256 idx) internal pure returns (string memory) {
bytes memory hexc = "0123456789abcdef";
bytes memory out = new bytes(7);
out[0] = "#";
for (uint256 i = 0; i < 3; i++) {
uint8 v = uint8(pal[idx * 3 + i]);
out[1 + i * 2] = hexc[v >> 4];
out[2 + i * 2] = hexc[v & 0xf];
}
return string(out);
}
function _roleColor(uint256 role, uint256 tier) internal pure returns (string memory) {
if (role < 8) return _colorAt(TIER_PAL, tier * 8 + role);
return _colorAt(FIXED_PAL, role - 8);
}
function _rect(uint256 x, uint256 y, uint256 w, uint256 h, string memory f) internal pure returns (string memory) {
return string(abi.encodePacked('<rect x="', _u(x * 10), '" y="', _u(y * 10), '" width="', _u(w * 10), '" height="', _u(h * 10), '" fill="', f, '"/>'));
}
function _rgbRect(uint256 x, uint256 y, bytes memory d, uint256 off) internal pure returns (string memory) {
bytes memory hexc = "0123456789abcdef";
bytes memory col = new bytes(7);
col[0] = "#";
for (uint256 i = 0; i < 3; i++) {
uint8 v = uint8(d[off + i]);
col[1 + i * 2] = hexc[v >> 4];
col[2 + i * 2] = hexc[v & 0xf];
}
return _rect(x, y, 1, 1, string(col));
}
function svgOf(uint256 id) public view returns (string memory) {
require(ownerOf[id] != address(0), "no token");
uint256 c = classOf(id);
uint256 t = tierOf(id);
bytes memory out = abi.encodePacked(
'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 240 300" shape-rendering="crispEdges">',
'<rect width="240" height="300" fill="', _colorAt(BG_COLS, t), '"/>'
);
// tier background decor (stars, embers, gold rays)
bytes memory bgd = [BG0, BG1, BG2, BG3, BG4][t];
for (uint256 i = 0; i + 4 < bgd.length + 1; i += 5) {
out = abi.encodePacked(out, _rgbRect(uint8(bgd[i]), uint8(bgd[i + 1]), bgd, i + 2));
}
bytes memory base = BASE;
for (uint256 i = 0; i + 3 < base.length; i += 4) {
out = abi.encodePacked(out, _rect(uint8(base[i + 1]), uint8(base[i]), uint8(base[i + 2]), 1, _roleColor(uint8(base[i + 3]), t)));
}
bytes memory cls = [CLS0, CLS1, CLS2, CLS3, CLS4, CLS5, CLS6, CLS7][c];
for (uint256 i = 0; i + 2 < cls.length; i += 3) {
out = abi.encodePacked(out, _rect(uint8(cls[i]), uint8(cls[i + 1]), 1, 1, _roleColor(uint8(cls[i + 2]), t)));
}
if (t >= 3) { // obsidian + gold: weapon glow and grail details
bytes memory top = [TOP0, TOP1, TOP2, TOP3, TOP4, TOP5, TOP6, TOP7][c];
for (uint256 i = 0; i + 2 < top.length; i += 3) {
out = abi.encodePacked(out, _rect(uint8(top[i]), uint8(top[i + 1]), 1, 1, _roleColor(uint8(top[i + 2]), t)));
}
}
return string(abi.encodePacked(out, "</svg>"));
}
function tokenURI(uint256 id) external view returns (string memory) {
require(ownerOf[id] != address(0), "no token");
uint256 c = classOf(id);
uint256 t = tierOf(id);
bytes memory json = abi.encodePacked(
'{"name":"GONGSIN #', _u(id),
'","external_url":"https://giwa.markets/gongsin',
unicode'","description":"One of the 8,888 founding subjects of the new dynasty. Minted on Robinhood Chain; 100% of proceeds fund the GIWA mainnet liquidity migration. Land deed in the GIWA world scales by tier. Art lives entirely on the chain.",',
'"attributes":[{"trait_type":"Class","value":"', _className(c),
'"},{"trait_type":"Tier","value":"', _tierName(t),
'"},{"trait_type":"Land Grant","value":"', _landName(t),
'"}],"image":"data:image/svg+xml;base64,', B64.encode(bytes(svgOf(id))), '"}'
);
return string(abi.encodePacked("data:application/json;base64,", B64.encode(json)));
}
// helpers for the mint page
function remaining() external view returns (uint256) { return MAX_SUPPLY - totalSupply; }
function priceFor(address minter, uint256 qty) external view returns (uint256) {
uint256 discLeft = 0;
if (address(tiles) != address(0)) {
uint256 bal = tiles.balanceOf(minter);
uint256 used = discountUsed[minter];
discLeft = bal > used ? bal - used : 0;
}
uint256 discounted = qty < discLeft ? qty : discLeft;
return discounted * TILES_PRICE + (qty - discounted) * PRICE;
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "_treasury",
"type": "address",
"internalType": "address"
},
{
"name": "_tiles",
"type": "address",
"internalType": "address"
},
{
"name": "_mintStart",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "nonpayable"
},
{
"name": "Approval",
"type": "event",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "ApprovalForAll",
"type": "event",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "operator",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "approved",
"type": "bool",
"indexed": false,
"internalType": "bool"
}
],
"anonymous": false
},
{
"name": "GongsinMinted",
"type": "event",
"inputs": [
{
"name": "minter",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
},
{
"name": "class_",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
},
{
"name": "tier",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
},
{
"name": "paid",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "Transfer",
"type": "event",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"indexed": true,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "MAX_PER_TX",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "MAX_SUPPLY",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "PRICE",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "TILES_PRICE",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "approve",
"type": "function",
"inputs": [
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "classOf",
"type": "function",
"inputs": [
{
"name": "id",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "classRemaining",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "discountUsed",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "getApproved",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "isApprovedForAll",
"type": "function",
"inputs": [
{
"name": "",
"type": "address",
"internalType": "address"
},
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"name": "mint",
"type": "function",
"inputs": [
{
"name": "qty",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "payable"
},
{
"name": "mintStart",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "ownerOf",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "priceFor",
"type": "function",
"inputs": [
{
"name": "minter",
"type": "address",
"internalType": "address"
},
{
"name": "qty",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "remaining",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "royaltyInfo",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "salePrice",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "safeTransferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "safeTransferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "data",
"type": "bytes",
"internalType": "bytes"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "setApprovalForAll",
"type": "function",
"inputs": [
{
"name": "op",
"type": "address",
"internalType": "address"
},
{
"name": "ok",
"type": "bool",
"internalType": "bool"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "supportsInterface",
"type": "function",
"inputs": [
{
"name": "id",
"type": "bytes4",
"internalType": "bytes4"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "pure"
},
{
"name": "svgOf",
"type": "function",
"inputs": [
{
"name": "id",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "telegram",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "tierOf",
"type": "function",
"inputs": [
{
"name": "id",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "tierRemaining",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint16",
"internalType": "uint16"
}
],
"stateMutability": "view"
},
{
"name": "tiles",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "contract ITiles"
}
],
"stateMutability": "view"
},
{
"name": "tokenURI",
"type": "function",
"inputs": [
{
"name": "id",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "totalRaised",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "totalSupply",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "traitOf",
"type": "function",
"inputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "transferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "tokenId",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "treasury",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "twitterX",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "website",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"type": "receive",
"stateMutability": "payable"
}
]0x60e0604052346101c657604051601f61416738819003918201601f19168301916001600160401b03831184841017610133578084926060946040528339810103126101c65761004d816101cb565b90604061005c602083016101cb565b910151916001600160a01b03811615610196576080526001600160a01b031660a05260c05260005b60088110156101495760405160a0810191906001600160401b0383118184101761013357600192604052610309815260de60208201526058604082015260166060820152600260808201526000908190825b6005811061010e5750508260020155508060041c600a01805460f083851b60031b169061ffff610457831b921b191617905501610084565b90916020869161ffff8551169061ffff8560041b92831b921b191617930191016100d6565b634e487b7160e01b600052604160045260246000fd5b604051613f8790816101e082396080518181816106420152818161088b0152610ba3015260a051818181610ae901528181610dfc01526112db015260c0518181816105f20152610a930152f35b60405162461bcd60e51b8152602060048201526008602482015267747265617375727960c01b6044820152606490fd5b600080fd5b51906001600160a01b03821682036101c65756fe6080604052600436101561001e575b361561001957600080fd5b6132c0565b60003560e01c806301ffc9a71461025e57806306fdde0314610259578063081812fc14610254578063095ea7b31461024f57806318160ddd1461024a57806323b872dd14610245578063255e4685146102405780632a55205a1461023b57806332cb6b0c1461023657806336a690b31461023157806342842e0e1461022c5780634324aa211461022757806347ecb6651461022257806353f96df21461021d57806355234ec01461021857806361d027b3146102135780636352211e1461020e57806370a082311461020957806374f75b9c146102045780638d859f3e146101ff5780639442de52146101fa57806395d89b41146101f5578063a0712d68146101f0578063a22cb465146101eb578063b2e0a100146101e6578063b88d4fde146101e1578063beb0a416146101dc578063c5c4744c146101d7578063c87b56dd146101d2578063d527979a146101cd578063d9a49c62146101c8578063dd58af85146101c3578063e2ae5f13146101be578063e985e9c5146101b9578063eb4d82c8146101b45763f43a22dc0361000e5761153b565b61150f565b6114b2565b611487565b611430565b6113f6565b6112ba565b610f10565b610ef2565b610e9b565b610e2b565b610de6565b610d58565b610a7f565b610a3e565b6109e9565b610999565b61095e565b6108ee565b6108ba565b610875565b610849565b61081c565b6107cd565b610798565b6106bd565b61069b565b61067e565b610615565b6105da565b6105c1565b610569565b610496565b610436565b6103ea565b61027a565b6001600160e01b031981160361027557565b600080fd5b346102755760203660031901126102755760043561029781610263565b63ffffffff60e01b166380ac58cd60e01b81149081156102f0575b81156102df575b81156102ce575b506040519015158152602090f35b63152a902d60e11b149050386102c0565b6301ffc9a760e01b811491506102b9565b635b5e139f60e01b811491506102b2565b634e487b7160e01b600052604160045260246000fd5b60a0810190811067ffffffffffffffff82111761033357604052565b610301565b90601f8019910116810190811067ffffffffffffffff82111761033357604052565b906103686040519283610338565b565b67ffffffffffffffff811161033357601f01601f191660200190565b60405190610395602083610338565b60008252565b60005b8381106103ae5750506000910152565b818101518382015260200161039e565b604091602082526103de815180928160208601526020868601910161039b565b601f01601f1916010190565b3461027557600036600319011261027557610432604080519061040d8183610338565b600e82526d474f4e4753494e20e58a9fe887a360901b602083015251918291826103be565b0390f35b3461027557602036600319011261027557600435600052600f602052602060018060a01b0360406000205416604051908152f35b600435906001600160a01b038216820361027557565b602435906001600160a01b038216820361027557565b34610275576040366003190112610275576104af61046a565b6024359081600052600d60205260018060a01b0360406000205416908133148015610546575b6104de90611557565b610515816104f685600052600f602052604060002090565b80546001600160a01b0319166001600160a01b03909216919091179055565b6001600160a01b0316907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600080a4005b50600082815260106020908152604080832033845290915290205460ff166104d5565b34610275576000366003190112610275576020600054604051908152f35b6060906003190112610275576004356001600160a01b038116810361027557906024356001600160a01b0381168103610275579060443590565b34610275576105d86105d236610587565b91611689565b005b346102755760003660031901126102755760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346102755760403660031901126102755760243560058102908082046005149015171561067957604080517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031681526064909204602083015290f35b6115bb565b346102755760003660031901126102755760206040516122b88152f35b34610275576000366003190112610275576020604051660886c98b7600008152f35b34610275576106cb36610587565b6106d88183859495611689565b823b159182156106ec575b6105d883611924565b604051630a85bd0160e11b81523360048201526001600160a01b039182166024820152604481019290925260806064830152600060848301819052919360209350849260a4928492165af18015610793576105d891600091610764575b506001600160e01b031916630a85bd0160e11b1438806106e3565b610786915060203d60201161078c575b61077e8183610338565b810190611900565b38610749565b503d610774565b611918565b346102755760203660031901126102755760206107c5600435600052600b60205260406000205460081c90565b604051908152f35b346102755760003660031901126102755761043260408051906107f08183610338565b60158252741a1d1d1c1cce8bcbdd0b9b594bd9da5dd858da185d605a1b602083015251918291826103be565b346102755760203660031901126102755760206107c5600435600052600b60205260ff6040600020541690565b34610275576000366003190112610275576000546122b8036122b8811161067957602090604051908152f35b34610275576000366003190112610275576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461027557602036600319011261027557600435600052600d602052602060018060a01b0360406000205416604051908152f35b34610275576020366003190112610275576001600160a01b0361090f61046a565b16600052600e6020526020604060002054604051908152f35b634e487b7160e01b600052603260045260246000fd5b90600882101561095957601e8260041c600a019260011b1690565b610928565b346102755760203660031901126102755760043560088110156102755761ffff61098960209261093e565b90549060031b1c16604051908152f35b34610275576000366003190112610275576020604051660e35fa931a00008152f35b60088110156109595760020190600090565b919091600583101561095957601e908360041c019260011b1690565b346102755760403660031901126102755760243560043560088110156102755760058210156102755761ffff91610a22916002016109cd565b90549060031b1c16604051809161ffff60208301911682520390f35b34610275576000366003190112610275576104326040805190610a618183610338565b600782526623a7a723a9a4a760c91b602083015251918291826103be565b602036600319011261027557600435610aba7f000000000000000000000000000000000000000000000000000000000000000042101561195b565b80151580610d4d575b610acc90611997565b610ae56122b8610ade8360005461167c565b11156119c9565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031680610cbf575b5080821015610cba5750805b610b47610b2f82611853565b610b41610b3c84866115ff565b611875565b9061167c565b90610b53823414611a0f565b80610c9a575b5060005b828110610bd257336000908152600e602052604090208390610b82905b91825461167c565b9055610b98610b933460015461167c565b600155565b6105d86000808080347f00000000000000000000000000000000000000000000000000000000000000005af1610bcc611a56565b50611a86565b600190610be0600054611a47565b806000557f320fc1dc7cf7acc2d6c3c14249d4b4b9a120ee0ba154af0cd0865cf19e2b8655610c0e8261330d565b80610c1b83949360081b90565b17610c3085600052600b602052604060002090565b55610c49336104f686600052600d602052604060002090565b833360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4610c7b88886118f1565b604080519485526020850192909252908301523391606090a301610b5d565b336000908152600c60205260409020610cb290610b7a565b905538610b59565b610b23565b6040516370a0823160e01b815233600482015290602090829060249082905afa908115610793578291610d1e575b50336000908152600c60205260409020549081811115610d1757610d1192506115ff565b38610b17565b5050610d11565b610d40915060203d602011610d46575b610d388183610338565b810190611a00565b38610ced565b503d610d2e565b506014811115610ac3565b3461027557604036600319011261027557610d7161046a565b60243590811515809203610275573360009081526010602090815260408083206001600160a01b0385168452909152902060ff1981541660ff841617905560405191825260018060a01b0316907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b34610275576000366003190112610275576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461027557608036600319011261027557610e4461046a565b610e4c610480565b6064359160443567ffffffffffffffff841161027557366023850112156102755783600401359267ffffffffffffffff84116102755736602485870101116102755760246105d8950192611ac2565b34610275576000366003190112610275576104326040805190610ebe8183610338565b601c82527f68747470733a2f2f676977612e6d61726b6574732f676f6e6773696e00000000602083015251918291826103be565b34610275576000366003190112610275576020600154604051908152f35b34610275576020366003190112610275576004356000818152600d6020526040902054610f47906001600160a01b03161515611b9c565b610f5f81600052600b60205260406000205460081c90565b610f7782600052600b60205260ff6040600020541690565b610f8083613521565b91610f8a90613705565b92610f94826137fb565b91610f9e906138ff565b90610fa890612d61565b610fb190613a22565b604051717b226e616d65223a22474f4e4753494e202360701b602082015294859491939160328601610fe291611bd3565b7f222c2265787465726e616c5f75726c223a2268747470733a2f2f676977612e6d81526d30b935b2ba3997b3b7b733b9b4b760911b6020820152602e017f222c226465736372697074696f6e223a224f6e65206f662074686520382c383881527f3820666f756e64696e67207375626a65637473206f6620746865206e6577206460208201527f796e617374792e204d696e746564206f6e20526f62696e686f6f64204368616960408201527f6e3b2031303025206f662070726f63656564732066756e64207468652047495760608201527f41206d61696e6e6574206c6971756964697479206d6967726174696f6e2e204c60808201527f616e64206465656420696e20746865204749574120776f726c64207363616c6560a08201527f7320627920746965722e20417274206c6976657320656e746972656c79206f6e60c08201526c081d1a194818da185a5b8b888b609a1b60e082015260ed017f2261747472696275746573223a5b7b2274726169745f74797065223a22436c6181526c39b99116113b30b63ab2911d1160991b6020820152602d0161118491611bd3565b7f227d2c7b2274726169745f74797065223a2254696572222c2276616c7565223a8152601160f91b60208201526021016111bd91611bd3565b7f227d2c7b2274726169745f74797065223a224c616e64204772616e74222c227681526630b63ab2911d1160c91b60208201526027016111fc91611bd3565b7f227d5d2c22696d616765223a22646174613a696d6167652f7376672b786d6c3b81526618985cd94d8d0b60ca1b602082015260270161123b91611bd3565b61227d60f01b815260020103601f19810182526112589082610338565b61126190613a22565b6040517f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000006020820152908190603d820161129a91611bd3565b03601f19810182526112ac9082610338565b6040516104328192826103be565b34610275576040366003190112610275576112d361046a565b6024356000917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031680611351575b505061133590610432928082106000146113455750610b41610b3c825b61132f81611853565b936115ff565b6040519081529081906020820190565b610b3c610b4191611326565b6040516370a0823160e01b81526001600160a01b0383166004820152919391929190602090849060249082905afa801561079357610432946113359483926113d1575b506001600160a01b03166000908152600c602052604090205b5490818111156113ca576113c192506115ff565b92819250611309565b50506113c1565b6113ad9192506113ef9060203d602011610d4657610d388183610338565b9190611394565b34610275576020366003190112610275576001600160a01b0361141761046a565b16600052600c6020526020604060002054604051908152f35b346102755760003660031901126102755761043260408051906114538183610338565b601b82527f68747470733a2f2f782e636f6d2f474957414c41554e43485041440000000000602083015251918291826103be565b34610275576020366003190112610275576104326114a6600435612d61565b604051918291826103be565b3461027557604036600319011261027557602060ff6115036114d261046a565b6114da610480565b6001600160a01b0391821660009081526010865260408082209290931681526020919091522090565b54166040519015158152f35b3461027557602036600319011261027557600435600052600b6020526020604060002054604051908152f35b3461027557600036600319011261027557602060405160148152f35b1561155e57565b606460405162461bcd60e51b81526020600482015260046024820152630c2eae8d60e31b6044820152fd5b1561159057565b606460405162461bcd60e51b81526020600482015260046024820152637a65726f60e01b6044820152fd5b634e487b7160e01b600052601160045260246000fd5b60001981019190821161067957565b6122b803906122b8821161067957565b60071981019190821161067957565b9190820391821161067957565b906001820180921161067957565b906005820180921161067957565b906004820180921161067957565b906002820180921161067957565b906003820180921161067957565b603001908160301161067957565b600101908160011161067957565b600201908160021161067957565b9190820180921161067957565b9061169e83600052600d602052604060002090565b546001600160a01b03838116929116829003611826576001600160a01b0381169261176c9190611746906116d3861515611589565b84331480156117eb575b801561179f575b6116ed90611557565b61171461170488600052600f602052604060002090565b80546001600160a01b0319169055565b61172c836104f689600052600d602052604060002090565b6001600160a01b03166000908152600e6020526040902090565b61175081546115d1565b90556001600160a01b03166000908152600e6020526040902090565b611776815461160c565b90557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4565b506116ed6117e46117dd336117c68560018060a01b03166000526010602052604060002090565b9060018060a01b0316600052602052604060002090565b5460ff1690565b90506116e4565b50336118206118146118078a600052600f602052604060002090565b546001600160a01b031690565b6001600160a01b031690565b146116dd565b60405162461bcd60e51b815260206004820152600560248201526437bbb732b960d91b6044820152606490fd5b90660886c98b760000820291808304660886c98b760000149015171561067957565b90660e35fa931a0000820291808304660e35fa931a0000149015171561067957565b600281901b91906001600160fe1b0381160361067957565b908160011b918083046002149015171561067957565b90600a820291808304600a149015171561067957565b634e487b7160e01b600052601260045260246000fd5b81156118fb570490565b6118db565b90816020910312610275575161191581610263565b90565b6040513d6000823e3d90fd5b1561192b57565b60405162461bcd60e51b81526020600482015260086024820152673932b1b2b4bb32b960c11b6044820152606490fd5b1561196257565b60405162461bcd60e51b815260206004820152600d60248201526c36b4b73a103737ba1037b832b760991b6044820152606490fd5b1561199e57565b60405162461bcd60e51b815260206004820152600360248201526271747960e81b6044820152606490fd5b156119d057565b60405162461bcd60e51b81526020600482015260086024820152671cdbdb19081bdd5d60c21b6044820152606490fd5b90816020910312610275575190565b15611a1657565b60405162461bcd60e51b81526020600482015260096024820152680eee4dedcce408aa8960bb1b6044820152606490fd5b60001981146106795760010190565b3d15611a81573d90611a678261036a565b91611a756040519384610338565b82523d6000602084013e565b606090565b15611a8d57565b60405162461bcd60e51b815260206004820152600d60248201526c3a3932b0b9bab93c903c3332b960991b6044820152606490fd5b9291611acf818386611689565b813b15938415611ae8575b505050506103689150611924565b6020945060a46000918760405198899788968794630a85bd0160e11b865233600487015260018060a01b03166024860152604485015260806064850152816084850152848401378181018301849052601f01601f191681010301926001600160a01b03165af180156107935761036891600091611b7d575b506001600160e01b031916630a85bd0160e11b1438808080611ada565b611b96915060203d60201161078c5761077e8183610338565b38611b60565b15611ba357565b60405162461bcd60e51b81526020600482015260086024820152673737903a37b5b2b760c11b6044820152606490fd5b90611be66020928281519485920161039b565b0190565b60405190611bf9604083610338565b600f82526e0d8c0a8a920e97878787058b1c140760891b6020830152565b60405190611c26606083610338565b602382527f0d00223a2d0004223a2d1209223a2d0a12223a2d0415223a2d1115223a2d1319602083015262223a2d60e81b6040830152565b60405190611c6d606083610338565b602d82527f0d0b461814160b4618140f0d220a0a151046181408164618141317461814171860208301526c0882828346c882828547118605609a1b6040830152565b60405190611cbe60a083610338565b606482527f0302786ea50702786ea50203786ea50303e1d7ff0403786ea50304786ea5140760208301527f786ea51408e1d7ff040be1d7ff120b786ea50511786ea51211786ea50912786e60408301527fa50f14786ea50915786ea51218e1d7ff051c786ea50a1c786ea5111c786ea50f6060830152631de1d7ff60e01b6080830152565b60405190611d5361032083610338565b6102e482527f0100966e260700d8a43c0a00d8a43c0e00d8a43c1200966e260201966e26030160208301527f966e260701d8a43c0b01d8a43c0d01d8a43c0e01fff4b21101d8a43c0402966e60408301527f260702fff4b20802d8a43c0b02d8a43c0d02d8a43c1002d8a43c1602966e261760608301527f02966e260403d8a43c0503d8a43c0803d8a43c0b03d8a43c0d03d8a43c1003d860808301527fa43c1403966e261503966e260604d8a43c0904d8a43c0f04d8a43c1204d8a43c60a08301527f1304d8a43c0005966e260705d8a43c1205d8a43c0106966e260206966e26030660c08301527fd8a43c0806d8a43c1006d8a43c1106d8a43c1406fff4b20407d8a43c0507d8a460e08301527f3c0607d8a43c1507966e261607966e261707966e260208fff4b20708d8a43c106101008301527f08d8a43c1108d8a43c1208d8a43c1308d8a43c1408d8a43c030ad8a43c040ad86101208301527fa43c050ad8a43c060ad8a43c070ad8a43c100ad8a43c000b966e26010b966e266101408301527f020b966e26110bd8a43c120bd8a43c130bd8a43c060cd8a43c070cd8a43c0f0c6101608301527fd8a43c140cd8a43c150c966e26160c966e26050dd8a43c100dd8a43c160dfff46101808301527fb2170d966e26040ed8a43c050ed8a43c080ed8a43c0e0ed8a43c110ed8a43c166101a08301527f0efff4b2020f966e26030f966e26070fd8a43c0a0fd8a43c0c0fd8a43c0f0fd86101c08301527fa43c120fd8a43c130fd8a43c0010966e260110fff4b20710d8a43c0a10d8a43c6101e08301527f0c10d8a43c0f10d8a43c1310966e260611d8a43c0a11d8a43c0c11d8a43c10116102008301527fd8a43c1411966e261511966e260512966e260912d8a43c0d12d8a43c1012d8a46102208301527f3c1612966e260513966e260913d8a43c0d13d8a43c1113966e261713966e26046102408301527f14966e260914966e260d14966e261114966e260415966e260915966e261215966102608301527f6e261315fff4b20316966e260816966e260d16966e261216966e260217966e266102808301527f0617fff4b20817966e260d17966e261317966e260218966e260d18966e2613186102a08301527f966e260119966e260819966e260d19fff4b21419966e26081a966e260d1a966e6102c08301527f26141a966e26071b966e260e1b966e26151b966e26071c966e260e1c966e26076102e0830152630ecb371360e11b610300830152565b9060058110156109595760051b0190565b8051156109595760200190565b908151811015610959570160200190565b6040519061212161022083610338565b6101e882527f0507020b0509060a050f020b0607010b06080309060b020a060d03090610010b60208301527f0707010b0708010a07090114070a0107070b020a070d0114070e0107070f010a60408301527f0710010b0807010b0808030a080b020b080d030a0810010b0907020b0909060a60608301527f090f020b0a08020b0a0a040a0a0e020b0b08020c0b0a04000b0e020c0c06020060808301527f0c0801020c0906000c0f01020c1002000d0403000d0701020d0808000d10010260a08301527f0d1103000e0404000e0801020e0902000e0b02030e0d02000e0f01020e10040060c08301527f0f0401010f0503000f0801020f0901000f0a01030f0b02040f0d01030f0e010060e08301527f0f0f01020f1003000f13010110040101100503001008010210090200100b02036101008301527f100d0200100f01021010030010130101110401011105030011080805111003006101208301527f111301011204010112050e00121301011304010113050e0013130101140401016101408301527f14050500140a0102140b0200140d0102140e05001413010115040101150505006101608301527f150a0102150b0200150d0102150e0500151301011604010116050400160901026101808301527f160a0400160e0102160f040016130101170401011705030017080102170906006101a08301527f170f0102171003001713010118040101180503001808010218090600180f01026101c08301527f18100300181301011904010219050e00191301021a0410021b0502081b1102086101e0830152670380a0610382006160c31b610200830152565b6040519061238b60e083610338565b60bd82527f110b02120d02130d02140d02150d02160d02170d02180d02190d021a0800000060c0837f0b02080c02080a03080b03080c03080d03080704030804030904030a04030b0460208201527f030c04030d04030e04030f0403100403020b04020c0d040c03050c02060c020760408201527f0c02090c020a0c020b0c020c0c020d0c020e0c02100c02110c02120c02130c0360608201527f020d0d040d02050d02060d02080d02090d020a0d020b0d020c0d020d0d020e0d60808201527f020f0d02110d02120d02130d02020e0d020f0d01100302100303100302110d0360a08201520152565b6040519061248460c083610338565b608782527f0a01080b01080c01080d01080902080a02080b02080c02080d02080e0208060360208301527f080703080803080903080a03080b03080c03080d03080e03080f03081003081160408301527f03080504080604080704080804080904080a04080b04080c04080d04080e040860608301527f0f0408100408110408120408130e03140e0c150e0c160e0c120f0b130f0d140f6080830152660d150f0d160f0d60c81b60a0830152565b6040519061254160a083610338565b607282527f0803050903050a03050b03050c03050d03050e03050f0305100303070405080460208301527f050904050a04050b04050c04050d04050e04050f0405100405140c13150c131660408301527f0c13130d13140d13150d13160d13170d13130e13140e13150e13160e13170e13606083015271020f03150f1003100b14100b02110302130360701b6080830152565b604051906125e461010083610338565b60cc82527f0803020903020a03020b03020c03020d03020e03020f0302070402080402090460208301527f020a04020b04020c04020d04020e04020f04021004020705020805020905020a60408301527f05020b05020c05020d05020e05020f050210050207060208060b09060b0a060b60608301527f0b060b0c060b0d060b0e060b0f060b1006020809080909080a09080b09080c0960808301527f080d09080e09080f0908080a08090a080a0a080b0a080c0a080d0a080e0a080f60a08301527f0a08020e0d150e0d020f0d150f0d02100d03100b14100b15100d02110d15110d60c08301526a4241a2a241a0426102a26160a31b60e0830152565b604051906126f160e083610338565b60ab82527f0b01100c01100a02100b02100c02100d02100803100903100a03100b03100c0360208301527f100d03100e03100f03100604100704100804100904100a04100b04100c04100d60408301527f04100e04100f0410100410110410020a0d020b10140b04150b04010c10020c1060608301527f140c0f150c0f020d10140d0f150d0f020e10140e0f150e0f020f10140f0f150f60808301527f0f02101014100f15100f02111003110b0212100213100214100215100216100160a08301526a171002171002181002190d60a81b60c0830152565b604051906127d860c083610338565b609382527f09030a0a030a0b030a0c030a0d030a0e030a08040a09040a0a040b0b040a0c0460208301527f0b0d040a0e040b0f040a020903010a03020a10030a03020b10020c10090c0e0a60408301527f0c0e0b0c0e0c0c0e0d0c0e0e0c0e020d10080d0e090d0e0a0d0e0b0d0e0c0d0e60608301527f0d0d0e0e0d0e0f0d0e020e10020f1002101003100b0211100212100213100214608083015272010021510021610021710021810021910021a1606c1b60a0830152565b604051906128a261018083610338565b61015f82527f0f0b180f0c180f0d180f0e180f09190f0a190f0b190f0c190f0d190f0e190f00610160837f0804050904050a04050b04050c04050d04050e04050f0405130b0d140b0d150b60208201527f0d160b0d170b0d090c0e0a0c0e0b0c0e0c0c0e0d0c0e0e0c0e130c09140c091560408201527f0c09160c09170c09090d0f0a0d0f0b0d0f0c0d0f0d0d0f0e0d0f130d09140d0960608201527f150d09160d09170d09090e0f0a0e0f0b0e0f0c0e0f0d0e0f0e0e0f150e10090f60808201527f0f0a0f0f0b0f0f0c0f0f0d0f0f0e0f0f150f1009100f0a100f0b100f0c100f0d60a08201527f100f0e100f14100b15101009110f0a110f0b110f0c110f0d110f0e110f15111060c08201527f09120f0a120f0b120f0c120f0d120f0e120f15121009130f0a130f0b130f0c1360e08201527f0f0d130f0e130f15131009140f0a140f0b140f0c140f0d140f0e140f151410096101008201527f150f0a150f0b150f0c150f0d150f0e150f15151009160f0a160f0b160f0c160f6101208201527f0d160f0e160f15161009170f0a170f0b170f0c170f0d170f0e170f09180f0a186101408201520152565b60405190612a5f61010083610338565b60de82527f140e0e150e0e160e0e170e0d130f0d140f0e150f0e160f0e170f0d14100b000060e0837f0705110805120905120a05120b05120c05120d05120e05120f0512100511070660208201527f120806120906120a06120b06120c06120d06120e06120f06121006120707120860408201527f07080a07080b07080c07080d07080e07140f070810071207081208081209081260608201527f0a08120b08120c08120d08120e08120f08121008120709120809120909110a0960808201527f110b09110c09110d09110e09110f0912100912080a12090a120a0a120b0a120c60a08201527f0a120d0a120e0a120f0a12150c10130d0d140d0e150d0e160d0e170d0d130e0d60c08201520152565b9060088110156109595760051b0190565b60405190612b8f606083610338565b602a82527f020a06010c06010e060110060112060a12150b12150d12150913150c13160e136020830152690a808a03008b03008c0360b11b6040830152565b60405190612bdd604083610338565b600f82526e140d06150d06140e16150e16160f1760881b6020830152565b60405190612c0a604083610338565b601882527f0b05180c0518140b06150b06160b06020f1602111602131600000000000000006020830152565b60405190612c45604083610338565b601e82527f0c03170d03170a04170b0417010e06160e0601100616100601120616120600006020830152565b60405190612c80604083610338565b60158252740a050b8a850b008683008783008883008983008a8360591b6020830152565b60405190612cb3606083610338565b602182527f0901160a01160b01160c01160d01160e01160802160f021602080601090603096020830152600360f91b6040830152565b60405190612cf8606083610338565b602482527f160916120a16140a17130b06140b06150b06160b06170b060b0f160c0f170b10602083015263170c101760e01b6040830152565b60405190612d40604083610338565b601282527105820c06020c04840b87040b8986030b860360711b6020830152565b90612d8b60018060a01b03612d8361180785600052600d602052604060002090565b161515611b9c565b612dbb612da683600052600b60205260406000205460081c90565b92600052600b60205260ff6040600020541690565b612e98612eb5612dd283612dcd611bea565b613b2c565b612ea7604051938492612e92612e5b60208601605b907f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323081527f30302f737667222076696577426f783d2230203020323430203330302220736860208201527f6170652d72656e646572696e673d2263726973704564676573223e000000000060408201520190565b7f3c726563742077696474683d2232343022206865696768743d2233303022206681526434b6361e9160d91b602082015260250190565b90611bd3565b6211179f60e91b815260030190565b03601f198101835282610338565b9160a091612f0981612ec68561035a565b612ece610386565b8152612ed8611c17565b6020820152612ee5611c5e565b6040820152612ef2611caf565b6060820152612eff611d43565b60808201526120e2565b51926000945b612f1886611628565b612f22865161160c565b1115612fa757612e92612f9b612fa192612ea7612f8b8a8a612f5e612f58612f4a8484612100565b516001600160f81b03191690565b60f81c90565b60ff80612f82612f7c612f58612f4a612f768961160c565b88612100565b95611636565b94169116613bfc565b6040519485936020850190611bd3565b9561161a565b94612f0f565b94509194909250612fb6612111565b916000945b612fc486611644565b8451111561308057612fd58661160c565b612fdf9085612100565b5160f81c612fed8786612100565b5160f81c612ffa88611636565b6130049087612100565b5160f81c90876130138a611644565b61301d9089612100565b5161302b919060f81c613d07565b9160ff169060ff169260ff169261304193613dfc565b906040519182916020830161305591611bd3565b61305e91611bd3565b03601f19810182526130709082610338565b9461307a90611628565b94612fbb565b9450915093610100946130ff816130968861035a565b61309e61237c565b81526130a8612475565b60208201526130b5612532565b60408201526130c26125d4565b60608201526130cf6126e2565b60808201526130dc6127c9565b868201526130e8612892565b60c08201526130f5612a4f565b60e0820152612b6f565b51926000955b61310e87611636565b8551111561319557612e9261318961318f92612ea7612f8b8b8060ff806131808f8f613175612f58612f4a8361316f613169612f58612f4a61316361315d8f612f4a612f589161317b9d612100565b9e61160c565b85612100565b9b611636565b90612100565b60ff1690565b613d07565b93169116613f0d565b96611644565b95613105565b9550919590925060038410156131d6575b505050506119156131c491612ea76040519384926020840190611bd3565b651e17b9bb339f60d11b815260060190565b906131e4613244939261035a565b906131ed612b80565b82526131f7612bce565b6020830152613204612bfb565b6040830152613211612c36565b606083015261321e612c71565b608083015261322b612ca4565b90820152613237612ce9565b60c08201526130f5612d31565b516000925b61325284611636565b825111156132ad57612e926132a16132a792612ea7612f8b888060ff806131808c61317b613175612f588f8061316f613169612f58612f4a61316361315d8f612f4a612f5891612f4a9a612100565b93611644565b92613249565b925061191591506131c4905038806131a6565b60405162461bcd60e51b81526020600482015260066024820152656d696e74282960d01b6044820152606490fd5b81156118fb570690565b61ffff6000199116019061ffff821161067957565b612ea761335d61331c436115d1565b60408051914060208301908152908201949094526bffffffffffffffffffffffff1933606090811b82168184015230901b1660748201529182906088820190565b5190209061337d6133776133726000546115d1565b6115e0565b836132ee565b916000925b60088410613489575b5060088314613480575b6133c69060801c6133c06133b96133ab8661093e565b905461ffff9160031b1c1690565b61ffff1690565b906132ee565b906000915b6005831061343b575b5060058214613432575b6134266133f4836133ee866109bb565b506109cd565b61340e61340982845461ffff9160031b1c1690565b6132f8565b9061ffff8084549260031b9316831b921b1916179055565b6103686133f48461093e565b600491506133de565b61344e6133b96133ab856133ee886109bb565b811061347b5761347360019161346d6133b96133ab876133ee8a6109bb565b906115ff565b9201916133cb565b6133d4565b60079250613395565b6134986133b96133ab8661093e565b81106134bb576134b360019161346d6133b96133ab8861093e565b930192613382565b61338b565b604080519091906134d18382610338565b6007815291601f1901366020840137565b906134ec8261036a565b6134f96040519182610338565b828152809261350a601f199161036a565b0190602036910137565b8015610679576000190190565b9081156135b257600082805b61359357508061353d84926134e2565b915b61354857509150565b61355461358c91613514565b93613577613567613175600a8406611652565b60f81b6001600160f81b03191690565b60001a6135848685612100565b53600a900490565b928361353f565b92906135a16135a991611a47565b93600a900490565b8093919361352d565b90506040516135c2604082610338565b60018152600360fc1b602082015290565b604051906135e2604083610338565b600d82526c14d153d39092483b21283aee61609a1b6020830152565b6040519061360d604083610338565b600d82526c4d5544414e4720ebacb4eb8bb960981b6020830152565b60405190613638604083610338565b600d82526c4a414741454b20ec9e90eab09d60981b6020830152565b60405190613663604083610338565b600d82526c08eaa9c8ea6aa41d56d03d9113609b1b6020830152565b6040519061368e604083610338565b601082526f14d1555391d3965153c83b22ae7ae82960821b6020830152565b604051906136bc604083610338565b600e82526d4441454a414e4720eb8c80ec9ea560901b6020830152565b604051906136e8604083610338565b600f82526d8eae829c8e88828a41d56923d719608f1b6020830152565b6040519061010082019180831067ffffffffffffffff8411176103335760408381526137a7936137358282610338565b600e81526d48574152414e4720ed9994eb9e9160901b6020820152825261375a6135d3565b60208301526137676135fe565b90820152613773613629565b6060820152613780613654565b608082015261378d61367f565b60a082015261379a6136ad565b60c08201526130f56136d9565b5190565b604051906137ba604083610338565b600c82526b4f4253494449414e20ed9d9160a01b6020830152565b604051906137e4604083610338565b600882526708e9e988841d571160c31b6020830152565b6137a79060405161380b81610317565b604080516138198282610338565b6008815267434c415920ed9d9960c01b60208201528252805161383c8282610338565b60088152674a41444520ec98a560c01b602082015260208301528051906138638183610338565b600b82526a086a4929aa69e9c41db31160ab1b60208301528201526138866137ab565b6060820152612eff6137d5565b604051906138a2604083610338565b601382527264697374726963742c2038783820706c6f747360681b6020830152565b604051906138d3604083610338565b601982527f6e616d65642076696c6c616765202b206865726f206c6f7264000000000000006020830152565b6137a79060405161390f81610317565b6040805161391d8282610338565b600b81526a0c481b185b99081c1b1bdd60aa1b6020820152825280516139438282610338565b601981527f32206c616e6420706c6f74732c2063686f696365207a6f6e65000000000000006020820152602083015280519061397f8183610338565b601882527f6e616d6564206275696c64696e67202b203420706c6f7473000000000000000060208301528201526139b4613893565b6060820152612eff6138c4565b604051906139d0606083610338565b604082527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f6040837f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208201520152565b805115613af557613a316139c1565b613a55613a50613a4b613a448551611636565b6003900490565b611897565b6134e2565b916020830191819082518301915b828110613aa557505050600390510680600114613a9457600214613a85575090565b603d60f81b6000199091015290565b50613d3d60f01b6001199091015290565b60036004919592939501916001603f845182828260121c16880101518453828282600c1c16880101518385015382828260061c168801015160028501531685010151600382015301939190613a63565b50611915610386565b60405190613b0d604083610338565b601082526f181899199a1a9b1b9c1cb0b131b232b360811b6020830152565b90613b35613afe565b91613b3e6134c0565b926023613b4a856120f3565b5360005b60038110613b5d575050505090565b60038402908482046003148515171561067957613bd6612f4a600f613b93612f58612f4a613b8d8760019961167c565b8a612100565b613baf612f4a613ba9600484901c600f16613175565b89612100565b613bce613bc3613bbe886118af565b611660565b9160001a918c612100565b531685612100565b613bf5613bea613be5846118af565b61166e565b9160001a9188612100565b5301613b4e565b939293613c07613afe565b92613c106134c0565b936023613c1c866120f3565b5360005b60038110613c3657505050611915939450613f0d565b8088019081891161067957613c8f612f4a600f613c5f613c5860019689612100565b5160f81c90565b613c75612f4a613ba9600484901c600f16613175565b613bce613c84613bbe886118af565b9160001a918d612100565b613ca9613c9e613be5846118af565b9160001a9189612100565b5301613c20565b60405190613cbf606083610338565b603382527f18161434302cdeba94a88464eee6d2c8c0b0b06042783e2c8c643cc83c32e6c86020830152725a5a8cbef6f2e856d282ffd85cff543a78e6ff60681b6040830152565b9060088210613d2c575061191590613d26613d20613cb0565b916115f0565b90613b2c565b60405191613d3b60a084610338565b607883527f7a6046967a5c5a4430a08660b89e767c4a340000001a16143a6652588a6c264660208401527f3878a88296c69e9a392b0000001a16148a3028ac4a3c60201cd4a83cf0cd6e3c60408401527f14120000001a1614302c384842541e1c26786e96a094c45a286ec8a5ffb991ff60608401527fbe9230e4ba548c6822fce28cfff8c89a392bfff8be96ffc3000000000000000060808401528160031b91808304600814901517156106795781018091116106795761191591613b2c565b92909192600a810290808204600a149015171561067957613e1c90613521565b91600a810290808204600a149015171561067957613e3990613521565b92613e43906118c5565b613e4c90613521565b613e5660016118c5565b613e5f90613521565b604051681e3932b1ba103c1e9160b91b602082015294859491929160298601613e8791611bd3565b6411103c9e9160d91b8152600501613e9e91611bd3565b6811103bb4b23a341e9160b91b8152600901613eb991611bd3565b6911103432b4b3b43a1e9160b11b8152600a01613ed591611bd3565b6711103334b6361e9160c11b8152600801613eef91611bd3565b6211179f60e91b815260030103601f19810182526119159082610338565b600a810290808204600a149015171561067957613f2990613521565b90600a810290808204600a149015171561067957613f4690613521565b91613e4360016118c556fea2646970667358221220b0dd165628ec2a98066f699142b505ae8a9334a7c3b5611311c810aeea1cb5b364736f6c634300081a00330000000000000000000000006d71f0ceacf517dbbc09044708086a26b52e691a000000000000000000000000b59601f82cd21ab2cd90092128e6d82d6f2289d70000000000000000000000000000000000000000000000000000000000000000
0x6080604052600436101561001e575b361561001957600080fd5b6132c0565b60003560e01c806301ffc9a71461025e57806306fdde0314610259578063081812fc14610254578063095ea7b31461024f57806318160ddd1461024a57806323b872dd14610245578063255e4685146102405780632a55205a1461023b57806332cb6b0c1461023657806336a690b31461023157806342842e0e1461022c5780634324aa211461022757806347ecb6651461022257806353f96df21461021d57806355234ec01461021857806361d027b3146102135780636352211e1461020e57806370a082311461020957806374f75b9c146102045780638d859f3e146101ff5780639442de52146101fa57806395d89b41146101f5578063a0712d68146101f0578063a22cb465146101eb578063b2e0a100146101e6578063b88d4fde146101e1578063beb0a416146101dc578063c5c4744c146101d7578063c87b56dd146101d2578063d527979a146101cd578063d9a49c62146101c8578063dd58af85146101c3578063e2ae5f13146101be578063e985e9c5146101b9578063eb4d82c8146101b45763f43a22dc0361000e5761153b565b61150f565b6114b2565b611487565b611430565b6113f6565b6112ba565b610f10565b610ef2565b610e9b565b610e2b565b610de6565b610d58565b610a7f565b610a3e565b6109e9565b610999565b61095e565b6108ee565b6108ba565b610875565b610849565b61081c565b6107cd565b610798565b6106bd565b61069b565b61067e565b610615565b6105da565b6105c1565b610569565b610496565b610436565b6103ea565b61027a565b6001600160e01b031981160361027557565b600080fd5b346102755760203660031901126102755760043561029781610263565b63ffffffff60e01b166380ac58cd60e01b81149081156102f0575b81156102df575b81156102ce575b506040519015158152602090f35b63152a902d60e11b149050386102c0565b6301ffc9a760e01b811491506102b9565b635b5e139f60e01b811491506102b2565b634e487b7160e01b600052604160045260246000fd5b60a0810190811067ffffffffffffffff82111761033357604052565b610301565b90601f8019910116810190811067ffffffffffffffff82111761033357604052565b906103686040519283610338565b565b67ffffffffffffffff811161033357601f01601f191660200190565b60405190610395602083610338565b60008252565b60005b8381106103ae5750506000910152565b818101518382015260200161039e565b604091602082526103de815180928160208601526020868601910161039b565b601f01601f1916010190565b3461027557600036600319011261027557610432604080519061040d8183610338565b600e82526d474f4e4753494e20e58a9fe887a360901b602083015251918291826103be565b0390f35b3461027557602036600319011261027557600435600052600f602052602060018060a01b0360406000205416604051908152f35b600435906001600160a01b038216820361027557565b602435906001600160a01b038216820361027557565b34610275576040366003190112610275576104af61046a565b6024359081600052600d60205260018060a01b0360406000205416908133148015610546575b6104de90611557565b610515816104f685600052600f602052604060002090565b80546001600160a01b0319166001600160a01b03909216919091179055565b6001600160a01b0316907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600080a4005b50600082815260106020908152604080832033845290915290205460ff166104d5565b34610275576000366003190112610275576020600054604051908152f35b6060906003190112610275576004356001600160a01b038116810361027557906024356001600160a01b0381168103610275579060443590565b34610275576105d86105d236610587565b91611689565b005b346102755760003660031901126102755760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346102755760403660031901126102755760243560058102908082046005149015171561067957604080517f0000000000000000000000006d71f0ceacf517dbbc09044708086a26b52e691a6001600160a01b031681526064909204602083015290f35b6115bb565b346102755760003660031901126102755760206040516122b88152f35b34610275576000366003190112610275576020604051660886c98b7600008152f35b34610275576106cb36610587565b6106d88183859495611689565b823b159182156106ec575b6105d883611924565b604051630a85bd0160e11b81523360048201526001600160a01b039182166024820152604481019290925260806064830152600060848301819052919360209350849260a4928492165af18015610793576105d891600091610764575b506001600160e01b031916630a85bd0160e11b1438806106e3565b610786915060203d60201161078c575b61077e8183610338565b810190611900565b38610749565b503d610774565b611918565b346102755760203660031901126102755760206107c5600435600052600b60205260406000205460081c90565b604051908152f35b346102755760003660031901126102755761043260408051906107f08183610338565b60158252741a1d1d1c1cce8bcbdd0b9b594bd9da5dd858da185d605a1b602083015251918291826103be565b346102755760203660031901126102755760206107c5600435600052600b60205260ff6040600020541690565b34610275576000366003190112610275576000546122b8036122b8811161067957602090604051908152f35b34610275576000366003190112610275576040517f0000000000000000000000006d71f0ceacf517dbbc09044708086a26b52e691a6001600160a01b03168152602090f35b3461027557602036600319011261027557600435600052600d602052602060018060a01b0360406000205416604051908152f35b34610275576020366003190112610275576001600160a01b0361090f61046a565b16600052600e6020526020604060002054604051908152f35b634e487b7160e01b600052603260045260246000fd5b90600882101561095957601e8260041c600a019260011b1690565b610928565b346102755760203660031901126102755760043560088110156102755761ffff61098960209261093e565b90549060031b1c16604051908152f35b34610275576000366003190112610275576020604051660e35fa931a00008152f35b60088110156109595760020190600090565b919091600583101561095957601e908360041c019260011b1690565b346102755760403660031901126102755760243560043560088110156102755760058210156102755761ffff91610a22916002016109cd565b90549060031b1c16604051809161ffff60208301911682520390f35b34610275576000366003190112610275576104326040805190610a618183610338565b600782526623a7a723a9a4a760c91b602083015251918291826103be565b602036600319011261027557600435610aba7f000000000000000000000000000000000000000000000000000000000000000042101561195b565b80151580610d4d575b610acc90611997565b610ae56122b8610ade8360005461167c565b11156119c9565b60007f000000000000000000000000b59601f82cd21ab2cd90092128e6d82d6f2289d76001600160a01b031680610cbf575b5080821015610cba5750805b610b47610b2f82611853565b610b41610b3c84866115ff565b611875565b9061167c565b90610b53823414611a0f565b80610c9a575b5060005b828110610bd257336000908152600e602052604090208390610b82905b91825461167c565b9055610b98610b933460015461167c565b600155565b6105d86000808080347f0000000000000000000000006d71f0ceacf517dbbc09044708086a26b52e691a5af1610bcc611a56565b50611a86565b600190610be0600054611a47565b806000557f320fc1dc7cf7acc2d6c3c14249d4b4b9a120ee0ba154af0cd0865cf19e2b8655610c0e8261330d565b80610c1b83949360081b90565b17610c3085600052600b602052604060002090565b55610c49336104f686600052600d602052604060002090565b833360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8180a4610c7b88886118f1565b604080519485526020850192909252908301523391606090a301610b5d565b336000908152600c60205260409020610cb290610b7a565b905538610b59565b610b23565b6040516370a0823160e01b815233600482015290602090829060249082905afa908115610793578291610d1e575b50336000908152600c60205260409020549081811115610d1757610d1192506115ff565b38610b17565b5050610d11565b610d40915060203d602011610d46575b610d388183610338565b810190611a00565b38610ced565b503d610d2e565b506014811115610ac3565b3461027557604036600319011261027557610d7161046a565b60243590811515809203610275573360009081526010602090815260408083206001600160a01b0385168452909152902060ff1981541660ff841617905560405191825260018060a01b0316907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b34610275576000366003190112610275576040517f000000000000000000000000b59601f82cd21ab2cd90092128e6d82d6f2289d76001600160a01b03168152602090f35b3461027557608036600319011261027557610e4461046a565b610e4c610480565b6064359160443567ffffffffffffffff841161027557366023850112156102755783600401359267ffffffffffffffff84116102755736602485870101116102755760246105d8950192611ac2565b34610275576000366003190112610275576104326040805190610ebe8183610338565b601c82527f68747470733a2f2f676977612e6d61726b6574732f676f6e6773696e00000000602083015251918291826103be565b34610275576000366003190112610275576020600154604051908152f35b34610275576020366003190112610275576004356000818152600d6020526040902054610f47906001600160a01b03161515611b9c565b610f5f81600052600b60205260406000205460081c90565b610f7782600052600b60205260ff6040600020541690565b610f8083613521565b91610f8a90613705565b92610f94826137fb565b91610f9e906138ff565b90610fa890612d61565b610fb190613a22565b604051717b226e616d65223a22474f4e4753494e202360701b602082015294859491939160328601610fe291611bd3565b7f222c2265787465726e616c5f75726c223a2268747470733a2f2f676977612e6d81526d30b935b2ba3997b3b7b733b9b4b760911b6020820152602e017f222c226465736372697074696f6e223a224f6e65206f662074686520382c383881527f3820666f756e64696e67207375626a65637473206f6620746865206e6577206460208201527f796e617374792e204d696e746564206f6e20526f62696e686f6f64204368616960408201527f6e3b2031303025206f662070726f63656564732066756e64207468652047495760608201527f41206d61696e6e6574206c6971756964697479206d6967726174696f6e2e204c60808201527f616e64206465656420696e20746865204749574120776f726c64207363616c6560a08201527f7320627920746965722e20417274206c6976657320656e746972656c79206f6e60c08201526c081d1a194818da185a5b8b888b609a1b60e082015260ed017f2261747472696275746573223a5b7b2274726169745f74797065223a22436c6181526c39b99116113b30b63ab2911d1160991b6020820152602d0161118491611bd3565b7f227d2c7b2274726169745f74797065223a2254696572222c2276616c7565223a8152601160f91b60208201526021016111bd91611bd3565b7f227d2c7b2274726169745f74797065223a224c616e64204772616e74222c227681526630b63ab2911d1160c91b60208201526027016111fc91611bd3565b7f227d5d2c22696d616765223a22646174613a696d6167652f7376672b786d6c3b81526618985cd94d8d0b60ca1b602082015260270161123b91611bd3565b61227d60f01b815260020103601f19810182526112589082610338565b61126190613a22565b6040517f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000006020820152908190603d820161129a91611bd3565b03601f19810182526112ac9082610338565b6040516104328192826103be565b34610275576040366003190112610275576112d361046a565b6024356000917f000000000000000000000000b59601f82cd21ab2cd90092128e6d82d6f2289d76001600160a01b031680611351575b505061133590610432928082106000146113455750610b41610b3c825b61132f81611853565b936115ff565b6040519081529081906020820190565b610b3c610b4191611326565b6040516370a0823160e01b81526001600160a01b0383166004820152919391929190602090849060249082905afa801561079357610432946113359483926113d1575b506001600160a01b03166000908152600c602052604090205b5490818111156113ca576113c192506115ff565b92819250611309565b50506113c1565b6113ad9192506113ef9060203d602011610d4657610d388183610338565b9190611394565b34610275576020366003190112610275576001600160a01b0361141761046a565b16600052600c6020526020604060002054604051908152f35b346102755760003660031901126102755761043260408051906114538183610338565b601b82527f68747470733a2f2f782e636f6d2f474957414c41554e43485041440000000000602083015251918291826103be565b34610275576020366003190112610275576104326114a6600435612d61565b604051918291826103be565b3461027557604036600319011261027557602060ff6115036114d261046a565b6114da610480565b6001600160a01b0391821660009081526010865260408082209290931681526020919091522090565b54166040519015158152f35b3461027557602036600319011261027557600435600052600b6020526020604060002054604051908152f35b3461027557600036600319011261027557602060405160148152f35b1561155e57565b606460405162461bcd60e51b81526020600482015260046024820152630c2eae8d60e31b6044820152fd5b1561159057565b606460405162461bcd60e51b81526020600482015260046024820152637a65726f60e01b6044820152fd5b634e487b7160e01b600052601160045260246000fd5b60001981019190821161067957565b6122b803906122b8821161067957565b60071981019190821161067957565b9190820391821161067957565b906001820180921161067957565b906005820180921161067957565b906004820180921161067957565b906002820180921161067957565b906003820180921161067957565b603001908160301161067957565b600101908160011161067957565b600201908160021161067957565b9190820180921161067957565b9061169e83600052600d602052604060002090565b546001600160a01b03838116929116829003611826576001600160a01b0381169261176c9190611746906116d3861515611589565b84331480156117eb575b801561179f575b6116ed90611557565b61171461170488600052600f602052604060002090565b80546001600160a01b0319169055565b61172c836104f689600052600d602052604060002090565b6001600160a01b03166000908152600e6020526040902090565b61175081546115d1565b90556001600160a01b03166000908152600e6020526040902090565b611776815461160c565b90557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4565b506116ed6117e46117dd336117c68560018060a01b03166000526010602052604060002090565b9060018060a01b0316600052602052604060002090565b5460ff1690565b90506116e4565b50336118206118146118078a600052600f602052604060002090565b546001600160a01b031690565b6001600160a01b031690565b146116dd565b60405162461bcd60e51b815260206004820152600560248201526437bbb732b960d91b6044820152606490fd5b90660886c98b760000820291808304660886c98b760000149015171561067957565b90660e35fa931a0000820291808304660e35fa931a0000149015171561067957565b600281901b91906001600160fe1b0381160361067957565b908160011b918083046002149015171561067957565b90600a820291808304600a149015171561067957565b634e487b7160e01b600052601260045260246000fd5b81156118fb570490565b6118db565b90816020910312610275575161191581610263565b90565b6040513d6000823e3d90fd5b1561192b57565b60405162461bcd60e51b81526020600482015260086024820152673932b1b2b4bb32b960c11b6044820152606490fd5b1561196257565b60405162461bcd60e51b815260206004820152600d60248201526c36b4b73a103737ba1037b832b760991b6044820152606490fd5b1561199e57565b60405162461bcd60e51b815260206004820152600360248201526271747960e81b6044820152606490fd5b156119d057565b60405162461bcd60e51b81526020600482015260086024820152671cdbdb19081bdd5d60c21b6044820152606490fd5b90816020910312610275575190565b15611a1657565b60405162461bcd60e51b81526020600482015260096024820152680eee4dedcce408aa8960bb1b6044820152606490fd5b60001981146106795760010190565b3d15611a81573d90611a678261036a565b91611a756040519384610338565b82523d6000602084013e565b606090565b15611a8d57565b60405162461bcd60e51b815260206004820152600d60248201526c3a3932b0b9bab93c903c3332b960991b6044820152606490fd5b9291611acf818386611689565b813b15938415611ae8575b505050506103689150611924565b6020945060a46000918760405198899788968794630a85bd0160e11b865233600487015260018060a01b03166024860152604485015260806064850152816084850152848401378181018301849052601f01601f191681010301926001600160a01b03165af180156107935761036891600091611b7d575b506001600160e01b031916630a85bd0160e11b1438808080611ada565b611b96915060203d60201161078c5761077e8183610338565b38611b60565b15611ba357565b60405162461bcd60e51b81526020600482015260086024820152673737903a37b5b2b760c11b6044820152606490fd5b90611be66020928281519485920161039b565b0190565b60405190611bf9604083610338565b600f82526e0d8c0a8a920e97878787058b1c140760891b6020830152565b60405190611c26606083610338565b602382527f0d00223a2d0004223a2d1209223a2d0a12223a2d0415223a2d1115223a2d1319602083015262223a2d60e81b6040830152565b60405190611c6d606083610338565b602d82527f0d0b461814160b4618140f0d220a0a151046181408164618141317461814171860208301526c0882828346c882828547118605609a1b6040830152565b60405190611cbe60a083610338565b606482527f0302786ea50702786ea50203786ea50303e1d7ff0403786ea50304786ea5140760208301527f786ea51408e1d7ff040be1d7ff120b786ea50511786ea51211786ea50912786e60408301527fa50f14786ea50915786ea51218e1d7ff051c786ea50a1c786ea5111c786ea50f6060830152631de1d7ff60e01b6080830152565b60405190611d5361032083610338565b6102e482527f0100966e260700d8a43c0a00d8a43c0e00d8a43c1200966e260201966e26030160208301527f966e260701d8a43c0b01d8a43c0d01d8a43c0e01fff4b21101d8a43c0402966e60408301527f260702fff4b20802d8a43c0b02d8a43c0d02d8a43c1002d8a43c1602966e261760608301527f02966e260403d8a43c0503d8a43c0803d8a43c0b03d8a43c0d03d8a43c1003d860808301527fa43c1403966e261503966e260604d8a43c0904d8a43c0f04d8a43c1204d8a43c60a08301527f1304d8a43c0005966e260705d8a43c1205d8a43c0106966e260206966e26030660c08301527fd8a43c0806d8a43c1006d8a43c1106d8a43c1406fff4b20407d8a43c0507d8a460e08301527f3c0607d8a43c1507966e261607966e261707966e260208fff4b20708d8a43c106101008301527f08d8a43c1108d8a43c1208d8a43c1308d8a43c1408d8a43c030ad8a43c040ad86101208301527fa43c050ad8a43c060ad8a43c070ad8a43c100ad8a43c000b966e26010b966e266101408301527f020b966e26110bd8a43c120bd8a43c130bd8a43c060cd8a43c070cd8a43c0f0c6101608301527fd8a43c140cd8a43c150c966e26160c966e26050dd8a43c100dd8a43c160dfff46101808301527fb2170d966e26040ed8a43c050ed8a43c080ed8a43c0e0ed8a43c110ed8a43c166101a08301527f0efff4b2020f966e26030f966e26070fd8a43c0a0fd8a43c0c0fd8a43c0f0fd86101c08301527fa43c120fd8a43c130fd8a43c0010966e260110fff4b20710d8a43c0a10d8a43c6101e08301527f0c10d8a43c0f10d8a43c1310966e260611d8a43c0a11d8a43c0c11d8a43c10116102008301527fd8a43c1411966e261511966e260512966e260912d8a43c0d12d8a43c1012d8a46102208301527f3c1612966e260513966e260913d8a43c0d13d8a43c1113966e261713966e26046102408301527f14966e260914966e260d14966e261114966e260415966e260915966e261215966102608301527f6e261315fff4b20316966e260816966e260d16966e261216966e260217966e266102808301527f0617fff4b20817966e260d17966e261317966e260218966e260d18966e2613186102a08301527f966e260119966e260819966e260d19fff4b21419966e26081a966e260d1a966e6102c08301527f26141a966e26071b966e260e1b966e26151b966e26071c966e260e1c966e26076102e0830152630ecb371360e11b610300830152565b9060058110156109595760051b0190565b8051156109595760200190565b908151811015610959570160200190565b6040519061212161022083610338565b6101e882527f0507020b0509060a050f020b0607010b06080309060b020a060d03090610010b60208301527f0707010b0708010a07090114070a0107070b020a070d0114070e0107070f010a60408301527f0710010b0807010b0808030a080b020b080d030a0810010b0907020b0909060a60608301527f090f020b0a08020b0a0a040a0a0e020b0b08020c0b0a04000b0e020c0c06020060808301527f0c0801020c0906000c0f01020c1002000d0403000d0701020d0808000d10010260a08301527f0d1103000e0404000e0801020e0902000e0b02030e0d02000e0f01020e10040060c08301527f0f0401010f0503000f0801020f0901000f0a01030f0b02040f0d01030f0e010060e08301527f0f0f01020f1003000f13010110040101100503001008010210090200100b02036101008301527f100d0200100f01021010030010130101110401011105030011080805111003006101208301527f111301011204010112050e00121301011304010113050e0013130101140401016101408301527f14050500140a0102140b0200140d0102140e05001413010115040101150505006101608301527f150a0102150b0200150d0102150e0500151301011604010116050400160901026101808301527f160a0400160e0102160f040016130101170401011705030017080102170906006101a08301527f170f0102171003001713010118040101180503001808010218090600180f01026101c08301527f18100300181301011904010219050e00191301021a0410021b0502081b1102086101e0830152670380a0610382006160c31b610200830152565b6040519061238b60e083610338565b60bd82527f110b02120d02130d02140d02150d02160d02170d02180d02190d021a0800000060c0837f0b02080c02080a03080b03080c03080d03080704030804030904030a04030b0460208201527f030c04030d04030e04030f0403100403020b04020c0d040c03050c02060c020760408201527f0c02090c020a0c020b0c020c0c020d0c020e0c02100c02110c02120c02130c0360608201527f020d0d040d02050d02060d02080d02090d020a0d020b0d020c0d020d0d020e0d60808201527f020f0d02110d02120d02130d02020e0d020f0d01100302100303100302110d0360a08201520152565b6040519061248460c083610338565b608782527f0a01080b01080c01080d01080902080a02080b02080c02080d02080e0208060360208301527f080703080803080903080a03080b03080c03080d03080e03080f03081003081160408301527f03080504080604080704080804080904080a04080b04080c04080d04080e040860608301527f0f0408100408110408120408130e03140e0c150e0c160e0c120f0b130f0d140f6080830152660d150f0d160f0d60c81b60a0830152565b6040519061254160a083610338565b607282527f0803050903050a03050b03050c03050d03050e03050f0305100303070405080460208301527f050904050a04050b04050c04050d04050e04050f0405100405140c13150c131660408301527f0c13130d13140d13150d13160d13170d13130e13140e13150e13160e13170e13606083015271020f03150f1003100b14100b02110302130360701b6080830152565b604051906125e461010083610338565b60cc82527f0803020903020a03020b03020c03020d03020e03020f0302070402080402090460208301527f020a04020b04020c04020d04020e04020f04021004020705020805020905020a60408301527f05020b05020c05020d05020e05020f050210050207060208060b09060b0a060b60608301527f0b060b0c060b0d060b0e060b0f060b1006020809080909080a09080b09080c0960808301527f080d09080e09080f0908080a08090a080a0a080b0a080c0a080d0a080e0a080f60a08301527f0a08020e0d150e0d020f0d150f0d02100d03100b14100b15100d02110d15110d60c08301526a4241a2a241a0426102a26160a31b60e0830152565b604051906126f160e083610338565b60ab82527f0b01100c01100a02100b02100c02100d02100803100903100a03100b03100c0360208301527f100d03100e03100f03100604100704100804100904100a04100b04100c04100d60408301527f04100e04100f0410100410110410020a0d020b10140b04150b04010c10020c1060608301527f140c0f150c0f020d10140d0f150d0f020e10140e0f150e0f020f10140f0f150f60808301527f0f02101014100f15100f02111003110b0212100213100214100215100216100160a08301526a171002171002181002190d60a81b60c0830152565b604051906127d860c083610338565b609382527f09030a0a030a0b030a0c030a0d030a0e030a08040a09040a0a040b0b040a0c0460208301527f0b0d040a0e040b0f040a020903010a03020a10030a03020b10020c10090c0e0a60408301527f0c0e0b0c0e0c0c0e0d0c0e0e0c0e020d10080d0e090d0e0a0d0e0b0d0e0c0d0e60608301527f0d0d0e0e0d0e0f0d0e020e10020f1002101003100b0211100212100213100214608083015272010021510021610021710021810021910021a1606c1b60a0830152565b604051906128a261018083610338565b61015f82527f0f0b180f0c180f0d180f0e180f09190f0a190f0b190f0c190f0d190f0e190f00610160837f0804050904050a04050b04050c04050d04050e04050f0405130b0d140b0d150b60208201527f0d160b0d170b0d090c0e0a0c0e0b0c0e0c0c0e0d0c0e0e0c0e130c09140c091560408201527f0c09160c09170c09090d0f0a0d0f0b0d0f0c0d0f0d0d0f0e0d0f130d09140d0960608201527f150d09160d09170d09090e0f0a0e0f0b0e0f0c0e0f0d0e0f0e0e0f150e10090f60808201527f0f0a0f0f0b0f0f0c0f0f0d0f0f0e0f0f150f1009100f0a100f0b100f0c100f0d60a08201527f100f0e100f14100b15101009110f0a110f0b110f0c110f0d110f0e110f15111060c08201527f09120f0a120f0b120f0c120f0d120f0e120f15121009130f0a130f0b130f0c1360e08201527f0f0d130f0e130f15131009140f0a140f0b140f0c140f0d140f0e140f151410096101008201527f150f0a150f0b150f0c150f0d150f0e150f15151009160f0a160f0b160f0c160f6101208201527f0d160f0e160f15161009170f0a170f0b170f0c170f0d170f0e170f09180f0a186101408201520152565b60405190612a5f61010083610338565b60de82527f140e0e150e0e160e0e170e0d130f0d140f0e150f0e160f0e170f0d14100b000060e0837f0705110805120905120a05120b05120c05120d05120e05120f0512100511070660208201527f120806120906120a06120b06120c06120d06120e06120f06121006120707120860408201527f07080a07080b07080c07080d07080e07140f070810071207081208081209081260608201527f0a08120b08120c08120d08120e08120f08121008120709120809120909110a0960808201527f110b09110c09110d09110e09110f0912100912080a12090a120a0a120b0a120c60a08201527f0a120d0a120e0a120f0a12150c10130d0d140d0e150d0e160d0e170d0d130e0d60c08201520152565b9060088110156109595760051b0190565b60405190612b8f606083610338565b602a82527f020a06010c06010e060110060112060a12150b12150d12150913150c13160e136020830152690a808a03008b03008c0360b11b6040830152565b60405190612bdd604083610338565b600f82526e140d06150d06140e16150e16160f1760881b6020830152565b60405190612c0a604083610338565b601882527f0b05180c0518140b06150b06160b06020f1602111602131600000000000000006020830152565b60405190612c45604083610338565b601e82527f0c03170d03170a04170b0417010e06160e0601100616100601120616120600006020830152565b60405190612c80604083610338565b60158252740a050b8a850b008683008783008883008983008a8360591b6020830152565b60405190612cb3606083610338565b602182527f0901160a01160b01160c01160d01160e01160802160f021602080601090603096020830152600360f91b6040830152565b60405190612cf8606083610338565b602482527f160916120a16140a17130b06140b06150b06160b06170b060b0f160c0f170b10602083015263170c101760e01b6040830152565b60405190612d40604083610338565b601282527105820c06020c04840b87040b8986030b860360711b6020830152565b90612d8b60018060a01b03612d8361180785600052600d602052604060002090565b161515611b9c565b612dbb612da683600052600b60205260406000205460081c90565b92600052600b60205260ff6040600020541690565b612e98612eb5612dd283612dcd611bea565b613b2c565b612ea7604051938492612e92612e5b60208601605b907f3c73766720786d6c6e733d22687474703a2f2f7777772e77332e6f72672f323081527f30302f737667222076696577426f783d2230203020323430203330302220736860208201527f6170652d72656e646572696e673d2263726973704564676573223e000000000060408201520190565b7f3c726563742077696474683d2232343022206865696768743d2233303022206681526434b6361e9160d91b602082015260250190565b90611bd3565b6211179f60e91b815260030190565b03601f198101835282610338565b9160a091612f0981612ec68561035a565b612ece610386565b8152612ed8611c17565b6020820152612ee5611c5e565b6040820152612ef2611caf565b6060820152612eff611d43565b60808201526120e2565b51926000945b612f1886611628565b612f22865161160c565b1115612fa757612e92612f9b612fa192612ea7612f8b8a8a612f5e612f58612f4a8484612100565b516001600160f81b03191690565b60f81c90565b60ff80612f82612f7c612f58612f4a612f768961160c565b88612100565b95611636565b94169116613bfc565b6040519485936020850190611bd3565b9561161a565b94612f0f565b94509194909250612fb6612111565b916000945b612fc486611644565b8451111561308057612fd58661160c565b612fdf9085612100565b5160f81c612fed8786612100565b5160f81c612ffa88611636565b6130049087612100565b5160f81c90876130138a611644565b61301d9089612100565b5161302b919060f81c613d07565b9160ff169060ff169260ff169261304193613dfc565b906040519182916020830161305591611bd3565b61305e91611bd3565b03601f19810182526130709082610338565b9461307a90611628565b94612fbb565b9450915093610100946130ff816130968861035a565b61309e61237c565b81526130a8612475565b60208201526130b5612532565b60408201526130c26125d4565b60608201526130cf6126e2565b60808201526130dc6127c9565b868201526130e8612892565b60c08201526130f5612a4f565b60e0820152612b6f565b51926000955b61310e87611636565b8551111561319557612e9261318961318f92612ea7612f8b8b8060ff806131808f8f613175612f58612f4a8361316f613169612f58612f4a61316361315d8f612f4a612f589161317b9d612100565b9e61160c565b85612100565b9b611636565b90612100565b60ff1690565b613d07565b93169116613f0d565b96611644565b95613105565b9550919590925060038410156131d6575b505050506119156131c491612ea76040519384926020840190611bd3565b651e17b9bb339f60d11b815260060190565b906131e4613244939261035a565b906131ed612b80565b82526131f7612bce565b6020830152613204612bfb565b6040830152613211612c36565b606083015261321e612c71565b608083015261322b612ca4565b90820152613237612ce9565b60c08201526130f5612d31565b516000925b61325284611636565b825111156132ad57612e926132a16132a792612ea7612f8b888060ff806131808c61317b613175612f588f8061316f613169612f58612f4a61316361315d8f612f4a612f5891612f4a9a612100565b93611644565b92613249565b925061191591506131c4905038806131a6565b60405162461bcd60e51b81526020600482015260066024820152656d696e74282960d01b6044820152606490fd5b81156118fb570690565b61ffff6000199116019061ffff821161067957565b612ea761335d61331c436115d1565b60408051914060208301908152908201949094526bffffffffffffffffffffffff1933606090811b82168184015230901b1660748201529182906088820190565b5190209061337d6133776133726000546115d1565b6115e0565b836132ee565b916000925b60088410613489575b5060088314613480575b6133c69060801c6133c06133b96133ab8661093e565b905461ffff9160031b1c1690565b61ffff1690565b906132ee565b906000915b6005831061343b575b5060058214613432575b6134266133f4836133ee866109bb565b506109cd565b61340e61340982845461ffff9160031b1c1690565b6132f8565b9061ffff8084549260031b9316831b921b1916179055565b6103686133f48461093e565b600491506133de565b61344e6133b96133ab856133ee886109bb565b811061347b5761347360019161346d6133b96133ab876133ee8a6109bb565b906115ff565b9201916133cb565b6133d4565b60079250613395565b6134986133b96133ab8661093e565b81106134bb576134b360019161346d6133b96133ab8861093e565b930192613382565b61338b565b604080519091906134d18382610338565b6007815291601f1901366020840137565b906134ec8261036a565b6134f96040519182610338565b828152809261350a601f199161036a565b0190602036910137565b8015610679576000190190565b9081156135b257600082805b61359357508061353d84926134e2565b915b61354857509150565b61355461358c91613514565b93613577613567613175600a8406611652565b60f81b6001600160f81b03191690565b60001a6135848685612100565b53600a900490565b928361353f565b92906135a16135a991611a47565b93600a900490565b8093919361352d565b90506040516135c2604082610338565b60018152600360fc1b602082015290565b604051906135e2604083610338565b600d82526c14d153d39092483b21283aee61609a1b6020830152565b6040519061360d604083610338565b600d82526c4d5544414e4720ebacb4eb8bb960981b6020830152565b60405190613638604083610338565b600d82526c4a414741454b20ec9e90eab09d60981b6020830152565b60405190613663604083610338565b600d82526c08eaa9c8ea6aa41d56d03d9113609b1b6020830152565b6040519061368e604083610338565b601082526f14d1555391d3965153c83b22ae7ae82960821b6020830152565b604051906136bc604083610338565b600e82526d4441454a414e4720eb8c80ec9ea560901b6020830152565b604051906136e8604083610338565b600f82526d8eae829c8e88828a41d56923d719608f1b6020830152565b6040519061010082019180831067ffffffffffffffff8411176103335760408381526137a7936137358282610338565b600e81526d48574152414e4720ed9994eb9e9160901b6020820152825261375a6135d3565b60208301526137676135fe565b90820152613773613629565b6060820152613780613654565b608082015261378d61367f565b60a082015261379a6136ad565b60c08201526130f56136d9565b5190565b604051906137ba604083610338565b600c82526b4f4253494449414e20ed9d9160a01b6020830152565b604051906137e4604083610338565b600882526708e9e988841d571160c31b6020830152565b6137a79060405161380b81610317565b604080516138198282610338565b6008815267434c415920ed9d9960c01b60208201528252805161383c8282610338565b60088152674a41444520ec98a560c01b602082015260208301528051906138638183610338565b600b82526a086a4929aa69e9c41db31160ab1b60208301528201526138866137ab565b6060820152612eff6137d5565b604051906138a2604083610338565b601382527264697374726963742c2038783820706c6f747360681b6020830152565b604051906138d3604083610338565b601982527f6e616d65642076696c6c616765202b206865726f206c6f7264000000000000006020830152565b6137a79060405161390f81610317565b6040805161391d8282610338565b600b81526a0c481b185b99081c1b1bdd60aa1b6020820152825280516139438282610338565b601981527f32206c616e6420706c6f74732c2063686f696365207a6f6e65000000000000006020820152602083015280519061397f8183610338565b601882527f6e616d6564206275696c64696e67202b203420706c6f7473000000000000000060208301528201526139b4613893565b6060820152612eff6138c4565b604051906139d0606083610338565b604082527f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f6040837f4142434445464748494a4b4c4d4e4f505152535455565758595a61626364656660208201520152565b805115613af557613a316139c1565b613a55613a50613a4b613a448551611636565b6003900490565b611897565b6134e2565b916020830191819082518301915b828110613aa557505050600390510680600114613a9457600214613a85575090565b603d60f81b6000199091015290565b50613d3d60f01b6001199091015290565b60036004919592939501916001603f845182828260121c16880101518453828282600c1c16880101518385015382828260061c168801015160028501531685010151600382015301939190613a63565b50611915610386565b60405190613b0d604083610338565b601082526f181899199a1a9b1b9c1cb0b131b232b360811b6020830152565b90613b35613afe565b91613b3e6134c0565b926023613b4a856120f3565b5360005b60038110613b5d575050505090565b60038402908482046003148515171561067957613bd6612f4a600f613b93612f58612f4a613b8d8760019961167c565b8a612100565b613baf612f4a613ba9600484901c600f16613175565b89612100565b613bce613bc3613bbe886118af565b611660565b9160001a918c612100565b531685612100565b613bf5613bea613be5846118af565b61166e565b9160001a9188612100565b5301613b4e565b939293613c07613afe565b92613c106134c0565b936023613c1c866120f3565b5360005b60038110613c3657505050611915939450613f0d565b8088019081891161067957613c8f612f4a600f613c5f613c5860019689612100565b5160f81c90565b613c75612f4a613ba9600484901c600f16613175565b613bce613c84613bbe886118af565b9160001a918d612100565b613ca9613c9e613be5846118af565b9160001a9189612100565b5301613c20565b60405190613cbf606083610338565b603382527f18161434302cdeba94a88464eee6d2c8c0b0b06042783e2c8c643cc83c32e6c86020830152725a5a8cbef6f2e856d282ffd85cff543a78e6ff60681b6040830152565b9060088210613d2c575061191590613d26613d20613cb0565b916115f0565b90613b2c565b60405191613d3b60a084610338565b607883527f7a6046967a5c5a4430a08660b89e767c4a340000001a16143a6652588a6c264660208401527f3878a88296c69e9a392b0000001a16148a3028ac4a3c60201cd4a83cf0cd6e3c60408401527f14120000001a1614302c384842541e1c26786e96a094c45a286ec8a5ffb991ff60608401527fbe9230e4ba548c6822fce28cfff8c89a392bfff8be96ffc3000000000000000060808401528160031b91808304600814901517156106795781018091116106795761191591613b2c565b92909192600a810290808204600a149015171561067957613e1c90613521565b91600a810290808204600a149015171561067957613e3990613521565b92613e43906118c5565b613e4c90613521565b613e5660016118c5565b613e5f90613521565b604051681e3932b1ba103c1e9160b91b602082015294859491929160298601613e8791611bd3565b6411103c9e9160d91b8152600501613e9e91611bd3565b6811103bb4b23a341e9160b91b8152600901613eb991611bd3565b6911103432b4b3b43a1e9160b11b8152600a01613ed591611bd3565b6711103334b6361e9160c11b8152600801613eef91611bd3565b6211179f60e91b815260030103601f19810182526119159082610338565b600a810290808204600a149015171561067957613f2990613521565b90600a810290808204600a149015171561067957613f4690613521565b91613e4360016118c556fea2646970667358221220b0dd165628ec2a98066f699142b505ae8a9334a7c3b5611311c810aeea1cb5b364736f6c634300081a0033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0x262233…688b34 | 1 day agoMon, 17 Aug 2026 03:55:48 UTC | 0x320fc1…8655 | [0] 0x000000000000…f4fafdd3 [1] 0x000000000000…00000272 data: 0x000000000000000000…8b760000 |
| 0x262233…688b34 | 1 day agoMon, 17 Aug 2026 03:55:48 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…f4fafdd3 [2] 0x000000000000…00000272 |
| 0x89ef4f…c661d7 | 1 day agoSun, 16 Aug 2026 13:00:18 UTC | 0x320fc1…8655 | [0] 0x000000000000…48a5c1bf [1] 0x000000000000…00000271 data: 0x000000000000000000…8b760000 |
| 0x89ef4f…c661d7 | 1 day agoSun, 16 Aug 2026 13:00:18 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…48a5c1bf [2] 0x000000000000…00000271 |
| 0x3b463e…b05b46 | 1 day agoSun, 16 Aug 2026 10:08:15 UTC | 0x320fc1…8655 | [0] 0x000000000000…f4fafdd3 [1] 0x000000000000…00000270 data: 0x000000000000000000…8b760000 |
| 0x3b463e…b05b46 | 1 day agoSun, 16 Aug 2026 10:08:15 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…f4fafdd3 [2] 0x000000000000…00000270 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026f data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026f |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026e data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026e |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026d data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026d |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026c data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026c |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026b data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026b |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…0000026a data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…0000026a |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…00000269 data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…00000269 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…00000268 data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…00000268 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…00000267 data: 0x000000000000000000…8b760000 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | Transfer | [0] 0x000000000000…00000000 [1] 0x000000000000…72047907 [2] 0x000000000000…00000267 |
| 0xeb22bb…5930e9 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x320fc1…8655 | [0] 0x000000000000…72047907 [1] 0x000000000000…00000266 data: 0x000000000000000000…8b760000 |
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Transaction Hash | Method | Block | Age | From | To | Amount | Token | ||
|---|---|---|---|---|---|---|---|---|---|
| no token transfers for this address yet | |||||||||
| Transaction Hash | Method | Block | Age | From | To | Type | Item | ||
|---|---|---|---|---|---|---|---|---|---|
| no NFT transfers for this address yet | |||||||||
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| !0xab8aaf…9abada | mint | 38,680,063 | 1 day agoMon, 17 Aug 2026 08:06:30 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $9.100.0048 ETH | 0.00000364 | |
| 0x262233…688b34 | mint | 38,530,222 | 1 day agoMon, 17 Aug 2026 03:55:48 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000243 | |
| 0x89ef4f…c661d7 | mint | 37,994,773 | 1 day agoSun, 16 Aug 2026 13:00:18 UTC | 0x8a8c…c1bf | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000323 | |
| 0x3b463e…b05b46 | mint | 37,891,978 | 1 day agoSun, 16 Aug 2026 10:08:15 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000273 | |
| 0xeb22bb…5930e9 | mint | 37,840,882 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0x608a…7907 | IN | GONGSIN 功臣 | $90.970.048 ETH | 0.00002768 | |
| 0x481dbd…12c017 | mint | 37,830,714 | 2 days agoSun, 16 Aug 2026 08:25:41 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000279 | |
| 0xf29cf2…8c7f02 | mint | 37,817,841 | 2 days agoSun, 16 Aug 2026 08:04:07 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $9.100.0048 ETH | 0.00000423 | |
| 0x986fb3…b20215 | mint | 37,574,459 | 2 days agoSun, 16 Aug 2026 01:16:51 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $18.190.0096 ETH | 0.00000809 | |
| 0x556601…c33b8b | mint | 37,559,416 | 2 days agoSun, 16 Aug 2026 00:51:42 UTC | 0x1c42…e792 | IN | GONGSIN 功臣 | $9.100.0048 ETH | 0.00000437 | |
| 0x6e9929…c5d149 | mint | 37,546,245 | 2 days agoSun, 16 Aug 2026 00:29:41 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000272 | |
| 0x0b936f…06bfee | mint | 37,381,370 | 2 days agoSat, 15 Aug 2026 19:54:05 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $9.100.0048 ETH | 0.00000520 | |
| 0xe4706f…7d8ca6 | Set Approval For All | 37,371,614 | 2 days agoSat, 15 Aug 2026 19:37:46 UTC | 0x1958…f988 | IN | GONGSIN 功臣 | $0.000 ETH | 0.00000132 | |
| 0x061c0f…067c5e | mint | 37,363,386 | 2 days agoSat, 15 Aug 2026 19:24:01 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $13.650.0072 ETH | 0.00000629 | |
| 0xdae102…6e3b48 | mint | 37,343,663 | 2 days agoSat, 15 Aug 2026 18:51:02 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $22.740.012 ETH | 0.00000969 | |
| !0x140346…3c8b58 | mint | 37,341,887 | 2 days agoSat, 15 Aug 2026 18:48:04 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $22.740.012 ETH | 0.00000994 | |
| 0x83fba7…ac6800 | mint | 37,341,218 | 2 days agoSat, 15 Aug 2026 18:46:57 UTC | 0x64b0…fdd3 | IN | GONGSIN 功臣 | $90.970.048 ETH | 0.00003326 | |
| 0x865b99…8136d6 | mint | 37,290,353 | 2 days agoSat, 15 Aug 2026 17:22:05 UTC | 0x1e10…6176 | IN | GONGSIN 功臣 | $9.100.0048 ETH | 0.00000635 | |
| 0x2c1f44…6ec2ef | Set Approval For All | 37,256,142 | 2 days agoSat, 15 Aug 2026 16:24:56 UTC | 0x2be8…33cf | IN | GONGSIN 功臣 | $0.000 ETH | 0.00000138 | |
| 0xbef6c2…728fae | mint | 37,247,105 | 2 days agoSat, 15 Aug 2026 16:09:52 UTC | 0x1958…f988 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000367 | |
| 0xbc7280…41094d | mint | 37,245,533 | 2 days agoSat, 15 Aug 2026 16:07:14 UTC | 0x1c42…e792 | IN | GONGSIN 功臣 | $40.940.0216 ETH | 0.00001645 | |
| !0xd526c6…94d982 | mint | 37,245,393 | 2 days agoSat, 15 Aug 2026 16:07:00 UTC | 0x1c42…e792 | IN | GONGSIN 功臣 | $40.940.0216 ETH | 0.00001548 | |
| 0x0b3ab7…1ae421 | mint | 37,242,032 | 2 days agoSat, 15 Aug 2026 16:01:23 UTC | 0x1958…f988 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000370 | |
| 0xad88c0…16cf7a | mint | 37,241,818 | 2 days agoSat, 15 Aug 2026 16:01:01 UTC | 0x1c42…e792 | IN | GONGSIN 功臣 | $22.740.012 ETH | 0.00001008 | |
| 0xb89c59…fa7a8e | mint | 37,238,733 | 2 days agoSat, 15 Aug 2026 15:55:52 UTC | 0x1958…f988 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000377 | |
| 0x3ae172…4f3589 | mint | 37,237,787 | 2 days agoSat, 15 Aug 2026 15:54:17 UTC | 0x1958…f988 | IN | GONGSIN 功臣 | $4.550.0024 ETH | 0.00000374 |
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| 37,994,773 | 1 day agoSun, 16 Aug 2026 13:00:18 UTC | 0x89ef4f…c661d7 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,891,978 | 1 day agoSun, 16 Aug 2026 10:08:15 UTC | 0x3b463e…b05b46 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,840,882 | 2 days agoSun, 16 Aug 2026 08:42:42 UTC | 0xeb22bb…5930e9 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.048 ETH |
| 37,830,714 | 2 days agoSun, 16 Aug 2026 08:25:41 UTC | 0x481dbd…12c017 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,817,841 | 2 days agoSun, 16 Aug 2026 08:04:07 UTC | 0xf29cf2…8c7f02 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0048 ETH |
| 37,574,459 | 2 days agoSun, 16 Aug 2026 01:16:51 UTC | 0x986fb3…b20215 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0096 ETH |
| 37,381,370 | 2 days agoSat, 15 Aug 2026 19:54:05 UTC | 0x0b936f…06bfee | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0048 ETH |
| 37,363,386 | 2 days agoSat, 15 Aug 2026 19:24:01 UTC | 0x061c0f…067c5e | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0072 ETH |
| 37,343,663 | 2 days agoSat, 15 Aug 2026 18:51:02 UTC | 0xdae102…6e3b48 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.012 ETH |
| 37,341,218 | 2 days agoSat, 15 Aug 2026 18:46:57 UTC | 0x83fba7…ac6800 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.048 ETH |
| 37,290,353 | 2 days agoSat, 15 Aug 2026 17:22:05 UTC | 0x865b99…8136d6 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0048 ETH |
| 37,247,105 | 2 days agoSat, 15 Aug 2026 16:09:52 UTC | 0xbef6c2…728fae | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,245,533 | 2 days agoSat, 15 Aug 2026 16:07:14 UTC | 0xbc7280…41094d | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0216 ETH |
| 37,242,032 | 2 days agoSat, 15 Aug 2026 16:01:23 UTC | 0x0b3ab7…1ae421 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,238,733 | 2 days agoSat, 15 Aug 2026 15:55:52 UTC | 0xb89c59…fa7a8e | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,237,787 | 2 days agoSat, 15 Aug 2026 15:54:17 UTC | 0x3ae172…4f3589 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,236,860 | 2 days agoSat, 15 Aug 2026 15:52:44 UTC | 0x816b1c…69f061 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,236,051 | 2 days agoSat, 15 Aug 2026 15:51:22 UTC | 0xc9917b…f335a6 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,235,563 | 2 days agoSat, 15 Aug 2026 15:50:35 UTC | 0x2931a2…90a7ed | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,229,998 | 2 days agoSat, 15 Aug 2026 15:41:17 UTC | 0x03e195…ee2119 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,228,757 | 2 days agoSat, 15 Aug 2026 15:39:12 UTC | 0x32d66e…1f8de4 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,207,037 | 2 days agoSat, 15 Aug 2026 15:02:56 UTC | 0xdaf78c…f9ee6c | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,206,161 | 2 days agoSat, 15 Aug 2026 15:01:28 UTC | 0x8e4bbc…de8002 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,096,886 | 2 days agoSat, 15 Aug 2026 11:58:50 UTC | 0x871550…da6471 | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |
| 37,085,133 | 2 days agoSat, 15 Aug 2026 11:39:11 UTC | 0x845982…e69d4a | CALL | mint | 0x0a8f…583a | OUT | 0x6d71…691a | 0.0024 ETH |