tx · 9C1EmqdgC2hxdpLqhEChhjySRCMLUyNeRuSjxmxRj9yU

3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6:  -0.01000000 Waves

2023.02.02 23:04 [2432448] smart account 3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6 > SELF 0.00000000 Waves

{ "type": 13, "id": "9C1EmqdgC2hxdpLqhEChhjySRCMLUyNeRuSjxmxRj9yU", "fee": 1000000, "feeAssetId": null, "timestamp": 1675368288275, "version": 2, "chainId": 84, "sender": "3MusfsY6PqDh1YnF7YyTi5ffVT16Dm2bqf6", "senderPublicKey": "GmYZFRssDr88KiZt3x4LsJ6qfqaTfMUycQTKZVdipUgS", "proofs": [ "24zWgV72YWm4v3uYf3jmhN4YWMsyrPKi6UceusNdHeY4BbcxfEaRuq373baJ7SkEq4ELNYmL1PAsqU6bCfwiXpJG" ], "script": "base64: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ByRtYXRjaDAFBHRlc3QDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAF4BQckbWF0Y2gwBQF4AwkAAQIFByRtYXRjaDACBFVuaXQCCG5vIGFkbWluCQACAQILTWF0Y2ggZXJyb3IKAQdhZGRfZWxtAQdvcHRpb25zBANvcHQJALUJAgUHb3B0aW9ucwIBfAkBC1N0cmluZ0VudHJ5AgkAkQMCBQNvcHQAAAkAkQMCBQNvcHQAAQMJAQIhPQIFB2lzQWRtaW4CCG5vIGFkbWluBQFyCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIPWW91IG5vdCBhZG1pbjogBQlhZG1pbkxpc3QCCywgaXNBZG1pbjogBQdpc0FkbWluAhQsIGNhbGxlckFkZHJlc3NTdHI6IAUQY2FsbGVyQWRkcmVzc1N0cgICLCAJAAIBAhBVbnNldCBhZG1pbiBsaXN0CQACAQIvVGhlIG51bWJlciBvZiBsaXN0IGVsZW1lbnRzIG11c3Qgbm90IGV4Y2VlZCAxMDABaQEJc2V0T3B0aW9uAgh2YXJpYWJsZQV2YWx1ZQQJYWRtaW5MaXN0BAckbWF0Y2gwCQCdCAIFBHRoaXMCCmFkbWluX2xpc3QDCQABAgUHJG1hdGNoMAIEVW5pdAIFdW5zZXQDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAF4BQckbWF0Y2gwBQF4CQACAQILTWF0Y2ggZXJyb3IEEGNhbGxlckFkZHJlc3NTdHIJAKUIAQgFAWkGY2FsbGVyAwkBAiE9AgUJYWRtaW5MaXN0AgV1bnNldAQEdGVzdAkAnQgCCQERQGV4dHJOYXRpdmUoMTA2MikBBQlhZG1pbkxpc3QFEGNhbGxlckFkZHJlc3NTdHIEB2lzQWRtaW4EByRtYXRjaDAFBHRlc3QDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAF4BQckbWF0Y2gwBQF4AwkAAQIFByRtYXRjaDACBFVuaXQCCG5vIGFkbWluCQACAQILTWF0Y2ggZXJyb3IDCQECIT0CBQdpc0FkbWluAghubyBhZG1pbgkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFCHZhcmlhYmxlBQV2YWx1ZQUDbmlsBQR1bml0CQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIPWW91IG5vdCBhZG1pbjogBQlhZG1pbkxpc3QCCywgaXNBZG1pbjogBQdpc0FkbWluAhQsIGNhbGxlckFkZHJlc3NTdHI6IAUQY2FsbGVyQWRkcmVzc1N0cgICLCAJAAIBAhBVbnNldCBhZG1pbiBsaXN0AWkBCWRlbE9wdGlvbgEIdmFyaWFibGUECWFkbWluTGlzdAQHJG1hdGNoMAkAnQgCBQR0aGlzAgphZG1pbl9saXN0AwkAAQIFByRtYXRjaDACBFVuaXQCBXVuc2V0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAkAAgECC01hdGNoIGVycm9yBBBjYWxsZXJBZGRyZXNzU3RyCQClCAEIBQFpBmNhbGxlcgMJAQIhPQIFCWFkbWluTGlzdAIFdW5zZXQEBHRlc3QJAJ0IAgkBEUBleHRyTmF0aXZlKDEwNjIpAQUJYWRtaW5MaXN0BRBjYWxsZXJBZGRyZXNzU3RyBAdpc0FkbWluBAckbWF0Y2gwBQR0ZXN0AwkAAQIFByRtYXRjaDACBlN0cmluZwQBeAUHJG1hdGNoMAUBeAMJAAECBQckbWF0Y2gwAgRVbml0AghubyBhZG1pbgkAAgECC01hdGNoIGVycm9yAwkBAiE9AgUHaXNBZG1pbgIIbm8gYWRtaW4JAJQKAgkAzAgCCQELRGVsZXRlRW50cnkBBQh2YXJpYWJsZQUDbmlsBQR1bml0CQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgIPWW91IG5vdCBhZG1pbjogBQlhZG1pbkxpc3QCCywgaXNBZG1pbjogBQdpc0FkbWluAhQsIGNhbGxlckFkZHJlc3NTdHI6IAUQY2FsbGVyQWRkcmVzc1N0cgICLCAJAAIBAhBVbnNldCBhZG1pbiBsaXN0AWkBC3JlZ1Byb3ZpZGVyAwRuYW1lA2lubgRvZ3JuBA1pc0tub3duQ2FsbGVyBAckbWF0Y2gwCQCdCAIFBHRoaXMJANgEAQgIBQFpBmNhbGxlcgVieXRlcwMJAAECBQckbWF0Y2gwAgZTdHJpbmcEBGhpc3QFByRtYXRjaDAFBGhpc3QCBXVuc2V0BAR0VVNEASCrJEpqtkJG69L843mwYbrDrmlXTVJ6ykUcp0AdEbApDgMJAQIhPQIFDWlzS25vd25DYWxsZXICBXVuc2V0CQCUCgIJAMwIAgkBC1N0cmluZ0VudHJ5AgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzCQCsAgIJAKwCAgkArAICCQCsAgIFBG5hbWUCAXwFA2lubgIBfAUEb2dybgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAwIQ9BQR1bml0CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgDAhD0FBHRVU0QFA25pbAUEdW5pdAkAAgECFUNhbiBiZSB1c2VkIG9ubHkgb25jZQECdHgBBnZlcmlmeQAEByRtYXRjaDAFAnR4CQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5QGZgNA==", "height": 2432448, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AYCfzvxLSv2wQF3GLr19GoMEScDigfMsL42Te5gnnzHQ Next: AzQ2XWazb7c7ks8zGFpFSVjku2BZkPQbhJmUDttTqyDo Diff:
OldNewDifferences
109109
110110
111111 @Callable(a)
112+func delOption (B) = {
113+ let e = {
114+ let f = getString(this, "admin_list")
115+ if ($isInstanceOf(f, "Unit"))
116+ then "unset"
117+ else if ($isInstanceOf(f, "String"))
118+ then {
119+ let g = f
120+ g
121+ }
122+ else throw("Match error")
123+ }
124+ let v = toString(a.caller)
125+ if ((e != "unset"))
126+ then {
127+ let w = getString(addressFromStringValue(e), v)
128+ let x = {
129+ let f = w
130+ if ($isInstanceOf(f, "String"))
131+ then {
132+ let g = f
133+ g
134+ }
135+ else if ($isInstanceOf(f, "Unit"))
136+ then "no admin"
137+ else throw("Match error")
138+ }
139+ if ((x != "no admin"))
140+ then $Tuple2([DeleteEntry(B)], unit)
141+ else throw((((((("You not admin: " + e) + ", isAdmin: ") + x) + ", callerAddressStr: ") + v) + ", "))
142+ }
143+ else throw("Unset admin list")
144+ }
145+
146+
147+
148+@Callable(a)
112149 func regProvider (D,E,F) = {
113150 let G = {
114151 let f = getString(this, toBase58String(a.caller.bytes))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
77 func setOptions (b,c) = {
88 let d = size(b)
99 if ((100 >= d))
1010 then {
1111 let e = {
1212 let f = getString(this, "admin_list")
1313 if ($isInstanceOf(f, "Unit"))
1414 then "unset"
1515 else if ($isInstanceOf(f, "String"))
1616 then {
1717 let g = f
1818 g
1919 }
2020 else throw("Match error")
2121 }
2222 func h (i,j) = {
2323 let k = i
2424 let l = k._1
2525 let m = k._2
2626 $Tuple2((l :+ StringEntry(b[m], j)), (m + 1))
2727 }
2828
2929 let n = {
3030 let o = c
3131 let p = size(o)
3232 let q = $Tuple2(nil, 0)
3333 func r (s,t) = if ((t >= p))
3434 then s
3535 else h(s, o[t])
3636
3737 func u (s,t) = if ((t >= p))
3838 then s
3939 else throw("List size exceeds 100")
4040
4141 u(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(r(q, 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)
4242 }
4343 let v = toString(a.caller)
4444 if ((e != "unset"))
4545 then {
4646 let w = getString(addressFromStringValue(e), v)
4747 let x = {
4848 let f = w
4949 if ($isInstanceOf(f, "String"))
5050 then {
5151 let g = f
5252 g
5353 }
5454 else if ($isInstanceOf(f, "Unit"))
5555 then "no admin"
5656 else throw("Match error")
5757 }
5858 func y (z) = {
5959 let A = split(z, "|")
6060 StringEntry(A[0], A[1])
6161 }
6262
6363 if ((x != "no admin"))
6464 then n
6565 else throw((((((("You not admin: " + e) + ", isAdmin: ") + x) + ", callerAddressStr: ") + v) + ", "))
6666 }
6767 else throw("Unset admin list")
6868 }
6969 else throw("The number of list elements must not exceed 100")
7070 }
7171
7272
7373
7474 @Callable(a)
7575 func setOption (B,C) = {
7676 let e = {
7777 let f = getString(this, "admin_list")
7878 if ($isInstanceOf(f, "Unit"))
7979 then "unset"
8080 else if ($isInstanceOf(f, "String"))
8181 then {
8282 let g = f
8383 g
8484 }
8585 else throw("Match error")
8686 }
8787 let v = toString(a.caller)
8888 if ((e != "unset"))
8989 then {
9090 let w = getString(addressFromStringValue(e), v)
9191 let x = {
9292 let f = w
9393 if ($isInstanceOf(f, "String"))
9494 then {
9595 let g = f
9696 g
9797 }
9898 else if ($isInstanceOf(f, "Unit"))
9999 then "no admin"
100100 else throw("Match error")
101101 }
102102 if ((x != "no admin"))
103103 then $Tuple2([StringEntry(B, C)], unit)
104104 else throw((((((("You not admin: " + e) + ", isAdmin: ") + x) + ", callerAddressStr: ") + v) + ", "))
105105 }
106106 else throw("Unset admin list")
107107 }
108108
109109
110110
111111 @Callable(a)
112+func delOption (B) = {
113+ let e = {
114+ let f = getString(this, "admin_list")
115+ if ($isInstanceOf(f, "Unit"))
116+ then "unset"
117+ else if ($isInstanceOf(f, "String"))
118+ then {
119+ let g = f
120+ g
121+ }
122+ else throw("Match error")
123+ }
124+ let v = toString(a.caller)
125+ if ((e != "unset"))
126+ then {
127+ let w = getString(addressFromStringValue(e), v)
128+ let x = {
129+ let f = w
130+ if ($isInstanceOf(f, "String"))
131+ then {
132+ let g = f
133+ g
134+ }
135+ else if ($isInstanceOf(f, "Unit"))
136+ then "no admin"
137+ else throw("Match error")
138+ }
139+ if ((x != "no admin"))
140+ then $Tuple2([DeleteEntry(B)], unit)
141+ else throw((((((("You not admin: " + e) + ", isAdmin: ") + x) + ", callerAddressStr: ") + v) + ", "))
142+ }
143+ else throw("Unset admin list")
144+ }
145+
146+
147+
148+@Callable(a)
112149 func regProvider (D,E,F) = {
113150 let G = {
114151 let f = getString(this, toBase58String(a.caller.bytes))
115152 if ($isInstanceOf(f, "String"))
116153 then {
117154 let H = f
118155 H
119156 }
120157 else "unset"
121158 }
122159 let I = base58'CX4p6XcuSBUvv44r1avCqYka5PYAVzBK5hSXaT7maU85'
123160 if ((G != "unset"))
124161 then $Tuple2([StringEntry(toBase58String(a.caller.bytes), ((((D + "|") + E) + "|") + F)), ScriptTransfer(a.caller, 1000000, unit), ScriptTransfer(a.caller, 1000000, I)], unit)
125162 else throw("Can be used only once")
126163 }
127164
128165
129166 @Verifier(J)
130167 func K () = {
131168 let f = J
132169 sigVerify(J.bodyBytes, J.proofs[0], J.senderPublicKey)
133170 }
134171

github/deemru/w8io/169f3d6 
42.37 ms