tx · 85GFjUDAkNCc99znEbT375KFA2rfWAXrkTS4gcSukfJj

3N3fgvubBghLctdyu3uXwTEzkpwZy8iodos:  -0.01000000 Waves

2020.03.20 06:21 [917100] smart account 3N3fgvubBghLctdyu3uXwTEzkpwZy8iodos > SELF 0.00000000 Waves

{ "type": 13, "id": "85GFjUDAkNCc99znEbT375KFA2rfWAXrkTS4gcSukfJj", "fee": 1000000, "feeAssetId": null, "timestamp": 1584674500006, "version": 1, "sender": "3N3fgvubBghLctdyu3uXwTEzkpwZy8iodos", "senderPublicKey": "7eeTYe6fyVFdQ1HcsZMVtBDQDidamUpAw6D32K7by4cf", "proofs": [ "3i4E5BNccbLEm2GRaV6FchpMndvjMHScv5RnKu6p4R7vwkYJFpqGRHFysUXuwmvY6u2KfpospPwsCHkcqEccB6ik" ], "script": "base64:AAIDAAAAAAAAAAsIARIAEgMKAQgSAAAAADoBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAADmdldFN0cmluZ0J5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAWZ2V0Qm9vbEJ5QWRkcmVzc0FuZEtleQAAAAIAAAAHYWRkcmVzcwAAAANrZXkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBwEAAAAYZ2V0U3RyaW5nQnlBZGRyZXNzQW5kS2V5AAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACAAAAB2FkZHJlc3MAAAADa2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAAB2FkZHJlc3MFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAAAAAAAAdXQVZFTEVUAAAAAAAF9eEAAAAAABBPUkRFUlNQTElUU1lNQk9MAgAAAAFfAAAAAAVQQVVMSQAAAAAAAA9CQAAAAAAPUEVSQ0VOVEFDQ1VSQUNZAAAAAAAAAAPoAAAAAAtNQVhESVNDT1VOVAAAAAAAAAAAMgAAAAAIQ0FOQ0VMRUQCAAAACGNhbmNlbGVkAAAAAANORVcCAAAAA25ldwAAAAAGRklMTEVEAgAAAAZmaWxsZWQAAAAAE05ldXRyaW5vQ29udHJhY3RLZXkCAAAAEW5ldXRyaW5vX2NvbnRyYWN0AAAAAAhQcmljZUtleQIAAAAFcHJpY2UAAAAADkJvbmRBc3NldElkS2V5AgAAAA1ib25kX2Fzc2V0X2lkAAAAABJOZXV0cmlub0Fzc2V0SWRLZXkCAAAAEW5ldXRyaW5vX2Fzc2V0X2lkAAAAABJDb250cm9sQ29udHJhY3RLZXkCAAAAEGNvbnRyb2xfY29udHJhY3QAAAAAEUJhbGFuY2VMb2NrZWRrS2V5AgAAAA1iYWxhbmNlX2xvY2tfAAAAABVXYXZlc0xvY2tlZEJhbGFuY2VLZXkJAAEsAAAAAgUAAAARQmFsYW5jZUxvY2tlZGtLZXkCAAAABXdhdmVzAAAAABhOZXV0cmlub0xvY2tlZEJhbGFuY2VLZXkJAAEsAAAAAgUAAAARQmFsYW5jZUxvY2tlZGtLZXkCAAAACG5ldXRyaW5vAAAAAA1GaXJzdE9yZGVyS2V5AgAAAAtvcmRlcl9maXJzdAAAAAAMTGFzdE9yZGVyS2V5AgAAAApvcmRlcl9sYXN0AQAAAA9nZXRPcmRlclByZXZLZXkAAAABAAAAB29yZGVySWQJAAEsAAAAAgIAAAALb3JkZXJfcHJldl8FAAAAB29yZGVySWQBAAAAD2dldE9yZGVyTmV4dEtleQAAAAEAAAAHb3JkZXJJZAkAASwAAAACAgAAAAtvcmRlcl9uZXh0XwUAAAAHb3JkZXJJZAEAAAAQZ2V0T3JkZXJUb3RhbEtleQAAAAEAAAAHb3JkZXJJZAkAASwAAAACAgAAAAxvcmRlcl90b3RhbF8FAAAAB29yZGVySWQBAAAAEGdldE9yZGVyT3duZXJLZXkAAAABAAAAB29yZGVySWQJAAEsAAAAAgIAAAAMb3JkZXJfb3duZXJfBQAAAAdvcmRlcklkAQAAABFnZXRPcmRlckhlaWdodEtleQAAAAEAAAAHb3JkZXJJZAkAASwAAAACAgAAAA1vcmRlcl9oZWlnaHRfBQAAAAdvcmRlcklkAQAAABFnZXRPcmRlclN0YXR1c0tleQAAAAEAAAAHb3JkZXJJZAkAASwAAAACAgAAAA1vcmRlcl9zdGF0dXNfBQAAAAdvcmRlcklkAQAAABZnZXRPcmRlckZpbGxlZFRvdGFsS2V5AAAAAQAAAAdvcmRlcklkCQABLAAAAAICAAAAE29yZGVyX2ZpbGxlZF90b3RhbF8FAAAAB29yZGVySWQBAAAAFGdldExhc3RPcmRlck93bmVyS2V5AAAAAQAAAAVvd25lcgkAASwAAAACAgAAABFsYXN0X29yZGVyX293bmVyXwUAAAAFb3duZXIBAAAAFmNvbnZlcnROZXV0cmlub1RvV2F2ZXMAAAACAAAABmFtb3VudAAAAAVwcmljZQkAAGsAAAADCQAAawAAAAMFAAAABmFtb3VudAAAAAAAAAAAZAUAAAAFcHJpY2UFAAAAB1dBVkVMRVQFAAAABVBBVUxJAQAAABZjb252ZXJ0V2F2ZXNUb05ldXRyaW5vAAAAAgAAAAZhbW91bnQAAAAFcHJpY2UJAABrAAAAAwkAAGsAAAADBQAAAAZhbW91bnQFAAAABXByaWNlAAAAAAAAAABkBQAAAAVQQVVMSQUAAAAHV0FWRUxFVAEAAAAVY29udmVydE5ldXRyaW5vVG9Cb25kAAAAAQAAAAZhbW91bnQJAABpAAAAAgUAAAAGYW1vdW50BQAAAAVQQVVMSQEAAAAVY29udmVydEJvbmRUb05ldXRyaW5vAAAAAQAAAAZhbW91bnQJAABoAAAAAgUAAAAGYW1vdW50BQAAAAVQQVVMSQEAAAASY29udmVydFdhdmVzVG9Cb25kAAAAAgAAAAZhbW91bnQAAAAFcHJpY2UJAQAAABVjb252ZXJ0TmV1dHJpbm9Ub0JvbmQAAAABCQEAAAAWY29udmVydFdhdmVzVG9OZXV0cmlubwAAAAIFAAAABmFtb3VudAUAAAAFcHJpY2UAAAAAEG5ldXRyaW5vQ29udHJhY3QJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAATTmV1dHJpbm9Db250cmFjdEtleQAAAAAPY29udHJvbENvbnRyYWN0CQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEJAQAAABhnZXRTdHJpbmdCeUFkZHJlc3NBbmRLZXkAAAACBQAAABBuZXV0cmlub0NvbnRyYWN0BQAAABJDb250cm9sQ29udHJhY3RLZXkAAAAAE2xpcXVpZGF0aW9uQ29udHJhY3QFAAAABHRoaXMAAAAAD25ldXRyaW5vQXNzZXRJZAkAAlkAAAABCQEAAAAYZ2V0U3RyaW5nQnlBZGRyZXNzQW5kS2V5AAAAAgUAAAAQbmV1dHJpbm9Db250cmFjdAUAAAASTmV1dHJpbm9Bc3NldElkS2V5AAAAAAtib25kQXNzZXRJZAkAAlkAAAABCQEAAAAYZ2V0U3RyaW5nQnlBZGRyZXNzQW5kS2V5AAAAAgUAAAAQbmV1dHJpbm9Db250cmFjdAUAAAAOQm9uZEFzc2V0SWRLZXkAAAAACmZpcnN0T3JkZXIJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEFAAAADUZpcnN0T3JkZXJLZXkAAAAACWxhc3RPcmRlcgkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAAMTGFzdE9yZGVyS2V5AAAAAAlpc0Jsb2NrZWQJAQAAABZnZXRCb29sQnlBZGRyZXNzQW5kS2V5AAAAAgUAAAAPY29udHJvbENvbnRyYWN0AgAAAAppc19ibG9ja2VkAAAAAAxjdXJyZW50UHJpY2UJAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACBQAAAA9jb250cm9sQ29udHJhY3QFAAAACFByaWNlS2V5AAAAABVuZXV0cmlub0xvY2tlZEJhbGFuY2UJAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACBQAAABBuZXV0cmlub0NvbnRyYWN0BQAAABhOZXV0cmlub0xvY2tlZEJhbGFuY2VLZXkAAAAAEndhdmVzTG9ja2VkQmFsYW5jZQkBAAAAGGdldE51bWJlckJ5QWRkcmVzc0FuZEtleQAAAAIFAAAAEG5ldXRyaW5vQ29udHJhY3QFAAAAFVdhdmVzTG9ja2VkQmFsYW5jZUtleQAAAAAHcmVzZXJ2ZQkAAGUAAAACCQEAAAAMd2F2ZXNCYWxhbmNlAAAAAQUAAAAQbmV1dHJpbm9Db250cmFjdAUAAAASd2F2ZXNMb2NrZWRCYWxhbmNlAAAAAA5uZXV0cmlub1N1cHBseQkAAGUAAAACCQAAZQAAAAIJAABkAAAAAgUAAAAVbmV1dHJpbm9Mb2NrZWRCYWxhbmNlCAkBAAAAB2V4dHJhY3QAAAABCQAD7AAAAAEFAAAAD25ldXRyaW5vQXNzZXRJZAAAAAhxdWFudGl0eQkAA+sAAAACBQAAABBuZXV0cmlub0NvbnRyYWN0BQAAAA9uZXV0cmlub0Fzc2V0SWQJAAPrAAAAAgUAAAATbGlxdWlkYXRpb25Db250cmFjdAUAAAAPbmV1dHJpbm9Bc3NldElkAAAAAAdzdXJwbHVzCQAAZQAAAAIJAQAAABZjb252ZXJ0V2F2ZXNUb05ldXRyaW5vAAAAAgUAAAAHcmVzZXJ2ZQUAAAAMY3VycmVudFByaWNlBQAAAA5uZXV0cmlub1N1cHBseQEAAAANZ2V0T3JkZXJUb3RhbAAAAAEAAAACaWQJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABBnZXRPcmRlclRvdGFsS2V5AAAAAQUAAAACaWQBAAAADWdldE9yZGVyT3duZXIAAAABAAAAAmlkCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAQZ2V0T3JkZXJPd25lcktleQAAAAEFAAAAAmlkAQAAAA5nZXRPcmRlclN0YXR1cwAAAAEAAAACaWQJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEJAQAAABFnZXRPcmRlclN0YXR1c0tleQAAAAEFAAAAAmlkAQAAABNnZXRPcmRlckZpbGxlZFRvdGFsAAAAAQAAAAJpZAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFmdldE9yZGVyRmlsbGVkVG90YWxLZXkAAAABBQAAAAJpZAEAAAAMZ2V0T3JkZXJQcmV2AAAAAQAAAAJpZAkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAD2dldE9yZGVyUHJldktleQAAAAEFAAAAAmlkAQAAAAxnZXRPcmRlck5leHQAAAABAAAAAmlkCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAPZ2V0T3JkZXJOZXh0S2V5AAAAAQUAAAACaWQBAAAADmdldE9yZGVySGVpZ2h0AAAAAQAAAAJpZAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAEWdldE9yZGVySGVpZ2h0S2V5AAAAAQUAAAACaWQBAAAAEWdldExhc3RPcmRlck93bmVyAAAAAQAAAAVvd25lcgkBAAAADmdl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eQAAAAEFAAAACm5ld09yZGVySWQFAAAAA05FVwUAAAADbmlsAAAAAWkBAAAAC2NhbmNlbE9yZGVyAAAAAQAAAAdvcmRlcklkBAAAAAVvd25lcgkBAAAADWdldE9yZGVyT3duZXIAAAABBQAAAAdvcmRlcklkBAAAAAZhbW91bnQJAABlAAAAAgkBAAAADWdldE9yZGVyVG90YWwAAAABBQAAAAdvcmRlcklkCQEAAAATZ2V0T3JkZXJGaWxsZWRUb3RhbAAAAAEFAAAAB29yZGVySWQEAAAACW5leHRPcmRlcgkBAAAADGdldE9yZGVyTmV4dAAAAAEFAAAAB29yZGVySWQEAAAACXByZXZPcmRlcgkBAAAADGdldE9yZGVyUHJldgAAAAEFAAAAB29yZGVySWQDBQAAAAlpc0Jsb2NrZWQJAAACAAAAAQIAAABaY29udHJhY3QgaXMgYmxvY2tlZCBieSBFTUVSR0VOQ1kgU0hVVERPV04gYWN0aW9ucyB1bnRpbGwgcmVhY3RpdmF0aW9uIGJ5IGVtZXJnZW5jeSBvcmFjbGVzAwkBAAAAAiE9AAAAAgUAAAAFb3duZXIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyCQAAAgAAAAECAAAAEXBlcm1pc3Npb24gZGVuaWVkAwkBAAAAAiE9AAAAAgkBAAAADmdldE9yZGVyU3RhdHVzAAAAAQUAAAAHb3JkZXJJZAUAAAADTkVXCQAAAgAAAAECAAAAFGludmFsaWQgb3JkZXIgc3RhdHVzCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAANRmlyc3RPcmRlcktleQMJAAAAAAAAAgUAAAAKZmlyc3RPcmRlcgUAAAAHb3JkZXJJZAUAAAAJbmV4dE9yZGVyBQAAAApmaXJzdE9yZGVyCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAxMYXN0T3JkZXJLZXkDCQAAAAAAAAIFAAAACWxhc3RPcmRlcgUAAAAHb3JkZXJJZAUAAAAJcHJldk9yZGVyBQAAAAlsYXN0T3JkZXIJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAA9nZXRPcmRlck5leHRLZXkAAAABBQAAAAlwcmV2T3JkZXIFAAAACW5leHRPcmRlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAD2dldE9yZGVyUHJldktleQAAAAEFAAAACW5leHRPcmRlcgUAAAAJcHJldk9yZGVyCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAARZ2V0T3JkZXJTdGF0dXNLZXkAAAABBQAAAAdvcmRlcklkBQAAAAhDQU5DRUxFRAUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAGYW1vdW50BQAAAAtib25kQXNzZXRJZAUAAAADbmlsAAAAAWkBAAAADWxpcXVpZGF0ZUJvbmQAAAAABAAAAA9zdXJwbHVzUG9zaXRpdmUDCQAAZwAAAAIAAAAAAAAAAAAFAAAAB3N1cnBsdXMAAAAAAAAAAAAFAAAAB3N1cnBsdXMEAAAAEmxpcXVpZGF0aW9uQmFsYW5jZQkAA+sAAAACBQAAAAR0aGlzBQAAAA9uZXV0cmlub0Fzc2V0SWQEAAAADHJldHVybkFtb3VudAMJAABnAAAAAgUAAAAPc3VycGx1c1Bvc2l0aXZlBQAAABJsaXF1aWRhdGlvbkJhbGFuY2UAAAAAAAAAAAAJAABlAAAAAgUAAAASbGlxdWlkYXRpb25CYWxhbmNlBQAAAA9zdXJwbHVzUG9zaXRpdmUEAAAAC3N1cnBsdXNCb25kCQEAAAAVY29udmVydE5ldXRyaW5vVG9Cb25kAAAAAQUAAAAPc3VycGx1c1Bvc2l0aXZlAwUAAAAJaXNCbG9ja2VkCQAAAgAAAAECAAAAWmNvbnRyYWN0IGlzIGJsb2NrZWQgYnkgRU1FUkdFTkNZIFNIVVRET1dOIGFjdGlvbnMgdW50aWxsIHJlYWN0aXZhdGlvbiBieSBlbWVyZ2VuY3kgb3JhY2xlcwMDCQAAAAAAAAIFAAAADHJldHVybkFtb3VudAAAAAAAAAAAAAkAAAAAAAACBQAAABJsaXF1aWRhdGlvbkJhbGFuY2UAAAAAAAAAAAAHCQAAAgAAAAECAAAAPWNhbm5vdCBsaXF1aWRhdGUgb3JkZXIgd2l0aG91dCBuZXV0cmlubyBvbiB0aGUgc21hcnQgY29udHJhY3QDCQAAZgAAAAIFAAAADHJldHVybkFtb3VudAAAAAAAAAAAAAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAABBuZXV0cmlub0NvbnRyYWN0BQAAAAxyZXR1cm5BbW91bnQFAAAAD25ldXRyaW5vQXNzZXRJZAUAAAADbmlsAwkAAGcAAAACAAAAAAAAAAAABQAAAAtzdXJwbHVzQm9uZAkAAAIAAAABAgAAAC50aGVyZSBpcyBubyBwcm9maWNpdCBvbiB0aGUgc21hcnQgY29udHJhY3Qgbm93AwkAAAAAAAACBQAAAApmaXJzdE9yZGVyAgAAAAAJAAACAAAAAQIAAAAPZW1wdHkgb3JkZXJib29rBAAAAAluZXh0T3JkZXIJAQAAAAxnZXRPcmRlck5leHQAAAABBQAAAApmaXJzdE9yZGVyBAAAAApvcmRlclRvdGFsCQEAAAANZ2V0T3JkZXJUb3RhbAAAAAEFAAAACmZpcnN0T3JkZXIEAAAACm9yZGVyT3duZXIJAQAAAA1nZXRPcmRlck93bmVyAAAAAQUAAAAKZmlyc3RPcmRlcgQAAAALZmlsbGVkVG90YWwJAQAAABNnZXRPcmRlckZpbGxlZFRvdGFsAAAAAQUAAAAKZmlyc3RPcmRlcgQAAAAGYW1vdW50CQAAZQAAAAIFAAAACm9yZGVyVG90YWwFAAAAC2ZpbGxlZFRvdGFsBAAAAAluZXdTdGF0dXMDCQAAZwAAAAIFAAAAC3N1cnBsdXNCb25kBQAAAAZhbW91bnQFAAAABkZJTExFRAUAAAADTkVXBAAAABNmaWxsYWJsZU9yZGVyQW1vdW50AwkAAGcAAAACBQAAAAtzdXJwbHVzQm9uZAUAAAAGYW1vdW50BQAAAAZhbW91bnQFAAAAC3N1cnBsdXNCb25kCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAD2dldE9yZGVyUHJldktleQAAAAEFAAAACW5leHRPcmRlcgMJAAAAAAAAAgUAAAAJbmV3U3RhdHVzBQAAAAZGSUxMRUQCAAAAAAUAAAAKZmlyc3RPcmRlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAANRmlyc3RPcmRlcktleQMJAAAAAAAAAgUAAAAJbmV3U3RhdHVzBQAAAAZGSUxMRUQFAAAACW5leHRPcmRlcgUAAAAKZmlyc3RPcmRlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAMTGFzdE9yZGVyS2V5AwMJAAAAAAAAAgUAAAAJbmV3U3RhdHVzBQAAAAZGSUxMRUQJAAAAAAAAAgUAAAAKZmlyc3RPcmRlcgUAAAAJbGFzdE9yZGVyBwIAAAAABQAAAAlsYXN0T3JkZXIJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABZnZXRPcmRlckZpbGxlZFRvdGFsS2V5AAAAAQUAAAAKZmlyc3RPcmRlcgkAAGQAAAACBQAAAAtmaWxsZWRUb3RhbAUAAAATZmlsbGFibGVPcmRlckFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAEWdldE9yZGVyU3RhdHVzS2V5AAAAAQUAAAAKZmlyc3RPcmRlcgUAAAAJbmV3U3RhdHVzBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABBQAAAApvcmRlck93bmVyCQEAAAAVY29udmVydEJvbmRUb05ldXRyaW5vAAAAAQUAAAATZmlsbGFibGVPcmRlckFtb3VudAUAAAAPbmV1dHJpbm9Bc3NldElkBQAAAANuaWwAAAAAohmxEw==", "chainId": 84, "height": 917100, "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 (g,b) = {
27+ let c = getBoolean(g, b)
28+ if ($isInstanceOf(c, "Boolean"))
29+ then {
30+ let d = c
31+ d
32+ }
33+ else false
34+ }
35+
36+
37+func h (g,b) = {
38+ let c = getString(g, b)
39+ if ($isInstanceOf(c, "String"))
40+ then {
41+ let d = c
42+ d
43+ }
44+ else ""
45+ }
46+
47+
48+func i (g,b) = {
49+ let c = getInteger(g, b)
50+ if ($isInstanceOf(c, "Int"))
51+ then {
52+ let d = c
53+ d
54+ }
55+ else 0
56+ }
57+
58+
59+let j = 100000000
60+
61+let k = "_"
62+
63+let l = 1000000
64+
65+let m = 1000
66+
67+let n = 50
68+
69+let o = "canceled"
70+
71+let p = "new"
72+
73+let q = "filled"
74+
75+let r = "neutrino_contract"
76+
77+let s = "price"
78+
79+let t = "bond_asset_id"
80+
81+let u = "neutrino_asset_id"
82+
83+let v = "control_contract"
84+
85+let w = "balance_lock_"
86+
87+let x = (w + "waves")
88+
89+let y = (w + "neutrino")
90+
91+let z = "order_first"
92+
93+let A = "order_last"
94+
95+func B (C) = ("order_prev_" + C)
96+
97+
98+func D (C) = ("order_next_" + C)
99+
100+
101+func E (C) = ("order_total_" + C)
102+
103+
104+func F (C) = ("order_owner_" + C)
105+
106+
107+func G (C) = ("order_height_" + C)
108+
109+
110+func H (C) = ("order_status_" + C)
111+
112+
113+func I (C) = ("order_filled_total_" + C)
114+
115+
116+func J (K) = ("last_order_owner_" + K)
117+
118+
119+func L (M,N) = fraction(fraction(M, 100, N), j, l)
120+
121+
122+func O (M,N) = fraction(fraction(M, N, 100), l, j)
123+
124+
125+func P (M) = (M / l)
126+
127+
128+func Q (M) = (M * l)
129+
130+
131+func R (M,N) = P(O(M, N))
132+
133+
134+let S = addressFromStringValue(e(r))
135+
136+let T = addressFromStringValue(h(S, v))
137+
138+let U = this
139+
140+let V = fromBase58String(h(S, u))
141+
142+let W = fromBase58String(h(S, t))
143+
144+let X = e(z)
145+
146+let Y = e(A)
147+
148+let Z = f(T, "is_blocked")
149+
150+let aa = i(T, s)
151+
152+let ab = i(S, y)
153+
154+let ac = i(S, x)
155+
156+let ad = (wavesBalance(S) - ac)
157+
158+let ae = (((ab + extract(assetInfo(V)).quantity) - assetBalance(S, V)) - assetBalance(U, V))
159+
160+let af = (O(ad, aa) - ae)
161+
162+func ag (ah) = a(E(ah))
163+
164+
165+func ai (ah) = e(F(ah))
166+
167+
168+func aj (ah) = e(H(ah))
169+
170+
171+func ak (ah) = a(I(ah))
172+
173+
174+func al (ah) = e(B(ah))
175+
176+
177+func am (ah) = e(D(ah))
178+
179+
180+func an (ah) = a(G(ah))
181+
182+
183+func ao (K) = e(J(K))
184+
185+
186+@Callable(ap)
187+func addLiquidationOrder () = {
188+ let aq = extract(ap.payment)
189+ let ar = toBase58String(keccak256((((toBytes(aq.amount) + ap.caller.bytes) + toBytes(height)) + ap.transactionId)))
190+ let as = am(Y)
191+ let at = aj(Y)
192+ let K = toString(ap.caller)
193+ if (Z)
194+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
195+ else if ((aq.assetId != W))
196+ then throw("can use appropriate neutrino bonds tokens only")
197+ else if ((ai(ar) != ""))
198+ then throw("an order is already exists")
199+ else if ((as != ""))
200+ then throw(("nextOrder is not last. Info:" + as))
201+ else if (if ((X != ""))
202+ then (Y == "")
203+ else false)
204+ then throw("invalid last order")
205+ else if (if ((X != ""))
206+ then (at != p)
207+ else false)
208+ then throw("last order status is not new")
209+ else WriteSet([DataEntry(J(K), ar), DataEntry(B(ar), Y), DataEntry(D(Y), if ((Y == ""))
210+ then ""
211+ else ar), DataEntry(z, if ((X == ""))
212+ then ar
213+ else X), DataEntry(A, ar), DataEntry(E(ar), aq.amount), DataEntry(F(ar), K), DataEntry(G(ar), height), DataEntry(H(ar), p)])
214+ }
215+
216+
217+
218+@Callable(ap)
219+func cancelOrder (C) = {
220+ let K = ai(C)
221+ let M = (ag(C) - ak(C))
222+ let as = am(C)
223+ let au = al(C)
224+ if (Z)
225+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
226+ else if ((K != toString(ap.caller)))
227+ then throw("permission denied")
228+ else if ((aj(C) != p))
229+ then throw("invalid order status")
230+ else ScriptResult(WriteSet([DataEntry(z, if ((X == C))
231+ then as
232+ else X), DataEntry(A, if ((Y == C))
233+ then au
234+ else Y), DataEntry(D(au), as), DataEntry(B(as), au), DataEntry(H(C), o)]), TransferSet([ScriptTransfer(ap.caller, M, W)]))
235+ }
236+
237+
238+
239+@Callable(ap)
240+func liquidateBond () = {
241+ let av = if ((0 >= af))
242+ then 0
243+ else af
244+ let aw = assetBalance(this, V)
245+ let ax = if ((av >= aw))
246+ then 0
247+ else (aw - av)
248+ let ay = P(av)
249+ if (Z)
250+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
251+ else if (if ((ax == 0))
252+ then (aw == 0)
253+ else false)
254+ then throw("cannot liquidate order without neutrino on the smart contract")
255+ else if ((ax > 0))
256+ then TransferSet([ScriptTransfer(S, ax, V)])
257+ else if ((0 >= ay))
258+ then throw("there is no proficit on the smart contract now")
259+ else if ((X == ""))
260+ then throw("empty orderbook")
261+ else {
262+ let as = am(X)
263+ let az = ag(X)
264+ let aA = ai(X)
265+ let aB = ak(X)
266+ let M = (az - aB)
267+ let aC = if ((ay >= M))
268+ then q
269+ else p
270+ let aD = if ((ay >= M))
271+ then M
272+ else ay
273+ ScriptResult(WriteSet([DataEntry(B(as), if ((aC == q))
274+ then ""
275+ else X), DataEntry(z, if ((aC == q))
276+ then as
277+ else X), DataEntry(A, if (if ((aC == q))
278+ then (X == Y)
279+ else false)
280+ then ""
281+ else Y), DataEntry(I(X), (aB + aD)), DataEntry(H(X), aC)]), TransferSet([ScriptTransfer(addressFromStringValue(aA), Q(aD), V)]))
282+ }
283+ }
284+
285+

github/deemru/w8io/169f3d6 
27.53 ms