Wait for onchain events and work with lists
use Events, Contains, Len from hexagate;
source usdc: address = 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48;
source myAddresses: list<address> = list(
0x10DF6B6fe66dd319B1f82BaB2d054cbb61cdAD2e,
0x95ba4cf87d6723ad9c0db21737d862be80e93911
);
source blacklistEvents: list<tuple<address>> = Events {
contract: usdc,
signature: "event Blacklisted(address)"
};
source blacklistedAddresses: list<address> = [
event[0] for event in blacklistEvents
];
source myBlacklisted: list<address> = [
address
for address in myAddresses
if Contains {
item: address,
sequence: blacklistedAddresses
}
];
rule {
description: "The following addresses were blacklisted: $myBlacklisted",
condition: Len { sequence: myBlacklisted } == 0
};Last updated