tx · DNAq4DcUQKYteL1mV2itfHnkJCMfZQfmme4ZdWdnFVW2

3PMskBY6x2BJTwWuvLfGMouoHMwLnhVgEgU:  -0.01000000 Waves

2023.12.26 03:13 [3968845] smart account 3PMskBY6x2BJTwWuvLfGMouoHMwLnhVgEgU > SELF 0.00000000 Waves

{ "type": 13, "id": "DNAq4DcUQKYteL1mV2itfHnkJCMfZQfmme4ZdWdnFVW2", "fee": 1000000, "feeAssetId": null, "timestamp": 1703549695330, "version": 2, "chainId": 87, "sender": "3PMskBY6x2BJTwWuvLfGMouoHMwLnhVgEgU", "senderPublicKey": "2PZ4ctzkwZSpFDwLZksxJjiMSsFA2dS7V7mi4o27LExc", "proofs": [ "2EmT9ZKLYCL2VeEciqs6ghMqofGsuHNGt8NTGiNVkcCauioZU3pCd8Gqx3Gg1cXPAx2uZTb4MLqZv6Y7YKeG1gTV" ], "script": "base64:BgITCAISABIDCgEIEgMKAQgSAwoBCBoACnJ1bGVyX3Rlc3QCLEJneHBDbTR3eGJXOFNLTFBLWm5mNEtVMkQ2WlUyOW92OE1nWnJrYVNBcXBZAAVydWxlcgIsN3pOVUpCVm9QTUJDUnN0UDNSMUF2eGh4ck41MVNRa241Qk1pMmlKOWNpQWQABnJ1bGVyMgIsOWZlNjdld3p4dGFMb3plUFoyVTNTRzcxWlFGeUdMQVhXbW1tSFJFcEZlTUMABnJ1bGVyMwIsQW8ycWlqUVZ2dlpaU2dSektvWXlKOWtCeFlqc1BRMzdDZFVwcGRKdFQ2VjEABnJ1bGVyNAIsM1BTSzdiNmJNZjFnQkR2akhSYkdROXpHYzY4VWlyZXFCajJldWJWaTFxNXIABnJ1bGVyNQIsNjZyQ3Y5ZGZkb3VxUTNTUkc5WHJLblJpRm1NYndrWlFnbWhTMWZ0bkN0cW0ABnJ1bGVyNgIsRmVNWDZoUWFSS3NMc2tpNzd4VkhIREdSa2o5VnVKem1QMk1BQ2JBV0RqREsABnJ1bGVyNwIsN3hERVE3SlpOTDFaTExxY3lTVWIxV1dpakcxWDNHRFdHMzVReHlOcWJ4eGkABnJ1bGVyOAIsR1g1azFDcHVobnY5b1A5Vm5XTVNYQnJKdXNha1U1UDNLenFRVzVlN1BqZ2QABnJ1bGVyOQIsQkJ0NnlZdnFMSjZjR1d1YjRGV3ZQRzM1eTZzS05RQkdzUXljeksyU2l0M2oAB3J1bGVyMTACLDU2aUMxYUJnWFY2NlNTUko1RTZoSFBKbksyTHZ6V2pLRnNuOGM4aUVRc1kxAAphYnJhY2FkYnJhASCEw4RMq+J8AgneosFzaAks62toFxJJXbpWEJovtolzAQANbGltaXRDb250cmFjdAIjM1BGQjZMSnlTaHNDS0VBMUFVMVUxV0xiRGF6cXlqNlpMOWIAC3RzbkNvbnRyYWN0AiMzUEt6NWpuSkxvaEYyR2pTaFE3Ykc1SDRCZWJkb0E5OHpaMgAKd3hDb250cmFjdAIjM1A2OHpOaXVmc3UxdmlacHUxYVkzY2RhaFJSS2N2VjVOOTMAEWxlbmRQcm94eUNvbnRyYWN0AiMzUEd4TVp0TW5OVDlwSkN2WHhYVjRMektxWHNqdlE5WHBmUgEDdmlwAQNra2sDAwMDAwMDAwMDCQAAAgUDa2trBQVydWxlcgYJAAACBQNra2sFBnJ1bGVyMgYJAAACBQNra2sFBnJ1bGVyMwYJAAACBQNra2sFBnJ1bGVyNAYJAAACBQNra2sFBnJ1bGVyNQYJAAACBQNra2sFBnJ1bGVyNgYJAAACBQNra2sFBnJ1bGVyNwYJAAACBQNra2sFBnJ1bGVyOAYJAAACBQNra2sFBnJ1bGVyOQYJAAACBQNra2sFB3J1bGVyMTAGBwEKZ2V0QXNzZXRJZAEDcG10BAckbWF0Y2gwBQNwbXQDCQABAgUHJG1hdGNoMAIKQnl0ZVZlY3RvcgQBcAUHJG1hdGNoMAUDcG10BQR1bml0AQ5nZXRBc3NldFN0cmluZwEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAFiBQckbWF0Y2gwCQDYBAEFAWICBVdBVkVTAQ1nZXRBY2NCYWxhbmNlAQdhc3NldElkAwkAAAIFB2Fzc2V0SWQCBVdBVkVTCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQkA8AcCBQR0aGlzCQDZBAEFB2Fzc2V0SWQBDWdldEFzc2V0Qnl0ZXMBB2Fzc2V0SWQDCQAAAgUHYXNzZXRJZAIFV0FWRVMFBHVuaXQJANkEAQUHYXNzZXRJZAEJbXlCYWxhbmNlAQdhc3NldElkBAckbWF0Y2gwBQdhc3NldElkAwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEAWIFByRtYXRjaDAJAPAHAgUEdGhpcwUBYggJAO8HAQUEdGhpcwlhdmFpbGFibGUBCXN3YXBMaW1pdAIGcGFyYW1zBXQwU3RyCgEHZG9MaW1pdAIFYXNzZXQLb3JkZXJQYXJhbXMEA29yZAkAtQkCBQtvcmRlclBhcmFtcwIBPgQLJHQwMjYzMzI2NzgJAJQKAgkAkQMCBQNvcmQAAAkAkQMCBQNvcmQAAQQHb3JkZXJJZAgFCyR0MDI2MzMyNjc4Al8xBAtvcmRlckFtb3VudAgFCyR0MDI2MzMyNjc4Al8yBANpbnYJAPwHBAkBB0FkZHJlc3MBCQDZBAEFDWxpbWl0Q29udHJhY3QCDGZ1bGZpbGxPcmRlcgkAzAgCBQdvcmRlcklkBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBWFzc2V0CQENcGFyc2VJbnRWYWx1ZQEFC29yZGVyQW1vdW50BQNuaWwDCQAAAgUDaW52BQNpbnYFBWFzc2V0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAhvcmRlcnNMaQkAtQkCBQZwYXJhbXMCAToEAnQwCQENZ2V0QXNzZXRCeXRlcwEFBXQwU3RyBAZyZXN1bHQKAAIkbAUIb3JkZXJzTGkKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQJ0MAoBBSRmMF8xAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQEHZG9MaW1pdAIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgMJAAACBQZyZXN1bHQFBnJlc3VsdAAACQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQhzd2FwTGVuZAQGcGFyYW1zBXQwU3RyBXQxU3RyBmFtb3VudAQDYXJyCQC1CQIFBnBhcmFtcwIBLQQLJHQwMzEwNzMxNjQJAJUKAwkAkQMCBQNhcnIAAAkAkQMCBQNhcnIAAQkAkQMCBQNhcnIAAgQMcG9vbF9hZGRyZXNzCAULJHQwMzEwNzMxNjQCXzEEBWFzc2V0CAULJHQwMzEwNzMxNjQCXzIEA2RpcggFCyR0MDMxMDczMTY0Al8zBAhwcm94eUFkcgkBB0FkZHJlc3MBCQDZBAEFEWxlbmRQcm94eUNvbnRyYWN0BAxmdW5jdGlvbk5hbWUDCQAAAgUDZGlyAgEwAgZtaW50UEwCCHJlZGVlbVBMCQD8BwQFCHByb3h5QWRyBQxmdW5jdGlvbk5hbWUJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQUFdDBTdHIFBmFtb3VudAUDbmlsAQhzd2FwUGVwZQQGcGFyYW1zBXQwU3RyBXQxU3RyBmFtb3VudAQDYXJyCQC1CQIFBnBhcmFtcwIBLQQLJHQwMzU0NDM1OTQJAJQKAgkAkQMCBQNhcnIAAAkAkQMCBQNhcnIAAQQMcG9vbF9hZGRyZXNzCAULJHQwMzU0NDM1OTQCXzEEC2Z1bmN0aW9uVGFnCAULJHQwMzU0NDM1OTQCXzIEC3N3YXBBZGRyZXNzCQEHQWRkcmVzcwEJANkEAQUMcG9vbF9hZGRyZXNzAwkAAAIFC2Z1bmN0aW9uVGFnAgFkCQD8BwQFC3N3YXBBZGRyZXNzAgdkZXBvc2l0CQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEFBXQwU3RyBQZhbW91bnQFA25pbAMJAAACBQtmdW5jdGlvblRhZwIBdwkA/AcEBQtzd2FwQWRkcmVzcwIId2l0aGRyYXcJAMwIAgUFdDFTdHIJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQ1nZXRBc3NldEJ5dGVzAQUFdDBTdHIFBmFtb3VudAUDbmlsAwkAAAIFC2Z1bmN0aW9uVGFnAgFzCQD8BwQFC3N3YXBBZGRyZXNzAgRzd2FwCQDMCAIFBXQxU3RyCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQENZ2V0QXNzZXRCeXRlcwEFBXQwU3RyBQZhbW91bnQFA25pbAkAAgECIlVua25vd24gZnVuY3Rpb24gdGFnIGZvciBwZXBlIHN3YXABCG1ha2VTd2FwBQJwdAFwA2FtaQNhaW4DYW91AwkAAAIFAnB0AgJwdQkA/AcECQEHQWRkcmVzcwEJANkEAQUBcAIEc3dhcAkAzAgCBQNhb3UJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFA2FpbgUDYW1pBQNuaWwDCQAAAgUCcHQCAnN3CQD8BwQJAQdBZGRyZXNzAQkA2QQBBQFwAghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUDYWluBQNhbWkFA25pbAMJAAACBQJwdAICd3gJAPwHBAkBB0FkZHJlc3MBARoBVy4qNTWxDbfxeT7ht0bQnnRSTXsx0IOuBgIEc3dhcAkAzAgCAAEJAMwIAgUDYW91CQDMCAIJAKUIAQUEdGhpcwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQNhaW4FA2FtaQUDbmlsAwkAAAIFAnB0AgJsaQkBCXN3YXBMaW1pdAIFAXAJAQ5nZXRBc3NldFN0cmluZwEFA2FpbgMJAAACBQJwdAICdHMJAPwHBAkBB0FkZHJlc3MBCQDZBAEFC3RzbkNvbnRyYWN0AgRzd2FwCQDMCAIFA2FvdQkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUDYWluBQNhbWkFA25pbAMJAAACBQJwdAICbGUJAQhzd2FwTGVuZAQFAXAJAQ5nZXRBc3NldFN0cmluZwEFA2FpbgUDYW91BQNhbWkDCQAAAgUCcHQCAnBlCQEIc3dhcFBlcGUEBQFwCQEOZ2V0QXNzZXRTdHJpbmcBBQNhaW4FA2FvdQUDYW1pCQACAQIRVW5rbm93biBwb29sIHR5cGUEAWkBBHRlc3QACQCUCgIFA25pbAIAAWkBAWEBAWQECWNhbGxlclBiawkA2AQBCAUBaQ9jYWxsZXJQdWJsaWNLZXkDCQEBIQEJAQN2aXABBQljYWxsZXJQYmsJAAIBAghOby1uby1ubwQDcG10CQCRAwIIBQFpCHBheW1lbnRzAAAEB2Fzc2V0SW4JAQpnZXRBc3NldElkAQgFA3BtdAdhc3NldElkBAhhbW91bnRJbgkBBXZhbHVlAQgFA3BtdAZhbW91bnQEA2FycgkAtQkCBQFkAgF8BAskdDA1NDQyNTUyMgkAmAoGCQCRAwIFA2FycgAACQCRAwIFA2FycgABCQCRAwIFA2FycgACCQCRAwIFA2FycgADCQCRAwIFA2FycgAECQCRAwIFA2FycgAFBAJhMQgFCyR0MDU0NDI1NTIyAl8xBAJwMQgFCyR0MDU0NDI1NTIyAl8yBANwMXQIBQskdDA1NDQyNTUyMgJfMwQCcDIIBQskdDA1NDQyNTUyMgJfNAQDcDJ0CAULJHQwNTQ0MjU1MjICXzUEAW0IBQskdDA1NDQyNTUyMgJfNgQFbWluaW0JAQ1wYXJzZUludFZhbHVlAQUBbQQGYTFfYmVmCQEJbXlCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBBQJhMQMJAAACBQZhMV9iZWYFBmExX2JlZgQCczEJAQhtYWtlU3dhcAUFA3AxdAUCcDEFCGFtb3VudEluBQdhc3NldEluBQJhMQMJAAACBQJzMQUCczEEA25iMQkAZQIJAQlteUJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEFAmExBQZhMV9iZWYDCQAAAgUDbmIxBQNuYjEECmFfYmFzZV9iZWYJAQlteUJhbGFuY2UBBQdhc3NldEluAwkAAAIFCmFfYmFzZV9iZWYFCmFfYmFzZV9iZWYEAnMyCQEIbWFrZVN3YXAFBQNwMnQFAnAyBQNuYjEJAQ1nZXRBc3NldEJ5dGVzAQUCYTEJAQ5nZXRBc3NldFN0cmluZwEFB2Fzc2V0SW4DCQAAAgUCczIFAnMyBAZyZXN1bHQJAGUCCQEJbXlCYWxhbmNlAQUHYXNzZXRJbgUKYV9iYXNlX2JlZgMJAAACBQZyZXN1bHQFBnJlc3VsdAMJAGYCBQZyZXN1bHQFBW1pbmltBAdodWphYnJhCQBlAgUGcmVzdWx0BQhhbW91bnRJbgQEcmV0dQUIYW1vdW50SW4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQRyZXR1BQdhc3NldEluCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAKcIAQUKYWJyYWNhZGJyYQUHaHVqYWJyYQUHYXNzZXRJbgUDbmlsCQACAQkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgtPb29wcywgaW46IAkApAMBBQhhbW91bnRJbgIFLCAxOiAJAKQDAQUDbmIxAgcsIG91dDogCQCkAwEFBnJlc3VsdAIHLCBtaW46IAkApAMBBQVtaW5pbQkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQFiAQFkBAljYWxsZXJQYmsJANgEAQgFAWkPY2FsbGVyUHVibGljS2V5AwkBASEBCQEDdmlwAQUJY2FsbGVyUGJrCQACAQIITm8tbm8tbm8EA3BtdAkAkQMCCAUBaQhwYXltZW50cwAABAdhc3NldEluCQEKZ2V0QXNzZXRJZAEIBQNwbXQHYXNzZXRJZAQIYW1vdW50SW4JAQV2YWx1ZQEIBQNwbXQGYW1vdW50BANhcnIJALUJAgUBZAIBfAQLJHQwNjc1MTY4NjgJAJsKCQkAkQMCBQNhcnIAAAkAkQMCBQNhcnIAAQkAkQMCBQNhcnIAAgkAkQMCBQNhcnIAAwkAkQMCBQNhcnIABAkAkQMCBQNhcnIABQkAkQMCBQNhcnIABgkAkQMCBQNhcnIABwkAkQMCBQNhcnIACAQCYTEIBQskdDA2NzUxNjg2OAJfMQQCcDEIBQskdDA2NzUxNjg2OAJfMgQDcDF0CAULJHQwNjc1MTY4NjgCXzMEAmEyCAULJHQwNjc1MTY4NjgCXzQEAnAyCAULJHQwNjc1MTY4NjgCXzUEA3AydAgFCyR0MDY3NTE2ODY4Al82BAJwMwgFCyR0MDY3NTE2ODY4Al83BANwM3QIBQskdDA2NzUxNjg2OAJfOAQBbQgFCyR0MDY3NTE2ODY4Al85BAVtaW5pbQkBDXBhcnNlSW50VmFsdWUBBQFtBAZhMV9iZWYJAQlteUJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEFAmExAwkAAAIFBmExX2JlZgUGYTFfYmVmBAJzMQkBCG1ha2VTd2FwBQUDcDF0BQJwMQUIYW1vdW50SW4FB2Fzc2V0SW4FAmExAwkAAAIFAnMxBQJzMQQDbmIxCQBlAgkBCW15QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQUCYTEFBmExX2JlZgMJAAACBQNuYjEFA25iMQQGYTJfYmVmCQEJbXlCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBBQJhMgMJAAACBQZhMl9iZWYFBmEyX2JlZgQCczIJAQhtYWtlU3dhcAUFA3AydAUCcDIFA25iMQkBDWdldEFzc2V0Qnl0ZXMBBQJhMQUCYTIDCQAAAgUCczIFAnMyBANuYjIJAGUCCQEJbXlCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBBQJhMgUGYTJfYmVmAwkAAAIFA25iMgUDbmIyBAphX2Jhc2VfYmVmCQEJbXlCYWxhbmNlAQUHYXNzZXRJbgMJAAACBQphX2Jhc2VfYmVmBQphX2Jhc2VfYmVmBAJzMwkBCG1ha2VTd2FwBQUDcDN0BQJwMwUDbmIyCQENZ2V0QXNzZXRCeXRlcwEFAmEyCQEOZ2V0QXNzZXRTdHJpbmcBBQdhc3NldEluAwkAAAIFAnMzBQJzMwQGcmVzdWx0CQBlAgkBCW15QmFsYW5jZQEFB2Fzc2V0SW4FCmFfYmFzZV9iZWYDCQAAAgUGcmVzdWx0BQZyZXN1bHQDCQBmAgUGcmVzdWx0BQVtaW5pbQQHaHVqYWJyYQkAZQIFBnJlc3VsdAUIYW1vdW50SW4EBHJldHUFCGFtb3VudEluCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUEcmV0dQUHYXNzZXRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQCnCAEFCmFicmFjYWRicmEFB2h1amFicmEFB2Fzc2V0SW4FA25pbAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgICC09vb3BzLCBpbjogCQCkAwEFCGFtb3VudEluAgUsIDE6IAkApAMBBQNuYjECBSwgMjogCQCkAwEFA25iMgIHLCBvdXQ6IAkApAMBBQZyZXN1bHQCBywgbWluOiAJAKQDAQUFbWluaW0JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEBYwEBZAQJY2FsbGVyUGJrCQDYBAEIBQFpD2NhbGxlclB1YmxpY0tleQMJAQEhAQkBA3ZpcAEFCWNhbGxlclBiawkAAgECCE5vLW5vLW5vBANwbXQJAJEDAggFAWkIcGF5bWVudHMAAAQHYXNzZXRJbgkBCmdldEFzc2V0SWQBCAUDcG10B2Fzc2V0SWQECGFtb3VudEluCQEFdmFsdWUBCAUDcG10BmFtb3VudAQDYXJyCQC1CQIFAWQCAXwECyR0MDgzNzM4NTI5CQCeCgwJAJEDAgUDYXJyAAAJAJEDAgUDYXJyAAEJAJEDAgUDYXJyAAIJAJEDAgUDYXJyAAMJAJEDAgUDYXJyAAQJAJEDAgUDYXJyAAUJAJEDAgUDYXJyAAYJAJEDAgUDYXJyAAcJAJEDAgUDYXJyAAgJAJEDAgUDYXJyAAkJAJEDAgUDYXJyAAoJAJEDAgUDYXJyAAsEAmExCAULJHQwODM3Mzg1MjkCXzEEAnAxCAULJHQwODM3Mzg1MjkCXzIEA3AxdAgFCyR0MDgzNzM4NTI5Al8zBAJhMggFCyR0MDgzNzM4NTI5Al80BAJwMggFCyR0MDgzNzM4NTI5Al81BANwMnQIBQskdDA4MzczODUyOQJfNgQCYTMIBQskdDA4MzczODUyOQJfNwQCcDMIBQskdDA4MzczODUyOQJfOAQDcDN0CAULJHQwODM3Mzg1MjkCXzkEAnA0CAULJHQwODM3Mzg1MjkDXzEwBANwNHQIBQskdDA4MzczODUyOQNfMTEEAW0IBQskdDA4MzczODUyOQNfMTIEBW1pbmltCQENcGFyc2VJbnRWYWx1ZQEFAW0EBmExX2JlZgkBCW15QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQUCYTEDCQAAAgUGYTFfYmVmBQZhMV9iZWYEAnMxCQEIbWFrZVN3YXAFBQNwMXQFAnAxBQhhbW91bnRJbgUHYXNzZXRJbgUCYTEDCQAAAgUCczEFAnMxBANuYjEJAGUCCQEJbXlCYWxhbmNlAQkBDWdldEFzc2V0Qnl0ZXMBBQJhMQUGYTFfYmVmAwkAAAIFA25iMQUDbmIxBAZhMl9iZWYJAQlteUJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEFAmEyAwkAAAIFBmEyX2JlZgUGYTJfYmVmBAJzMgkBCG1ha2VTd2FwBQUDcDJ0BQJwMgUDbmIxCQENZ2V0QXNzZXRCeXRlcwEFAmExBQJhMgMJAAACBQJzMgUCczIEA25iMgkAZQIJAQlteUJhbGFuY2UBCQENZ2V0QXNzZXRCeXRlcwEFAmEyBQZhMl9iZWYDCQAAAgUDbmIyBQNuYjIEBmEzX2JlZgkBCW15QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQUCYTMDCQAAAgUGYTNfYmVmBQZhM19iZWYEAnMzCQEIbWFrZVN3YXAFBQNwM3QFAnAzBQNuYjIJAQ1nZXRBc3NldEJ5dGVzAQUCYTIFAmEzAwkAAAIFAnMzBQJzMwQDbmIzCQBlAgkBCW15QmFsYW5jZQEJAQ1nZXRBc3NldEJ5dGVzAQUCYTMFBmEzX2JlZgMJAAACBQNuYjMFA25iMwQKYV9iYXNlX2JlZgkBCW15QmFsYW5jZQEFB2Fzc2V0SW4DCQAAAgUKYV9iYXNlX2JlZgUKYV9iYXNlX2JlZgQCczQJAQhtYWtlU3dhcAUFA3A0dAUCcDQFA25iMwkBDWdldEFzc2V0Qnl0ZXMBBQJhMwkBDmdldEFzc2V0U3RyaW5nAQUHYXNzZXRJbgMJAAACBQJzNAUCczQEBnJlc3VsdAkAZQIJAQlteUJhbGFuY2UBBQdhc3NldEluBQphX2Jhc2VfYmVmAwkAAAIFBnJlc3VsdAUGcmVzdWx0AwkAZgIFBnJlc3VsdAUFbWluaW0EB2h1amFicmEJAGUCBQZyZXN1bHQFCGFtb3VudEluBARyZXR1BQhhbW91bnRJbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFBHJldHUFB2Fzc2V0SW4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkApwgBBQphYnJhY2FkYnJhBQdodWphYnJhBQdhc3NldEluBQNuaWwJAAIBCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgILT29vcHMsIGluOiAJAKQDAQUIYW1vdW50SW4CBSwgMTogCQCkAwEFA25iMQIFLCAyOiAJAKQDAQUDbmIyAgUsIDM6IAkApAMBBQNuYjMCBywgb3V0OiAJAKQDAQUGcmVzdWx0AgcsIG1pbjogCQCkAwEFBW1pbmltCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleUJIctY=", "height": 3968845, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 771BqQwbjSjU3iC1mZwb6zeeY6m847eed2Uyrk5icTkN Next: none Diff:
OldNewDifferences
2121
2222 let ruler9 = "BBt6yYvqLJ6cGWub4FWvPG35y6sKNQBGsQyczK2Sit3j"
2323
24+let ruler10 = "56iC1aBgXV66SSRJ5E6hHPJnK2LvzWjKFsn8c8iEQsY1"
25+
2426 let abracadbra = base58'9wFjTx4rK6ZxfHa3z65BHhP6A7gkZLioxVrD4p2Frjjn'
2527
2628 let limitContract = "3PFB6LJyShsCKEA1AU1U1WLbDazqyj6ZL9b"
3133
3234 let lendProxyContract = "3PGxMZtMnNT9pJCvXxXV4LzKqXsjvQ9XpfR"
3335
34-func vip (kkk) = if (if (if (if (if (if (if (if (if ((kkk == ruler))
36+func vip (kkk) = if (if (if (if (if (if (if (if (if (if ((kkk == ruler))
3537 then true
3638 else (kkk == ruler2))
3739 then true
4850 else (kkk == ruler8))
4951 then true
5052 else (kkk == ruler9))
53+ then true
54+ else (kkk == ruler10))
5155 then true
5256 else false
5357
8993 func swapLimit (params,t0Str) = {
9094 func doLimit (asset,orderParams) = {
9195 let ord = split(orderParams, ">")
92- let $t025152560 = $Tuple2(ord[0], ord[1])
93- let orderId = $t025152560._1
94- let orderAmount = $t025152560._2
96+ let $t026332678 = $Tuple2(ord[0], ord[1])
97+ let orderId = $t026332678._1
98+ let orderAmount = $t026332678._2
9599 let inv = invoke(Address(fromBase58String(limitContract)), "fulfillOrder", [orderId], [AttachedPayment(asset, parseIntValue(orderAmount))])
96100 if ((inv == inv))
97101 then asset
122126
123127 func swapLend (params,t0Str,t1Str,amount) = {
124128 let arr = split(params, "-")
125- let $t029893046 = $Tuple3(arr[0], arr[1], arr[2])
126- let pool_address = $t029893046._1
127- let asset = $t029893046._2
128- let dir = $t029893046._3
129+ let $t031073164 = $Tuple3(arr[0], arr[1], arr[2])
130+ let pool_address = $t031073164._1
131+ let asset = $t031073164._2
132+ let dir = $t031073164._3
129133 let proxyAdr = Address(fromBase58String(lendProxyContract))
130134 let functionName = if ((dir == "0"))
131135 then "mintPL"
136140
137141 func swapPepe (params,t0Str,t1Str,amount) = {
138142 let arr = split(params, "-")
139- let $t034263476 = $Tuple2(arr[0], arr[1])
140- let pool_address = $t034263476._1
141- let functionTag = $t034263476._2
143+ let $t035443594 = $Tuple2(arr[0], arr[1])
144+ let pool_address = $t035443594._1
145+ let functionTag = $t035443594._2
142146 let swapAddress = Address(fromBase58String(pool_address))
143147 if ((functionTag == "d"))
144148 then invoke(swapAddress, "deposit", [0], [AttachedPayment(getAssetBytes(t0Str), amount)])
182186 let assetIn = getAssetId(pmt.assetId)
183187 let amountIn = value(pmt.amount)
184188 let arr = split(d, "|")
185- let $t053245404 = $Tuple6(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5])
186- let a1 = $t053245404._1
187- let p1 = $t053245404._2
188- let p1t = $t053245404._3
189- let p2 = $t053245404._4
190- let p2t = $t053245404._5
191- let m = $t053245404._6
189+ let $t054425522 = $Tuple6(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5])
190+ let a1 = $t054425522._1
191+ let p1 = $t054425522._2
192+ let p1t = $t054425522._3
193+ let p2 = $t054425522._4
194+ let p2t = $t054425522._5
195+ let m = $t054425522._6
192196 let minim = parseIntValue(m)
193197 let a1_bef = myBalance(getAssetBytes(a1))
194198 if ((a1_bef == a1_bef))
240244 let assetIn = getAssetId(pmt.assetId)
241245 let amountIn = value(pmt.amount)
242246 let arr = split(d, "|")
243- let $t066336750 = $Tuple9(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8])
244- let a1 = $t066336750._1
245- let p1 = $t066336750._2
246- let p1t = $t066336750._3
247- let a2 = $t066336750._4
248- let p2 = $t066336750._5
249- let p2t = $t066336750._6
250- let p3 = $t066336750._7
251- let p3t = $t066336750._8
252- let m = $t066336750._9
247+ let $t067516868 = $Tuple9(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8])
248+ let a1 = $t067516868._1
249+ let p1 = $t067516868._2
250+ let p1t = $t067516868._3
251+ let a2 = $t067516868._4
252+ let p2 = $t067516868._5
253+ let p2t = $t067516868._6
254+ let p3 = $t067516868._7
255+ let p3t = $t067516868._8
256+ let m = $t067516868._9
253257 let minim = parseIntValue(m)
254258 let a1_bef = myBalance(getAssetBytes(a1))
255259 if ((a1_bef == a1_bef))
316320 let assetIn = getAssetId(pmt.assetId)
317321 let amountIn = value(pmt.amount)
318322 let arr = split(d, "|")
319- let $t082558411 = $Tuple12(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8], arr[9], arr[10], arr[11])
320- let a1 = $t082558411._1
321- let p1 = $t082558411._2
322- let p1t = $t082558411._3
323- let a2 = $t082558411._4
324- let p2 = $t082558411._5
325- let p2t = $t082558411._6
326- let a3 = $t082558411._7
327- let p3 = $t082558411._8
328- let p3t = $t082558411._9
329- let p4 = $t082558411._10
330- let p4t = $t082558411._11
331- let m = $t082558411._12
323+ let $t083738529 = $Tuple12(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8], arr[9], arr[10], arr[11])
324+ let a1 = $t083738529._1
325+ let p1 = $t083738529._2
326+ let p1t = $t083738529._3
327+ let a2 = $t083738529._4
328+ let p2 = $t083738529._5
329+ let p2t = $t083738529._6
330+ let a3 = $t083738529._7
331+ let p3 = $t083738529._8
332+ let p3t = $t083738529._9
333+ let p4 = $t083738529._10
334+ let p4t = $t083738529._11
335+ let m = $t083738529._12
332336 let minim = parseIntValue(m)
333337 let a1_bef = myBalance(getAssetBytes(a1))
334338 if ((a1_bef == a1_bef))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let ruler_test = "BgxpCm4wxbW8SKLPKZnf4KU2D6ZU29ov8MgZrkaSAqpY"
55
66 let ruler = "7zNUJBVoPMBCRstP3R1AvxhxrN51SQkn5BMi2iJ9ciAd"
77
88 let ruler2 = "9fe67ewzxtaLozePZ2U3SG71ZQFyGLAXWmmmHREpFeMC"
99
1010 let ruler3 = "Ao2qijQVvvZZSgRzKoYyJ9kBxYjsPQ37CdUppdJtT6V1"
1111
1212 let ruler4 = "3PSK7b6bMf1gBDvjHRbGQ9zGc68UireqBj2eubVi1q5r"
1313
1414 let ruler5 = "66rCv9dfdouqQ3SRG9XrKnRiFmMbwkZQgmhS1ftnCtqm"
1515
1616 let ruler6 = "FeMX6hQaRKsLski77xVHHDGRkj9VuJzmP2MACbAWDjDK"
1717
1818 let ruler7 = "7xDEQ7JZNL1ZLLqcySUb1WWijG1X3GDWG35QxyNqbxxi"
1919
2020 let ruler8 = "GX5k1Cpuhnv9oP9VnWMSXBrJusakU5P3KzqQW5e7Pjgd"
2121
2222 let ruler9 = "BBt6yYvqLJ6cGWub4FWvPG35y6sKNQBGsQyczK2Sit3j"
2323
24+let ruler10 = "56iC1aBgXV66SSRJ5E6hHPJnK2LvzWjKFsn8c8iEQsY1"
25+
2426 let abracadbra = base58'9wFjTx4rK6ZxfHa3z65BHhP6A7gkZLioxVrD4p2Frjjn'
2527
2628 let limitContract = "3PFB6LJyShsCKEA1AU1U1WLbDazqyj6ZL9b"
2729
2830 let tsnContract = "3PKz5jnJLohF2GjShQ7bG5H4BebdoA98zZ2"
2931
3032 let wxContract = "3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93"
3133
3234 let lendProxyContract = "3PGxMZtMnNT9pJCvXxXV4LzKqXsjvQ9XpfR"
3335
34-func vip (kkk) = if (if (if (if (if (if (if (if (if ((kkk == ruler))
36+func vip (kkk) = if (if (if (if (if (if (if (if (if (if ((kkk == ruler))
3537 then true
3638 else (kkk == ruler2))
3739 then true
3840 else (kkk == ruler3))
3941 then true
4042 else (kkk == ruler4))
4143 then true
4244 else (kkk == ruler5))
4345 then true
4446 else (kkk == ruler6))
4547 then true
4648 else (kkk == ruler7))
4749 then true
4850 else (kkk == ruler8))
4951 then true
5052 else (kkk == ruler9))
53+ then true
54+ else (kkk == ruler10))
5155 then true
5256 else false
5357
5458
5559 func getAssetId (pmt) = match pmt {
5660 case p: ByteVector =>
5761 pmt
5862 case _ =>
5963 unit
6064 }
6165
6266
6367 func getAssetString (assetId) = match assetId {
6468 case b: ByteVector =>
6569 toBase58String(b)
6670 case _ =>
6771 "WAVES"
6872 }
6973
7074
7175 func getAccBalance (assetId) = if ((assetId == "WAVES"))
7276 then wavesBalance(this).available
7377 else assetBalance(this, fromBase58String(assetId))
7478
7579
7680 func getAssetBytes (assetId) = if ((assetId == "WAVES"))
7781 then unit
7882 else fromBase58String(assetId)
7983
8084
8185 func myBalance (assetId) = match assetId {
8286 case b: ByteVector =>
8387 assetBalance(this, b)
8488 case _ =>
8589 wavesBalance(this).available
8690 }
8791
8892
8993 func swapLimit (params,t0Str) = {
9094 func doLimit (asset,orderParams) = {
9195 let ord = split(orderParams, ">")
92- let $t025152560 = $Tuple2(ord[0], ord[1])
93- let orderId = $t025152560._1
94- let orderAmount = $t025152560._2
96+ let $t026332678 = $Tuple2(ord[0], ord[1])
97+ let orderId = $t026332678._1
98+ let orderAmount = $t026332678._2
9599 let inv = invoke(Address(fromBase58String(limitContract)), "fulfillOrder", [orderId], [AttachedPayment(asset, parseIntValue(orderAmount))])
96100 if ((inv == inv))
97101 then asset
98102 else throw("Strict value is not equal to itself.")
99103 }
100104
101105 let ordersLi = split(params, ":")
102106 let t0 = getAssetBytes(t0Str)
103107 let result = {
104108 let $l = ordersLi
105109 let $s = size($l)
106110 let $acc0 = t0
107111 func $f0_1 ($a,$i) = if (($i >= $s))
108112 then $a
109113 else doLimit($a, $l[$i])
110114
111115 func $f0_2 ($a,$i) = if (($i >= $s))
112116 then $a
113117 else throw("List size exceeds 10")
114118
115119 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
116120 }
117121 if ((result == result))
118122 then 0
119123 else throw("Strict value is not equal to itself.")
120124 }
121125
122126
123127 func swapLend (params,t0Str,t1Str,amount) = {
124128 let arr = split(params, "-")
125- let $t029893046 = $Tuple3(arr[0], arr[1], arr[2])
126- let pool_address = $t029893046._1
127- let asset = $t029893046._2
128- let dir = $t029893046._3
129+ let $t031073164 = $Tuple3(arr[0], arr[1], arr[2])
130+ let pool_address = $t031073164._1
131+ let asset = $t031073164._2
132+ let dir = $t031073164._3
129133 let proxyAdr = Address(fromBase58String(lendProxyContract))
130134 let functionName = if ((dir == "0"))
131135 then "mintPL"
132136 else "redeemPL"
133137 invoke(proxyAdr, functionName, [0], [AttachedPayment(getAssetBytes(t0Str), amount)])
134138 }
135139
136140
137141 func swapPepe (params,t0Str,t1Str,amount) = {
138142 let arr = split(params, "-")
139- let $t034263476 = $Tuple2(arr[0], arr[1])
140- let pool_address = $t034263476._1
141- let functionTag = $t034263476._2
143+ let $t035443594 = $Tuple2(arr[0], arr[1])
144+ let pool_address = $t035443594._1
145+ let functionTag = $t035443594._2
142146 let swapAddress = Address(fromBase58String(pool_address))
143147 if ((functionTag == "d"))
144148 then invoke(swapAddress, "deposit", [0], [AttachedPayment(getAssetBytes(t0Str), amount)])
145149 else if ((functionTag == "w"))
146150 then invoke(swapAddress, "withdraw", [t1Str, 0], [AttachedPayment(getAssetBytes(t0Str), amount)])
147151 else if ((functionTag == "s"))
148152 then invoke(swapAddress, "swap", [t1Str, 0], [AttachedPayment(getAssetBytes(t0Str), amount)])
149153 else throw("Unknown function tag for pepe swap")
150154 }
151155
152156
153157 func makeSwap (pt,p,ami,ain,aou) = if ((pt == "pu"))
154158 then invoke(Address(fromBase58String(p)), "swap", [aou, 1], [AttachedPayment(ain, ami)])
155159 else if ((pt == "sw"))
156160 then invoke(Address(fromBase58String(p)), "exchange", [1], [AttachedPayment(ain, ami)])
157161 else if ((pt == "wx"))
158162 then invoke(Address(base58'3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93'), "swap", [1, aou, toString(this)], [AttachedPayment(ain, ami)])
159163 else if ((pt == "li"))
160164 then swapLimit(p, getAssetString(ain))
161165 else if ((pt == "ts"))
162166 then invoke(Address(fromBase58String(tsnContract)), "swap", [aou, 0], [AttachedPayment(ain, ami)])
163167 else if ((pt == "le"))
164168 then swapLend(p, getAssetString(ain), aou, ami)
165169 else if ((pt == "pe"))
166170 then swapPepe(p, getAssetString(ain), aou, ami)
167171 else throw("Unknown pool type")
168172
169173
170174 @Callable(i)
171175 func test () = $Tuple2(nil, "")
172176
173177
174178
175179 @Callable(i)
176180 func a (d) = {
177181 let callerPbk = toBase58String(i.callerPublicKey)
178182 if (!(vip(callerPbk)))
179183 then throw("No-no-no")
180184 else {
181185 let pmt = i.payments[0]
182186 let assetIn = getAssetId(pmt.assetId)
183187 let amountIn = value(pmt.amount)
184188 let arr = split(d, "|")
185- let $t053245404 = $Tuple6(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5])
186- let a1 = $t053245404._1
187- let p1 = $t053245404._2
188- let p1t = $t053245404._3
189- let p2 = $t053245404._4
190- let p2t = $t053245404._5
191- let m = $t053245404._6
189+ let $t054425522 = $Tuple6(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5])
190+ let a1 = $t054425522._1
191+ let p1 = $t054425522._2
192+ let p1t = $t054425522._3
193+ let p2 = $t054425522._4
194+ let p2t = $t054425522._5
195+ let m = $t054425522._6
192196 let minim = parseIntValue(m)
193197 let a1_bef = myBalance(getAssetBytes(a1))
194198 if ((a1_bef == a1_bef))
195199 then {
196200 let s1 = makeSwap(p1t, p1, amountIn, assetIn, a1)
197201 if ((s1 == s1))
198202 then {
199203 let nb1 = (myBalance(getAssetBytes(a1)) - a1_bef)
200204 if ((nb1 == nb1))
201205 then {
202206 let a_base_bef = myBalance(assetIn)
203207 if ((a_base_bef == a_base_bef))
204208 then {
205209 let s2 = makeSwap(p2t, p2, nb1, getAssetBytes(a1), getAssetString(assetIn))
206210 if ((s2 == s2))
207211 then {
208212 let result = (myBalance(assetIn) - a_base_bef)
209213 if ((result == result))
210214 then if ((result > minim))
211215 then {
212216 let hujabra = (result - amountIn)
213217 let retu = amountIn
214218 [ScriptTransfer(i.caller, retu, assetIn), ScriptTransfer(addressFromPublicKey(abracadbra), hujabra, assetIn)]
215219 }
216220 else throw(((((((("Ooops, in: " + toString(amountIn)) + ", 1: ") + toString(nb1)) + ", out: ") + toString(result)) + ", min: ") + toString(minim)))
217221 else throw("Strict value is not equal to itself.")
218222 }
219223 else throw("Strict value is not equal to itself.")
220224 }
221225 else throw("Strict value is not equal to itself.")
222226 }
223227 else throw("Strict value is not equal to itself.")
224228 }
225229 else throw("Strict value is not equal to itself.")
226230 }
227231 else throw("Strict value is not equal to itself.")
228232 }
229233 }
230234
231235
232236
233237 @Callable(i)
234238 func b (d) = {
235239 let callerPbk = toBase58String(i.callerPublicKey)
236240 if (!(vip(callerPbk)))
237241 then throw("No-no-no")
238242 else {
239243 let pmt = i.payments[0]
240244 let assetIn = getAssetId(pmt.assetId)
241245 let amountIn = value(pmt.amount)
242246 let arr = split(d, "|")
243- let $t066336750 = $Tuple9(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8])
244- let a1 = $t066336750._1
245- let p1 = $t066336750._2
246- let p1t = $t066336750._3
247- let a2 = $t066336750._4
248- let p2 = $t066336750._5
249- let p2t = $t066336750._6
250- let p3 = $t066336750._7
251- let p3t = $t066336750._8
252- let m = $t066336750._9
247+ let $t067516868 = $Tuple9(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8])
248+ let a1 = $t067516868._1
249+ let p1 = $t067516868._2
250+ let p1t = $t067516868._3
251+ let a2 = $t067516868._4
252+ let p2 = $t067516868._5
253+ let p2t = $t067516868._6
254+ let p3 = $t067516868._7
255+ let p3t = $t067516868._8
256+ let m = $t067516868._9
253257 let minim = parseIntValue(m)
254258 let a1_bef = myBalance(getAssetBytes(a1))
255259 if ((a1_bef == a1_bef))
256260 then {
257261 let s1 = makeSwap(p1t, p1, amountIn, assetIn, a1)
258262 if ((s1 == s1))
259263 then {
260264 let nb1 = (myBalance(getAssetBytes(a1)) - a1_bef)
261265 if ((nb1 == nb1))
262266 then {
263267 let a2_bef = myBalance(getAssetBytes(a2))
264268 if ((a2_bef == a2_bef))
265269 then {
266270 let s2 = makeSwap(p2t, p2, nb1, getAssetBytes(a1), a2)
267271 if ((s2 == s2))
268272 then {
269273 let nb2 = (myBalance(getAssetBytes(a2)) - a2_bef)
270274 if ((nb2 == nb2))
271275 then {
272276 let a_base_bef = myBalance(assetIn)
273277 if ((a_base_bef == a_base_bef))
274278 then {
275279 let s3 = makeSwap(p3t, p3, nb2, getAssetBytes(a2), getAssetString(assetIn))
276280 if ((s3 == s3))
277281 then {
278282 let result = (myBalance(assetIn) - a_base_bef)
279283 if ((result == result))
280284 then if ((result > minim))
281285 then {
282286 let hujabra = (result - amountIn)
283287 let retu = amountIn
284288 [ScriptTransfer(i.caller, retu, assetIn), ScriptTransfer(addressFromPublicKey(abracadbra), hujabra, assetIn)]
285289 }
286290 else throw(((((((((("Ooops, in: " + toString(amountIn)) + ", 1: ") + toString(nb1)) + ", 2: ") + toString(nb2)) + ", out: ") + toString(result)) + ", min: ") + toString(minim)))
287291 else throw("Strict value is not equal to itself.")
288292 }
289293 else throw("Strict value is not equal to itself.")
290294 }
291295 else throw("Strict value is not equal to itself.")
292296 }
293297 else throw("Strict value is not equal to itself.")
294298 }
295299 else throw("Strict value is not equal to itself.")
296300 }
297301 else throw("Strict value is not equal to itself.")
298302 }
299303 else throw("Strict value is not equal to itself.")
300304 }
301305 else throw("Strict value is not equal to itself.")
302306 }
303307 else throw("Strict value is not equal to itself.")
304308 }
305309 }
306310
307311
308312
309313 @Callable(i)
310314 func c (d) = {
311315 let callerPbk = toBase58String(i.callerPublicKey)
312316 if (!(vip(callerPbk)))
313317 then throw("No-no-no")
314318 else {
315319 let pmt = i.payments[0]
316320 let assetIn = getAssetId(pmt.assetId)
317321 let amountIn = value(pmt.amount)
318322 let arr = split(d, "|")
319- let $t082558411 = $Tuple12(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8], arr[9], arr[10], arr[11])
320- let a1 = $t082558411._1
321- let p1 = $t082558411._2
322- let p1t = $t082558411._3
323- let a2 = $t082558411._4
324- let p2 = $t082558411._5
325- let p2t = $t082558411._6
326- let a3 = $t082558411._7
327- let p3 = $t082558411._8
328- let p3t = $t082558411._9
329- let p4 = $t082558411._10
330- let p4t = $t082558411._11
331- let m = $t082558411._12
323+ let $t083738529 = $Tuple12(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8], arr[9], arr[10], arr[11])
324+ let a1 = $t083738529._1
325+ let p1 = $t083738529._2
326+ let p1t = $t083738529._3
327+ let a2 = $t083738529._4
328+ let p2 = $t083738529._5
329+ let p2t = $t083738529._6
330+ let a3 = $t083738529._7
331+ let p3 = $t083738529._8
332+ let p3t = $t083738529._9
333+ let p4 = $t083738529._10
334+ let p4t = $t083738529._11
335+ let m = $t083738529._12
332336 let minim = parseIntValue(m)
333337 let a1_bef = myBalance(getAssetBytes(a1))
334338 if ((a1_bef == a1_bef))
335339 then {
336340 let s1 = makeSwap(p1t, p1, amountIn, assetIn, a1)
337341 if ((s1 == s1))
338342 then {
339343 let nb1 = (myBalance(getAssetBytes(a1)) - a1_bef)
340344 if ((nb1 == nb1))
341345 then {
342346 let a2_bef = myBalance(getAssetBytes(a2))
343347 if ((a2_bef == a2_bef))
344348 then {
345349 let s2 = makeSwap(p2t, p2, nb1, getAssetBytes(a1), a2)
346350 if ((s2 == s2))
347351 then {
348352 let nb2 = (myBalance(getAssetBytes(a2)) - a2_bef)
349353 if ((nb2 == nb2))
350354 then {
351355 let a3_bef = myBalance(getAssetBytes(a3))
352356 if ((a3_bef == a3_bef))
353357 then {
354358 let s3 = makeSwap(p3t, p3, nb2, getAssetBytes(a2), a3)
355359 if ((s3 == s3))
356360 then {
357361 let nb3 = (myBalance(getAssetBytes(a3)) - a3_bef)
358362 if ((nb3 == nb3))
359363 then {
360364 let a_base_bef = myBalance(assetIn)
361365 if ((a_base_bef == a_base_bef))
362366 then {
363367 let s4 = makeSwap(p4t, p4, nb3, getAssetBytes(a3), getAssetString(assetIn))
364368 if ((s4 == s4))
365369 then {
366370 let result = (myBalance(assetIn) - a_base_bef)
367371 if ((result == result))
368372 then if ((result > minim))
369373 then {
370374 let hujabra = (result - amountIn)
371375 let retu = amountIn
372376 [ScriptTransfer(i.caller, retu, assetIn), ScriptTransfer(addressFromPublicKey(abracadbra), hujabra, assetIn)]
373377 }
374378 else throw(((((((((((("Ooops, in: " + toString(amountIn)) + ", 1: ") + toString(nb1)) + ", 2: ") + toString(nb2)) + ", 3: ") + toString(nb3)) + ", out: ") + toString(result)) + ", min: ") + toString(minim)))
375379 else throw("Strict value is not equal to itself.")
376380 }
377381 else throw("Strict value is not equal to itself.")
378382 }
379383 else throw("Strict value is not equal to itself.")
380384 }
381385 else throw("Strict value is not equal to itself.")
382386 }
383387 else throw("Strict value is not equal to itself.")
384388 }
385389 else throw("Strict value is not equal to itself.")
386390 }
387391 else throw("Strict value is not equal to itself.")
388392 }
389393 else throw("Strict value is not equal to itself.")
390394 }
391395 else throw("Strict value is not equal to itself.")
392396 }
393397 else throw("Strict value is not equal to itself.")
394398 }
395399 else throw("Strict value is not equal to itself.")
396400 }
397401 else throw("Strict value is not equal to itself.")
398402 }
399403 }
400404
401405
402406 @Verifier(tx)
403407 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
404408

github/deemru/w8io/3ef1775 
67.42 ms