tx · 6DrJB7N5VQq3DfNbszAaJgPxpfNyCvSkCshDXW3uSv4b

3Moz6HJhucpFh4V3VScXhd9efei4Curytfj:  -0.01000000 Waves

2023.11.19 20:34 [2850569] smart account 3Moz6HJhucpFh4V3VScXhd9efei4Curytfj > SELF 0.00000000 Waves

{ "type": 13, "id": "6DrJB7N5VQq3DfNbszAaJgPxpfNyCvSkCshDXW3uSv4b", "fee": 1000000, "feeAssetId": null, "timestamp": 1700415344493, "version": 2, "chainId": 84, "sender": "3Moz6HJhucpFh4V3VScXhd9efei4Curytfj", "senderPublicKey": "Ec1VLg3r1E7mwHmaNidmoKrFAUJ55UVJFq3J1YKRy5Zm", "proofs": [ "W1zbZgaATqtMMnjGR2tYC9VdAFTJgUV5YWixBBA6cNZVNaq4ZUmMVBqsHnVgCeZ6zpQCGCbqPEGdcdG9JU9cGyk", "62CJdwb1yM5xz7pyEByCqw4ZcESDmDbYn7uJPhreMkTtNKFb2aeQHF2aU84rkpFeFAT6FqYbLfWBbyxVfNYcRpXN" ], "script": "base64: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", "height": 2850569, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: edHHWZhzMocFaEmRgCHdG39rnEcosEpcE9P1JVNUaNo Next: CWc44LPN52RahNwFtpagyUSQapRdnDVnf79eR4bcnUwU Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-
4+let viableCallerAddress = "3N73dcv2jkTobdQ9TRLSX4PtvqHbjsiKxiP"
55
66 @Callable(i)
7-func call (input,input2) = [IntegerEntry("1", input[0]), IntegerEntry("2", input[1])]
7+func registerData (clientInput,opponentInput,id,oppAddress,lgtCond) = {
8+ let client = toString(i.caller)
9+ let txId = toBase58String(i.transactionId)
10+[StringEntry(id, txId), IntegerEntry((((txId + "_") + client) + "_age"), clientInput[0]), IntegerEntry((((txId + "_") + client) + "_sex"), clientInput[1]), IntegerEntry((((txId + "_") + client) + "_damage"), clientInput[2]), IntegerEntry((((txId + "_") + client) + "_fac1"), clientInput[3]), IntegerEntry((((txId + "_") + client) + "_fac2"), clientInput[4]), IntegerEntry((((txId + "_") + client) + "_fac3"), clientInput[5]), IntegerEntry((((txId + "_") + client) + "_fac4"), clientInput[6]), IntegerEntry((((txId + "_") + client) + "_vio1"), clientInput[7]), IntegerEntry((((txId + "_") + client) + "_vio2"), clientInput[8]), IntegerEntry((((txId + "_") + client) + "_vio3"), clientInput[9]), IntegerEntry((((txId + "_") + client) + "_vio4"), clientInput[10]), IntegerEntry((((txId + "_") + oppAddress) + "_age"), opponentInput[0]), IntegerEntry((((txId + "_") + oppAddress) + "_sex"), opponentInput[1]), IntegerEntry((((txId + "_") + oppAddress) + "_damage"), opponentInput[2]), IntegerEntry((((txId + "_") + oppAddress) + "_fac1"), opponentInput[3]), IntegerEntry((((txId + "_") + oppAddress) + "_fac2"), opponentInput[4]), IntegerEntry((((txId + "_") + oppAddress) + "_fac3"), opponentInput[5]), IntegerEntry((((txId + "_") + oppAddress) + "_fac4"), opponentInput[6]), IntegerEntry((((txId + "_") + oppAddress) + "_vio1"), opponentInput[7]), IntegerEntry((((txId + "_") + oppAddress) + "_vio2"), opponentInput[8]), IntegerEntry((((txId + "_") + oppAddress) + "_vio3"), opponentInput[9]), IntegerEntry((((txId + "_") + oppAddress) + "_vio4"), opponentInput[10]), IntegerEntry((txId + "_lgt"), lgtCond)]
11+ }
812
913
1014
1115 @Callable(i)
12-func registerData (clientInput,opponentInput,id,oppAddress) = {
16+func evaluatedData (prediction_id,per_one_address,per_two_address,guilty_person_address,eligible_person_address) = {
17+ let txId = toBase58String(i.transactionId)
18+[StringEntry(prediction_id, txId), StringEntry((txId + "_guilty"), guilty_person_address), StringEntry((txId + "_eligible_payout"), eligible_person_address)]
19+ }
20+
21+
22+
23+@Callable(i)
24+func requestPayout (pred_txId,amount,id) = {
1325 let client = toString(i.caller)
1426 let txId = toBase58String(i.transactionId)
15-[StringEntry(id, txId), IntegerEntry((((txId + "_") + client) + "_age"), clientInput[0]), IntegerEntry((((txId + "_") + client) + "_sex"), clientInput[1]), IntegerEntry((((txId + "_") + client) + "_damage"), clientInput[2]), IntegerEntry((((txId + "_") + client) + "_fac1"), clientInput[3]), IntegerEntry((((txId + "_") + client) + "_fac2"), clientInput[4]), IntegerEntry((((txId + "_") + client) + "_fac3"), clientInput[5]), IntegerEntry((((txId + "_") + client) + "_fac4"), clientInput[6]), IntegerEntry((((txId + "_") + client) + "_vio1"), clientInput[7]), IntegerEntry((((txId + "_") + client) + "_vio2"), clientInput[8]), IntegerEntry((((txId + "_") + client) + "_vio3"), clientInput[9]), IntegerEntry((((txId + "_") + client) + "_vio4"), clientInput[10]), IntegerEntry((((txId + "_") + oppAddress) + "_age"), opponentInput[0]), IntegerEntry((((txId + "_") + oppAddress) + "_sex"), opponentInput[1]), IntegerEntry((((txId + "_") + oppAddress) + "_damage"), opponentInput[2]), IntegerEntry((((txId + "_") + oppAddress) + "_fac1"), opponentInput[3]), IntegerEntry((((txId + "_") + oppAddress) + "_fac2"), opponentInput[4]), IntegerEntry((((txId + "_") + oppAddress) + "_fac3"), opponentInput[5]), IntegerEntry((((txId + "_") + oppAddress) + "_fac4"), opponentInput[6]), IntegerEntry((((txId + "_") + oppAddress) + "_vio1"), opponentInput[7]), IntegerEntry((((txId + "_") + oppAddress) + "_vio2"), opponentInput[8]), IntegerEntry((((txId + "_") + oppAddress) + "_vio3"), opponentInput[9]), IntegerEntry((((txId + "_") + oppAddress) + "_vio4"), opponentInput[10])]
27+[StringEntry((id + "_request_payout"), txId), IntegerEntry((txId + "_amount"), amount), StringEntry((txId + "_prediction_id"), pred_txId)]
28+ }
29+
30+
31+
32+@Callable(i)
33+func PayoutUser (amount,status,id,recipientAddress) = {
34+ let caller = toString(i.caller)
35+ let txId = toBase58String(i.transactionId)
36+ let recipient = Address(fromBase58String(recipientAddress))
37+ if ((status == "error"))
38+ then throw("There is an error with the data")
39+ else if ((caller != viableCallerAddress))
40+ then throw("You are not allowed to authorize payouts")
41+ else [StringEntry((id + "_payout"), txId), IntegerEntry((txId + "_amount"), amount), ScriptTransfer(recipient, 1000000, unit)]
1642 }
1743
1844
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-
4+let viableCallerAddress = "3N73dcv2jkTobdQ9TRLSX4PtvqHbjsiKxiP"
55
66 @Callable(i)
7-func call (input,input2) = [IntegerEntry("1", input[0]), IntegerEntry("2", input[1])]
7+func registerData (clientInput,opponentInput,id,oppAddress,lgtCond) = {
8+ let client = toString(i.caller)
9+ let txId = toBase58String(i.transactionId)
10+[StringEntry(id, txId), IntegerEntry((((txId + "_") + client) + "_age"), clientInput[0]), IntegerEntry((((txId + "_") + client) + "_sex"), clientInput[1]), IntegerEntry((((txId + "_") + client) + "_damage"), clientInput[2]), IntegerEntry((((txId + "_") + client) + "_fac1"), clientInput[3]), IntegerEntry((((txId + "_") + client) + "_fac2"), clientInput[4]), IntegerEntry((((txId + "_") + client) + "_fac3"), clientInput[5]), IntegerEntry((((txId + "_") + client) + "_fac4"), clientInput[6]), IntegerEntry((((txId + "_") + client) + "_vio1"), clientInput[7]), IntegerEntry((((txId + "_") + client) + "_vio2"), clientInput[8]), IntegerEntry((((txId + "_") + client) + "_vio3"), clientInput[9]), IntegerEntry((((txId + "_") + client) + "_vio4"), clientInput[10]), IntegerEntry((((txId + "_") + oppAddress) + "_age"), opponentInput[0]), IntegerEntry((((txId + "_") + oppAddress) + "_sex"), opponentInput[1]), IntegerEntry((((txId + "_") + oppAddress) + "_damage"), opponentInput[2]), IntegerEntry((((txId + "_") + oppAddress) + "_fac1"), opponentInput[3]), IntegerEntry((((txId + "_") + oppAddress) + "_fac2"), opponentInput[4]), IntegerEntry((((txId + "_") + oppAddress) + "_fac3"), opponentInput[5]), IntegerEntry((((txId + "_") + oppAddress) + "_fac4"), opponentInput[6]), IntegerEntry((((txId + "_") + oppAddress) + "_vio1"), opponentInput[7]), IntegerEntry((((txId + "_") + oppAddress) + "_vio2"), opponentInput[8]), IntegerEntry((((txId + "_") + oppAddress) + "_vio3"), opponentInput[9]), IntegerEntry((((txId + "_") + oppAddress) + "_vio4"), opponentInput[10]), IntegerEntry((txId + "_lgt"), lgtCond)]
11+ }
812
913
1014
1115 @Callable(i)
12-func registerData (clientInput,opponentInput,id,oppAddress) = {
16+func evaluatedData (prediction_id,per_one_address,per_two_address,guilty_person_address,eligible_person_address) = {
17+ let txId = toBase58String(i.transactionId)
18+[StringEntry(prediction_id, txId), StringEntry((txId + "_guilty"), guilty_person_address), StringEntry((txId + "_eligible_payout"), eligible_person_address)]
19+ }
20+
21+
22+
23+@Callable(i)
24+func requestPayout (pred_txId,amount,id) = {
1325 let client = toString(i.caller)
1426 let txId = toBase58String(i.transactionId)
15-[StringEntry(id, txId), IntegerEntry((((txId + "_") + client) + "_age"), clientInput[0]), IntegerEntry((((txId + "_") + client) + "_sex"), clientInput[1]), IntegerEntry((((txId + "_") + client) + "_damage"), clientInput[2]), IntegerEntry((((txId + "_") + client) + "_fac1"), clientInput[3]), IntegerEntry((((txId + "_") + client) + "_fac2"), clientInput[4]), IntegerEntry((((txId + "_") + client) + "_fac3"), clientInput[5]), IntegerEntry((((txId + "_") + client) + "_fac4"), clientInput[6]), IntegerEntry((((txId + "_") + client) + "_vio1"), clientInput[7]), IntegerEntry((((txId + "_") + client) + "_vio2"), clientInput[8]), IntegerEntry((((txId + "_") + client) + "_vio3"), clientInput[9]), IntegerEntry((((txId + "_") + client) + "_vio4"), clientInput[10]), IntegerEntry((((txId + "_") + oppAddress) + "_age"), opponentInput[0]), IntegerEntry((((txId + "_") + oppAddress) + "_sex"), opponentInput[1]), IntegerEntry((((txId + "_") + oppAddress) + "_damage"), opponentInput[2]), IntegerEntry((((txId + "_") + oppAddress) + "_fac1"), opponentInput[3]), IntegerEntry((((txId + "_") + oppAddress) + "_fac2"), opponentInput[4]), IntegerEntry((((txId + "_") + oppAddress) + "_fac3"), opponentInput[5]), IntegerEntry((((txId + "_") + oppAddress) + "_fac4"), opponentInput[6]), IntegerEntry((((txId + "_") + oppAddress) + "_vio1"), opponentInput[7]), IntegerEntry((((txId + "_") + oppAddress) + "_vio2"), opponentInput[8]), IntegerEntry((((txId + "_") + oppAddress) + "_vio3"), opponentInput[9]), IntegerEntry((((txId + "_") + oppAddress) + "_vio4"), opponentInput[10])]
27+[StringEntry((id + "_request_payout"), txId), IntegerEntry((txId + "_amount"), amount), StringEntry((txId + "_prediction_id"), pred_txId)]
28+ }
29+
30+
31+
32+@Callable(i)
33+func PayoutUser (amount,status,id,recipientAddress) = {
34+ let caller = toString(i.caller)
35+ let txId = toBase58String(i.transactionId)
36+ let recipient = Address(fromBase58String(recipientAddress))
37+ if ((status == "error"))
38+ then throw("There is an error with the data")
39+ else if ((caller != viableCallerAddress))
40+ then throw("You are not allowed to authorize payouts")
41+ else [StringEntry((id + "_payout"), txId), IntegerEntry((txId + "_amount"), amount), ScriptTransfer(recipient, 1000000, unit)]
1642 }
1743
1844
1945 @Verifier(tx)
2046 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
2147

github/deemru/w8io/169f3d6 
36.10 ms