tx · EkqQSkPjyG6hpfZJC8JhbxcSjTWURFdkL2qTiB5oGirz 3MqkNfXVeJunXinMimi7HA9F8ANmJETbUxx: -0.00600000 Waves 2022.12.20 11:05 [2368350] smart account 3MqkNfXVeJunXinMimi7HA9F8ANmJETbUxx > SELF 0.00000000 Waves
{ "type": 13, "id": "EkqQSkPjyG6hpfZJC8JhbxcSjTWURFdkL2qTiB5oGirz", "fee": 600000, "feeAssetId": null, "timestamp": 1671523560921, "version": 2, "chainId": 84, "sender": "3MqkNfXVeJunXinMimi7HA9F8ANmJETbUxx", "senderPublicKey": "8zsP8gYRj6csNvi7rW3BDs4BWXB1Xz8ZQ5DrL9ruSjkY", "proofs": [ "4MpqWbsNdvkd4X8ceDr6pRQzFJvNNbtxUanZWMxYshevHqkMaxhgfSR5UW8xrqY4Vi9PFdJCQGjmAP5k8q7ts1nW" ], "script": "base64:BgIMCAISBAoCCAESABIALAAHa0FjdGl2ZQIGYWN0aXZlAA1rZXlBY3RpdmVHbG9iAhRhY3RpdmVfYWxsX2NvbnRyYWN0cwAGa0NhdXNlAg5zaHV0ZG93bl9jYXVzZQANa1VzZXJQb29sVm90ZQIQX3VzZXJfdm90ZV9nU1dPUAAOa1VzZXJUb3RhbFZvdGUCFl91c2VyX3RvdGFsX3ZvdGVfZ1NXT1AACWtQb29sVm90ZQIQX3Bvb2xfdm90ZV9nU1dPUAAKa1RvdGFsVm90ZQIQdG90YWxfdm90ZV9nU1dPUAAQa0hhcnZlc3RQb29sVm90ZQIYX2hhcnZlc3RfcG9vbF92b3RlX2dTV09QABRrSGFydmVzdFVzZXJQb29sVm90ZQIdX2hhcnZlc3RfdXNlcl9wb29sX3ZvdGVfZ1NXT1AADGtTdGFydEhlaWdodAIMc3RhcnRfaGVpZ2h0AAtrQmFzZVBlcmlvZAILYmFzZV9wZXJpb2QADWtQZXJpb2RMZW5ndGgCDXBlcmlvZF9sZW5ndGgADWtBZG1pblB1YktleTECC2FkbWluX3B1Yl8xAA1rQWRtaW5QdWJLZXkyAgthZG1pbl9wdWJfMgANa0FkbWluUHViS2V5MwILYWRtaW5fcHViXzMADGtGYXJtaW5nQWRkcgIPZmFybWluZ19hZGRyZXNzAAtrR292QWRkcmVzcwISZ292ZXJuYW5jZV9hZGRyZXNzABprUG9vbEZpcnN0SGFydmVzdEVuZEhlaWdodAIUZmlyc3RfaGFydmVzdF9oZWlnaHQACmtQb29sU3RydWMCC19wb29sX3N0cnVjAA5rVXNlclBvb2xTdHJ1YwIQX3VzZXJfcG9vbF9zdHJ1YwAPa1VzZXJUb3RhbFN0cnVjAhFfdXNlcl90b3RhbF9zdHJ1YwALa1RvdGFsU3RydWMCC3RvdGFsX3N0cnVjABtrSGFydmVzdFBvb2xBY3RpdmVWb3RlU3RydWMCHl9oYXJ2ZXN0X3Bvb2xfYWN0aXZlVm90ZV9zdHJ1YwAfa0hhcnZlc3RVc2VyUG9vbEFjdGl2ZVZvdGVTdHJ1YwIjX2hhcnZlc3RfdXNlcl9wb29sX2FjdGl2ZVZvdGVfc3RydWMABm9yYWNsZQkBB0FkZHJlc3MBARoBV4r/CGiaNbpAzWF08hI33qY38Po4zugeOAAGYWN0aXZlCQELdmFsdWVPckVsc2UCCQCbCAIFBHRoaXMFB2tBY3RpdmUGAAphY3RpdmVHbG9iCQELdmFsdWVPckVsc2UCCQCbCAIFBm9yYWNsZQUNa2V5QWN0aXZlR2xvYgYACmJhc2VQZXJpb2QJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAmggCBQR0aGlzBQtrQmFzZVBlcmlvZAIRRW1wdHkga0Jhc2VQZXJpb2QAC3N0YXJ0SGVpZ2h0CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJoIAgUEdGhpcwUMa1N0YXJ0SGVpZ2h0AhJFbXB0eSBrU3RhcnRIZWlnaHQADHBlcmlvZExlbmd0aAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCaCAIFBHRoaXMFDWtQZXJpb2RMZW5ndGgCE0VtcHR5IGtQZXJpb2RMZW5ndGgBE2dldEJhc2U1OEZyb21PcmFjbGUBA2tleQQHJG1hdGNoMAkAnQgCBQZvcmFjbGUFA2tleQMJAAECBQckbWF0Y2gwAgZTdHJpbmcEBnN0cmluZwUHJG1hdGNoMAkA2QQBBQZzdHJpbmcEB25vdGhpbmcFByRtYXRjaDAJAAIBCQCsAgIFA2tleQIIaXMgZW1wdHkADGFkbWluUHViS2V5MQkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQ1rQWRtaW5QdWJLZXkxAAxhZG1pblB1YktleTIJARNnZXRCYXNlNThGcm9tT3JhY2xlAQUNa0FkbWluUHViS2V5MgAMYWRtaW5QdWJLZXkzCQETZ2V0QmFzZTU4RnJvbU9yYWNsZQEFDWtBZG1pblB1YktleTMACmdvdkFkZHJlc3MJAQdBZGRyZXNzAQkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQtrR292QWRkcmVzcwALZmFybWluZ0FkZHIJAQdBZGRyZXNzAQkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQxrRmFybWluZ0FkZHIACmN1cnJQZXJpb2QJAGQCBQpiYXNlUGVyaW9kCQBpAgkAZQIFBmhlaWdodAULc3RhcnRIZWlnaHQFDHBlcmlvZExlbmd0aAEIaXNBY3RpdmUAAwMFBmFjdGl2ZQUKYWN0aXZlR2xvYgcFBHVuaXQJAAIBAh9EQXBwIGlzIGluYWN0aXZlIGF0IHRoaXMgbW9tZW50AQtpc0FkbWluQ2FsbAEBaQMJAQ9jb250YWluc0VsZW1lbnQCCQDMCAIFDGFkbWluUHViS2V5MQkAzAgCBQxhZG1pblB1YktleTIJAMwIAgUMYWRtaW5QdWJLZXkzBQNuaWwIBQFpD2NhbGxlclB1YmxpY0tleQUEdW5pdAkAAgECIU9ubHkgYWRtaW4gY2FuIGNhbGwgdGhpcyBmdW5jdGlvbgEUaXNDYWxsZXJJbkdvdmVybmFuY2UBBHVzZXIJAGYCCQELdmFsdWVPckVsc2UCCQCaCAIFCmdvdkFkZHJlc3MJAKwCAgkApQgBBQR1c2VyAgxfU1dPUF9hbW91bnQAAAAAARJpc1Bvb2xJbkdvdmVybmFuY2UBC3Bvb2xBZGRyZXNzCQEJaXNEZWZpbmVkAQkAmggCBQpnb3ZBZGRyZXNzCQCsAgIFC3Bvb2xBZGRyZXNzAh1fY3VycmVudF9wb29sX2ZyYWN0aW9uX3Jld2FyZAEeZ2V0UG9vbEZpcnN0SGFydmVzdFN0YXJ0SGVpZ2h0AQtwb29sQWRkcmVzcwkAZQIJAQt2YWx1ZU9yRWxzZQIJAJoIAgkBB0FkZHJlc3MBCQDZBAEFC3Bvb2xBZGRyZXNzBRprUG9vbEZpcnN0SGFydmVzdEVuZEhlaWdodAAABQxwZXJpb2RMZW5ndGgBB3N1c3BlbmQBBWNhdXNlCQDMCAIJAQxCb29sZWFuRW50cnkCBQdrQWN0aXZlBwkAzAgCCQELU3RyaW5nRW50cnkCBQZrQ2F1c2UFBWNhdXNlBQNuaWwBD2NhbGNEZWxldGVFbnRyeQIGY2FsbGVyC3Bvb2xBZGRyZXNzCgEOZGVsZXRlSWZFeGlzdHMCBGxpc3QDa2V5AwkBCWlzRGVmaW5lZAEJAJ0IAgUEdGhpcwUDa2V5CQDNCAIFBGxpc3QJAQtEZWxldGVFbnRyeQEFA2tleQUEbGlzdAkBDmRlbGV0ZUlmRXhpc3RzAgkBDmRlbGV0ZUlmRXhpc3RzAgkBDmRlbGV0ZUlmRXhpc3RzAgkBDmRlbGV0ZUlmRXhpc3RzAgkBDmRlbGV0ZUlmRXhpc3RzAgkBDmRlbGV0ZUlmRXhpc3RzAgUDbmlsCQCsAgIJAKwCAgkArAICBQZjYWxsZXICAV8FC3Bvb2xBZGRyZXNzBQ5rVXNlclBvb2xTdHJ1YwkArAICBQZjYWxsZXIFD2tVc2VyVG90YWxTdHJ1YwkArAICBQtwb29sQWRkcmVzcwUKa1Bvb2xTdHJ1YwULa1RvdGFsU3RydWMJAKwCAgULcG9vbEFkZHJlc3MFG2tIYXJ2ZXN0UG9vbEFjdGl2ZVZvdGVTdHJ1YwkArAICCQCsAgIJAKwCAgUGY2FsbGVyAgFfBQtwb29sQWRkcmVzcwUfa0hhcnZlc3RVc2VyUG9vbEFjdGl2ZVZvdGVTdHJ1YwMBaQEOdm90ZVBvb2xXZWlnaHQCC3Bvb2xBZGRyZXNzD3VzZXJQb29sVm90ZU5ldwkBC3ZhbHVlT3JFbHNlAgkBCGlzQWN0aXZlAAMJAQEhAQkBEmlzUG9vbEluR292ZXJuYW5jZQEFC3Bvb2xBZGRyZXNzCQACAQIjVGhpcyBwb29sIGlzIG5vdCBpbiBHb3Zlcm5hbmNlIGRBcHAEFHVzZXJTV09QaW5Hb3Zlcm5hbmNlCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJoIAgUKZ292QWRkcmVzcwkArAICCQClCAEIBQFpBmNhbGxlcgIMX1NXT1BfYW1vdW50AiJFbXB0eSBfU1dPUF9hbW91bnQgYXQgZ292LiBhZGRyZXNzBBV1c2VyR1NXT1BpbkdvdmVybmFuY2UJAQt2YWx1ZU9yRWxzZQIJAJoIAgUKZ292QWRkcmVzcwkArAICCQClCAEIBQFpBmNhbGxlcgINX0dTd29wX2Ftb3VudAUUdXNlclNXT1BpbkdvdmVybmFuY2UEDHVzZXJQb29sVm90ZQMJAQlpc0RlZmluZWQBCQCdCAIFBHRoaXMJAKwCAgkArAICCQCsAgIJAKUIAQgFAWkGY2FsbGVyAgFfBQtwb29sQWRkcmVzcwUOa1VzZXJQb29sU3RydWMJAQ1wYXJzZUludFZhbHVlAQkAkQMCCQC1CQIJAQV2YWx1ZQEJAJ0IAgUEdGhpcwkArAICCQCsAgIJAKwCAgkApQgBCAUBaQZjYWxsZXICAV8FC3Bvb2xBZGRyZXNzBQ5rVXNlclBvb2xTdHJ1YwIBXwAACQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgkArAICCQCsAgIJAKUIAQgFAWkGY2FsbGVyAgFfBQtwb29sQWRkcmVzcwUNa1VzZXJQb29sVm90ZQAABA11c2VyVG90YWxWb3RlAwkBCWlzRGVmaW5lZAEJAJ0IAgUEdGhpcwkArAICCQClCAEIBQFpBmNhbGxlcgUPa1VzZXJUb3RhbFN0cnVjCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgkAtQkCCQEFdmFsdWUBCQCdCAIFBHRoaXMJAKwCAgkApQgBCAUBaQZjYWxsZXIFD2tVc2VyVG90YWxTdHJ1YwIBXwAACQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgkApQgBCAUBaQZjYWxsZXIFDmtVc2VyVG90YWxWb3RlAAAECHBvb2xWb3RlAwkBCWlzRGVmaW5lZAEJAJ0IAgUEdGhpcwkArAICBQtwb29sQWRkcmVzcwUKa1Bvb2xTdHJ1YwkBDXBhcnNlSW50VmFsdWUBCQCRAwIJALUJAgkBBXZhbHVlAQkAnQgCBQR0aGlzCQCsAgIFC3Bvb2xBZGRyZXNzBQprUG9vbFN0cnVjAgFfAAAJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQtwb29sQWRkcmVzcwUJa1Bvb2xWb3RlAAAECXRvdGFsVm90ZQMJAQlpc0RlZmluZWQBCQCdCAIFBHRoaXMFC2tUb3RhbFN0cnVjCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgkAtQkCCQEFdmFsdWUBCQCdCAIFBHRoaXMFC2tUb3RhbFN0cnVjAgFfAAAJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUKa1RvdGFsVm90ZQAABAxwb29sVm90ZURpZmYJAGUCBQ91c2VyUG9vbFZvdGVOZXcFDHVzZXJQb29sVm90ZQQQdXNlclRvdGFsVm90ZU5ldwkAZAIFDXVzZXJUb3RhbFZvdGUFDHBvb2xWb3RlRGlmZgMJAGYCBRB1c2VyVG90YWxWb3RlTmV3BRV1c2VyR1NXT1BpbkdvdmVybmFuY2UJAAIBCQCsAgIJAKwCAgkArAICCQCsAgIJAKUIAQgFAWkGY2FsbGVyAgUgaGFzIAkApAMBBRV1c2VyR1NXT1BpbkdvdmVybmFuY2UCKiBHU1dPUCBpbiBnb3Zlcm5hbmNlLiBOZXcgR1NXT1AgaW4gdm90aW5nIAkApAMBBRB1c2VyVG90YWxWb3RlTmV3AwkAZgIAAAUQdXNlclRvdGFsVm90ZU5ldwkAAgECHE5ldyB1c2VyVG90YWxWb3RlU1dPUG5ldyA8IDADCQBmAgAABQ91c2VyUG9vbFZvdGVOZXcJAAIBAhtOZXcgdXNlclBvb2xWb3RlU1dPUG5ldyA8IDAEDnJlbW92ZVBvb2xWb3RlCQEBLQEFDHBvb2xWb3RlRGlmZgQLcG9vbFZvdGVOZXcDCQBnAgUPdXNlclBvb2xWb3RlTmV3BQx1c2VyUG9vbFZvdGUJAGQCBQhwb29sVm90ZQUMcG9vbFZvdGVEaWZmCQBlAgUIcG9vbFZvdGUFDnJlbW92ZVBvb2xWb3RlBAx0b3RhbFZvdGVOZXcDCQBnAgUPdXNlclBvb2xWb3RlTmV3BQx1c2VyUG9vbFZvdGUJAGQCBQl0b3RhbFZvdGUFDHBvb2xWb3RlRGlmZgkAZQIFCXRvdGFsVm90ZQUOcmVtb3ZlUG9vbFZvdGUDAwkAZgIAAAULcG9vbFZvdGVOZXcGCQBmAgAABQx0b3RhbFZvdGVOZXcJAAIBAh9PbmUgb3IgbW9yZSB2YWx1ZXMgYXJlIG5lZ2F0aXZlBA5oYXJ2ZXN0RW50cmllcwMJAGYCCQEeZ2V0UG9vbEZpcnN0SGFydmVzdFN0YXJ0SGVpZ2h0AQULcG9vbEFkZHJlc3MFBmhlaWdodAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQtwb29sQWRkcmVzcwUQa0hhcnZlc3RQb29sVm90ZQULcG9vbFZvdGVOZXcJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICCQCsAgIJAKUIAQgFAWkGY2FsbGVyAgFfBQtwb29sQWRkcmVzcwUUa0hhcnZlc3RVc2VyUG9vbFZvdGUFD3VzZXJQb29sVm90ZU5ldwUDbmlsBQNuaWwEB3VwVUludHIJAPwHBAULZmFybWluZ0FkZHICF3VwZGF0ZVVzZXJCb29zdEludGVyZXN0CQDMCAIFC3Bvb2xBZGRyZXNzCQDMCAIJAKUIAQgFAWkGY2FsbGVyBQNuaWwFA25pbAMJAAACBQd1cFVJbnRyBQd1cFVJbnRyCQDOCAIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgIJAKwCAgkApQgBCAUBaQZjYWxsZXICAV8FC3Bvb2xBZGRyZXNzBQ1rVXNlclBvb2xWb3RlBQ91c2VyUG9vbFZvdGVOZXcJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkApQgBCAUBaQZjYWxsZXIFDmtVc2VyVG90YWxWb3RlBRB1c2VyVG90YWxWb3RlTmV3CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFC3Bvb2xBZGRyZXNzBQlrUG9vbFZvdGUFC3Bvb2xWb3RlTmV3CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQprVG90YWxWb3RlBQx0b3RhbFZvdGVOZXcFA25pbAkBD2NhbGNEZWxldGVFbnRyeQIJAKUIAQgFAWkGY2FsbGVyBQtwb29sQWRkcmVzcwUOaGFydmVzdEVudHJpZXMJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEIc2h1dGRvd24ACQELdmFsdWVPckVsc2UCCQELaXNBZG1pbkNhbGwBBQFpAwkBASEBBQZhY3RpdmUJAAIBCQCsAgICIkRBcHAgaXMgYWxyZWFkeSBzdXNwZW5kZWQuIENhdXNlOiAJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwUGa0NhdXNlAhp0aGUgY2F1c2Ugd2Fzbid0IHNwZWNpZmllZAkBB3N1c3BlbmQBAg9QYXVzZWQgYnkgYWRtaW4BaQEIYWN0aXZhdGUACQELdmFsdWVPckVsc2UCCQELaXNBZG1pbkNhbGwBBQFpAwUGYWN0aXZlCQACAQIWREFwcCBpcyBhbHJlYWR5IGFjdGl2ZQkAzAgCCQEMQm9vbGVhbkVudHJ5AgUHa0FjdGl2ZQYJAMwIAgkBC0RlbGV0ZUVudHJ5AQUGa0NhdXNlBQNuaWwAVkiTrw==", "height": 2368350, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 6 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = "active" | |
5 | + | ||
6 | + | let b = "active_all_contracts" | |
7 | + | ||
8 | + | let c = "shutdown_cause" | |
9 | + | ||
10 | + | let d = "_user_vote_gSWOP" | |
11 | + | ||
12 | + | let e = "_user_total_vote_gSWOP" | |
13 | + | ||
14 | + | let f = "_pool_vote_gSWOP" | |
15 | + | ||
16 | + | let g = "total_vote_gSWOP" | |
17 | + | ||
18 | + | let h = "_harvest_pool_vote_gSWOP" | |
19 | + | ||
20 | + | let i = "_harvest_user_pool_vote_gSWOP" | |
21 | + | ||
22 | + | let j = "start_height" | |
23 | + | ||
24 | + | let k = "base_period" | |
25 | + | ||
26 | + | let l = "period_length" | |
27 | + | ||
28 | + | let m = "admin_pub_1" | |
29 | + | ||
30 | + | let n = "admin_pub_2" | |
31 | + | ||
32 | + | let o = "admin_pub_3" | |
33 | + | ||
34 | + | let p = "farming_address" | |
35 | + | ||
36 | + | let q = "governance_address" | |
37 | + | ||
38 | + | let r = "first_harvest_height" | |
39 | + | ||
40 | + | let s = "_pool_struc" | |
41 | + | ||
42 | + | let t = "_user_pool_struc" | |
43 | + | ||
44 | + | let u = "_user_total_struc" | |
45 | + | ||
46 | + | let v = "total_struc" | |
47 | + | ||
48 | + | let w = "_harvest_pool_activeVote_struc" | |
49 | + | ||
50 | + | let x = "_harvest_user_pool_activeVote_struc" | |
51 | + | ||
52 | + | let y = Address(base58'3PEbqViERCoKnmcSULh6n2aiMvUdSQdCsom') | |
53 | + | ||
54 | + | let z = valueOrElse(getBoolean(this, a), true) | |
55 | + | ||
56 | + | let A = valueOrElse(getBoolean(y, b), true) | |
57 | + | ||
58 | + | let B = valueOrErrorMessage(getInteger(this, k), "Empty kBasePeriod") | |
59 | + | ||
60 | + | let C = valueOrErrorMessage(getInteger(this, j), "Empty kStartHeight") | |
61 | + | ||
62 | + | let D = valueOrErrorMessage(getInteger(this, l), "Empty kPeriodLength") | |
63 | + | ||
64 | + | func E (F) = { | |
65 | + | let G = getString(y, F) | |
66 | + | if ($isInstanceOf(G, "String")) | |
67 | + | then { | |
68 | + | let H = G | |
69 | + | fromBase58String(H) | |
70 | + | } | |
71 | + | else { | |
72 | + | let I = G | |
73 | + | throw((F + "is empty")) | |
74 | + | } | |
75 | + | } | |
76 | + | ||
77 | + | ||
78 | + | let J = E(m) | |
79 | + | ||
80 | + | let K = E(n) | |
81 | + | ||
82 | + | let L = E(o) | |
83 | + | ||
84 | + | let M = Address(E(q)) | |
85 | + | ||
86 | + | let N = Address(E(p)) | |
87 | + | ||
88 | + | let O = (B + ((height - C) / D)) | |
89 | + | ||
90 | + | func P () = if (if (z) | |
91 | + | then A | |
92 | + | else false) | |
93 | + | then unit | |
94 | + | else throw("DApp is inactive at this moment") | |
95 | + | ||
96 | + | ||
97 | + | func Q (R) = if (containsElement([J, K, L], R.callerPublicKey)) | |
98 | + | then unit | |
99 | + | else throw("Only admin can call this function") | |
100 | + | ||
101 | + | ||
102 | + | func S (T) = (valueOrElse(getInteger(M, (toString(T) + "_SWOP_amount")), 0) > 0) | |
103 | + | ||
104 | + | ||
105 | + | func U (V) = isDefined(getInteger(M, (V + "_current_pool_fraction_reward"))) | |
106 | + | ||
107 | + | ||
108 | + | func W (V) = (valueOrElse(getInteger(Address(fromBase58String(V)), r), 0) - D) | |
109 | + | ||
110 | + | ||
111 | + | func X (Y) = [BooleanEntry(a, false), StringEntry(c, Y)] | |
112 | + | ||
113 | + | ||
114 | + | func Z (aa,V) = { | |
115 | + | func ab (ac,F) = if (isDefined(getString(this, F))) | |
116 | + | then (ac :+ DeleteEntry(F)) | |
117 | + | else ac | |
118 | + | ||
119 | + | ab(ab(ab(ab(ab(ab(nil, (((aa + "_") + V) + t)), (aa + u)), (V + s)), v), (V + w)), (((aa + "_") + V) + x)) | |
120 | + | } | |
121 | + | ||
122 | + | ||
123 | + | @Callable(R) | |
124 | + | func votePoolWeight (V,ad) = valueOrElse(P(), if (!(U(V))) | |
125 | + | then throw("This pool is not in Governance dApp") | |
126 | + | else { | |
127 | + | let ae = valueOrErrorMessage(getInteger(M, (toString(R.caller) + "_SWOP_amount")), "Empty _SWOP_amount at gov. address") | |
128 | + | let af = valueOrElse(getInteger(M, (toString(R.caller) + "_GSwop_amount")), ae) | |
129 | + | let ag = if (isDefined(getString(this, (((toString(R.caller) + "_") + V) + t)))) | |
130 | + | then parseIntValue(split(value(getString(this, (((toString(R.caller) + "_") + V) + t))), "_")[0]) | |
131 | + | else valueOrElse(getInteger(this, (((toString(R.caller) + "_") + V) + d)), 0) | |
132 | + | let ah = if (isDefined(getString(this, (toString(R.caller) + u)))) | |
133 | + | then parseIntValue(split(value(getString(this, (toString(R.caller) + u))), "_")[0]) | |
134 | + | else valueOrElse(getInteger(this, (toString(R.caller) + e)), 0) | |
135 | + | let ai = if (isDefined(getString(this, (V + s)))) | |
136 | + | then parseIntValue(split(value(getString(this, (V + s))), "_")[0]) | |
137 | + | else valueOrElse(getInteger(this, (V + f)), 0) | |
138 | + | let aj = if (isDefined(getString(this, v))) | |
139 | + | then parseIntValue(split(value(getString(this, v)), "_")[0]) | |
140 | + | else valueOrElse(getInteger(this, g), 0) | |
141 | + | let ak = (ad - ag) | |
142 | + | let al = (ah + ak) | |
143 | + | if ((al > af)) | |
144 | + | then throw(((((toString(R.caller) + " has ") + toString(af)) + " GSWOP in governance. New GSWOP in voting ") + toString(al))) | |
145 | + | else if ((0 > al)) | |
146 | + | then throw("New userTotalVoteSWOPnew < 0") | |
147 | + | else if ((0 > ad)) | |
148 | + | then throw("New userPoolVoteSWOPnew < 0") | |
149 | + | else { | |
150 | + | let am = -(ak) | |
151 | + | let an = if ((ad >= ag)) | |
152 | + | then (ai + ak) | |
153 | + | else (ai - am) | |
154 | + | let ao = if ((ad >= ag)) | |
155 | + | then (aj + ak) | |
156 | + | else (aj - am) | |
157 | + | if (if ((0 > an)) | |
158 | + | then true | |
159 | + | else (0 > ao)) | |
160 | + | then throw("One or more values are negative") | |
161 | + | else { | |
162 | + | let ap = if ((W(V) > height)) | |
163 | + | then [IntegerEntry((V + h), an), IntegerEntry((((toString(R.caller) + "_") + V) + i), ad)] | |
164 | + | else nil | |
165 | + | let aq = invoke(N, "updateUserBoostInterest", [V, toString(R.caller)], nil) | |
166 | + | if ((aq == aq)) | |
167 | + | then (([IntegerEntry((((toString(R.caller) + "_") + V) + d), ad), IntegerEntry((toString(R.caller) + e), al), IntegerEntry((V + f), an), IntegerEntry(g, ao)] ++ Z(toString(R.caller), V)) ++ ap) | |
168 | + | else throw("Strict value is not equal to itself.") | |
169 | + | } | |
170 | + | } | |
171 | + | }) | |
172 | + | ||
173 | + | ||
174 | + | ||
175 | + | @Callable(R) | |
176 | + | func shutdown () = valueOrElse(Q(R), if (!(z)) | |
177 | + | then throw(("DApp is already suspended. Cause: " + valueOrElse(getString(this, c), "the cause wasn't specified"))) | |
178 | + | else X("Paused by admin")) | |
179 | + | ||
180 | + | ||
181 | + | ||
182 | + | @Callable(R) | |
183 | + | func activate () = valueOrElse(Q(R), if (z) | |
184 | + | then throw("DApp is already active") | |
185 | + | else [BooleanEntry(a, true), DeleteEntry(c)]) | |
186 | + | ||
187 | + |
github/deemru/w8io/169f3d6 19.23 ms ◑