tx · EmXYdeHoPaaskeoD2m5thsGD2SG6Nt1YJQKL8Dyd5Gbi

3N5ecXT7MHB6z33Ms2Pvy6thNVBMeacaACo:  -0.01500000 Waves

2023.08.17 11:42 [2714369] smart account 3N5ecXT7MHB6z33Ms2Pvy6thNVBMeacaACo > SELF 0.00000000 Waves

{ "type": 13, "id": "EmXYdeHoPaaskeoD2m5thsGD2SG6Nt1YJQKL8Dyd5Gbi", "fee": 1500000, "feeAssetId": null, "timestamp": 1692261723327, "version": 2, "chainId": 84, "sender": "3N5ecXT7MHB6z33Ms2Pvy6thNVBMeacaACo", "senderPublicKey": "3WPc9rDre1YBs13teGnzt1PnEEQZXaaSTRU1tVuqLa4Z", "proofs": [ "tBGjNsML7HUbgBNwXvbBqgzRCWySgrxwzRbrZKunMW66BUSopuA3KhCaPhtfZczLA72KjefkVFDdb5M4Pg7uQsH", "2JftYc2k8epBDGKcLLvBDLCYEE8i1NBvtMLs2rpeFJLFx6RvksfpwnhC8qExkd64uGhuLuTsFib7Vzv4P3ZigFLa" ], "script": "base64:BgI/CAISDQoLGBgBAQEBAQEBCAgSABIAEgQKAgEIEgQKAgEIEgQKAgEIEgQKAgEIEgQKAgEIEgQKAgEIEgQKAgEIMQAUSU5JVElBTF9UT0tFTl9BTU9VTlQAgICapuqv4wEADVBFUkNFTlRfU0NBTEUA6AcADGtXRGFvQWRkcmVzcwILd0Rhb0FkZHJlc3MAC2tXRGFvQW1vdW50Agp3RGFvQW1vdW50AAlrV0Rhb0xvY2sCDndEYW9Mb2NrUGVyaW9kAAxrV0Rhb1Zlc3RpbmcCEXdEYW9WZXN0aW5nUGVyaW9kAA9rV0Rhb1dpdGhkcmF3ZWQCDndEYW9XaXRoZHJhd2VkAAxrVGVhbUFkZHJlc3MCC3RlYW1BZGRyZXNzAAtrVGVhbUFtb3VudAIKdGVhbUFtb3VudAAJa1RlYW1Mb2NrAg50ZWFtTG9ja1BlcmlvZAAMa1RlYW1WZXN0aW5nAhF0ZWFtVmVzdGluZ1BlcmlvZAAPa1RlYW1XaXRoZHJhd2VkAg50ZWFtV2l0aGRyYXdlZAAQa01hcmtldGluZ0Ftb3VudAIMbWFya2V0QW1vdW50ABRrTWFya2V0aW5nV2l0aGRyYXdlZAITbWFya2V0aW5nV2l0aGRyYXdlZAAOa1BhcnRuZXJBbW91bnQCDXBhcnRuZXJBbW91bnQAE2tQYXJ0bmVyc1dpdGhkcmF3ZWQCEnBhcnRuZXJzV2l0aGRyYXdlZAAQa1JldHJvRHJvcEFtb3VudAIPcmV0cm9Ecm9wQW1vdW50ABRrUmV0cm9Ecm9wV2l0aGRyYXdlZAITcmV0cm9Ecm9wV2l0aGRyYXdlZAARa0xlbmRSZXdhcmRBbW91bnQCEWxlbmRSZXdhcmRzQW1vdW50ABVrTGVuZFJld2FyZFdpdGhkcmF3ZWQCFGxlbmRSZXdhcmRXaXRoZHJhd2VkAA9rTFBSZXdhcmRBbW91bnQCDmxwUmV3YXJkQW1vdW50ABNrTFBSZXdhcmRXaXRoZHJhd2VkAhJscFJld2FyZFdpdGhkcmF3ZWQAD2tQb29sSW5pdEFtb3VudAIOcG9vbEluaXRBbW91bnQAE2tQb29sSW5pdFdpdGhkcmF3ZWQCEnBvb2xJbml0V2l0aGRyYXdlZAAQa0xhdW5jaHBhZEFtb3VudAIPbGF1bmNocGFkQW1vdW50ABRrTGF1bmNocGFkV2l0aGRyYXdlZAITbGF1bmNocGFkV2l0aGRyYXdlZAAMa0FYTFlUb2tlbklkAgtheGx5VG9rZW5JZAAMa1N0YXJ0SGVpZ2h0AgtzdGFydEhlaWdodAAJa0FkbWluMVBLAhVncm91cDFfYWRtaW4xX3B1Yl9rZXkACWtBZG1pbjJQSwIVZ3JvdXAxX2FkbWluMl9wdWJfa2V5AAlrQWRtaW4zUEsCFWdyb3VwMV9hZG1pbjNfcHViX2tleQARa0F4bHlNYWluQ29udHJhY3QCDG1haW5Db250cmFjdAAMa0F4bHlGYXJtaW5nAg5mYXJtaW5nQWRkcmVzcwAMbWFpbkNvbnRyYWN0CQERQGV4dHJOYXRpdmUoMTA2MikBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUEdGhpcwURa0F4bHlNYWluQ29udHJhY3QCGUNhbid0IGdldCBtYWluQ29udGFjdCBrZXkADmZhcm1pbmdBZGRyZXNzCQERQGV4dHJOYXRpdmUoMTA2MikBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUEdGhpcwUMa0F4bHlGYXJtaW5nAhxDYW4ndCBnZXQgZmFybWluZ0FkZHJlc3Mga2V5AAhhZG1pbjFQSwkA2QQBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUMbWFpbkNvbnRyYWN0BQlrQWRtaW4xUEsCEkNhbid0IGdldCBhZG1pbjFQSwAIYWRtaW4yUEsJANkEAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFDG1haW5Db250cmFjdAUJa0FkbWluMlBLAhJDYW4ndCBnZXQgYWRtaW4yUEsACGFkbWluM1BLCQDZBAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQxtYWluQ29udHJhY3QFCWtBZG1pbjNQSwISQ2FuJ3QgZ2V0IGFkbWluM1BLAAZBWExZSWQJANkEAQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwUMa0FYTFlUb2tlbklkAQtpc0FkbWluQ2FsbAEBaQMJAQ9jb250YWluc0VsZW1lbnQCCQDMCAIFCGFkbWluMVBLCQDMCAIFCGFkbWluMlBLCQDMCAIFCGFkbWluM1BLBQNuaWwIBQFpD2NhbGxlclB1YmxpY0tleQUEdW5pdAkAAgECKE9ubHkgYWRtaW4gZ3JvdXAxIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24BCmlzU2VsZkNhbGwBAWkDCQAAAggFAWkGY2FsbGVyBQR0aGlzBQR1bml0CQACAQIrT25seSBjb250cmFjdCBpdHNlbGYgY2FuIGNhbGwgdGhpcyBmdW5jdGlvbgENaXNGYXJtaW5nQ2FsbAEBaQMJAAACCAUBaQZjYWxsZXIFDmZhcm1pbmdBZGRyZXNzBQR1bml0CQACAQIsT25seSBmYXJtaW5nIGNvbnRyYWN0IGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24BGXBhcnNlUGVyY2VudFBhcmFtVG9BbW91bnQBBXBhcmFtBAdwZXJjZW50BAckbWF0Y2gwBQVwYXJhbQMJAAECBQckbWF0Y2gwAgNJbnQEAXAFByRtYXRjaDAFAXADCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFwBQckbWF0Y2gwCQETdmFsdWVPckVycm9yTWVzc2FnZQIJALYJAQUBcAIdQ2FuJ3QgcGFyc2UgcGVyY2VudCBpbiBwYXJhbXMJAAIBAgtNYXRjaCBlcnJvcgMDCQBnAgAABQdwZXJjZW50BgkAZwIFB3BlcmNlbnQFDVBFUkNFTlRfU0NBTEUJAAIBAjNwZXJjZW50IG11c3QgYmUgbnVtYmVyIGJldHdlZW4gMSgwLjEpIGFuZCA5OTkoOTkuOSkEBmFtb3VudAkAawMFFElOSVRJQUxfVE9LRU5fQU1PVU5UBQdwZXJjZW50BQ1QRVJDRU5UX1NDQUxFBQZhbW91bnQBFnBhcnNlTG9ja1Zlc3RpbmdQZXJpb2QCB2xvY2tTdHIHdmVzdFN0cgQKbG9ja1BlcmlvZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEFB2xvY2tTdHICF0Nhbid0IHBhcnNlIGxvY2sgcGVyaW9kBA12ZXN0aW5nUGVyaW9kCQETdmFsdWVPckVycm9yTWVzc2FnZQIJALYJAQUHdmVzdFN0cgIaQ2FuJ3QgcGFyc2UgdmVzdGluZyBwZXJpb2QDAwkAZwIAAAUKbG9ja1BlcmlvZAYJAGcCAAAFDXZlc3RpbmdQZXJpb2QJAAIBAjNsb2NrUGVyaW9kIGFuZCB2ZXN0aW5nUGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIDADCQBmAgUKbG9ja1BlcmlvZAUNdmVzdGluZ1BlcmlvZAkAAgECLXZlc3RpbmdQZXJpb2QgbXVzdCBiZSBncmVhdGVyIHRoYW4gbG9ja1BlcmlvZAkAlAoCBQpsb2NrUGVyaW9kBQ12ZXN0aW5nUGVyaW9kAQ92YWxpZGF0ZUFkZHJlc3MBBGFTdHIJAKUIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEFBGFTdHICF1dyb25nIGFkZHJlc3MgaW4gcGFyYW1zARNwYXJzZVdEQU9UZWFtUGFyYW1zAQZwYXJhbXMEB2FkZHJlc3MJAQ92YWxpZGF0ZUFkZHJlc3MBCQCRAwIFBnBhcmFtcwAABAZhbW91bnQJARlwYXJzZVBlcmNlbnRQYXJhbVRvQW1vdW50AQkAkQMCBQZwYXJhbXMAAQQLJHQwNDU0MTQ2MTkJARZwYXJzZUxvY2tWZXN0aW5nUGVyaW9kAgkAkQMCBQZwYXJhbXMAAgkAkQMCBQZwYXJhbXMAAwQKbG9ja1BlcmlvZAgFCyR0MDQ1NDE0NjE5Al8xBA12ZXN0aW5nUGVyaW9kCAULJHQwNDU0MTQ2MTkCXzIJAJYKBAUHYWRkcmVzcwUGYW1vdW50BQpsb2NrUGVyaW9kBQ12ZXN0aW5nUGVyaW9kAQtwYXJzZVBhcmFtcwEGcGFyYW1zBAdhZGRyZXNzCQEPdmFsaWRhdGVBZGRyZXNzAQkAkQMCBQZwYXJhbXMAAAQGYW1vdW50CQEZcGFyc2VQZXJjZW50UGFyYW1Ub0Ftb3VudAEJAJEDAgUGcGFyYW1zAAEJAJQKAgUHYWRkcmVzcwUGYW1vdW50AQ93aXRoZHJhd1RlYW1EYW8GC3RvdGFsQW1vdW50CmxvY2tQZXJpb2QNdmVzdGluZ1BlcmlvZAp3aXRoZHJhd2VkB2FkZHJlc3MEd0tleQQLc3RhcnRIZWlnaHQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFDGtTdGFydEhlaWdodAQIbG9ja1RpbGwJAGQCBQtzdGFydEhlaWdodAUKbG9ja1BlcmlvZAQLY2FuV2l0aGRyYXcJAGUCCQBrAwULdG90YWxBbW91bnQJAJcDAQkAzAgCCQBlAgUGaGVpZ2h0CQBkAgULc3RhcnRIZWlnaHQFCmxvY2tQZXJpb2QJAMwIAgUNdmVzdGluZ1BlcmlvZAUDbmlsBQ12ZXN0aW5nUGVyaW9kBQp3aXRoZHJhd2VkAwkAZwIFCGxvY2tUaWxsBQZoZWlnaHQJAAIBAhZMb2NrIHBlcmlvZCBpcyBub3QgZW5kAwkAZwIAAAULY2FuV2l0aGRyYXcJAAIBAhNOb3RoaW5nIHRvIHdpdGhkcmF3CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQR3S2V5CQBkAgUKd2l0aGRyYXdlZAULY2FuV2l0aGRyYXcJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUHYWRkcmVzcwULY2FuV2l0aGRyYXcFBkFYTFlJZAUDbmlsAQ93aXRoZHJhd1RvT3RoZXIFBmFtb3VudAt0b3RhbEFtb3VudAp3aXRoZHJhd2VkB2FkZHJlc3MEd0tleQMJAGcCAAAFBmFtb3VudAkAAgECHWFtb3VudCBtdXN0IGJlIHBvc2l0aXZlIHZhbHVlAwkAZgIJAGQCBQp3aXRoZHJhd2VkBQZhbW91bnQFC3RvdGFsQW1vdW50CQACAQkArAICCQCsAgIJAKwCAgIdWW91IGNhbid0IHdpdGhkcmF3IG1vcmUgdGhhbiAJAKQDAQULdG90YWxBbW91bnQCDyBZb3VyIGJhbGFuY2U6IAkApAMBCQBlAgULdG90YWxBbW91bnQFCndpdGhkcmF3ZWQJAMwIAgkBDEludGVnZXJFbnRyeQIFBHdLZXkJAGQCBQp3aXRoZHJhd2VkBQZhbW91bnQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUHYWRkcmVzcwUGYW1vdW50BQZBWExZSWQFA25pbAoBaQEEaW5pdAsKd0Rhb1BhcmFtcwp0ZWFtUGFyYW1zEG1hcmtldGluZ1BlcmNlbnQOcGFydG5lclBlcmNlbnQQcmV0cm9Ecm9wUGVyY2VudBFsZW5kUmV3YXJkUGVyY2VudA9scFJld2FyZFBlcmNlbnQPcG9vbEluaXRQZXJjZW50EGxhdW5jaHBhZFBlcmNlbnQQbWFpbkNvbnRyYWN0QWRkcgtmYXJtaW5nQWRkcgkBC3ZhbHVlT3JFbHNlAgkBCmlzU2VsZkNhbGwBBQFpAwkBAiE9AgkAkAMBBQp3RGFvUGFyYW1zAAQJAAIBAht3RGFvUGFyYW1zIG11c3QgaGF2ZSA0IGFyZ3MDCQECIT0CCQCQAwEFCnRlYW1QYXJhbXMABAkAAgECG3RlYW1QYXJhbXMgbXVzdCBoYXZlIDQgYXJncwMJAGcCAAAFEG1hcmtldGluZ1BlcmNlbnQJAAIBAhxtYXJrZXRpbmdQZXJjZW50IG11c3QgYmUgPiAwAwkAZwIAAAUOcGFydG5lclBlcmNlbnQJAAIBAhpwYXJ0bmVyUGVyY2VudCBtdXN0IGJlID4gMAMJAGcCAAAFEHJldHJvRHJvcFBlcmNlbnQJAAIBAhxyZXRyb0Ryb3BQZXJjZW50IG11c3QgYmUgPiAwAwkAZwIAAAURbGVuZFJld2FyZFBlcmNlbnQJAAIBAhxsZW5kUmV3YXJkUGFyYW1zIG11c3QgYmUgPiAwAwkAZwIAAAUPbHBSZXdhcmRQZXJjZW50CQACAQIabHBSZXdhcmRQYXJhbXMgbXVzdCBiZSA+IDADCQBnAgAABQ9wb29sSW5pdFBlcmNlbnQJAAIBAhpwb29sSW5pdFBhcmFtcyBtdXN0IGJlID4gMAMJAQEhAQkBCWlzRGVmaW5lZAEJAKYIAQULZmFybWluZ0FkZHIJAAIBAhVXcm9uZyBmYXJtaW5nIGFkZHJlc3MDCQEBIQEJAQlpc0RlZmluZWQBCQCmCAEFEG1haW5Db250cmFjdEFkZHIJAAIBAhtXcm9uZyBtYWluIGNvbnRyYWN0IGFkZHJlc3MECyR0MDcyNjk3MzY3CQETcGFyc2VXREFPVGVhbVBhcmFtcwEFCndEYW9QYXJhbXMEC3dEYW9BZGRyZXNzCAULJHQwNzI2OTczNjcCXzEECndEYW9BbW91bnQIBQskdDA3MjY5NzM2NwJfMgQOd0Rhb0xvY2tQZXJpb2QIBQskdDA3MjY5NzM2NwJfMwQRd0Rhb1Zlc3RpbmdQZXJpb2QIBQskdDA3MjY5NzM2NwJfNAQLJHQwNzM3MDc0NjgJARNwYXJzZVdEQU9UZWFtUGFyYW1zAQUKdGVhbVBhcmFtcwQLdGVhbUFkZHJlc3MIBQskdDA3MzcwNzQ2OAJfMQQKdGVhbUFtb3VudAgFCyR0MDczNzA3NDY4Al8yBA50ZWFtTG9ja1BlcmlvZAgFCyR0MDczNzA3NDY4Al8zBBF0ZWFtVmVzdGluZ1BlcmlvZAgFCyR0MDczNzA3NDY4Al80BAdtQW1vdW50CQEZcGFyc2VQZXJjZW50UGFyYW1Ub0Ftb3VudAEFEG1hcmtldGluZ1BlcmNlbnQEB3BBbW91bnQJARlwYXJzZVBlcmNlbnRQYXJhbVRvQW1vdW50AQUOcGFydG5lclBlcmNlbnQEB3JBbW91bnQJARlwYXJzZVBlcmNlbnRQYXJhbVRvQW1vdW50AQUQcmV0cm9Ecm9wUGVyY2VudAQHbEFtb3VudAkBGXBhcnNlUGVyY2VudFBhcmFtVG9BbW91bnQBBRFsZW5kUmV3YXJkUGVyY2VudAQIbHBBbW91bnQJARlwYXJzZVBlcmNlbnRQYXJhbVRvQW1vdW50AQUPbHBSZXdhcmRQZXJjZW50BAhwaUFtb3VudAkBGXBhcnNlUGVyY2VudFBhcmFtVG9BbW91bnQBBQ9wb29sSW5pdFBlcmNlbnQECGxhQW1vdW50CQEZcGFyc2VQZXJjZW50UGFyYW1Ub0Ftb3VudAEFEGxhdW5jaHBhZFBlcmNlbnQEA3N1bQkAZAIJAGQCCQBkAgkAZAIJAGQCCQBkAgkAZAIFCndEYW9BbW91bnQFCnRlYW1BbW91bnQFB21BbW91bnQFB3BBbW91bnQFB3JBbW91bnQFB2xBbW91bnQFCGxwQW1vdW50BQhwaUFtb3VudAMJAGYCBQNzdW0FFElOSVRJQUxfVE9LRU5fQU1PVU5UCQACAQIXV3JvbmcgcGVyY2VudHMoID4gMTAwJSkEBWlzc3VlCQDCCAUCBEFYTFkCE0FYTFkgcHJvdG9jb2wgdG9rZW4FFElOSVRJQUxfVE9LRU5fQU1PVU5UAAgHBAVpZFN0cgkA2AQBCQC4CAEFBWlzc3VlCQDMCAIJAQtTdHJpbmdFbnRyeQIFDGtXRGFvQWRkcmVzcwULd0Rhb0FkZHJlc3MJAMwIAgkBDEludGVnZXJFbnRyeQIFC2tXRGFvQW1vdW50BQp3RGFvQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQlrV0Rhb0xvY2sFDndEYW9Mb2NrUGVyaW9kCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQxrV0Rhb1Zlc3RpbmcFEXdEYW9WZXN0aW5nUGVyaW9kCQDMCAIJAQtTdHJpbmdFbnRyeQIFDGtUZWFtQWRkcmVzcwULdGVhbUFkZHJlc3MJAMwIAgkBDEludGVnZXJFbnRyeQIFC2tUZWFtQW1vdW50BQp0ZWFtQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQlrVGVhbUxvY2sFDnRlYW1Mb2NrUGVyaW9kCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQxrVGVhbVZlc3RpbmcFEXRlYW1WZXN0aW5nUGVyaW9kCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRBrTWFya2V0aW5nQW1vdW50BQdtQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ5rUGFydG5lckFtb3VudAUHcEFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUQa1JldHJvRHJvcEFtb3VudAUHckFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgURa0xlbmRSZXdhcmRBbW91bnQFB2xBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIFD2tMUFJld2FyZEFtb3VudAUIbHBBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIFD2tQb29sSW5pdEFtb3VudAUIcGlBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIFEGtMYXVuY2hwYWRBbW91bnQFCGxhQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQxrU3RhcnRIZWlnaHQFBmhlaWdodAkAzAgCCQELU3RyaW5nRW50cnkCBRFrQXhseU1haW5Db250cmFjdAUQbWFpbkNvbnRyYWN0QWRkcgkAzAgCCQELU3RyaW5nRW50cnkCBQxrQXhseUZhcm1pbmcFC2Zhcm1pbmdBZGRyCQDMCAIFBWlzc3VlCQDMCAIJAQtTdHJpbmdFbnRyeQIFDGtBWExZVG9rZW5JZAUFaWRTdHIFA25pbAFpAQx3aXRoZHJhd1dEYW8ABAZhbW91bnQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFC2tXRGFvQW1vdW50BApsb2NrUGVyaW9kCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBQlrV0Rhb0xvY2sEDXZlc3RpbmdQZXJpb2QJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFDGtXRGFvVmVzdGluZwQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwUMa1dEYW9BZGRyZXNzBAp3aXRoZHJhd2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFD2tXRGFvV2l0aGRyYXdlZAAACQEPd2l0aGRyYXdUZWFtRGFvBgUGYW1vdW50BQpsb2NrUGVyaW9kBQ12ZXN0aW5nUGVyaW9kBQp3aXRoZHJhd2VkBQdhZGRyZXNzBQ9rV0Rhb1dpdGhkcmF3ZWQBaQEMd2l0aGRyYXdUZWFtAAQGYW1vdW50CQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBQtrVGVhbUFtb3VudAQKbG9ja1BlcmlvZAkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwUJa1RlYW1Mb2NrBA12ZXN0aW5nUGVyaW9kCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBQxrVGVhbVZlc3RpbmcEB2FkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMFDGtUZWFtQWRkcmVzcwQKd2l0aGRyYXdlZAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQ9rVGVhbVdpdGhkcmF3ZWQAAAkBD3dpdGhkcmF3VGVhbURhbwYFBmFtb3VudAUKbG9ja1BlcmlvZAUNdmVzdGluZ1BlcmlvZAUKd2l0aGRyYXdlZAUHYWRkcmVzcwUPa1RlYW1XaXRoZHJhd2VkAWkBEXdpdGhkcmF3TWFya2V0aW5nAgZhbW91bnQKYWRkcmVzc1N0cgkBC3ZhbHVlT3JFbHNlAgkBCmlzU2VsZkNhbGwBBQFpBAt0b3RhbEFtb3VudAkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwUQa01hcmtldGluZ0Ftb3VudAQKd2l0aGRyYXdlZAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBRRrTWFya2V0aW5nV2l0aGRyYXdlZAAABAdhZGRyZXNzCQERQGV4dHJOYXRpdmUoMTA2MikBBQphZGRyZXNzU3RyCQEPd2l0aGRyYXdUb090aGVyBQUGYW1vdW50BQt0b3RhbEFtb3VudAUKd2l0aGRyYXdlZAUHYWRkcmVzcwUUa01hcmtldGluZ1dpdGhkcmF3ZWQBaQEQd2l0aGRyYXdQYXJ0bmVycwIGYW1vdW50CmFkZHJlc3NTdHIJAQt2YWx1ZU9yRWxzZQIJAQppc1NlbGZDYWxsAQUBaQQLdG90YWxBbW91bnQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFDmtQYXJ0bmVyQW1vdW50BAp3aXRoZHJhd2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFE2tQYXJ0bmVyc1dpdGhkcmF3ZWQAAAQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQUKYWRkcmVzc1N0cgkBD3dpdGhkcmF3VG9PdGhlcgUFBmFtb3VudAULdG90YWxBbW91bnQFCndpdGhkcmF3ZWQFB2FkZHJlc3MFE2tQYXJ0bmVyc1dpdGhkcmF3ZWQBaQERd2l0aGRyYXdSZXRyb0Ryb3ACBmFtb3VudAphZGRyZXNzU3RyCQELdmFsdWVPckVsc2UCCQEKaXNTZWxmQ2FsbAEFAWkEC3RvdGFsQW1vdW50CQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBRBrUmV0cm9Ecm9wQW1vdW50BAp3aXRoZHJhd2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFFGtSZXRyb0Ryb3BXaXRoZHJhd2VkAAAEB2FkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEFCmFkZHJlc3NTdHIJAQ93aXRoZHJhd1RvT3RoZXIFBQZhbW91bnQFC3RvdGFsQW1vdW50BQp3aXRoZHJhd2VkBQdhZGRyZXNzBRRrUmV0cm9Ecm9wV2l0aGRyYXdlZAFpARB3aXRoZHJhd1BvbGxJbml0AgZhbW91bnQKYWRkcmVzc1N0cgkBC3ZhbHVlT3JFbHNlAgkBCmlzU2VsZkNhbGwBBQFpBAt0b3RhbEFtb3VudAkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwUPa1Bvb2xJbml0QW1vdW50BAp3aXRoZHJhd2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFE2tQb29sSW5pdFdpdGhkcmF3ZWQAAAQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQUKYWRkcmVzc1N0cgkBD3dpdGhkcmF3VG9PdGhlcgUFBmFtb3VudAULdG90YWxBbW91bnQFCndpdGhkcmF3ZWQFB2FkZHJlc3MFE2tQb29sSW5pdFdpdGhkcmF3ZWQBaQESd2l0aGRyYXdMZW5kUmV3YXJkAgZhbW91bnQMYWRkcmVzc1RvU3RyCQELdmFsdWVPckVsc2UCCQENaXNGYXJtaW5nQ2FsbAEFAWkEC3RvdGFsQW1vdW50CQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzBRFrTGVuZFJld2FyZEFtb3VudAQKd2l0aGRyYXdlZAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBRVrTGVuZFJld2FyZFdpdGhkcmF3ZWQAAAQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQUMYWRkcmVzc1RvU3RyCQEPd2l0aGRyYXdUb090aGVyBQUGYW1vdW50BQt0b3RhbEFtb3VudAUKd2l0aGRyYXdlZAUHYWRkcmVzcwUVa0xlbmRSZXdhcmRXaXRoZHJhd2VkAWkBEHdpdGhkcmF3THBSZXdhcmQCBmFtb3VudAxhZGRyZXNzVG9TdHIJAQt2YWx1ZU9yRWxzZQIJAQ1pc0Zhcm1pbmdDYWxsAQUBaQQLdG90YWxBbW91bnQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFD2tMUFJld2FyZEFtb3VudAQKd2l0aGRyYXdlZAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBRNrTFBSZXdhcmRXaXRoZHJhd2VkAAAEB2FkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEFDGFkZHJlc3NUb1N0cgkBD3dpdGhkcmF3VG9PdGhlcgUFBmFtb3VudAULdG90YWxBbW91bnQFCndpdGhkcmF3ZWQFB2FkZHJlc3MFE2tMUFJld2FyZFdpdGhkcmF3ZWQBaQERd2l0aGRyYXdMYXVuY2hwYWQCBmFtb3VudAxhZGRyZXNzVG9TdHIJAQt2YWx1ZU9yRWxzZQIJAQppc1NlbGZDYWxsAQUBaQQLdG90YWxBbW91bnQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFEGtMYXVuY2hwYWRBbW91bnQECndpdGhkcmF3ZWQJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUUa0xhdW5jaHBhZFdpdGhkcmF3ZWQAAAQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQUMYWRkcmVzc1RvU3RyCQEPd2l0aGRyYXdUb090aGVyBQUGYW1vdW50BQt0b3RhbEFtb3VudAUKd2l0aGRyYXdlZAUHYWRkcmVzcwUUa0xhdW5jaHBhZFdpdGhkcmF3ZWQBAnR4AQZ2ZXJpZnkABBNtdWx0aVNpZ25lZEJ5QWRtaW5zBBJhZG1pblB1YktleTFTaWduZWQDCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAABQhhZG1pbjFQSwABAAAEEmFkbWluUHViS2V5MlNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAEFCGFkbWluMlBLAAEAAAQSYWRtaW5QdWJLZXkzU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAgUIYWRtaW4zUEsAAQAACQBnAgkAZAIJAGQCBRJhZG1pblB1YktleTFTaWduZWQFEmFkbWluUHViS2V5MlNpZ25lZAUSYWRtaW5QdWJLZXkzU2lnbmVkAAIEByRtYXRjaDAFAnR4AwkAAQIFByRtYXRjaDACF0ludm9rZVNjcmlwdFRyYW5zYWN0aW9uBANpbnYFByRtYXRjaDAEBmlzU2VsZgkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleQQKaXNSaWdodEZlZQMJAAACCAUDaW52A2ZlZQCguY4wCQAAAggFA2ludgpmZWVBc3NldElkBQR1bml0BwQKaXNJbml0Q2FsbAkAAAIIBQNpbnYIZnVuY3Rpb24CBGluaXQEDGlzbm9QYXltZW50cwkAAAIJAJADAQgFA2ludghwYXltZW50cwAAAwMDAwUKaXNSaWdodEZlZQUKaXNJbml0Q2FsbAcFBmlzU2VsZgcFDGlzbm9QYXltZW50cwcGBRNtdWx0aVNpZ25lZEJ5QWRtaW5zBRNtdWx0aVNpZ25lZEJ5QWRtaW5z9fZ53A==", "height": 2714369, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: G1pV52N1z7QqxYVYtun2utbbnWZcCguKSv8ZGyt1wgMa Next: none Diff:
OldNewDifferences
156156 func aj (ak,aa,ab,al,ag,am) = {
157157 let an = getIntegerValue(this, B)
158158 let ao = (an + aa)
159- let ap = ((an + aa) + ab)
160- let aq = (fraction(ak, min([(height - (an + aa)), ap]), ab) - al)
159+ let ap = (fraction(ak, min([(height - (an + aa)), ab]), ab) - al)
161160 if ((ao >= height))
162161 then throw("Lock period is not end")
163- else if ((0 >= aq))
162+ else if ((0 >= ap))
164163 then throw("Nothing to withdraw")
165- else [IntegerEntry(am, (al + aq)), ScriptTransfer(ag, aq, M)]
164+ else [IntegerEntry(am, (al + ap)), ScriptTransfer(ag, ap, M)]
166165 }
167166
168167
169-func ar (W,ak,al,ag,am) = if (((al + W) > ak))
170- then throw(((("You can't withdraw more than " + toString(ak)) + " already withdrawed: ") + toString(al)))
171- else [IntegerEntry(am, (al + W)), ScriptTransfer(ag, W, M)]
168+func aq (W,ak,al,ag,am) = if ((0 >= W))
169+ then throw("amount must be positive value")
170+ else if (((al + W) > ak))
171+ then throw(((("You can't withdraw more than " + toString(ak)) + " Your balance: ") + toString((ak - al))))
172+ else [IntegerEntry(am, (al + W)), ScriptTransfer(ag, W, M)]
172173
173174
174175 @Callable(O)
175-func init (as,at,au,av,aw,ax,ay,az,aA,aB,aC) = valueOrElse(P(O), if ((size(as) != 4))
176+func init (ar,as,at,au,av,aw,ax,ay,az,aA,aB) = valueOrElse(P(O), if ((size(ar) != 4))
176177 then throw("wDaoParams must have 4 args")
177- else if ((size(at) != 4))
178+ else if ((size(as) != 4))
178179 then throw("teamParams must have 4 args")
179- else if ((0 >= au))
180+ else if ((0 >= at))
180181 then throw("marketingPercent must be > 0")
181- else if ((0 >= av))
182+ else if ((0 >= au))
182183 then throw("partnerPercent must be > 0")
183- else if ((0 >= aw))
184+ else if ((0 >= av))
184185 then throw("retroDropPercent must be > 0")
185- else if ((0 >= ax))
186+ else if ((0 >= aw))
186187 then throw("lendRewardParams must be > 0")
187- else if ((0 >= ay))
188+ else if ((0 >= ax))
188189 then throw("lpRewardParams must be > 0")
189- else if ((0 >= az))
190+ else if ((0 >= ay))
190191 then throw("poolInitParams must be > 0")
191- else if (!(isDefined(addressFromString(aC))))
192+ else if (!(isDefined(addressFromString(aB))))
192193 then throw("Wrong farming address")
193- else if (!(isDefined(addressFromString(aB))))
194+ else if (!(isDefined(addressFromString(aA))))
194195 then throw("Wrong main contract address")
195196 else {
196- let aD = ae(as)
197- let aE = aD._1
198- let aF = aD._2
199- let aG = aD._3
200- let aH = aD._4
201- let aI = ae(at)
202- let aJ = aI._1
203- let aK = aI._2
204- let aL = aI._3
205- let aM = aI._4
197+ let aC = ae(ar)
198+ let aD = aC._1
199+ let aE = aC._2
200+ let aF = aC._3
201+ let aG = aC._4
202+ let aH = ae(as)
203+ let aI = aH._1
204+ let aJ = aH._2
205+ let aK = aH._3
206+ let aL = aH._4
207+ let aM = R(at)
206208 let aN = R(au)
207209 let aO = R(av)
208210 let aP = R(aw)
209211 let aQ = R(ax)
210212 let aR = R(ay)
211213 let aS = R(az)
212- let aT = R(aA)
213- let aU = (((((((aF + aK) + aN) + aO) + aP) + aQ) + aR) + aS)
214- if ((aU > a))
214+ let aT = (((((((aE + aJ) + aM) + aN) + aO) + aP) + aQ) + aR)
215+ if ((aT > a))
215216 then throw("Wrong percents( > 100%)")
216217 else {
217- let aV = Issue("AXLY", "AXLY protocol token", a, 8, false)
218- let aW = toBase58String(calculateAssetId(aV))
219-[StringEntry(c, aE), IntegerEntry(d, aF), IntegerEntry(e, aG), IntegerEntry(f, aH), StringEntry(h, aJ), IntegerEntry(i, aK), IntegerEntry(j, aL), IntegerEntry(k, aM), IntegerEntry(m, aN), IntegerEntry(o, aO), IntegerEntry(q, aP), IntegerEntry(s, aQ), IntegerEntry(u, aR), IntegerEntry(w, aS), IntegerEntry(y, aT), IntegerEntry(B, height), StringEntry(F, aB), StringEntry(G, aC), aV, StringEntry(A, aW)]
218+ let aU = Issue("AXLY", "AXLY protocol token", a, 8, false)
219+ let aV = toBase58String(calculateAssetId(aU))
220+[StringEntry(c, aD), IntegerEntry(d, aE), IntegerEntry(e, aF), IntegerEntry(f, aG), StringEntry(h, aI), IntegerEntry(i, aJ), IntegerEntry(j, aK), IntegerEntry(k, aL), IntegerEntry(m, aM), IntegerEntry(o, aN), IntegerEntry(q, aO), IntegerEntry(s, aP), IntegerEntry(u, aQ), IntegerEntry(w, aR), IntegerEntry(y, aS), IntegerEntry(B, height), StringEntry(F, aA), StringEntry(G, aB), aU, StringEntry(A, aV)]
220221 }
221222 })
222223
247248
248249
249250 @Callable(O)
250-func withdrawMarketing (W,aX) = valueOrElse(P(O), {
251+func withdrawMarketing (W,aW) = valueOrElse(P(O), {
251252 let ak = getIntegerValue(this, m)
252253 let al = valueOrElse(getInteger(this, n), 0)
253- let ag = addressFromStringValue(aX)
254- ar(W, ak, al, ag, n)
254+ let ag = addressFromStringValue(aW)
255+ aq(W, ak, al, ag, n)
255256 })
256257
257258
258259
259260 @Callable(O)
260-func withdrawPartners (W,aX) = valueOrElse(P(O), {
261+func withdrawPartners (W,aW) = valueOrElse(P(O), {
261262 let ak = getIntegerValue(this, o)
262263 let al = valueOrElse(getInteger(this, p), 0)
263- let ag = addressFromStringValue(aX)
264- ar(W, ak, al, ag, p)
264+ let ag = addressFromStringValue(aW)
265+ aq(W, ak, al, ag, p)
265266 })
266267
267268
268269
269270 @Callable(O)
270-func withdrawRetroDraop (W,aX) = valueOrElse(P(O), {
271+func withdrawRetroDrop (W,aW) = valueOrElse(P(O), {
271272 let ak = getIntegerValue(this, q)
272273 let al = valueOrElse(getInteger(this, r), 0)
273- let ag = addressFromStringValue(aX)
274- ar(W, ak, al, ag, r)
274+ let ag = addressFromStringValue(aW)
275+ aq(W, ak, al, ag, r)
275276 })
276277
277278
278279
279280 @Callable(O)
280-func withdrawPollInit (W,aX) = valueOrElse(P(O), {
281+func withdrawPollInit (W,aW) = valueOrElse(P(O), {
281282 let ak = getIntegerValue(this, w)
282283 let al = valueOrElse(getInteger(this, x), 0)
283- let ag = addressFromStringValue(aX)
284- ar(W, ak, al, ag, x)
284+ let ag = addressFromStringValue(aW)
285+ aq(W, ak, al, ag, x)
285286 })
286287
287288
288289
289290 @Callable(O)
290-func withdrawLendReward (W,aY) = valueOrElse(Q(O), {
291+func withdrawLendReward (W,aX) = valueOrElse(Q(O), {
291292 let ak = getIntegerValue(this, s)
292293 let al = valueOrElse(getInteger(this, t), 0)
293- let ag = addressFromStringValue(aY)
294- ar(W, ak, al, ag, t)
294+ let ag = addressFromStringValue(aX)
295+ aq(W, ak, al, ag, t)
295296 })
296297
297298
298299
299300 @Callable(O)
300-func withdrawLpReward (W,aY) = valueOrElse(Q(O), {
301+func withdrawLpReward (W,aX) = valueOrElse(Q(O), {
301302 let ak = getIntegerValue(this, u)
302303 let al = valueOrElse(getInteger(this, v), 0)
303- let ag = addressFromStringValue(aY)
304- ar(W, ak, al, ag, v)
304+ let ag = addressFromStringValue(aX)
305+ aq(W, ak, al, ag, v)
305306 })
306307
307308
308309
309310 @Callable(O)
310-func withdrawLaunchpad (W,aY) = valueOrElse(P(O), {
311+func withdrawLaunchpad (W,aX) = valueOrElse(P(O), {
311312 let ak = getIntegerValue(this, y)
312313 let al = valueOrElse(getInteger(this, z), 0)
313- let ag = addressFromStringValue(aY)
314- ar(W, ak, al, ag, z)
314+ let ag = addressFromStringValue(aX)
315+ aq(W, ak, al, ag, z)
315316 })
316317
317318
318-@Verifier(aZ)
319-func ba () = {
320- let bb = {
321- let bc = if (sigVerify(aZ.bodyBytes, aZ.proofs[0], J))
319+@Verifier(aY)
320+func aZ () = {
321+ let ba = {
322+ let bb = if (sigVerify(aY.bodyBytes, aY.proofs[0], J))
322323 then 1
323324 else 0
324- let bd = if (sigVerify(aZ.bodyBytes, aZ.proofs[1], K))
325+ let bc = if (sigVerify(aY.bodyBytes, aY.proofs[1], K))
325326 then 1
326327 else 0
327- let be = if (sigVerify(aZ.bodyBytes, aZ.proofs[2], L))
328+ let bd = if (sigVerify(aY.bodyBytes, aY.proofs[2], L))
328329 then 1
329330 else 0
330- (((bc + bd) + be) >= 2)
331+ (((bb + bc) + bd) >= 2)
331332 }
332- let U = aZ
333+ let U = aY
333334 if ($isInstanceOf(U, "InvokeScriptTransaction"))
334335 then {
335- let bf = U
336- let bg = sigVerify(aZ.bodyBytes, aZ.proofs[0], aZ.senderPublicKey)
337- let bh = if ((bf.fee == 100900000))
338- then (bf.feeAssetId == unit)
336+ let be = U
337+ let bf = sigVerify(aY.bodyBytes, aY.proofs[0], aY.senderPublicKey)
338+ let bg = if ((be.fee == 100900000))
339+ then (be.feeAssetId == unit)
339340 else false
340- let bi = (bf.function == "init")
341- let bj = (size(bf.payments) == 0)
342- if (if (if (if (bh)
341+ let bh = (be.function == "init")
342+ let bi = (size(be.payments) == 0)
343+ if (if (if (if (bg)
344+ then bh
345+ else false)
346+ then bf
347+ else false)
343348 then bi
344349 else false)
345- then bg
346- else false)
347- then bj
348- else false)
349350 then true
350- else bb
351+ else ba
351352 }
352- else bb
353+ else ba
353354 }
354355
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 1000000000000000
55
66 let b = 1000
77
88 let c = "wDaoAddress"
99
1010 let d = "wDaoAmount"
1111
1212 let e = "wDaoLockPeriod"
1313
1414 let f = "wDaoVestingPeriod"
1515
1616 let g = "wDaoWithdrawed"
1717
1818 let h = "teamAddress"
1919
2020 let i = "teamAmount"
2121
2222 let j = "teamLockPeriod"
2323
2424 let k = "teamVestingPeriod"
2525
2626 let l = "teamWithdrawed"
2727
2828 let m = "marketAmount"
2929
3030 let n = "marketingWithdrawed"
3131
3232 let o = "partnerAmount"
3333
3434 let p = "partnersWithdrawed"
3535
3636 let q = "retroDropAmount"
3737
3838 let r = "retroDropWithdrawed"
3939
4040 let s = "lendRewardsAmount"
4141
4242 let t = "lendRewardWithdrawed"
4343
4444 let u = "lpRewardAmount"
4545
4646 let v = "lpRewardWithdrawed"
4747
4848 let w = "poolInitAmount"
4949
5050 let x = "poolInitWithdrawed"
5151
5252 let y = "launchpadAmount"
5353
5454 let z = "launchpadWithdrawed"
5555
5656 let A = "axlyTokenId"
5757
5858 let B = "startHeight"
5959
6060 let C = "group1_admin1_pub_key"
6161
6262 let D = "group1_admin2_pub_key"
6363
6464 let E = "group1_admin3_pub_key"
6565
6666 let F = "mainContract"
6767
6868 let G = "farmingAddress"
6969
7070 let H = addressFromStringValue(valueOrErrorMessage(getString(this, F), "Can't get mainContact key"))
7171
7272 let I = addressFromStringValue(valueOrErrorMessage(getString(this, G), "Can't get farmingAddress key"))
7373
7474 let J = fromBase58String(valueOrErrorMessage(getString(H, C), "Can't get admin1PK"))
7575
7676 let K = fromBase58String(valueOrErrorMessage(getString(H, D), "Can't get admin2PK"))
7777
7878 let L = fromBase58String(valueOrErrorMessage(getString(H, E), "Can't get admin3PK"))
7979
8080 let M = fromBase58String(getStringValue(this, A))
8181
8282 func N (O) = if (containsElement([J, K, L], O.callerPublicKey))
8383 then unit
8484 else throw("Only admin group1 can call this function")
8585
8686
8787 func P (O) = if ((O.caller == this))
8888 then unit
8989 else throw("Only contract itself can call this function")
9090
9191
9292 func Q (O) = if ((O.caller == I))
9393 then unit
9494 else throw("Only farming contract can call this function")
9595
9696
9797 func R (S) = {
9898 let T = {
9999 let U = S
100100 if ($isInstanceOf(U, "Int"))
101101 then {
102102 let V = U
103103 V
104104 }
105105 else if ($isInstanceOf(U, "String"))
106106 then {
107107 let V = U
108108 valueOrErrorMessage(parseInt(V), "Can't parse percent in params")
109109 }
110110 else throw("Match error")
111111 }
112112 if (if ((0 >= T))
113113 then true
114114 else (T >= b))
115115 then throw("percent must be number between 1(0.1) and 999(99.9)")
116116 else {
117117 let W = fraction(a, T, b)
118118 W
119119 }
120120 }
121121
122122
123123 func X (Y,Z) = {
124124 let aa = valueOrErrorMessage(parseInt(Y), "Can't parse lock period")
125125 let ab = valueOrErrorMessage(parseInt(Z), "Can't parse vesting period")
126126 if (if ((0 >= aa))
127127 then true
128128 else (0 >= ab))
129129 then throw("lockPeriod and vestingPeriod must be greater than 0")
130130 else if ((aa > ab))
131131 then throw("vestingPeriod must be greater than lockPeriod")
132132 else $Tuple2(aa, ab)
133133 }
134134
135135
136136 func ac (ad) = toString(valueOrErrorMessage(addressFromString(ad), "Wrong address in params"))
137137
138138
139139 func ae (af) = {
140140 let ag = ac(af[0])
141141 let W = R(af[1])
142142 let ah = X(af[2], af[3])
143143 let aa = ah._1
144144 let ab = ah._2
145145 $Tuple4(ag, W, aa, ab)
146146 }
147147
148148
149149 func ai (af) = {
150150 let ag = ac(af[0])
151151 let W = R(af[1])
152152 $Tuple2(ag, W)
153153 }
154154
155155
156156 func aj (ak,aa,ab,al,ag,am) = {
157157 let an = getIntegerValue(this, B)
158158 let ao = (an + aa)
159- let ap = ((an + aa) + ab)
160- let aq = (fraction(ak, min([(height - (an + aa)), ap]), ab) - al)
159+ let ap = (fraction(ak, min([(height - (an + aa)), ab]), ab) - al)
161160 if ((ao >= height))
162161 then throw("Lock period is not end")
163- else if ((0 >= aq))
162+ else if ((0 >= ap))
164163 then throw("Nothing to withdraw")
165- else [IntegerEntry(am, (al + aq)), ScriptTransfer(ag, aq, M)]
164+ else [IntegerEntry(am, (al + ap)), ScriptTransfer(ag, ap, M)]
166165 }
167166
168167
169-func ar (W,ak,al,ag,am) = if (((al + W) > ak))
170- then throw(((("You can't withdraw more than " + toString(ak)) + " already withdrawed: ") + toString(al)))
171- else [IntegerEntry(am, (al + W)), ScriptTransfer(ag, W, M)]
168+func aq (W,ak,al,ag,am) = if ((0 >= W))
169+ then throw("amount must be positive value")
170+ else if (((al + W) > ak))
171+ then throw(((("You can't withdraw more than " + toString(ak)) + " Your balance: ") + toString((ak - al))))
172+ else [IntegerEntry(am, (al + W)), ScriptTransfer(ag, W, M)]
172173
173174
174175 @Callable(O)
175-func init (as,at,au,av,aw,ax,ay,az,aA,aB,aC) = valueOrElse(P(O), if ((size(as) != 4))
176+func init (ar,as,at,au,av,aw,ax,ay,az,aA,aB) = valueOrElse(P(O), if ((size(ar) != 4))
176177 then throw("wDaoParams must have 4 args")
177- else if ((size(at) != 4))
178+ else if ((size(as) != 4))
178179 then throw("teamParams must have 4 args")
179- else if ((0 >= au))
180+ else if ((0 >= at))
180181 then throw("marketingPercent must be > 0")
181- else if ((0 >= av))
182+ else if ((0 >= au))
182183 then throw("partnerPercent must be > 0")
183- else if ((0 >= aw))
184+ else if ((0 >= av))
184185 then throw("retroDropPercent must be > 0")
185- else if ((0 >= ax))
186+ else if ((0 >= aw))
186187 then throw("lendRewardParams must be > 0")
187- else if ((0 >= ay))
188+ else if ((0 >= ax))
188189 then throw("lpRewardParams must be > 0")
189- else if ((0 >= az))
190+ else if ((0 >= ay))
190191 then throw("poolInitParams must be > 0")
191- else if (!(isDefined(addressFromString(aC))))
192+ else if (!(isDefined(addressFromString(aB))))
192193 then throw("Wrong farming address")
193- else if (!(isDefined(addressFromString(aB))))
194+ else if (!(isDefined(addressFromString(aA))))
194195 then throw("Wrong main contract address")
195196 else {
196- let aD = ae(as)
197- let aE = aD._1
198- let aF = aD._2
199- let aG = aD._3
200- let aH = aD._4
201- let aI = ae(at)
202- let aJ = aI._1
203- let aK = aI._2
204- let aL = aI._3
205- let aM = aI._4
197+ let aC = ae(ar)
198+ let aD = aC._1
199+ let aE = aC._2
200+ let aF = aC._3
201+ let aG = aC._4
202+ let aH = ae(as)
203+ let aI = aH._1
204+ let aJ = aH._2
205+ let aK = aH._3
206+ let aL = aH._4
207+ let aM = R(at)
206208 let aN = R(au)
207209 let aO = R(av)
208210 let aP = R(aw)
209211 let aQ = R(ax)
210212 let aR = R(ay)
211213 let aS = R(az)
212- let aT = R(aA)
213- let aU = (((((((aF + aK) + aN) + aO) + aP) + aQ) + aR) + aS)
214- if ((aU > a))
214+ let aT = (((((((aE + aJ) + aM) + aN) + aO) + aP) + aQ) + aR)
215+ if ((aT > a))
215216 then throw("Wrong percents( > 100%)")
216217 else {
217- let aV = Issue("AXLY", "AXLY protocol token", a, 8, false)
218- let aW = toBase58String(calculateAssetId(aV))
219-[StringEntry(c, aE), IntegerEntry(d, aF), IntegerEntry(e, aG), IntegerEntry(f, aH), StringEntry(h, aJ), IntegerEntry(i, aK), IntegerEntry(j, aL), IntegerEntry(k, aM), IntegerEntry(m, aN), IntegerEntry(o, aO), IntegerEntry(q, aP), IntegerEntry(s, aQ), IntegerEntry(u, aR), IntegerEntry(w, aS), IntegerEntry(y, aT), IntegerEntry(B, height), StringEntry(F, aB), StringEntry(G, aC), aV, StringEntry(A, aW)]
218+ let aU = Issue("AXLY", "AXLY protocol token", a, 8, false)
219+ let aV = toBase58String(calculateAssetId(aU))
220+[StringEntry(c, aD), IntegerEntry(d, aE), IntegerEntry(e, aF), IntegerEntry(f, aG), StringEntry(h, aI), IntegerEntry(i, aJ), IntegerEntry(j, aK), IntegerEntry(k, aL), IntegerEntry(m, aM), IntegerEntry(o, aN), IntegerEntry(q, aO), IntegerEntry(s, aP), IntegerEntry(u, aQ), IntegerEntry(w, aR), IntegerEntry(y, aS), IntegerEntry(B, height), StringEntry(F, aA), StringEntry(G, aB), aU, StringEntry(A, aV)]
220221 }
221222 })
222223
223224
224225
225226 @Callable(O)
226227 func withdrawWDao () = {
227228 let W = getIntegerValue(this, d)
228229 let aa = getIntegerValue(this, e)
229230 let ab = getIntegerValue(this, f)
230231 let ag = addressFromStringValue(getStringValue(this, c))
231232 let al = valueOrElse(getInteger(this, g), 0)
232233 aj(W, aa, ab, al, ag, g)
233234 }
234235
235236
236237
237238 @Callable(O)
238239 func withdrawTeam () = {
239240 let W = getIntegerValue(this, i)
240241 let aa = getIntegerValue(this, j)
241242 let ab = getIntegerValue(this, k)
242243 let ag = addressFromStringValue(getStringValue(this, h))
243244 let al = valueOrElse(getInteger(this, l), 0)
244245 aj(W, aa, ab, al, ag, l)
245246 }
246247
247248
248249
249250 @Callable(O)
250-func withdrawMarketing (W,aX) = valueOrElse(P(O), {
251+func withdrawMarketing (W,aW) = valueOrElse(P(O), {
251252 let ak = getIntegerValue(this, m)
252253 let al = valueOrElse(getInteger(this, n), 0)
253- let ag = addressFromStringValue(aX)
254- ar(W, ak, al, ag, n)
254+ let ag = addressFromStringValue(aW)
255+ aq(W, ak, al, ag, n)
255256 })
256257
257258
258259
259260 @Callable(O)
260-func withdrawPartners (W,aX) = valueOrElse(P(O), {
261+func withdrawPartners (W,aW) = valueOrElse(P(O), {
261262 let ak = getIntegerValue(this, o)
262263 let al = valueOrElse(getInteger(this, p), 0)
263- let ag = addressFromStringValue(aX)
264- ar(W, ak, al, ag, p)
264+ let ag = addressFromStringValue(aW)
265+ aq(W, ak, al, ag, p)
265266 })
266267
267268
268269
269270 @Callable(O)
270-func withdrawRetroDraop (W,aX) = valueOrElse(P(O), {
271+func withdrawRetroDrop (W,aW) = valueOrElse(P(O), {
271272 let ak = getIntegerValue(this, q)
272273 let al = valueOrElse(getInteger(this, r), 0)
273- let ag = addressFromStringValue(aX)
274- ar(W, ak, al, ag, r)
274+ let ag = addressFromStringValue(aW)
275+ aq(W, ak, al, ag, r)
275276 })
276277
277278
278279
279280 @Callable(O)
280-func withdrawPollInit (W,aX) = valueOrElse(P(O), {
281+func withdrawPollInit (W,aW) = valueOrElse(P(O), {
281282 let ak = getIntegerValue(this, w)
282283 let al = valueOrElse(getInteger(this, x), 0)
283- let ag = addressFromStringValue(aX)
284- ar(W, ak, al, ag, x)
284+ let ag = addressFromStringValue(aW)
285+ aq(W, ak, al, ag, x)
285286 })
286287
287288
288289
289290 @Callable(O)
290-func withdrawLendReward (W,aY) = valueOrElse(Q(O), {
291+func withdrawLendReward (W,aX) = valueOrElse(Q(O), {
291292 let ak = getIntegerValue(this, s)
292293 let al = valueOrElse(getInteger(this, t), 0)
293- let ag = addressFromStringValue(aY)
294- ar(W, ak, al, ag, t)
294+ let ag = addressFromStringValue(aX)
295+ aq(W, ak, al, ag, t)
295296 })
296297
297298
298299
299300 @Callable(O)
300-func withdrawLpReward (W,aY) = valueOrElse(Q(O), {
301+func withdrawLpReward (W,aX) = valueOrElse(Q(O), {
301302 let ak = getIntegerValue(this, u)
302303 let al = valueOrElse(getInteger(this, v), 0)
303- let ag = addressFromStringValue(aY)
304- ar(W, ak, al, ag, v)
304+ let ag = addressFromStringValue(aX)
305+ aq(W, ak, al, ag, v)
305306 })
306307
307308
308309
309310 @Callable(O)
310-func withdrawLaunchpad (W,aY) = valueOrElse(P(O), {
311+func withdrawLaunchpad (W,aX) = valueOrElse(P(O), {
311312 let ak = getIntegerValue(this, y)
312313 let al = valueOrElse(getInteger(this, z), 0)
313- let ag = addressFromStringValue(aY)
314- ar(W, ak, al, ag, z)
314+ let ag = addressFromStringValue(aX)
315+ aq(W, ak, al, ag, z)
315316 })
316317
317318
318-@Verifier(aZ)
319-func ba () = {
320- let bb = {
321- let bc = if (sigVerify(aZ.bodyBytes, aZ.proofs[0], J))
319+@Verifier(aY)
320+func aZ () = {
321+ let ba = {
322+ let bb = if (sigVerify(aY.bodyBytes, aY.proofs[0], J))
322323 then 1
323324 else 0
324- let bd = if (sigVerify(aZ.bodyBytes, aZ.proofs[1], K))
325+ let bc = if (sigVerify(aY.bodyBytes, aY.proofs[1], K))
325326 then 1
326327 else 0
327- let be = if (sigVerify(aZ.bodyBytes, aZ.proofs[2], L))
328+ let bd = if (sigVerify(aY.bodyBytes, aY.proofs[2], L))
328329 then 1
329330 else 0
330- (((bc + bd) + be) >= 2)
331+ (((bb + bc) + bd) >= 2)
331332 }
332- let U = aZ
333+ let U = aY
333334 if ($isInstanceOf(U, "InvokeScriptTransaction"))
334335 then {
335- let bf = U
336- let bg = sigVerify(aZ.bodyBytes, aZ.proofs[0], aZ.senderPublicKey)
337- let bh = if ((bf.fee == 100900000))
338- then (bf.feeAssetId == unit)
336+ let be = U
337+ let bf = sigVerify(aY.bodyBytes, aY.proofs[0], aY.senderPublicKey)
338+ let bg = if ((be.fee == 100900000))
339+ then (be.feeAssetId == unit)
339340 else false
340- let bi = (bf.function == "init")
341- let bj = (size(bf.payments) == 0)
342- if (if (if (if (bh)
341+ let bh = (be.function == "init")
342+ let bi = (size(be.payments) == 0)
343+ if (if (if (if (bg)
344+ then bh
345+ else false)
346+ then bf
347+ else false)
343348 then bi
344349 else false)
345- then bg
346- else false)
347- then bj
348- else false)
349350 then true
350- else bb
351+ else ba
351352 }
352- else bb
353+ else ba
353354 }
354355

github/deemru/w8io/169f3d6 
68.83 ms