tx · 6e3kFXYYQ7SvDKmagtBc9kT1BX1tauru1smHq2VCKXBi

3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b:  -0.01400000 Waves

2021.02.09 08:55 [1390251] smart account 3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b > SELF 0.00000000 Waves

{ "type": 13, "id": "6e3kFXYYQ7SvDKmagtBc9kT1BX1tauru1smHq2VCKXBi", "fee": 1400000, "feeAssetId": null, "timestamp": 1612850120644, "version": 2, "chainId": 84, "sender": "3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b", "senderPublicKey": "3BKFQLeo5ExZ5Y1pt9Ftzsno7aRwzD96zoYVHP3tcLgV", "proofs": [ "5fRq5WPrUnWk3bSQRVhXj5HgdDE1CLRSGeWgBeERtiJDBFi7j4ATd9nXCuVuUq2utV8tCBSEueaR5x4apZeNhr7J" ], "script": "base64:AAIDAAAAAAAAAA0IARIHCgUBAQEBCBIAAAAAEAAAAAANbG90dGVyeWFtb3VudAIAAAAHX2Ftb3VudAAAAAASbG90dGVyeXByb2JhYmlsaXR5AgAAAAxfcHJvYmFiaWxpdHkAAAAAGWxvdHRlcnlwcm9iYWJpbGl0eWRlY2ltYWwCAAAAFF9wcm9iYWJpbGl0eV9kZWNpbWFsAAAAAAxsb3R0ZXJ5UHJpY2UCAAAABl9wcmljZQAAAAANbG90dGVyeVByaWNlcwIAAAAPX2xvdHRlcnlfcHJpY2VzAAAAAA5sb3R0ZXJ5QXNzZXRJZAIAAAARX2xvdHRlcnlfYXNzZXRfaWQAAAAADWNvdW50T2ZQcmljZXMCAAAADV9jb3VudF9wcmljZXMAAAAAFGxhc3RIYXNoUmFuZG9tTnVtYmVyAgAAABVsYXN0X3NwaW5fcmFuZG9tX2hhc2gAAAAAE2xhc3RUb2tlblJhbmRvbUhhc2gCAAAAFmxhc3RfdG9rZW5fcmFuZG9tX2hhc2gAAAAACmRBcHBBZGRyZXMCAAAALDNCS0ZRTGVvNUV4WjVZMXB0OUZ0enNubzdhUnd6RDk2em9ZVkhQM3RjTGdWAQAAAApyYW5kb21pemVyAAAAAQAAAANpbnYEAAAACGxhc3RQbGF5BAAAAAckbWF0Y2gwCQAEHAAAAAIFAAAABHRoaXMFAAAAFGxhc3RIYXNoUmFuZG9tTnVtYmVyAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFzBQAAAAckbWF0Y2gwBQAAAAFzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0AQAAAAxXYXZlc0xvdHRvVjIJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IEAAAABHJhbmQJAADLAAAAAgkAAMsAAAACCQAAywAAAAIJAADLAAAAAgkAAMsAAAACBQAAAAhsYXN0UGxheQgFAAAAA2ludgAAAA10cmFuc2FjdGlvbklkCAUAAAADaW52AAAAD2NhbGxlclB1YmxpY0tleQgFAAAACWxhc3RCbG9jawAAABNnZW5lcmF0aW9uU2lnbmF0dXJlCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sA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ABFnZXRTaXplUHJpY2VBcnJheQAAAAAEAAAAEXVwZGF0ZUxvdHRlcnlQb29sCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5YW1vdW50BQAAAAZhbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAAEmxvdHRlcnlwcm9iYWJpbGl0eQUAAAALcHJvYmFiaWxpdHkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADGxvdHRlcnlQcmljZQUAAAAJcG9vbHByaWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5UHJpY2VzBQAAABJzdG9yZWRUb2tlbnNWYWx1ZXMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADWNvdW50T2ZQcmljZXMFAAAAC2NvdW50VG9rZW5zCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAABlsb3R0ZXJ5cHJvYmFiaWxpdHlkZWNpbWFsBQAAAAtwcm9iRGVjaW1hbAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAV0b2tlbgUAAAAObG90dGVyeUFzc2V0SWQFAAAAB2Fzc2V0SWQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAAE2xhc3RUb2tlblJhbmRvbUhhc2gFAAAABXRva2VuBQAAAANuaWwJAQAAAAxTY3JpcHRSZXN1bHQAAAACBQAAABF1cGRhdGVMb3R0ZXJ5UG9vbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAADbmlsBAAAABN0b3RhbFJlcXVpcmVkQW1vdW50CQAAaAAAAAIFAAAABmFtb3VudAUAAAAJcG9vbHByaWNlAwkAAGYAAAACBQAAABN0b3RhbFJlcXVpcmVkQW1vdW50AAAAAAAAAAAACQAAAgAAAAECAAAAIlBheW1lbnQgQmFsYW5jZSBpcyBub3QgZXF1YWwgcHJpY2UEAAAACXRlbXBWYWx1ZQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAA1sb3R0ZXJ5UHJpY2VzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAQAAAAKY29udGFpbktleQkABLMAAAACBQAAAAl0ZW1wVmFsdWUFAAAABXRva2VuBAAAABJzdG9yZWRUb2tlbnNWYWx1ZXMEAAAAByRtYXRjaDAFAAAACmNvbnRhaW5LZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQJAAEsAAAAAgkAASwAAAACBQAAAAl0ZW1wVmFsdWUFAAAABXRva2VuAgAAAAEsAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAXgFAAAAByRtYXRjaDAJAAACAAAAAQIAAAATVG9rZW4gaXMgZHVwbGljYXRlZAkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgQAAAALY291bnRUb2tlbnMJAQAAABFnZXRTaXplUHJpY2VBcnJheQAAAAAEAAAAEXVwZGF0ZUxvdHRlcnlQb29sCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5YW1vdW50BQAAAAZhbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAAEmxvdHRlcnlwcm9iYWJpbGl0eQUAAAALcHJvYmFiaWxpdHkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADGxvdHRlcnlQcmljZQUAAAAJcG9vbHByaWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5UHJpY2VzBQAAABJzdG9yZWRUb2tlbnNWYWx1ZXMJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADWNvdW50T2ZQcmljZXMFAAAAC2NvdW50VG9rZW5zCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAABlsb3R0ZXJ5cHJvYmFiaWxpdHlkZWNpbWFsBQAAAAtwcm9iRGVjaW1hbAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAV0b2tlbgUAAAAObG90dGVyeUFzc2V0SWQFAAAAB2Fzc2V0SWQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAAE2xhc3RUb2tlblJhbmRvbUhhc2gFAAAABXRva2VuBQAAAANuaWwJAQAAAAxTY3JpcHRSZXN1bHQAAAACBQAAABF1cGRhdGVMb3R0ZXJ5UG9vbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAADbmlsAAAAAWkBAAAACnN0YXJ0bG90dG8AAAAABAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAACHJhbmRoYXNoCQEAAAAKcmFuZG9taXplcgAAAAEFAAAAAWkEAAAADXNpemVUZW1wUHJpY2UJAQAAABFnZXRTaXplUHJpY2VBcnJheQAAAAAEAAAACXByaWNlTGlzdAkBAAAADWdldFByaWNlQXJyYXkAAAAABAAAAApyYW5kTnVtYmVyCQAEsQAAAAEFAAAACHJhbmRoYXNoBAAAAAx3aW5uaW5nVG9rZW4EAAAADSRsaXN0NzUzOTc1NzYFAAAACXByaWNlTGlzdAQAAAANJHNpemU3NTM5NzU3NgkAAZAAAAABBQAAAA0kbGlzdDc1Mzk3NTc2BAAAAA0kYWNjMDc1Mzk3NTc2BQAAAANuaWwDCQAAAAAAAAIFAAAADSRzaXplNzUzOTc1NzYAAAAAAAAAAAAFAAAADSRhY2MwNzUzOTc1NzYEAAAADSRhY2MxNzUzOTc1NzYJAQAAAA1wcm9jZWRMb3R0ZXJ5AAAAAgUAAAANJGFjYzA3NTM5NzU3NgkAAZEAAAACBQAAAA0kbGlzdDc1Mzk3NTc2AAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTc1Mzk3NTc2AAAAAAAAAAABBQAAAA0kYWNjMTc1Mzk3NTc2BAAAAA0kYWNjMjc1Mzk3NTc2CQEAAAANcHJvY2VkTG90dGVyeQAAAAIFAAAADSRhY2MxNzUzOTc1NzYJAAGRAAAAAgUAAAANJGxpc3Q3NTM5NzU3NgAAAAAAAAAAAQMJAAAAAAAAAgUAAAANJHNpemU3NTM5NzU3NgAAAAAAAAAAAgUAAAANJGFjYzI3NTM5NzU3NgQAAAANJGFjYzM3NTM5NzU3NgkBAAAADXByb2NlZExvdHRlcnkAAAACBQAAAA0kYWNjMjc1Mzk3NTc2CQABkQAAAAIFAAAADSRsaXN0NzUzOTc1NzYAAAAAAAAAAAIDCQAAAAAAAAIFAAAADSRzaXplNzUzOTc1NzYAAAAAAAAAAAMFAAAADSRhY2MzNzUzOTc1NzYEAAAADSRhY2M0NzUzOTc1NzYJAQAAAA1wcm9jZWRMb3R0ZXJ5AAAAAgUAAAANJGFjYzM3NTM5NzU3NgkAAZEAAAACBQAAAA0kbGlzdDc1Mzk3NTc2AAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTc1Mzk3NTc2AAAAAAAAAAAEBQAAAA0kYWNjNDc1Mzk3NTc2BAAAAA0kYWNjNTc1Mzk3NTc2CQEAAAANcHJvY2VkTG90dGVyeQAAAAIFAAAADSRhY2M0NzUzOTc1NzYJAAGRAAAAAgUAAAANJGxpc3Q3NTM5NzU3NgAAAAAAAAAABAMJAAAAAAAAAgUAAAANJHNpemU3NTM5NzU3NgAAAAAAAAAABQUAAAANJGFjYzU3NTM5NzU3NgQAAAANJGFjYzY3NTM5NzU3NgkBAAAADXByb2NlZExvdHRlcnkAAAACBQAAAA0kYWNjNTc1Mzk3NTc2CQABkQAAAAIFAAAADSRsaXN0NzUzOTc1NzYAAAAAAAAAAAUJAAACAAAAAQIAAAASTGlzdCBzaXplIGV4Y2VlZCA1BAAAAA9zaXplT2ZXaW5QcmljZXMJAAGQAAAAAQUAAAAMd2lubmluZ1Rva2VuAwkAAAAAAAACBQAAAA9zaXplT2ZXaW5QcmljZXMAAAAAAAAAAAEEAAAACXdyaXRlU2V0cwkBAAAACFdyaXRlU2V0AAAAAQUAAAADbmlsCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgUAAAAJd3JpdGVTZXRzCQEAAAALVHJhbnNmZXJTZXQAAAABBQAAAANuaWwEAAAABXRva2VuCQABkQAAAAIFAAAADHdpbm5pbmdUb2tlbgAAAAAAAAAAAQQAAAANY3VycmVudEFtb3VudAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAV0b2tlbgUAAAANbG90dGVyeWFtb3VudAMJAAAAAAAAAgUAAAANY3VycmVudEFtb3VudAAAAAAAAAAAAAkAAAIAAAABAgAAAA9BbW91bnQgZXhjZWVkZWQEAAAADGFjdHVhbEFtb3VudAkAAGUAAAACBQAAAA1jdXJyZW50QW1vdW50AAAAAAAAAAABBAAAAAp0b2tlblByaWNlCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAIFAAAABXRva2VuBQAAAAxsb3R0ZXJ5UHJpY2UEAAAADHRva2VuQXNzZXRJZAkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAV0b2tlbgUAAAAObG90dGVyeUFzc2V0SWQDCQAAAAAAAAIFAAAADGFjdHVhbEFtb3VudAAAAAAAAAAAAAQAAAAQYWN0dWFsTGlzdFByaWNlcwQAAAANJGxpc3Q4Mzk0ODQ0NAUAAAAJcHJpY2VMaXN0BAAAAA0kc2l6ZTgzOTQ4NDQ0CQABkAAAAAEFAAAADSRsaXN0ODM5NDg0NDQEAAAADSRhY2MwODM5NDg0NDQFAAAABXRva2VuAwkAAAAAAAACBQAAAA0kc2l6ZTgzOTQ4NDQ0AAAAAAAAAAAABQAAAA0kYWNjMDgzOTQ4NDQ0BAAAAA0kYWNjMTgzOTQ4NDQ0CQEAAAAXZ2VuZXJhdGVOZXdMaXN0T2ZQcmljZXMAAAACBQAAAA0kYWNjMDgzOTQ4NDQ0CQABkQAAAAIFAAAADSRsaXN0ODM5NDg0NDQAAAAAAAAAAAADCQAAAAAAAAIFAAAADSRzaXplODM5NDg0NDQAAAAAAAAAAAEFAAAADSRhY2MxODM5NDg0NDQEAAAADSRhY2MyODM5NDg0NDQJAQAAABdnZW5lcmF0ZU5ld0xpc3RPZlByaWNlcwAAAAIFAAAADSRhY2MxODM5NDg0NDQJAAGRAAAAAgUAAAANJGxpc3Q4Mzk0ODQ0NAAAAAAAAAAAAQMJAAAAAAAAAgUAAAANJHNpemU4Mzk0ODQ0NAAAAAAAAAAAAgUAAAANJGFjYzI4Mzk0ODQ0NAQAAAANJGFjYzM4Mzk0ODQ0NAkBAAAAF2dlbmVyYXRlTmV3TGlzdE9mUHJpY2VzAAAAAgUAAAANJGFjYzI4Mzk0ODQ0NAkAAZEAAAACBQAAAA0kbGlzdDgzOTQ4NDQ0AAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTgzOTQ4NDQ0AAAAAAAAAAADBQAAAA0kYWNjMzgzOTQ4NDQ0BAAAAA0kYWNjNDgzOTQ4NDQ0CQEAAAAXZ2VuZXJhdGVOZXdMaXN0T2ZQcmljZXMAAAACBQAAAA0kYWNjMzgzOTQ4NDQ0CQABkQAAAAIFAAAADSRsaXN0ODM5NDg0NDQAAAAAAAAAAAMDCQAAAAAAAAIFAAAADSRzaXplODM5NDg0NDQAAAAAAAAAAAQFAAAADSRhY2M0ODM5NDg0NDQEAAAADSRhY2M1ODM5NDg0NDQJAQAAABdnZW5lcmF0ZU5ld0xpc3RPZlByaWNlcwAAAAIFAAAADSRhY2M0ODM5NDg0NDQJAAGRAAAAAgUAAAANJGxpc3Q4Mzk0ODQ0NAAAAAAAAAAABAMJAAAAAAAAAgUAAAANJHNpemU4Mzk0ODQ0NAAAAAAAAAAABQUAAAANJGFjYzU4Mzk0ODQ0NAQAAAANJGFjYzY4Mzk0ODQ0NAkBAAAAF2dlbmVyYXRlTmV3TGlzdE9mUHJpY2VzAAAAAgUAAAANJGFjYzU4Mzk0ODQ0NAkAAZEAAAACBQAAAA0kbGlzdDgzOTQ4NDQ0AAAAAAAAAAAFCQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgNQQAAAAJd3JpdGVTZXRzCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACmN1cnJlbnRLZXkCAAAAD193aW5uaW5nX3Rva2VuXwUAAAAFdG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAKY3VycmVudEtleQIAAAATX3dpbmlubmluZ19hZGRyZXNzXwUAAAAKY3VycmVudEtleQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAV0b2tlbgUAAAANbG90dGVyeWFtb3VudAUAAAAMYWN0dWFsQW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5UHJpY2VzBQAAABBhY3R1YWxMaXN0UHJpY2VzCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABRsYXN0SGFzaFJhbmRvbU51bWJlcgUAAAAKcmFuZE51bWJlcgUAAAADbmlsAwkAAAAAAAACBQAAAAx0b2tlbkFzc2V0SWQCAAAAAAQAAAALd2luVHJhbnNmZXIJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAp0b2tlblByaWNlBQAAAAR1bml0BQAAAANuaWwJAQAAAAxTY3JpcHRSZXN1bHQAAAACBQAAAAl3cml0ZVNldHMFAAAAC3dpblRyYW5zZmVyBAAAAAt3aW5UcmFuc2ZlcgkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAACnRva2VuUHJpY2UFAAAABHVuaXQFAAAAA25pbAkBAAAADFNjcmlwdFJlc3VsdAAAAAIFAAAACXdyaXRlU2V0cwUAAAALd2luVHJhbnNmZXIEAAAACXdyaXRlU2V0cwkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAApjdXJyZW50S2V5AgAAAA9fd2lubmluZ190b2tlbl8FAAAABXRva2VuCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACmN1cnJlbnRLZXkCAAAAE193aW5pbm5pbmdfYWRkcmVzc18FAAAACmN1cnJlbnRLZXkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADWxvdHRlcnlhbW91bnQFAAAADGFjdHVhbEFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAUbGFzdEhhc2hSYW5kb21OdW1iZXIFAAAACnJhbmROdW1iZXIFAAAAA25pbAMJAAAAAAAAAgUAAAAMdG9rZW5Bc3NldElkAgAAAAAEAAAAC3dpblRyYW5zZmVyCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAKdG9rZW5QcmljZQUAAAAEdW5pdAUAAAADbmlsCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgUAAAAJd3JpdGVTZXRzBQAAAAt3aW5UcmFuc2ZlcgQAAAALd2luVHJhbnNmZXIJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAp0b2tlblByaWNlBQAAAAR1bml0BQAAAANuaWwJAQAAAAxTY3JpcHRSZXN1bHQAAAACBQAAAAl3cml0ZVNldHMFAAAAC3dpblRyYW5zZmVyAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBgkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXl1Id7S", "height": 1390251, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: kxr44ELuTr2kxKkMBmQ2HmjdA3uatVYrpx9kxUbBzTs Next: mydd2CASGsU2LFEGeN91Wa2Zd6bq1UCihuDkWyD1PBp Diff:
OldNewDifferences
103103 let lotteryAssetTN = if ((assetId == ""))
104104 then true
105105 else false
106- let currentAmountBalance = if ((paymentIsDefined == true))
107- then 0
108- else wavesBalance(this)
109- let totalRequiredAmount = (amount * poolprice)
110- if ((totalRequiredAmount > currentAmountBalance))
111- then throw("Payment Balance is not equal price")
106+ if ((paymentIsDefined == true))
107+ then {
108+ let payment = extract(i.payment)
109+ let totalRequiredAmount = (amount * poolprice)
110+ if ((totalRequiredAmount > 0))
111+ then throw("Payment Balance is not equal price")
112+ else {
113+ let tempValue = match getString(this, lotteryPrices) {
114+ case a: String =>
115+ a
116+ case _ =>
117+ ""
118+ }
119+ let containKey = indexOf(tempValue, token)
120+ let storedTokensValues = match containKey {
121+ case _: Unit =>
122+ ((tempValue + token) + ",")
123+ case x: Int =>
124+ throw("Token is duplicated")
125+ case _ =>
126+ throw("Match error")
127+ }
128+ let countTokens = getSizePriceArray()
129+ let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
130+ ScriptResult(updateLotteryPool, TransferSet(nil))
131+ }
132+ }
112133 else {
113- let tempValue = match getString(this, lotteryPrices) {
114- case a: String =>
115- a
116- case _ =>
117- ""
118- }
119- let containKey = indexOf(tempValue, token)
120- let storedTokensValues = match containKey {
121- case _: Unit =>
122- ((tempValue + token) + ",")
123- case x: Int =>
124- throw("Token is duplicated")
125- case _ =>
126- throw("Match error")
127- }
128- let countTokens = getSizePriceArray()
129- let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
130- ScriptResult(updateLotteryPool, TransferSet(nil))
134+ let totalRequiredAmount = (amount * poolprice)
135+ if ((totalRequiredAmount > 0))
136+ then throw("Payment Balance is not equal price")
137+ else {
138+ let tempValue = match getString(this, lotteryPrices) {
139+ case a: String =>
140+ a
141+ case _ =>
142+ ""
143+ }
144+ let containKey = indexOf(tempValue, token)
145+ let storedTokensValues = match containKey {
146+ case _: Unit =>
147+ ((tempValue + token) + ",")
148+ case x: Int =>
149+ throw("Token is duplicated")
150+ case _ =>
151+ throw("Match error")
152+ }
153+ let countTokens = getSizePriceArray()
154+ let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
155+ ScriptResult(updateLotteryPool, TransferSet(nil))
156+ }
131157 }
132158 }
133159
141167 let priceList = getPriceArray()
142168 let randNumber = toInt(randhash)
143169 let winningToken = {
144- let $list60316068 = priceList
145- let $size60316068 = size($list60316068)
146- let $acc060316068 = nil
147- if (($size60316068 == 0))
148- then $acc060316068
170+ let $list75397576 = priceList
171+ let $size75397576 = size($list75397576)
172+ let $acc075397576 = nil
173+ if (($size75397576 == 0))
174+ then $acc075397576
149175 else {
150- let $acc160316068 = procedLottery($acc060316068, $list60316068[0])
151- if (($size60316068 == 1))
152- then $acc160316068
176+ let $acc175397576 = procedLottery($acc075397576, $list75397576[0])
177+ if (($size75397576 == 1))
178+ then $acc175397576
153179 else {
154- let $acc260316068 = procedLottery($acc160316068, $list60316068[1])
155- if (($size60316068 == 2))
156- then $acc260316068
180+ let $acc275397576 = procedLottery($acc175397576, $list75397576[1])
181+ if (($size75397576 == 2))
182+ then $acc275397576
157183 else {
158- let $acc360316068 = procedLottery($acc260316068, $list60316068[2])
159- if (($size60316068 == 3))
160- then $acc360316068
184+ let $acc375397576 = procedLottery($acc275397576, $list75397576[2])
185+ if (($size75397576 == 3))
186+ then $acc375397576
161187 else {
162- let $acc460316068 = procedLottery($acc360316068, $list60316068[3])
163- if (($size60316068 == 4))
164- then $acc460316068
188+ let $acc475397576 = procedLottery($acc375397576, $list75397576[3])
189+ if (($size75397576 == 4))
190+ then $acc475397576
165191 else {
166- let $acc560316068 = procedLottery($acc460316068, $list60316068[4])
167- if (($size60316068 == 5))
168- then $acc560316068
192+ let $acc575397576 = procedLottery($acc475397576, $list75397576[4])
193+ if (($size75397576 == 5))
194+ then $acc575397576
169195 else {
170- let $acc660316068 = procedLottery($acc560316068, $list60316068[5])
196+ let $acc675397576 = procedLottery($acc575397576, $list75397576[5])
171197 throw("List size exceed 5")
172198 }
173199 }
194220 if ((actualAmount == 0))
195221 then {
196222 let actualListPrices = {
197- let $list68866936 = priceList
198- let $size68866936 = size($list68866936)
199- let $acc068866936 = token
200- if (($size68866936 == 0))
201- then $acc068866936
223+ let $list83948444 = priceList
224+ let $size83948444 = size($list83948444)
225+ let $acc083948444 = token
226+ if (($size83948444 == 0))
227+ then $acc083948444
202228 else {
203- let $acc168866936 = generateNewListOfPrices($acc068866936, $list68866936[0])
204- if (($size68866936 == 1))
205- then $acc168866936
229+ let $acc183948444 = generateNewListOfPrices($acc083948444, $list83948444[0])
230+ if (($size83948444 == 1))
231+ then $acc183948444
206232 else {
207- let $acc268866936 = generateNewListOfPrices($acc168866936, $list68866936[1])
208- if (($size68866936 == 2))
209- then $acc268866936
233+ let $acc283948444 = generateNewListOfPrices($acc183948444, $list83948444[1])
234+ if (($size83948444 == 2))
235+ then $acc283948444
210236 else {
211- let $acc368866936 = generateNewListOfPrices($acc268866936, $list68866936[2])
212- if (($size68866936 == 3))
213- then $acc368866936
237+ let $acc383948444 = generateNewListOfPrices($acc283948444, $list83948444[2])
238+ if (($size83948444 == 3))
239+ then $acc383948444
214240 else {
215- let $acc468866936 = generateNewListOfPrices($acc368866936, $list68866936[3])
216- if (($size68866936 == 4))
217- then $acc468866936
241+ let $acc483948444 = generateNewListOfPrices($acc383948444, $list83948444[3])
242+ if (($size83948444 == 4))
243+ then $acc483948444
218244 else {
219- let $acc568866936 = generateNewListOfPrices($acc468866936, $list68866936[4])
220- if (($size68866936 == 5))
221- then $acc568866936
245+ let $acc583948444 = generateNewListOfPrices($acc483948444, $list83948444[4])
246+ if (($size83948444 == 5))
247+ then $acc583948444
222248 else {
223- let $acc668866936 = generateNewListOfPrices($acc568866936, $list68866936[5])
249+ let $acc683948444 = generateNewListOfPrices($acc583948444, $list83948444[5])
224250 throw("List size exceed 5")
225251 }
226252 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let lotteryamount = "_amount"
55
66 let lotteryprobability = "_probability"
77
88 let lotteryprobabilitydecimal = "_probability_decimal"
99
1010 let lotteryPrice = "_price"
1111
1212 let lotteryPrices = "_lottery_prices"
1313
1414 let lotteryAssetId = "_lottery_asset_id"
1515
1616 let countOfPrices = "_count_prices"
1717
1818 let lastHashRandomNumber = "last_spin_random_hash"
1919
2020 let lastTokenRandomHash = "last_token_random_hash"
2121
2222 let dAppAddres = "3BKFQLeo5ExZ5Y1pt9Ftzsno7aRwzD96zoYVHP3tcLgV"
2323
2424 func randomizer (inv) = {
2525 let lastPlay = match getBinary(this, lastHashRandomNumber) {
2626 case s: ByteVector =>
2727 s
2828 case _: Unit =>
2929 base58'2ee4oFDYriWJ9EMeR'
3030 case _ =>
3131 throw("Match error")
3232 }
3333 let rand = (((((lastPlay + inv.transactionId) + inv.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
3434 sha256(rand)
3535 }
3636
3737
3838 func generatorRandomHash (inv) = {
3939 let lastHashForToken = match getBinary(this, lastTokenRandomHash) {
4040 case s: ByteVector =>
4141 s
4242 case _: Unit =>
4343 base58'4dD7osCQzvuXJdTiGfKvTwnKT'
4444 case _ =>
4545 throw("Match error")
4646 }
4747 let rand = (((((lastHashForToken + inv.transactionId) + inv.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
4848 sha256(rand)
4949 }
5050
5151
5252 func getSizePriceArray () = {
5353 let tempPrices = getStringValue(this, lotteryPrices)
5454 let trimPrices = take(tempPrices, (size(tempPrices) - 1))
5555 let pricesArray = split(trimPrices, ",")
5656 let listSize = size(pricesArray)
5757 listSize
5858 }
5959
6060
6161 func getPriceArray () = {
6262 let tempPrices = getStringValue(this, lotteryPrices)
6363 let trimPrices = take(tempPrices, (size(tempPrices) - 1))
6464 let newArray = split(trimPrices, ",")
6565 newArray
6666 }
6767
6868
6969 func generateNewListOfPrices (token,val) = {
7070 let indexOfComma = indexOf(token, ",")
7171 if ((indexOfComma == unit))
7272 then (val + ",")
7373 else ((token + val) + ",")
7474 }
7575
7676
7777 func procedLottery (win,token) = {
7878 let tokenProbability = getIntegerValue(this, (token + lotteryprobability))
7979 let tokenProbabilityDecimal = getIntegerValue(this, (token + lotteryprobabilitydecimal))
8080 let probabilityValue = (tokenProbabilityDecimal * 1000)
8181 let hash = (tokenProbabilityDecimal % probabilityValue)
8282 let sizeOfWin = size(win)
8383 if ((sizeOfWin == 1))
8484 then {
8585 let randomNumber = win[0]
8686 if ((probabilityValue > hash))
8787 then {
8888 let newList = token :: win
8989 newList
9090 }
9191 else win
9292 }
9393 else win
9494 }
9595
9696
9797 @Callable(i)
9898 func updateprobability (probability,amount,poolprice,probDecimal,assetId) = {
9999 let token = toBase64String(generatorRandomHash(i))
100100 let paymentIsDefined = if (!(isDefined(i.payment)))
101101 then false
102102 else true
103103 let lotteryAssetTN = if ((assetId == ""))
104104 then true
105105 else false
106- let currentAmountBalance = if ((paymentIsDefined == true))
107- then 0
108- else wavesBalance(this)
109- let totalRequiredAmount = (amount * poolprice)
110- if ((totalRequiredAmount > currentAmountBalance))
111- then throw("Payment Balance is not equal price")
106+ if ((paymentIsDefined == true))
107+ then {
108+ let payment = extract(i.payment)
109+ let totalRequiredAmount = (amount * poolprice)
110+ if ((totalRequiredAmount > 0))
111+ then throw("Payment Balance is not equal price")
112+ else {
113+ let tempValue = match getString(this, lotteryPrices) {
114+ case a: String =>
115+ a
116+ case _ =>
117+ ""
118+ }
119+ let containKey = indexOf(tempValue, token)
120+ let storedTokensValues = match containKey {
121+ case _: Unit =>
122+ ((tempValue + token) + ",")
123+ case x: Int =>
124+ throw("Token is duplicated")
125+ case _ =>
126+ throw("Match error")
127+ }
128+ let countTokens = getSizePriceArray()
129+ let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
130+ ScriptResult(updateLotteryPool, TransferSet(nil))
131+ }
132+ }
112133 else {
113- let tempValue = match getString(this, lotteryPrices) {
114- case a: String =>
115- a
116- case _ =>
117- ""
118- }
119- let containKey = indexOf(tempValue, token)
120- let storedTokensValues = match containKey {
121- case _: Unit =>
122- ((tempValue + token) + ",")
123- case x: Int =>
124- throw("Token is duplicated")
125- case _ =>
126- throw("Match error")
127- }
128- let countTokens = getSizePriceArray()
129- let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
130- ScriptResult(updateLotteryPool, TransferSet(nil))
134+ let totalRequiredAmount = (amount * poolprice)
135+ if ((totalRequiredAmount > 0))
136+ then throw("Payment Balance is not equal price")
137+ else {
138+ let tempValue = match getString(this, lotteryPrices) {
139+ case a: String =>
140+ a
141+ case _ =>
142+ ""
143+ }
144+ let containKey = indexOf(tempValue, token)
145+ let storedTokensValues = match containKey {
146+ case _: Unit =>
147+ ((tempValue + token) + ",")
148+ case x: Int =>
149+ throw("Token is duplicated")
150+ case _ =>
151+ throw("Match error")
152+ }
153+ let countTokens = getSizePriceArray()
154+ let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), countTokens), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
155+ ScriptResult(updateLotteryPool, TransferSet(nil))
156+ }
131157 }
132158 }
133159
134160
135161
136162 @Callable(i)
137163 func startlotto () = {
138164 let currentKey = toBase58String(i.caller.bytes)
139165 let randhash = randomizer(i)
140166 let sizeTempPrice = getSizePriceArray()
141167 let priceList = getPriceArray()
142168 let randNumber = toInt(randhash)
143169 let winningToken = {
144- let $list60316068 = priceList
145- let $size60316068 = size($list60316068)
146- let $acc060316068 = nil
147- if (($size60316068 == 0))
148- then $acc060316068
170+ let $list75397576 = priceList
171+ let $size75397576 = size($list75397576)
172+ let $acc075397576 = nil
173+ if (($size75397576 == 0))
174+ then $acc075397576
149175 else {
150- let $acc160316068 = procedLottery($acc060316068, $list60316068[0])
151- if (($size60316068 == 1))
152- then $acc160316068
176+ let $acc175397576 = procedLottery($acc075397576, $list75397576[0])
177+ if (($size75397576 == 1))
178+ then $acc175397576
153179 else {
154- let $acc260316068 = procedLottery($acc160316068, $list60316068[1])
155- if (($size60316068 == 2))
156- then $acc260316068
180+ let $acc275397576 = procedLottery($acc175397576, $list75397576[1])
181+ if (($size75397576 == 2))
182+ then $acc275397576
157183 else {
158- let $acc360316068 = procedLottery($acc260316068, $list60316068[2])
159- if (($size60316068 == 3))
160- then $acc360316068
184+ let $acc375397576 = procedLottery($acc275397576, $list75397576[2])
185+ if (($size75397576 == 3))
186+ then $acc375397576
161187 else {
162- let $acc460316068 = procedLottery($acc360316068, $list60316068[3])
163- if (($size60316068 == 4))
164- then $acc460316068
188+ let $acc475397576 = procedLottery($acc375397576, $list75397576[3])
189+ if (($size75397576 == 4))
190+ then $acc475397576
165191 else {
166- let $acc560316068 = procedLottery($acc460316068, $list60316068[4])
167- if (($size60316068 == 5))
168- then $acc560316068
192+ let $acc575397576 = procedLottery($acc475397576, $list75397576[4])
193+ if (($size75397576 == 5))
194+ then $acc575397576
169195 else {
170- let $acc660316068 = procedLottery($acc560316068, $list60316068[5])
196+ let $acc675397576 = procedLottery($acc575397576, $list75397576[5])
171197 throw("List size exceed 5")
172198 }
173199 }
174200 }
175201 }
176202 }
177203 }
178204 }
179205 let sizeOfWinPrices = size(winningToken)
180206 if ((sizeOfWinPrices == 1))
181207 then {
182208 let writeSets = WriteSet(nil)
183209 ScriptResult(writeSets, TransferSet(nil))
184210 }
185211 else {
186212 let token = winningToken[1]
187213 let currentAmount = getIntegerValue(this, (token + lotteryamount))
188214 if ((currentAmount == 0))
189215 then throw("Amount exceeded")
190216 else {
191217 let actualAmount = (currentAmount - 1)
192218 let tokenPrice = getIntegerValue(this, (token + lotteryPrice))
193219 let tokenAssetId = getStringValue(this, (token + lotteryAssetId))
194220 if ((actualAmount == 0))
195221 then {
196222 let actualListPrices = {
197- let $list68866936 = priceList
198- let $size68866936 = size($list68866936)
199- let $acc068866936 = token
200- if (($size68866936 == 0))
201- then $acc068866936
223+ let $list83948444 = priceList
224+ let $size83948444 = size($list83948444)
225+ let $acc083948444 = token
226+ if (($size83948444 == 0))
227+ then $acc083948444
202228 else {
203- let $acc168866936 = generateNewListOfPrices($acc068866936, $list68866936[0])
204- if (($size68866936 == 1))
205- then $acc168866936
229+ let $acc183948444 = generateNewListOfPrices($acc083948444, $list83948444[0])
230+ if (($size83948444 == 1))
231+ then $acc183948444
206232 else {
207- let $acc268866936 = generateNewListOfPrices($acc168866936, $list68866936[1])
208- if (($size68866936 == 2))
209- then $acc268866936
233+ let $acc283948444 = generateNewListOfPrices($acc183948444, $list83948444[1])
234+ if (($size83948444 == 2))
235+ then $acc283948444
210236 else {
211- let $acc368866936 = generateNewListOfPrices($acc268866936, $list68866936[2])
212- if (($size68866936 == 3))
213- then $acc368866936
237+ let $acc383948444 = generateNewListOfPrices($acc283948444, $list83948444[2])
238+ if (($size83948444 == 3))
239+ then $acc383948444
214240 else {
215- let $acc468866936 = generateNewListOfPrices($acc368866936, $list68866936[3])
216- if (($size68866936 == 4))
217- then $acc468866936
241+ let $acc483948444 = generateNewListOfPrices($acc383948444, $list83948444[3])
242+ if (($size83948444 == 4))
243+ then $acc483948444
218244 else {
219- let $acc568866936 = generateNewListOfPrices($acc468866936, $list68866936[4])
220- if (($size68866936 == 5))
221- then $acc568866936
245+ let $acc583948444 = generateNewListOfPrices($acc483948444, $list83948444[4])
246+ if (($size83948444 == 5))
247+ then $acc583948444
222248 else {
223- let $acc668866936 = generateNewListOfPrices($acc568866936, $list68866936[5])
249+ let $acc683948444 = generateNewListOfPrices($acc583948444, $list83948444[5])
224250 throw("List size exceed 5")
225251 }
226252 }
227253 }
228254 }
229255 }
230256 }
231257 }
232258 let writeSets = WriteSet([DataEntry((currentKey + "_winning_token_"), token), DataEntry((currentKey + "_wininning_address_"), currentKey), DataEntry((token + lotteryamount), actualAmount), DataEntry((token + lotteryPrices), actualListPrices), DataEntry(lastHashRandomNumber, randNumber)])
233259 if ((tokenAssetId == ""))
234260 then {
235261 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
236262 ScriptResult(writeSets, winTransfer)
237263 }
238264 else {
239265 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
240266 ScriptResult(writeSets, winTransfer)
241267 }
242268 }
243269 else {
244270 let writeSets = WriteSet([DataEntry((currentKey + "_winning_token_"), token), DataEntry((currentKey + "_wininning_address_"), currentKey), DataEntry((token + lotteryamount), actualAmount), DataEntry(lastHashRandomNumber, randNumber)])
245271 if ((tokenAssetId == ""))
246272 then {
247273 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
248274 ScriptResult(writeSets, winTransfer)
249275 }
250276 else {
251277 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
252278 ScriptResult(writeSets, winTransfer)
253279 }
254280 }
255281 }
256282 }
257283 }
258284
259285
260286 @Verifier(tx)
261287 func verify () = match tx {
262288 case _: DataTransaction =>
263289 true
264290 case _: SetScriptTransaction =>
265291 true
266292 case _ =>
267293 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
268294 }
269295

github/deemru/w8io/873ac7e 
98.28 ms