tx · 63b8Fc3aNNDxvaPTY4FtDMpRAJHiuKqHjkNN3y4qUHe2

3Mr7HCJPTazuYjJbfbbpRMvZX8xrNTjT1Kx:  -0.01000000 Waves

2023.02.17 09:11 [2453243] smart account 3Mr7HCJPTazuYjJbfbbpRMvZX8xrNTjT1Kx > SELF 0.00000000 Waves

{ "type": 13, "id": "63b8Fc3aNNDxvaPTY4FtDMpRAJHiuKqHjkNN3y4qUHe2", "fee": 1000000, "feeAssetId": null, "timestamp": 1676614381490, "version": 2, "chainId": 84, "sender": "3Mr7HCJPTazuYjJbfbbpRMvZX8xrNTjT1Kx", "senderPublicKey": "D35PGQCSSdrp9pvujggj7b2DaCK1BhcU3kho7tikKJYs", "proofs": [ "2Tv5ccMLBfWA3t799sq3i98KvPH1NhFybUosRXr3ZegpFuF8y4SrcyqkcFXAzAafQQnhCtUm8ynyFN1Hb636m715" ], "script": "base64:BgIaCAISABIDCgEBEgQKAhgREgQKAggBEgMKAQgABQFpAQdkZXBvc2l0AAQDcG10CQCRAwIJAQV2YWx1ZQEIBQFpCHBheW1lbnRzAAADCQEJaXNEZWZpbmVkAQgFA3BtdAdhc3NldElkCQACAQIhY2FuIGhvZGwgd2F2ZXMgb25seSBhdCB0aGUgbW9tZW50BApjdXJyZW50S2V5CQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMEDWN1cnJlbnRBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwUKY3VycmVudEtleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQJbmV3QW1vdW50CQBkAgUNY3VycmVudEFtb3VudAgFA3BtdAZhbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIFCmN1cnJlbnRLZXkFCW5ld0Ftb3VudAUDbmlsAWkBCHdpdGhkcmF3AQZhbW91bnQECmN1cnJlbnRLZXkJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQNY3VycmVudEFtb3VudAQHJG1hdGNoMAkAmggCBQR0aGlzBQpjdXJyZW50S2V5AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAluZXdBbW91bnQJAGUCBQ1jdXJyZW50QW1vdW50BQZhbW91bnQDCQBmAgAABQZhbW91bnQJAAIBAh5DYW4ndCB3aXRoZHJhdyBuZWdhdGl2ZSBhbW91bnQDCQBmAgAABQluZXdBbW91bnQJAAIBAhJOb3QgZW5vdWdoIGJhbGFuY2UJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUKY3VycmVudEtleQUJbmV3QW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQR1bml0BQNuaWwFBHVuaXQBaQEKc2V0T3B0aW9ucwIEb3B0cwR2YWxzBAhvcHRfc2l6ZQkAkAMBBQRvcHRzAwkAZwIAZAUIb3B0X3NpemUEDG9wdGlvbnNfYWRkcgkBB0FkZHJlc3MBARoBVEFb+Cv2F+oqocvEivH7x7uyIGEx/ocgwQQJYWRtaW5MaXN0BAckbWF0Y2gwCQCdCAIFDG9wdGlvbnNfYWRkcgIKYWRtaW5fbGlzdAMJAAECBQckbWF0Y2gwAgRVbml0AgV1bnNldAMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXgFByRtYXRjaDAFAXgJAAIBAgtNYXRjaCBlcnJvcgoBDmFkZFN0cmluZ0VudHJ5AgVhY2N1bQluZXh0VmFsdWUECyR0MDI0NzMyNDk2BQVhY2N1bQQGcmVzdWx0CAULJHQwMjQ3MzI0OTYCXzEEAWoIBQskdDAyNDczMjQ5NgJfMgkAlAoCCQDNCAIFBnJlc3VsdAkBDEludGVnZXJFbnRyeQIJAJEDAgUEb3B0cwUBagUJbmV4dFZhbHVlCQBkAgUBagABBAFyCgACJGwFBHZhbHMKAAIkcwkAkAMBBQIkbAoABSRhY2MwCQCUCgIFA25pbAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQ5hZGRTdHJpbmdFbnRyeQIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIVTGlzdCBzaXplIGV4Y2VlZHMgMTAwCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEAYgBjAGQEEGNhbGxlckFkZHJlc3NTdHIJAKUIAQgFAWkGY2FsbGVyAwkBAiE9AgUJYWRtaW5MaXN0AgV1bnNldAQEdGVzdAkAnQgCCQERQGV4dHJOYXRpdmUoMTA2MikBBQlhZG1pbkxpc3QFEGNhbGxlckFkZHJlc3NTdHIEB2lzQWRtaW4EByRtYXRjaDAFBHRlc3QDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAF4BQckbWF0Y2gwBQF4AwkAAQIFByRtYXRjaDACBFVuaXQCCG5vIGFkbWluCQACAQILTWF0Y2ggZXJyb3IKAQdhZGRfZWxtAQdvcHRpb25zBANvcHQJALUJAgUHb3B0aW9ucwIBfAkBC1N0cmluZ0VudHJ5AgkAkQMCBQNvcHQAAAkAkQMCBQNvcHQAAQMJAQIhPQIFB2lzQWRtaW4CCG5vIGFkbWluBQFyCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIPWW91IG5vdCBhZG1pbjogBQlhZG1pbkxpc3QCCywgaXNBZG1pbjogBQdpc0FkbWluAhQsIGNhbGxlckFkZHJlc3NTdHI6IAUQY2FsbGVyQWRkcmVzc1N0cgICLCAJAAIBAhBVbnNldCBhZG1pbiBsaXN0CQACAQIvVGhlIG51bWJlciBvZiBsaXN0IGVsZW1lbnRzIG11c3Qgbm90IGV4Y2VlZCAxMDABaQEJc2V0T3B0aW9uAgh2YXJpYWJsZQV2YWx1ZQQMb3B0aW9uc19hZGRyCQEHQWRkcmVzcwEBGgFUQVv4K/YX6iqhy8SK8fvHu7IgYTH+hyDBBAlhZG1pbkxpc3QEByRtYXRjaDAJAJ0IAgUMb3B0aW9uc19hZGRyAgphZG1pbl9saXN0AwkAAQIFByRtYXRjaDACBFVuaXQCBXVuc2V0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAkAAgECC01hdGNoIGVycm9yBBBjYWxsZXJBZGRyZXNzU3RyCQClCAEIBQFpBmNhbGxlcgMJAQIhPQIFCWFkbWluTGlzdAIFdW5zZXQEBHRlc3QJAJ0IAgkBEUBleHRyTmF0aXZlKDEwNjIpAQUJYWRtaW5MaXN0BRBjYWxsZXJBZGRyZXNzU3RyBAdpc0FkbWluBAckbWF0Y2gwBQR0ZXN0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAMJAAECBQckbWF0Y2gwAgRVbml0AghubyBhZG1pbgkAAgECC01hdGNoIGVycm9yAwkBAiE9AgUHaXNBZG1pbgIIbm8gYWRtaW4JAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUIdmFyaWFibGUFBXZhbHVlBQNuaWwFBHVuaXQJAAIBCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAg9Zb3Ugbm90IGFkbWluOiAFCWFkbWluTGlzdAILLCBpc0FkbWluOiAFB2lzQWRtaW4CFCwgY2FsbGVyQWRkcmVzc1N0cjogBRBjYWxsZXJBZGRyZXNzU3RyAgIsIAkAAgECEFVuc2V0IGFkbWluIGxpc3QBaQEJZGVsT3B0aW9uAQh2YXJpYWJsZQQMb3B0aW9uc19hZGRyCQEHQWRkcmVzcwEBGgFUQVv4K/YX6iqhy8SK8fvHu7IgYTH+hyDBBAlhZG1pbkxpc3QEByRtYXRjaDAJAJ0IAgUMb3B0aW9uc19hZGRyAgphZG1pbl9saXN0AwkAAQIFByRtYXRjaDACBFVuaXQCBXVuc2V0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAkAAgECC01hdGNoIGVycm9yBBBjYWxsZXJBZGRyZXNzU3RyCQClCAEIBQFpBmNhbGxlcgMJAQIhPQIFCWFkbWluTGlzdAIFdW5zZXQEBHRlc3QJAJ0IAgkBEUBleHRyTmF0aXZlKDEwNjIpAQUJYWRtaW5MaXN0BRBjYWxsZXJBZGRyZXNzU3RyBAdpc0FkbWluBAckbWF0Y2gwBQR0ZXN0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAMJAAECBQckbWF0Y2gwAgRVbml0AghubyBhZG1pbgkAAgECC01hdGNoIGVycm9yAwkBAiE9AgUHaXNBZG1pbgIIbm8gYWRtaW4JAJQKAgkAzAgCCQELRGVsZXRlRW50cnkBBQh2YXJpYWJsZQUDbmlsBQR1bml0CQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIPWW91IG5vdCBhZG1pbjogBQlhZG1pbkxpc3QCCywgaXNBZG1pbjogBQdpc0FkbWluAhQsIGNhbGxlckFkZHJlc3NTdHI6IAUQY2FsbGVyQWRkcmVzc1N0cgICLCAJAAIBAhBVbnNldCBhZG1pbiBsaXN0AQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tledJrvC0=", "height": 2453243, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: cqDfo7mXH6b1QfZ3KKbApmVD5yCs1gLpRYxAceQPgE7 Next: F4LhcqZYvbaG74MnUZNpdS4iM6rMcfBaF5c3ZLTdKpyM Diff:
OldNewDifferences
157157
158158 @Callable(a)
159159 func delOption (I) = {
160+ let l = Address(base58'3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6')
160161 let m = {
161- let e = getString(this, "admin_list")
162+ let e = getString(l, "admin_list")
162163 if ($isInstanceOf(e, "Unit"))
163164 then "unset"
164165 else if ($isInstanceOf(e, "String"))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
77 func deposit () = {
88 let b = value(a.payments)[0]
99 if (isDefined(b.assetId))
1010 then throw("can hodl waves only at the moment")
1111 else {
1212 let c = toBase58String(a.caller.bytes)
1313 let d = {
1414 let e = getInteger(this, c)
1515 if ($isInstanceOf(e, "Int"))
1616 then {
1717 let f = e
1818 f
1919 }
2020 else 0
2121 }
2222 let g = (d + b.amount)
2323 [IntegerEntry(c, g)]
2424 }
2525 }
2626
2727
2828
2929 @Callable(a)
3030 func withdraw (h) = {
3131 let c = toBase58String(a.caller.bytes)
3232 let d = {
3333 let e = getInteger(this, c)
3434 if ($isInstanceOf(e, "Int"))
3535 then {
3636 let f = e
3737 f
3838 }
3939 else 0
4040 }
4141 let g = (d - h)
4242 if ((0 > h))
4343 then throw("Can't withdraw negative amount")
4444 else if ((0 > g))
4545 then throw("Not enough balance")
4646 else $Tuple2([IntegerEntry(c, g), ScriptTransfer(a.caller, h, unit)], unit)
4747 }
4848
4949
5050
5151 @Callable(a)
5252 func setOptions (i,j) = {
5353 let k = size(i)
5454 if ((100 >= k))
5555 then {
5656 let l = Address(base58'3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6')
5757 let m = {
5858 let e = getString(l, "admin_list")
5959 if ($isInstanceOf(e, "Unit"))
6060 then "unset"
6161 else if ($isInstanceOf(e, "String"))
6262 then {
6363 let n = e
6464 n
6565 }
6666 else throw("Match error")
6767 }
6868 func o (p,q) = {
6969 let r = p
7070 let s = r._1
7171 let t = r._2
7272 $Tuple2((s :+ IntegerEntry(i[t], q)), (t + 1))
7373 }
7474
7575 let u = {
7676 let v = j
7777 let w = size(v)
7878 let x = $Tuple2(nil, 0)
7979 func y (z,A) = if ((A >= w))
8080 then z
8181 else o(z, v[A])
8282
8383 func B (z,A) = if ((A >= w))
8484 then z
8585 else throw("List size exceeds 100")
8686
8787 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
8888 }
8989 let C = toString(a.caller)
9090 if ((m != "unset"))
9191 then {
9292 let D = getString(addressFromStringValue(m), C)
9393 let E = {
9494 let e = D
9595 if ($isInstanceOf(e, "String"))
9696 then {
9797 let n = e
9898 n
9999 }
100100 else if ($isInstanceOf(e, "Unit"))
101101 then "no admin"
102102 else throw("Match error")
103103 }
104104 func F (G) = {
105105 let H = split(G, "|")
106106 StringEntry(H[0], H[1])
107107 }
108108
109109 if ((E != "no admin"))
110110 then u
111111 else throw((((((("You not admin: " + m) + ", isAdmin: ") + E) + ", callerAddressStr: ") + C) + ", "))
112112 }
113113 else throw("Unset admin list")
114114 }
115115 else throw("The number of list elements must not exceed 100")
116116 }
117117
118118
119119
120120 @Callable(a)
121121 func setOption (I,J) = {
122122 let l = Address(base58'3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6')
123123 let m = {
124124 let e = getString(l, "admin_list")
125125 if ($isInstanceOf(e, "Unit"))
126126 then "unset"
127127 else if ($isInstanceOf(e, "String"))
128128 then {
129129 let n = e
130130 n
131131 }
132132 else throw("Match error")
133133 }
134134 let C = toString(a.caller)
135135 if ((m != "unset"))
136136 then {
137137 let D = getString(addressFromStringValue(m), C)
138138 let E = {
139139 let e = D
140140 if ($isInstanceOf(e, "String"))
141141 then {
142142 let n = e
143143 n
144144 }
145145 else if ($isInstanceOf(e, "Unit"))
146146 then "no admin"
147147 else throw("Match error")
148148 }
149149 if ((E != "no admin"))
150150 then $Tuple2([IntegerEntry(I, J)], unit)
151151 else throw((((((("You not admin: " + m) + ", isAdmin: ") + E) + ", callerAddressStr: ") + C) + ", "))
152152 }
153153 else throw("Unset admin list")
154154 }
155155
156156
157157
158158 @Callable(a)
159159 func delOption (I) = {
160+ let l = Address(base58'3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6')
160161 let m = {
161- let e = getString(this, "admin_list")
162+ let e = getString(l, "admin_list")
162163 if ($isInstanceOf(e, "Unit"))
163164 then "unset"
164165 else if ($isInstanceOf(e, "String"))
165166 then {
166167 let n = e
167168 n
168169 }
169170 else throw("Match error")
170171 }
171172 let C = toString(a.caller)
172173 if ((m != "unset"))
173174 then {
174175 let D = getString(addressFromStringValue(m), C)
175176 let E = {
176177 let e = D
177178 if ($isInstanceOf(e, "String"))
178179 then {
179180 let n = e
180181 n
181182 }
182183 else if ($isInstanceOf(e, "Unit"))
183184 then "no admin"
184185 else throw("Match error")
185186 }
186187 if ((E != "no admin"))
187188 then $Tuple2([DeleteEntry(I)], unit)
188189 else throw((((((("You not admin: " + m) + ", isAdmin: ") + E) + ", callerAddressStr: ") + C) + ", "))
189190 }
190191 else throw("Unset admin list")
191192 }
192193
193194
194195 @Verifier(K)
195196 func L () = sigVerify(K.bodyBytes, K.proofs[0], K.senderPublicKey)
196197

github/deemru/w8io/3da68e3 
84.44 ms