Type
CONTRACT
Validation date
2023-10-24 14:45:52 UTC
Fee
0 UCO

Code (920 B)

  @version 1

# Automate the refunding after the given timestamp
actions triggered_by: datetime, at: 1698165900 do
  Contract.set_type "transfer"
  # Send back UCO to bridge pool
Contract.add_uco_transfer to: 0x000018D60115ECE0C7558A46B4693749BF6BEAB524FDDCCF9B10B910619E4EE08801, amount: 0.0995

  Contract.set_code ""
end

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

actions triggered_by: transaction, on: refund() do
  Contract.set_type "transfer"
  # Send back UCO to bridge pool
Contract.add_uco_transfer to: 0x000018D60115ECE0C7558A46B4693749BF6BEAB524FDDCCF9B10B910619E4EE08801, amount: 0.0995

  Contract.set_code ""
end

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

    abi_data = Evm.abi_encode("status()")
    tx = [to: "0x1043cbb0fce392d3361f6ab763584fb1004b800e", 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://data-seed-prebsc-1-s2.bnbchain.org:8545", "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_uco_transfer to: 0x00009E731DE71C9598A6C853EA89C736B1DAC3652AE00753651B642536AB14821F06, amount: 0.0992015
Contract.add_uco_transfer to: 0x0000749d250560bf06c079832e0e9a24509b1e440a45c33bd9448b41b6a056fc6201, amount: 2.985e-4

  Contract.set_code ""
end

Content (0 B)

State (0 B)

Movements (0)

Ownerships (1)

  • Secret shared with 1 key

    Encoded secret

    BB833C01EE0E9552C2A666A8E37F9801E54E26684333EB4F53809644ACCF4552FBB4EA761E0296CDB5187757CCBA845A7024889ABEA929E20B0AA0CE

    Authorized keys

    • 00017877BCF4122095926A49489009649603AB129822A19EF9D573B8FD714911ED7F

Contract recipients (0)

Inputs (0)

Contract inputs (0)

Unspent outputs (1)

Proofs and signatures

Previous public key

00013DAB7432659ADA8F50366622E27F52D0E408437830041D1931142522D115D5E3

Previous signature

F0E5466E2A8164D03AA8FEDC33D6E152F2C05EED04C4DAA0B17DFACEF3DD897FED97C363283E71EEE3AB570BCE41C5D78E04834AF8F51D24A5096C0C1B55F503

Origin signature

304502200FD9EEFA79A546AB0C57D75DDA08B3A6251339F63E10156092F253DB573F832F022100D6E54415A8BFB5260575D962FFD1D8EC92DBF51DA2CCDACC4638038B02A9A6BD

Proof of work

010104EB90F7BDD03D5A7FD9B61D9128D7CF24C11F3F7DA96825DA3680C2B6BCC48F1AFCE26E0A5F1A903EDAA4BC9390210A0A4F175847EC2A2BB325BB6D1CE8EC8F90

Proof of integrity

0026C8648C8E858CC5BB65BEE9FABD71625A159E8360D5C9075CBBB17026F23454

Coordinator signature

ED9AA60A7CBCED14E20341EF9317AC667D802F601F308AF19AD833E38312DC843BDBA9FFBCD4B1CE7A63EE8280DA15B0261126E81E7D1E7D9764CEC2FCC2B80E

Validator #1 public key

0001500FBE298B79FFBDD5CCA1798F30FD88A53D26EC39DE5DDE1F4137B032A4BC34

Validator #1 signature

062D06E67CFD5834C3D093251D6AE99976996BC2C5F425CCE7D895EDDD8411E5C39CE322EB9D34113099C569CF7344693B5FE9654332A8D81A3D9E43BE6FEA09

Validator #2 public key

00018A312AFA617E98B343D09AD2E73F0AB661DB0A59FB986D5DB8CE7664E14C25FC

Validator #2 signature

DBDA1650A7B0C88A822F9FA427F78A15533C429AD5AC311C06D65D9B698E2611FAD07E7A22FD75E176D097E4FDAA4038F1C7D92ED3CAA4C49F80B9834115790E