Type
CONTRACT
Validation date
2023-11-21 07:25:15 UTC
Fee
0 UCO

Code (922 B)

  @version 1

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

  Contract.set_code ""
end

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

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

  Contract.set_code ""
end

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

    abi_data = Evm.abi_encode("status()")
    tx = [to: "0x49ae90258c397c4b8c300c418722aa348c4e916d", 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: 0x00000BC0EBA2DBCE4455B46F5E51AFAABA6EB4C7FBA1D4E2E6DABD55DC70F9A04D6F, amount: 9.9202e-4
Contract.add_uco_transfer to: 0x0000749d250560bf06c079832e0e9a24509b1e440a45c33bd9448b41b6a056fc6201, amount: 2.98e-6

  Contract.set_code ""
end

Content (0 B)

State (0 B)

Movements (0)

Ownerships (1)

  • Secret shared with 1 key

    Encoded secret

    7AE9171EDF8E4040948679EBA52BA5066C6B5D1AF70BBE79D4639D5C7F74EA9E2F8AB53CF5EFD64836545DE7772AB56FEB2090D182F2C3985D74B74F

    Authorized keys

    • 00017877BCF4122095926A49489009649603AB129822A19EF9D573B8FD714911ED7F

Contract recipients (0)

Inputs (0)

Contract inputs (0)

Unspent outputs (1)

Proofs and signatures

Previous public key

00011882C22EA9B32DC35E329FE07A0C75D76D40DA8A003EA8D3FDC92AA917C13C8D

Previous signature

98FA9C30C3821EAC763839C9CAF8503FAC496EA8718095CC71C2E0A04345A84727D806F9CAA544483FA89A8763F92D11D8B1EAC5F473B9633BE7E00F86F6970A

Origin signature

3046022100A1A4569752CD189EFCEB41D3C9A5FB3D93258B6658751656C4D0F54D4028A798022100E86DE7717288415B630C11EC824C30BF9D2660D3FAAC3BD0FC2FA4B933BF39B0

Proof of work

010204B3B2A53580086B9F36919CF40ABC55904729F78BF43673E216FAC1EB2451DD1E521879C6588F0CB09B150A103A39A73E2816B5ADF51F0721348BA3A66C33023B

Proof of integrity

00A61E83136A8AF63D83B8D9669716C098F844A2015F59BED3671D4BDC8312B08C

Coordinator signature

0DFD944D5099D99AF038AC876A2C7A224EEE4E8676BFA327AD186176D5E08EEBFA100B2CE48F7C154E2DD9A7050FC2B960DADA7B3DCB91A0E8754BAF34474C07

Validator #1 public key

00011B58ED42235461734EAF253BD97A80B92899ABCC3BE680D44B6825DD2A88A947

Validator #1 signature

A0760E7B315C822246C0C6C70B3768134FAC1EE1B0F01A16199694ED9AB7E3F9B84F18C27B3AA3E1B07CBCD1462D33A7E5AA23E714202E5FE0835C71D62B5502

Validator #2 public key

0001B0A94804BF8ECC9897075C6207FF63EF4D339F57A0349888E6B77CD47DB53EF3

Validator #2 signature

089DBF50A158F6FECAC332C9D668F536824834144EFFCE12163B39B79930DB32D3C356A741193311C4C06D94365B2DC01B655FEE8DAA2D87774553A023349504