// SPDX-License-Identifier: MIT
//
// ██████╗ ██╗ █████╗ ███╗ ██╗
// ██╔═══██╗██║██╔══██╗████╗ ██║
// ██║ ██║██║███████║██╔██╗ ██║
// ██║▄▄ ██║██║██╔══██║██║╚██╗██║
// ╚██████╔╝██║██║ ██║██║ ╚████║
// ╚══▀▀═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝
//
// 钱 · Qian.ag — Multichain DEX & Launchpad
// Fixed supply. No owner, no mint, no games.
// — V2.1 —
//
pragma solidity ^0.8.24;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";
/// @notice Fixed-supply ERC20. Supply is minted once here and there is no mint function.
/// No transfer hooks, no owner, no privileged functions.
contract QianToken is ERC20, ERC20Burnable {
/// @dev Same signature as OpenZeppelin Ownable. Indexers read renouncement from this
/// event rather than calling owner().
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/// @notice The factory that deployed this token.
address public immutable platform;
/// @notice Original launcher. A record, not the fee receiver — fee rights are
/// reassignable, so read `tokenCreator(token)` on `platform` for who is paid today.
address public immutable creator;
uint256 public constant MAX_SUPPLY = 1_000_000_000 * 10 ** 18;
/// @notice ipfs://<cid> for the token's image/description, so indexers need no factory.
string public metadata;
constructor(
string memory _name,
string memory _symbol,
string memory _metadata,
address _creator,
address _platform
) ERC20(_name, _symbol) {
platform = _platform;
creator = _creator;
metadata = _metadata;
_mint(_platform, MAX_SUPPLY);
emit OwnershipTransferred(address(0), _platform);
emit OwnershipTransferred(_platform, address(0));
}
/// @notice Common indexer convention — same value as metadata().
function tokenURI() external view returns (string memory) {
return metadata;
}
/// @notice No owner, no mint, no pause, no blacklist.
function owner() public pure returns (address) {
return address(0);
}
}[
{
"type": "constructor",
"inputs": [
{
"name": "_name",
"type": "string",
"internalType": "string"
},
{
"name": "_symbol",
"type": "string",
"internalType": "string"
},
{
"name": "_metadata",
"type": "string",
"internalType": "string"
},
{
"name": "_creator",
"type": "address",
"internalType": "address"
},
{
"name": "_platform",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "nonpayable"
},
{
"name": "ERC20InsufficientAllowance",
"type": "error",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "allowance",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "needed",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "ERC20InsufficientBalance",
"type": "error",
"inputs": [
{
"name": "sender",
"type": "address",
"internalType": "address"
},
{
"name": "balance",
"type": "uint256",
"internalType": "uint256"
},
{
"name": "needed",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"name": "ERC20InvalidApprover",
"type": "error",
"inputs": [
{
"name": "approver",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidReceiver",
"type": "error",
"inputs": [
{
"name": "receiver",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidSender",
"type": "error",
"inputs": [
{
"name": "sender",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "ERC20InvalidSpender",
"type": "error",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
}
]
},
{
"name": "Approval",
"type": "event",
"inputs": [
{
"name": "owner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "OwnershipTransferred",
"type": "event",
"inputs": [
{
"name": "previousOwner",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "newOwner",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"name": "Transfer",
"type": "event",
"inputs": [
{
"name": "from",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "to",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"indexed": false,
"internalType": "uint256"
}
],
"anonymous": false
},
{
"name": "MAX_SUPPLY",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "allowance",
"type": "function",
"inputs": [
{
"name": "owner",
"type": "address",
"internalType": "address"
},
{
"name": "spender",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "approve",
"type": "function",
"inputs": [
{
"name": "spender",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "balanceOf",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "burn",
"type": "function",
"inputs": [
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "burnFrom",
"type": "function",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"name": "creator",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "decimals",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint8",
"internalType": "uint8"
}
],
"stateMutability": "view"
},
{
"name": "metadata",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "name",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "owner",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "pure"
},
{
"name": "platform",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"name": "symbol",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "tokenURI",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "string",
"internalType": "string"
}
],
"stateMutability": "view"
},
{
"name": "totalSupply",
"type": "function",
"inputs": [],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"name": "transfer",
"type": "function",
"inputs": [
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
},
{
"name": "transferFrom",
"type": "function",
"inputs": [
{
"name": "from",
"type": "address",
"internalType": "address"
},
{
"name": "to",
"type": "address",
"internalType": "address"
},
{
"name": "value",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "nonpayable"
}
]0x608060408181526004918236101561001657600080fd5b600092833560e01c91826302d05d3f146105b85750816306fdde03146104dc578163095ea7b31461042e57816318160ddd1461040f57816323b872dd146103d2578163313ce567146103b657816332cb6b0c1461038f578163392f37e9146103665781633c130d901461036657816342966c68146103485781634bde38c81461030457816370a08231146102cd57816379cc6790146102975781638da5cb5b1461027c57816395d89b411461015b57508063a9059cbb1461012b5763dd62ed3e146100e057600080fd5b34610127578060031936011261012757806020926100fc610644565b61010461065f565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b5080fd5b503461012757806003193601126101275760209061015461014a610644565b6024359033610851565b5160018152f35b83833461012757816003193601126101275780519082845460018160011c9060018316928315610272575b602093848410811461025f5783885290811561024357506001146101ee575b505050829003601f01601f191682019267ffffffffffffffff8411838510176101db57508291826101d79252826105fb565b0390f35b634e487b7160e01b815260418552602490fd5b8787529192508591837f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b83851061022f57505050508301018580806101a5565b805488860183015293019284908201610219565b60ff1916878501525050151560051b84010190508580806101a5565b634e487b7160e01b895260228a52602489fd5b91607f1691610186565b50503461012757816003193601126101275751908152602090f35b505034610127573660031901126102ca576102c76102b3610644565b602435906102c282338361077e565b61092f565b80f35b80fd5b5050346101275760203660031901126101275760209181906001600160a01b036102f5610644565b16815280845220549051908152f35b505034610127578160031936011261012757517f000000000000000000000000ac83b491b76dd686db516c0fe9152320c83618a76001600160a01b03168152602090f35b839034610127576020366003190112610127576102c790353361092f565b5050346101275781600319360112610127576101d790610384610675565b9051918291826105fb565b505034610127578160031936011261012757602090516b033b2e3c9fd0803ce80000008152f35b5050346101275781600319360112610127576020905160128152f35b505034610127576060366003190112610127576020906101546103f3610644565b6103fb61065f565b6044359161040a83338361077e565b610851565b5050346101275781600319360112610127576020906002549051908152f35b9050346104d857816003193601126104d857610448610644565b6024359033156104c1576001600160a01b03169182156104aa57508083602095338152600187528181208582528752205582519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925843392a35160018152f35b8351634a1406b160e11b8152908101859052602490fd5b835163e602df0560e01b8152808401869052602490fd5b8280fd5b8383346101275781600319360112610127578051908260035460018160011c90600183169283156105ae575b602093848410811461025f57838852908115610243575060011461055857505050829003601f01601f191682019267ffffffffffffffff8411838510176101db57508291826101d79252826105fb565b600387529192508591837fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b83851061059a57505050508301018580806101a5565b805488860183015293019284908201610584565b91607f1691610508565b8490346101275781600319360112610127577f0000000000000000000000000b27e9baf7214acd346e813dc0832cdcb5d7f8946001600160a01b03168152602090f35b6020808252825181830181905290939260005b82811061063057505060409293506000838284010152601f8019910116010190565b81810186015184820160400152850161060e565b600435906001600160a01b038216820361065a57565b600080fd5b602435906001600160a01b038216820361065a57565b60405190600060055460018160011c9060018316928315610774575b60209384841081146107605783885290811561074457506001146106ed575b505050829003601f01601f1916820167ffffffffffffffff8111838210176106d757604052565b634e487b7160e01b600052604160045260246000fd5b60056000908152929350837f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b83851061073057505050508301013880806106b0565b80548886018301529301928490820161071a565b60ff1916878501525050151560051b84010190503880806106b0565b634e487b7160e01b86526022600452602486fd5b91607f1691610691565b9160018060a01b0380931691600093838552600160205260409384862091831691828752602052848620549260001984106107bd575b50505050505050565b848410610821575080156108095781156107f1578552600160205283852090855260205203912055388080808080806107b4565b8451634a1406b160e11b815260048101879052602490fd5b845163e602df0560e01b815260048101879052602490fd5b8551637dc7a0d960e11b81526001600160a01b039190911660048201526024810184905260448101859052606490fd5b916001600160a01b0380841692831561091657169283156108fd57600090838252816020526040822054908382106108cb575091604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60405163391434e360e21b81526001600160a01b03919091166004820152602481019190915260448101839052606490fd5b60405163ec442f0560e01b815260006004820152602490fd5b604051634b637e8f60e11b815260006004820152602490fd5b906001600160a01b038216908115610916576000928284528360205260408420549082821061099c5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef926020928587528684520360408620558060025403600255604051908152a3565b60405163391434e360e21b81526001600160a01b03919091166004820152602481019190915260448101829052606490fdfea264697066735822122013458885f0a5ac15927994f16f8abda2bdf16e27dae66a7f9eba4531e1fae24764736f6c63430008180033
| Token | Symbol | Balance | Price | Value |
|---|---|---|---|---|
| no token holdings | ||||
| 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 | |||||||||
| Type | Age | Block | Details |
|---|---|---|---|
| no cross-chain L1↔L2 transactions for this address | |||
| Block | Age | Parent Transaction Hash | Type | Method | From | To | Value | |
|---|---|---|---|---|---|---|---|---|
| 11,423,711 | 38 days agoThu, 16 Jul 2026 17:06:10 UTC | 0x022433…6c5b49 | CREATE2 | deployCoin | 0xac83…18a7 | IN | 0x3943…8704 | 0 ETH |
| Transaction Hash | Method ? | Block | Age | From | To | Amount | Txn Fee ? | ||
|---|---|---|---|---|---|---|---|---|---|
| 0x0c4f74…d9d0a8 | Approve | 11,455,006 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | 0xa339…1bea | IN | garliccoin | $0.000 ETH | 0.00000323 | |
| 0x05671a…bdccb6 | Approve | 11,455,005 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | 0xf03f…f64f | IN | garliccoin | $0.000 ETH | 0.00000322 | |
| 0xc48885…7df2c5 | Approve | 11,455,004 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | 0x7a53…48cc | IN | garliccoin | $0.000 ETH | 0.00000322 | |
| 0xfd02c8…ab30ad | Approve | 11,455,003 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | 0xe9f5…c88c | IN | garliccoin | $0.000 ETH | 0.00000321 | |
| 0xc07b55…2838f2 | Approve | 11,455,002 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | 0xdeee…4de6 | IN | garliccoin | $0.000 ETH | 0.00000321 | |
| 0xaceac1…c48246 | Approve | 11,427,958 | 38 days agoThu, 16 Jul 2026 17:13:16 UTC | 0x0b27…f894 | IN | garliccoin | $0.000 ETH | 0.00000312 | |
| 0x972fd0…5755b3 | Approve | 11,427,872 | 38 days agoThu, 16 Jul 2026 17:13:07 UTC | 0x166d…799a | IN | garliccoin | $0.000 ETH | 0.00000315 | |
| 0x5bcca2…94701a | Approve | 11,427,785 | 38 days agoThu, 16 Jul 2026 17:12:58 UTC | 0x39fa…0d46 | IN | garliccoin | $0.000 ETH | 0.00000315 | |
| 0x97ed65…c3a035 | Approve | 11,427,699 | 38 days agoThu, 16 Jul 2026 17:12:50 UTC | 0xfca5…3e22 | IN | garliccoin | $0.000 ETH | 0.00000312 | |
| 0xff7775…8a3d00 | Approve | 11,427,613 | 38 days agoThu, 16 Jul 2026 17:12:41 UTC | 0xd3da…95d6 | IN | garliccoin | $0.000 ETH | 0.00000315 | |
| 0x2e8b07…bae4de | Approve | 11,427,526 | 38 days agoThu, 16 Jul 2026 17:12:32 UTC | 0x0d4a…6226 | IN | garliccoin | $0.000 ETH | 0.00000319 | |
| 0xd95b53…24c057 | Approve | 11,427,440 | 38 days agoThu, 16 Jul 2026 17:12:24 UTC | 0xbcb9…2bcd | IN | garliccoin | $0.000 ETH | 0.00000311 | |
| 0xdd8470…9532c9 | Approve | 11,427,354 | 38 days agoThu, 16 Jul 2026 17:12:15 UTC | 0x4304…d850 | IN | garliccoin | $0.000 ETH | 0.00000313 |
| Txn Hash | Age | Event | Topics / Data |
|---|---|---|---|
| 0xf45fab…89ab72 | 38 days agoFri, 17 Jul 2026 04:17:50 UTC | Transfer | [0] 0x000000000000…0bfa9436 [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…1c4de06c |
| 0xf45fab…89ab72 | 38 days agoFri, 17 Jul 2026 04:17:50 UTC | Approval | [0] 0x000000000000…0bfa9436 [1] 0x000000000000…959e5cb2 data: 0x000000000000000000…1c4de06c |
| 0xf45fab…89ab72 | 38 days agoFri, 17 Jul 2026 04:17:50 UTC | Transfer | [0] 0x000000000000…0bfa9436 [1] 0x000000000000…b5d7f894 data: 0x000000000000000000…976060fe |
| 0xf45fab…89ab72 | 38 days agoFri, 17 Jul 2026 04:17:50 UTC | Transfer | [0] 0x000000000000…46ab11d4 [1] 0x000000000000…0bfa9436 data: 0x000000000000000000…b3ae416a |
| 0x783f6d…9b2b2d | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…e8b440ef [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…1f3a19bd |
| 0x783f6d…9b2b2d | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…ff2c1bea [1] 0x000000000000…e8b440ef data: 0x000000000000000000…1f3a19bd |
| 0x409736…1023ac | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…e8b440ef [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…371217a3 |
| 0x409736…1023ac | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…7f27f64f [1] 0x000000000000…e8b440ef data: 0x000000000000000000…371217a3 |
| 0xaf3b19…e96821 | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…e8b440ef [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…2e8e75b6 |
| 0xaf3b19…e96821 | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…c3a748cc [1] 0x000000000000…e8b440ef data: 0x000000000000000000…2e8e75b6 |
| 0xae35ea…1bb5ca | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…e8b440ef [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…dac3c395 |
| 0xae35ea…1bb5ca | 38 days agoThu, 16 Jul 2026 17:58:24 UTC | Transfer | [0] 0x000000000000…0551c88c [1] 0x000000000000…e8b440ef data: 0x000000000000000000…dac3c395 |
| 0xa04e1a…7ca1d5 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Transfer | [0] 0x000000000000…e8b440ef [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…796ea740 |
| 0xa04e1a…7ca1d5 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Transfer | [0] 0x000000000000…ddab4de6 [1] 0x000000000000…e8b440ef data: 0x000000000000000000…796ea740 |
| 0x0c4f74…d9d0a8 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Approval | [0] 0x000000000000…ff2c1bea [1] 0x000000000000…e8b440ef data: 0xffffffffffffffffff…ffffffff |
| 0x05671a…bdccb6 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Approval | [0] 0x000000000000…7f27f64f [1] 0x000000000000…e8b440ef data: 0xffffffffffffffffff…ffffffff |
| 0xc48885…7df2c5 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Approval | [0] 0x000000000000…c3a748cc [1] 0x000000000000…e8b440ef data: 0xffffffffffffffffff…ffffffff |
| 0xfd02c8…ab30ad | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Approval | [0] 0x000000000000…0551c88c [1] 0x000000000000…e8b440ef data: 0xffffffffffffffffff…ffffffff |
| 0xc07b55…2838f2 | 38 days agoThu, 16 Jul 2026 17:58:23 UTC | Approval | [0] 0x000000000000…ddab4de6 [1] 0x000000000000…e8b440ef data: 0xffffffffffffffffff…ffffffff |
| 0x39fd4f…f27667 | 38 days agoThu, 16 Jul 2026 17:13:20 UTC | Transfer | [0] 0x000000000000…95c61d66 [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…4e154834 |
| 0x39fd4f…f27667 | 38 days agoThu, 16 Jul 2026 17:13:20 UTC | Approval | [0] 0x000000000000…95c61d66 [1] 0x000000000000…959e5cb2 data: 0x000000000000000000…4e154834 |
| 0x39fd4f…f27667 | 38 days agoThu, 16 Jul 2026 17:13:20 UTC | Transfer | [0] 0x000000000000…b5d7f894 [1] 0x000000000000…95c61d66 data: 0x000000000000000000…4e154834 |
| 0xaceac1…c48246 | 38 days agoThu, 16 Jul 2026 17:13:16 UTC | Approval | [0] 0x000000000000…b5d7f894 [1] 0x000000000000…95c61d66 data: 0x000000000000000000…4e154834 |
| 0x5f6062…7cdd7c | 38 days agoThu, 16 Jul 2026 17:13:11 UTC | Transfer | [0] 0x000000000000…95c61d66 [1] 0x000000000000…46ab11d4 data: 0x000000000000000000…c04a0a51 |
| 0x5f6062…7cdd7c | 38 days agoThu, 16 Jul 2026 17:13:11 UTC | Approval | [0] 0x000000000000…95c61d66 [1] 0x000000000000…959e5cb2 data: 0x000000000000000000…c04a0a51 |