tx · AqamNYe7nt9a8Hou2mBJnx9qfbZPTWGzJxvWYMcCpgC5 3P6J84oH51DzY6xk2mT5TheXRbrCwBMxonp: -0.01100000 Waves 2023.11.17 12:12 [3913005] smart account 3P6J84oH51DzY6xk2mT5TheXRbrCwBMxonp > SELF 0.00000000 Waves
{ "type": 13, "id": "AqamNYe7nt9a8Hou2mBJnx9qfbZPTWGzJxvWYMcCpgC5", "fee": 1100000, "feeAssetId": null, "timestamp": 1700212410948, "version": 2, "chainId": 87, "sender": "3P6J84oH51DzY6xk2mT5TheXRbrCwBMxonp", "senderPublicKey": "GTY8yEJ2S4heRompxyvbJoBN1Td5BM5Pp4JgVbj9tmCw", "proofs": [ "", "4bFAqWPyfexf7WVtXf9AroFwQt8XCtLtDpumP8Je7USYF23udNFcRkAPSEr9gZXzRq4Gqt8PvbK79NSaUtxH681Z", "4dDVHxMLGuzv1y6Q8cJSMst5oSbEdar6gcwXMFJeWuwiPDGaXMZkjiEbQ7gFRnaDj4yC5jbiBbhN6XDNyngvGVkH" ], "script": "base64:BgILCAISBwoFGAQICAEcAAZvcmFjbGUJAQdBZGRyZXNzAQEaAVeK/whomjW6QM1hdPISN96mN/D6OM7oHjgADWtBZG1pblB1YktleTECC2FkbWluX3B1Yl8xAA1rQWRtaW5QdWJLZXkyAgthZG1pbl9wdWJfMgANa0FkbWluUHViS2V5MwILYWRtaW5fcHViXzMAEmtBZG1pbkludm9rZVB1YktleQIQYWRtaW5faW52b2tlX3B1YgALa0dvdkFkZHJlc3MCEmdvdmVybmFuY2VfYWRkcmVzcwAMa0Zhcm1BZGRyZXNzAg9mYXJtaW5nX2FkZHJlc3MAD2tTdXJ2ZXlzQWRkcmVzcwIPc3VydmV5c19hZGRyZXNzAAxrUm91dGluZ0FkZHICD3JvdXRpbmdfYWRkcmVzcwAHa1NXT1BpZAIHU1dPUF9pZAAPa1ByZWZpeFBvb2xOYW1lAgVwb29sXwETZ2V0QmFzZTU4RnJvbU9yYWNsZQEDa2V5BAckbWF0Y2gwCQCdCAIFBm9yYWNsZQUDa2V5AwkAAQIFByRtYXRjaDACBlN0cmluZwQGc3RyaW5nBQckbWF0Y2gwCQDZBAEFBnN0cmluZwQHbm90aGluZwUHJG1hdGNoMAkAAgEJAKwCAgUDa2V5AghpcyBlbXB0eQAMYWRtaW5QdWJLZXkxCQETZ2V0QmFzZTU4RnJvbU9yYWNsZQEFDWtBZG1pblB1YktleTEADGFkbWluUHViS2V5MgkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQ1rQWRtaW5QdWJLZXkyAAxhZG1pblB1YktleTMJARNnZXRCYXNlNThGcm9tT3JhY2xlAQUNa0FkbWluUHViS2V5MwALYWRtaW5JbnZva2UJARNnZXRCYXNlNThGcm9tT3JhY2xlAQUSa0FkbWluSW52b2tlUHViS2V5ABFnb3Zlcm5hbmNlQWRkcmVzcwkBB0FkZHJlc3MBCQETZ2V0QmFzZTU4RnJvbU9yYWNsZQEFC2tHb3ZBZGRyZXNzAA5mYXJtaW5nQWRkcmVzcwkBB0FkZHJlc3MBCQETZ2V0QmFzZTU4RnJvbU9yYWNsZQEFDGtGYXJtQWRkcmVzcwAOc3VydmV5c0FkZHJlc3MJAQdBZGRyZXNzAQkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQ9rU3VydmV5c0FkZHJlc3MADnJvdXRpbmdBZGRyZXNzCQEHQWRkcmVzcwEJARNnZXRCYXNlNThGcm9tT3JhY2xlAQUMa1JvdXRpbmdBZGRyAAZzd29wSWQJANkEAQkBEUBleHRyTmF0aXZlKDEwNTMpAgUOZmFybWluZ0FkZHJlc3MFB2tTV09QaWQBCmlzU2VsZkNhbGwBAWkDCQAAAggFAWkGY2FsbGVyBQR0aGlzBQR1bml0CQACAQIrT25seSBjb250cmFjdCBpdHNlbGYgY2FuIGNhbGwgdGhpcyBmdW5jdGlvbgEJbGlzdFRvSW50AgFhBGl0ZW0JAM0IAgUBYQkBDXBhcnNlSW50VmFsdWUBBQRpdGVtAQ5hc3NldElkRnJvbVN0cgEHYXNzZXRJZAMJAAACBQdhc3NldElkAgVXQVZFUwUEdW5pdAkA2QQBBQdhc3NldElkAQ5hY2NvdW50QmFsYW5jZQEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAJpZAUHJG1hdGNoMAkA8AcCBQR0aGlzBQJpZAMJAAECBQckbWF0Y2gwAgRVbml0BAV3YXZlcwUHJG1hdGNoMAgJAO8HAQUEdGhpcwlhdmFpbGFibGUJAAIBAgtNYXRjaCBlcnJvcgEQZGlyZWN0U3dvcGZpQ1BNTQEFckFyZ3MEBGRBcHAJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAJEDAgUFckFyZ3MAAQQDcG10BARwbXRQCQC1CQIJAJEDAgUFckFyZ3MAAgIBfAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBCQCRAwIFBHBtdFAAAAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFBHBtdFAAAQUDbmlsBAttaW5Ub1JlY2l2ZQkAkQMCBQVyQXJncwADCQD8BwQFBGRBcHACDGNhbGxGdW5jdGlvbgkAzAgCAghleGNoYW5nZQkAzAgCCQDMCAIFC21pblRvUmVjaXZlBQNuaWwFA25pbAUDcG10ARNkaXJlY3RSb3V0aW5nU3dvcGZpAQVyQXJncwQEZEFwcAkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQVyQXJncwABBANwbXQEBHBtdFAJALUJAgkAkQMCBQVyQXJncwACAgF8CQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQDZBAEJAJEDAgUEcG10UAAACQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUEcG10UAABBQNuaWwEBGFyZ3MEBWVBcmdzCQC1CQIJAJEDAgUFckFyZ3MAAwIBfAQKZXhjaGFuZ2VycwkAtQkCCQCRAwIFBWVBcmdzAAACASwEDmV4Y2hhbmdlcnNUeXBlCQC1CQIJAJEDAgUFZUFyZ3MAAQIBLAQFYXJnczEKAAIkbAkAtQkCCQCRAwIFBWVBcmdzAAICASwKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCWxpc3RUb0ludAIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQITTGlzdCBzaXplIGV4Y2VlZHMgMwkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwQFYXJnczIKAAIkbAkAtQkCCQCRAwIFBWVBcmdzAAMCASwKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjFfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCWxpc3RUb0ludAIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMV8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQITTGlzdCBzaXplIGV4Y2VlZHMgMwkBBSRmMV8yAgkBBSRmMV8xAgkBBSRmMV8xAgkBBSRmMV8xAgUFJGFjYzAAAAABAAIAAwQRcm91dGluZ0Fzc2V0c0tleXMJALUJAgkAkQMCBQVlQXJncwAEAgEsBAttaW5Ub1JlY2l2ZQkBDXBhcnNlSW50VmFsdWUBCQCRAwIFBWVBcmdzAAUJAMwIAgUKZXhjaGFuZ2VycwkAzAgCBQ5leGNoYW5nZXJzVHlwZQkAzAgCBQVhcmdzMQkAzAgCBQVhcmdzMgkAzAgCBRFyb3V0aW5nQXNzZXRzS2V5cwkAzAgCBQttaW5Ub1JlY2l2ZQUDbmlsCQD8BwQFBGRBcHACDHJvdXRpbmdUcmFkZQUEYXJncwUDcG10ARFidXlTd29wRm9yQWlyZHJvcAMEcG9vbA90b2tlblRvRXhjaGFuZ2URYW1vdW50VG9MZWZ0Rm9yVHgEB3Rva2VuSWQJAQ5hc3NldElkRnJvbVN0cgEFD3Rva2VuVG9FeGNoYW5nZQQMdG9rZW5CYWxhbmNlCQEOYWNjb3VudEJhbGFuY2UBBQd0b2tlbklkAwkAAAIFDHRva2VuQmFsYW5jZQUMdG9rZW5CYWxhbmNlBBBhbW91bnRUb0V4Y2hhbmdlCQBlAgUMdG9rZW5CYWxhbmNlBRFhbW91bnRUb0xlZnRGb3JUeAMJAGcCAAAFEGFtb3VudFRvRXhjaGFuZ2UJAAIBAh9Ob3RoaW5nIHRvIGV4Y2hhbmdlIGZvciBhaXJkcm9wBAhwb29sQWRkcgkBEUBleHRyTmF0aXZlKDEwNjIpAQUEcG9vbAkA/AcEBQhwb29sQWRkcgIMY2FsbEZ1bmN0aW9uCQDMCAICCGV4Y2hhbmdlCQDMCAIJAMwIAgABBQNuaWwFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHdG9rZW5JZAUQYW1vdW50VG9FeGNoYW5nZQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQFpAQ5leGNoYW5nZVRva2VucwUGcm91dGVzB2FpcmRyb3AEcG9vbA90b2tlblRvRXhjaGFuZ2URYW1vdW50VG9MZWZ0Rm9yVHgJAQt2YWx1ZU9yRWxzZQIJAQppc1NlbGZDYWxsAQUBaQoBDWV4Y2hhbmdlVG9rZW4CAXIFcm91dGUEBXJBcmdzCQC1CQIFBXJvdXRlAgJfXwMJAAACCQCRAwIFBXJBcmdzAAACEGRpcmVjdFN3b3BmaUNQTU0EA2ludgkBEGRpcmVjdFN3b3BmaUNQTU0BBQVyQXJncwMJAAACBQNpbnYFA2ludgkAzQgCBQFyBQNpbnYJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DCQAAAgkAkQMCBQVyQXJncwAAAg1yb3V0aW5nU3dvcGZpBANpbnYJARNkaXJlY3RSb3V0aW5nU3dvcGZpAQUFckFyZ3MDCQAAAgUDaW52BQNpbnYJAM0IAgUBcgUDaW52CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQISVW5rbm93biByb3V0ZSB0eXBlBANyZXMKAAIkbAUGcm91dGVzCgACJHMJAJADAQUCJGwKAAUkYWNjMAUDbmlsCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQ1leGNoYW5nZVRva2VuAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMgkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAMJAAACBQNyZXMFA3JlcwMJAQEhAQUHYWlyZHJvcAUDbmlsBANpbnYJARFidXlTd29wRm9yQWlyZHJvcAMFBHBvb2wFD3Rva2VuVG9FeGNoYW5nZQURYW1vdW50VG9MZWZ0Rm9yVHgDCQAAAgUDaW52BQNpbnYEC3N3b3BCYWxhbmNlCQEOYWNjb3VudEJhbGFuY2UBBQZzd29wSWQDCQAAAgULc3dvcEJhbGFuY2UFC3N3b3BCYWxhbmNlBARhSW52CQD8BwQFEWdvdmVybmFuY2VBZGRyZXNzAgdhaXJEcm9wBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBnN3b3BJZAULc3dvcEJhbGFuY2UFA25pbAMJAAACBQRhSW52BQRhSW52BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAnR4AQZ2ZXJpZnkABAckbWF0Y2gwBQJ0eAMJAAECBQckbWF0Y2gwAhdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgQDaW52BQckbWF0Y2gwBAppc1JpZ2h0RmVlAwkAAAIIBQNpbnYDZmVlAKD3NgkAAAIIBQNpbnYKZmVlQXNzZXRJZAUEdW5pdAcEDWlzUm91dGluZ0NhbGwDCQAAAggFA2ludgRkQXBwBQ5yb3V0aW5nQWRkcmVzcwkAAAIIBQNpbnYIZnVuY3Rpb24CDHJvdXRpbmdUcmFkZQcEEmlzRXhjaGFuZ2VDYWxsQ1BNTQMDCQEJaXNEZWZpbmVkAQkAnQgCBQZvcmFjbGUJAKwCAgUPa1ByZWZpeFBvb2xOYW1lCQClCAEJAKQIAQgFA2ludgRkQXBwCQAAAggFA2ludghmdW5jdGlvbgIMY2FsbEZ1bmN0aW9uBwkAAAIJAJEDAggFA2ludgRhcmdzAAACCGV4Y2hhbmdlBwQOaXNFeGNoYW5nZUNhbGwDCQEJaXNEZWZpbmVkAQkAnQgCBQZvcmFjbGUJAKwCAgUPa1ByZWZpeFBvb2xOYW1lCQClCAEJAKQIAQgFA2ludgRkQXBwCQAAAggFA2ludghmdW5jdGlvbgIIZXhjaGFuZ2UHBA1pc0FpcmRyb3BDYWxsCQAAAggFA2ludghmdW5jdGlvbgIOZXhjaGFuZ2VUb2tlbnMEE2lzVXBkYXRlV2VpZ2h0c0NhbGwDCQAAAggFA2ludgRkQXBwBRFnb3Zlcm5hbmNlQWRkcmVzcwkAAAIIBQNpbnYIZnVuY3Rpb24CDXVwZGF0ZVdlaWdodHMHBBZpc1Rha2VuSW50b0FjY291bnRDUE1NAwMJAQlpc0RlZmluZWQBCQCdCAIFBm9yYWNsZQkArAICBQ9rUHJlZml4UG9vbE5hbWUJAKUIAQkApAgBCAUDaW52BGRBcHAJAAACCAUDaW52CGZ1bmN0aW9uAgxjYWxsRnVuY3Rpb24HCQAAAgkAkQMCCAUDaW52BGFyZ3MAAAIZdGFrZUludG9BY2NvdW50RXh0cmFGdW5kcwcEEmlzVGFrZW5JbnRvQWNjb3VudAMJAQlpc0RlZmluZWQBCQCdCAIFBm9yYWNsZQkArAICBQ9rUHJlZml4UG9vbE5hbWUJAKUIAQkApAgBCAUDaW52BGRBcHAJAAACCAUDaW52CGZ1bmN0aW9uAhl0YWtlSW50b0FjY291bnRFeHRyYUZ1bmRzBwQMaXNXcml0ZVRvdGFsAwkAAAIIBQNpbnYEZEFwcAUOc3VydmV5c0FkZHJlc3MJAAACCAUDaW52CGZ1bmN0aW9uAgt3cml0ZVRvdGFscwcEEmFkbWluUHViS2V5MVNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFDGFkbWluUHViS2V5MQABAAAEEmFkbWluUHViS2V5MlNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFDGFkbWluUHViS2V5MgABAAAEEmFkbWluUHViS2V5M1NpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFDGFkbWluUHViS2V5MwABAAAEF2FkbWluUHViS2V5SW52b2tlU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAULYWRtaW5JbnZva2UAAQAABBBzaWduZWRCeU9uZUFkbWluCQBnAgkAZAIJAGQCCQBkAgUSYWRtaW5QdWJLZXkxU2lnbmVkBRJhZG1pblB1YktleTJTaWduZWQFEmFkbWluUHViS2V5M1NpZ25lZAUXYWRtaW5QdWJLZXlJbnZva2VTaWduZWQAAQMDAwMDAwMFDmlzRXhjaGFuZ2VDYWxsBgUSaXNFeGNoYW5nZUNhbGxDUE1NBgUNaXNBaXJkcm9wQ2FsbAYFDWlzUm91dGluZ0NhbGwJAAACCQCQAwEIBQNpbnYIcGF5bWVudHMAAQcGAwMDAwUTaXNVcGRhdGVXZWlnaHRzQ2FsbAYFEmlzVGFrZW5JbnRvQWNjb3VudAYFFmlzVGFrZW5JbnRvQWNjb3VudENQTU0GBQxpc1dyaXRlVG90YWwJAAACCQCQAwEIBQNpbnYIcGF5bWVudHMAAAcFEHNpZ25lZEJ5T25lQWRtaW4HBQppc1JpZ2h0RmVlBwQSYWRtaW5QdWJLZXkxU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAUMYWRtaW5QdWJLZXkxAAEAAAQSYWRtaW5QdWJLZXkyU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAQUMYWRtaW5QdWJLZXkyAAEAAAQSYWRtaW5QdWJLZXkzU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAgUMYWRtaW5QdWJLZXkzAAEAAAkAZwIJAGQCCQBkAgUSYWRtaW5QdWJLZXkxU2lnbmVkBRJhZG1pblB1YktleTJTaWduZWQFEmFkbWluUHViS2V5M1NpZ25lZAACQDLV9g==", "height": 3913005, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GkSJdHJ915cB9pLCyzvuDvK5VocFHKWeHFrrt1zbcYfm Next: 2ZN9D1h4NHKRqURwvjLGJp7w83BWfHxgwVRRMA2X7vhU Diff:
Old | New | Differences | |
---|---|---|---|
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = Address(base58'3PEbqViERCoKnmcSULh6n2aiMvUdSQdCsom') | |
5 | 5 | ||
6 | - | func b (c) = { | |
7 | - | let d = getString(a, c) | |
8 | - | if ($isInstanceOf(d, "String")) | |
6 | + | let b = "admin_pub_1" | |
7 | + | ||
8 | + | let c = "admin_pub_2" | |
9 | + | ||
10 | + | let d = "admin_pub_3" | |
11 | + | ||
12 | + | let e = "admin_invoke_pub" | |
13 | + | ||
14 | + | let f = "governance_address" | |
15 | + | ||
16 | + | let g = "farming_address" | |
17 | + | ||
18 | + | let h = "surveys_address" | |
19 | + | ||
20 | + | let i = "routing_address" | |
21 | + | ||
22 | + | let j = "SWOP_id" | |
23 | + | ||
24 | + | let k = "pool_" | |
25 | + | ||
26 | + | func l (m) = { | |
27 | + | let n = getString(a, m) | |
28 | + | if ($isInstanceOf(n, "String")) | |
9 | 29 | then { | |
10 | - | let | |
11 | - | fromBase58String( | |
30 | + | let o = n | |
31 | + | fromBase58String(o) | |
12 | 32 | } | |
13 | 33 | else { | |
14 | - | let | |
15 | - | throw(( | |
34 | + | let p = n | |
35 | + | throw((m + "is empty")) | |
16 | 36 | } | |
17 | 37 | } | |
18 | 38 | ||
19 | 39 | ||
20 | - | let | |
40 | + | let q = l(b) | |
21 | 41 | ||
22 | - | let | |
42 | + | let r = l(c) | |
23 | 43 | ||
24 | - | let | |
44 | + | let s = l(d) | |
25 | 45 | ||
26 | - | let | |
46 | + | let t = l(e) | |
27 | 47 | ||
28 | - | let | |
48 | + | let u = Address(l(f)) | |
29 | 49 | ||
30 | - | let | |
50 | + | let v = Address(l(g)) | |
31 | 51 | ||
32 | - | let | |
52 | + | let w = Address(l(h)) | |
33 | 53 | ||
34 | - | let | |
54 | + | let x = Address(l(i)) | |
35 | 55 | ||
36 | - | let | |
56 | + | let y = fromBase58String(getStringValue(v, j)) | |
37 | 57 | ||
38 | - | let p = b(h) | |
39 | - | ||
40 | - | let q = b(i) | |
41 | - | ||
42 | - | let r = b(j) | |
43 | - | ||
44 | - | let s = Address(b(k)) | |
45 | - | ||
46 | - | let t = Address(b(l)) | |
47 | - | ||
48 | - | let u = Address(b(m)) | |
49 | - | ||
50 | - | let v = Address(b(n)) | |
51 | - | ||
52 | - | let w = "pool_" | |
58 | + | func z (A) = if ((A.caller == this)) | |
59 | + | then unit | |
60 | + | else throw("Only contract itself can call this function") | |
53 | 61 | ||
54 | 62 | ||
55 | - | @Verifier(x) | |
56 | - | func y () = { | |
57 | - | let d = x | |
58 | - | if ($isInstanceOf(d, "InvokeScriptTransaction")) | |
63 | + | func B (C,D) = (C :+ parseIntValue(D)) | |
64 | + | ||
65 | + | ||
66 | + | func E (F) = if ((F == "WAVES")) | |
67 | + | then unit | |
68 | + | else fromBase58String(F) | |
69 | + | ||
70 | + | ||
71 | + | func G (F) = { | |
72 | + | let n = F | |
73 | + | if ($isInstanceOf(n, "ByteVector")) | |
59 | 74 | then { | |
60 | - | let z = d | |
61 | - | let A = if ((z.fee == 900000)) | |
62 | - | then (z.feeAssetId == unit) | |
75 | + | let H = n | |
76 | + | assetBalance(this, H) | |
77 | + | } | |
78 | + | else if ($isInstanceOf(n, "Unit")) | |
79 | + | then { | |
80 | + | let I = n | |
81 | + | wavesBalance(this).available | |
82 | + | } | |
83 | + | else throw("Match error") | |
84 | + | } | |
85 | + | ||
86 | + | ||
87 | + | func J (K) = { | |
88 | + | let L = addressFromStringValue(K[1]) | |
89 | + | let M = { | |
90 | + | let N = split(K[2], "|") | |
91 | + | [AttachedPayment(fromBase58String(N[0]), parseIntValue(N[1]))] | |
92 | + | } | |
93 | + | let O = K[3] | |
94 | + | invoke(L, "callFunction", ["exchange", [O]], M) | |
95 | + | } | |
96 | + | ||
97 | + | ||
98 | + | func P (K) = { | |
99 | + | let L = addressFromStringValue(K[1]) | |
100 | + | let M = { | |
101 | + | let N = split(K[2], "|") | |
102 | + | [AttachedPayment(fromBase58String(N[0]), parseIntValue(N[1]))] | |
103 | + | } | |
104 | + | let Q = { | |
105 | + | let R = split(K[3], "|") | |
106 | + | let S = split(R[0], ",") | |
107 | + | let T = split(R[1], ",") | |
108 | + | let U = { | |
109 | + | let V = split(R[2], ",") | |
110 | + | let W = size(V) | |
111 | + | let X = nil | |
112 | + | func Y (Z,aa) = if ((aa >= W)) | |
113 | + | then Z | |
114 | + | else B(Z, V[aa]) | |
115 | + | ||
116 | + | func ab (Z,aa) = if ((aa >= W)) | |
117 | + | then Z | |
118 | + | else throw("List size exceeds 3") | |
119 | + | ||
120 | + | ab(Y(Y(Y(X, 0), 1), 2), 3) | |
121 | + | } | |
122 | + | let ac = { | |
123 | + | let V = split(R[3], ",") | |
124 | + | let W = size(V) | |
125 | + | let X = nil | |
126 | + | func ad (Z,aa) = if ((aa >= W)) | |
127 | + | then Z | |
128 | + | else B(Z, V[aa]) | |
129 | + | ||
130 | + | func ae (Z,aa) = if ((aa >= W)) | |
131 | + | then Z | |
132 | + | else throw("List size exceeds 3") | |
133 | + | ||
134 | + | ae(ad(ad(ad(X, 0), 1), 2), 3) | |
135 | + | } | |
136 | + | let af = split(R[4], ",") | |
137 | + | let O = parseIntValue(R[5]) | |
138 | + | [S, T, U, ac, af, O] | |
139 | + | } | |
140 | + | invoke(L, "routingTrade", Q, M) | |
141 | + | } | |
142 | + | ||
143 | + | ||
144 | + | func ag (ah,ai,aj) = { | |
145 | + | let ak = E(ai) | |
146 | + | let al = G(ak) | |
147 | + | if ((al == al)) | |
148 | + | then { | |
149 | + | let am = (al - aj) | |
150 | + | if ((0 >= am)) | |
151 | + | then throw("Nothing to exchange for airdrop") | |
152 | + | else { | |
153 | + | let an = addressFromStringValue(ah) | |
154 | + | invoke(an, "callFunction", ["exchange", [1]], [AttachedPayment(ak, am)]) | |
155 | + | } | |
156 | + | } | |
157 | + | else throw("Strict value is not equal to itself.") | |
158 | + | } | |
159 | + | ||
160 | + | ||
161 | + | @Callable(A) | |
162 | + | func exchangeTokens (ao,ap,ah,ai,aj) = valueOrElse(z(A), { | |
163 | + | func aq (ar,as) = { | |
164 | + | let K = split(as, "__") | |
165 | + | if ((K[0] == "directSwopfiCPMM")) | |
166 | + | then { | |
167 | + | let at = J(K) | |
168 | + | if ((at == at)) | |
169 | + | then (ar :+ at) | |
170 | + | else throw("Strict value is not equal to itself.") | |
171 | + | } | |
172 | + | else if ((K[0] == "routingSwopfi")) | |
173 | + | then { | |
174 | + | let at = P(K) | |
175 | + | if ((at == at)) | |
176 | + | then (ar :+ at) | |
177 | + | else throw("Strict value is not equal to itself.") | |
178 | + | } | |
179 | + | else throw("Unknown route type") | |
180 | + | } | |
181 | + | ||
182 | + | let au = { | |
183 | + | let V = ao | |
184 | + | let W = size(V) | |
185 | + | let X = nil | |
186 | + | func Y (Z,aa) = if ((aa >= W)) | |
187 | + | then Z | |
188 | + | else aq(Z, V[aa]) | |
189 | + | ||
190 | + | func ab (Z,aa) = if ((aa >= W)) | |
191 | + | then Z | |
192 | + | else throw("List size exceeds 12") | |
193 | + | ||
194 | + | ab(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(X, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12) | |
195 | + | } | |
196 | + | if ((au == au)) | |
197 | + | then if (!(ap)) | |
198 | + | then nil | |
199 | + | else { | |
200 | + | let at = ag(ah, ai, aj) | |
201 | + | if ((at == at)) | |
202 | + | then { | |
203 | + | let av = G(y) | |
204 | + | if ((av == av)) | |
205 | + | then { | |
206 | + | let aw = invoke(u, "airDrop", nil, [AttachedPayment(y, av)]) | |
207 | + | if ((aw == aw)) | |
208 | + | then nil | |
209 | + | else throw("Strict value is not equal to itself.") | |
210 | + | } | |
211 | + | else throw("Strict value is not equal to itself.") | |
212 | + | } | |
213 | + | else throw("Strict value is not equal to itself.") | |
214 | + | } | |
215 | + | else throw("Strict value is not equal to itself.") | |
216 | + | }) | |
217 | + | ||
218 | + | ||
219 | + | @Verifier(ax) | |
220 | + | func ay () = { | |
221 | + | let n = ax | |
222 | + | if ($isInstanceOf(n, "InvokeScriptTransaction")) | |
223 | + | then { | |
224 | + | let at = n | |
225 | + | let az = if ((at.fee == 900000)) | |
226 | + | then (at.feeAssetId == unit) | |
63 | 227 | else false | |
64 | - | let | |
65 | - | then ( | |
228 | + | let aA = if ((at.dApp == x)) | |
229 | + | then (at.function == "routingTrade") | |
66 | 230 | else false | |
67 | - | let | |
68 | - | then ( | |
231 | + | let aB = if (if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
232 | + | then (at.function == "callFunction") | |
69 | 233 | else false) | |
70 | - | then ( | |
234 | + | then (at.args[0] == "exchange") | |
71 | 235 | else false | |
72 | - | let | |
73 | - | then ( | |
236 | + | let aC = if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
237 | + | then (at.function == "exchange") | |
74 | 238 | else false | |
75 | - | let E = if ((z.dApp == s)) | |
76 | - | then (z.function == "airDrop") | |
239 | + | let aD = (at.function == "exchangeTokens") | |
240 | + | let aE = if ((at.dApp == u)) | |
241 | + | then (at.function == "updateWeights") | |
77 | 242 | else false | |
78 | - | let F = if ((z.dApp == s)) | |
79 | - | then (z.function == "updateWeights") | |
243 | + | let aF = if (if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
244 | + | then (at.function == "callFunction") | |
245 | + | else false) | |
246 | + | then (at.args[0] == "takeIntoAccountExtraFunds") | |
80 | 247 | else false | |
81 | - | let G = if (if (isDefined(getString(a, (w + toString(addressFromRecipient(z.dApp)))))) | |
82 | - | then (z.function == "callFunction") | |
83 | - | else false) | |
84 | - | then (z.args[0] == "takeIntoAccountExtraFunds") | |
248 | + | let aG = if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
249 | + | then (at.function == "takeIntoAccountExtraFunds") | |
85 | 250 | else false | |
86 | - | let | |
87 | - | then ( | |
251 | + | let aH = if ((at.dApp == w)) | |
252 | + | then (at.function == "writeTotals") | |
88 | 253 | else false | |
89 | - | let I = if ((z.dApp == u)) | |
90 | - | then (z.function == "writeTotals") | |
91 | - | else false | |
92 | - | let J = if (sigVerify(x.bodyBytes, x.proofs[0], o)) | |
254 | + | let aI = if (sigVerify(ax.bodyBytes, ax.proofs[0], q)) | |
93 | 255 | then 1 | |
94 | 256 | else 0 | |
95 | - | let | |
257 | + | let aJ = if (sigVerify(ax.bodyBytes, ax.proofs[0], r)) | |
96 | 258 | then 1 | |
97 | 259 | else 0 | |
98 | - | let | |
260 | + | let aK = if (sigVerify(ax.bodyBytes, ax.proofs[0], s)) | |
99 | 261 | then 1 | |
100 | 262 | else 0 | |
101 | - | let | |
263 | + | let aL = if (sigVerify(ax.bodyBytes, ax.proofs[0], t)) | |
102 | 264 | then 1 | |
103 | 265 | else 0 | |
104 | - | let | |
105 | - | if (if (if (if (if (if (if ( | |
266 | + | let aM = ((((aI + aJ) + aK) + aL) >= 1) | |
267 | + | if (if (if (if (if (if (if (aC) | |
106 | 268 | then true | |
107 | - | else | |
269 | + | else aB) | |
108 | 270 | then true | |
109 | - | else | |
271 | + | else aD) | |
110 | 272 | then true | |
111 | - | else | |
112 | - | then (size( | |
273 | + | else aA) | |
274 | + | then (size(at.payments) == 1) | |
113 | 275 | else false) | |
114 | 276 | then true | |
115 | - | else if (if (if (if ( | |
277 | + | else if (if (if (if (aE) | |
116 | 278 | then true | |
117 | - | else | |
279 | + | else aG) | |
118 | 280 | then true | |
119 | - | else | |
281 | + | else aF) | |
120 | 282 | then true | |
121 | - | else | |
122 | - | then (size( | |
283 | + | else aH) | |
284 | + | then (size(at.payments) == 0) | |
123 | 285 | else false) | |
124 | - | then | |
286 | + | then aM | |
125 | 287 | else false) | |
126 | - | then | |
288 | + | then az | |
127 | 289 | else false | |
128 | 290 | } | |
129 | 291 | else { | |
130 | - | let | |
292 | + | let aI = if (sigVerify(ax.bodyBytes, ax.proofs[0], q)) | |
131 | 293 | then 1 | |
132 | 294 | else 0 | |
133 | - | let | |
295 | + | let aJ = if (sigVerify(ax.bodyBytes, ax.proofs[1], r)) | |
134 | 296 | then 1 | |
135 | 297 | else 0 | |
136 | - | let | |
298 | + | let aK = if (sigVerify(ax.bodyBytes, ax.proofs[2], s)) | |
137 | 299 | then 1 | |
138 | 300 | else 0 | |
139 | - | ((( | |
301 | + | (((aI + aJ) + aK) >= 2) | |
140 | 302 | } | |
141 | 303 | } | |
142 | 304 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = Address(base58'3PEbqViERCoKnmcSULh6n2aiMvUdSQdCsom') | |
5 | 5 | ||
6 | - | func b (c) = { | |
7 | - | let d = getString(a, c) | |
8 | - | if ($isInstanceOf(d, "String")) | |
6 | + | let b = "admin_pub_1" | |
7 | + | ||
8 | + | let c = "admin_pub_2" | |
9 | + | ||
10 | + | let d = "admin_pub_3" | |
11 | + | ||
12 | + | let e = "admin_invoke_pub" | |
13 | + | ||
14 | + | let f = "governance_address" | |
15 | + | ||
16 | + | let g = "farming_address" | |
17 | + | ||
18 | + | let h = "surveys_address" | |
19 | + | ||
20 | + | let i = "routing_address" | |
21 | + | ||
22 | + | let j = "SWOP_id" | |
23 | + | ||
24 | + | let k = "pool_" | |
25 | + | ||
26 | + | func l (m) = { | |
27 | + | let n = getString(a, m) | |
28 | + | if ($isInstanceOf(n, "String")) | |
9 | 29 | then { | |
10 | - | let | |
11 | - | fromBase58String( | |
30 | + | let o = n | |
31 | + | fromBase58String(o) | |
12 | 32 | } | |
13 | 33 | else { | |
14 | - | let | |
15 | - | throw(( | |
34 | + | let p = n | |
35 | + | throw((m + "is empty")) | |
16 | 36 | } | |
17 | 37 | } | |
18 | 38 | ||
19 | 39 | ||
20 | - | let | |
40 | + | let q = l(b) | |
21 | 41 | ||
22 | - | let | |
42 | + | let r = l(c) | |
23 | 43 | ||
24 | - | let | |
44 | + | let s = l(d) | |
25 | 45 | ||
26 | - | let | |
46 | + | let t = l(e) | |
27 | 47 | ||
28 | - | let | |
48 | + | let u = Address(l(f)) | |
29 | 49 | ||
30 | - | let | |
50 | + | let v = Address(l(g)) | |
31 | 51 | ||
32 | - | let | |
52 | + | let w = Address(l(h)) | |
33 | 53 | ||
34 | - | let | |
54 | + | let x = Address(l(i)) | |
35 | 55 | ||
36 | - | let | |
56 | + | let y = fromBase58String(getStringValue(v, j)) | |
37 | 57 | ||
38 | - | let p = b(h) | |
39 | - | ||
40 | - | let q = b(i) | |
41 | - | ||
42 | - | let r = b(j) | |
43 | - | ||
44 | - | let s = Address(b(k)) | |
45 | - | ||
46 | - | let t = Address(b(l)) | |
47 | - | ||
48 | - | let u = Address(b(m)) | |
49 | - | ||
50 | - | let v = Address(b(n)) | |
51 | - | ||
52 | - | let w = "pool_" | |
58 | + | func z (A) = if ((A.caller == this)) | |
59 | + | then unit | |
60 | + | else throw("Only contract itself can call this function") | |
53 | 61 | ||
54 | 62 | ||
55 | - | @Verifier(x) | |
56 | - | func y () = { | |
57 | - | let d = x | |
58 | - | if ($isInstanceOf(d, "InvokeScriptTransaction")) | |
63 | + | func B (C,D) = (C :+ parseIntValue(D)) | |
64 | + | ||
65 | + | ||
66 | + | func E (F) = if ((F == "WAVES")) | |
67 | + | then unit | |
68 | + | else fromBase58String(F) | |
69 | + | ||
70 | + | ||
71 | + | func G (F) = { | |
72 | + | let n = F | |
73 | + | if ($isInstanceOf(n, "ByteVector")) | |
59 | 74 | then { | |
60 | - | let z = d | |
61 | - | let A = if ((z.fee == 900000)) | |
62 | - | then (z.feeAssetId == unit) | |
75 | + | let H = n | |
76 | + | assetBalance(this, H) | |
77 | + | } | |
78 | + | else if ($isInstanceOf(n, "Unit")) | |
79 | + | then { | |
80 | + | let I = n | |
81 | + | wavesBalance(this).available | |
82 | + | } | |
83 | + | else throw("Match error") | |
84 | + | } | |
85 | + | ||
86 | + | ||
87 | + | func J (K) = { | |
88 | + | let L = addressFromStringValue(K[1]) | |
89 | + | let M = { | |
90 | + | let N = split(K[2], "|") | |
91 | + | [AttachedPayment(fromBase58String(N[0]), parseIntValue(N[1]))] | |
92 | + | } | |
93 | + | let O = K[3] | |
94 | + | invoke(L, "callFunction", ["exchange", [O]], M) | |
95 | + | } | |
96 | + | ||
97 | + | ||
98 | + | func P (K) = { | |
99 | + | let L = addressFromStringValue(K[1]) | |
100 | + | let M = { | |
101 | + | let N = split(K[2], "|") | |
102 | + | [AttachedPayment(fromBase58String(N[0]), parseIntValue(N[1]))] | |
103 | + | } | |
104 | + | let Q = { | |
105 | + | let R = split(K[3], "|") | |
106 | + | let S = split(R[0], ",") | |
107 | + | let T = split(R[1], ",") | |
108 | + | let U = { | |
109 | + | let V = split(R[2], ",") | |
110 | + | let W = size(V) | |
111 | + | let X = nil | |
112 | + | func Y (Z,aa) = if ((aa >= W)) | |
113 | + | then Z | |
114 | + | else B(Z, V[aa]) | |
115 | + | ||
116 | + | func ab (Z,aa) = if ((aa >= W)) | |
117 | + | then Z | |
118 | + | else throw("List size exceeds 3") | |
119 | + | ||
120 | + | ab(Y(Y(Y(X, 0), 1), 2), 3) | |
121 | + | } | |
122 | + | let ac = { | |
123 | + | let V = split(R[3], ",") | |
124 | + | let W = size(V) | |
125 | + | let X = nil | |
126 | + | func ad (Z,aa) = if ((aa >= W)) | |
127 | + | then Z | |
128 | + | else B(Z, V[aa]) | |
129 | + | ||
130 | + | func ae (Z,aa) = if ((aa >= W)) | |
131 | + | then Z | |
132 | + | else throw("List size exceeds 3") | |
133 | + | ||
134 | + | ae(ad(ad(ad(X, 0), 1), 2), 3) | |
135 | + | } | |
136 | + | let af = split(R[4], ",") | |
137 | + | let O = parseIntValue(R[5]) | |
138 | + | [S, T, U, ac, af, O] | |
139 | + | } | |
140 | + | invoke(L, "routingTrade", Q, M) | |
141 | + | } | |
142 | + | ||
143 | + | ||
144 | + | func ag (ah,ai,aj) = { | |
145 | + | let ak = E(ai) | |
146 | + | let al = G(ak) | |
147 | + | if ((al == al)) | |
148 | + | then { | |
149 | + | let am = (al - aj) | |
150 | + | if ((0 >= am)) | |
151 | + | then throw("Nothing to exchange for airdrop") | |
152 | + | else { | |
153 | + | let an = addressFromStringValue(ah) | |
154 | + | invoke(an, "callFunction", ["exchange", [1]], [AttachedPayment(ak, am)]) | |
155 | + | } | |
156 | + | } | |
157 | + | else throw("Strict value is not equal to itself.") | |
158 | + | } | |
159 | + | ||
160 | + | ||
161 | + | @Callable(A) | |
162 | + | func exchangeTokens (ao,ap,ah,ai,aj) = valueOrElse(z(A), { | |
163 | + | func aq (ar,as) = { | |
164 | + | let K = split(as, "__") | |
165 | + | if ((K[0] == "directSwopfiCPMM")) | |
166 | + | then { | |
167 | + | let at = J(K) | |
168 | + | if ((at == at)) | |
169 | + | then (ar :+ at) | |
170 | + | else throw("Strict value is not equal to itself.") | |
171 | + | } | |
172 | + | else if ((K[0] == "routingSwopfi")) | |
173 | + | then { | |
174 | + | let at = P(K) | |
175 | + | if ((at == at)) | |
176 | + | then (ar :+ at) | |
177 | + | else throw("Strict value is not equal to itself.") | |
178 | + | } | |
179 | + | else throw("Unknown route type") | |
180 | + | } | |
181 | + | ||
182 | + | let au = { | |
183 | + | let V = ao | |
184 | + | let W = size(V) | |
185 | + | let X = nil | |
186 | + | func Y (Z,aa) = if ((aa >= W)) | |
187 | + | then Z | |
188 | + | else aq(Z, V[aa]) | |
189 | + | ||
190 | + | func ab (Z,aa) = if ((aa >= W)) | |
191 | + | then Z | |
192 | + | else throw("List size exceeds 12") | |
193 | + | ||
194 | + | ab(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(X, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12) | |
195 | + | } | |
196 | + | if ((au == au)) | |
197 | + | then if (!(ap)) | |
198 | + | then nil | |
199 | + | else { | |
200 | + | let at = ag(ah, ai, aj) | |
201 | + | if ((at == at)) | |
202 | + | then { | |
203 | + | let av = G(y) | |
204 | + | if ((av == av)) | |
205 | + | then { | |
206 | + | let aw = invoke(u, "airDrop", nil, [AttachedPayment(y, av)]) | |
207 | + | if ((aw == aw)) | |
208 | + | then nil | |
209 | + | else throw("Strict value is not equal to itself.") | |
210 | + | } | |
211 | + | else throw("Strict value is not equal to itself.") | |
212 | + | } | |
213 | + | else throw("Strict value is not equal to itself.") | |
214 | + | } | |
215 | + | else throw("Strict value is not equal to itself.") | |
216 | + | }) | |
217 | + | ||
218 | + | ||
219 | + | @Verifier(ax) | |
220 | + | func ay () = { | |
221 | + | let n = ax | |
222 | + | if ($isInstanceOf(n, "InvokeScriptTransaction")) | |
223 | + | then { | |
224 | + | let at = n | |
225 | + | let az = if ((at.fee == 900000)) | |
226 | + | then (at.feeAssetId == unit) | |
63 | 227 | else false | |
64 | - | let | |
65 | - | then ( | |
228 | + | let aA = if ((at.dApp == x)) | |
229 | + | then (at.function == "routingTrade") | |
66 | 230 | else false | |
67 | - | let | |
68 | - | then ( | |
231 | + | let aB = if (if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
232 | + | then (at.function == "callFunction") | |
69 | 233 | else false) | |
70 | - | then ( | |
234 | + | then (at.args[0] == "exchange") | |
71 | 235 | else false | |
72 | - | let | |
73 | - | then ( | |
236 | + | let aC = if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
237 | + | then (at.function == "exchange") | |
74 | 238 | else false | |
75 | - | let E = if ((z.dApp == s)) | |
76 | - | then (z.function == "airDrop") | |
239 | + | let aD = (at.function == "exchangeTokens") | |
240 | + | let aE = if ((at.dApp == u)) | |
241 | + | then (at.function == "updateWeights") | |
77 | 242 | else false | |
78 | - | let F = if ((z.dApp == s)) | |
79 | - | then (z.function == "updateWeights") | |
243 | + | let aF = if (if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
244 | + | then (at.function == "callFunction") | |
245 | + | else false) | |
246 | + | then (at.args[0] == "takeIntoAccountExtraFunds") | |
80 | 247 | else false | |
81 | - | let G = if (if (isDefined(getString(a, (w + toString(addressFromRecipient(z.dApp)))))) | |
82 | - | then (z.function == "callFunction") | |
83 | - | else false) | |
84 | - | then (z.args[0] == "takeIntoAccountExtraFunds") | |
248 | + | let aG = if (isDefined(getString(a, (k + toString(addressFromRecipient(at.dApp)))))) | |
249 | + | then (at.function == "takeIntoAccountExtraFunds") | |
85 | 250 | else false | |
86 | - | let | |
87 | - | then ( | |
251 | + | let aH = if ((at.dApp == w)) | |
252 | + | then (at.function == "writeTotals") | |
88 | 253 | else false | |
89 | - | let I = if ((z.dApp == u)) | |
90 | - | then (z.function == "writeTotals") | |
91 | - | else false | |
92 | - | let J = if (sigVerify(x.bodyBytes, x.proofs[0], o)) | |
254 | + | let aI = if (sigVerify(ax.bodyBytes, ax.proofs[0], q)) | |
93 | 255 | then 1 | |
94 | 256 | else 0 | |
95 | - | let | |
257 | + | let aJ = if (sigVerify(ax.bodyBytes, ax.proofs[0], r)) | |
96 | 258 | then 1 | |
97 | 259 | else 0 | |
98 | - | let | |
260 | + | let aK = if (sigVerify(ax.bodyBytes, ax.proofs[0], s)) | |
99 | 261 | then 1 | |
100 | 262 | else 0 | |
101 | - | let | |
263 | + | let aL = if (sigVerify(ax.bodyBytes, ax.proofs[0], t)) | |
102 | 264 | then 1 | |
103 | 265 | else 0 | |
104 | - | let | |
105 | - | if (if (if (if (if (if (if ( | |
266 | + | let aM = ((((aI + aJ) + aK) + aL) >= 1) | |
267 | + | if (if (if (if (if (if (if (aC) | |
106 | 268 | then true | |
107 | - | else | |
269 | + | else aB) | |
108 | 270 | then true | |
109 | - | else | |
271 | + | else aD) | |
110 | 272 | then true | |
111 | - | else | |
112 | - | then (size( | |
273 | + | else aA) | |
274 | + | then (size(at.payments) == 1) | |
113 | 275 | else false) | |
114 | 276 | then true | |
115 | - | else if (if (if (if ( | |
277 | + | else if (if (if (if (aE) | |
116 | 278 | then true | |
117 | - | else | |
279 | + | else aG) | |
118 | 280 | then true | |
119 | - | else | |
281 | + | else aF) | |
120 | 282 | then true | |
121 | - | else | |
122 | - | then (size( | |
283 | + | else aH) | |
284 | + | then (size(at.payments) == 0) | |
123 | 285 | else false) | |
124 | - | then | |
286 | + | then aM | |
125 | 287 | else false) | |
126 | - | then | |
288 | + | then az | |
127 | 289 | else false | |
128 | 290 | } | |
129 | 291 | else { | |
130 | - | let | |
292 | + | let aI = if (sigVerify(ax.bodyBytes, ax.proofs[0], q)) | |
131 | 293 | then 1 | |
132 | 294 | else 0 | |
133 | - | let | |
295 | + | let aJ = if (sigVerify(ax.bodyBytes, ax.proofs[1], r)) | |
134 | 296 | then 1 | |
135 | 297 | else 0 | |
136 | - | let | |
298 | + | let aK = if (sigVerify(ax.bodyBytes, ax.proofs[2], s)) | |
137 | 299 | then 1 | |
138 | 300 | else 0 | |
139 | - | ((( | |
301 | + | (((aI + aJ) + aK) >= 2) | |
140 | 302 | } | |
141 | 303 | } | |
142 | 304 |
github/deemru/w8io/6500d08 54.57 ms ◑