Fix weekly points display and clarify leaderboard stats
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env python3
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import sys
|
||||
|
||||
from eth_abi import encode
|
||||
from web3 import Web3
|
||||
|
||||
|
||||
def main() -> int:
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Encode PolyWeatherCheckoutV2 constructor args for PolygonScan verification.",
|
||||
)
|
||||
parser.add_argument("--owner", required=True, help="Owner or multisig address")
|
||||
parser.add_argument("--treasury", required=True, help="Treasury address")
|
||||
parser.add_argument(
|
||||
"--signer",
|
||||
required=True,
|
||||
help="EIP-712 signer address (backend signer or multisig-controlled signer)",
|
||||
)
|
||||
args = parser.parse_args()
|
||||
|
||||
for name, value in {
|
||||
"owner": args.owner,
|
||||
"treasury": args.treasury,
|
||||
"signer": args.signer,
|
||||
}.items():
|
||||
if not Web3.is_address(value):
|
||||
print(f"invalid --{name} address", file=sys.stderr)
|
||||
return 1
|
||||
|
||||
encoded = encode(
|
||||
["address", "address", "address"],
|
||||
[
|
||||
Web3.to_checksum_address(args.owner),
|
||||
Web3.to_checksum_address(args.treasury),
|
||||
Web3.to_checksum_address(args.signer),
|
||||
],
|
||||
).hex()
|
||||
print(encoded)
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
Reference in New Issue
Block a user