tx · 2FkE548WTBBAkDWGGa5d9Rfgs81tYX3GmRvsRQmyRLZG

3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp:  -0.01400000 Waves

2021.03.13 11:55 [1435704] smart account 3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp > SELF 0.00000000 Waves

{ "type": 13, "id": "2FkE548WTBBAkDWGGa5d9Rfgs81tYX3GmRvsRQmyRLZG", "fee": 1400000, "feeAssetId": null, "timestamp": 1615625716768, "version": 1, "sender": "3N2wcNfEWihUVJV2S6jKwcw3QDupKgXPBnp", "senderPublicKey": "2Ek8QRiW2SC3s4ZC79pXUmvJbmqU6agaNsjN2wmnzmSs", "proofs": [ "3Et6c1gRiFCwsWpHzob1xAyfzH1iTEjD1R5W4Q6dwXyXdZ4Au5nWtMKETN7rdC9iVbkoAnP6Doo2mpBZZ96P8tbA" ], "script": "base64:AAIEAAAAAAAAAAgIAhIECgIIAQAAAAcAAAAAEWtVc2VyUG9vbFZvdGVTV09QAgAAAAVfdm90ZQAAAAASa1VzZXJUb3RhbFZvdGVTV09QAgAAABVfdXNlcl90b3RhbF9TV09QX3ZvdGUAAAAADWtQb29sVm90ZVNXT1ACAAAACl92b3RlX1NXT1AAAAAADmtUb3RhbFZvdGVTV09QAgAAAA90b3RhbF92b3RlX1NXT1AAAAAAB2dvdkFkZHIJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVQTpUX1edzu1C+kk914p42uKvNrLVgR210BAAAAFGlzQ2FsbGVySW5Hb3Zlcm5hbmNlAAAAAQAAAAR1c2VyAwMJAABmAAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdnb3ZBZGRyCQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgIAAAAMX1NXT1BfYW1vdW50AAAAAAAAAAAAAAAAAAAAAAAABgkAAGYAAAACCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkABCUAAAABBQAAAAR1c2VyBQAAABJrVXNlclRvdGFsVm90ZVNXT1AAAAAAAAAAAAAAAAAAAAAAAAAGBwEAAAASaXNQb29sSW5Hb3Zlcm5hbmNlAAAAAQAAAAtwb29sQWRkcmVzcwMJAABmAAAAAgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdnb3ZBZGRyCQABLAAAAAIFAAAAC3Bvb2xBZGRyZXNzAgAAAAxfc3RhcnRIZWlnaHQAAAAAAAAAAAAAAAAAAAAAAAAGBwAAAAEAAAABaQEAAAAOdm90ZVBvb2xXZWlnaHQAAAACAAAAC3Bvb2xBZGRyZXNzAAAAD3Bvb2xWb3RlU1dPUE5ldwMJAQAAAAEhAAAAAQkBAAAAFGlzQ2FsbGVySW5Hb3Zlcm5hbmNlAAAAAQgFAAAAAWkAAAAGY2FsbGVyCQAAAgAAAAECAAAAKlRoaXMgYWRkcmVzcyBoYXMgMCBTV09QIGluIEdvdmVybmFuY2UgZEFwcAMJAQAAAAEhAAAAAQkBAAAAEmlzUG9vbEluR292ZXJuYW5jZQAAAAEFAAAAC3Bvb2xBZGRyZXNzCQAAAgAAAAECAAAAMFRoaXMgcG9vbCBoYXMgbm8gX3N0YXJ0SGVpZ2h0IGluIEdvdmVybmFuY2UgZEFwcAQAAAATdXNlclRvdGFsVm90ZVdlaWdodAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABJrVXNlclRvdGFsVm90ZVNXT1AAAAAAAAAAAAAEAAAAEnVzZXJQb29sVm90ZVdlaWdodAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAARa1VzZXJQb29sVm90ZVNXT1ACAAAAAV8FAAAAC3Bvb2xBZGRyZXNzAAAAAAAAAAAABAAAAAxwb29sVm90ZVNXT1AJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAtwb29sQWRkcmVzcwUAAAANa1Bvb2xWb3RlU1dPUAAAAAAAAAAAAAQAAAANdG90YWxWb3RlU1dPUAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAAA5rVG90YWxWb3RlU1dPUAAAAAAAAAAAAAQAAAAUdXNlclNXT1BpbkdvdmVybmFuY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAAB2dvdkFkZHIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXICAAAADF9TV09QX2Ftb3VudAQAAAAScG9vbFZvdGVXZWlnaHREaWZmCQAAZQAAAAIFAAAAD3Bvb2xWb3RlU1dPUE5ldwUAAAASdXNlclBvb2xWb3RlV2VpZ2h0BAAAABR1c2VyVG90YWxWb3RlU1dPUE5ldwkAAGQAAAACBQAAABN1c2VyVG90YWxWb3RlV2VpZ2h0BQAAABJwb29sVm90ZVdlaWdodERpZmYEAAAAD3Bvb2xWb3RlU1dPUG5ldwkAAGQAAAACBQAAAAxwb29sVm90ZVNXT1AFAAAAEnBvb2xWb3RlV2VpZ2h0RGlmZgQAAAAQdG90YWxWb3RlU1dPUG5ldwkAAGQAAAACBQAAAAxwb29sVm90ZVNXT1AFAAAAEnBvb2xWb3RlV2VpZ2h0RGlmZgMJAABmAAAAAgUAAAAUdXNlclNXT1BpbkdvdmVybmFuY2UFAAAAFHVzZXJUb3RhbFZvdGVTV09QTmV3CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkABCUAAAABBQAAAAR0aGlzAgAAAAUgaGFzIAkAAaQAAAABBQAAABR1c2VyU1dPUGluR292ZXJuYW5jZQIAAAAnU1dPUCBpbiBnb3Zlcm5hbmNlLiBOZXcgU1dPUCBpbiB2b3RpbmcgCQABpAAAAAEFAAAAFHVzZXJUb3RhbFZvdGVTV09QTmV3CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAARa1VzZXJQb29sVm90ZVNXT1ACAAAAAV8FAAAAC3Bvb2xBZGRyZXNzBQAAAA9wb29sVm90ZVNXT1BOZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAEmtVc2VyVG90YWxWb3RlU1dPUAUAAAAUdXNlclRvdGFsVm90ZVNXT1BOZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgUAAAALcG9vbEFkZHJlc3MFAAAADWtQb29sVm90ZVNXT1AFAAAAD3Bvb2xWb3RlU1dPUG5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAOa1RvdGFsVm90ZVNXT1AFAAAAEHRvdGFsVm90ZVNXT1BuZXcFAAAAA25pbAAAAAB+M4iz", "chainId": 84, "height": 1435704, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 5QSWyRyEcsk7YJuDqhP7isHa1DCcUYV5askUkMLVfsH5 Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 4 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let kUserPoolVoteSWOP = "_vote"
5+
6+let kUserTotalVoteSWOP = "_user_total_SWOP_vote"
7+
8+let kPoolVoteSWOP = "_vote_SWOP"
9+
10+let kTotalVoteSWOP = "total_vote_SWOP"
11+
12+let govAddr = Address(base58'3MqhxbxHEMtp2Rwy1gUb6cPSJHQepdap1Yp')
13+
14+func isCallerInGovernance (user) = if (if ((valueOrElse(getInteger(govAddr, (toString(user) + "_SWOP_amount")), 0) > 0))
15+ then true
16+ else (valueOrElse(getInteger(this, (toString(user) + kUserTotalVoteSWOP)), 0) > 0))
17+ then true
18+ else false
19+
20+
21+func isPoolInGovernance (poolAddress) = if ((valueOrElse(getInteger(govAddr, (poolAddress + "_startHeight")), 0) > 0))
22+ then true
23+ else false
24+
25+
26+@Callable(i)
27+func votePoolWeight (poolAddress,poolVoteSWOPNew) = if (!(isCallerInGovernance(i.caller)))
28+ then throw("This address has 0 SWOP in Governance dApp")
29+ else if (!(isPoolInGovernance(poolAddress)))
30+ then throw("This pool has no _startHeight in Governance dApp")
31+ else {
32+ let userTotalVoteWeight = valueOrElse(getInteger(this, (toString(i.caller) + kUserTotalVoteSWOP)), 0)
33+ let userPoolVoteWeight = valueOrElse(getInteger(this, (((toString(i.caller) + kUserPoolVoteSWOP) + "_") + poolAddress)), 0)
34+ let poolVoteSWOP = valueOrElse(getInteger(this, (poolAddress + kPoolVoteSWOP)), 0)
35+ let totalVoteSWOP = valueOrElse(getInteger(this, kTotalVoteSWOP), 0)
36+ let userSWOPinGovernance = getIntegerValue(govAddr, (toString(i.caller) + "_SWOP_amount"))
37+ let poolVoteWeightDiff = (poolVoteSWOPNew - userPoolVoteWeight)
38+ let userTotalVoteSWOPNew = (userTotalVoteWeight + poolVoteWeightDiff)
39+ let poolVoteSWOPnew = (poolVoteSWOP + poolVoteWeightDiff)
40+ let totalVoteSWOPnew = (poolVoteSWOP + poolVoteWeightDiff)
41+ if ((userSWOPinGovernance > userTotalVoteSWOPNew))
42+ then throw(((((toString(this) + " has ") + toString(userSWOPinGovernance)) + "SWOP in governance. New SWOP in voting ") + toString(userTotalVoteSWOPNew)))
43+ else [IntegerEntry((((toString(i.caller) + kUserPoolVoteSWOP) + "_") + poolAddress), poolVoteSWOPNew), IntegerEntry((toString(i.caller) + kUserTotalVoteSWOP), userTotalVoteSWOPNew), IntegerEntry((poolAddress + kPoolVoteSWOP), poolVoteSWOPnew), IntegerEntry(kTotalVoteSWOP, totalVoteSWOPnew)]
44+ }
45+
46+

github/deemru/w8io/c3f4982 
22.34 ms