tx · J8sHgZ4Aonex6kfgjhnRAsb3Zo7DmBZqvm9Jcor1W8zq

3Mth4mJpNbm6N6PQsgnP5KzcHBfC2Luiyfs:  -0.01400000 Waves

2019.07.31 19:56 [610538] smart account 3Mth4mJpNbm6N6PQsgnP5KzcHBfC2Luiyfs > SELF 0.00000000 Waves

{ "type": 13, "id": "J8sHgZ4Aonex6kfgjhnRAsb3Zo7DmBZqvm9Jcor1W8zq", "fee": 1400000, "feeAssetId": null, "timestamp": 1564592201494, "version": 1, "sender": "3Mth4mJpNbm6N6PQsgnP5KzcHBfC2Luiyfs", "senderPublicKey": "GL5QvqgydTUCg1sj1s7juR6hVfxLHjZ37Kr5sAX4D4an", "proofs": [ "2wPuK1LJobzCnv8ULvjCkGhG5drytVH2bP9ENYqxW9pNmUUHYF8qqmo5CGUvfHteeboBfRBuq8ngypHMiErUJbsq" ], "script": "base64:AAIDAAAAAAAAAAAAAAALAQAAAAlmaXZlQ2hhcnMAAAABAAAAAWMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAABYwUAAAABYwUAAAABYwUAAAABYwUAAAABYwEAAAAEY2VsbAAAAAMAAAAFY2VsbHMAAAADcm93AAAAA2NvbAkBAAAACXRha2VSaWdodAAAAAIJAAEvAAAAAgUAAAAFY2VsbHMJAABkAAAAAgkAAGQAAAACCQAAaAAAAAIFAAAAA3JvdwAAAAAAAAAADwUAAAADY29sAAAAAAAAAAABAAAAAAAAAAABAQAAAAdzZXRDZWxsAAAABAAAAAVjZWxscwAAAANyb3cAAAADY29sAAAAA3ZhbAkAASwAAAACCQABLAAAAAIJAAEvAAAAAgUAAAAFY2VsbHMJAABkAAAAAgkAAGgAAAACBQAAAANyb3cAAAAAAAAAAA8FAAAAA2NvbAUAAAADdmFsCQEAAAAJdGFrZVJpZ2h0AAAAAgUAAAAFY2VsbHMJAABlAAAAAgkAATEAAAABBQAAAAVjZWxscwkAAGQAAAACCQAAZAAAAAIJAABoAAAAAgUAAAADcm93AAAAAAAAAAAPBQAAAANjb2wAAAAAAAAAAAEBAAAABWNoZWNrAAAAAgAAAARsaW5lAAAAAWMDAwkBAAAAAiE9AAAAAgUAAAABYwIAAAABYgkBAAAAAiE9AAAAAgUAAAABYwIAAAABdwcJAAACAAAAAQIAAAAfaW52YWxpZCBjb2xvciBpbiBjaGVjayBmdW5jdGlvbgQAAAAHJG1hdGNoMAkABLMAAAACBQAAAARsaW5lCQEAAAAJZml2ZUNoYXJzAAAAAQUAAAABYwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BgcBAAAABmdldFJvdwAAAAMAAAAFY2VsbHMAAAADcm93AAAAA2NvbAMJAABnAAAAAgUAAAADY29sAAAAAAAAAAAECQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABlAAAAAgUAAAADY29sAAAAAAAAAAAECQABLAAAAAICAAAAAAMJAABnAAAAAgUAAAADY29sAAAAAAAAAAADCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABlAAAAAgUAAAADY29sAAAAAAAAAAADCQABLAAAAAICAAAAAAMJAABnAAAAAgUAAAADY29sAAAAAAAAAAACCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABlAAAAAgUAAAADY29sAAAAAAAAAAACCQABLAAAAAICAAAAAAMJAABnAAAAAgUAAAADY29sAAAAAAAAAAABCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABlAAAAAgUAAAADY29sAAAAAAAAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAACQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cFAAAAA2NvbAMJAABnAAAAAgAAAAAAAAAADQUAAAADY29sCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABkAAAAAgUAAAADY29sAAAAAAAAAAABCQABLAAAAAICAAAAAAMJAABnAAAAAgAAAAAAAAAADAUAAAADY29sCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABkAAAAAgUAAAADY29sAAAAAAAAAAACCQABLAAAAAICAAAAAAMJAABnAAAAAgAAAAAAAAAACwUAAAADY29sCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABkAAAAAgUAAAADY29sAAAAAAAAAAADCQABLAAAAAICAAAAAAMJAABnAAAAAgAAAAAAAAAACgUAAAADY29sCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzBQAAAANyb3cJAABkAAAAAgUAAAADY29sAAAAAAAAAAAEAgAAAAABAAAACWdldENvbHVtbgAAAAMAAAAFY2VsbHMAAAADcm93AAAAA2NvbAMJAABnAAAAAgUAAAADcm93AAAAAAAAAAAECQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzCQAAZQAAAAIFAAAAA3JvdwAAAAAAAAAABAUAAAADY29sCQABLAAAAAICAAAAAAMJAABnAAAAAgUAAAADcm93AAAAAAAAAAADCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzCQAAZQAAAAIFAAAAA3JvdwAAAAAAAAAAAwUAAAADY29sCQABLAAAAAICAAAAAAMJAABnAAAAAgUAAAADcm93AAAAAAAAAAACCQEAAAAE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AwAAAAVjZWxscwAAAANyb3cAAAADY29sAwMJAABnAAAAAgUAAAADcm93AAAAAAAAAAAECQAAZwAAAAIFAAAAA2NvbAAAAAAAAAAABAcJAQAAAARjZWxsAAAAAwUAAAAFY2VsbHMJAABlAAAAAgUAAAADcm93AAAAAAAAAAAECQAAZQAAAAIFAAAAA2NvbAAAAAAAAAAABAkAASwAAAACAgAAAAADAwkAAGcAAAACBQAAAANyb3cAAAAAAAAAAAMJAABnAAAAAgUAAAADY29sAAAAAAAAAAADBwkBAAAABGNlbGwAAAADBQAAAAVjZWxscwkAAGUAAAACBQAAAANyb3cAAAAAAAAAAAMJAABlAAAAAgUAAAADY29sAAAAAAAAAAADCQABLAAAAAICAAAAAAMDCQAAZwAAAAIFAAAAA3JvdwAAAAAAAAAAAgkAAGcAAAACBQAAAANjb2wAAAAAAAAAAAIHCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzCQAAZQAAAAIFAAAAA3JvdwAAAAAAAAAAAgkAAGUAAAACBQAAAANjb2wAAAAAAAAAAAIJAAEsAAAAAgIAAAAAAwMJAABnAAAAAgUAAAADcm93AAAAAAAAAAABCQAAZwAAAAIFAAAAA2NvbAAAAAAAAAAAAQcJAQAAAARjZWxsAAAAAwUAAAAFY2VsbHMJAABlAAAAAgUAAAADcm93AAAAAAAAAAABCQAAZQAAAAIFAAAAA2NvbAAAAAAAAAAAAQkAASwAAAACCQABLAAAAAICAAAAAAkBAAAABGNlbGwAAAADBQAAAAVjZWxscwUAAAADcm93BQAAAANjb2wDAwkAAGcAAAACAAAAAAAAAAANBQAAAANyb3cJAABnAAAAAgAAAAAAAAAADQUAAAADY29sBwkBAAAABGNlbGwAAAADBQAAAAVjZWxscwkAAGQAAAACBQAAAANyb3cAAAAAAAAAAAEJAABkAAAAAgUAAAADY29sAAAAAAAAAAABCQABLAAAAAICAAAAAAMDCQAAZwAAAAIAAAAAAAAAAAwFAAAAA3JvdwkAAGcAAAACAAAAAAAAAAAMBQAAAANjb2wHCQEAAAAEY2VsbAAAAAMFAAAABWNlbGxzCQAAZAAAAAIFAAAAA3JvdwAAAAAAAAAAAgkAAGQAAAACBQAAAANjb2wAAAAAAAAAAAIJAAEsAAAAAgIAAAAAAwMJAABnAAAAAgAAAAAAAAAACwUAAAADcm93CQAAZwAAAAIAAAAAAAAAAAsFAAAAA2NvbAcJAQAAAARjZWxsAAAAAwUAAAAFY2VsbHMJAABkAAAAAgUAAAADcm93AAAAAAAAAAADCQAAZAAAAAIFAAAAA2NvbAAAAAAAAAAAAwkAASwAAAACAgAAAAADAwkAAGcAAAACAAAAAAAAAAAKBQAAAANyb3cJAABnAAAAAgAAAAAAAAAACgUAAAADY29sBwkBAAAABGNlbGwAAAADBQAAAAVjZWxscwkAAGQAAAACBQAAAANyb3cAAAAAAAAAAAQJAABkAAAAAgUAAAADY29sAAAAAAAAAAAEAgAAAAABAAAACmNoZWNrRmllbGQAAAAEAAAABWNlbGxzAAAAAWMAAAADcm93AAAAA2NvbAQAAAALdGFyZ2V0TGluZXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAQAAAAZnZXRSb3cAAAADBQAAAAVjZWxscwUAAAADcm93BQAAAANjb2wCAAAAAXwJAQAAAAlnZXRDb2x1bW4AAAADBQAAAAVjZWxscwUAAAADcm93BQAAAANjb2wCAAAAAXwJAQAAAAhnZXRSRGlhZwAAAAMFAAAABWNlbGxzBQAAAANyb3cFAAAAA2NvbAIAAAABfAkBAAAACGdldExEaWFnAAAAAwUAAAAFY2VsbHMFAAAAA3JvdwUAAAADY29sCQEAAAAFY2hlY2sAAAACBQAAAAt0YXJnZXRMaW5lcwUAAAABYwEAAAALY2hlY2tGaWVsZEIAAAADAAAABWNlbGxzAAAAA3JvdwAAAANjb2wJAQAAAApjaGVja0ZpZWxkAAAABAUAAAAFY2VsbHMCAAAAAWIFAAAAA3JvdwUAAAADY29sAQAAAAtjaGVja0ZpZWxkVwAAAAMAAAAFY2VsbHMAAAADcm93AAAAA2NvbAkBAAAACmNoZWNrRmllbGQAAAAEBQAAAAVjZWxscwIAAAABdwUAAAADcm93BQAAAANjb2wAAAACAAAAAWkBAAAABHRlc3QAAAADAAAABGdhbWUAAAADcm93AAAAA2NvbAQAAAAFY2VsbHMJAQAAAAdleHRyYWN0AAAAAQkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZToJAAGkAAAAAQUAAAAEZ2FtZQIAAAAGX2NlbGxzCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABpQAAAAEJAQAAAAtjaGVja0ZpZWxkQgAAAAMFAAAABWNlbGxzBQAAAANyb3cFAAAAA2NvbAIAAAACLCAJAAGlAAAAAQkBAAAAC2NoZWNrRmllbGRXAAAAAwUAAAAFY2VsbHMFAAAAA3JvdwUAAAADY29sAAAAAWkBAAAAC3Rlc3RTZXRDZWxsAAAABAAAAARnYW1lAAAAA3JvdwAAAANjb2wAAAADdmFsBAAAAAVjZWxscwkBAAAAB2V4dHJhY3QAAAABCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACAgAAAAVnYW1lOgkAAaQAAAABBQAAAARnYW1lAgAAAAZfY2VsbHMEAAAACG5ld0NlbGxzCQEAAAAHc2V0Q2VsbAAAAAQFAAAABWNlbGxzBQAAAANyb3cFAAAAA2NvbAUAAAADdmFsCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFZ2FtZToJAAGkAAAAAQUAAAAEZ2FtZQIAAAAGX2NlbGxzBQAAAAhuZXdDZWxscwUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAYGBoJv", "chainId": 84, "height": 610538, "spentComplexity": 0 } View: original | compacted Prev: FNwy9JfPJ3PBDbvLbhjFTLNwL9HmVeBDSdKpq1YyVswv Next: 3UWa9jd2e3Jt4u4uyGo1tJZeWkNwn2Cm2TvkicZmACLu Diff:
OldNewDifferences
9595 else ""))))))))))))))
9696
9797
98-func getLDiag (cells,row,col) = {
99- let d = if (if ((row >= 4))
100- then (col >= 4)
98+func getLDiag (cells,row,col) = if (if ((row >= 4))
99+ then (col >= 4)
100+ else false)
101+ then cell(cells, (row - 4), (col - 4))
102+ else ("" + (if (if ((row >= 3))
103+ then (col >= 3)
101104 else false)
102- then cell(cells, (row - 4), (col - 4))
103- else ("" + (if (if ((row >= 3))
104- then (col >= 3)
105+ then cell(cells, (row - 3), (col - 3))
106+ else ("" + (if (if ((row >= 2))
107+ then (col >= 2)
105108 else false)
106- then cell(cells, (row - 3), (col - 3))
107- else ("" + (if (if ((row >= 2))
108- then (col >= 2)
109+ then cell(cells, (row - 2), (col - 2))
110+ else ("" + (if (if ((row >= 1))
111+ then (col >= 1)
109112 else false)
110- then cell(cells, (row - 2), (col - 2))
111- else ("" + (if (if ((row >= 1))
112- then (col >= 1)
113+ then cell(cells, (row - 1), (col - 1))
114+ else (("" + cell(cells, row, col)) + (if (if ((13 >= row))
115+ then (13 >= col)
113116 else false)
114- then cell(cells, (row - 1), (col - 1))
115- else (("" + cell(cells, row, col)) + (if (if ((13 >= row))
116- then (13 >= col)
117+ then cell(cells, (row + 1), (col + 1))
118+ else ("" + (if (if ((12 >= row))
119+ then (12 >= col)
117120 else false)
118- then cell(cells, (row + 1), (col + 1))
119- else ("" + (if (if ((12 >= row))
120- then (12 >= col)
121+ then cell(cells, (row + 2), (col + 2))
122+ else ("" + (if (if ((11 >= row))
123+ then (11 >= col)
121124 else false)
122- then cell(cells, (row + 2), (col + 2))
123- else ("" + (if (if ((11 >= row))
124- then (11 >= col)
125+ then cell(cells, (row + 3), (col + 3))
126+ else ("" + (if (if ((10 >= row))
127+ then (10 >= col)
125128 else false)
126- then cell(cells, (row + 3), (col + 3))
127- else ("" + (if (if ((10 >= row))
128- then (10 >= col)
129- else false)
130- then cell(cells, (row + 4), (col + 4))
131- else ""))))))))))))))
132- throw(d)
133- }
129+ then cell(cells, (row + 4), (col + 4))
130+ else ""))))))))))))))
134131
135132
136133 func checkField (cells,c,row,col) = {
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func fiveChars (c) = ((((c + c) + c) + c) + c)
55
66
77 func cell (cells,row,col) = takeRight(take(cells, (((row * 15) + col) + 1)), 1)
88
99
1010 func setCell (cells,row,col,val) = ((take(cells, ((row * 15) + col)) + val) + takeRight(cells, (size(cells) - (((row * 15) + col) + 1))))
1111
1212
1313 func check (line,c) = if (if ((c != "b"))
1414 then (c != "w")
1515 else false)
1616 then throw("invalid color in check function")
1717 else match indexOf(line, fiveChars(c)) {
1818 case _: Int =>
1919 true
2020 case _ =>
2121 false
2222 }
2323
2424
2525 func getRow (cells,row,col) = if ((col >= 4))
2626 then cell(cells, row, (col - 4))
2727 else ("" + (if ((col >= 3))
2828 then cell(cells, row, (col - 3))
2929 else ("" + (if ((col >= 2))
3030 then cell(cells, row, (col - 2))
3131 else ("" + (if ((col >= 1))
3232 then cell(cells, row, (col - 1))
3333 else (("" + cell(cells, row, col)) + (if ((13 >= col))
3434 then cell(cells, row, (col + 1))
3535 else ("" + (if ((12 >= col))
3636 then cell(cells, row, (col + 2))
3737 else ("" + (if ((11 >= col))
3838 then cell(cells, row, (col + 3))
3939 else ("" + (if ((10 >= col))
4040 then cell(cells, row, (col + 4))
4141 else ""))))))))))))))
4242
4343
4444 func getColumn (cells,row,col) = if ((row >= 4))
4545 then cell(cells, (row - 4), col)
4646 else ("" + (if ((row >= 3))
4747 then cell(cells, (row - 3), col)
4848 else ("" + (if ((row >= 2))
4949 then cell(cells, (row - 2), col)
5050 else ("" + (if ((row >= 1))
5151 then cell(cells, (row - 1), col)
5252 else (("" + cell(cells, row, col)) + (if ((13 >= row))
5353 then cell(cells, (row + 1), col)
5454 else ("" + (if ((12 >= row))
5555 then cell(cells, (row + 2), col)
5656 else ("" + (if ((11 >= row))
5757 then cell(cells, (row + 3), col)
5858 else ("" + (if ((10 >= row))
5959 then cell(cells, (row + 4), col)
6060 else ""))))))))))))))
6161
6262
6363 func getRDiag (cells,row,col) = if (if ((row >= 4))
6464 then (10 >= col)
6565 else false)
6666 then cell(cells, (row - 4), (col + 4))
6767 else ("" + (if (if ((row >= 3))
6868 then (11 >= col)
6969 else false)
7070 then cell(cells, (row - 3), (col + 3))
7171 else ("" + (if (if ((row >= 2))
7272 then (12 >= col)
7373 else false)
7474 then cell(cells, (row - 2), (col + 2))
7575 else ("" + (if (if ((row >= 1))
7676 then (13 >= col)
7777 else false)
7878 then cell(cells, (row - 1), (col + 1))
7979 else (("" + cell(cells, row, col)) + (if (if ((13 >= row))
8080 then (col >= 1)
8181 else false)
8282 then cell(cells, (row + 1), (col - 1))
8383 else ("" + (if (if ((12 >= row))
8484 then (col >= 2)
8585 else false)
8686 then cell(cells, (row + 2), (col - 2))
8787 else ("" + (if (if ((11 >= row))
8888 then (col >= 3)
8989 else false)
9090 then cell(cells, (row + 3), (col - 3))
9191 else ("" + (if (if ((10 >= row))
9292 then (col >= 4)
9393 else false)
9494 then cell(cells, (row + 4), (col - 4))
9595 else ""))))))))))))))
9696
9797
98-func getLDiag (cells,row,col) = {
99- let d = if (if ((row >= 4))
100- then (col >= 4)
98+func getLDiag (cells,row,col) = if (if ((row >= 4))
99+ then (col >= 4)
100+ else false)
101+ then cell(cells, (row - 4), (col - 4))
102+ else ("" + (if (if ((row >= 3))
103+ then (col >= 3)
101104 else false)
102- then cell(cells, (row - 4), (col - 4))
103- else ("" + (if (if ((row >= 3))
104- then (col >= 3)
105+ then cell(cells, (row - 3), (col - 3))
106+ else ("" + (if (if ((row >= 2))
107+ then (col >= 2)
105108 else false)
106- then cell(cells, (row - 3), (col - 3))
107- else ("" + (if (if ((row >= 2))
108- then (col >= 2)
109+ then cell(cells, (row - 2), (col - 2))
110+ else ("" + (if (if ((row >= 1))
111+ then (col >= 1)
109112 else false)
110- then cell(cells, (row - 2), (col - 2))
111- else ("" + (if (if ((row >= 1))
112- then (col >= 1)
113+ then cell(cells, (row - 1), (col - 1))
114+ else (("" + cell(cells, row, col)) + (if (if ((13 >= row))
115+ then (13 >= col)
113116 else false)
114- then cell(cells, (row - 1), (col - 1))
115- else (("" + cell(cells, row, col)) + (if (if ((13 >= row))
116- then (13 >= col)
117+ then cell(cells, (row + 1), (col + 1))
118+ else ("" + (if (if ((12 >= row))
119+ then (12 >= col)
117120 else false)
118- then cell(cells, (row + 1), (col + 1))
119- else ("" + (if (if ((12 >= row))
120- then (12 >= col)
121+ then cell(cells, (row + 2), (col + 2))
122+ else ("" + (if (if ((11 >= row))
123+ then (11 >= col)
121124 else false)
122- then cell(cells, (row + 2), (col + 2))
123- else ("" + (if (if ((11 >= row))
124- then (11 >= col)
125+ then cell(cells, (row + 3), (col + 3))
126+ else ("" + (if (if ((10 >= row))
127+ then (10 >= col)
125128 else false)
126- then cell(cells, (row + 3), (col + 3))
127- else ("" + (if (if ((10 >= row))
128- then (10 >= col)
129- else false)
130- then cell(cells, (row + 4), (col + 4))
131- else ""))))))))))))))
132- throw(d)
133- }
129+ then cell(cells, (row + 4), (col + 4))
130+ else ""))))))))))))))
134131
135132
136133 func checkField (cells,c,row,col) = {
137134 let targetLines = ((((((getRow(cells, row, col) + "|") + getColumn(cells, row, col)) + "|") + getRDiag(cells, row, col)) + "|") + getLDiag(cells, row, col))
138135 check(targetLines, c)
139136 }
140137
141138
142139 func checkFieldB (cells,row,col) = checkField(cells, "b", row, col)
143140
144141
145142 func checkFieldW (cells,row,col) = checkField(cells, "w", row, col)
146143
147144
148145 @Callable(i)
149146 func test (game,row,col) = {
150147 let cells = extract(getString(this, (("game:" + toString(game)) + "_cells")))
151148 throw(((toString(checkFieldB(cells, row, col)) + ", ") + toString(checkFieldW(cells, row, col))))
152149 }
153150
154151
155152
156153 @Callable(i)
157154 func testSetCell (game,row,col,val) = {
158155 let cells = extract(getString(this, (("game:" + toString(game)) + "_cells")))
159156 let newCells = setCell(cells, row, col, val)
160157 WriteSet([DataEntry((("game:" + toString(game)) + "_cells"), newCells)])
161158 }
162159
163160
164161 @Verifier(tx)
165162 func verify () = true
166163

github/deemru/w8io/026f985 
38.40 ms