tx · F3pPfnFbEWxMzYX39GsCYZehHA6Nm2Yzac68kBzX6K4L

3PGyATMeRWox58ZsAX8EF4JoEDCLzsHifmp:  -0.01000000 Waves

2023.09.20 22:08 [3829901] smart account 3PGyATMeRWox58ZsAX8EF4JoEDCLzsHifmp > SELF 0.00000000 Waves

{ "type": 13, "id": "F3pPfnFbEWxMzYX39GsCYZehHA6Nm2Yzac68kBzX6K4L", "fee": 1000000, "feeAssetId": null, "timestamp": 1695236938396, "version": 2, "chainId": 87, "sender": "3PGyATMeRWox58ZsAX8EF4JoEDCLzsHifmp", "senderPublicKey": "88LEuLyG6WWqn6CxRefbwUwcgbV8M9qBKqbxRokVuGMj", "proofs": [ "43uER3nqhWBBG4ypZb4CdZxPJcBies8dJcgoMz2JTQTVHA8R8Nf1G8wsf9xohduWbjTa44jxV1Kqk3Ngj2d6fSxG" ], "script": "base64:BgIVCAISABIDCgEBEgQKAgICEgQKAgEEEgADU0VQAgJfXwAPcmVwdXRhdGlvbkFzc2V0ASBSDUX5Hu+dDoJ9IoSDMka9tZ0K6G9XzGwdBcTtE/lf9AAMcHJvcG9zYWxUaW1lCQBoAgkAaAIJAGgCCQBoAgDoBwA8ADwAGAADARFjb3VudFByb3Bvc2Fsc0tleQACAmNwAQtwcm9wb3NhbEtleQEKcHJvcG9zYWxJZAkAuQkCCQDMCAICAXAJAMwIAgkApAMBBQpwcm9wb3NhbElkBQNuaWwFA1NFUAEdZ3JlYXRlc3RVc2VyVm90ZVVzZXJUaW1lc3RhbXABBHVzZXIJALkJAgkAzAgCAgJ1dAkAzAgCCQDYBAEIBQR1c2VyBWJ5dGVzBQNuaWwFA1NFUAEQdXNlckRlcG9zaXRlZEtleQEEdXNlcgkAuQkCCQDMCAICAnVkCQDMCAIJANgEAQgFBHVzZXIFYnl0ZXMFA25pbAUDU0VQARN1c2VyUHJvcG9zYWxWb3RlS2V5Agpwcm9wb3NhbElkBHVzZXIJALkJAgkAzAgCAgJ1cAkAzAgCCQCkAwEFCnByb3Bvc2FsSWQJAMwIAgkA2AQBCAUEdXNlcgVieXRlcwUDbmlsBQNTRVABC3NldFByb3Bvc2FsCAJpZAdjcmVhdG9yBXRpdGxlBHRleHQRdGltZXN0YW1wQ3JlYXRpb24NY291bnRWb3Rlc0ZvchFDb3VudFZvdGVzQWdhaW5zdAlmaW5hbGl6ZWQJAQtTdHJpbmdFbnRyeQIJAQtwcm9wb3NhbEtleQEFAmlkCQC7CQIJAMwIAgkA3AQBCAUHY3JlYXRvcgVieXRlcwkAzAgCBQV0aXRsZQkAzAgCBQR0ZXh0CQDMCAIJAKQDAQURdGltZXN0YW1wQ3JlYXRpb24JAMwIAgkApAMBBQ1jb3VudFZvdGVzRm9yCQDMCAIJAKQDAQURQ291bnRWb3Rlc0FnYWluc3QJAMwIAgkApQMBBQlmaW5hbGl6ZWQFA25pbAUDU0VQAQtnZXRQcm9wb3NhbAECaWQEC3NhdmVkU3RyaW5nCQC1CQIEByRtYXRjaDAJAJ0IAgUEdGhpcwkBC3Byb3Bvc2FsS2V5AQUCaWQDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFzBQckbWF0Y2gwBQFzCQACAQIScHJvcG9zYWwgbm90IGZvdW5kBQNTRVAJAJkKBwkBB0FkZHJlc3MBCQDdBAEJAJEDAgULc2F2ZWRTdHJpbmcAAAkAkQMCBQtzYXZlZFN0cmluZwABCQCRAwIFC3NhdmVkU3RyaW5nAAIJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQtzYXZlZFN0cmluZwADCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgULc2F2ZWRTdHJpbmcABAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFC3NhdmVkU3RyaW5nAAUDCQAAAgkAkQMCBQtzYXZlZFN0cmluZwAGAgR0cnVlBgcBFGlzUGF5UmVwdXRhdGlvbkFzc2V0AQFpAwkAAAIJAJADAQgFAWkIcGF5bWVudHMAAQMJAAACCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQFD3JlcHV0YXRpb25Bc3NldAYJAAIBAhZvbmx5IHJlcHV0YXRpb24gYXNzZXRzCQACAQIOb25seSAxIHBheW1lbnQBHGdldEdyZWF0ZXN0VXNlclZvdGVUaW1lc3RhbXABBHVzZXIEByRtYXRjaDAJAJoIAgUEdGhpcwkBHWdyZWF0ZXN0VXNlclZvdGVVc2VyVGltZXN0YW1wAQUEdXNlcgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAESZ2V0VW5sb2NrVGltZXN0YW1wAQR1c2VyCQBkAgkBHGdldEdyZWF0ZXN0VXNlclZvdGVUaW1lc3RhbXABBQR1c2VyBQxwcm9wb3NhbFRpbWUBDmNvdW50UHJvcG9zYWxzAAQHJG1hdGNoMAkAmggCBQR0aGlzCQERY291bnRQcm9wb3NhbHNLZXkAAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAARx1c2VyRGVwb3NpdGVkUmVwdXRhdGlvbkFzc2V0AQR1c2VyBAckbWF0Y2gwCQCaCAIFBHRoaXMJARB1c2VyRGVwb3NpdGVkS2V5AQUEdXNlcgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAEPaXNQcm9wb3NhbEFsaXZlAQJpZAMDCQBmAgkBDmNvdW50UHJvcG9zYWxzAAUCaWQJAGYCCQBkAggJAQtnZXRQcm9wb3NhbAEFAmlkAl80BQxwcm9wb3NhbFRpbWUIBQlsYXN0QmxvY2sJdGltZXN0YW1wBwYJAAIBAhJwcm9wb3NhbCBub3QgYWxpdmUBC3NldFVzZXJWb3RlBApwcm9wb3NhbElkBHVzZXIYcHJvcG9zYWxDcmVhdGVkVGltZXN0YW1wCXZvdGVQb3dlcgQKdW5sb2NrVGltZQkAlgMBCQDMCAIFGHByb3Bvc2FsQ3JlYXRlZFRpbWVzdGFtcAkAzAgCCQEcZ2V0R3JlYXRlc3RVc2VyVm90ZVRpbWVzdGFtcAEFBHVzZXIFA25pbAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBE3VzZXJQcm9wb3NhbFZvdGVLZXkCBQpwcm9wb3NhbElkBQR1c2VyBQl2b3RlUG93ZXIJAMwIAgkBDEludGVnZXJFbnRyeQIJAR1ncmVhdGVzdFVzZXJWb3RlVXNlclRpbWVzdGFtcAEFBHVzZXIFCnVubG9ja1RpbWUFA25pbAELZ2V0VXNlclZvdGUCCnByb3Bvc2FsSWQEdXNlcgQHJG1hdGNoMAkAnwgBCQETdXNlclByb3Bvc2FsVm90ZUtleQIFCnByb3Bvc2FsSWQFBHVzZXIDCQABAgUHJG1hdGNoMAIDSW50BAFpBQckbWF0Y2gwBQFpAAAEAWkBB2RlcG9zaXQABAZjaGVja3MJAMwIAgkBFGlzUGF5UmVwdXRhdGlvbkFzc2V0AQUBaQUDbmlsAwkAAAIFBmNoZWNrcwUGY2hlY2tzBA1jdXJyZW50QW1vdW50CQEcdXNlckRlcG9zaXRlZFJlcHV0YXRpb25Bc3NldAEIBQFpBmNhbGxlcgQJbmV3QW1vdW50CQBkAgUNY3VycmVudEFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJARB1c2VyRGVwb3NpdGVkS2V5AQgFAWkGY2FsbGVyBQluZXdBbW91bnQFA25pbAkAAgECE29ubHlSZXB1dGF0aW9uQXNzZXQBaQEId2l0aGRyYXcBBmFtb3VudAQNY3VycmVudEFtb3VudAQHJG1hdGNoMAkAmggCBQR0aGlzCQEQdXNlckRlcG9zaXRlZEtleQEIBQFpBmNhbGxlcgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQJbmV3QW1vdW50CQBlAgUNY3VycmVudEFtb3VudAUGYW1vdW50AwkAZgIAAAUGYW1vdW50CQACAQIeQ2FuJ3Qgd2l0aGRyYXcgbmVnYXRpdmUgYW1vdW50AwkAZgIJARJnZXRVbmxvY2tUaW1lc3RhbXABCAUBaQZjYWxsZXIIBQlsYXN0QmxvY2sJdGltZXN0YW1wCQACAQIGTG9ja2VkAwkAZgIAAAUJbmV3QW1vdW50CQACAQISTm90IGVub3VnaCBiYWxhbmNlCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEQdXNlckRlcG9zaXRlZEtleQEIBQFpBmNhbGxlcgUJbmV3QW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQ9yZXB1dGF0aW9uQXNzZXQFA25pbAFpAQ5jcmVhdGVQcm9wb3NhbAIFdGl0bGUEdGV4dAQFY291bnQJAQ5jb3VudFByb3Bvc2FscwAJAMwIAgkBC3NldFByb3Bvc2FsCAUFY291bnQIBQFpBmNhbGxlcgkA3AQBBQV0aXRsZQkA3AQBBQR0ZXh0CAUJbGFzdEJsb2NrCXRpbWVzdGFtcAAAAAAHCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQERY291bnRQcm9wb3NhbHNLZXkACQBkAgUFY291bnQAAQUDbmlsAWkBBHZvdGUCCnByb3Bvc2FsSWQEdm90ZQMJAQEhAQkBD2lzUHJvcG9zYWxBbGl2ZQEFCnByb3Bvc2FsSWQJAAIBAhBwcm9wb3NhbE5vdEFsaXZlBAhwcm9wb3NhbAkBC2dldFByb3Bvc2FsAQUKcHJvcG9zYWxJZAQLcHJldml1c1ZvdGUJAQtnZXRVc2VyVm90ZQIFCnByb3Bvc2FsSWQIBQFpBmNhbGxlcgQJdm90ZVBvd2VyCQEcdXNlckRlcG9zaXRlZFJlcHV0YXRpb25Bc3NldAEIBQFpBmNhbGxlcgQIbWludXNGb3IDCQBmAgULcHJldml1c1ZvdGUAAAULcHJldml1c1ZvdGUAAAQMbWludXNBZ2FpbnN0AwkAZgIAAAULcHJldml1c1ZvdGUJAQEtAQULcHJldml1c1ZvdGUAAAQHcGx1c0ZvcgMJAAACBQR2b3RlBgUJdm90ZVBvd2VyAAAEC3BsdXNBZ2FpbnN0AwkAAAIFBHZvdGUHBQl2b3RlUG93ZXIAAAkAzggCCQDMCAIJAQtzZXRQcm9wb3NhbAgFCnByb3Bvc2FsSWQIBQhwcm9wb3NhbAJfMQgFCHByb3Bvc2FsAl8yCAUIcHJvcG9zYWwCXzMIBQhwcm9wb3NhbAJfNAkAZAIJAGUCCAUIcHJvcG9zYWwCXzUFCG1pbnVzRm9yBQdwbHVzRm9yCQBkAgkAZQIIBQhwcm9wb3NhbAJfNgUMbWludXNBZ2FpbnN0BQtwbHVzQWdhaW5zdAgFCHByb3Bvc2FsAl83BQNuaWwJAQtzZXRVc2VyVm90ZQQFCnByb3Bvc2FsSWQIBQFpBmNhbGxlcggFCHByb3Bvc2FsAl80AwUEdm90ZQUJdm90ZVBvd2VyCQEBLQEFCXZvdGVQb3dlcgECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXk+O50V", "height": 3829901, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 9dnpMqevURxs5rACF5jsjawNqHVUxHdGRLsxTdctVKPq Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let a = "__"
5+
6+let b = base58'6XJAscmejGPTLAdKsg12MynB5rNQzNiZz8Yj81SWeFrj'
7+
8+let c = ((((1000 * 60) * 60) * 24) * 3)
9+
10+func d () = "cp"
11+
12+
13+func e (f) = makeString(["p", toString(f)], a)
14+
15+
16+func g (h) = makeString(["ut", toBase58String(h.bytes)], a)
17+
18+
19+func i (h) = makeString(["ud", toBase58String(h.bytes)], a)
20+
21+
22+func j (f,h) = makeString(["up", toString(f), toBase58String(h.bytes)], a)
23+
24+
25+func k (l,m,n,o,p,q,r,s) = StringEntry(e(l), makeString_11C([toBase16String(m.bytes), n, o, toString(p), toString(q), toString(r), toString(s)], a))
26+
27+
28+func t (l) = {
29+ let u = split({
30+ let v = getString(this, e(l))
31+ if ($isInstanceOf(v, "String"))
32+ then {
33+ let w = v
34+ w
35+ }
36+ else throw("proposal not found")
37+ }, a)
38+ $Tuple7(Address(fromBase16String(u[0])), u[1], u[2], parseIntValue(u[3]), parseIntValue(u[4]), parseIntValue(u[5]), if ((u[6] == "true"))
39+ then true
40+ else false)
41+ }
42+
43+
44+func x (y) = if ((size(y.payments) == 1))
45+ then if ((y.payments[0].assetId == b))
46+ then true
47+ else throw("only reputation assets")
48+ else throw("only 1 payment")
49+
50+
51+func z (h) = {
52+ let v = getInteger(this, g(h))
53+ if ($isInstanceOf(v, "Int"))
54+ then {
55+ let A = v
56+ A
57+ }
58+ else 0
59+ }
60+
61+
62+func B (h) = (z(h) + c)
63+
64+
65+func C () = {
66+ let v = getInteger(this, d())
67+ if ($isInstanceOf(v, "Int"))
68+ then {
69+ let A = v
70+ A
71+ }
72+ else 0
73+ }
74+
75+
76+func D (h) = {
77+ let v = getInteger(this, i(h))
78+ if ($isInstanceOf(v, "Int"))
79+ then {
80+ let A = v
81+ A
82+ }
83+ else 0
84+ }
85+
86+
87+func E (l) = if (if ((C() > l))
88+ then ((t(l)._4 + c) > lastBlock.timestamp)
89+ else false)
90+ then true
91+ else throw("proposal not alive")
92+
93+
94+func F (f,h,G,H) = {
95+ let I = max([G, z(h)])
96+[IntegerEntry(j(f, h), H), IntegerEntry(g(h), I)]
97+ }
98+
99+
100+func J (f,h) = {
101+ let v = getInteger(j(f, h))
102+ if ($isInstanceOf(v, "Int"))
103+ then {
104+ let y = v
105+ y
106+ }
107+ else 0
108+ }
109+
110+
111+@Callable(y)
112+func deposit () = {
113+ let K = [x(y)]
114+ if ((K == K))
115+ then {
116+ let L = D(y.caller)
117+ let M = (L + y.payments[0].amount)
118+[IntegerEntry(i(y.caller), M)]
119+ }
120+ else throw("onlyReputationAsset")
121+ }
122+
123+
124+
125+@Callable(y)
126+func withdraw (N) = {
127+ let L = {
128+ let v = getInteger(this, i(y.caller))
129+ if ($isInstanceOf(v, "Int"))
130+ then {
131+ let A = v
132+ A
133+ }
134+ else 0
135+ }
136+ let M = (L - N)
137+ if ((0 > N))
138+ then throw("Can't withdraw negative amount")
139+ else if ((B(y.caller) > lastBlock.timestamp))
140+ then throw("Locked")
141+ else if ((0 > M))
142+ then throw("Not enough balance")
143+ else [IntegerEntry(i(y.caller), M), ScriptTransfer(y.caller, N, b)]
144+ }
145+
146+
147+
148+@Callable(y)
149+func createProposal (n,o) = {
150+ let O = C()
151+[k(O, y.caller, toBase16String(n), toBase16String(o), lastBlock.timestamp, 0, 0, false), IntegerEntry(d(), (O + 1))]
152+ }
153+
154+
155+
156+@Callable(y)
157+func vote (f,P) = if (!(E(f)))
158+ then throw("proposalNotAlive")
159+ else {
160+ let Q = t(f)
161+ let R = J(f, y.caller)
162+ let H = D(y.caller)
163+ let S = if ((R > 0))
164+ then R
165+ else 0
166+ let T = if ((0 > R))
167+ then -(R)
168+ else 0
169+ let U = if ((P == true))
170+ then H
171+ else 0
172+ let V = if ((P == false))
173+ then H
174+ else 0
175+ ([k(f, Q._1, Q._2, Q._3, Q._4, ((Q._5 - S) + U), ((Q._6 - T) + V), Q._7)] ++ F(f, y.caller, Q._4, if (P)
176+ then H
177+ else -(H)))
178+ }
179+
180+
181+@Verifier(W)
182+func X () = sigVerify(W.bodyBytes, W.proofs[0], W.senderPublicKey)
183+

github/deemru/w8io/873ac7e 
36.86 ms