TransactionSEALED

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

Transaction ID

Timestamp

May 29, 2025, 10:09:38 AM UTC
9mo ago

Block Height

114,649,423

Computation

0

Execution Fee

0.00001899 FLOW

Transaction Summary

Contract Call

Called NBAsageNFT, FungibleToken, NonFungibleToken +1 more

Script Arguments

0NFTReceiverAddress
1priceUFix64
1.50000000
2nameString
NBAsage No
3descriptionString
No NFT of NBAsage is the negative opinion minted on Flow network. The users owning this asset posts their No opinions
4thumbnailString
https://arweave.net/LxILnA3lG-oRW5eZR4XAB-RnzpcFRjhSwh_PfQmw1Jw
5cuts[UFix64]
[]
6royaltyDescriptions[String]
[]
7royaltyBeneficiaries[Address]
[]
8questionIDString
WNAP3Bnu7M53n2BR
9sideBool
false
10signatureString
06a3e68b5098da58ce9650a1c5f32594ccfaf2189d00f0da55b0269c70e93ce304bd8ce45aa950f18d0b500d28d777db321a6c855d3a1e1d9a8d94efb99d0ef5
11saltUInt64
123
12nonceInt64
197893
13nft_countUInt64
3

Cadence Script

1import NBAsageNFT from 0x7d09be7121e058eb
2import FungibleToken from 0xf233dcee88fe0abe
3import NonFungibleToken from 0x1d7e57aa55817448
4import MetadataViews from 0x1d7e57aa55817448
5
6transaction(
7    NFTReceiver: Address,
8    price: UFix64,
9    name: String,
10    description: String,
11    thumbnail: String,
12    cuts: [UFix64],
13    royaltyDescriptions: [String],
14    royaltyBeneficiaries: [Address],
15    questionID: String,
16    side: Bool,
17    signature: String,
18    salt: UInt64,
19    nonce: Int64,
20    nft_count: UInt64
21) {
22
23    let paymentVault: @{FungibleToken.Vault}
24
25    prepare(acct: auth(BorrowValue) &Account) {
26
27    // Access the vault of the buyer to pay the sale price of the listing.
28    let mainVault = acct.storage.borrow<auth(FungibleToken.Withdraw) &{FungibleToken.Vault}>(from: /storage/usdcFlowVault)
29        ?? panic("Cannot borrow USDC Token vault from acct storage")
30
31    self.paymentVault <- mainVault.withdraw(amount: price)
32
33    }
34
35    execute {
36        // Create the royalty details
37        var count = 0
38        var royalties: [MetadataViews.Royalty] = []
39        while royaltyBeneficiaries.length > count {
40            let beneficiary = royaltyBeneficiaries[count]
41            let beneficiaryCapability = getAccount(beneficiary).capabilities.get<&{FungibleToken.Receiver}>(
42                MetadataViews.getRoyaltyReceiverPublicPath()
43            )
44
45            if !beneficiaryCapability.check() {
46                panic("Beneficiary does not have Receiver configured at RoyaltyReceiverPublicPath")
47            }
48
49            royalties.append(
50                MetadataViews.Royalty(
51                    receiver: beneficiaryCapability,
52                    cut: cuts[count],
53                    description: royaltyDescriptions[count]
54                )
55            )
56            count = count + 1
57        }
58
59
60        
61        // Call the purchaseNFT function
62        NBAsageNFT.purchaseNFT(
63            NFTReceiver: NFTReceiver,
64            paymentVault: <-self.paymentVault,
65            amount: price,
66            name: name,
67            description: description,
68            thumbnail: thumbnail,
69            royalties: royalties,
70            questionID: questionID,
71            side: side,
72            signature: signature,
73            salt: salt,
74            nonce: nonce,
75            count: nft_count
76        )
77    }
78}