tx · A35xkg7yd7RtaA1DB2hywUWCioEbXApN56kCDi4xRr8H

3Mr1J95HgTFuj93Uh61WS1PBrxc5hSx5uE5:  -0.05000000 Waves

2024.07.27 12:04 [3212270] smart account 3Mr1J95HgTFuj93Uh61WS1PBrxc5hSx5uE5 > SELF 0.00000000 Waves

{ "type": 13, "id": "A35xkg7yd7RtaA1DB2hywUWCioEbXApN56kCDi4xRr8H", "fee": 5000000, "feeAssetId": null, "timestamp": 1722071141021, "version": 2, "chainId": 84, "sender": "3Mr1J95HgTFuj93Uh61WS1PBrxc5hSx5uE5", "senderPublicKey": "DhKSnv34wE65np8uDd8E6ygEbNsn6fHx9p7q4hJTcgRw", "proofs": [ "4hZ5ySLaNPo4pHcTQc4QNkth653C5KaRfYEvEZRHt2mmbweMMyocbG1BU5Zm7H9ggv36xA1LCBS5HHjCCGc9wseB" ], "script": "base64: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AAAGY2hhckF0AAAAAgUAAAAFYm9hcmQAAAAAAAAAAAYCAAAAATAGBwQAAAAVZWlnaHRoUG9zaXRpb25Db3JyZWN0AwMJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAABWJvYXJkAAAAAAAAAAAHCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkAAAAAAAAAAAHBgkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAFYm9hcmQAAAAAAAAAAAcCAAAAATAGBwQAAAAUbmludGhQb3NpdGlvbkNvcnJlY3QDAwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAFYm9hcmQAAAAAAAAAAAgJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQAAAAAAAAAAAgGCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAVib2FyZAAAAAAAAAAACAIAAAABMAYHBAAAABhub09sZFBvc2l0aW9uT3ZlcndyaXR0ZW4DAwMDAwMDAwUAAAAUZmlyc3RQb3NpdGlvbkNvcnJlY3QFAAAAFXNlY29uZFBvc2l0aW9uQ29ycmVjdAcFAAAAFHRoaXJkUG9zaXRpb25Db3JyZWN0BwUAAAAVZm91cnRoUG9zaXRpb25Db3JyZWN0BwUAAAAUZmlmdGhQb3NpdGlvbkNvcnJlY3QHBQAAABRzaXh0aFBvc2l0aW9uQ29ycmVjdAcFAAAAFnNldmVudGhQb3NpdGlvbkNvcnJlY3QHBQAAABVlaWdodGhQb3NpdGlvbkNvcnJlY3QHBQAAABRuaW50aFBvc2l0aW9uQ29ycmVjdAcEAAAACmNvdW50TW92ZXMJAABkAAAAAgkAAGQAAAACCQAAZAAAAAIJAABkAAAAAgkAAGQAAAACCQAAZAAAAAIJAABkAAAAAgkAAGQAAAACBQAAAA1maXJzdFNlbGVjdGVkBQAAAA5zZWNvbmRTZWxlY3RlZAUAAAANdGhpcmRTZWxlY3RlZAUAAAAOZm91cnRoU2VsZWN0ZWQFAAAADWZpZnRoU2VsZWN0ZWQFAAAADXNpeHRoU2VsZWN0ZWQFAAAAD3NldmVudGhTZWxlY3RlZAUAAAAOZWlnaHRoU2VsZWN0ZWQFAAAADW5pbnRoU2VsZWN0ZWQEAAAAC29ubHlPbmVNb3ZlCQAAZwAAAAIAAAAAAAAAAAEFAAAACmNvdW50TW92ZXMDCQAAZgAAAAIFAAAACmNvdW50TW92ZXMAAAAAAAAAAAEJAAACAAAAAQIAAAAUTW9yZSB0aGFuIG1vdmUgbWFkZSEDCQEAAAABIQAAAAEFAAAAGG5vT2xkUG9zaXRpb25PdmVyd3JpdHRlbgkAAAIAAAABAgAAABxGb3JtZXIgcG9zaXRpb24gb3ZlcndyaXR0ZW4hAwUAAAAYbm9PbGRQb3NpdGlvbk92ZXJ3cml0dGVuBQAAAAtvbmx5T25lTW92ZQcBAAAAE2NoZWNrSWZQbGF5ZXJIYXNXb24AAAADAAAABmdhbWVJZAAAAAVib2FyZAAAAAZwbGF5ZXIEAAAADGN1cnJlbnRCb2FyZAQAAAAHJG1hdGNoMAkABCIAAAABCQABLAAAAAICAAAADWN1cnJlbnRCb2FyZF8FAAAABmdhbWVJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwBQAAAAFzAgAAAAkwMDAwMDAwMDAEAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMJAARMAAAAAgkABEwAAAACAAAAAAAAAAAACQAETAAAAAIAAAAAAAAAAAEJAARMAAAAAgAAAAAAAAAAAgUAAAADbmlsCQAETAAAAAIJAARMAAAAAgAAAAAAAAAAAwkABEwAAAACAAAAAAAAAAAECQAETAAAAAIAAAAAAAAAAAUFAAAAA25pbAkABEwAAAACCQAETAAAAAIAAAAAAAAAAAYJAARMAAAAAgAAAAAAAAAABwkABEwAAAACAAAAAAAAAAAIBQAAAANuaWwJAARMAAAAAgkABEwAAAACAAAAAAAAAAAACQAETAAAAAIAAAAAAAAAAAMJAARMAAAAAgAAAAAAAAAABgUAAAADbmlsCQAETAAAAAIJAARMAAAAAgAAAAAAAAAAAQkABEwAAAACAAAAAAAAAAAECQAETAAAAAIAAAAAAAAAAAcFAAAAA25pbAkABEwAAAACCQAETAAAAAIAAAAAAAAAAAIJAARMAAAAAgAAAAAAAAAABQkABEwAAAACAAAAAAAAAAAIBQAAAANuaWwJAARMAAAAAgkABEwAAAACAAAAAAAAAAAACQAETAAAAAIAAAAAAAAAAAQJAARMAAAAAgAAAAAAAAAACAUAAAADbmlsCQAETAAAAAIJAARMAAAAAgAAAAAAAAAAAgkABEwAAAACAAAAAAAAAAAECQAETAAAAAIAAAAAAAAAAAYFAAAAA25pbAUAAAADbmlsBAAAAAZ0b3BSb3cDAwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAAAAAAAAAAAAAAAAUAAAAGcGxheWVyCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAAAAAAAAAAAAAABBQAAAAZwbGF5ZXIHCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAAAAAAAAAAAAAACBQAAAAZwbGF5ZXIHBAAAAAltaWRkbGVSb3cDAwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAAAQAAAAAAAAAAAAUAAAAGcGxheWVyCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAABAAAAAAAAAAABBQAAAAZwbGF5ZXIHCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAABAAAAAAAAAAACBQAAAAZwbGF5ZXIHBAAAAAlib3R0b21Sb3cDAwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAAAgAAAAAAAAAAAAUAAAAGcGxheWVyCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAACAAAAAAAAAAABBQAAAAZwbGF5ZXIHCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAACAAAAAAAAAAACBQAAAAZwbGF5ZXIHBAAAAApsZWZ0Q29sdW1uAwMJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAADGN1cnJlbnRCb2FyZAkAAZEAAAACCQABkQAAAAIFAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMAAAAAAAAAAAMAAAAAAAAAAAAFAAAABnBsYXllcgkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAAAwAAAAAAAAAAAQUAAAAGcGxheWVyBwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAAAwAAAAAAAAAAAgUAAAAGcGxheWVyBwQAAAAMbWlkZGxlQ29sdW1uAwMJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAADGN1cnJlbnRCb2FyZAkAAZEAAAACCQABkQAAAAIFAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMAAAAAAAAAAAQAAAAAAAAAAAAFAAAABnBsYXllcgkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAABAAAAAAAAAAAAQUAAAAGcGxheWVyBwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAABAAAAAAAAAAAAgUAAAAGcGxheWVyBwQAAAALcmlnaHRDb2x1bW4DAwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAABQAAAAAAAAAAAAUAAAAGcGxheWVyCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAAFAAAAAAAAAAABBQAAAAZwbGF5ZXIHCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAAFAAAAAAAAAAACBQAAAAZwbGF5ZXIHBAAAAAtkaWFnb25hbE9uZQMDCQAAAAAAAAIJAQAAAAZjaGFyQXQAAAACBQAAAAxjdXJyZW50Qm9hcmQJAAGRAAAAAgkAAZEAAAACBQAAABN3aW5uaW5nQ29tYmluYXRpb25zAAAAAAAAAAAGAAAAAAAAAAAABQAAAAZwbGF5ZXIJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAADGN1cnJlbnRCb2FyZAkAAZEAAAACCQABkQAAAAIFAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMAAAAAAAAAAAYAAAAAAAAAAAEFAAAABnBsYXllcgcJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAADGN1cnJlbnRCb2FyZAkAAZEAAAACCQABkQAAAAIFAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMAAAAAAAAAAAYAAAAAAAAAAAIFAAAABnBsYXllcgcEAAAAC2RpYWdvbmFsVHdvAwMJAAAAAAAAAgkBAAAABmNoYXJBdAAAAAIFAAAADGN1cnJlbnRCb2FyZAkAAZEAAAACCQABkQAAAAIFAAAAE3dpbm5pbmdDb21iaW5hdGlvbnMAAAAAAAAAAAcAAAAAAAAAAAAFAAAABnBsYXllcgkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAABwAAAAAAAAAAAQUAAAAGcGxheWVyBwkAAAAAAAACCQEAAAAGY2hhckF0AAAAAgUAAAAMY3VycmVudEJvYXJkCQABkQAAAAIJAAGRAAAAAgUAAAATd2lubmluZ0NvbWJpbmF0aW9ucwAAAAAAAAAABwAAAAAAAAAAAgUAAAAGcGxheWVyBwMDAwMDAwMFAAAABnRvcFJvdwYFAAAACW1pZGRsZVJvdwYFAAAACWJvdHRvbVJvdwYFAAAACmxlZnRDb2x1bW4GBQAAAAltaWRkbGVSb3cGBQAAAAtyaWdodENvbHVtbgYFAAAAC2RpYWdvbmFsT25lBgUAAAALZGlhZ29uYWxUd28AAAACAAAAAWkBAAAACGNhbGxiYWNrAAAAAQAAAA5nYW1lSWRBbmRCb2FyZAQAAAAFcGFydHMJAAS1AAAAAgUAAAAOZ2FtZUlkQW5kQm9hcmQCAAAAAV8EAAAABmdhbWVJZAkAAZEAAAACBQAAAAVwYXJ0cwAAAAAAAAAAAAQAAAAFYm9hcmQJAAGRAAAAAgUAAAAFcGFydHMAAAAAAAAAAAEEAAAAD21vdmVPZkFJSXNWYWxpZAkBAAAAEmNoZWNrSWZNb3ZlSXNWYWxpZAAAAAIFAAAABmdhbWVJZAUAAAAFYm9hcmQDCQEAAAABIQAAAAEFAAAAD21vdmVPZkFJSXNWYWxpZAkAAAIAAAABAgAAAA1JbGxlZ2FsIG1vdmUhBAAAAAhhaUhhc1dvbgkBAAAAE2NoZWNrSWZQbGF5ZXJIYXNXb24AAAADBQAAAAZnYW1lSWQFAAAABWJvYXJkBQAAAAJBSQMFAAAACGFpSGFzV29uCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAANY3VycmVudEJvYXJkXwUAAAAGZ2FtZUlkBQAAAAVib2FyZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAAB3dpbm5lcl8FAAAABmdhbWVJZAIAAAACYWkFAAAAA25pbAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAADWN1cnJlbnRCb2FyZF8FAAAABmdhbWVJZAUAAAAFYm9hcmQFAAAAA25pbAAAAAFpAQAAAAdwbGF5VFRUAAAAAgAAAARnYW1lAAAABWJvYXJkBAAAABBudW1iZXJPZlBheW1lbnRzCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAwkBAAAAAiE9AAAAAgUAAAAQbnVtYmVyT2ZQYXltZW50cwAAAAAAAAAAAQkAAAIAAAABAgAAABJQYXltZW50IG5lY2Vzc2FyeSEEAAAAB3BheW1lbnQJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAAA2ZlZQgFAAAAB3BheW1lbnQAAAAGYW1vdW50BAAAAApmZWVBc3NldElkCAUAAAAHcGF5bWVudAAAAAdhc3NldElkBAAAAAZtaW5GZWUEAAAAByRtYXRjaDAJAAQaAAAAAgkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEFAAAADEJBSV9DT05UUkFDVAIAAAAPcHJpY2VfdGljdGFjdG9lAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAW4FAAAAByRtYXRjaDAFAAAAAW4AAAAAAAAAAAADAwkBAAAAAiE9AAAAAgUAAAAKZmVlQXNzZXRJZAUAAAAMQkFJX0FTU0VUX0lEBgkAAGYAAAACBQAAAAZtaW5GZWUFAAAAA2ZlZQkAAAIAAAABAgAAACxQYXltZW50IG9mIHRoZSBtaW5pbWFsIEJBSSBhbW91bnQgbmVjZXNzYXJ5IQQAAAAGc2VuZGVyCAUAAAABaQAAAAZjYWxsZXIEAAAABmdhbWVJZAMJAAAAAAAAAgkAATEAAAABBQAAAARnYW1lAAAAAAAAAAAACQACWAAAAAEIBQAAAAFpAAAADXRyYW5zYWN0aW9uSWQFAAAABGdhbWUEAAAADGN1cnJlbnRCb2FyZAQAAAAHJG1hdGNoMAkABCIAAAABCQABLAAAAAICAAAADWN1cnJlbnRCb2FyZF8FAAAABmdhbWVJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwBQAAAAFzBQAAAAVib2FyZAQAAAAJaW5pdGlhdG9yBAAAAAckbWF0Y2gwCQAEIgAAAAEJAAEsAAAAAgIAAAAKaW5pdGlhdG9yXwUAAAAGZ2FtZUlkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAXMFAAAAByRtYXRjaDAFAAAAAXMFAAAABnNlbmRlcgMJAQAAAAIhPQAAAAIFAAAABnNlbmRlcgUAAAAJaW5pdGlhdG9yCQAAAgAAAAECAAAAKE9ubHkgaW5pdGlhdG9yIGlzIGFsbG93ZWQgdG8gbWFrZSBtb3ZlcyEEAAAAE21vdmVPZlBsYXllcklzVmFsaWQJAQAAABJjaGVja0lmTW92ZUlzVmFsaWQAAAACBQAAAAZnYW1lSWQFAAAABWJvYXJkAwkBAAAAASEAAAABBQAAABNtb3ZlT2ZQbGF5ZXJJc1ZhbGlkCQAAAgAAAAECAAAADUlsbGVnYWwgbW92ZSEEAAAADHBsYXllckhhc1dvbgkBAAAAE2NoZWNrSWZQbGF5ZXJIYXNXb24AAAADBQAAAAZnYW1lSWQFAAAABWJvYXJkBQAAAAZQTEFZRVIDBQAAAAxwbGF5ZXJIYXNXb24JAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAA1jdXJyZW50Qm9hcmRfBQAAAAZnYW1lSWQFAAAABWJvYXJkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAHd2lubmVyXwUAAAAGZ2FtZUlkAgAAAAZwbGF5ZXIJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAGc2VuZGVyBQAAAA5XSU5OSU5HX0FNT1VOVAUAAAAMQkFJX0FTU0VUX0lEBQAAAANuaWwEAAAACG5leHRNb3ZlCQAD/AAAAAQJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABBQAAAAxCQUlfQ09OVFJBQ1QCAAAAFHJlZ2lzdGVyVGFza0NhbGxiYWNrCQAETAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAZnYW1lSWQCAAAAAV8FAAAABWJvYXJkCQAETAAAAAICAAAACXRpY3RhY3RvZQkABEwAAAACAgAAAAhjYWxsYmFjawUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAAxCQUlfQVNTRVRfSUQAAAAAAACYloAFAAAAA25pbAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAADWN1cnJlbnRCb2FyZF8FAAAABmdhbWVJZAUAAAAFYm9hcmQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAAppbml0aWF0b3JfBQAAAAZnYW1lSWQJAAQlAAAAAQUAAAAGc2VuZGVyBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tlebdNRQQ=", "height": 3212270, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BjhesTfFhPwSt7kshZq4BieM3G6R2TG9aPpRDGphDKxK Next: RTZ28Qex1k28Y6UuWwyPaYsGYd4WtUjnRZeBJb2DWDz Diff:
OldNewDifferences
115115 else false
116116 let H = ((((((((o + p) + q) + r) + s) + t) + u) + v) + w)
117117 let I = (1 >= H)
118- if (G)
119- then I
120- else false
118+ if ((H > 1))
119+ then throw("More than move made!")
120+ else if (!(G))
121+ then throw("Former position overwritten!")
122+ else if (G)
123+ then I
124+ else false
121125 }
122126
123127
195199 let V = split(U, "_")
196200 let j = V[0]
197201 let k = V[1]
198- let W = {
199- let m = getString(("next_player_" + j))
200- if ($isInstanceOf(m, "String"))
201- then {
202- let n = m
203- n
204- }
205- else ""
206- }
207- let X = i(j, k)
208- if ((W != d))
209- then throw("Player has to move first")
210- else if (!(X))
211- then throw("Illegal move!")
212- else {
213- let Y = J(j, k, d)
214- if (Y)
215- then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "ai")]
216- else [StringEntry(("currentBoard_" + j), k), StringEntry(("next_player_" + j), c)]
217- }
202+ let W = i(j, k)
203+ if (!(W))
204+ then throw("Illegal move!")
205+ else {
206+ let X = J(j, k, d)
207+ if (X)
208+ then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "ai")]
209+ else [StringEntry(("currentBoard_" + j), k)]
210+ }
218211 }
219212
220213
221214
222215 @Callable(h)
223-func playTTT (Z,k) = {
224- let aa = size(h.payments)
225- if ((aa != 1))
216+func playTTT (Y,k) = {
217+ let Z = size(h.payments)
218+ if ((Z != 1))
226219 then throw("Payment necessary!")
227220 else {
228- let ab = h.payments[0]
229- let ac = ab.amount
230- let ad = ab.assetId
231- let ae = {
221+ let aa = h.payments[0]
222+ let ab = aa.amount
223+ let ac = aa.assetId
224+ let ad = {
232225 let m = getInteger(Address(fromBase58String(a)), "price_tictactoe")
233226 if ($isInstanceOf(m, "Int"))
234227 then {
235- let af = m
236- af
228+ let ae = m
229+ ae
237230 }
238231 else 0
239232 }
240- if (if ((ad != b))
233+ if (if ((ac != b))
241234 then true
242- else (ae > ac))
235+ else (ad > ab))
243236 then throw("Payment of the minimal BAI amount necessary!")
244237 else {
245- let ag = h.caller
246- let j = if ((size(Z) == 0))
238+ let af = h.caller
239+ let j = if ((size(Y) == 0))
247240 then toBase58String(h.transactionId)
248- else Z
249- let W = {
250- let m = getString(("next_player_" + j))
241+ else Y
242+ let l = {
243+ let m = getString(("currentBoard_" + j))
251244 if ($isInstanceOf(m, "String"))
252245 then {
253246 let n = m
254247 n
255248 }
256- else c
249+ else k
257250 }
258- if ((W != c))
259- then throw("AI has to move first!")
251+ let ag = {
252+ let m = getString(("initiator_" + j))
253+ if ($isInstanceOf(m, "String"))
254+ then {
255+ let n = m
256+ n
257+ }
258+ else af
259+ }
260+ if ((af != ag))
261+ then throw("Only initiator is allowed to make moves!")
260262 else {
261- let l = {
262- let m = getString(("currentBoard_" + j))
263- if ($isInstanceOf(m, "String"))
264- then {
265- let n = m
266- n
267- }
268- else k
269- }
270- let ah = {
271- let m = getString(("initiator_" + j))
272- if ($isInstanceOf(m, "String"))
273- then {
274- let n = m
275- n
276- }
277- else ag
278- }
279- if ((ag != ah))
280- then throw("Only initiator is allowed to make moves!")
263+ let ah = i(j, k)
264+ if (!(ah))
265+ then throw("Illegal move!")
281266 else {
282- let ai = i(j, k)
283- if (!(ai))
284- then throw("Illegal move!")
267+ let ai = J(j, k, c)
268+ if (ai)
269+ then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "player"), ScriptTransfer(af, e, b)]
285270 else {
286- let aj = J(j, k, c)
287- if (aj)
288- then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "player"), ScriptTransfer(ag, e, b)]
289- else {
290- let ak = invoke(Address(fromBase58String(a)), "registerTaskCallback", [((j + "_") + k), "tictactoe", "callback"], [AttachedPayment(b, 10000000)])
291-[StringEntry(("currentBoard_" + j), k), StringEntry(("initiator_" + j), toString(ag)), StringEntry(("next_player_" + j), d)]
292- }
271+ let aj = invoke(Address(fromBase58String(a)), "registerTaskCallback", [((j + "_") + k), "tictactoe", "callback"], [AttachedPayment(b, 10000000)])
272+[StringEntry(("currentBoard_" + j), k), StringEntry(("initiator_" + j), toString(af))]
293273 }
294274 }
295275 }
298278 }
299279
300280
301-@Verifier(al)
302-func am () = sigVerify(al.bodyBytes, al.proofs[0], al.senderPublicKey)
281+@Verifier(ak)
282+func al () = sigVerify(ak.bodyBytes, ak.proofs[0], ak.senderPublicKey)
303283
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV"
55
66 let b = base58'AxGKQRxKo4F2EbhrRq6N2tdLsxtMnpzQsS4QemV6V1W1'
77
88 let c = "1"
99
1010 let d = "2"
1111
1212 let e = 100000000
1313
1414 func f (g,h) = split(g, "")[h]
1515
1616
1717 func i (j,k) = {
1818 let l = {
1919 let m = getString(("currentBoard_" + j))
2020 if ($isInstanceOf(m, "String"))
2121 then {
2222 let n = m
2323 n
2424 }
2525 else "000000000"
2626 }
2727 let o = if ((f(k, 0) != f(l, 0)))
2828 then 1
2929 else 0
3030 let p = if ((f(k, 1) != f(l, 1)))
3131 then 1
3232 else 0
3333 let q = if ((f(k, 2) != f(l, 2)))
3434 then 1
3535 else 0
3636 let r = if ((f(k, 3) != f(l, 3)))
3737 then 1
3838 else 0
3939 let s = if ((f(k, 4) != f(l, 4)))
4040 then 1
4141 else 0
4242 let t = if ((f(k, 5) != f(l, 5)))
4343 then 1
4444 else 0
4545 let u = if ((f(k, 6) != f(l, 6)))
4646 then 1
4747 else 0
4848 let v = if ((f(k, 7) != f(l, 7)))
4949 then 1
5050 else 0
5151 let w = if ((f(k, 8) != f(l, 8)))
5252 then 1
5353 else 0
5454 let x = if (if ((f(k, 0) == f(l, 0)))
5555 then true
5656 else (f(k, 0) == "0"))
5757 then true
5858 else false
5959 let y = if (if ((f(k, 1) == f(l, 1)))
6060 then true
6161 else (f(k, 1) == "0"))
6262 then true
6363 else false
6464 let z = if (if ((f(k, 2) == f(l, 2)))
6565 then true
6666 else (f(k, 2) == "0"))
6767 then true
6868 else false
6969 let A = if (if ((f(k, 3) == f(l, 3)))
7070 then true
7171 else (f(k, 3) == "0"))
7272 then true
7373 else false
7474 let B = if (if ((f(k, 4) == f(l, 4)))
7575 then true
7676 else (f(k, 4) == "0"))
7777 then true
7878 else false
7979 let C = if (if ((f(k, 5) == f(l, 5)))
8080 then true
8181 else (f(k, 5) == "0"))
8282 then true
8383 else false
8484 let D = if (if ((f(k, 6) == f(l, 6)))
8585 then true
8686 else (f(k, 6) == "0"))
8787 then true
8888 else false
8989 let E = if (if ((f(k, 7) == f(l, 7)))
9090 then true
9191 else (f(k, 7) == "0"))
9292 then true
9393 else false
9494 let F = if (if ((f(k, 8) == f(l, 8)))
9595 then true
9696 else (f(k, 8) == "0"))
9797 then true
9898 else false
9999 let G = if (if (if (if (if (if (if (if (x)
100100 then y
101101 else false)
102102 then z
103103 else false)
104104 then A
105105 else false)
106106 then B
107107 else false)
108108 then C
109109 else false)
110110 then D
111111 else false)
112112 then E
113113 else false)
114114 then F
115115 else false
116116 let H = ((((((((o + p) + q) + r) + s) + t) + u) + v) + w)
117117 let I = (1 >= H)
118- if (G)
119- then I
120- else false
118+ if ((H > 1))
119+ then throw("More than move made!")
120+ else if (!(G))
121+ then throw("Former position overwritten!")
122+ else if (G)
123+ then I
124+ else false
121125 }
122126
123127
124128 func J (j,k,K) = {
125129 let l = {
126130 let m = getString(("currentBoard_" + j))
127131 if ($isInstanceOf(m, "String"))
128132 then {
129133 let n = m
130134 n
131135 }
132136 else "000000000"
133137 }
134138 let L = [[0, 1, 2], [3, 4, 5], [6, 7, 8], [0, 3, 6], [1, 4, 7], [2, 5, 8], [0, 4, 8], [2, 4, 6]]
135139 let M = if (if ((f(l, L[0][0]) == K))
136140 then (f(l, L[0][1]) == K)
137141 else false)
138142 then (f(l, L[0][2]) == K)
139143 else false
140144 let N = if (if ((f(l, L[1][0]) == K))
141145 then (f(l, L[1][1]) == K)
142146 else false)
143147 then (f(l, L[1][2]) == K)
144148 else false
145149 let O = if (if ((f(l, L[2][0]) == K))
146150 then (f(l, L[2][1]) == K)
147151 else false)
148152 then (f(l, L[2][2]) == K)
149153 else false
150154 let P = if (if ((f(l, L[3][0]) == K))
151155 then (f(l, L[3][1]) == K)
152156 else false)
153157 then (f(l, L[3][2]) == K)
154158 else false
155159 let Q = if (if ((f(l, L[4][0]) == K))
156160 then (f(l, L[4][1]) == K)
157161 else false)
158162 then (f(l, L[4][2]) == K)
159163 else false
160164 let R = if (if ((f(l, L[5][0]) == K))
161165 then (f(l, L[5][1]) == K)
162166 else false)
163167 then (f(l, L[5][2]) == K)
164168 else false
165169 let S = if (if ((f(l, L[6][0]) == K))
166170 then (f(l, L[6][1]) == K)
167171 else false)
168172 then (f(l, L[6][2]) == K)
169173 else false
170174 let T = if (if ((f(l, L[7][0]) == K))
171175 then (f(l, L[7][1]) == K)
172176 else false)
173177 then (f(l, L[7][2]) == K)
174178 else false
175179 if (if (if (if (if (if (if (M)
176180 then true
177181 else N)
178182 then true
179183 else O)
180184 then true
181185 else P)
182186 then true
183187 else N)
184188 then true
185189 else R)
186190 then true
187191 else S)
188192 then true
189193 else T
190194 }
191195
192196
193197 @Callable(h)
194198 func callback (U) = {
195199 let V = split(U, "_")
196200 let j = V[0]
197201 let k = V[1]
198- let W = {
199- let m = getString(("next_player_" + j))
200- if ($isInstanceOf(m, "String"))
201- then {
202- let n = m
203- n
204- }
205- else ""
206- }
207- let X = i(j, k)
208- if ((W != d))
209- then throw("Player has to move first")
210- else if (!(X))
211- then throw("Illegal move!")
212- else {
213- let Y = J(j, k, d)
214- if (Y)
215- then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "ai")]
216- else [StringEntry(("currentBoard_" + j), k), StringEntry(("next_player_" + j), c)]
217- }
202+ let W = i(j, k)
203+ if (!(W))
204+ then throw("Illegal move!")
205+ else {
206+ let X = J(j, k, d)
207+ if (X)
208+ then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "ai")]
209+ else [StringEntry(("currentBoard_" + j), k)]
210+ }
218211 }
219212
220213
221214
222215 @Callable(h)
223-func playTTT (Z,k) = {
224- let aa = size(h.payments)
225- if ((aa != 1))
216+func playTTT (Y,k) = {
217+ let Z = size(h.payments)
218+ if ((Z != 1))
226219 then throw("Payment necessary!")
227220 else {
228- let ab = h.payments[0]
229- let ac = ab.amount
230- let ad = ab.assetId
231- let ae = {
221+ let aa = h.payments[0]
222+ let ab = aa.amount
223+ let ac = aa.assetId
224+ let ad = {
232225 let m = getInteger(Address(fromBase58String(a)), "price_tictactoe")
233226 if ($isInstanceOf(m, "Int"))
234227 then {
235- let af = m
236- af
228+ let ae = m
229+ ae
237230 }
238231 else 0
239232 }
240- if (if ((ad != b))
233+ if (if ((ac != b))
241234 then true
242- else (ae > ac))
235+ else (ad > ab))
243236 then throw("Payment of the minimal BAI amount necessary!")
244237 else {
245- let ag = h.caller
246- let j = if ((size(Z) == 0))
238+ let af = h.caller
239+ let j = if ((size(Y) == 0))
247240 then toBase58String(h.transactionId)
248- else Z
249- let W = {
250- let m = getString(("next_player_" + j))
241+ else Y
242+ let l = {
243+ let m = getString(("currentBoard_" + j))
251244 if ($isInstanceOf(m, "String"))
252245 then {
253246 let n = m
254247 n
255248 }
256- else c
249+ else k
257250 }
258- if ((W != c))
259- then throw("AI has to move first!")
251+ let ag = {
252+ let m = getString(("initiator_" + j))
253+ if ($isInstanceOf(m, "String"))
254+ then {
255+ let n = m
256+ n
257+ }
258+ else af
259+ }
260+ if ((af != ag))
261+ then throw("Only initiator is allowed to make moves!")
260262 else {
261- let l = {
262- let m = getString(("currentBoard_" + j))
263- if ($isInstanceOf(m, "String"))
264- then {
265- let n = m
266- n
267- }
268- else k
269- }
270- let ah = {
271- let m = getString(("initiator_" + j))
272- if ($isInstanceOf(m, "String"))
273- then {
274- let n = m
275- n
276- }
277- else ag
278- }
279- if ((ag != ah))
280- then throw("Only initiator is allowed to make moves!")
263+ let ah = i(j, k)
264+ if (!(ah))
265+ then throw("Illegal move!")
281266 else {
282- let ai = i(j, k)
283- if (!(ai))
284- then throw("Illegal move!")
267+ let ai = J(j, k, c)
268+ if (ai)
269+ then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "player"), ScriptTransfer(af, e, b)]
285270 else {
286- let aj = J(j, k, c)
287- if (aj)
288- then [StringEntry(("currentBoard_" + j), k), StringEntry(("winner_" + j), "player"), ScriptTransfer(ag, e, b)]
289- else {
290- let ak = invoke(Address(fromBase58String(a)), "registerTaskCallback", [((j + "_") + k), "tictactoe", "callback"], [AttachedPayment(b, 10000000)])
291-[StringEntry(("currentBoard_" + j), k), StringEntry(("initiator_" + j), toString(ag)), StringEntry(("next_player_" + j), d)]
292- }
271+ let aj = invoke(Address(fromBase58String(a)), "registerTaskCallback", [((j + "_") + k), "tictactoe", "callback"], [AttachedPayment(b, 10000000)])
272+[StringEntry(("currentBoard_" + j), k), StringEntry(("initiator_" + j), toString(af))]
293273 }
294274 }
295275 }
296276 }
297277 }
298278 }
299279
300280
301-@Verifier(al)
302-func am () = sigVerify(al.bodyBytes, al.proofs[0], al.senderPublicKey)
281+@Verifier(ak)
282+func al () = sigVerify(ak.bodyBytes, ak.proofs[0], ak.senderPublicKey)
303283

github/deemru/w8io/169f3d6 
54.37 ms