tx · 2BsK41cRUTmGFMd2P2aPTgKX8didF1h9uQtL5GDYh78G

3Mungn3ygy3DzpbDUKPbJQaeNKfQHu9fkK8:  -0.01500000 Waves

2022.11.12 16:49 [2313997] smart account 3Mungn3ygy3DzpbDUKPbJQaeNKfQHu9fkK8 > SELF 0.00000000 Waves

{ "type": 13, "id": "2BsK41cRUTmGFMd2P2aPTgKX8didF1h9uQtL5GDYh78G", "fee": 1500000, "feeAssetId": null, "timestamp": 1668260985895, "version": 2, "chainId": 84, "sender": "3Mungn3ygy3DzpbDUKPbJQaeNKfQHu9fkK8", "senderPublicKey": "6L7iBerXuPa5E74WCM6fLSB2VM1bMG9jgASH8tu9orHN", "proofs": [ "qxBqveXYKwj9deGjGscpcgaPRqiJXkXCpYTfCjSb5MVLL2KU7dJDTzCsMnHArKC48RaCiYCd5cAFTA5jUY6pDoX" ], "script": "base64:BgIoCAISBwoFAQgBAQgSBgoEAQEICBIDCgEBEgQKAgEIEgQKAhEYEgASACsAD0dBTUVfVFlQRV9HUk9VUAIFR3JvdXAAEUdBTUVfVFlQRV9QTEFUT0ZGAghQbGF5LW9mZgAKR0FNRV9UWVBFUwkAzAgCBQ9HQU1FX1RZUEVfR1JPVVAJAMwIAgURR0FNRV9UWVBFX1BMQVRPRkYFA25pbAAEVVNEVAEgbySjyqsw3FIpmOgsYVruWn8jTcItdbvpnapU4NLQB8EAB01JTl9CRVQAwIQ9AAhPTkVfSE9VUgkAaAIJAGgCAAUAPADoBwARTU9ORVlfQk9YX0FERFJFRVMJAQdBZGRyZXNzAQEaAVSxYgy7BRV2F+zuKtUZtXyHmoiep9yqU84AB0JFVF9GRUUA9AMACUZFRV9TQ0FMRQCQTgAHa0FjdGl2ZQIGYWN0aXZlAAtrQWN0aXZlR2xvYgIUYWN0aXZlX2FsbF9jb250cmFjdHMABmtDYXVzZQIOc2h1dGRvd25fY2F1c2UADWtHYW1lU3RyYVRpbWUCDl9zdGFydEdhbWVUaW1lAAlrR2FtZVR5cGUCCV9HYW1lVHlwZQALa0xhc3RHYW1lSWQCDGxhc3RfZ2FtZV9pZAAKa1RvdGFsQmV0cwIKX3RvdGFsQmV0cwAHa1RvV2luQQIHX3RvV2luQQAHa1RvV2luQgIHX3RvV2luQgAHa09uRHJhdwIHX29uRHJhdwALa0dhbWVSZXN1bHQCB19yZXN1bHQABWtCYW5rAgVfYmFuawAKa0ZpbmFsVGltZQIKX2ZpbmFsVGltZQARa1RvdGFsQmV0c0ZvclR5cGUCEV90b3RhbEJldHNGb3JUeXBlAAhrVXNlckJldAIIX3VzZXJCZXQACmtVc2VyUmVmSWQCBl9yZWZJZAAMa1VzZXJDbGFpbWVkAghfY2xhaW1lZAANa0FkbWluUHViS2V5MQILYWRtaW5fcHViXzEADWtBZG1pblB1YktleTICC2FkbWluX3B1Yl8yAA1rQWRtaW5QdWJLZXkzAgthZG1pbl9wdWJfMwAGb3JhY2xlCQEHQWRkcmVzcwEBGgFXiv8IaJo1ukDNYXTyEjfepjfw+jjO6B44ARNnZXRCYXNlNThGcm9tT3JhY2xlAQNrZXkEByRtYXRjaDAJAJ0IAgUGb3JhY2xlBQNrZXkDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAZzdHJpbmcFByRtYXRjaDAJANkEAQUGc3RyaW5nBAdub3RoaW5nBQckbWF0Y2gwCQACAQkArAICBQNrZXkCCGlzIGVtcHR5AAxhZG1pblB1YktleTEJARNnZXRCYXNlNThGcm9tT3JhY2xlAQUNa0FkbWluUHViS2V5MQAMYWRtaW5QdWJLZXkyCQETZ2V0QmFzZTU4RnJvbU9yYWNsZQEFDWtBZG1pblB1YktleTIADGFkbWluUHViS2V5MwkBE2dldEJhc2U1OEZyb21PcmFjbGUBBQ1rQWRtaW5QdWJLZXkzAAZhY3RpdmUJAQt2YWx1ZU9yRWxzZQIJAJsIAgUEdGhpcwUHa0FjdGl2ZQYACmFjdGl2ZUdsb2IJAQt2YWx1ZU9yRWxzZQIJAJsIAgUGb3JhY2xlBQtrQWN0aXZlR2xvYgYBCGlzQWN0aXZlAAMDBQZhY3RpdmUFCmFjdGl2ZUdsb2IHBQR1bml0CQACAQIfREFwcCBpcyBpbmFjdGl2ZSBhdCB0aGlzIG1vbWVudAELaXNBZG1pbkNhbGwBAWkDCQEPY29udGFpbnNFbGVtZW50AgkAzAgCBQxhZG1pblB1YktleTEJAMwIAgUMYWRtaW5QdWJLZXkyCQDMCAIFDGFkbWluUHViS2V5MwUDbmlsCAUBaQ9jYWxsZXJQdWJsaWNLZXkFBHVuaXQJAAIBAiFPbmx5IGFkbWluIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24BB3N1c3BlbmQBBWNhdXNlCQDMCAIJAQxCb29sZWFuRW50cnkCBQdrQWN0aXZlBwkAzAgCCQELU3RyaW5nRW50cnkCBQZrQ2F1c2UFBWNhdXNlBQNuaWwBDWdldFVzZXJCZXRLZXkEBHVzZXIGZ2FtZUlkBHR5cGUGcmVzdWx0CQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIFBHVzZXICAV8JAKQDAQUGZ2FtZUlkAgFfCQCkAwEFBHR5cGUCAV8FBnJlc3VsdAUIa1VzZXJCZXQBFmdldFRvdGFsQmV0c0ZvclR5cGVLZXkDBmdhbWVJZAR0eXBlBnJlc3VsdAkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKQDAQUGZ2FtZUlkAgFfCQCkAwEFBHR5cGUCAV8FBnJlc3VsdAURa1RvdGFsQmV0c0ZvclR5cGUBC3ZhbGlkYXRlQmV0AwhnYW1lVHlwZQR0eXBlBnJlc3VsdAMJAAACBQR0eXBlAAEDCQECIT0CCQCxAgEFBnJlc3VsdAABCQACAQIvR2FtZSByZXN1bHQgbXVzdCBjb250YWluIG9ubHkgb25lIGxldHRlcjogQSxCLEQDCQEBIQEJAQhjb250YWlucwICA0FCRAUGcmVzdWx0CQACAQIvR2FtZSByZXN1bHQgbXVzdCBjb250YWluIG9ubHkgb25lIGxldHRlcjogQSxCLEQDAwkAAAIFCGdhbWVUeXBlBRFHQU1FX1RZUEVfUExBVE9GRgkBASEBCQEIY29udGFpbnMCAgJBQgUGcmVzdWx0BwkAAgECLUdhbWUgcmVzdWx0IG11c3QgY29udGFpbiBvbmx5IG9uZSBsZXR0ZXI6IEEsQgYDCQAAAgUEdHlwZQACBAdzcGxpdGVkCQC1CQIFBnJlc3VsdAIBXwMJAQIhPQIJAJADAQUHc3BsaXRlZAACCQACAQIWSW5uY29ycmVjdCBnYW1lIHJlc3VsdAQGYmFsbHNBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJALYJAQkAkQMCBQdzcGxpdGVkAAACFklubmNvcnJlY3QgZ2FtZSByZXN1bHQEBmJhbGxzQgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEJAJEDAgUHc3BsaXRlZAABAhZJbm5jb3JyZWN0IGdhbWUgcmVzdWx0AwkAAAIFBmJhbGxzQQUGYmFsbHNCCQACAQIvSW5uY29ycmVjdCBnYW1lIHJlc3VsdC4gQSBhbmQgQiBjYW5ub3QgYmUgZXF1YWwGAwkAAAIFBHR5cGUAAwQHc3BsaXRlZAkAtQkCBQZyZXN1bHQCAV8DCQECIT0CCQCQAwEFB3NwbGl0ZWQAAgkAAgECFklubmNvcnJlY3QgZ2FtZSByZXN1bHQEBHRlYW0JAJEDAgUHc3BsaXRlZAAABAtiYWxsc0Ftb3VudAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEJAJEDAgUHc3BsaXRlZAABAhZJbm5jb3JyZWN0IGdhbWUgcmVzdWx0AwkAZwIAAAULYmFsbHNBbW91bnQJAAIBAjtJbm5jb3JyZWN0IGdhbWUgcmVzdWx0LCBiYWxscyBhbW91bnQgbXVzdCBiZSBncmVhdGVyIHRoZW4gMAMDCQECIT0CCQCxAgEFBHRlYW0AAQYJAQEhAQkBCGNvbnRhaW5zAgICQUIFBHRlYW0JAAIBAi1HYW1lIHJlc3VsdCBtdXN0IGNvbnRhaW4gb25seSBvbmUgbGV0dGVyOiBBLEIGBwEJY2FsY0NsYWltBQZnYW1lSWQLdXNlckFkZHJlc3MGcmVzdWx0BHR5cGUGYW1vdW50BAdzcGxkUmVzCQC1CQIFBnJlc3VsdAIBXwQLJHQwMzk2ODQ0OTQDCQAAAgUEdHlwZQABAwkAAAIFBnJlc3VsdAIBQQkAlQoDAgMxXzAAAQAAAwkAAAIFBnJlc3VsdAIBQgkAlQoDAgMwXzEAAAABCQCVCgMCAzFfMQABAAEDCQAAAgUEdHlwZQACCQCVCgMFBnJlc3VsdAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAQMJAAACBQR0eXBlAAMDCQAAAgkAkQMCBQdzcGxkUmVzAAACAUEJAJUKAwkArAICCQCRAwIFB3NwbGRSZXMAAQICXzAJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQdzcGxkUmVzAAEAAAkAlQoDCQCsAgICAjBfCQCRAwIFB3NwbGRSZXMAAQAACQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUHc3BsZFJlcwABCQCVCgMFBnJlc3VsdAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAQQKZ2FtZVJlc3VsdAgFCyR0MDM5Njg0NDk0Al8xBAZiYWxsc0EIBQskdDAzOTY4NDQ5NAJfMgQGYmFsbHNCCAULJHQwMzk2ODQ0OTQCXzMEBGRpZmYDCQBmAgUGYmFsbHNBBQZiYWxsc0IJAGUCBQZiYWxsc0EFBmJhbGxzQgkAZQIFBmJhbGxzQgUGYmFsbHNBBAZ3aW5uZXIDCQBmAgUGYmFsbHNBBQZiYWxsc0ICAUEDCQBmAgUGYmFsbHNCBQZiYWxsc0ECAUICAUQEAkcxCQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAABBQZ3aW5uZXIAAAMJAAACBQR0eXBlAAEFBmFtb3VudAAABAJHMgkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBFmdldFRvdGFsQmV0c0ZvclR5cGVLZXkDBQZnYW1lSWQAAgUKZ2FtZVJlc3VsdAAAAwkAAAIFBHR5cGUAAgUGYW1vdW50AAAEAkczCQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAADCQCsAgIJAKwCAgUGd2lubmVyAgFfCQCkAwEFBGRpZmYAAAMJAAACBQR0eXBlAAMFBmFtb3VudAAABA10b3RhbFdpblZhbHVlCQBkAgkAZAIFAkcxBQJHMgUCRzMECXRvdGFsQmV0cwkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICCQCkAwEFBmdhbWVJZAUKa1RvdGFsQmV0cwAABQZhbW91bnQEC2JhbmtXaXRoRmVlCQBlAgUJdG90YWxCZXRzBQ10b3RhbFdpblZhbHVlBANmZWUJAGsDBQtiYW5rV2l0aEZlZQUHQkVUX0ZFRQUJRkVFX1NDQUxFBAFCCQBlAgULYmFua1dpdGhGZWUFA2ZlZQQDVUIxCQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQENZ2V0VXNlckJldEtleQQFC3VzZXJBZGRyZXNzBQZnYW1lSWQAAQUGd2lubmVyAAADCQAAAgUEdHlwZQABBQZhbW91bnQAAAQDVUIyCQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQENZ2V0VXNlckJldEtleQQFC3VzZXJBZGRyZXNzBQZnYW1lSWQAAgUKZ2FtZVJlc3VsdAAAAwkAAAIFBHR5cGUAAgUGYW1vdW50AAAEA1VCMwkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBDWdldFVzZXJCZXRLZXkEBQt1c2VyQWRkcmVzcwUGZ2FtZUlkAAMJAKwCAgkArAICBQZ3aW5uZXICAV8JAKQDAQUEZGlmZgAAAwkAAAIFBHR5cGUAAwUGYW1vdW50AAAEEHRvdGFsV2luVmFsdWVNYXgJAGQCCQBkAgUCRzEJAGgCBQJHMgADCQBoAgUCRzMAAgQCRDEDCQAAAgUCRzEAAAAACQBrAwkAZAIFAkcxCQBrAwkAaAIFAkcxBQFCAAEFEHRvdGFsV2luVmFsdWVNYXgFA1VCMQUCRzEEAkQyAwkAAAIFAkcyAAAAAAkAawMJAGQCBQJHMgkAawMJAGgCBQJHMgUBQgADBRB0b3RhbFdpblZhbHVlTWF4BQNVQjIFAkcyBAJEMwMJAAACBQJHMwAAAAAJAGsDCQBkAgUCRzMJAGsDCQBoAgUCRzMFAUIAAgUQdG90YWxXaW5WYWx1ZU1heAUDVUIzBQJHMwQLY2xhaW1BbW91bnQDCQAAAgUBQgAACQBkAgkAZAIFA1VCMQUDVUIyBQNVQjMJAGQCCQBkAgUCRDEFAkQyBQJEMwULY2xhaW1BbW91bnQHAWkBEXBvdGVudGlhbFdpbm5pbmdzBQZnYW1lSWQLdXNlckFkZHJlc3MGYW1vdW50BHR5cGUGcmVzdWx0BAtjbGFpbUFtb3VudAkBCWNhbGNDbGFpbQUFBmdhbWVJZAULdXNlckFkZHJlc3MFBnJlc3VsdAUEdHlwZQUGYW1vdW50CQCUCgIFA25pbAULY2xhaW1BbW91bnQBaQEDYmV0BAZnYW1lSWQEdHlwZQZyZXN1bHQFcmVmSWQJAQt2YWx1ZU9yRWxzZQIJAQhpc0FjdGl2ZQAEBHVzZXIJAKUIAQgFAWkGY2FsbGVyBAZnSWRTdHIJAKQDAQUGZ2FtZUlkBAskdDA2NTE2NjU5MQkAlAoCCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAlwbXRBbW91bnQIBQskdDA2NTE2NjU5MQJfMQQKcG10QXNzZXRJZAgFCyR0MDY1MTY2NTkxAl8yBA1nYW1lU3RhcnRUaW1lCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgkApAMBBQZnYW1lSWQFDWtHYW1lU3RyYVRpbWUAAAQIZ2FtZVR5cGUJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgkApAMBBQZnYW1lSWQFCWtHYW1lVHlwZQMJAQIhPQIFCnBtdEFzc2V0SWQFBFVTRFQJAAIBAh5QYW15bWVudCBtdXN0IGJlIEluIFVTRFQgYXNzZXQDCQBmAgUHTUlOX0JFVAUJcG10QW1vdW50CQACAQkArAICCQCsAgICCE1pbiBiZXQgCQCkAwEJAGkCBQdNSU5fQkVUAMCEPQIEVVNEVAMJAAACBQ1nYW1lU3RhcnRUaW1lAAAJAAIBCQCsAgICGFRoZXJlIGlzIG5vIGdhbWUgd2l0aCBpZAkApAMBBQZnYW1lSWQDCQBnAgkAZAIIBQlsYXN0QmxvY2sJdGltZXN0YW1wBQhPTkVfSE9VUgUNZ2FtZVN0YXJ0VGltZQkAAgECKEJldHMgb24gdGhpcyBnYW1lIGFyZSBubyBsb25nZXIgYWNjZXB0ZWQDCQEBIQEJAQt2YWxpZGF0ZUJldAMFCGdhbWVUeXBlBQR0eXBlBQZyZXN1bHQJAAIBAhJJbmNvcnJlY3QgYmV0IHR5cGUEB3NwbGRSZXMJALUJAgUGcmVzdWx0AgFfBAp1c2VyQmV0S2V5CQENZ2V0VXNlckJldEtleQQFBHVzZXIFBmdhbWVJZAUEdHlwZQUGcmVzdWx0BBZ0b3RhbEJldHNGb3JUeXBlQmV0S2V5CQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAUEdHlwZQUGcmVzdWx0BAd1c2VyQmV0CQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQp1c2VyQmV0S2V5AAAFCXBtdEFtb3VudAQTdG90YWxCZXRzRm9yVHlwZUJldAkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUWdG90YWxCZXRzRm9yVHlwZUJldEtleQAABQlwbXRBbW91bnQECXRvdGFsQmV0cwkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQZnSWRTdHIFCmtUb3RhbEJldHMAAAUJcG10QW1vdW50BAZ0b1dpbkEJAGQCCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgUGZ0lkU3RyBQdrVG9XaW5BAAADAwkAAAIFBHR5cGUAAQkAAAIFBnJlc3VsdAIBQQcFCXBtdEFtb3VudAMDCQAAAgUEdHlwZQACCQBmAgkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFB3NwbGRSZXMAAQcFCXBtdEFtb3VudAMDCQAAAgUEdHlwZQADCQAAAgkAkQMCBQdzcGxkUmVzAAACAUEHBQlwbXRBbW91bnQAAAQGdG9XaW5CCQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQCsAgIFBmdJZFN0cgUHa1RvV2luQgAAAwMJAAACBQR0eXBlAAEJAAACBQZyZXN1bHQCAUIHBQlwbXRBbW91bnQDAwkAAAIFBHR5cGUAAgkAZgIJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQdzcGxkUmVzAAEJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQdzcGxkUmVzAAAHBQlwbXRBbW91bnQDAwkAAAIFBHR5cGUAAwkAAAIJAJEDAgUHc3BsZFJlcwAAAgFCBwUJcG10QW1vdW50AAAEBm9uRHJhdwkAZAIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQZnSWRTdHIFB2tPbkRyYXcAAAMDCQAAAgUEdHlwZQABCQAAAgUGcmVzdWx0AgFEBwUJcG10QW1vdW50AAAJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUKdXNlckJldEtleQUHdXNlckJldAkAzAgCCQEMSW50ZWdlckVudHJ5AgUWdG90YWxCZXRzRm9yVHlwZUJldEtleQUTdG90YWxCZXRzRm9yVHlwZUJldAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZnSWRTdHIFCmtUb3RhbEJldHMFCXRvdGFsQmV0cwkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZnSWRTdHIFB2tUb1dpbkEFBnRvV2luQQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZnSWRTdHIFB2tUb1dpbkIFBnRvV2luQgkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZnSWRTdHIFB2tPbkRyYXcFBm9uRHJhdwUDbmlsAwkBASEBCQEJaXNEZWZpbmVkAQkAnQgCBQR0aGlzCQCsAgIFBHVzZXIFCmtVc2VyUmVmSWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR1c2VyBQprVXNlclJlZklkBQVyZWZJZAUDbmlsBQNuaWwBaQEFY2xhaW0BBmdhbWVJZAkBC3ZhbHVlT3JFbHNlAgkBCGlzQWN0aXZlAAQEdXNlcgkApQgBCAUBaQZjYWxsZXIEBmdJZFN0cgkApAMBBQZnYW1lSWQECWZpbmFsVGltZQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCaCAIFBHRoaXMJAKwCAgUGZ0lkU3RyBQprRmluYWxUaW1lAiRZb3UgY2FuIGNsYWltIG9ubHkgYWZ0ZXIgZ2FtZSBmaW5pc2gDCQBmAgkAZAIFCWZpbmFsVGltZQUIT05FX0hPVVIIBQlsYXN0QmxvY2sJdGltZXN0YW1wCQACAQI3WW91IGNhbiBjbGFpbSBvbmx5IGFmdGVyIG9uZSBob3VyIHBhc3MgYWZ0ZXIgZmluYWwgdGltZQMJAQlpc0RlZmluZWQBCQCbCAIFBHRoaXMJAKwCAgkArAICCQCsAgIFBHVzZXICAV8FBmdJZFN0cgUMa1VzZXJDbGFpbWVkCQACAQIWWW91IGFyZSBhbHJlZHkgY2xhaW1lZAQKZ2FtZVJlc3VsdAkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQZnSWRTdHIFC2tHYW1lUmVzdWx0BAtjbGFpbUFtb3VudAkBCWNhbGNDbGFpbQUFBmdhbWVJZAUEdXNlcgUKZ2FtZVJlc3VsdAAAAAADCQAAAgULY2xhaW1BbW91bnQAAAkAAgECEE5vdGhpbmcgdG8gY2xhaW0JAJQKAgkAzAgCCQEMQm9vbGVhbkVudHJ5AgkArAICCQCsAgIJAKwCAgUEdXNlcgIBXwUGZ0lkU3RyBQxrVXNlckNsYWltZWQGCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgULY2xhaW1BbW91bnQFBFVTRFQFA25pbAULY2xhaW1BbW91bnQBaQELZ2FtZVN1bW1hcnkCBmdhbWVJZAZyZXN1bHQEBmdJZFN0cgkApAMBBQZnYW1lSWQEDWdhbWVTdGFydFRpbWUJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICCQCkAwEFBmdhbWVJZAUNa0dhbWVTdHJhVGltZQAAAwkAAAIFDWdhbWVTdGFydFRpbWUAAAkAAgEJAKwCAgIYVGhlcmUgaXMgbm8gZ2FtZSB3aXRoIGlkCQCkAwEFBmdhbWVJZAQHc3BsZFJlcwkAtQkCBQZyZXN1bHQCAV8EBmJhbGxzQQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEJAJEDAgUHc3BsZFJlcwAAAhZJbm5jb3JyZWN0IGdhbWUgcmVzdWx0BAZiYWxsc0IJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBCQCRAwIFB3NwbGRSZXMAAQIWSW5uY29ycmVjdCBnYW1lIHJlc3VsdAQEZGlmZgMJAGYCBQZiYWxsc0EFBmJhbGxzQgkAZQIFBmJhbGxzQQUGYmFsbHNCCQBlAgUGYmFsbHNCBQZiYWxsc0EEBndpbm5lcgMJAGYCBQZiYWxsc0EFBmJhbGxzQgIBQQMJAGYCBQZiYWxsc0IFBmJhbGxzQQIBQgIBRAQNdG90YWxXaW5UeXBlMQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAABBQZ3aW5uZXIAAAQNdG90YWxXaW5UeXBlMgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAACBQZyZXN1bHQAAAQNdG90YWxXaW5UeXBlMwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEWZ2V0VG90YWxCZXRzRm9yVHlwZUtleQMFBmdhbWVJZAADCQCsAgIJAKwCAgUGd2lubmVyAgFfCQCkAwEFBGRpZmYAAAQNdG90YWxXaW5WYWx1ZQkAZAIJAGQCBQ10b3RhbFdpblR5cGUxBQ10b3RhbFdpblR5cGUyBQ10b3RhbFdpblR5cGUzBAl0b3RhbEJldHMJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICCQCkAwEFBmdhbWVJZAUKa1RvdGFsQmV0cwAABAtiYW5rV2l0aEZlZQkAZQIFCXRvdGFsQmV0cwUNdG90YWxXaW5WYWx1ZQQNJHQwMTA2NTMxMDgxMQMJAAACBQ10b3RhbFdpblZhbHVlAAAJAJQKAgULYmFua1dpdGhGZWUAAAQBZgkAawMFC2JhbmtXaXRoRmVlBQdCRVRfRkVFBQlGRUVfU0NBTEUJAJQKAgUBZgkAZQIFC2JhbmtXaXRoRmVlBQFmBANmZWUIBQ0kdDAxMDY1MzEwODExAl8xBARiYW5rCAUNJHQwMTA2NTMxMDgxMQJfMgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBmdJZFN0cgULa0dhbWVSZXN1bHQFBnJlc3VsdAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQZnSWRTdHIFBWtCYW5rBQRiYW5rCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBmdJZFN0cgUKa0ZpbmFsVGltZQgFCWxhc3RCbG9jawl0aW1lc3RhbXAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwURTU9ORVlfQk9YX0FERFJFRVMFA2ZlZQUEVVNEVAUDbmlsAWkBCWluaXRHYW1lcwIOc3RhcnRHYW1lVGltZXMFdHlwZXMKAQhpbml0R2FtZQIDYWNjDXN0YXJ0R2FtZVRpbWUEDSR0MDExMTk1MTEyMjkFA2FjYwQHZW50cmllcwgFDSR0MDExMTk1MTEyMjkCXzEECmxhc3RHYW1lSWQIBQ0kdDAxMTE5NTExMjI5Al8yBAFqCAUNJHQwMTExOTUxMTIyOQJfMwQJbmV3R2FtZUlkCQBkAgUKbGFzdEdhbWVJZAABAwkAZgIIBQlsYXN0QmxvY2sJdGltZXN0YW1wBQ1zdGFydEdhbWVUaW1lCQACAQIjc3RhcnRHYW1lVGltZSBtdXN0IGJlIGluIHRoZSBmdXR1cmUDCQEBIQEJAQ9jb250YWluc0VsZW1lbnQCBQpHQU1FX1RZUEVTCQCRAwIFBXR5cGVzBQFqCQACAQkArAICAiF0eXBlIG11c3QgY29udGFpbiBvbmUgb2YgdmFsdWVzOiAJALkJAgUKR0FNRV9UWVBFUwIBLAQLZ2FtZUVudHJpZXMJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkApAMBBQluZXdHYW1lSWQFDWtHYW1lU3RyYVRpbWUFDXN0YXJ0R2FtZVRpbWUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCkAwEFCW5ld0dhbWVJZAUJa0dhbWVUeXBlCQCRAwIFBXR5cGVzBQFqBQNuaWwJAJUKAwkAzggCBQdlbnRyaWVzBQtnYW1lRW50cmllcwUJbmV3R2FtZUlkCQBkAgUBagABBApsYXN0R2FtZUlkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFC2tMYXN0R2FtZUlkAAAEDSR0MDExNzcyMTE4NTcKAAIkbAUOc3RhcnRHYW1lVGltZXMKAAIkcwkAkAMBBQIkbAoABSRhY2MwCQCVCgMFA25pbAUKbGFzdEdhbWVJZAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQhpbml0R2FtZQIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgNTAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADAAMQAyBAxnYW1lc0VudHJpZXMIBQ0kdDAxMTc3MjExODU3Al8xBAduZXdMR0lkCAUNJHQwMTE3NzIxMTg1NwJfMgkAzQgCBQxnYW1lc0VudHJpZXMJAQxJbnRlZ2VyRW50cnkCBQtrTGFzdEdhbWVJZAUHbmV3TEdJZAFpAQhzaHV0ZG93bgADCQEBIQEFBmFjdGl2ZQkAAgEJAKwCAgIiREFwcCBpcyBhbHJlYWR5IHN1c3BlbmRlZC4gQ2F1c2U6IAkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzBQZrQ2F1c2UCGnRoZSBjYXVzZSB3YXNuJ3Qgc3BlY2lmaWVkAwkBASEBCQEPY29udGFpbnNFbGVtZW50AgkAzAgCBQxhZG1pblB1YktleTEJAMwIAgUMYWRtaW5QdWJLZXkyCQDMCAIFDGFkbWluUHViS2V5MwUDbmlsCAUBaQ9jYWxsZXJQdWJsaWNLZXkJAAIBAiFPbmx5IGFkbWluIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24JAQdzdXNwZW5kAQIPUGF1c2VkIGJ5IGFkbWluAWkBCGFjdGl2YXRlAAMFBmFjdGl2ZQkAAgECFkRBcHAgaXMgYWxyZWFkeSBhY3RpdmUDCQEBIQEJAQ9jb250YWluc0VsZW1lbnQCCQDMCAIFDGFkbWluUHViS2V5MQkAzAgCBQxhZG1pblB1YktleTIJAMwIAgUMYWRtaW5QdWJLZXkzBQNuaWwIBQFpD2NhbGxlclB1YmxpY0tleQkAAgECIU9ubHkgYWRtaW4gY2FuIGNhbGwgdGhpcyBmdW5jdGlvbgkAzAgCCQEMQm9vbGVhbkVudHJ5AgUHa0FjdGl2ZQYJAMwIAgkBC0RlbGV0ZUVudHJ5AQUGa0NhdXNlBQNuaWwAxmce5Q==", "height": 2313997, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EbXZM4buwUWMgsVAAuMF89nvxgmTUF3jcFWB5sZUr3BB Next: CLkt2Pv4NSBZtBj5TdfVXrZ6em71oni56eEGXRCsV8Hc Diff:
OldNewDifferences
4343
4444 let u = "_bank"
4545
46-let v = "_finalTime"
46+let v = "_finalTime"
4747
4848 let w = "_totalBetsForType"
4949
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "Group"
55
66 let b = "Play-off"
77
88 let c = [a, b]
99
1010 let d = base58'8UrfDVd5GreeUwm7uPk7eYz1eMv376kzR52C6sANPkwS'
1111
1212 let e = 1000000
1313
1414 let f = ((5 * 60) * 1000)
1515
1616 let g = Address(base58'3N65zqVKchaFdW4gS7FxCRibjfkVgJvo7PT')
1717
1818 let h = 500
1919
2020 let i = 10000
2121
2222 let j = "active"
2323
2424 let k = "active_all_contracts"
2525
2626 let l = "shutdown_cause"
2727
2828 let m = "_startGameTime"
2929
3030 let n = "_GameType"
3131
3232 let o = "last_game_id"
3333
3434 let p = "_totalBets"
3535
3636 let q = "_toWinA"
3737
3838 let r = "_toWinB"
3939
4040 let s = "_onDraw"
4141
4242 let t = "_result"
4343
4444 let u = "_bank"
4545
46-let v = "_finalTime"
46+let v = "_finalTime"
4747
4848 let w = "_totalBetsForType"
4949
5050 let x = "_userBet"
5151
5252 let y = "_refId"
5353
5454 let z = "_claimed"
5555
5656 let A = "admin_pub_1"
5757
5858 let B = "admin_pub_2"
5959
6060 let C = "admin_pub_3"
6161
6262 let D = Address(base58'3PEbqViERCoKnmcSULh6n2aiMvUdSQdCsom')
6363
6464 func E (F) = {
6565 let G = getString(D, F)
6666 if ($isInstanceOf(G, "String"))
6767 then {
6868 let H = G
6969 fromBase58String(H)
7070 }
7171 else {
7272 let I = G
7373 throw((F + "is empty"))
7474 }
7575 }
7676
7777
7878 let J = E(A)
7979
8080 let K = E(B)
8181
8282 let L = E(C)
8383
8484 let M = valueOrElse(getBoolean(this, j), true)
8585
8686 let N = valueOrElse(getBoolean(D, k), true)
8787
8888 func O () = if (if (M)
8989 then N
9090 else false)
9191 then unit
9292 else throw("DApp is inactive at this moment")
9393
9494
9595 func P (Q) = if (containsElement([J, K, L], Q.callerPublicKey))
9696 then unit
9797 else throw("Only admin can call this function")
9898
9999
100100 func R (S) = [BooleanEntry(j, false), StringEntry(l, S)]
101101
102102
103103 func T (U,V,W,X) = (((((((U + "_") + toString(V)) + "_") + toString(W)) + "_") + X) + x)
104104
105105
106106 func Y (V,W,X) = (((((toString(V) + "_") + toString(W)) + "_") + X) + w)
107107
108108
109109 func Z (aa,W,X) = if ((W == 1))
110110 then if ((size(X) != 1))
111111 then throw("Game result must contain only one letter: A,B,D")
112112 else if (!(contains("ABD", X)))
113113 then throw("Game result must contain only one letter: A,B,D")
114114 else if (if ((aa == b))
115115 then !(contains("AB", X))
116116 else false)
117117 then throw("Game result must contain only one letter: A,B")
118118 else true
119119 else if ((W == 2))
120120 then {
121121 let ab = split(X, "_")
122122 if ((size(ab) != 2))
123123 then throw("Inncorrect game result")
124124 else {
125125 let ac = valueOrErrorMessage(parseInt(ab[0]), "Inncorrect game result")
126126 let ad = valueOrErrorMessage(parseInt(ab[1]), "Inncorrect game result")
127127 if ((ac == ad))
128128 then throw("Inncorrect game result. A and B cannot be equal")
129129 else true
130130 }
131131 }
132132 else if ((W == 3))
133133 then {
134134 let ab = split(X, "_")
135135 if ((size(ab) != 2))
136136 then throw("Inncorrect game result")
137137 else {
138138 let ae = ab[0]
139139 let af = valueOrErrorMessage(parseInt(ab[1]), "Inncorrect game result")
140140 if ((0 >= af))
141141 then throw("Inncorrect game result, balls amount must be greater then 0")
142142 else if (if ((size(ae) != 1))
143143 then true
144144 else !(contains("AB", ae)))
145145 then throw("Game result must contain only one letter: A,B")
146146 else true
147147 }
148148 }
149149 else false
150150
151151
152152 func ag (V,ah,X,W,ai) = {
153153 let aj = split(X, "_")
154154 let ak = if ((W == 1))
155155 then if ((X == "A"))
156156 then $Tuple3("1_0", 1, 0)
157157 else if ((X == "B"))
158158 then $Tuple3("0_1", 0, 1)
159159 else $Tuple3("1_1", 1, 1)
160160 else if ((W == 2))
161161 then $Tuple3(X, parseIntValue(aj[0]), parseIntValue(aj[1]))
162162 else if ((W == 3))
163163 then if ((aj[0] == "A"))
164164 then $Tuple3((aj[1] + "_0"), parseIntValue(aj[1]), 0)
165165 else $Tuple3(("0_" + aj[1]), 0, parseIntValue(aj[1]))
166166 else $Tuple3(X, parseIntValue(aj[0]), parseIntValue(aj[1]))
167167 let al = ak._1
168168 let ac = ak._2
169169 let ad = ak._3
170170 let am = if ((ac > ad))
171171 then (ac - ad)
172172 else (ad - ac)
173173 let an = if ((ac > ad))
174174 then "A"
175175 else if ((ad > ac))
176176 then "B"
177177 else "D"
178178 let ao = (valueOrElse(getInteger(this, Y(V, 1, an)), 0) + (if ((W == 1))
179179 then ai
180180 else 0))
181181 let ap = (valueOrElse(getInteger(this, Y(V, 2, al)), 0) + (if ((W == 2))
182182 then ai
183183 else 0))
184184 let aq = (valueOrElse(getInteger(this, Y(V, 3, ((an + "_") + toString(am)))), 0) + (if ((W == 3))
185185 then ai
186186 else 0))
187187 let ar = ((ao + ap) + aq)
188188 let as = (valueOrElse(getInteger(this, (toString(V) + p)), 0) + ai)
189189 let at = (as - ar)
190190 let au = fraction(at, h, i)
191191 let av = (at - au)
192192 let aw = (valueOrElse(getInteger(this, T(ah, V, 1, an)), 0) + (if ((W == 1))
193193 then ai
194194 else 0))
195195 let ax = (valueOrElse(getInteger(this, T(ah, V, 2, al)), 0) + (if ((W == 2))
196196 then ai
197197 else 0))
198198 let ay = (valueOrElse(getInteger(this, T(ah, V, 3, ((an + "_") + toString(am)))), 0) + (if ((W == 3))
199199 then ai
200200 else 0))
201201 let az = ((ao + (ap * 3)) + (aq * 2))
202202 let aA = if ((ao == 0))
203203 then 0
204204 else fraction((ao + fraction((ao * av), 1, az)), aw, ao)
205205 let aB = if ((ap == 0))
206206 then 0
207207 else fraction((ap + fraction((ap * av), 3, az)), ax, ap)
208208 let aC = if ((aq == 0))
209209 then 0
210210 else fraction((aq + fraction((aq * av), 2, az)), ay, aq)
211211 let aD = if ((av == 0))
212212 then ((aw + ax) + ay)
213213 else ((aA + aB) + aC)
214214 aD
215215 }
216216
217217
218218 @Callable(Q)
219219 func potentialWinnings (V,ah,ai,W,X) = {
220220 let aD = ag(V, ah, X, W, ai)
221221 $Tuple2(nil, aD)
222222 }
223223
224224
225225
226226 @Callable(Q)
227227 func bet (V,W,X,aE) = valueOrElse(O(), {
228228 let U = toString(Q.caller)
229229 let aF = toString(V)
230230 let aG = $Tuple2(Q.payments[0].amount, Q.payments[0].assetId)
231231 let aH = aG._1
232232 let aI = aG._2
233233 let aJ = valueOrElse(getInteger(this, (toString(V) + m)), 0)
234234 let aa = getStringValue(this, (toString(V) + n))
235235 if ((aI != d))
236236 then throw("Pamyment must be In USDT asset")
237237 else if ((e > aH))
238238 then throw((("Min bet " + toString((e / 1000000))) + "USDT"))
239239 else if ((aJ == 0))
240240 then throw(("There is no game with id" + toString(V)))
241241 else if (((lastBlock.timestamp + f) >= aJ))
242242 then throw("Bets on this game are no longer accepted")
243243 else if (!(Z(aa, W, X)))
244244 then throw("Incorrect bet type")
245245 else {
246246 let aj = split(X, "_")
247247 let aK = T(U, V, W, X)
248248 let aL = Y(V, W, X)
249249 let aM = (valueOrElse(getInteger(this, aK), 0) + aH)
250250 let aN = (valueOrElse(getInteger(this, aL), 0) + aH)
251251 let as = (valueOrElse(getInteger(this, (aF + p)), 0) + aH)
252252 let aO = (valueOrElse(getInteger(this, (aF + q)), 0) + (if (if ((W == 1))
253253 then (X == "A")
254254 else false)
255255 then aH
256256 else if (if ((W == 2))
257257 then (parseIntValue(aj[0]) > parseIntValue(aj[1]))
258258 else false)
259259 then aH
260260 else if (if ((W == 3))
261261 then (aj[0] == "A")
262262 else false)
263263 then aH
264264 else 0))
265265 let aP = (valueOrElse(getInteger(this, (aF + r)), 0) + (if (if ((W == 1))
266266 then (X == "B")
267267 else false)
268268 then aH
269269 else if (if ((W == 2))
270270 then (parseIntValue(aj[1]) > parseIntValue(aj[0]))
271271 else false)
272272 then aH
273273 else if (if ((W == 3))
274274 then (aj[0] == "B")
275275 else false)
276276 then aH
277277 else 0))
278278 let aQ = (valueOrElse(getInteger(this, (aF + s)), 0) + (if (if ((W == 1))
279279 then (X == "D")
280280 else false)
281281 then aH
282282 else 0))
283283 ([IntegerEntry(aK, aM), IntegerEntry(aL, aN), IntegerEntry((aF + p), as), IntegerEntry((aF + q), aO), IntegerEntry((aF + r), aP), IntegerEntry((aF + s), aQ)] ++ (if (!(isDefined(getString(this, (U + y)))))
284284 then [StringEntry((U + y), aE)]
285285 else nil))
286286 }
287287 })
288288
289289
290290
291291 @Callable(Q)
292292 func claim (V) = valueOrElse(O(), {
293293 let U = toString(Q.caller)
294294 let aF = toString(V)
295295 let aR = valueOrErrorMessage(getInteger(this, (aF + v)), "You can claim only after game finish")
296296 if (((aR + f) > lastBlock.timestamp))
297297 then throw("You can claim only after one hour pass after final time")
298298 else if (isDefined(getBoolean(this, (((U + "_") + aF) + z))))
299299 then throw("You are alredy claimed")
300300 else {
301301 let al = getStringValue(this, (aF + t))
302302 let aD = ag(V, U, al, 0, 0)
303303 if ((aD == 0))
304304 then throw("Nothing to claim")
305305 else $Tuple2([BooleanEntry((((U + "_") + aF) + z), true), ScriptTransfer(Q.caller, aD, d)], aD)
306306 }
307307 })
308308
309309
310310
311311 @Callable(Q)
312312 func gameSummary (V,X) = {
313313 let aF = toString(V)
314314 let aJ = valueOrElse(getInteger(this, (toString(V) + m)), 0)
315315 if ((aJ == 0))
316316 then throw(("There is no game with id" + toString(V)))
317317 else {
318318 let aj = split(X, "_")
319319 let ac = valueOrErrorMessage(parseInt(aj[0]), "Inncorrect game result")
320320 let ad = valueOrErrorMessage(parseInt(aj[1]), "Inncorrect game result")
321321 let am = if ((ac > ad))
322322 then (ac - ad)
323323 else (ad - ac)
324324 let an = if ((ac > ad))
325325 then "A"
326326 else if ((ad > ac))
327327 then "B"
328328 else "D"
329329 let aS = valueOrElse(getInteger(this, Y(V, 1, an)), 0)
330330 let aT = valueOrElse(getInteger(this, Y(V, 2, X)), 0)
331331 let aU = valueOrElse(getInteger(this, Y(V, 3, ((an + "_") + toString(am)))), 0)
332332 let ar = ((aS + aT) + aU)
333333 let as = valueOrElse(getInteger(this, (toString(V) + p)), 0)
334334 let at = (as - ar)
335335 let aV = if ((ar == 0))
336336 then $Tuple2(at, 0)
337337 else {
338338 let aW = fraction(at, h, i)
339339 $Tuple2(aW, (at - aW))
340340 }
341341 let au = aV._1
342342 let aX = aV._2
343343 [StringEntry((aF + t), X), IntegerEntry((aF + u), aX), IntegerEntry((aF + v), lastBlock.timestamp), ScriptTransfer(g, au, d)]
344344 }
345345 }
346346
347347
348348
349349 @Callable(Q)
350350 func initGames (aY,aZ) = {
351351 func ba (bb,bc) = {
352352 let bd = bb
353353 let be = bd._1
354354 let bf = bd._2
355355 let bg = bd._3
356356 let bh = (bf + 1)
357357 if ((lastBlock.timestamp > bc))
358358 then throw("startGameTime must be in the future")
359359 else if (!(containsElement(c, aZ[bg])))
360360 then throw(("type must contain one of values: " + makeString(c, ",")))
361361 else {
362362 let bi = [IntegerEntry((toString(bh) + m), bc), StringEntry((toString(bh) + n), aZ[bg])]
363363 $Tuple3((be ++ bi), bh, (bg + 1))
364364 }
365365 }
366366
367367 let bf = valueOrElse(getInteger(this, o), 0)
368368 let bj = {
369369 let bk = aY
370370 let bl = size(bk)
371371 let bm = $Tuple3(nil, bf, 0)
372372 func bn (bo,bp) = if ((bp >= bl))
373373 then bo
374374 else ba(bo, bk[bp])
375375
376376 func bq (bo,bp) = if ((bp >= bl))
377377 then bo
378378 else throw("List size exceeds 50")
379379
380380 bq(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bn(bm, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50)
381381 }
382382 let br = bj._1
383383 let bs = bj._2
384384 (br :+ IntegerEntry(o, bs))
385385 }
386386
387387
388388
389389 @Callable(Q)
390390 func shutdown () = if (!(M))
391391 then throw(("DApp is already suspended. Cause: " + valueOrElse(getString(this, l), "the cause wasn't specified")))
392392 else if (!(containsElement([J, K, L], Q.callerPublicKey)))
393393 then throw("Only admin can call this function")
394394 else R("Paused by admin")
395395
396396
397397
398398 @Callable(Q)
399399 func activate () = if (M)
400400 then throw("DApp is already active")
401401 else if (!(containsElement([J, K, L], Q.callerPublicKey)))
402402 then throw("Only admin can call this function")
403403 else [BooleanEntry(j, true), DeleteEntry(l)]
404404
405405

github/deemru/w8io/026f985 
43.77 ms