FT TransferSEALEDEVM

*%$~#╲█╲▪^◇╱%╱@~▫#◇■%~░■■▒#╳■$▪▒▓◆!?╲░□░█@*▒○░^▓╳^@*▪▪◇*!~█▒*╲█%

Transaction ID

Timestamp

Feb 12, 2026, 09:01:15 AM UTC
2w ago

Block Height

141,959,695

Computation

0

Execution Fee

0.00646 FLOW

Execution Error

Error Code: 1101

assertion failed: tx failed. status: failed [306]: execution reverted

Error ContextLine 33
28
29        let args: {String: AnyStruct} = {
30            "callback": callback,
31            "feeRateBps": SwapFactory.getFlashloanRateBps()
32        };
33        getAccount(0xc353b9d685ec427d)
34            .capabilities.borrow<&{SwapInterfaces.PairPublic}>(SwapConfig.PairPublicPath)!
35            .flashloan(executor: LendingExecutor.borrowSwapExecutor()!, requestedTokenVaultType: outVault.getType(), requestedAmount: amount, params: args)
36    }
37}
Call Stack
Raw Error

[Error Code: 1101] error caused by: 1 error occurred: * transaction execute failed: [Error Code: 1101] cadence runtime error: Execution failed: --> 67fe26268ca5547e8edcc6033dca37b6137206ebf67f694394717fd10391d901:33:8 | 33 | getAccount(0xc353b9d685ec427d) 34 | .capabilities.borrow<&{SwapInterfaces.PairPublic}>(SwapConfig.PairPublicPath)! 35 | .flashloan(executor: LendingExecutor.borrowSwapExecutor()!, requestedTokenVaultType: outVault.getType(), requestedAmount: amount, params: args) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --> c353b9d685ec427d.SwapPair:620:12 --> c353b9d685ec427d.SwapPair:481:23 --> efb80fd452832e05.LendingExecutor:19:12 --> 67fe26268ca5547e8edcc6033dca37b6137206ebf67f694394717fd10391d901:21:123 | 21 | txData[1] = FlowEVMUtil.replaceInto(into: txData[1], replace: FlowEVMUtil.convertUInt256ToBytes(c), start: 132);let r1 = FlowEVMUtil.approveAndSwap(coa, tokenAddress: EVM.addressFromString("0xF1815bd50389c46847f0Bda824eC8da914045D14"), amount: c, contractAddress: EVM.addressFromString("0xeEDC6Ff75e1b10B903D9013c358e446a73d35341"), txdata: txData[1], gasLimit: gasLimit[1]);let d = FlowEVMUtil.convertBytesToUInt256(r1.slice(from: r1.length - 32, upTo: r1.length)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --> ccacabad8e80b596.FlowEVMUtil:13:15 error: assertion failed: tx failed. status: failed [306]: execution reverted --> ccacabad8e80b596.FlowEVMUtil:19:8 Was this error unhelpful? Consider suggesting an improvement here: https://github.com/onflow/cadence/issues.

Transaction Summary

FT Transfer

Called EVM, EVMVMBridgedToken_99af3eea856556646c98c8b9b2548fe815240750, FlowEVMBridgeConfig +8 more

Script Arguments

0amountUFix64
956.84088140
1txData[[UInt8]]
[
  [
    "4",
    "228",
    "90",
    "175",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "211",
    "191",
    "83",
    "218",
    "193",
    "6",
    "160",
    "41",
    "11",
    "4",
    "131",
    "236",
    "188",
    "137",
    "212",
    "15",
    "204",
    "150",
    "31",
    "62",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "241",
    "129",
    "91",
    "213",
    "3",
    "137",
    "196",
    "104",
    "71",
    "240",
    "189",
    "168",
    "36",
    "236",
    "141",
    "169",
    "20",
    "4",
    "93",
    "20",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "11",
    "184",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "2",
    "221",
    "220",
    "6",
    "70",
    "16",
    "90",
    "63",
    "212",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "22",
    "71",
    "55",
    "81",
    "76",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0"
  ],
  [
    "4",
    "228",
    "90",
    "175",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "241",
    "129",
    "91",
    "213",
    "3",
    "137",
    "196",
    "104",
    "71",
    "240",
    "189",
    "168",
    "36",
    "236",
    "141",
    "169",
    "20",
    "4",
    "93",
    "20",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "153",
    "175",
    "62",
    "234",
    "133",
    "101",
    "86",
    "100",
    "108",
    "152",
    "200",
    "185",
    "178",
    "84",
    "143",
    "232",
    "21",
    "36",
    "7",
    "80",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "100",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "2",
    "221",
    "220",
    "6",
    "70",
    "16",
    "90",
    "63",
    "212",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "1",
    "64",
    "193",
    "175",
    "32",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0",
    "0"
  ]
]
2gasLimit[UInt64]
[
  "15000000",
  "15000000"
]
3value[UInt]
[
  "956840881400000000000",
  "0"
]

Cadence Script

1import EVM from 0xe467b9dd11fa00df
2import EVMVMBridgedToken_99af3eea856556646c98c8b9b2548fe815240750 from 0x1e4aa0b87d10b141
3import FlowEVMBridgeConfig from 0x1e4aa0b87d10b141
4import FlowEVMBridgeUtils from 0x1e4aa0b87d10b141
5import FlowEVMUtil from 0xccacabad8e80b596
6import FlowToken from 0x1654653399040a61
7import FungibleToken from 0xf233dcee88fe0abe
8import LendingExecutor from 0xefb80fd452832e05
9import SwapConfig from 0xb78ef7afa52ff906
10import SwapFactory from 0xb063c16cac85dbd1
11import SwapInterfaces from 0xb78ef7afa52ff906
12
13transaction(amount: UFix64, txData: [[UInt8]], gasLimit: [UInt64], value: [UInt]) {
14    prepare(signer: auth(BorrowValue, CopyValue) &Account) {
15        let coa = signer.storage.borrow<auth(EVM.Bridge, EVM.Withdraw, EVM.Call) &EVM.CadenceOwnedAccount>(from: /storage/evm)!
16        let outVault = signer.storage.borrow<auth(FungibleToken.Withdraw) &FlowToken.Vault>(from: /storage/flowTokenVault)!
17
18        let callback = fun (a: @{FungibleToken.Vault}, repayAmount: UFix64): @{FungibleToken.Vault} {
19            let b = FlowEVMBridgeUtils.convertCadenceAmountToERC20Amount(a.balance, erc20Address: FlowEVMBridgeConfig.getEVMAddressAssociated(with: Type<@FlowToken.Vault>())!);coa.deposit(from: <-(a as! @FlowToken.Vault))
20		let r0 = FlowEVMUtil.runCall(coa, contractAddress: EVM.addressFromString("0xeEDC6Ff75e1b10B903D9013c358e446a73d35341"), txdata: txData[0], gasLimit: gasLimit[0], value: EVM.Balance(attoflow: UInt(b)));let c = FlowEVMUtil.convertBytesToUInt256(r0.slice(from: r0.length - 32, upTo: r0.length))
21		txData[1] = FlowEVMUtil.replaceInto(into: txData[1], replace: FlowEVMUtil.convertUInt256ToBytes(c), start: 132);let r1 = FlowEVMUtil.approveAndSwap(coa, tokenAddress: EVM.addressFromString("0xF1815bd50389c46847f0Bda824eC8da914045D14"), amount: c, contractAddress: EVM.addressFromString("0xeEDC6Ff75e1b10B903D9013c358e446a73d35341"), txdata: txData[1], gasLimit: gasLimit[1]);let d = FlowEVMUtil.convertBytesToUInt256(r1.slice(from: r1.length - 32, upTo: r1.length))
22		let e <- FlowEVMUtil.bridgeTokenToCadence(coa, capCopy: signer.storage.copy<Capability<auth(FungibleToken.Withdraw) &{FungibleToken.Provider}>>(from: FlowEVMBridgeConfig.providerCapabilityStoragePath)!, vaultType: Type<@EVMVMBridgedToken_99af3eea856556646c98c8b9b2548fe815240750.Vault>(), amount: d)
23		let f <- getAccount(0xe468e4c5081b5501).capabilities.borrow<&{SwapInterfaces.PairPublic}>(SwapConfig.PairPublicPath)!.swap(vaultIn: <- e, exactAmountOut: nil);
24            assert(f.balance > repayAmount, message: f.balance.toString().concat(" <= ").concat(repayAmount.toString()))
25            outVault.deposit(from: <- f.withdraw(amount: f.balance - repayAmount))
26            return <- f
27        }
28
29        let args: {String: AnyStruct} = {
30            "callback": callback,
31            "feeRateBps": SwapFactory.getFlashloanRateBps()
32        };
33        getAccount(0xc353b9d685ec427d)
34            .capabilities.borrow<&{SwapInterfaces.PairPublic}>(SwapConfig.PairPublicPath)!
35            .flashloan(executor: LendingExecutor.borrowSwapExecutor()!, requestedTokenVaultType: outVault.getType(), requestedAmount: amount, params: args)
36    }
37}