tx · 2xo12egbzwog8RBqJ22CkZ9HhuSU6ufqy3GDAD9Rex7m

3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc:  -0.01100000 Waves

2023.03.01 18:29 [2471181] smart account 3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc > SELF 0.00000000 Waves

{ "type": 13, "id": "2xo12egbzwog8RBqJ22CkZ9HhuSU6ufqy3GDAD9Rex7m", "fee": 1100000, "feeAssetId": null, "timestamp": 1677684563436, "version": 2, "chainId": 84, "sender": "3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc", "senderPublicKey": "H3EzJ6fSm7jHKo92xYdNTXaaQYKj9z5q2DJFovRDLJpf", "proofs": [ "3rKCKJDTYGYS1oxxjG9Lvbbo8MimH7894LCZmBuAj7cht5QbRbGrJGp5caUKp3RQrJNUFyWqM48EdDkskB6fDdvU" ], "script": "base64:BgIkCAISBAoCCAgSBAoCCAESAwoBCBIFCgMIAQgSAwoBCBIDCgEIGQADU0VQAgJfXwAZSWR4Q29udHJvbENmZ05ldXRyaW5vRGFwcAABABhJZHhDb250cm9sQ2ZnQXVjdGlvbkRhcHAAAgAUSWR4Q29udHJvbENmZ1JwZERhcHAAAwAVSWR4Q29udHJvbENmZ01hdGhEYXBwAAQAHElkeENvbnRyb2xDZmdMaXF1aWRhdGlvbkRhcHAABQAVSWR4Q29udHJvbENmZ1Jlc3REYXBwAAYAHUlkeENvbnRyb2xDZmdOb2RlUmVnaXN0cnlEYXBwAAcAHElkeENvbnRyb2xDZmdOc2J0U3Rha2luZ0RhcHAACAAZSWR4Q29udHJvbENmZ01lZGlhdG9yRGFwcAAJAQ9nZXRTdHJpbmdPckZhaWwCB2FkZHJlc3MDa2V5CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUHYWRkcmVzcwUDa2V5CQCsAgIJAKwCAgkArAICCQCsAgICCm1hbmRhdG9yeSAJAKUIAQUHYWRkcmVzcwIBLgUDa2V5Ag8gaXMgbm90IGRlZmluZWQBEWtleUNvbnRyb2xBZGRyZXNzAAIcJXMlc19fY29uZmlnX19jb250cm9sQWRkcmVzcwENa2V5Q29udHJvbENmZwACESVzX19jb250cm9sQ29uZmlnARRyZWFkQ29udHJvbENmZ09yRmFpbAEHY29udHJvbAkAvAkCCQEPZ2V0U3RyaW5nT3JGYWlsAgUHY29udHJvbAkBDWtleUNvbnRyb2xDZmcABQNTRVABGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIKY29udHJvbENmZwNpZHgJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQCRAwIFCmNvbnRyb2xDZmcFA2lkeAkArAICAi1Db250cm9sIGNmZyBkb2Vzbid0IGNvbnRhaW4gYWRkcmVzcyBhdCBpbmRleCAJAKQDAQUDaWR4AA9jb250cm9sQ29udHJhY3QJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBEWtleUNvbnRyb2xBZGRyZXNzAAIjM040TlM3ZDRKbzlhNkYxNExpRlVLS1lWZFVra2YyZVA0WngACmNvbnRyb2xDZmcJARRyZWFkQ29udHJvbENmZ09yRmFpbAEFD2NvbnRyb2xDb250cmFjdAAHcmVzdEFjYwkBGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIFCmNvbnRyb2xDZmcFFUlkeENvbnRyb2xDZmdSZXN0RGFwcAEOa2V5UmVzdEFkZHJlc3MAAhklcyVzX19jb25maWdfX3Jlc3RBZGRyZXNzAQxnZXRTdHJPckZhaWwBA2tleQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFBHRoaXMFA2tleQkArAICCQCsAgICD01hbmRhdG9yeSB0aGlzLgUDa2V5Ag8gaXMgbm90IGRlZmluZWQBEGdldEFkZHJlc3NPckZhaWwBA2tleQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJAQxnZXRTdHJPckZhaWwBBQNrZXkJAKwCAgIfZmFpbCB0byBwYXJzZSBhZGRyZXNzIGZvciB0aGlzLgUDa2V5AQhhc1N0cmluZwEDdmFsBAckbWF0Y2gwBQN2YWwDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAZ2YWxTdHIFByRtYXRjaDAFBnZhbFN0cgkAAgECGGZhaWwgdG8gY2FzdCBpbnRvIFN0cmluZwELcHJvZHVjZUpzb24BBnN0ck1hcAQHaW5kZXhlcwkAzAgCAAAJAMwIAgABCQDMCAIAAgkAzAgCAAMJAMwIAgAECQDMCAIABQkAzAgCAAYJAMwIAgAHCQDMCAIACAkAzAgCAAkJAMwIAgAKCQDMCAIACwkAzAgCAAwJAMwIAgANCQDMCAIADgkAzAgCAA8JAMwIAgAQCQDMCAIAEQkAzAgCABIJAMwIAgATBQNuaWwEBmxlbmd0aAkAkAMBBQZzdHJNYXADCQECIT0CCQBqAgUGbGVuZ3RoAAIAAAkAAgECIG9ubHkgZXZlbiBhcmdzIHNpemUgaXMgYWNjZXBldGVkAwkAZgIFBmxlbmd0aAkAkAMBBQdpbmRleGVzCQACAQkArAICAh5zdHJNYXAgbGVuZ3RoIGlzIGdyZWF0ZXIgdGhlbiAJAKQDAQkAkAMBBQdpbmRleGVzCgELcHJvZHVjZUpzb24CCWpzb25BY2N1bQduZXh0SWR4AwMJAAACCQBqAgUHbmV4dElkeAACAAAJAGcCBQZsZW5ndGgJAGQCBQduZXh0SWR4AAEHCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgUJanNvbkFjY3VtAgIKIgkAkQMCBQZzdHJNYXAFB25leHRJZHgCBCI6ICIJAJEDAgUGc3RyTWFwCQBkAgUHbmV4dElkeAABAgIiLAUJanNvbkFjY3VtBA1wcmVKc29uUmVzdWx0CgACJGwFB2luZGV4ZXMKAAIkcwkAkAMBBQIkbAoABSRhY2MwAgAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBC3Byb2R1Y2VKc29uAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAyMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQJAKwCAgkArAICAgF7CQCzAgIFDXByZUpzb25SZXN1bHQAAQIBfQERZ2VuZXJpY1YyUkVBRE9OTFkBAXgKAQRjYWxsAgFhAWUJAM0IAgUBYQkA/AcECQEHQWRkcmVzcwEJANkEAQgFAWUCXzEIBQFlAl8yCAUBZQJfMwUDbmlsCgACJGwFAXgKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBBGNhbGwCBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECFExpc3Qgc2l6ZSBleGNlZWRzIDEwCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQAGAAcACAAJAAoBEWdlbmVyaWNWM1JFQURPTkxZAQZwYXJhbXMKAQRjYWxsAgpmb2xkUmVzdWx0CmZvbGRQYXJhbXMEBGRBcHAJAQdBZGRyZXNzAQkA2QQBCAUKZm9sZFBhcmFtcwJfMQQNb3BlcmF0aW9uVHlwZQgFCmZvbGRQYXJhbXMCXzIEDWZ1bmNPcktleU5hbWUIBQpmb2xkUGFyYW1zAl8zBApmdW5jUGFyYW1zCAUKZm9sZFBhcmFtcwJfNAQPb3BlcmF0aW9uUmVzdWx0AwkAAAIFDW9wZXJhdGlvblR5cGUCBmludm9rZQkA/AcEBQRkQXBwBQ1mdW5jT3JLZXlOYW1lBQpmdW5jUGFyYW1zBQNuaWwDCQAAAgUNb3BlcmF0aW9uVHlwZQIGYmluS2V5CQCcCAIFBGRBcHAFDWZ1bmNPcktleU5hbWUDCQAAAgUNb3BlcmF0aW9uVHlwZQIHYm9vbEtleQkAmwgCBQRkQXBwBQ1mdW5jT3JLZXlOYW1lAwkAAAIFDW9wZXJhdGlvblR5cGUCBmludEtleQkAmggCBQRkQXBwBQ1mdW5jT3JLZXlOYW1lAwkAAAIFDW9wZXJhdGlvblR5cGUCBnN0cktleQkAnQgCBQRkQXBwBQ1mdW5jT3JLZXlOYW1lCQACAQkArAICAh5ub3Qgc3VwcG9ydGVkIG9wZXJhdGlvbiB0eXBlOiAFDW9wZXJhdGlvblR5cGUJAM0IAgUKZm9sZFJlc3VsdAUPb3BlcmF0aW9uUmVzdWx0CgACJGwFBnBhcmFtcwoAAiRzCQCQAwEFAiRsCgAFJGFjYzAFA25pbAoBBSRmMF8xAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQEEY2FsbAIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgYBaQENY29uc3RydWN0b3JWMQIQY29udHJvbEFkZHJlc3M1OA1yZXN0QWRkcmVzczU4AwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIObm90IGF1dGhvcml6ZWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkBEWtleUNvbnRyb2xBZGRyZXNzAAUQY29udHJvbEFkZHJlc3M1OAkAzAgCCQELU3RyaW5nRW50cnkCCQEOa2V5UmVzdEFkZHJlc3MABQ1yZXN0QWRkcmVzczU4BQNuaWwBaQEVc3Rha2VOc2J0UGFnZVJFQURPTkxZAhF1c2VyQWRkcmVzc1N0ck9wdAtuc2J0QW10RGlmZgQJZ25zYnRJbmZvCQEIYXNTdHJpbmcBCQD8BwQFB3Jlc3RBY2MCEWduc2J0SW5mb1JFQURPTkxZCQDMCAIFEXVzZXJBZGRyZXNzU3RyT3B0CQDMCAIFC25zYnRBbXREaWZmBQNuaWwFA25pbAQIc3dhcEluZm8JAQhhc1N0cmluZwEJAPwHBAUHcmVzdEFjYwIQc3dhcEluZm9SRUFET05MWQkAzAgCBRF1c2VyQWRkcmVzc1N0ck9wdAUDbmlsBQNuaWwJAJQKAgUDbmlsCQELcHJvZHVjZUpzb24BCQDMCAICEWduc2J0SW5mb1JFQURPTkxZCQDMCAIFCWduc2J0SW5mbwkAzAgCAhBzd2FwSW5mb1JFQURPTkxZCQDMCAIFCHN3YXBJbmZvBQNuaWwBaQETYnV5TnNidFBhZ2VSRUFET05MWQERdXNlckFkZHJlc3NTdHJPcHQECWduc2J0SW5mbwkBCGFzU3RyaW5nAQkA/AcEBQdyZXN0QWNjAhFnbnNidEluZm9SRUFET05MWQkAzAgCBRF1c2VyQWRkcmVzc1N0ck9wdAkAzAgCAAAFA25pbAUDbmlsBA1uZXV0cmlub1N0YXRzCQEIYXNTdHJpbmcBCQD8BwQFB3Jlc3RBY2MCFW5ldXRyaW5vU3RhdHNSRUFET05MWQUDbmlsBQNuaWwJAJQKAgUDbmlsCQELcHJvZHVjZUpzb24BCQDMCAICEWduc2J0SW5mb1JFQURPTkxZCQDMCAIFCWduc2J0SW5mbwkAzAgCAhVuZXV0cmlub1N0YXRzUkVBRE9OTFkJAMwIAgUNbmV1dHJpbm9TdGF0cwUDbmlsAWkBE2J1eVN1cmZQYWdlUkVBRE9OTFkDEXVzZXJBZGRyZXNzU3RyT3B0BmFtb3VudAphc3NldElkU3RyBA1uZXV0cmlub1N0YXRzCQEIYXNTdHJpbmcBCQD8BwQFB3Jlc3RBY2MCFW5ldXRyaW5vU3RhdHNSRUFET05MWQUDbmlsBQNuaWwEB3N1cmZCdXkJAQhhc1N0cmluZwEJAPwHBAUHcmVzdEFjYwIPYnV5U3VyZlJFQURPTkxZCQDMCAIFEXVzZXJBZGRyZXNzU3RyT3B0CQDMCAIFBmFtb3VudAkAzAgCBQphc3NldElkU3RyBQNuaWwFA25pbAQLbmV1dHJpbm9DZmcJAQhhc1N0cmluZwEJAPwHBAUHcmVzdEFjYwIWbmV1dHJpbm9Db25maWdSRUFET05MWQUDbmlsBQNuaWwJAJQKAgUDbmlsCQELcHJvZHVjZUpzb24BCQDMCAICFW5ldXRyaW5vU3RhdHNSRUFET05MWQkAzAgCBQ1uZXV0cmlub1N0YXRzCQDMCAICD2J1eVN1cmZSRUFET05MWQkAzAgCBQdzdXJmQnV5CQDMCAICFm5ldXRyaW5vQ29uZmlnUkVBRE9OTFkJAMwIAgULbmV1dHJpbm9DZmcFA25pbAFpARJ3YWxsZXRQYWdlUkVBRE9OTFkBDnVzZXJBZGRyZXNzU3RyBAp3YWxsZXRJbmZvCQEIYXNTdHJpbmcBCQD8BwQFB3Jlc3RBY2MCEndhbGxldEluZm9SRUFET05MWQkAzAgCBQ51c2VyQWRkcmVzc1N0cgUDbmlsBQNuaWwJAJQKAgUDbmlsCQELcHJvZHVjZUpzb24BCQDMCAICEndhbGxldEluZm9SRUFET05MWQkAzAgCBQp3YWxsZXRJbmZvBQNuaWwBaQEPZ2VuZXJpY1JFQURPTkxZAQdwYXlsb2FkBAxmdW5jc0luZGV4ZXMJAMwIAgAACQDMCAIAAQkAzAgCAAIJAMwIAgADCQDMCAIABAkAzAgCAAUJAMwIAgAGCQDMCAIABwkAzAgCAAgJAMwIAgAJBQNuaWwEDHBhcmFtSW5kZXhlcwkAzAgCAAEJAMwIAgADCQDMCAIABQkAzAgCAAcJAMwIAgAJCQDMCAIACwUDbmlsBApwYXlsb2FkQXJyCQC1CQIFB3BheWxvYWQFA1NFUAQLcGF5bG9hZFNpemUJAJADAQUKcGF5bG9hZEFycgoBEGludm9rZXNBZ3JlZ2F0b3ICBWFjY3VtB2Z1bmNJZHgDCQBnAgUHZnVuY0lkeAULcGF5bG9hZFNpemUFBWFjY3VtBARjYWxsCQCRAwIFCnBheWxvYWRBcnIFB2Z1bmNJZHgEB2NhbGxBcnIJALUJAgUEY2FsbAIBKwQHYWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQkAkQMCBQdjYWxsQXJyAAAECGZ1bmNOYW1lCQCRAwIFB2NhbGxBcnIAAQQJcGFyYW1zQXJyCQC1CQIJAJEDAgUHY2FsbEFycgACAgE6BApwYXJhbXNTaXplCQCQAwEFCXBhcmFtc0FycgoBD3BhcmFtc0FncmVnYXRvcgIJcGFyYW1zQWNjCHBhcmFtSWR4AwkAZwIFCHBhcmFtSWR4BQpwYXJhbXNTaXplBQlwYXJhbXNBY2MEAXADCQAAAgkAkQMCBQlwYXJhbXNBcnIJAGUCBQhwYXJhbUlkeAABAgFzCQCRAwIFCXBhcmFtc0FycgUIcGFyYW1JZHgJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQlwYXJhbXNBcnIFCHBhcmFtSWR4CQDNCAIFCXBhcmFtc0FjYwUBcAQGcGFyYW1zCgACJGwFDHBhcmFtSW5kZXhlcwoAAiRzCQCQAwEFAiRsCgAFJGFjYzAFA25pbAoBBSRmMF8xAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQEPcGFyYW1zQWdyZWdhdG9yAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyA2CQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQAGBAZyZXN1bHQJAQhhc1N0cmluZwEJAPwHBAUHYWRkcmVzcwUIZnVuY05hbWUFBnBhcmFtcwUDbmlsCQDOCAIFBWFjY3VtCQDMCAIFCGZ1bmNOYW1lCQDMCAIFBnJlc3VsdAUDbmlsBA5pbnZva2VzUmVzdWx0cwoAAiRsBQxmdW5jc0luZGV4ZXMKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBEGludm9rZXNBZ3JlZ2F0b3ICBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECFExpc3Qgc2l6ZSBleGNlZWRzIDEwCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQAGAAcACAAJAAoJAJQKAgUDbmlsCQELcHJvZHVjZUpzb24BBQ5pbnZva2VzUmVzdWx0cwCiXWSM", "height": 2471181, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: rv62FNFFKn5r7AVEzepEPqC3dPVSMSoQ9eDjC1G6xEh Next: none Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let SEP = "__"
55
66 let IdxControlCfgNeutrinoDapp = 1
77
88 let IdxControlCfgAuctionDapp = 2
99
1010 let IdxControlCfgRpdDapp = 3
1111
1212 let IdxControlCfgMathDapp = 4
1313
1414 let IdxControlCfgLiquidationDapp = 5
1515
1616 let IdxControlCfgRestDapp = 6
1717
1818 let IdxControlCfgNodeRegistryDapp = 7
1919
2020 let IdxControlCfgNsbtStakingDapp = 8
2121
2222 let IdxControlCfgMediatorDapp = 9
2323
2424 func getStringOrFail (address,key) = valueOrErrorMessage(getString(address, key), (((("mandatory " + toString(address)) + ".") + key) + " is not defined"))
2525
2626
2727 func keyControlAddress () = "%s%s__config__controlAddress"
2828
2929
3030 func keyControlCfg () = "%s__controlConfig"
3131
3232
3333 func readControlCfgOrFail (control) = split_4C(getStringOrFail(control, keyControlCfg()), SEP)
3434
3535
3636 func getContractAddressOrFail (controlCfg,idx) = valueOrErrorMessage(addressFromString(controlCfg[idx]), ("Control cfg doesn't contain address at index " + toString(idx)))
3737
3838
3939 let controlContract = addressFromStringValue(valueOrElse(getString(this, keyControlAddress()), "3N4NS7d4Jo9a6F14LiFUKKYVdUkkf2eP4Zx"))
4040
4141 let controlCfg = readControlCfgOrFail(controlContract)
4242
4343 let restAcc = getContractAddressOrFail(controlCfg, IdxControlCfgRestDapp)
4444
4545 func keyRestAddress () = "%s%s__config__restAddress"
4646
4747
4848 func getStrOrFail (key) = valueOrErrorMessage(getString(this, key), (("Mandatory this." + key) + " is not defined"))
4949
5050
5151 func getAddressOrFail (key) = valueOrErrorMessage(addressFromString(getStrOrFail(key)), ("fail to parse address for this." + key))
5252
5353
5454 func asString (val) = match val {
5555 case valStr: String =>
5656 valStr
5757 case _ =>
5858 throw("fail to cast into String")
5959 }
6060
6161
6262 func produceJson (strMap) = {
6363 let indexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6464 let length = size(strMap)
6565 if (((length % 2) != 0))
6666 then throw("only even args size is accepeted")
6767 else if ((length > size(indexes)))
6868 then throw(("strMap length is greater then " + toString(size(indexes))))
6969 else {
7070 func produceJson (jsonAccum,nextIdx) = if (if (((nextIdx % 2) == 0))
7171 then (length >= (nextIdx + 1))
7272 else false)
7373 then (((((jsonAccum + "
7474 \"") + strMap[nextIdx]) + "\": \"") + strMap[(nextIdx + 1)]) + "\",")
7575 else jsonAccum
7676
7777 let preJsonResult = {
7878 let $l = indexes
7979 let $s = size($l)
8080 let $acc0 = ""
8181 func $f0_1 ($a,$i) = if (($i >= $s))
8282 then $a
8383 else produceJson($a, $l[$i])
8484
8585 func $f0_2 ($a,$i) = if (($i >= $s))
8686 then $a
8787 else throw("List size exceeds 20")
8888
8989 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($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), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
9090 }
9191 (("{" + dropRight(preJsonResult, 1)) + "}")
9292 }
9393 }
9494
9595
9696 func genericV2READONLY (x) = {
9797 func call (a,e) = (a :+ invoke(Address(fromBase58String(e._1)), e._2, e._3, nil))
9898
9999 let $l = x
100100 let $s = size($l)
101101 let $acc0 = nil
102102 func $f0_1 ($a,$i) = if (($i >= $s))
103103 then $a
104104 else call($a, $l[$i])
105105
106106 func $f0_2 ($a,$i) = if (($i >= $s))
107107 then $a
108108 else throw("List size exceeds 10")
109109
110110 $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)
111111 }
112112
113113
114114 func genericV3READONLY (params) = {
115115 func call (foldResult,foldParams) = {
116116 let dApp = Address(fromBase58String(foldParams._1))
117117 let operationType = foldParams._2
118118 let funcOrKeyName = foldParams._3
119119 let funcParams = foldParams._4
120120 let operationResult = if ((operationType == "invoke"))
121121 then invoke(dApp, funcOrKeyName, funcParams, nil)
122122 else if ((operationType == "binKey"))
123123 then getBinary(dApp, funcOrKeyName)
124124 else if ((operationType == "boolKey"))
125125 then getBoolean(dApp, funcOrKeyName)
126126 else if ((operationType == "intKey"))
127127 then getInteger(dApp, funcOrKeyName)
128128 else if ((operationType == "strKey"))
129129 then getString(dApp, funcOrKeyName)
130130 else throw(("not supported operation type: " + operationType))
131131 (foldResult :+ operationResult)
132132 }
133133
134134 let $l = params
135135 let $s = size($l)
136136 let $acc0 = nil
137137 func $f0_1 ($a,$i) = if (($i >= $s))
138138 then $a
139139 else call($a, $l[$i])
140140
141141 func $f0_2 ($a,$i) = if (($i >= $s))
142142 then $a
143143 else throw("List size exceeds 10")
144144
145145 $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)
146146 }
147147
148148
149149 @Callable(i)
150150 func constructorV1 (controlAddress58,restAddress58) = if ((i.caller != this))
151151 then throw("not authorized")
152152 else [StringEntry(keyControlAddress(), controlAddress58), StringEntry(keyRestAddress(), restAddress58)]
153153
154154
155155
156156 @Callable(i)
157157 func stakeNsbtPageREADONLY (userAddressStrOpt,nsbtAmtDiff) = {
158158 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, nsbtAmtDiff], nil))
159159 let swapInfo = asString(invoke(restAcc, "swapInfoREADONLY", [userAddressStrOpt], nil))
160160 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "swapInfoREADONLY", swapInfo]))
161161 }
162162
163163
164164
165165 @Callable(i)
166166 func buyNsbtPageREADONLY (userAddressStrOpt) = {
167167 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil))
168168 let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
169169 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats]))
170170 }
171171
172172
173173
174174 @Callable(i)
175175 func buySurfPageREADONLY (userAddressStrOpt,amount,assetIdStr) = {
176176 let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
177177 let surfBuy = asString(invoke(restAcc, "buySurfREADONLY", [userAddressStrOpt, amount, assetIdStr], nil))
178178 let neutrinoCfg = asString(invoke(restAcc, "neutrinoConfigREADONLY", nil, nil))
179179 $Tuple2(nil, produceJson(["neutrinoStatsREADONLY", neutrinoStats, "buySurfREADONLY", surfBuy, "neutrinoConfigREADONLY", neutrinoCfg]))
180180 }
181181
182182
183183
184184 @Callable(i)
185185 func walletPageREADONLY (userAddressStr) = {
186186 let walletInfo = asString(invoke(restAcc, "walletInfoREADONLY", [userAddressStr], nil))
187187 $Tuple2(nil, produceJson(["walletInfoREADONLY", walletInfo]))
188188 }
189189
190190
191191
192192 @Callable(i)
193193 func genericREADONLY (payload) = {
194194 let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
195195 let paramIndexes = [1, 3, 5, 7, 9, 11]
196196 let payloadArr = split(payload, SEP)
197197 let payloadSize = size(payloadArr)
198198 func invokesAgregator (accum,funcIdx) = if ((funcIdx >= payloadSize))
199199 then accum
200200 else {
201201 let call = payloadArr[funcIdx]
202202 let callArr = split(call, "+")
203203 let address = addressFromStringValue(callArr[0])
204204 let funcName = callArr[1]
205205 let paramsArr = split(callArr[2], ":")
206206 let paramsSize = size(paramsArr)
207207 func paramsAgregator (paramsAcc,paramIdx) = if ((paramIdx >= paramsSize))
208208 then paramsAcc
209209 else {
210210 let p = if ((paramsArr[(paramIdx - 1)] == "s"))
211211 then paramsArr[paramIdx]
212212 else parseIntValue(paramsArr[paramIdx])
213213 (paramsAcc :+ p)
214214 }
215215
216216 let params = {
217217 let $l = paramIndexes
218218 let $s = size($l)
219219 let $acc0 = nil
220220 func $f0_1 ($a,$i) = if (($i >= $s))
221221 then $a
222222 else paramsAgregator($a, $l[$i])
223223
224224 func $f0_2 ($a,$i) = if (($i >= $s))
225225 then $a
226226 else throw("List size exceeds 6")
227227
228228 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6)
229229 }
230230 let result = asString(invoke(address, funcName, params, nil))
231231 (accum ++ [funcName, result])
232232 }
233233
234234 let invokesResults = {
235235 let $l = funcsIndexes
236236 let $s = size($l)
237237 let $acc0 = nil
238238 func $f0_1 ($a,$i) = if (($i >= $s))
239239 then $a
240240 else invokesAgregator($a, $l[$i])
241241
242242 func $f0_2 ($a,$i) = if (($i >= $s))
243243 then $a
244244 else throw("List size exceeds 10")
245245
246246 $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)
247247 }
248248 $Tuple2(nil, produceJson(invokesResults))
249249 }
250250
251251

github/deemru/w8io/873ac7e 
30.12 ms