Type
CONTRACT
Validation date
2023-10-24 14:11:44 UTC
Fee
0 UCO

Code (943 B)

  @version 1

# Automate the refunding after the given timestamp
actions triggered_by: datetime, at: 1698163860 do
  Contract.set_type "transfer"
  # Burn the non withdrawed tokens
Contract.add_token_transfer to: 0x00000000000000000000000000000000000000000000000000000000000000000000, amount: 0.00995, token_address: 0x00003DF600E329199BF3EE8FBE2B8223413D70BCDD97E15089E6A74D94DE3F1173B4

  Contract.set_code ""
end

condition triggered_by: transaction, on: refund(), as: [
  timestamp: timestamp >= 1698163860
]

actions triggered_by: transaction, on: refund() do
  Contract.set_type "transfer"
  # Burn the non withdrawed tokens
Contract.add_token_transfer to: 0x00000000000000000000000000000000000000000000000000000000000000000000, amount: 0.00995, token_address: 0x00003DF600E329199BF3EE8FBE2B8223413D70BCDD97E15089E6A74D94DE3F1173B4

  Contract.set_code ""
end

condition triggered_by: transaction, on: reveal_secret(secret), as: [
  content: Crypto.hash(String.to_hex(secret)) == 0x045356357AD2E80B6D864F332C6CD2195468CA62C527F11B364F6FEE1EA1090F,
  address: (
    valid? = false

    abi_data = Evm.abi_encode("status()")
    tx = [to: "0x99cb1498dd41fc06bbcff638475203fff551de71", data: "0x#{abi_data}"]
    request = [jsonrpc: "2.0", id: "1", method: "eth_call", params: [tx, "latest"]]

    headers = ["Content-Type": "application/json"]
    body = Json.to_string(request)

    res = Http.request("https://sepolia.infura.io/v3/3a7a2dbdbec046a4961550ddf8c7d78a", "POST", headers, body)
    if res.status == 200 && Json.is_valid?(res.body) do
      response = Json.parse(res.body)
      result = Map.get(response, "result")
      
      if result != nil do
        decoded_abi = Evm.abi_decode("(uint)", result)
        # Withdrawn status is 1
        valid? = List.at(decoded_abi, 0) == 1
      end
    end

    valid?
  )
]

actions triggered_by: transaction, on: reveal_secret(secret) do
  Contract.set_type "transfer"
  Contract.add_token_transfer to: 0x00009E731DE71C9598A6C853EA89C736B1DAC3652AE00753651B642536AB14821F06, amount: 0.00992015, token_address: 0x00003DF600E329199BF3EE8FBE2B8223413D70BCDD97E15089E6A74D94DE3F1173B4
Contract.add_token_transfer to: 0x0000749d250560bf06c079832e0e9a24509b1e440a45c33bd9448b41b6a056fc6201, amount: 2.985e-5, token_address: 0x00003DF600E329199BF3EE8FBE2B8223413D70BCDD97E15089E6A74D94DE3F1173B4

  Contract.set_code ""
end

Content (0 B)

State (0 B)

Movements (0)

Ownerships (1)

  • Secret shared with 1 key

    Encoded secret

    B7B0740E25B58E5EE2B9D9413E36210EE1D4BA552C60276A14E2A3EFB116AF476D49A51B477E6D1BD75AB05EBE42F6C3A0657E8811EFA49B30A399ED

    Authorized keys

    • 00017877BCF4122095926A49489009649603AB129822A19EF9D573B8FD714911ED7F

Contract recipients (0)

Inputs (0)

Contract inputs (0)

Proofs and signatures

Previous public key

0001918C64FC78610A0CC643EB38006851DB0123E970006B2C0F48FF8E52FBA5D176

Previous signature

5427D5A4331FB4B7BDCE186F675DB3B6B500B87159A69FED2FA2E25DC813AE9CFA9823E0DDF261A09C379C1EEBD659ACBE738CE95C1F14EC72E370012E30250E

Origin signature

3046022100CA083275857D576B9938A4514D4AF1BE636572340BC93A17C63EE7EDB3EB9188022100DA74384958CBED9EDC8F8A526CF27097F9EFBDBC8EB30B8E306B5C8AC12D6FF1

Proof of work

0101046C39D56B717142B6EE14B0F8B2561ECA458F3D2D12C9977D613F78829419063211F9C21F7BB0D56B6523040A8156BE22B6E9D6332B88ED882574D12AE32F7A45

Proof of integrity

00E1C9EAB6D554FFCCCE9CDD1D8D2B16D3C97BC81A53C9A94012CDEE140F6B46A7

Coordinator signature

A63AAE12159E9FCA84AA7C01BBAE396A53C21B2AA2EB960D6B50ADAD8234B6BF2ED371A1A588C9A52E80BE1ED9A47414D25D4A11421CD70FE7EFFE912932F904

Validator #1 public key

0001500FBE298B79FFBDD5CCA1798F30FD88A53D26EC39DE5DDE1F4137B032A4BC34

Validator #1 signature

AB2E90B5FC833E6ECB1A21FD8A71387FE4BC8EC06883FEE7AE85E5AECD6781422FB14C9678E0D49A9048D05C7AD884B4EBBD90AE766D979C996CED8D0C7D210C

Validator #2 public key

00018A312AFA617E98B343D09AD2E73F0AB661DB0A59FB986D5DB8CE7664E14C25FC

Validator #2 signature

2551A140AA4E3A9F7800C57154B82F6E2E8DC3A855E483A60075E551B89798A3C361D211688400100AE14FB602FEA98A1B358FB418C96BBFA1F4CE3C90294002