MarketplaceSEALED

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

Transaction ID

Timestamp

Feb 12, 2026, 09:09:38 AM UTC
2w ago

Block Height

141,960,324

Computation

0

Execution Fee

0.00202 FLOW

Transaction Summary

Marketplace

Called FungibleToken, NonFungibleToken, FazeUtilityCoin +2 more

Script Arguments

0saleItemIDs[UInt64]
[
  "116715"
]
1sellerCuts[UFix64]
[
  "4.50000000"
]
2beneficiaryCuts[UFix64]
[
  "0.50000000"
]
3beneficiaryAddressAddress
4taxCuts[UFix64]
[
  "0.00000000"
]
5taxAddressAddress
6sellerFTAddressAddress

Cadence Script

1import FungibleToken from 0xf233dcee88fe0abe
2import NonFungibleToken from 0x1d7e57aa55817448
3import FazeUtilityCoin from 0x4eded0de73020ca5
4import CricketMoments from 0x4eded0de73020ca5
5import NFTStorefront from 0x4eb8a10cb9f87357
6
7transaction(saleItemIDs: [UInt64], sellerCuts: [UFix64], beneficiaryCuts:[UFix64], beneficiaryAddress: Address, taxCuts:[UFix64], taxAddress:Address, sellerFTAddress: Address) {
8
9    let sellerFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
10    let beneficiaryFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
11    let taxFazeUtilityCoinReceiver: Capability<&FazeUtilityCoin.Vault>
12    let cricketMomentsProvider: Capability<auth(NonFungibleToken.Withdraw) &CricketMoments.Collection>
13    let storefront: auth(NFTStorefront.CreateListing) &NFTStorefront.Storefront
14
15    prepare(account: auth(BorrowValue, Capabilities, SaveValue) &Account) {
16        self.sellerFazeUtilityCoinReceiver = getAccount(sellerFTAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
17        self.beneficiaryFazeUtilityCoinReceiver = getAccount(beneficiaryAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
18        self.taxFazeUtilityCoinReceiver = getAccount(taxAddress).capabilities.get<&FazeUtilityCoin.Vault>(FazeUtilityCoin.ReceiverPublicPath)
19        
20        assert(self.sellerFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed seller FazeUtilityCoin receiver")
21        assert(self.beneficiaryFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed beneficiary FazeUtilityCoin receiver")
22        assert(self.taxFazeUtilityCoinReceiver.borrow() != nil, message: "Missing or mis-typed tax FazeUtilityCoin receiver")
23
24        self.cricketMomentsProvider = account.capabilities.storage.issue<auth(NonFungibleToken.Withdraw) &CricketMoments.Collection>(CricketMoments.CollectionStoragePath)
25        assert(self.cricketMomentsProvider.borrow() != nil, message: "Missing or mis-typed CricketMoments.Collection provider")
26
27        self.storefront = account.storage.borrow<auth(NFTStorefront.CreateListing) &NFTStorefront.Storefront>(from: NFTStorefront.StorefrontStoragePath)
28            ?? panic("Missing or mis-typed NFTStorefront Storefront")
29    }
30
31    execute {
32        
33        for index, saleItemID in saleItemIDs {
34            let sellerSaleCut = NFTStorefront.SaleCut(
35                receiver: self.sellerFazeUtilityCoinReceiver,
36                amount: sellerCuts[index]
37            )
38
39            let beneficiarySaleCut = NFTStorefront.SaleCut(
40                receiver: self.beneficiaryFazeUtilityCoinReceiver,
41                amount: beneficiaryCuts[index]
42            )
43
44            let taxSaleCut = NFTStorefront.SaleCut(
45                receiver: self.taxFazeUtilityCoinReceiver,
46                amount: taxCuts[index]
47            )
48
49            self.storefront.createListing(
50                nftProviderCapability: self.cricketMomentsProvider,
51                nftType: Type<@CricketMoments.NFT>(),
52                nftID: saleItemID,
53                salePaymentVaultType: Type<@FazeUtilityCoin.Vault>(),
54                saleCuts: taxCuts[index]>0.0? [sellerSaleCut, beneficiarySaleCut, taxSaleCut]:[sellerSaleCut, beneficiarySaleCut]
55            )
56        }
57    }
58}