Event signature · Stablecoins and issued tokens

FreezeAddress (Paxos V2) event signature and topic0

The topic0 of the FreezeAddress (Paxos V2) event is 0x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392, the keccak-256 hash of FreezeAddress(address); 1 of its 1 arguments is indexed. Address frozen by the token issuer (Paxos, V2 implementation).

Anatomy of a FreezeAddress (Paxos V2) log

Topics

  • topic00x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392keccak256("FreezeAddress(address)")
  • topic1addr (address)indexed: filterable
Parameters

Arguments and where they sit in the log

Indexed arguments travel as topics and can be filtered cheaply; the others are ABI-encoded together in the data.

NameTypeIn the log
addraddresstopic1

Solidity declaration

event FreezeAddress(address indexed addr);

Canonical signature

FreezeAddress(address)

topic0

0x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392

Ready-made alerts

Get an alert on FreezeAddress

Each rule opens with the contract and the conditions filled in. Sign in, pick your chat and click Create.

Who emits it

Contracts we list that emit FreezeAddress

Any other contract with the same signature emits a log with the same topic0.

Code

Read FreezeAddress logs in code

The same filter in viem, ethers and plain JSON-RPC, and the Solidity that emits it. The address is Paxos Gold (PAXG), a contract we list that emits it.

viem
import { createPublicClient, http, parseAbiItem } from "viem"
import { mainnet } from "viem/chains"

const client = createPublicClient({ chain: mainnet, transport: http() })

const logs = await client.getLogs({
  address: "0x45804880de22913dafe09f4980848ece6ecbaf78",
  event: parseAbiItem("event FreezeAddress(address indexed addr)"),
  fromBlock: "latest",
})

for (const log of logs) console.log(log.args) // { addr }
ethers v6
import { Interface, JsonRpcProvider } from "ethers"

const provider = new JsonRpcProvider(process.env.RPC_URL)
const iface = new Interface(["event FreezeAddress(address indexed addr)"])

const logs = await provider.getLogs({
  address: "0x45804880de22913dafe09f4980848ece6ecbaf78",
  topics: [iface.getEvent("FreezeAddress")!.topicHash],
})

for (const log of logs) console.log(iface.parseLog(log)?.args)
JSON-RPC (eth_getLogs)
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_getLogs",
  "params": [
    {
      "address": "0x45804880de22913dafe09f4980848ece6ecbaf78",
      "topics": [
        "0x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392"
      ],
      "fromBlock": "latest"
    }
  ]
}
Solidity
event FreezeAddress(address indexed addr);

// inside a function:
emit FreezeAddress(addr);
Example

An example FreezeAddress log, encoded and decoded

Placeholder values, not a real transaction: how each argument is stored in the topics and the data, and what decoding gives back.

Encoded (as the node returns it)
  • topic0keccak256("FreezeAddress(address)")0x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392
  • topic1addr0x0000000000000000000000001111111111111111111111111111111111111111
  • data0x
Decoded with the ABI
  • addraddress · indexed0x1111111111111111111111111111111111111111
FAQ

Frequently asked questions

What is the topic0 of the FreezeAddress (Paxos V2) event?

0x1aa660498c83ea285bc55e4cfc00afcaa7120798db87b74f3c0d7c6e001bc392: the keccak-256 hash of FreezeAddress(address).

Which FreezeAddress (Paxos V2) arguments are indexed?

addr is indexed and sit in the log's topics.

How do I get an alert when a contract emits FreezeAddress (Paxos V2)?

Open one of the ready-made rules on this page, or add any contract and pick FreezeAddress (Paxos V2) from the event list. Conditions can be set on indexed and non-indexed arguments, and each alert names the contract and links to the transaction.

Keep exploring

More event signatures and tools

Know the moment a contract emits it

The Beta plan is free: one wallet and one contract, no credit card.