tx · 9UJnDnMXbyJ2XzXBKu9uygMEY88atJS81fgZime5hNK5

3N8snViQtc4Lu5Mgwobpbp5pd3rpuYeoVpb:  -0.01000000 Waves

2020.01.13 21:08 [852606] smart account 3N8snViQtc4Lu5Mgwobpbp5pd3rpuYeoVpb > SELF 0.00000000 Waves

{ "type": 13, "id": "9UJnDnMXbyJ2XzXBKu9uygMEY88atJS81fgZime5hNK5", "fee": 1000000, "feeAssetId": null, "timestamp": 1578938924918, "version": 1, "sender": "3N8snViQtc4Lu5Mgwobpbp5pd3rpuYeoVpb", "senderPublicKey": "2UPf4PX7weZEubvrtam28cP4x7P3q7M9AoKsy38KKESo", "proofs": [ "41M9yPJTXk4eQH38RLaoMrk4bepSHXuoxC7NCKhiKZ6JXb3qQ9NP4YcRXDuj3KcavDSkSJvoSELMBsc3NswEx5db" ], "script": "base64:AAIDAAAAAAAAABYIARIAEgQKAgEIEgQKAggBEgQKAggBAAAAGgEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAAAxnZXRCb29sQnlLZXkAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABBsAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAB0Jvb2xlYW4EAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEHAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACAAAAB2FkZHJlc3MAAAADa2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAAGGdldFN0cmluZ0J5QWRkcmVzc0FuZEtleQAAAAIAAAAHYWRkcmVzcwAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAAAAAASTmV1dHJpbm9Bc3NldElkS2V5AgAAABFuZXV0cmlub19hc3NldF9pZAAAAAATTmV1dHJpbm9Db250cmFjdEtleQIAAAARbmV1dHJpbm9fY29udHJhY3QAAAAACkJhbGFuY2VLZXkCAAAAC3JwZF9iYWxhbmNlAAAAABJDb250cm9sQ29udHJhY3RLZXkCAAAAEGNvbnRyb2xfY29udHJhY3QAAAAACUFkbWluc0tleQIAAAAGYWRtaW5zAQAAABFnZXRVc2VyQmFsYW5jZUtleQAAAAIAAAAFb3duZXIAAAAHYXNzZXRJZAkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAApCYWxhbmNlS2V5AgAAAAFfBQAAAAdhc3NldElkAgAAAAFfBQAAAAVvd25lcgEAAAAVZ2V0Q29udHJhY3RCYWxhbmNlS2V5AAAAAQAAAAdhc3NldElkCQABLAAAAAIJAAEsAAAAAgUAAAAKQmFsYW5jZUtleQIAAAABXwUAAAAHYXNzZXRJZAEAAAAUZ2V0RXhwaXJlUHJvcG9zYWxLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACAgAAAA9wcm9wb3NhbF9leHBpcmUCAAAAAV8FAAAABGhhc2gBAAAAE2dldE93bmVyUHJvcG9zYWxLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACAgAAAA5wcm9wb3NhbF9vd25lcgIAAAABXwUAAAAEaGFzaAEAAAAXZ2V0QXJndW1lbnRzUHJvcG9zYWxLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACAgAAABJwcm9wb3NhbF9hcmd1bWVudHMCAAAAAV8FAAAABGhhc2gBAAAACmdldFZvdGVLZXkAAAACAAAABW93bmVyAAAABGhhc2gJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAANcHJvcG9zYWxfdm90ZQIAAAABXwUAAAAFb3duZXICAAAAAV8FAAAABGhhc2gBAAAAFmNvbnZlcnRKc29uQXJyYXlUb0xpc3QAAAABAAAACWpzb25BcnJheQkABLUAAAACBQAAAAlqc29uQXJyYXkCAAAAASwAAAAAEG5ldXRyaW5vQ29udHJhY3QJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAATTmV1dHJpbm9Db250cmFjdEtleQAAAAAPY29udHJvbENvbnRyYWN0CQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEJAQAAABhnZXRTdHJpbmdCeUFkZHJlc3NBbmRLZXkAAAACBQAAABBuZXV0cmlub0NvbnRyYWN0BQAAABJDb250cm9sQ29udHJhY3RLZXkAAAAAD25ldXRyaW5vQXNzZXRJZAkAAlkAAAABCQEAAAAYZ2V0U3RyaW5nQnlBZGRyZXNzQW5kS2V5AAAAAgUAAAAQbmV1dHJpbm9Db250cmFjdAUAAAASTmV1dHJpbm9Bc3NldElkS2V5AQAAABJnZXRDb250cmFjdEJhbGFuY2UAAAABAAAAB2Fzc2V0SWQJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABVnZXRDb250cmFjdEJhbGFuY2VLZXkAAAABBQAAAAdhc3NldElkAQAAAA5nZXRVc2VyQmFsYW5jZQAAAAIAAAAFb3duZXIAAAAHYXNzZXRJZAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAEWdldFVzZXJCYWxhbmNlS2V5AAAAAgUAAAAFb3duZXIFAAAAB2Fzc2V0SWQBAAAAEWdldEV4cGlyZVByb3Bvc2FsAAAAAQAAAARoYXNoCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAUZ2V0RXhwaXJlUHJvcG9zYWxLZXkAAAABBQAAAARoYXNoAQAAABBnZXRPd25lclByb3Bvc2FsAAAAAQAAAARoYXNoCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAATZ2V0T3duZXJQcm9wb3NhbEtleQAAAAEFAAAABGhhc2gBAAAAFGdldEFyZ3VtZW50c1Byb3Bvc2FsAAAAAQAAAARoYXNoCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAXZ2V0QXJndW1lbnRzUHJvcG9zYWxLZXkAAAABBQAAAARoYXNoAQAAAAdnZXRWb3RlAAAAAgAAAAVvd25lcgAAAARoYXNoCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAKZ2V0Vm90ZUtleQAAAAIFAAAABW93bmVyBQAAAARoYXNoAAAABAAAAAFpAQAAAAxsb2NrTmV1dHJpbm8AAAAABAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAHYXNzZXRJZAUAAAAPbmV1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", "chainId": 84, "height": 852606, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func a (b) = {
5+ let c = getInteger(this, b)
6+ if ($isInstanceOf(c, "Int"))
7+ then {
8+ let d = c
9+ d
10+ }
11+ else 0
12+ }
13+
14+
15+func e (b) = {
16+ let c = getString(this, b)
17+ if ($isInstanceOf(c, "String"))
18+ then {
19+ let d = c
20+ d
21+ }
22+ else ""
23+ }
24+
25+
26+func f (b) = {
27+ let c = getBoolean(this, b)
28+ if ($isInstanceOf(c, "Boolean"))
29+ then {
30+ let d = c
31+ d
32+ }
33+ else false
34+ }
35+
36+
37+func g (h,b) = {
38+ let c = getInteger(addressFromStringValue(h), b)
39+ if ($isInstanceOf(c, "Int"))
40+ then {
41+ let d = c
42+ d
43+ }
44+ else 0
45+ }
46+
47+
48+func i (h,b) = {
49+ let c = getString(h, b)
50+ if ($isInstanceOf(c, "String"))
51+ then {
52+ let d = c
53+ d
54+ }
55+ else ""
56+ }
57+
58+
59+let j = "neutrino_asset_id"
60+
61+let k = "neutrino_contract"
62+
63+let l = "rpd_balance"
64+
65+let m = "control_contract"
66+
67+let n = "admins"
68+
69+func o (p,q) = ((((l + "_") + q) + "_") + p)
70+
71+
72+func r (q) = ((l + "_") + q)
73+
74+
75+func s (t) = (("proposal_expire" + "_") + t)
76+
77+
78+func u (t) = (("proposal_owner" + "_") + t)
79+
80+
81+func v (t) = (("proposal_arguments" + "_") + t)
82+
83+
84+func w (p,t) = (((("proposal_vote" + "_") + p) + "_") + t)
85+
86+
87+func x (y) = split(y, ",")
88+
89+
90+let z = addressFromStringValue(e(k))
91+
92+let A = addressFromStringValue(i(z, m))
93+
94+let B = fromBase58String(i(z, j))
95+
96+func C (q) = a(r(q))
97+
98+
99+func D (p,q) = a(o(p, q))
100+
101+
102+func E (t) = a(s(t))
103+
104+
105+func F (t) = e(u(t))
106+
107+
108+func G (t) = e(v(t))
109+
110+
111+func H (p,t) = e(w(p, t))
112+
113+
114+@Callable(I)
115+func lockNeutrino () = {
116+ let J = extract(I.payment)
117+ if ((J.assetId != B))
118+ then throw("can use neutrino")
119+ else {
120+ let K = toString(I.caller)
121+ let L = toBase58String(value(J.assetId))
122+ WriteSet([DataEntry(r(L), (C(L) + J.amount)), DataEntry(o(K, L), (D(K, L) + J.amount))])
123+ }
124+ }
125+
126+
127+
128+@Callable(I)
129+func unlockNeutrino (M,L) = {
130+ let K = toString(I.caller)
131+ let q = fromBase58String(L)
132+ let N = (D(K, L) - M)
133+ if ((0 > N))
134+ then throw("invalid amount")
135+ else if ((q != B))
136+ then throw("can use neutrino")
137+ else ScriptResult(WriteSet([DataEntry(r(L), (C(L) - M)), DataEntry(o(K, L), N)]), TransferSet([ScriptTransfer(addressFromStringValue(K), M, B)]))
138+ }
139+
140+
141+
142+@Callable(I)
143+func vote (t,O) = {
144+ let P = split(G(t), ",")
145+ let Q = P[O]
146+ if ((height > E(t)))
147+ then throw("proposal is expired")
148+ else WriteSet([DataEntry(w(toString(I.caller), t), Q)])
149+ }
150+
151+
152+
153+@Callable(I)
154+func createProposal (P,R) = {
155+ let t = toBase58String(keccak256(((toBytes(P) + toBytes(R)) + I.callerPublicKey)))
156+ if ((F(t) != ""))
157+ then throw("proposal is exist")
158+ else WriteSet([DataEntry(s(t), R), DataEntry(u(t), toString(I.caller)), DataEntry(v(t), P)])
159+ }
160+
161+
162+@Verifier(S)
163+func T () = {
164+ let U = ["BLEoguzPVKVTfXxxT3W7Rqf8aUm2ggC9Vemd2MQawM2G", "FWVffYr2ALmHMejZm3WqeLz6Sdym3gLFGtJn4KTwyU5x", "3Wh2LaWcb5gg7K2pPcW3Ep6EAuRBzYkAgrdpt43jTDFa", "5WRXFSjwcTbNfKcJs8ZqXmSSWYsSVJUtMvMqZj5hH4Nc"]
165+ let V = ((((if (sigVerify(S.bodyBytes, S.proofs[0], fromBase58String(U[0])))
166+ then 1
167+ else 0) + (if (sigVerify(S.bodyBytes, S.proofs[1], fromBase58String(U[1])))
168+ then 1
169+ else 0)) + (if (sigVerify(S.bodyBytes, S.proofs[2], fromBase58String(U[2])))
170+ then 1
171+ else 0)) + (if (sigVerify(S.bodyBytes, S.proofs[3], fromBase58String(U[3])))
172+ then 2
173+ else 0))
174+ (V >= 3)
175+ }
176+

github/deemru/w8io/3ef1775 
37.90 ms