tx · 3Tdkx8yoS5hubKuViF6czsLpQLN7iDWMSmuynZR2dTJJ

3N4LZUtraMUi2ABEMkny2jPuW4YtMb1Mptu:  -0.01400000 Waves

2021.01.23 22:26 [1366572] smart account 3N4LZUtraMUi2ABEMkny2jPuW4YtMb1Mptu > SELF 0.00000000 Waves

{ "type": 13, "id": "3Tdkx8yoS5hubKuViF6czsLpQLN7iDWMSmuynZR2dTJJ", "fee": 1400000, "feeAssetId": null, "timestamp": 1611430058739, "version": 1, "sender": "3N4LZUtraMUi2ABEMkny2jPuW4YtMb1Mptu", "senderPublicKey": "5HCGPojca71eK6HQ2LLv6xriZLjgp7V5febuNekZMZgX", "proofs": [ "24U2QuLGQ4sHemgRAtSwx6Suj1GJr1Ez5BLcED1q7be2SFtmVNYK9x2D5SKF5uSPLAy94q9kRCec6aHGjnyngjx2" ], "script": "base64:AAIEAAAAAAAAAB8IAhIAEgUKAwgIARIFCgMICAESBQoDCAgBEgASABIAAAAAJAAAAAAMYWRtaW5QdWJLZXkxAQAAACAQsOLq5CB1W9qjcQbPak46dbMqu5F1eul3gOhttbJnHwAAAAAMYWRtaW5QdWJLZXkyAQAAACAQsOLq5CB1W9qjcQbPak46dbMqu5F1eul3gOhttbJnHwAAAAAMYWRtaW5QdWJLZXkzAQAAACAQsOLq5CB1W9qjcQbPak46dbMqu5F1eul3gOhttbJnHwAAAAAUYWRtaW5QdWJLZXlTdGFydFN0b3ABAAAAIBCw4urkIHVb2qNxBs9qTjp1syq7kXV66XeA6G21smcfAAAAABJhZG1pblB1YktleVN0YWtpbmcBAAAAIBCw4urkIHVb2qNxBs9qTjp1syq7kXV66XeA6G21smcfAAAAAA9rZXlMYXN0SW50ZXJlc3QCAAAADWxhc3RfaW50ZXJlc3QAAAAAE2tleVVzZXJMYXN0SW50ZXJlc3QCAAAADl9sYXN0X2ludGVyZXN0AAAAABFrZXlVc2VyU1dPUEFtb3VudAIAAAAMX1NXT1BfYW1vdW50AAAAABRrZXlVc2VyR2V0QmFja0hlaWdodAIAAAAOX2dldEJhY2tIZWlnaHQAAAAAEmtleVRvdGFsU1dPUEFtb3VudAIAAAARdG90YWxfU1dPUF9hbW91bnQAAAAAFmtleVVzZXJWb3RlVG90YWxBbW91bnQCAAAAF190b3RhbF9TV09QX3ZvdGVfYW1vdW50AAAAABdrZXlVc2VyVm90ZU9wdGlvbkFtb3VudAIAAAATX1NXT1Bfb3B0aW9uX2Ftb3VudAAAAAAYa2V5VXNlclNXT1BDbGFpbWVkQW1vdW50AgAAABNTV09QX2NsYWltZWRfYW1vdW50AAAAABhrZXlUb3RhbFZvdGVPcHRpb25BbW91bnQCAAAAGHRvdGFsX1NXT1Bfb3B0aW9uX2Ftb3VudAAAAAALa2V5Vm90ZU5hbWUCAAAACXZvdGVfbmFtZQAAAAANa2V5T3B0aW9uTmFtZQIAAAAMX29wdGlvbl9uYW1lAAAAABRrZXlWb3RpbmdTdGFydEhlaWdodAIAAAAMX3N0YXJ0SGVpZ2h0AAAAAA9rZXlWb3RlRHVyYXRpb24CAAAADl92b3RlX2R1cmF0aW9uAAAAABJmYXJtaW5nU1dPUEFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVTlcsUatQotnzIPPH656EY3e5VrOUmsZmoAAAAACWtleVNXT1BpZAIAAAAHU1dPUF9pZAAAAAAEU1dPUAkAAlkAAAABCQEAAAARQGV4dHJOYXRpdmUoMTA1MykAAAACBQAAABJmYXJtaW5nU1dPUEFkZHJlc3MFAAAACWtleVNXT1BpZAAAAAAKc2NhbGVWYWx1ZQAAAAAABfXhAAEAAAASdGhyb3dOb3RFbm91Z2hTV09QAAAAAAkAAAIAAAABAgAAAEZOb3QgZW5vdWdoIFNXT1A6IHVzZXJTV09QQW1vdW50IC0gdXNlclRvdGFsVm90ZUFtb3VudCA8IHZvdGVTV09QQW1vdW50AQAAABNnZXRMYXN0SW50ZXJlc3RJbmZvAAAAAAQAAAAMbGFzdEludGVyZXN0CQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAD2tleUxhc3RJbnRlcmVzdAAAAAAAAAAAAAUAAAAMbGFzdEludGVyZXN0AQAAABFnZXRVc2VyU1dPUEFtb3VudAAAAAEAAAAEdXNlcgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgUAAAARa2V5VXNlclNXT1BBbW91bnQAAAAAAAAAAAABAAAAGGdldFVzZXJTV09QQ2xhaW1lZEFtb3VudAAAAAEAAAAEdXNlcgkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAQlAAAAAQUAAAAEdXNlcgUAAAAYa2V5VXNlclNXT1BDbGFpbWVkQW1vdW50AAAAAAAAAAAAAQAAABNnZXRVc2VySW50ZXJlc3RJbmZvAAAAAgAAAAR1c2VyAAAADGxhc3RJbnRlcmVzdAQAAAAOdXNlclNXT1BBbW91bnQJAQAAABFnZXRVc2VyU1dPUEFtb3VudAAAAAEFAAAABHVzZXIEAAAAEHVzZXJMYXN0SW50ZXJlc3QJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQAEJQAAAAEFAAAABHVzZXIFAAAAE2tleVVzZXJMYXN0SW50ZXJlc3QEAAAAFXVzZXJMYXN0SW50ZXJlc3RWYWx1ZQQAAAAHJG1hdGNoMAUAAAAQdXNlckxhc3RJbnRlcmVzdAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAABB1c2VyTGFzdEludGVyZXN0BQAAAAckbWF0Y2gwBQAAABB1c2VyTGFzdEludGVyZXN0BQAAAAxsYXN0SW50ZXJlc3QJAAUUAAAAAgUAAAAVdXNlckxhc3RJbnRlcmVzdFZhbHVlBQAAAA51c2VyU1dPUEFtb3VudAEAAAASZ2V0VG90YWxTV09QTG9ja2VkAAAAAAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAABJrZXlUb3RhbFNXT1BBbW91bnQAAAAAAAAAAAABAAAAFmdldFVzZXJUb3RhbFZvdGVBbW91bnQAAAABAAAABHVzZXIJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQAEJQAAAAEFAAAABHVzZXIFAAAAFmtleVVzZXJWb3RlVG90YWxBbW91bnQAAAAAAAAAAAABAAAAF2dldFVzZXJWb3RlT3B0aW9uQW1vdW50AAAAAQAAAAR1c2VyCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkABCUAAAABBQAAAAR1c2VyBQAAABdrZXlVc2VyVm90ZU9wdGlvbkFtb3VudAAAAAAAAAAAAAEAAAAUZ2V0Vm90aW5nU3RhcnRIZWlnaHQAAAABAAAACHZvdGVOYW1lCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAIdm90ZU5hbWUFAAAAFGtleVZvdGluZ1N0YXJ0SGVpZ2h0AAAAAAAAAAAAAQAAABNnZXRWb3RlT3B0aW9uQW1vdW50AAAAAwAAAAR1c2VyAAAACHZvdGVOYW1lAAAABm9wdGlvbgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACBAAAABR1c2VyVm90ZU9wdGlvbkFtb3VudAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uCQAEJQAAAAEFAAAABHVzZXIFAAAAF2tleVVzZXJWb3RlT3B0aW9uQW1vdW50BAAAAAR1dm9hBAAAAAckbWF0Y2gwBQAAABR1c2VyVm90ZU9wdGlvbkFtb3VudAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAR1dm9hBQAAAAckbWF0Y2gwBQAAAAR1dm9hAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BAAAAAR1dm9hBQAAAAckbWF0Y2gwAAAAAAAAAAAACQAAAgAAAAECAAAAC01hdGNoIGVycm9yBQAAAAR1dm9hCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAFE5vIGRhdGEgb24gdGhlIGtleTogBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uCQAEJQAAAAEFAAAABHVzZXIFAAAAF2tleVVzZXJWb3RlT3B0aW9uQW1vdW50AQAAAA9nZXRWb3RlRHVyYXRpb24AAAABAAAACHZvdGVOYW1lCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAh2b3RlTmFtZQUAAAAPa2V5Vm90ZUR1cmF0aW9uCQABLAAAAAIJAAEsAAAAAgIAAAAUTm8gZGF0YSBvbiB0aGUga2V5OiAFAAAACHZvdGVOYW1lBQAAAA9rZXlWb3RlRHVyYXRpb24BAAAAGGdldFRvdGFsVm90ZU9wdGlvbkFtb3VudAAAAAIAAAAIdm90ZU5hbWUAAAAGb3B0aW9uBAAAABV0b3RhbFZvdGVPcHRpb25BbW91bnQJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIFAAAACHZvdGVOYW1lBQAAAAZvcHRpb24FAAAAGGtleVRvdGFsVm90ZU9wdGlvbkFtb3VudAQAAAAEdHZvYQQAAAAHJG1hdGNoMAUAAAAVdG90YWxWb3RlT3B0aW9uQW1vdW50AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAABHR2b2EFAAAAByRtYXRjaDAFAAAABHR2b2EDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAABHR2b2EFAAAAByRtYXRjaDAAAAAAAAAAAAAJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IFAAAABHR2b2EBAAAAFGdldFVzZXJHZXRCYWNrQW1vdW50AAAABAAAAAh2b3RlTmFtZQAAAAZvcHRpb24AAAAEdXNlcgAAABFnZXRCYWNrU1dPUEhlaWdodAQAAAADa2V5CQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAh2b3RlTmFtZQIAAAABXwUAAAAGb3B0aW9uAgAAAAFfCQAEJQAAAAEFAAAABHVzZXICAAAAAV8JAAGkAAAAAQUAAAARZ2V0QmFja1NXT1BIZWlnaHQJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkJAAEsAAAAAgIAAAAUTm8gZGF0YSBvbiB0aGUga2V5OiAFAAAAA2tleQEAAAAJY2xhaW1DYWxjAAAAAQAAAAZjYWxsZXIEAAAAEHNoYXJlVG9rZW5Mb2NrZWQJAQAAABJnZXRUb3RhbFNXT1BMb2NrZWQAAAAABAAAAAxsYXN0SW50ZXJlc3QJAQAAABNnZXRMYXN0SW50ZXJlc3RJbmZvAAAAAAQAAAALJHQwNDQ1MjQ1MzkJAQAAABNnZXRVc2VySW50ZXJlc3RJbmZvAAAAAgUAAAAGY2FsbGVyBQAAAAxsYXN0SW50ZXJlc3QEAAAAEHVzZXJMYXN0SW50ZXJlc3QIBQAAAAskdDA0NDUyNDUzOQAAAAJfMQQAAAAVdXNlclNoYXJlVG9rZW5zQW1vdW50CAUAAAALJHQwNDQ1MjQ1MzkAAAACXzIEAAAAC2NsYWltQW1vdW50CQAAawAAAAMFAAAAFXVzZXJTaGFyZVRva2Vuc0Ftb3VudAkAAGUAAAACBQAAAAxsYXN0SW50ZXJlc3QFAAAAEHVzZXJMYXN0SW50ZXJlc3QFAAAACnNjYWxlVmFsdWUEAAAAD3VzZXJOZXdJbnRlcmVzdAUAAAAMbGFzdEludGVyZXN0CQAFFAAAAAIFAAAAD3VzZXJOZXdJbnRlcmVzdAUAAAALY2xhaW1BbW91bnQAAAAHAAAAAWkBAAAACGxvY2tTV09QAAAAAAQAAAALJHQwNDc1MTQ4MjYJAAUUAAAAAggJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50CAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkBAAAAAlwbXRBbW91bnQIBQAAAAskdDA0NzUxNDgyNgAAAAJfMQQAAAAKcG10QXNzZXRJZAgFAAAACyR0MDQ3NTE0ODI2AAAAAl8yAwkBAAAAAiE9AAAAAgUAAAAKcG10QXNzZXRJZAUAAAAEU1dPUAkAAAIAAAABAgAAABRJbmNvcnJlY3QgcG10QXNzZXRJZAQAAAAMbGFzdEludGVyZXN0CQEAAAATZ2V0TGFzdEludGVyZXN0SW5mbwAAAAAEAAAACyR0MDQ5NDI1MDI0CQEAAAATZ2V0VXNlckludGVyZXN0SW5mbwAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAMbGFzdEludGVyZXN0BAAAABB1c2VyTGFzdEludGVyZXN0CAUAAAALJHQwNDk0MjUwMjQAAAACXzEEAAAADnVzZXJTV09QQW1vdW50CAUAAAALJHQwNDk0MjUwMjQAAAACXzIEAAAAC2NsYWltQW1vdW50CQAAawAAAAMFAAAADnVzZXJTV09QQW1vdW50CQAAZQAAAAIFAAAADGxhc3RJbnRlcmVzdAUAAAAQdXNlckxhc3RJbnRlcmVzdAUAAAAKc2NhbGVWYWx1ZQQAAAARdXNlclNXT1BBbW91bnROZXcJAABkAAAAAgkAAGQAAAACBQAAAA51c2VyU1dPUEFtb3VudAUAAAAJcG10QW1vdW50BQAAAAtjbGFpbUFtb3VudAQAAAAPdXNlck5ld0ludGVyZXN0BQAAAAxsYXN0SW50ZXJlc3QEAAAAD3RvdGFsU1dPUEFtb3VudAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAAEnRvdGFsU1dPUExvY2tlZE5ldwkAAGQAAAACBQAAAA90b3RhbFNXT1BBbW91bnQFAAAACXBtdEFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAATa2V5VXNlckxhc3RJbnRlcmVzdAUAAAAPdXNlck5ld0ludGVyZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABFrZXlVc2VyU1dPUEFtb3VudAUAAAARdXNlclNXT1BBbW91bnROZXcJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEmtleVRvdGFsU1dPUEFtb3VudAUAAAASdG90YWxTV09QTG9ja2VkTmV3BQAAAANuaWwAAAABaQEAAAAEdm90ZQAAAAMAAAAIdm90ZU5hbWUAAAAGb3B0aW9uAAAAEXZvdGVBZGRTV09QQW1vdW50BAAAAA51c2VyU1dPUEFtb3VudAkBAAAAEWdldFVzZXJTV09QQW1vdW50AAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAABN1c2VyVG90YWxWb3RlQW1vdW50CQEAAAAWZ2V0VXNlclRvdGFsVm90ZUFtb3VudAAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAUdXNlclZvdGVPcHRpb25BbW91bnQJAQAAABNnZXRWb3RlT3B0aW9uQW1vdW50AAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uAwkAAGYAAAACBQAAABF2b3RlQWRkU1dPUEFtb3VudAkAAGUAAAACBQAAAA51c2VyU1dPUEFtb3VudAUAAAATdXNlclRvdGFsVm90ZUFtb3VudAkBAAAAEnRocm93Tm90RW5vdWdoU1dPUAAAAAAEAAAAFXRvdGFsVm90ZU9wdGlvbkFtb3VudAkBAAAAGGdldFRvdGFsVm90ZU9wdGlvbkFtb3VudAAAAAIFAAAACHZvdGVOYW1lBQAAAAZvcHRpb24EAAAADHZvdGVEdXJhdGlvbgkBAAAAD2dldFZvdGVEdXJhdGlvbgAAAAEFAAAACHZvdGVOYW1lBAAAABF2b3RpbmdTdGFydEhlaWdodAkBAAAAFGdldFZvdGluZ1N0YXJ0SGVpZ2h0AAAAAQUAAAAGb3B0aW9uBAAAABZ1c2VyVG90YWxWb3RlQW1vdW50TmV3CQAAZAAAAAIFAAAAE3VzZXJUb3RhbFZvdGVBbW91bnQFAAAAEXZvdGVBZGRTV09QQW1vdW50BAAAABd1c2VyVm90ZU9wdGlvbkFtb3VudE5ldwkAAGQAAAACBQAAABR1c2VyVm90ZU9wdGlvbkFtb3VudAUAAAARdm90ZUFkZFNXT1BBbW91bnQEAAAAE3ZvdGVPcHRpb25BbW91bnROZXcJAABkAAAAAgUAAAAVdG90YWxWb3RlT3B0aW9uQW1vdW50BQAAABF2b3RlQWRkU1dPUEFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAIdm90ZU5hbWUCAAAAAV8FAAAABm9wdGlvbgUAAAAYa2V5VG90YWxWb3RlT3B0aW9uQW1vdW50BQAAABN2b3RlT3B0aW9uQW1vdW50TmV3CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAAXa2V5VXNlclZvdGVPcHRpb25BbW91bnQFAAAAF3VzZXJWb3RlT3B0aW9uQW1vdW50TmV3CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABZrZXlVc2VyVm90ZVRvdGFsQW1vdW50BQAAABZ1c2VyVG90YWxWb3RlQW1vdW50TmV3BQAAAANuaWwAAAABaQEAAAAGdW52b3RlAAAAAwAAAAh2b3RlTmFtZQAAAAZvcHRpb24AAAAQdW52b3RlU1dPUEFtb3VudAQAAAAOdXNlclNXT1BBbW91bnQJAQAAABFnZXRVc2VyU1dPUEFtb3VudAAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAATdXNlclRvdGFsVm90ZUFtb3VudAkBAAAAFmdldFVzZXJUb3RhbFZvdGVBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAFHVzZXJWb3RlT3B0aW9uQW1vdW50CQEAAAATZ2V0Vm90ZU9wdGlvbkFtb3VudAAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAIdm90ZU5hbWUFAAAABm9wdGlvbgMJAABmAAAAAgUAAAAQdW52b3RlU1dPUEFtb3VudAUAAAAUdXNlclZvdGVPcHRpb25BbW91bnQJAQAAABJ0aHJvd05vdEVub3VnaFNXT1AAAAAABAAAABV0b3RhbFZvdGVPcHRpb25BbW91bnQJAQAAABhnZXRUb3RhbFZvdGVPcHRpb25BbW91bnQAAAACBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uBAAAAAx2b3RlRHVyYXRpb24JAQAAAA9nZXRWb3RlRHVyYXRpb24AAAABBQAAAAh2b3RlTmFtZQQAAAARdm90aW5nU3RhcnRIZWlnaHQJAQAAABRnZXRWb3RpbmdTdGFydEhlaWdodAAAAAEFAAAABm9wdGlvbgQAAAAXdXNlclZvdGVPcHRpb25BbW91bnROZXcJAABlAAAAAgUAAAAUdXNlclZvdGVPcHRpb25BbW91bnQFAAAAEHVudm90ZVNXT1BBbW91bnQEAAAAE3ZvdGVPcHRpb25BbW91bnROZXcJAABlAAAAAgUAAAAVdG90YWxWb3RlT3B0aW9uQW1vdW50BQAAABB1bnZvdGVTV09QQW1vdW50BAAAABFnZXRCYWNrU1dPUEhlaWdodAkAAGQAAAACBQAAABF2b3RpbmdTdGFydEhlaWdodAkAAGgAAAACAAAAAAAAAAACBQAAAAx2b3RlRHVyYXRpb24JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAACHZvdGVOYW1lAgAAAAFfBQAAAAZvcHRpb24FAAAAGGtleVRvdGFsVm90ZU9wdGlvbkFtb3VudAUAAAATdm90ZU9wdGlvbkFtb3VudE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAIdm90ZU5hbWUFAAAABm9wdGlvbgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAF2tleVVzZXJWb3RlT3B0aW9uQW1vdW50BQAAABd1c2VyVm90ZU9wdGlvbkFtb3VudE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAIdm90ZU5hbWUCAAAAAV8FAAAABm9wdGlvbgIAAAABXwkABCUAAAABCAUAAAABaQAAAAZjYWxsZXICAAAAAV8JAAGkAAAAAQUAAAARZ2V0QmFja1NXT1BIZWlnaHQFAAAAEHVudm90ZVNXT1BBbW91bnQFAAAAA25pbAAAAAFpAQAAABVnZXRCYWNrU1dPUGZyb21PcHRpb24AAAADAAAACHZvdGVOYW1lAAAABm9wdGlvbgAAABFnZXRCYWNrU1dPUEhlaWdodAQAAAATdXNlclRvdGFsVm90ZUFtb3VudAkBAAAAFmdldFVzZXJUb3RhbFZvdGVBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAEXVzZXJHZXRCYWNrQW1vdW50CQEAAAAUZ2V0VXNlckdldEJhY2tBbW91bnQAAAAEBQAAAAh2b3RlTmFtZQUAAAAGb3B0aW9uCAUAAAABaQAAAAZjYWxsZXIFAAAAEWdldEJhY2tTV09QSGVpZ2h0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAh2b3RlTmFtZQIAAAABXwUAAAAGb3B0aW9uAgAAAAFfCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgIAAAABXwkAAaQAAAABBQAAABFnZXRCYWNrU1dPUEhlaWdodAAAAAAAAAAAAAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAEXVzZXJHZXRCYWNrQW1vdW50BQAAAARTV09QBQAAAANuaWwAAAABaQEAAAAHYWlyRHJvcAAAAAAEAAAACyR0MDgzNjQ4NDM5CQAFFAAAAAIICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAAJcG10QW1vdW50CAUAAAALJHQwODM2NDg0MzkAAAACXzEEAAAACnBtdEFzc2V0SWQIBQAAAAskdDA4MzY0ODQzOQAAAAJfMgMJAQAAAAIhPQAAAAIFAAAACnBtdEFzc2V0SWQFAAAABFNXT1AJAAACAAAAAQIAAAAUSW5jb3JyZWN0IHBtdEFzc2V0SWQEAAAAD3RvdGFsU1dPUEFtb3VudAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAAEnRvdGFsU1dPUEFtb3VudE5ldwkAAGQAAAACBQAAAA90b3RhbFNXT1BBbW91bnQFAAAACXBtdEFtb3VudAQAAAAMbGFzdEludGVyZXN0CQEAAAATZ2V0TGFzdEludGVyZXN0SW5mbwAAAAAEAAAAC2ludGVyZXN0TmV3CQAAZAAAAAIFAAAADGxhc3RJbnRlcmVzdAkAAGsAAAADBQAAAAlwbXRBbW91bnQFAAAACnNjYWxlVmFsdWUFAAAAD3RvdGFsU1dPUEFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAPa2V5TGFzdEludGVyZXN0BQAAAAtpbnRlcmVzdE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAASa2V5VG90YWxTV09QQW1vdW50BQAAABJ0b3RhbFNXT1BBbW91bnROZXcFAAAAA25pbAAAAAFpAQAAAAljbGFpbVNXT1AAAAAABAAAAA90b3RhbFNXT1BMb2NrZWQJAQAAABJnZXRUb3RhbFNXT1BMb2NrZWQAAAAABAAAAAxsYXN0SW50ZXJlc3QJAQAAABNnZXRMYXN0SW50ZXJlc3RJbmZvAAAAAAQAAAALJHQwOTA1ODkxMTMJAQAAAAljbGFpbUNhbGMAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAD3VzZXJOZXdJbnRlcmVzdAgFAAAACyR0MDkwNTg5MTEzAAAAAl8xBAAAAAtjbGFpbUFtb3VudAgFAAAACyR0MDkwNTg5MTEzAAAAAl8yBAAAAA51c2VyVm90ZUFtb3VudAkBAAAAFmdldFVzZXJUb3RhbFZvdGVBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAADWF2YWlsYWJsZUZ1bmQJAABlAAAAAgkAAGQAAAACCQEAAAARZ2V0VXNlclNXT1BBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAAC2NsYWltQW1vdW50BQAAAA51c2VyVm90ZUFtb3VudAQAAAASdG90YWxTV09QTG9ja2VkTmV3CQAAZQAAAAIFAAAAD3RvdGFsU1dPUExvY2tlZAUAAAANYXZhaWxhYmxlRnVuZAQAAAARdXNlckNsYWltZWRBbW91bnQJAQAAABhnZXRVc2VyU1dPUENsYWltZWRBbW91bnQAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAFHVzZXJDbGFpbWVkQW1vdW50TmV3CQAAZAAAAAIFAAAAEXVzZXJDbGFpbWVkQW1vdW50BQAAAAtjbGFpbUFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAATa2V5VXNlckxhc3RJbnRlcmVzdAUAAAAPdXNlck5ld0ludGVyZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA9rZXlMYXN0SW50ZXJlc3QFAAAADGxhc3RJbnRlcmVzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAARa2V5VXNlclNXT1BBbW91bnQFAAAADnVzZXJWb3RlQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABJrZXlUb3RhbFNXT1BBbW91bnQFAAAAEnRvdGFsU1dPUExvY2tlZE5ldwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAYa2V5VXNlclNXT1BDbGFpbWVkQW1vdW50BQAAABF1c2VyQ2xhaW1lZEFtb3VudAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAADWF2YWlsYWJsZUZ1bmQFAAAABFNXT1AFAAAAA25pbAAAAAFpAQAAABFjbGFpbVNXT1BhbmRTdGFrZQAAAAAEAAAAD3RvdGFsU1dPUExvY2tlZAkBAAAAEmdldFRvdGFsU1dPUExvY2tlZAAAAAAEAAAADGxhc3RJbnRlcmVzdAkBAAAAE2dldExhc3RJbnRlcmVzdEluZm8AAAAABAAAAAwkdDA5OTkzMTAwNDgJAQAAAAljbGFpbUNhbGMAAAABCAUAAAABaQAAAAZjYWxsZXIEAAAAD3VzZXJOZXdJbnRlcmVzdAgFAAAADCR0MDk5OTMxMDA0OAAAAAJfMQQAAAALY2xhaW1BbW91bnQIBQAAAAwkdDA5OTkzMTAwNDgAAAACXzIEAAAADnVzZXJWb3RlQW1vdW50CQEAAAAWZ2V0VXNlclRvdGFsVm90ZUFtb3VudAAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAANYXZhaWxhYmxlRnVuZAkAAGUAAAACCQAAZAAAAAIJAQAAABFnZXRVc2VyU1dPUEFtb3VudAAAAAEIBQAAAAFpAAAABmNhbGxlcgUAAAALY2xhaW1BbW91bnQFAAAADnVzZXJWb3RlQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBQAAABNrZXlVc2VyTGFzdEludGVyZXN0BQAAAA91c2VyTmV3SW50ZXJlc3QJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAD2tleUxhc3RJbnRlcmVzdAUAAAAMbGFzdEludGVyZXN0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABJrZXlUb3RhbFNXT1BBbW91bnQFAAAADnVzZXJWb3RlQW1vdW50CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAANYXZhaWxhYmxlRnVuZAUAAAAEU1dPUAUAAAADbmlsAAAAACfK/RU=", "chainId": 84, "height": 1366572, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6Yzi2fRXUk2kgvu2xmBAt5oqtWQT5z74yD7N2wrHivi9 Next: ATW1fYLYmBUhupstNScsjioYutN8jagPrwZiQ7u5xPvz Diff:
OldNewDifferences
2424 let keyUserVoteTotalAmount = "_total_SWOP_vote_amount"
2525
2626 let keyUserVoteOptionAmount = "_SWOP_option_amount"
27+
28+let keyUserSWOPClaimedAmount = "SWOP_claimed_amount"
2729
2830 let keyTotalVoteOptionAmount = "total_SWOP_option_amount"
2931
5355
5456
5557 func getUserSWOPAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPAmount)), 0)
58+
59+
60+func getUserSWOPClaimedAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPClaimedAmount)), 0)
5661
5762
5863 func getUserInterestInfo (user,lastInterest) = {
120125 func claimCalc (caller) = {
121126 let shareTokenLocked = getTotalSWOPLocked()
122127 let lastInterest = getLastInterestInfo()
123- let $t042284315 = getUserInterestInfo(caller, lastInterest)
124- let userLastInterest = $t042284315._1
125- let userShareTokensAmount = $t042284315._2
128+ let $t044524539 = getUserInterestInfo(caller, lastInterest)
129+ let userLastInterest = $t044524539._1
130+ let userShareTokensAmount = $t044524539._2
126131 let claimAmount = fraction(userShareTokensAmount, (lastInterest - userLastInterest), scaleValue)
127132 let userNewInterest = lastInterest
128133 $Tuple2(userNewInterest, claimAmount)
131136
132137 @Callable(i)
133138 func lockSWOP () = {
134- let $t045274602 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
135- let pmtAmount = $t045274602._1
136- let pmtAssetId = $t045274602._2
139+ let $t047514826 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
140+ let pmtAmount = $t047514826._1
141+ let pmtAssetId = $t047514826._2
137142 if ((pmtAssetId != SWOP))
138143 then throw("Incorrect pmtAssetId")
139144 else {
140145 let lastInterest = getLastInterestInfo()
141- let $t047184800 = getUserInterestInfo(i.caller, lastInterest)
142- let userLastInterest = $t047184800._1
143- let userSWOPAmount = $t047184800._2
146+ let $t049425024 = getUserInterestInfo(i.caller, lastInterest)
147+ let userLastInterest = $t049425024._1
148+ let userSWOPAmount = $t049425024._2
144149 let claimAmount = fraction(userSWOPAmount, (lastInterest - userLastInterest), scaleValue)
145150 let userSWOPAmountNew = ((userSWOPAmount + pmtAmount) + claimAmount)
146151 let userNewInterest = lastInterest
203208
204209 @Callable(i)
205210 func airDrop () = {
206- let $t081408215 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
207- let pmtAmount = $t081408215._1
208- let pmtAssetId = $t081408215._2
211+ let $t083648439 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
212+ let pmtAmount = $t083648439._1
213+ let pmtAssetId = $t083648439._2
209214 if ((pmtAssetId != SWOP))
210215 then throw("Incorrect pmtAssetId")
211216 else {
223228 func claimSWOP () = {
224229 let totalSWOPLocked = getTotalSWOPLocked()
225230 let lastInterest = getLastInterestInfo()
226- let $t088348889 = claimCalc(i.caller)
227- let userNewInterest = $t088348889._1
228- let claimAmount = $t088348889._2
231+ let $t090589113 = claimCalc(i.caller)
232+ let userNewInterest = $t090589113._1
233+ let claimAmount = $t090589113._2
229234 let userVoteAmount = getUserTotalVoteAmount(i.caller)
230235 let availableFund = ((getUserSWOPAmount(i.caller) + claimAmount) - userVoteAmount)
231236 let totalSWOPLockedNew = (totalSWOPLocked - availableFund)
232-[IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry((toString(i.caller) + keyUserSWOPAmount), userVoteAmount), IntegerEntry(keyTotalSWOPAmount, totalSWOPLockedNew), ScriptTransfer(i.caller, availableFund, SWOP)]
237+ let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
238+ let userClaimedAmountNew = (userClaimedAmount + claimAmount)
239+[IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry((toString(i.caller) + keyUserSWOPAmount), userVoteAmount), IntegerEntry(keyTotalSWOPAmount, totalSWOPLockedNew), IntegerEntry(keyUserSWOPClaimedAmount, userClaimedAmount), ScriptTransfer(i.caller, availableFund, SWOP)]
233240 }
234241
235242
238245 func claimSWOPandStake () = {
239246 let totalSWOPLocked = getTotalSWOPLocked()
240247 let lastInterest = getLastInterestInfo()
241- let $t095769631 = claimCalc(i.caller)
242- let userNewInterest = $t095769631._1
243- let claimAmount = $t095769631._2
248+ let $t0999310048 = claimCalc(i.caller)
249+ let userNewInterest = $t0999310048._1
250+ let claimAmount = $t0999310048._2
244251 let userVoteAmount = getUserTotalVoteAmount(i.caller)
245252 let availableFund = ((getUserSWOPAmount(i.caller) + claimAmount) - userVoteAmount)
246253 [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry(keyTotalSWOPAmount, userVoteAmount), ScriptTransfer(i.caller, availableFund, SWOP)]
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let adminPubKey1 = base58'289xpUrYrKbLjaKkqH3XNhfecukcYRaDRT3JDrvkvQRU'
55
66 let adminPubKey2 = base58'289xpUrYrKbLjaKkqH3XNhfecukcYRaDRT3JDrvkvQRU'
77
88 let adminPubKey3 = base58'289xpUrYrKbLjaKkqH3XNhfecukcYRaDRT3JDrvkvQRU'
99
1010 let adminPubKeyStartStop = base58'289xpUrYrKbLjaKkqH3XNhfecukcYRaDRT3JDrvkvQRU'
1111
1212 let adminPubKeyStaking = base58'289xpUrYrKbLjaKkqH3XNhfecukcYRaDRT3JDrvkvQRU'
1313
1414 let keyLastInterest = "last_interest"
1515
1616 let keyUserLastInterest = "_last_interest"
1717
1818 let keyUserSWOPAmount = "_SWOP_amount"
1919
2020 let keyUserGetBackHeight = "_getBackHeight"
2121
2222 let keyTotalSWOPAmount = "total_SWOP_amount"
2323
2424 let keyUserVoteTotalAmount = "_total_SWOP_vote_amount"
2525
2626 let keyUserVoteOptionAmount = "_SWOP_option_amount"
27+
28+let keyUserSWOPClaimedAmount = "SWOP_claimed_amount"
2729
2830 let keyTotalVoteOptionAmount = "total_SWOP_option_amount"
2931
3032 let keyVoteName = "vote_name"
3133
3234 let keyOptionName = "_option_name"
3335
3436 let keyVotingStartHeight = "_startHeight"
3537
3638 let keyVoteDuration = "_vote_duration"
3739
3840 let farmingSWOPAddress = Address(base58'3NAqJ1CqP1iTzXR9wENKwEXHMvT4CS4YGBb')
3941
4042 let keySWOPid = "SWOP_id"
4143
4244 let SWOP = fromBase58String(getStringValue(farmingSWOPAddress, keySWOPid))
4345
4446 let scaleValue = 100000000
4547
4648 func throwNotEnoughSWOP () = throw("Not enough SWOP: userSWOPAmount - userTotalVoteAmount < voteSWOPAmount")
4749
4850
4951 func getLastInterestInfo () = {
5052 let lastInterest = valueOrElse(getInteger(this, keyLastInterest), 0)
5153 lastInterest
5254 }
5355
5456
5557 func getUserSWOPAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPAmount)), 0)
58+
59+
60+func getUserSWOPClaimedAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserSWOPClaimedAmount)), 0)
5661
5762
5863 func getUserInterestInfo (user,lastInterest) = {
5964 let userSWOPAmount = getUserSWOPAmount(user)
6065 let userLastInterest = getInteger(this, (toString(user) + keyUserLastInterest))
6166 let userLastInterestValue = match userLastInterest {
6267 case userLastInterest: Int =>
6368 userLastInterest
6469 case _ =>
6570 lastInterest
6671 }
6772 $Tuple2(userLastInterestValue, userSWOPAmount)
6873 }
6974
7075
7176 func getTotalSWOPLocked () = valueOrElse(getInteger(this, keyTotalSWOPAmount), 0)
7277
7378
7479 func getUserTotalVoteAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserVoteTotalAmount)), 0)
7580
7681
7782 func getUserVoteOptionAmount (user) = valueOrElse(getInteger(this, (toString(user) + keyUserVoteOptionAmount)), 0)
7883
7984
8085 func getVotingStartHeight (voteName) = valueOrElse(getInteger(this, (voteName + keyVotingStartHeight)), 0)
8186
8287
8388 func getVoteOptionAmount (user,voteName,option) = valueOrErrorMessage({
8489 let userVoteOptionAmount = getInteger(this, (((voteName + option) + toString(user)) + keyUserVoteOptionAmount))
8590 let uvoa = match userVoteOptionAmount {
8691 case uvoa: Int =>
8792 uvoa
8893 case uvoa: Unit =>
8994 0
9095 case _ =>
9196 throw("Match error")
9297 }
9398 uvoa
9499 }, (((("No data on the key: " + voteName) + option) + toString(user)) + keyUserVoteOptionAmount))
95100
96101
97102 func getVoteDuration (voteName) = valueOrErrorMessage(getInteger(this, (voteName + keyVoteDuration)), (("No data on the key: " + voteName) + keyVoteDuration))
98103
99104
100105 func getTotalVoteOptionAmount (voteName,option) = {
101106 let totalVoteOptionAmount = getInteger(this, ((voteName + option) + keyTotalVoteOptionAmount))
102107 let tvoa = match totalVoteOptionAmount {
103108 case tvoa: Int =>
104109 tvoa
105110 case tvoa: Unit =>
106111 0
107112 case _ =>
108113 throw("Match error")
109114 }
110115 tvoa
111116 }
112117
113118
114119 func getUserGetBackAmount (voteName,option,user,getBackSWOPHeight) = {
115120 let key = ((((((voteName + "_") + option) + "_") + toString(user)) + "_") + toString(getBackSWOPHeight))
116121 valueOrErrorMessage(getInteger(this, key), ("No data on the key: " + key))
117122 }
118123
119124
120125 func claimCalc (caller) = {
121126 let shareTokenLocked = getTotalSWOPLocked()
122127 let lastInterest = getLastInterestInfo()
123- let $t042284315 = getUserInterestInfo(caller, lastInterest)
124- let userLastInterest = $t042284315._1
125- let userShareTokensAmount = $t042284315._2
128+ let $t044524539 = getUserInterestInfo(caller, lastInterest)
129+ let userLastInterest = $t044524539._1
130+ let userShareTokensAmount = $t044524539._2
126131 let claimAmount = fraction(userShareTokensAmount, (lastInterest - userLastInterest), scaleValue)
127132 let userNewInterest = lastInterest
128133 $Tuple2(userNewInterest, claimAmount)
129134 }
130135
131136
132137 @Callable(i)
133138 func lockSWOP () = {
134- let $t045274602 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
135- let pmtAmount = $t045274602._1
136- let pmtAssetId = $t045274602._2
139+ let $t047514826 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
140+ let pmtAmount = $t047514826._1
141+ let pmtAssetId = $t047514826._2
137142 if ((pmtAssetId != SWOP))
138143 then throw("Incorrect pmtAssetId")
139144 else {
140145 let lastInterest = getLastInterestInfo()
141- let $t047184800 = getUserInterestInfo(i.caller, lastInterest)
142- let userLastInterest = $t047184800._1
143- let userSWOPAmount = $t047184800._2
146+ let $t049425024 = getUserInterestInfo(i.caller, lastInterest)
147+ let userLastInterest = $t049425024._1
148+ let userSWOPAmount = $t049425024._2
144149 let claimAmount = fraction(userSWOPAmount, (lastInterest - userLastInterest), scaleValue)
145150 let userSWOPAmountNew = ((userSWOPAmount + pmtAmount) + claimAmount)
146151 let userNewInterest = lastInterest
147152 let totalSWOPAmount = getTotalSWOPLocked()
148153 let totalSWOPLockedNew = (totalSWOPAmount + pmtAmount)
149154 [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry((toString(i.caller) + keyUserSWOPAmount), userSWOPAmountNew), IntegerEntry(keyTotalSWOPAmount, totalSWOPLockedNew)]
150155 }
151156 }
152157
153158
154159
155160 @Callable(i)
156161 func vote (voteName,option,voteAddSWOPAmount) = {
157162 let userSWOPAmount = getUserSWOPAmount(i.caller)
158163 let userTotalVoteAmount = getUserTotalVoteAmount(i.caller)
159164 let userVoteOptionAmount = getVoteOptionAmount(i.caller, voteName, option)
160165 if ((voteAddSWOPAmount > (userSWOPAmount - userTotalVoteAmount)))
161166 then throwNotEnoughSWOP()
162167 else {
163168 let totalVoteOptionAmount = getTotalVoteOptionAmount(voteName, option)
164169 let voteDuration = getVoteDuration(voteName)
165170 let votingStartHeight = getVotingStartHeight(option)
166171 let userTotalVoteAmountNew = (userTotalVoteAmount + voteAddSWOPAmount)
167172 let userVoteOptionAmountNew = (userVoteOptionAmount + voteAddSWOPAmount)
168173 let voteOptionAmountNew = (totalVoteOptionAmount + voteAddSWOPAmount)
169174 [IntegerEntry((((voteName + "_") + option) + keyTotalVoteOptionAmount), voteOptionAmountNew), IntegerEntry((((voteName + option) + toString(i.caller)) + keyUserVoteOptionAmount), userVoteOptionAmountNew), IntegerEntry((toString(i.caller) + keyUserVoteTotalAmount), userTotalVoteAmountNew)]
170175 }
171176 }
172177
173178
174179
175180 @Callable(i)
176181 func unvote (voteName,option,unvoteSWOPAmount) = {
177182 let userSWOPAmount = getUserSWOPAmount(i.caller)
178183 let userTotalVoteAmount = getUserTotalVoteAmount(i.caller)
179184 let userVoteOptionAmount = getVoteOptionAmount(i.caller, voteName, option)
180185 if ((unvoteSWOPAmount > userVoteOptionAmount))
181186 then throwNotEnoughSWOP()
182187 else {
183188 let totalVoteOptionAmount = getTotalVoteOptionAmount(voteName, option)
184189 let voteDuration = getVoteDuration(voteName)
185190 let votingStartHeight = getVotingStartHeight(option)
186191 let userVoteOptionAmountNew = (userVoteOptionAmount - unvoteSWOPAmount)
187192 let voteOptionAmountNew = (totalVoteOptionAmount - unvoteSWOPAmount)
188193 let getBackSWOPHeight = (votingStartHeight + (2 * voteDuration))
189194 [IntegerEntry((((voteName + "_") + option) + keyTotalVoteOptionAmount), voteOptionAmountNew), IntegerEntry((((voteName + option) + toString(i.caller)) + keyUserVoteOptionAmount), userVoteOptionAmountNew), IntegerEntry(((((((voteName + "_") + option) + "_") + toString(i.caller)) + "_") + toString(getBackSWOPHeight)), unvoteSWOPAmount)]
190195 }
191196 }
192197
193198
194199
195200 @Callable(i)
196201 func getBackSWOPfromOption (voteName,option,getBackSWOPHeight) = {
197202 let userTotalVoteAmount = getUserTotalVoteAmount(i.caller)
198203 let userGetBackAmount = getUserGetBackAmount(voteName, option, i.caller, getBackSWOPHeight)
199204 [IntegerEntry(((((((voteName + "_") + option) + "_") + toString(i.caller)) + "_") + toString(getBackSWOPHeight)), 0), ScriptTransfer(i.caller, userGetBackAmount, SWOP)]
200205 }
201206
202207
203208
204209 @Callable(i)
205210 func airDrop () = {
206- let $t081408215 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
207- let pmtAmount = $t081408215._1
208- let pmtAssetId = $t081408215._2
211+ let $t083648439 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
212+ let pmtAmount = $t083648439._1
213+ let pmtAssetId = $t083648439._2
209214 if ((pmtAssetId != SWOP))
210215 then throw("Incorrect pmtAssetId")
211216 else {
212217 let totalSWOPAmount = getTotalSWOPLocked()
213218 let totalSWOPAmountNew = (totalSWOPAmount + pmtAmount)
214219 let lastInterest = getLastInterestInfo()
215220 let interestNew = (lastInterest + fraction(pmtAmount, scaleValue, totalSWOPAmount))
216221 [IntegerEntry(keyLastInterest, interestNew), IntegerEntry(keyTotalSWOPAmount, totalSWOPAmountNew)]
217222 }
218223 }
219224
220225
221226
222227 @Callable(i)
223228 func claimSWOP () = {
224229 let totalSWOPLocked = getTotalSWOPLocked()
225230 let lastInterest = getLastInterestInfo()
226- let $t088348889 = claimCalc(i.caller)
227- let userNewInterest = $t088348889._1
228- let claimAmount = $t088348889._2
231+ let $t090589113 = claimCalc(i.caller)
232+ let userNewInterest = $t090589113._1
233+ let claimAmount = $t090589113._2
229234 let userVoteAmount = getUserTotalVoteAmount(i.caller)
230235 let availableFund = ((getUserSWOPAmount(i.caller) + claimAmount) - userVoteAmount)
231236 let totalSWOPLockedNew = (totalSWOPLocked - availableFund)
232-[IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry((toString(i.caller) + keyUserSWOPAmount), userVoteAmount), IntegerEntry(keyTotalSWOPAmount, totalSWOPLockedNew), ScriptTransfer(i.caller, availableFund, SWOP)]
237+ let userClaimedAmount = getUserSWOPClaimedAmount(i.caller)
238+ let userClaimedAmountNew = (userClaimedAmount + claimAmount)
239+[IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry((toString(i.caller) + keyUserSWOPAmount), userVoteAmount), IntegerEntry(keyTotalSWOPAmount, totalSWOPLockedNew), IntegerEntry(keyUserSWOPClaimedAmount, userClaimedAmount), ScriptTransfer(i.caller, availableFund, SWOP)]
233240 }
234241
235242
236243
237244 @Callable(i)
238245 func claimSWOPandStake () = {
239246 let totalSWOPLocked = getTotalSWOPLocked()
240247 let lastInterest = getLastInterestInfo()
241- let $t095769631 = claimCalc(i.caller)
242- let userNewInterest = $t095769631._1
243- let claimAmount = $t095769631._2
248+ let $t0999310048 = claimCalc(i.caller)
249+ let userNewInterest = $t0999310048._1
250+ let claimAmount = $t0999310048._2
244251 let userVoteAmount = getUserTotalVoteAmount(i.caller)
245252 let availableFund = ((getUserSWOPAmount(i.caller) + claimAmount) - userVoteAmount)
246253 [IntegerEntry((toString(i.caller) + keyUserLastInterest), userNewInterest), IntegerEntry(keyLastInterest, lastInterest), IntegerEntry(keyTotalSWOPAmount, userVoteAmount), ScriptTransfer(i.caller, availableFund, SWOP)]
247254 }
248255
249256

github/deemru/w8io/169f3d6 
62.79 ms