tx · FHGYWHc7w7vU5b5ibHRqEHnHoh9zzNN5KguxF2EUAT1o

3MyPz6zTL5di1uV9TYzZhbbPpHctnuJoxjC:  -0.11000000 Waves

2019.12.01 13:45 [789460] smart account 3MyPz6zTL5di1uV9TYzZhbbPpHctnuJoxjC > SELF 0.00000000 Waves

{ "type": 13, "id": "FHGYWHc7w7vU5b5ibHRqEHnHoh9zzNN5KguxF2EUAT1o", "fee": 11000000, "feeAssetId": null, "timestamp": 1575197258239, "version": 1, "sender": "3MyPz6zTL5di1uV9TYzZhbbPpHctnuJoxjC", "senderPublicKey": "H5vTt9KTtyCjxZAMmZdL7aRzBJ5SBejYSRwsP6tfx4ab", "proofs": [ "22xGXGt5S54mD4H9MoLWeGGnpbNgDot7KTSC528CyvEweWyFXD1x3pSF2ogfUAbD26uwFUDmnJnv9TSzy6R765Vu" ], "script": "base64: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bHQJAABnAAAAAgUAAAAPcmVzcG9uc2UxUmVzdWx0BQAAAA9yZXNwb25zZTNSZXN1bHQHCQAAZwAAAAIFAAAAD3Jlc3BvbnNlMVJlc3VsdAUAAAAPcmVzcG9uc2U0UmVzdWx0BwkAAGcAAAACBQAAAA9yZXNwb25zZTFSZXN1bHQFAAAAD3Jlc3BvbnNlNVJlc3VsdAcFAAAAD3Jlc3BvbnNlMVJlc3VsdAMDAwMJAABnAAAAAgUAAAAPcmVzcG9uc2UyUmVzdWx0BQAAAA9yZXNwb25zZTFSZXN1bHQJAABnAAAAAgUAAAAPcmVzcG9uc2UyUmVzdWx0BQAAAA9yZXNwb25zZTNSZXN1bHQHCQAAZwAAAAIFAAAAD3Jlc3BvbnNlMlJlc3VsdAUAAAAPcmVzcG9uc2U0UmVzdWx0BwkAAGcAAAACBQAAAA9yZXNwb25zZTJSZXN1bHQFAAAAD3Jlc3BvbnNlNVJlc3VsdAcFAAAAD3Jlc3BvbnNlMlJlc3VsdAMDAwMJAABnAAAAAgUAAAAPcmVzcG9uc2UzUmVzdWx0BQAAAA9yZXNwb25zZTJSZXN1bHQJAABnAAAAAgUAAAAPcmVzcG9uc2UzUmVzdWx0BQAAAA9yZXNwb25zZTFSZXN1bHQHCQAAZwAAAAIFAAAAD3Jlc3BvbnNlM1Jlc3VsdAUAAAAPcmVzcG9uc2U0UmVzdWx0BwkAAGcAAAACBQAAAA9yZXNwb25zZTNSZXN1bHQFAAAAD3Jlc3BvbnNlNVJlc3VsdAcFAAAAD3Jlc3BvbnNlM1Jlc3VsdAMDAwMJAABnAAAAAgUAAAAPcmVzcG9uc2U0UmVzdWx0BQAAAA9yZXNwb25zZTJSZXN1bHQJAABnAAAAAgUAAAAPcmVzcG9uc2U0UmVzdWx0BQAAAA9yZXNwb25zZTNSZXN1bHQHCQAAZwAAAAIFAAAAD3Jlc3BvbnNlNFJlc3VsdAUAAAAPcmVzcG9uc2UxUmVzdWx0BwkAAGcAAAACBQAAAA9yZXNwb25zZTRSZXN1bHQFAAAAD3Jlc3BvbnNlNVJlc3VsdAcFAAAAD3Jlc3BvbnNlNFJlc3VsdAUAAAAPcmVzcG9uc2U1UmVzdWx0AwkAAGcAAAACBQAAAAtmaW5hbFJlc3VsdAAAAAAAAAAAAwkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAA10cmFuc2FjdGlvbklkAgAAAAdfd2lubmVyBQAAAAtmaW5hbFJlc3VsdAUAAAADbmlsCQAAAgAAAAECAAAAFVRoZXJlIGlzIG5vIGNvbnNlbnN1cwAAAACuaEhD", "chainId": 84, "height": 789460, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+
5+
6+@Callable(i)
7+func request (url) = {
8+ let notaCoinId = base58'PUTFHERE'
9+ let pmt = extract(i.payment)
10+ if ((pmt.assetId != notaCoinId))
11+ then throw("Accept only notacoin")
12+ else if ((10 > pmt.amount))
13+ then throw("Not enough tokens attached")
14+ else WriteSet([DataEntry((toBase58String(i.transactionId) + "_url"), url), DataEntry((toBase58String(i.transactionId) + "_amount"), pmt.amount)])
15+ }
16+
17+
18+
19+@Callable(i)
20+func response (fileContent,transactionId) = {
21+ let hash = sha256(toBytes(fileContent))
22+ let currentValue = match getString(this, (transactionId + "_response")) {
23+ case s: String =>
24+ s
25+ case _ =>
26+ ""
27+ }
28+ let newValue = ((((currentValue + ";") + toBase58String(i.callerPublicKey)) + "=") + toUtf8String(hash))
29+ WriteSet([DataEntry((transactionId + "_response"), hash)])
30+ }
31+
32+
33+
34+@Callable(i)
35+func getResult (transactionId) = {
36+ let responses = extract(getString(this, (transactionId + "_response")))
37+ let responsesList = split(responses, ";")
38+ if ((5 > size(responsesList)))
39+ then throw("Not enough responses")
40+ else {
41+ let response1 = split(responsesList[0], "=")
42+ let response2 = split(responsesList[1], "=")
43+ let response3 = split(responsesList[2], "=")
44+ let response4 = split(responsesList[3], "=")
45+ let response5 = split(responsesList[4], "=")
46+ let response1Result = if ((response1[1] == response2[1]))
47+ then 1
48+ else (0 + (if ((response1[1] == response3[1]))
49+ then 1
50+ else (0 + (if ((response1[1] == response4[1]))
51+ then 1
52+ else (0 + (if ((response1[1] == response5[1]))
53+ then 1
54+ else 0))))))
55+ let response2Result = if ((response2[1] == response1[1]))
56+ then 1
57+ else (0 + (if ((response2[1] == response3[1]))
58+ then 1
59+ else (0 + (if ((response2[1] == response4[1]))
60+ then 1
61+ else (0 + (if ((response2[1] == response5[1]))
62+ then 1
63+ else 0))))))
64+ let response3Result = if ((response3[1] == response2[1]))
65+ then 1
66+ else (0 + (if ((response3[1] == response1[1]))
67+ then 1
68+ else (0 + (if ((response3[1] == response4[1]))
69+ then 1
70+ else (0 + (if ((response3[1] == response5[1]))
71+ then 1
72+ else 0))))))
73+ let response4Result = if ((response4[1] == response2[1]))
74+ then 1
75+ else (0 + (if ((response4[1] == response3[1]))
76+ then 1
77+ else (0 + (if ((response4[1] == response1[1]))
78+ then 1
79+ else (0 + (if ((response4[1] == response5[1]))
80+ then 1
81+ else 0))))))
82+ let response5Result = if ((response5[1] == response2[1]))
83+ then 1
84+ else (0 + (if ((response5[1] == response3[1]))
85+ then 1
86+ else (0 + (if ((response5[1] == response4[1]))
87+ then 1
88+ else (0 + (if ((response5[1] == response1[1]))
89+ then 1
90+ else 0))))))
91+ let finalResult = if (if (if (if ((response1Result >= response2Result))
92+ then (response1Result >= response3Result)
93+ else false)
94+ then (response1Result >= response4Result)
95+ else false)
96+ then (response1Result >= response5Result)
97+ else false)
98+ then response1Result
99+ else if (if (if (if ((response2Result >= response1Result))
100+ then (response2Result >= response3Result)
101+ else false)
102+ then (response2Result >= response4Result)
103+ else false)
104+ then (response2Result >= response5Result)
105+ else false)
106+ then response2Result
107+ else if (if (if (if ((response3Result >= response2Result))
108+ then (response3Result >= response1Result)
109+ else false)
110+ then (response3Result >= response4Result)
111+ else false)
112+ then (response3Result >= response5Result)
113+ else false)
114+ then response3Result
115+ else if (if (if (if ((response4Result >= response2Result))
116+ then (response4Result >= response3Result)
117+ else false)
118+ then (response4Result >= response1Result)
119+ else false)
120+ then (response4Result >= response5Result)
121+ else false)
122+ then response4Result
123+ else response5Result
124+ if ((finalResult >= 3))
125+ then WriteSet([DataEntry((transactionId + "_winner"), finalResult)])
126+ else throw("There is no consensus")
127+ }
128+ }
129+
130+

github/deemru/w8io/169f3d6 
19.80 ms