tx · C9YvzQBgCuVq6XzToahZt99da1FRTSjgNLuKHdDgk8D7

3MwtgysqzRmXErf8jREcrZME8KV8Ryihe6p:  -0.03400000 Waves

2023.05.15 13:00 [2578924] smart account 3MwtgysqzRmXErf8jREcrZME8KV8Ryihe6p > SELF 0.00000000 Waves

{ "type": 13, "id": "C9YvzQBgCuVq6XzToahZt99da1FRTSjgNLuKHdDgk8D7", "fee": 3400000, "feeAssetId": null, "timestamp": 1684144846133, "version": 2, "chainId": 84, "sender": "3MwtgysqzRmXErf8jREcrZME8KV8Ryihe6p", "senderPublicKey": "H5ZH4BkyVtNBc32qbTGZxG4iQPcMF7Sfy65QkYQGzNMQ", "proofs": [ "2erAQ2YUvnDHWozqmQqR1ZQ2es3Jn25AwchGjLzPw17q2kyu7CMANXAs4QKzAE6oMWBba9Xu5hjN3utnAXZDxnq3" ], "script": "base64:BgJsCAISAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSBAoCCAgSAwoBCBIDCgEIGwATa19pbnN1cmFuY2VfYWRkcmVzcwITa19pbnN1cmFuY2VfYWRkcmVzcwAPa192YXVsdF9hZGRyZXNzAg9rX3ZhdWx0X2FkZHJlc3MAD2tfYWRtaW5fYWRkcmVzcwIPa19hZG1pbl9hZGRyZXNzAA1rX3F1b3RlX2Fzc2V0Ag1rX3F1b3RlX2Fzc2V0AA5rX3Jld2FyZF9hc3NldAIOa19yZXdhcmRfYXNzZXQADmtfc3dhcF9hZGRyZXNzAg5rX3N3YXBfYWRkcmVzcwARa19zdGFraW5nX2FkZHJlc3MCEWtfc3Rha2luZ19hZGRyZXNzABFrX2Zhcm1pbmdfYWRkcmVzcwIRa19mYXJtaW5nX2FkZHJlc3MAEGtfcHJpemVzX2FkZHJlc3MCEGtfcHJpemVzX2FkZHJlc3MAFWtfaG91c2VrZWVwZXJfYWRkcmVzcwIVa19ob3VzZWtlZXBlcl9hZGRyZXNzAAVrX2FtbQIFa19hbW0ACmtfYW1tX2RhdGECCmtfYW1tX2RhdGEAEmtfZ292ZXJuYW5jZV9hc3NldAILa19nb3ZfYXNzZXQAD2tfbWluZXJfYWRkcmVzcwIPa19taW5lcl9hZGRyZXNzABBrX29yZGVyc19hZGRyZXNzAhBrX29yZGVyc19hZGRyZXNzABJrX3JlZmVycmFsX2FkZHJlc3MCEmtfcmVmZXJyYWxfYWRkcmVzcwARa19tYW5hZ2VyX2FkZHJlc3MCEWtfbWFuYWdlcl9hZGRyZXNzABVrX25mdF9tYW5hZ2VyX2FkZHJlc3MCFWtfbmZ0X21hbmFnZXJfYWRkcmVzcwAHa19jaGlsZAIHa19jaGlsZAAIa19vcmFjbGUCCGtfb3JhY2xlAA5rX3Nwb3RfYWRkcmVzcwIOa19zcG90X2FkZHJlc3MBDnRvQ29tcG9zaXRlS2V5AgRfa2V5CF9hZGRyZXNzCQCsAgIJAKwCAgUEX2tleQIBXwUIX2FkZHJlc3MBEWdldEFkZHJlc3NJZlZhbGlkAQdhZGRyZXNzCQClCAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBBQdhZGRyZXNzCQCsAgIJAKwCAgINQ2FuJ3QgcGFyc2UgIgUHYWRkcmVzcwIMIiBhcyBhZGRyZXNzAQlpc05vQWRtaW4ACQAAAgkAnQgCBQR0aGlzBQ9rX2FkbWluX2FkZHJlc3MFBHVuaXQBBWFkbWluAAkBEUBleHRyTmF0aXZlKDEwNjIpAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFBHRoaXMFD2tfYWRtaW5fYWRkcmVzcwIRQWRtaW4gbm90IGRlZmluZWQBEGlzTm9BZG1pbk9yQWRtaW4BAWkDAwMJAQlpc05vQWRtaW4ACQAAAggFAWkGY2FsbGVyBQR0aGlzBwYJAAACCAUBaQZjYWxsZXIJAQVhZG1pbgAFBHVuaXQJAAIBAi5Pbmx5IHRoZSBBZG1pbiBpdHNlbGYgY2FuIGludm9rZSB0aGlzIGZ1bmN0aW9uAQdpc0FkbWluAQFpAwkAAAIIBQFpBmNhbGxlcgkBBWFkbWluAAUEdW5pdAkAAgECLk9ubHkgdGhlIEFkbWluIGl0c2VsZiBjYW4gaW52b2tlIHRoaXMgZnVuY3Rpb24VAWkBCHNldEFkbWluAQ1fYWRtaW5BZGRyZXNzCQELdmFsdWVPckVsc2UCCQEQaXNOb0FkbWluT3JBZG1pbgEFAWkEB2FkZHJlc3MJARFAZXh0ck5hdGl2ZSgxMDYyKQEFDV9hZG1pbkFkZHJlc3MDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBQ9rX2FkbWluX2FkZHJlc3MJAKUIAQUHYWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEHNldEluc3VyYW5jZUZ1bmQBDl9pbnN1cmFuY2VGdW5kCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkEB2FkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFDl9pbnN1cmFuY2VGdW5kAwkAAAIFB2FkZHJlc3MFB2FkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgUTa19pbnN1cmFuY2VfYWRkcmVzcwUHYWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEXNldExpcXVpZGl0eU1pbmVyAQ9fbGlxdWlkaXR5TWluZXIJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQHYWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQUPX2xpcXVpZGl0eU1pbmVyAwkAAAIFB2FkZHJlc3MFB2FkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgUPa19taW5lcl9hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEJc2V0T3JkZXJzAQdfb3JkZXJzCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkEB2FkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFB19vcmRlcnMDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRBrX29yZGVyc19hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQELc2V0UmVmZXJyYWwBCV9yZWZlcnJhbAkBC3ZhbHVlT3JFbHNlAgkBB2lzQWRtaW4BBQFpBAdhZGRyZXNzCQERZ2V0QWRkcmVzc0lmVmFsaWQBBQlfcmVmZXJyYWwDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRJrX3JlZmVycmFsX2FkZHJlc3MFB2FkZHJlc3MFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQpzZXRGYXJtaW5nAQhfZmFybWluZwkBC3ZhbHVlT3JFbHNlAgkBB2lzQWRtaW4BBQFpBAdhZGRyZXNzCQERZ2V0QWRkcmVzc0lmVmFsaWQBBQhfZmFybWluZwMJAAACBQdhZGRyZXNzBQdhZGRyZXNzCQDMCAIJAQtTdHJpbmdFbnRyeQIFEWtfZmFybWluZ19hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEKc2V0TWFuYWdlcgEIX21hbmFnZXIJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQHYWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQUIX21hbmFnZXIDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRFrX21hbmFnZXJfYWRkcmVzcwUHYWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDnNldEhvdXNla2VlcGVyAQxfaG91c2VrZWVwZXIJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQHYWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQUMX2hvdXNla2VlcGVyAwkAAAIFB2FkZHJlc3MFB2FkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgUVa19ob3VzZWtlZXBlcl9hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEJc2V0UHJpemVzAQdfcHJpemVzCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkEB2FkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFB19wcml6ZXMDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRBrX3ByaXplc19hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQENc2V0TmZ0TWFuYWdlcgELX25mdE1hbmFnZXIJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQHYWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQULX25mdE1hbmFnZXIDCQAAAgUHYWRkcmVzcwUHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRVrX25mdF9tYW5hZ2VyX2FkZHJlc3MFB2FkZHJlc3MFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQdzZXRTd2FwAQVfc3dhcAkBC3ZhbHVlT3JFbHNlAgkBB2lzQWRtaW4BBQFpBAdhZGRyZXNzCQERZ2V0QWRkcmVzc0lmVmFsaWQBBQVfc3dhcAMJAAACBQdhZGRyZXNzBQdhZGRyZXNzCQDMCAIJAQtTdHJpbmdFbnRyeQIFDmtfc3dhcF9hZGRyZXNzBQdhZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQENc2V0UXVvdGVBc3NldAEIX2Fzc2V0SWQJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQkAzAgCCQELU3RyaW5nRW50cnkCBQ1rX3F1b3RlX2Fzc2V0BQhfYXNzZXRJZAUDbmlsAWkBDnNldFJld2FyZEFzc2V0AQhfYXNzZXRJZAkBC3ZhbHVlT3JFbHNlAgkBB2lzQWRtaW4BBQFpCQDMCAIJAQtTdHJpbmdFbnRyeQIFDmtfcmV3YXJkX2Fzc2V0BQhfYXNzZXRJZAUDbmlsAWkBEXNldFN0YWtpbmdBZGRyZXNzAQ9fc3Rha2luZ0FkZHJlc3MJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQOc3Rha2luZ0FkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFD19zdGFraW5nQWRkcmVzcwMJAAACBQ5zdGFraW5nQWRkcmVzcwUOc3Rha2luZ0FkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgURa19zdGFraW5nX2FkZHJlc3MFD19zdGFraW5nQWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDnNldFNwb3RBZGRyZXNzAQxfc3BvdEFkZHJlc3MJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQOc3Rha2luZ0FkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFDF9zcG90QWRkcmVzcwMJAAACBQ5zdGFraW5nQWRkcmVzcwUOc3Rha2luZ0FkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgUOa19zcG90X2FkZHJlc3MFDF9zcG90QWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBD3NldFZhdWx0QWRkcmVzcwENX3ZhdWx0QWRkcmVzcwkBC3ZhbHVlT3JFbHNlAgkBB2lzQWRtaW4BBQFpBA9leGNoYW5nZUFkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFDV92YXVsdEFkZHJlc3MDCQAAAgUPZXhjaGFuZ2VBZGRyZXNzBQ9leGNoYW5nZUFkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgUPa192YXVsdF9hZGRyZXNzBQ1fdmF1bHRBZGRyZXNzBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQc2V0T3JhY2xlQWRkcmVzcwEOX29yYWNsZUFkZHJlc3MJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQQNb3JhY2xlQWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQUOX29yYWNsZUFkZHJlc3MDCQAAAgUNb3JhY2xlQWRkcmVzcwUNb3JhY2xlQWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCBRBrX29yZGVyc19hZGRyZXNzBQ5fb3JhY2xlQWRkcmVzcwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCGFkZENoaWxkAQ1fY2hpbGRBZGRyZXNzCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkEDGNoaWxkQWRkcmVzcwkBEWdldEFkZHJlc3NJZlZhbGlkAQUNX2NoaWxkQWRkcmVzcwkAzAgCCQEMQm9vbGVhbkVudHJ5AgkBDnRvQ29tcG9zaXRlS2V5AgUHa19jaGlsZAUNX2NoaWxkQWRkcmVzcwYFA25pbAFpAQZhZGRBbW0CC19hbW1BZGRyZXNzBV9kYXRhCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkECmFtbUFkZHJlc3MJARFnZXRBZGRyZXNzSWZWYWxpZAEFC19hbW1BZGRyZXNzCQDMCAIJAQxCb29sZWFuRW50cnkCCQEOdG9Db21wb3NpdGVLZXkCBQVrX2FtbQULX2FtbUFkZHJlc3MGCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ50b0NvbXBvc2l0ZUtleQIFCmtfYW1tX2RhdGEFC19hbW1BZGRyZXNzBQVfZGF0YQUDbmlsAWkBCXJlbW92ZUFtbQELX2FtbUFkZHJlc3MJAQt2YWx1ZU9yRWxzZQIJAQdpc0FkbWluAQUBaQkAzAgCCQELRGVsZXRlRW50cnkBCQEOdG9Db21wb3NpdGVLZXkCBQVrX2FtbQULX2FtbUFkZHJlc3MFA25pbAFpARJzZXRHb3Zlcm5hbmNlQXNzZXQBCF9hc3NldElkCQELdmFsdWVPckVsc2UCCQEHaXNBZG1pbgEFAWkECmFzc2V0Qnl0ZXMJANkEAQUIX2Fzc2V0SWQEByRtYXRjaDAJAOwHAQUKYXNzZXRCeXRlcwMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDADCQECIT0CCAUFYXNzZXQIZGVjaW1hbHMACAkAAgECI0ludmFsaWQgYXNzZXQgZGVjaW1hbHMsIHNob3VsZCBiZSA4CQDMCAIJAQtTdHJpbmdFbnRyeQIFEmtfZ292ZXJuYW5jZV9hc3NldAUIX2Fzc2V0SWQFA25pbAkAAgECEENhbid0IGZpbmQgYXNzZXQBAnR4AQZ2ZXJpZnkABAckbWF0Y2gwCQCdCAIFBHRoaXMFD2tfYWRtaW5fYWRkcmVzcwMJAAECBQckbWF0Y2gwAgZTdHJpbmcECHZlcmlmaWVyBQckbWF0Y2gwCQELdmFsdWVPckVsc2UCCQCbCAIJARFAZXh0ck5hdGl2ZSgxMDYyKQEFCHZlcmlmaWVyCQCsAgIJAKwCAgkArAICAgdzdGF0dXNfCQClCAEFBHRoaXMCAV8JANgEAQgFAnR4AmlkBwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleQprEc4=", "height": 2578924, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AoDZsjaRaGh2uFUBtES1Jj12vgpS9SqokRcXPhw898hN Next: aDE9WbBU4Uacst5HTkxDpzt1SYyxMKn57fUiFAcUYde Diff:
OldNewDifferences
3939
4040 let k_child = "k_child"
4141
42+let k_oracle = "k_oracle"
43+
44+let k_spot_address = "k_spot_address"
45+
4246 func toCompositeKey (_key,_address) = ((_key + "_") + _address)
4347
4448
6872 @Callable(i)
6973 func setAdmin (_adminAddress) = valueOrElse(isNoAdminOrAdmin(i), {
7074 let address = addressFromStringValue(_adminAddress)
71-[StringEntry(k_admin_address, toString(address))]
75+ if ((address == address))
76+ then [StringEntry(k_admin_address, toString(address))]
77+ else throw("Strict value is not equal to itself.")
7278 })
7379
7480
7682 @Callable(i)
7783 func setInsuranceFund (_insuranceFund) = valueOrElse(isAdmin(i), {
7884 let address = getAddressIfValid(_insuranceFund)
79-[StringEntry(k_insurance_address, address)]
85+ if ((address == address))
86+ then [StringEntry(k_insurance_address, address)]
87+ else throw("Strict value is not equal to itself.")
8088 })
8189
8290
8492 @Callable(i)
8593 func setLiquidityMiner (_liquidityMiner) = valueOrElse(isAdmin(i), {
8694 let address = getAddressIfValid(_liquidityMiner)
87-[StringEntry(k_miner_address, address)]
95+ if ((address == address))
96+ then [StringEntry(k_miner_address, address)]
97+ else throw("Strict value is not equal to itself.")
8898 })
8999
90100
92102 @Callable(i)
93103 func setOrders (_orders) = valueOrElse(isAdmin(i), {
94104 let address = getAddressIfValid(_orders)
95-[StringEntry(k_orders_address, address)]
105+ if ((address == address))
106+ then [StringEntry(k_orders_address, address)]
107+ else throw("Strict value is not equal to itself.")
96108 })
97109
98110
100112 @Callable(i)
101113 func setReferral (_referral) = valueOrElse(isAdmin(i), {
102114 let address = getAddressIfValid(_referral)
103-[StringEntry(k_referral_address, address)]
115+ if ((address == address))
116+ then [StringEntry(k_referral_address, address)]
117+ else throw("Strict value is not equal to itself.")
104118 })
105119
106120
108122 @Callable(i)
109123 func setFarming (_farming) = valueOrElse(isAdmin(i), {
110124 let address = getAddressIfValid(_farming)
111-[StringEntry(k_farming_address, address)]
125+ if ((address == address))
126+ then [StringEntry(k_farming_address, address)]
127+ else throw("Strict value is not equal to itself.")
112128 })
113129
114130
116132 @Callable(i)
117133 func setManager (_manager) = valueOrElse(isAdmin(i), {
118134 let address = getAddressIfValid(_manager)
119-[StringEntry(k_manager_address, address)]
135+ if ((address == address))
136+ then [StringEntry(k_manager_address, address)]
137+ else throw("Strict value is not equal to itself.")
120138 })
121139
122140
124142 @Callable(i)
125143 func setHousekeeper (_housekeeper) = valueOrElse(isAdmin(i), {
126144 let address = getAddressIfValid(_housekeeper)
127-[StringEntry(k_housekeeper_address, address)]
145+ if ((address == address))
146+ then [StringEntry(k_housekeeper_address, address)]
147+ else throw("Strict value is not equal to itself.")
128148 })
129149
130150
132152 @Callable(i)
133153 func setPrizes (_prizes) = valueOrElse(isAdmin(i), {
134154 let address = getAddressIfValid(_prizes)
135-[StringEntry(k_prizes_address, address)]
155+ if ((address == address))
156+ then [StringEntry(k_prizes_address, address)]
157+ else throw("Strict value is not equal to itself.")
136158 })
137159
138160
140162 @Callable(i)
141163 func setNftManager (_nftManager) = valueOrElse(isAdmin(i), {
142164 let address = getAddressIfValid(_nftManager)
143-[StringEntry(k_nft_manager_address, address)]
165+ if ((address == address))
166+ then [StringEntry(k_nft_manager_address, address)]
167+ else throw("Strict value is not equal to itself.")
144168 })
145169
146170
148172 @Callable(i)
149173 func setSwap (_swap) = valueOrElse(isAdmin(i), {
150174 let address = getAddressIfValid(_swap)
151-[StringEntry(k_swap_address, address)]
175+ if ((address == address))
176+ then [StringEntry(k_swap_address, address)]
177+ else throw("Strict value is not equal to itself.")
152178 })
153179
154180
166192 @Callable(i)
167193 func setStakingAddress (_stakingAddress) = valueOrElse(isAdmin(i), {
168194 let stakingAddress = getAddressIfValid(_stakingAddress)
169-[StringEntry(k_staking_address, _stakingAddress)]
195+ if ((stakingAddress == stakingAddress))
196+ then [StringEntry(k_staking_address, _stakingAddress)]
197+ else throw("Strict value is not equal to itself.")
198+ })
199+
200+
201+
202+@Callable(i)
203+func setSpotAddress (_spotAddress) = valueOrElse(isAdmin(i), {
204+ let stakingAddress = getAddressIfValid(_spotAddress)
205+ if ((stakingAddress == stakingAddress))
206+ then [StringEntry(k_spot_address, _spotAddress)]
207+ else throw("Strict value is not equal to itself.")
170208 })
171209
172210
174212 @Callable(i)
175213 func setVaultAddress (_vaultAddress) = valueOrElse(isAdmin(i), {
176214 let exchangeAddress = getAddressIfValid(_vaultAddress)
177-[StringEntry(k_vault_address, _vaultAddress)]
215+ if ((exchangeAddress == exchangeAddress))
216+ then [StringEntry(k_vault_address, _vaultAddress)]
217+ else throw("Strict value is not equal to itself.")
218+ })
219+
220+
221+
222+@Callable(i)
223+func setOracleAddress (_oracleAddress) = valueOrElse(isAdmin(i), {
224+ let oracleAddress = getAddressIfValid(_oracleAddress)
225+ if ((oracleAddress == oracleAddress))
226+ then [StringEntry(k_orders_address, _oracleAddress)]
227+ else throw("Strict value is not equal to itself.")
178228 })
179229
180230
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let k_insurance_address = "k_insurance_address"
55
66 let k_vault_address = "k_vault_address"
77
88 let k_admin_address = "k_admin_address"
99
1010 let k_quote_asset = "k_quote_asset"
1111
1212 let k_reward_asset = "k_reward_asset"
1313
1414 let k_swap_address = "k_swap_address"
1515
1616 let k_staking_address = "k_staking_address"
1717
1818 let k_farming_address = "k_farming_address"
1919
2020 let k_prizes_address = "k_prizes_address"
2121
2222 let k_housekeeper_address = "k_housekeeper_address"
2323
2424 let k_amm = "k_amm"
2525
2626 let k_amm_data = "k_amm_data"
2727
2828 let k_governance_asset = "k_gov_asset"
2929
3030 let k_miner_address = "k_miner_address"
3131
3232 let k_orders_address = "k_orders_address"
3333
3434 let k_referral_address = "k_referral_address"
3535
3636 let k_manager_address = "k_manager_address"
3737
3838 let k_nft_manager_address = "k_nft_manager_address"
3939
4040 let k_child = "k_child"
4141
42+let k_oracle = "k_oracle"
43+
44+let k_spot_address = "k_spot_address"
45+
4246 func toCompositeKey (_key,_address) = ((_key + "_") + _address)
4347
4448
4549 func getAddressIfValid (address) = toString(valueOrErrorMessage(addressFromString(address), (("Can't parse \"" + address) + "\" as address")))
4650
4751
4852 func isNoAdmin () = (getString(this, k_admin_address) == unit)
4953
5054
5155 func admin () = addressFromStringValue(valueOrErrorMessage(getString(this, k_admin_address), "Admin not defined"))
5256
5357
5458 func isNoAdminOrAdmin (i) = if (if (if (isNoAdmin())
5559 then (i.caller == this)
5660 else false)
5761 then true
5862 else (i.caller == admin()))
5963 then unit
6064 else throw("Only the Admin itself can invoke this function")
6165
6266
6367 func isAdmin (i) = if ((i.caller == admin()))
6468 then unit
6569 else throw("Only the Admin itself can invoke this function")
6670
6771
6872 @Callable(i)
6973 func setAdmin (_adminAddress) = valueOrElse(isNoAdminOrAdmin(i), {
7074 let address = addressFromStringValue(_adminAddress)
71-[StringEntry(k_admin_address, toString(address))]
75+ if ((address == address))
76+ then [StringEntry(k_admin_address, toString(address))]
77+ else throw("Strict value is not equal to itself.")
7278 })
7379
7480
7581
7682 @Callable(i)
7783 func setInsuranceFund (_insuranceFund) = valueOrElse(isAdmin(i), {
7884 let address = getAddressIfValid(_insuranceFund)
79-[StringEntry(k_insurance_address, address)]
85+ if ((address == address))
86+ then [StringEntry(k_insurance_address, address)]
87+ else throw("Strict value is not equal to itself.")
8088 })
8189
8290
8391
8492 @Callable(i)
8593 func setLiquidityMiner (_liquidityMiner) = valueOrElse(isAdmin(i), {
8694 let address = getAddressIfValid(_liquidityMiner)
87-[StringEntry(k_miner_address, address)]
95+ if ((address == address))
96+ then [StringEntry(k_miner_address, address)]
97+ else throw("Strict value is not equal to itself.")
8898 })
8999
90100
91101
92102 @Callable(i)
93103 func setOrders (_orders) = valueOrElse(isAdmin(i), {
94104 let address = getAddressIfValid(_orders)
95-[StringEntry(k_orders_address, address)]
105+ if ((address == address))
106+ then [StringEntry(k_orders_address, address)]
107+ else throw("Strict value is not equal to itself.")
96108 })
97109
98110
99111
100112 @Callable(i)
101113 func setReferral (_referral) = valueOrElse(isAdmin(i), {
102114 let address = getAddressIfValid(_referral)
103-[StringEntry(k_referral_address, address)]
115+ if ((address == address))
116+ then [StringEntry(k_referral_address, address)]
117+ else throw("Strict value is not equal to itself.")
104118 })
105119
106120
107121
108122 @Callable(i)
109123 func setFarming (_farming) = valueOrElse(isAdmin(i), {
110124 let address = getAddressIfValid(_farming)
111-[StringEntry(k_farming_address, address)]
125+ if ((address == address))
126+ then [StringEntry(k_farming_address, address)]
127+ else throw("Strict value is not equal to itself.")
112128 })
113129
114130
115131
116132 @Callable(i)
117133 func setManager (_manager) = valueOrElse(isAdmin(i), {
118134 let address = getAddressIfValid(_manager)
119-[StringEntry(k_manager_address, address)]
135+ if ((address == address))
136+ then [StringEntry(k_manager_address, address)]
137+ else throw("Strict value is not equal to itself.")
120138 })
121139
122140
123141
124142 @Callable(i)
125143 func setHousekeeper (_housekeeper) = valueOrElse(isAdmin(i), {
126144 let address = getAddressIfValid(_housekeeper)
127-[StringEntry(k_housekeeper_address, address)]
145+ if ((address == address))
146+ then [StringEntry(k_housekeeper_address, address)]
147+ else throw("Strict value is not equal to itself.")
128148 })
129149
130150
131151
132152 @Callable(i)
133153 func setPrizes (_prizes) = valueOrElse(isAdmin(i), {
134154 let address = getAddressIfValid(_prizes)
135-[StringEntry(k_prizes_address, address)]
155+ if ((address == address))
156+ then [StringEntry(k_prizes_address, address)]
157+ else throw("Strict value is not equal to itself.")
136158 })
137159
138160
139161
140162 @Callable(i)
141163 func setNftManager (_nftManager) = valueOrElse(isAdmin(i), {
142164 let address = getAddressIfValid(_nftManager)
143-[StringEntry(k_nft_manager_address, address)]
165+ if ((address == address))
166+ then [StringEntry(k_nft_manager_address, address)]
167+ else throw("Strict value is not equal to itself.")
144168 })
145169
146170
147171
148172 @Callable(i)
149173 func setSwap (_swap) = valueOrElse(isAdmin(i), {
150174 let address = getAddressIfValid(_swap)
151-[StringEntry(k_swap_address, address)]
175+ if ((address == address))
176+ then [StringEntry(k_swap_address, address)]
177+ else throw("Strict value is not equal to itself.")
152178 })
153179
154180
155181
156182 @Callable(i)
157183 func setQuoteAsset (_assetId) = valueOrElse(isAdmin(i), [StringEntry(k_quote_asset, _assetId)])
158184
159185
160186
161187 @Callable(i)
162188 func setRewardAsset (_assetId) = valueOrElse(isAdmin(i), [StringEntry(k_reward_asset, _assetId)])
163189
164190
165191
166192 @Callable(i)
167193 func setStakingAddress (_stakingAddress) = valueOrElse(isAdmin(i), {
168194 let stakingAddress = getAddressIfValid(_stakingAddress)
169-[StringEntry(k_staking_address, _stakingAddress)]
195+ if ((stakingAddress == stakingAddress))
196+ then [StringEntry(k_staking_address, _stakingAddress)]
197+ else throw("Strict value is not equal to itself.")
198+ })
199+
200+
201+
202+@Callable(i)
203+func setSpotAddress (_spotAddress) = valueOrElse(isAdmin(i), {
204+ let stakingAddress = getAddressIfValid(_spotAddress)
205+ if ((stakingAddress == stakingAddress))
206+ then [StringEntry(k_spot_address, _spotAddress)]
207+ else throw("Strict value is not equal to itself.")
170208 })
171209
172210
173211
174212 @Callable(i)
175213 func setVaultAddress (_vaultAddress) = valueOrElse(isAdmin(i), {
176214 let exchangeAddress = getAddressIfValid(_vaultAddress)
177-[StringEntry(k_vault_address, _vaultAddress)]
215+ if ((exchangeAddress == exchangeAddress))
216+ then [StringEntry(k_vault_address, _vaultAddress)]
217+ else throw("Strict value is not equal to itself.")
218+ })
219+
220+
221+
222+@Callable(i)
223+func setOracleAddress (_oracleAddress) = valueOrElse(isAdmin(i), {
224+ let oracleAddress = getAddressIfValid(_oracleAddress)
225+ if ((oracleAddress == oracleAddress))
226+ then [StringEntry(k_orders_address, _oracleAddress)]
227+ else throw("Strict value is not equal to itself.")
178228 })
179229
180230
181231
182232 @Callable(i)
183233 func addChild (_childAddress) = valueOrElse(isAdmin(i), {
184234 let childAddress = getAddressIfValid(_childAddress)
185235 [BooleanEntry(toCompositeKey(k_child, _childAddress), true)]
186236 })
187237
188238
189239
190240 @Callable(i)
191241 func addAmm (_ammAddress,_data) = valueOrElse(isAdmin(i), {
192242 let ammAddress = getAddressIfValid(_ammAddress)
193243 [BooleanEntry(toCompositeKey(k_amm, _ammAddress), true), StringEntry(toCompositeKey(k_amm_data, _ammAddress), _data)]
194244 })
195245
196246
197247
198248 @Callable(i)
199249 func removeAmm (_ammAddress) = valueOrElse(isAdmin(i), [DeleteEntry(toCompositeKey(k_amm, _ammAddress))])
200250
201251
202252
203253 @Callable(i)
204254 func setGovernanceAsset (_assetId) = valueOrElse(isAdmin(i), {
205255 let assetBytes = fromBase58String(_assetId)
206256 match assetInfo(assetBytes) {
207257 case asset: Asset =>
208258 if ((asset.decimals != 8))
209259 then throw("Invalid asset decimals, should be 8")
210260 else [StringEntry(k_governance_asset, _assetId)]
211261 case _ =>
212262 throw("Can't find asset")
213263 }
214264 })
215265
216266
217267 @Verifier(tx)
218268 func verify () = match getString(this, k_admin_address) {
219269 case verifier: String =>
220270 valueOrElse(getBoolean(addressFromStringValue(verifier), ((("status_" + toString(this)) + "_") + toBase58String(tx.id))), false)
221271 case _ =>
222272 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
223273 }
224274

github/deemru/w8io/026f985 
35.47 ms