tx · 5SszvmW9JPJ6wRwx158JBG2RzUDSMdvVR8zaAZ8R5Kdi 3MwHAghvVSNQUvsYHsHSR4tAEYiVarQRrtG: -0.01400000 Waves 2019.10.28 15:41 [739979] smart account 3MwHAghvVSNQUvsYHsHSR4tAEYiVarQRrtG > SELF 0.00000000 Waves
{ "type": 13, "id": "5SszvmW9JPJ6wRwx158JBG2RzUDSMdvVR8zaAZ8R5Kdi", "fee": 1400000, "feeAssetId": null, "timestamp": 1572266568598, "version": 1, "sender": "3MwHAghvVSNQUvsYHsHSR4tAEYiVarQRrtG", "senderPublicKey": "HSPAMMmqM219QKYupVfBAUubjhXRzmEkPKqGvZWJykXU", "proofs": [ "511p6YBADeVtitYHauVZaXfH33GsszCNU8DCSfaLELFEquuV4HfgtvPUzRcdfJLQsRebiL4W3xFHv3sye9At2ibT" ], "script": "base64:AAIDAAAAAAAAAEEIARIMCgoICAgBAQEBAQEBEgoKCAgBAQEBAQEBEgASABIDCgEIEgASAwoBCBIAEgMKAQQSABIAEgMKAQQSAwoBBAAAAD0AAAAADGRlcG9zaXRUb2tlbgUAAAAEdW5pdAAAAAANb3JhY2xlRGF0YUtleQIAAAALd2F2ZXNfYnRjXzgAAAAABHRlbjgJAABoAAAAAgkAAGgAAAACAAAAAAAAAABkAAAAAAAAAAPoAAAAAAAAAAPoAAAAAApsZW5kZXJzS2V5AgAAAAdsZW5kZXJzAAAAABFlbmFibGVkTGVuZGVyc0tleQIAAAAOZW5hYmxlZExlbmRlcnMAAAAADmdyYWNlUGVyaW9kS2V5AgAAAAtncmFjZVBlcmlvZAAAAAARaW50ZXJlc3RQZXJpb2RLZXkCAAAADmludGVyZXN0UGVyaW9kAAAAABFidXJuZG93blBlcmlvZEtleQIAAAAOYnVybmRvd25QZXJpb2QAAAAACW9yYWNsZUtleQIAAAAGb3JhY2xlAAAAABVkaXNjb3VudFBlcmNlbnRpbGVLZXkCAAAAEmRpc2NvdW50UGVyY2VudGlsZQAAAAAKbWF4UmF0ZUtleQIAAAAHbWF4UmF0ZQAAAAANYXNzZXRUb2tlbktleQIAAAAKYXNzZXRUb2tlbgAAAAAIYWRtaW5LZXkCAAAABW93bmVyAAAAABdzZXJ2aWNlRmVlUGVyY2VudGlsZUtleQIAAAALc2VydmljZV9mZWUAAAAAC2xlbmRTaXplS2V5AgAAAAlsZW5kX3NpemUAAAAAE2VuYWJsZURlcG9zaXRCdGNLZXkCAAAAEmVuYWJsZV9kZXBvc2l0X2J0YwAAAAARZW5hYmxlTmV3TG9hbnNLZXkCAAAAEGVuYWJsZV9uZXdfbG9hbnMBAAAACnN0YXJ0T2ZLZXkAAAABAAAABnJlbnRlcgkAASwAAAACAgAAAAlzdGFydF9vZl8FAAAABnJlbnRlcgEAAAAPZW5kT2ZHcmFjZU9mS2V5AAAAAQAAAAZyZW50ZXIJAAEsAAAAAgIAAAAQZW5kX29mX2dyYWNlX29mXwUAAAAGcmVudGVyAQAAABJlbmRPZkludGVyZXN0T2ZLZXkAAAABAAAABnJlbnRlcgkAASwAAAACAgAAABNlbmRfb2ZfaW50ZXJlc3Rfb2ZfBQAAAAZyZW50ZXIBAAAAEmVuZE9mQnVybmRvd25PZktleQAAAAEAAAAGcmVudGVyCQABLAAAAAICAAAAE2VuZF9vZl9idXJuZG93bl9vZl8FAAAABnJlbnRlcgEAAAAJcmF0ZU9mS2V5AAAAAQAAAAZyZW50ZXIJAAEsAAAAAgIAAAAIcmF0ZV9vZl8FAAAABnJlbnRlcgEAAAAMZGVwb3NpdE9mS2V5AAAAAQAAAAZyZW50ZXIJAAEsAAAAAgIAAAALZGVwb3NpdF9vZl8FAAAABnJlbnRlcgEAAAAJbGVuZE9mS2V5AAAAAQAAAAZyZW50ZXIJAAEsAAAAAgIAAAAIbGVuZF9vZl8FAAAABnJlbnRlcgEAAAAMbGVuZGVyc09mS2V5AAAAAQAAAAZyZW50ZXIJAAEsAAAAAgIAAAALbGVuZGVyc19vZl8FAAAABnJlbnRlcgEAAAAUY2lyY3VsYXRpbmdBc3NldHNLZXkAAAABAAAABmxlbmRlcgkAASwAAAACAgAAABZjdXJjdWxhdGluZ19hc3NldHNfb2ZfBQAAAAZsZW5kZXIBAAAADm9wZW5MZW5kc09mS2V5AAAAAQAAAAZsZW5kZXIJAAEsAAAAAgIAAAAOb3Blbl9sZW5kc19vZl8FAAAABmxlbmRlcgAAAAAIbGVuZFNpemUJAABoAAAAAgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAC2xlbmRTaXplS2V5AgAAAAtubyBsZW5kU2l6ZQUAAAAEdGVuOAAAAAAUbmV3RGVwb3NpdEJ0Y0VuYWJsZWQEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwUAAAATZW5hYmxlRGVwb3NpdEJ0Y0tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAHQm9vbGVhbgQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgYAAAAAD25ld0xvYW5zRW5hYmxlZAQAAAAHJG1hdGNoMAkABBsAAAACBQAAAAR0aGlzBQAAABFlbmFibGVOZXdMb2Fuc0tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAHQm9vbGVhbgQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgYAAAAADWFsbExlbmRlcnNTdHIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAAKbGVuZGVyc0tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAF4BQAAAAckbWF0Y2gwBQAAAAF4AgAAAAAAAAAAEWVuYWJsZWRMZW5kZXJzU3RyBAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAABHRoaXMFAAAAEWVuYWJsZWRMZW5kZXJzS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAXgFAAAAByRtYXRjaDAFAAAAAXgCAAAAAAAAAAAIb3duZXJTdHIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAAhhZG1pbktleQIAAAAITm8gb3duZXIAAAAABW93bmVyCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAQAAABFhZGRyZXNzRnJvbVN0cmluZwAAAAEFAAAACG93bmVyU3RyAgAAAAhObyBvd25lcgAAAAAKYXNzZXRUb2tlbgkAAlkAAAABCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAEdGhpcwUAAAANYXNzZXRUb2tlbktleQIAAAAKTm8gYXNzZXRJZAAAAAALZ3JhY2VQZXJpb2QJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAAA5ncmFjZVBlcmlvZEtleQIAAAAPTm8gZ3JhY2UgcGVyaW9kAAAAAA5pbnRlcmVzdFBlcmlvZAkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAEWludGVyZXN0UGVyaW9kS2V5AgAAABJObyBpbnRlcmVzdCBwZXJpb2QAAAAADmJ1cm5kb3duUGVyaW9kCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAARYnVybmRvd25QZXJpb2RLZXkCAAAAEk5vIGJ1cm5kb3duIHBlcmlvZAAAAAAHbWF4UmF0ZQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAACm1heFJhdGVLZXkCAAAAE05vIG9yYWNsZSBtYXggdmFsdWUAAAAABm9yYWNsZQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAABHRoaXMFAAAACW9yYWNsZUtleQIAAAAJTm8gb3JhY2xlAAAAAAtvcmFjbGVWYWx1ZQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQUAAAAGb3JhY2xlAgAAABJiYWQgb3JhY2xlIGFkZHJlc3MFAAAADW9yYWNsZURhdGFLZXkCAAAAD05vIG9yYWNsZSB2YWx1ZQAAAAASZGlzY291bnRQZXJjZW50aWxlCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAAVZGlzY291bnRQZXJjZW50aWxlS2V5AgAAABZObyBkaXNjb3VudCBwZXJjZW50aWxlAAAAABRzZXJ2aWNlRmVlUGVyY2VudGlsZQkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAF3NlcnZpY2VGZWVQZXJjZW50aWxlS2V5AgAAABlObyBzZXJ2aWNlIGZlZSBwZXJjZW50aWxlAAAAAARyYXRlAwkAAGcAAAACBQAAAAdtYXhSYXRlBQAAAAtvcmFjbGVWYWx1ZQUAAAALb3JhY2xlVmFsdWUJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAfU3VzcGljaW91cyByYXRlIHZhbHVlOiBhY3R1YWw6IAkAAaQAAAABBQAAAAtvcmFjbGVWYWx1ZQIAAAAHLCBtYXg6IAkAAaQAAAABBQAAAAdtYXhSYXRlAAAAABFtaW5pbWFsTGVuZEFtb3VudAkAAGQAAAACCQAAaQAAAAIJAABoAAAAAgAAAAAAAAAAZAUAAAAEdGVuOAkAAGgAAAACBQAAABJkaXNjb3VudFBlcmNlbnRpbGUFAAAABHJhdGUDCQAAZgAAAAIJAABqAAAAAgkAAGgAAAACAAAAAAAAAABkBQAAAAR0ZW44CQAAaAAAAAIFAAAAEmRpc2NvdW50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AQAAAAhmb2xkRnVuYwAAAAIFAAAADiRhY2MyMDUzMTM1Mzk1CQABkQAAAAIFAAAADSRsaXN0NTMxMzUzOTUAAAAAAAAAABQJAAACAAAAAQIAAAATTGlzdCBzaXplIGV4Y2VlZCAyMAEAAAAVdW5jbGFpbWVkRGlzdHJpYnV0aW9uAAAAAwAAAAV3YXZlcwAAAANidGMAAAAHbGVuZGVycwQAAAAQd2F2ZXNTZXJ2aWNlUGFydAkAAGsAAAADBQAAAAV3YXZlcwUAAAAUc2VydmljZUZlZVBlcmNlbnRpbGUAAAAAAAAAJxAEAAAAD3dhdmVzRGlzdHJpYnV0ZQkAAGUAAAACBQAAAAV3YXZlcwUAAAAQd2F2ZXNTZXJ2aWNlUGFydAQAAAAYbmV3V2F2ZXNTZXJ2aWNlVW5jbGFpbWVkCQAAZAAAAAIJAQAAABN1bmNsYWltZWREZXBvc2l0Rm9yAAAAAQUAAAAIb3duZXJTdHIFAAAAEHdhdmVzU2VydmljZVBhcnQEAAAACmxlbmRlcnNBbXQJAAGQAAAAAQUAAAAHbGVuZGVycwoBAAAACGZvbGRGdW5jAAAAAgAAAAFsAAAABmxlbmRlcgQAAAAMbmV3VW5jbGFpbWVkCQAAZAAAAAIJAQAAABN1bmNsYWltZWREZXBvc2l0Rm9yAAAAAQUAAAAGbGVuZGVyCQAAaQAAAAIFAAAAD3dhdmVzRGlzdHJpYnV0ZQUAAAAKbGVuZGVyc0FtdAQAAAAPbmV3RGVwb3NpdFZhbHVlCQAAZQAAAAIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAQAAABRjaXJjdWxhdGluZ0Fzc2V0c0tleQAAAAEFAAAABmxlbmRlcgkAAGkAAAACBQAAAANidGMFAAAACmxlbmRlcnNBbXQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABZ1bmNsYWltZWREZXBvc2l0Rm9yS2V5AAAAAQUAAAAGbGVuZGVyBQAAAAxuZXdVbmNsYWltZWQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABRjaXJjdWxhdGluZ0Fzc2V0c0tleQAAAAEFAAAABmxlbmRlcgUAAAAPbmV3RGVwb3NpdFZhbHVlCQAETAAAAAIJAQAAABhkZWNyZW1lbnRPcGVuTGVuZHNBbW91bnQAAAABBQAAAAZsZW5kZXIFAAAAAWwEAAAADSRsaXN0NjE1NTYyNTUFAAAAB2xlbmRlcnMEAAAADSRzaXplNjE1NTYyNTUJAAGQAAAAAQUAAAANJGxpc3Q2MTU1NjI1NQQAAAANJGFjYzA2MTU1NjI1NQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFnVuY2xhaW1lZERlcG9zaXRGb3JLZXkAAAABBQAAAAhvd25lclN0cgUAAAAYbmV3V2F2ZXNTZXJ2aWNlVW5jbGFpbWVkBQAAAANuaWwDCQAAAAAAAAIFAAAADSRzaXplNjE1NTYyNTUAAAAAAAAAAAAFAAAADSRhY2MwNjE1NTYyNTUEAAAADSRhY2MxNjE1NTYyNTUJAQAAAAhmb2xkRnVuYwAAAAIFAAAADSRhY2MwNjE1NTYyNTUJAAGRAAAAAgUAAAANJGxpc3Q2MTU1NjI1NQAAAAAAAAAAAAMJAAAAAAAAAgUAAAANJHNpemU2MTU1NjI1NQAAAAAAAAAAAQUAAAANJGFjYzE2MTU1NjI1NQQAAAANJGFjYzI2MTU1NjI1NQkBAAAACGZvbGRGdW5jAAAAAgUAAAANJGFjYzE2MTU1NjI1NQkAAZEAAAACBQAAAA0kbGlzdDYxNTU2MjU1AAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTYxNTU2MjU1AAAAAAAAAAACBQAAAA0kYWNjMjYxNTU2MjU1BAAAAA0kYWNjMzYxNTU2MjU1CQEAAAAIZm9sZEZ1bmMAAAACBQAAAA0kYWNjMjYxNTU2MjU1CQABkQAAAAIFAAAADSRsaXN0NjE1NTYyNTUAAAAAAAAAAAIDCQAAAAAAAAIFAAAADSRzaXplNjE1NTYyNTUAAAAAAAAAAAMFAAAADSRhY2MzNjE1NTYyNTUEAAAADSRhY2M0NjE1NTYyNTUJAQAAAAhmb2xkRnVuYwAAAAIFAAAADSRhY2MzNjE1NTYyNTUJAAGRAAAAAgUAAAANJGxpc3Q2MTU1NjI1NQAAAAAAAAAAAwMJAAAAAAAAAgUAAAANJHNpemU2MTU1NjI1NQAAAAAAAAAABAUAAAANJGFjYzQ2MTU1NjI1NQQAAAANJGFjYzU2MTU1NjI1NQkBAAAACGZvbGRGdW5jAAAA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dFRva2VuBAAAAApsb2FuQW1vdW50CQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQEAAAAJbGVuZE9mS2V5AAAAAQUAAAAJcmVudGVyU3RyBAAAAA5kZXBvc2l0ZWRWYWx1ZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkBAAAADGRlcG9zaXRPZktleQAAAAEFAAAACXJlbnRlclN0cgMJAQAAAAEhAAAAAQUAAAALaGFzT3BlbkxvYW4JAAACAAAAAQIAAAAXTm8gb3BlbiBsb2FuIGZvciBjYWxsZXIDCQEAAAABIQAAAAEFAAAADmlzVG9rZW5Db3JyZWN0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAF1VzZXIgbXVzdCByZXR1cm4gV0JUQzogCQACWAAAAAEFAAAACmFzc2V0VG9rZW4CAAAAECBidXQgcmV0dXJuaW5nOiAJAAJYAAAAAQUAAAANcmV0dXJuQXNzZXRJZAQAAAAKZW5kT2ZHcmFjZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkBAAAAD2VuZE9mR3JhY2VPZktleQAAAAEFAAAACXJlbnRlclN0cgQAAAANZW5kT2ZCdXJuZG93bgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkBAAAAEmVuZE9mQnVybmRvd25PZktleQAAAAEFAAAACXJlbnRlclN0cgQAAAANZW5kT2ZJbnRlcmVzdAkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkBAAAAEmVuZE9mSW50ZXJlc3RPZktleQAAAAEFAAAACXJlbnRlclN0cgQAAAATY2FuUmV0dXJuRnVsbEFtb3VudAkAAGcAAAACBQAAAAplbmRPZkdyYWNlBQAAAAZoZWlnaHQEAAAAFHJldHVybnNUaGVTYW1lQW1vdW50CQAAZwAAAAIFAAAACmVuZE9mR3JhY2UFAAAABmhlaWdodAMJAABnAAAAAgUAAAAGaGVpZ2h0BQAAAA1lbmRPZkludGVyZXN0CQAAAgAAAAECAAAAFXlvdXIgbG9hbiBoYXMgZXhwaXJlZAQAAAANbGVuZGVyc1Byb2ZpdAMJAABmAAAAAgUAAAAGaGVpZ2h0BQAAAAplbmRPZkdyYWNlCQAAawAAAAMFAAAACmxvYW5BbW91bnQJAABlAAAAAgUAAAAGaGVpZ2h0BQAAAAplbmRPZkdyYWNlCQAAZQAAAAIFAAAADWVuZE9mQnVybmRvd24FAAAACmVuZE9mR3JhY2UAAAAAAAAAAAAEAAAADnJlcXVpcmVkQW1vdW50AwUAAAAUcmV0dXJuc1RoZVNhbWVBbW91bnQFAAAACmxvYW5BbW91bnQJAABkAAAAAgUAAAAKbG9hbkFtb3VudAUAAAANbGVuZGVyc1Byb2ZpdAQAAAAVaXNSZXR1cm5BbW91bnRDb3JyZWN0CQAAZwAAAAIFAAAACXJldHVybkFtdAUAAAAOcmVxdWlyZWRBbW91bnQEAAAAE2lzUmV0dXJuQW1vdW50RXhhY3QJAAAAAAAAAgUAAAAJcmV0dXJuQW10BQAAAA5yZXF1aXJlZEFtb3VudAMJAQAAAAEhAAAAAQUAAAAVaXNSZXR1cm5BbW91bnRDb3JyZWN0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAEVVzZXIgbXVzdCByZXR1cm4gCQABpAAAAAEFAAAACmxvYW5BbW91bnQCAAAAGSBzYXRvc2hpcywgYnV0IHJldHVybmluZyAJAAGkAAAAAQUAAAAJcmV0dXJuQW10BAAAAAtkZXBvc2l0QmFjawkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAGcmVudGVyBQAAAA5kZXBvc2l0ZWRWYWx1ZQUAAAAMZGVwb3NpdFRva2VuBAAAABJleGNlc3NSZXR1cm5BbW91bnQJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAABnJlbnRlcgkAAGUAAAACBQAAAAlyZXR1cm5BbXQFAAAADnJlcXVpcmVkQW1vdW50BQAAAAphc3NldFRva2VuBAAAAAl0cmFuc2ZlcnMDBQAAABNpc1JldHVybkFtb3VudEV4YWN0CQAETAAAAAIFAAAAC2RlcG9zaXRCYWNrBQAAAANuaWwJAARMAAAAAgUAAAALZGVwb3NpdEJhY2sJAARMAAAAAgUAAAASZXhjZXNzUmV0dXJuQW1vdW50BQAAAANuaWwEAAAAB2xlbmRlcnMJAAS1AAAAAgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEHQAAAAIFAAAABHRoaXMJAQAAAAxsZW5kZXJzT2ZLZXkAAAABBQAAAAlyZW50ZXJTdHICAAAAG05vIGxlbmRlcnMgZm9yIGFuIG9wZW4gbG9hbgIAAAABfAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAdjbG9zaW5nAAAABQUAAAAJcmVudGVyU3RyAAAAAAAAAAAABQAAAA1sZW5kZXJzUHJvZml0BgUAAAAHbGVuZGVycwkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAAJdHJhbnNmZXJzAQAAAANhZGQAAAACAAAAB2xlbmRlcnMAAAAGbGVuZGVyAwkAAAAAAAACBQAAAAdsZW5kZXJzAgAAAAAFAAAABmxlbmRlcgkAASwAAAACCQABLAAAAAIFAAAAB2xlbmRlcnMCAAAAAXwFAAAABmxlbmRlcgEAAAAGcmVtb3ZlAAAAAgAAAAdsZW5kZXJzAAAABmxlbmRlcgQAAAADYXJyCQAEtQAAAAIFAAAAB2xlbmRlcnMCAAAAAXwKAQAAAAhmb2xkRnVuYwAAAAIAAAADYWNjAAAABGl0ZW0DCQAAAAAAAAIFAAAABGl0ZW0FAAAABmxlbmRlcgUAAAADYWNjCQEAAAADYWRkAAAAAgUAAAADYWNjBQAAAARpdGVtBAAAAA8kbGlzdDEwMDI2MTAwNTMFAAAAA2FycgQAAAAPJHNpemUxMDAyNjEwMDUzCQABkAAAAAEFAAAADyRsaXN0MTAwMjYxMDA1MwQAAAAPJGFjYzAxMDAyNjEwMDUzAgAAAAADCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAAAAUAAAAPJGFjYzAxMDAyNjEwMDUzBAAAAA8kYWNjMTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2MwMTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAADCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAAAQUAAAAPJGFjYzExMDAyNjEwMDUzBAAAAA8kYWNjMjEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2MxMTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAEDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAAAgUAAAAPJGFjYzIxMDAyNjEwMDUzBAAAAA8kYWNjMzEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2MyMTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAIDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAAAwUAAAAPJGFjYzMxMDAyNjEwMDUzBAAAAA8kYWNjNDEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2MzMTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAMDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAABAUAAAAPJGFjYzQxMDAyNjEwMDUzBAAAAA8kYWNjNTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2M0MTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAQDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAABQUAAAAPJGFjYzUxMDAyNjEwMDUzBAAAAA8kYWNjNjEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2M1MTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAUDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAABgUAAAAPJGFjYzYxMDAyNjEwMDUzBAAAAA8kYWNjNzEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2M2MTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAYDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAABwUAAAAPJGFjYzcxMDAyNjEwMDUzBAAAAA8kYWNjODEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2M3MTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAcDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAACAUAAAAPJGFjYzgxMDAyNjEwMDUzBAAAAA8kYWNjOTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAADyRhY2M4MTAwMjYxMDA1MwkAAZEAAAACBQAAAA8kbGlzdDEwMDI2MTAwNTMAAAAAAAAAAAgDCQAAAAAAAAIFAAAADyRzaXplMTAwMjYxMDA1MwAAAAAAAAAACQUAAAAPJGFjYzkxMDAyNjEwMDUzBAAAABAkYWNjMTAxMDAyNjEwMDUzCQEAAAAIZm9sZEZ1bmMAAAACBQAAAA8kYWNjOTEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAJAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAAoFAAAAECRhY2MxMDEwMDI2MTAwNTMEAAAAECRhY2MxMTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxMDEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAKAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAAsFAAAAECRhY2MxMTEwMDI2MTAwNTMEAAAAECRhY2MxMjEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxMTEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAALAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAAwFAAAAECRhY2MxMjEwMDI2MTAwNTMEAAAAECRhY2MxMzEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxMjEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAMAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAA0FAAAAECRhY2MxMzEwMDI2MTAwNTMEAAAAECRhY2MxNDEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxMzEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAANAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAA4FAAAAECRhY2MxNDEwMDI2MTAwNTMEAAAAECRhY2MxNTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxNDEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAOAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAAA8FAAAAECRhY2MxNTEwMDI2MTAwNTMEAAAAECRhY2MxNjEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxNTEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAPAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAABAFAAAAECRhY2MxNjEwMDI2MTAwNTMEAAAAECRhY2MxNzEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxNjEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAQAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAABEFAAAAECRhY2MxNzEwMDI2MTAwNTMEAAAAECRhY2MxODEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxNzEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAARAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAABIFAAAAECRhY2MxODEwMDI2MTAwNTMEAAAAECRhY2MxOTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxODEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAASAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAABMFAAAAECRhY2MxOTEwMDI2MTAwNTMEAAAAECRhY2MyMDEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MxOTEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAATAwkAAAAAAAACBQAAAA8kc2l6ZTEwMDI2MTAwNTMAAAAAAAAAABQFAAAAECRhY2MyMDEwMDI2MTAwNTMEAAAAECRhY2MyMTEwMDI2MTAwNTMJAQAAAAhmb2xkRnVuYwAAAAIFAAAAECRhY2MyMDEwMDI2MTAwNTMJAAGRAAAAAgUAAAAPJGxpc3QxMDAyNjEwMDUzAAAAAAAAAAAUCQAAAgAAAAECAAAAE0xpc3Qgc2l6ZSBleGNlZWQgMjABAAAADGRvVGFrZVByb2ZpdAAAAAEAAAAGbGVuZGVyBAAAAANzdHIJAAJYAAAAAQgFAAAABmxlbmRlcgAAAAVieXRlcwkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAAxwcm9maXRGb3JLZXkAAAABBQAAAANzdHIAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABZ1bmNsYWltZWREZXBvc2l0Rm9yS2V5AAAAAQUAAAADc3RyAAAAAAAAAAAABQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAGbGVuZGVyCQEAAAAJcHJvZml0Rm9yAAAAAQUAAAADc3RyBQAAAAphc3NldFRva2VuCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAABmxlbmRlcgkBAAAAE3VuY2xhaW1lZERlcG9zaXRGb3IAAAABBQAAAANzdHIFAAAADGRlcG9zaXRUb2tlbgUAAAADbmlsAAAADQAAAAFpAQAAAARpbml0AAAACgAAAAVvd25lcgAAAAV0b2tlbgAAAAZvcmFjbGUAAAAHbWF4UmF0ZQAAAAhkaXNjb3VudAAAAAVncmFjZQAAAAhpbnRlcmVzdAAAAAhidXJuZG93bgAAAApzZXJ2aWNlRmVlAAAACGxlbmRTaXplAwkAAGYAAAACBQAAAAhpbnRlcmVzdAUAAAAIYnVybmRvd24JAAACAAAAAQIAAAAqaW50ZXJlc3QgbXVzdCBiZSBsZXNzIG9yIGVxdWFsIHRvIGJ1cm5kb3duAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAAGW9ubHkgZGFwcCBpdHNlbGYgY2FuIGluaXQJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACGFkbWluS2V5BQAAAAVvd25lcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAANYXNzZXRUb2tlbktleQUAAAAFdG9rZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACW9yYWNsZUtleQUAAAAGb3JhY2xlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAptYXhSYXRlS2V5BQAAAAdtYXhSYXRlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABVkaXNjb3VudFBlcmNlbnRpbGVLZXkFAAAACGRpc2NvdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA5ncmFjZVBlcmlvZEtleQUAAAAFZ3JhY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEWludGVyZXN0UGVyaW9kS2V5BQAAAAhpbnRlcmVzdAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAARYnVybmRvd25QZXJpb2RLZXkFAAAACGJ1cm5kb3duCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABdzZXJ2aWNlRmVlUGVyY2VudGlsZUtleQUAAAAKc2VydmljZUZlZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAALbGVuZFNpemVLZXkFAAAACGxlbmRTaXplBQAAAANuaWwAAAABaQEAAAAMdXBkYXRlUGFyYW1zAAAACAAAAAZvcmFjbGUAAAAHbWF4UmF0ZQAAAAhkaXNjb3VudAAAAAVncmFjZQAAAAhpbnRlcmVzdAAAAAhidXJuZG93bgAAAApzZXJ2aWNlRmVlAAAACGxlbmRTaXplAwkAAGYAAAACBQAAAAhpbnRlcmVzdAUAAAAIYnVybmRvd24JAAACAAAAAQIAAAAqaW50ZXJlc3QgbXVzdCBiZSBsZXNzIG9yIGVxdWFsIHRvIGJ1cm5kb3duAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAVvd25lcgkAAAIAAAABAgAAABxvbmx5IG93bmVyIGNhbiB1cGRhdGUgcGFyYW1zCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAlvcmFjbGVLZXkFAAAABm9yYWNsZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAKbWF4UmF0ZUtleQUAAAAHbWF4UmF0ZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAVZGlzY291bnRQZXJjZW50aWxlS2V5BQAAAAhkaXNjb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAOZ3JhY2VQZXJpb2RLZXkFAAAABWdyYWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABFpbnRlcmVzdFBlcmlvZEtleQUAAAAIaW50ZXJlc3QJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEWJ1cm5kb3duUGVyaW9kS2V5BQAAAAhidXJuZG93bgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAXc2VydmljZUZlZVBlcmNlbnRpbGVLZXkFAAAACnNlcnZpY2VGZWUJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAC2xlbmRTaXplS2V5BQAAAAhsZW5kU2l6ZQUAAAADbmlsAAAAAWkBAAAABmJvcnJvdwAAAAAEAAAABnJlbnRlcgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzAwkBAAAAASEAAAABBQAAAA9uZXdMb2Fuc0VuYWJsZWQJAAACAAAAAQIAAAAeTmV3IGxvYW5zIHRlbXBvcmFyaWx5IGRpc2FibGVkAwkBAAAACmlzTGVuZE9wZW4AAAABBQAAAAZyZW50ZXIJAAACAAAAAQkAASwAAAACBQAAAAZyZW50ZXICAAAAGSBhbHJlYWR5IGhhcyBhbiBvcGVuIGxvYW4EAAAAByRtYXRjaDAIBQAAAAFpAAAAB3BheW1lbnQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0F0dGFjaGVkUGF5bWVudAQAAAABYQUAAAAHJG1hdGNoMAMJAAAAAAAAAggFAAAAAWEAAAAHYXNzZXRJZAUAAAAMZGVwb3NpdFRva2VuBAAAAA1jdXJyZW50SGVpZ2h0BQAAAAZoZWlnaHQEAAAACmVuZE9mR3JhY2UJAABkAAAAAgUAAAAGaGVpZ2h0BQAAAAtncmFjZVBlcmlvZAQAAAANZW5kT2ZJbnRlcmVzdAkAAGQAAAACBQAAAAplbmRPZkdyYWNlBQAAAA5pbnRlcmVzdFBlcmlvZAQAAAANZW5kT2ZCdXJuZG93bgkAAGQAAAACBQAAAAplbmRPZkdyYWNlBQAAAA5idXJuZG93blBlcmlvZAQAAAANZGVwb3NpdEFtb3VudAgFAAAAAWEAAAAGYW1vdW50BAAAAA9hc3NldFRva2Vuc0xlbnQJAABrAAAAAwUAAAANZGVwb3NpdEFtb3VudAkAAGgAAAACBQAAAARyYXRlBQAAABJkaXNjb3VudFBlcmNlbnRpbGUJAABoAAAAAgUAAAAEdGVuOAAAAAAAAAAAZAMJAABmAAAAAgUAAAAPYXNzZXRUb2tlbnNMZW50AAAAAAAAAAAABAAAAAVkYXRhcwkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAACnN0YXJ0T2ZLZXkAAAABBQAAAAZyZW50ZXIFAAAADWN1cnJlbnRIZWlnaHQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAA9lbmRPZkdyYWNlT2ZLZXkAAAABBQAAAAZyZW50ZXIFAAAACmVuZE9mR3JhY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABJlbmRPZkludGVyZXN0T2ZLZXkAAAABBQAAAAZyZW50ZXIFAAAADWVuZE9mSW50ZXJlc3QJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABJlbmRPZkJ1cm5kb3duT2ZLZXkAAAABBQAAAAZyZW50ZXIFAAAADWVuZE9mQnVybmRvd24JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJ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", "chainId": 84, "height": 739979, "spentComplexity": 0 } View: original | compacted Prev: j97xUAmGW9RbRxMxfnuZFV2eBCY9tWu4BjTcF3x6gbM Next: GChjJmfSMGmvdp8EhfeR88hTSBy9YKY5VhiUCucc82ve Diff:
Old | New | Differences | |
---|---|---|---|
311 | 311 | ||
312 | 312 | ||
313 | 313 | func aK (aL,aM) = { | |
314 | - | let aN = fraction(aL, V, | |
314 | + | let aN = fraction(aL, V, 100) | |
315 | 315 | let aO = (aL - aN) | |
316 | 316 | let aP = (ac(L) + aN) | |
317 | 317 | let aQ = size(aM) | |
861 | 861 | else if (dp) | |
862 | 862 | then throw((("lender " + B) + " already participates in the dApp")) | |
863 | 863 | else { | |
864 | - | let dq = (("exactly" + toString( | |
864 | + | let dq = (("exactly" + toString(value(getInteger(this, o)))) + " BTC must be attached") | |
865 | 865 | let dk = valueOrErrorMessage(ae.payment, dq) | |
866 | 866 | if (if ((dk.assetId != N)) | |
867 | 867 | then true |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = unit | |
5 | 5 | ||
6 | 6 | let b = "waves_btc_8" | |
7 | 7 | ||
8 | 8 | let c = ((100 * 1000) * 1000) | |
9 | 9 | ||
10 | 10 | let d = "lenders" | |
11 | 11 | ||
12 | 12 | let e = "enabledLenders" | |
13 | 13 | ||
14 | 14 | let f = "gracePeriod" | |
15 | 15 | ||
16 | 16 | let g = "interestPeriod" | |
17 | 17 | ||
18 | 18 | let h = "burndownPeriod" | |
19 | 19 | ||
20 | 20 | let i = "oracle" | |
21 | 21 | ||
22 | 22 | let j = "discountPercentile" | |
23 | 23 | ||
24 | 24 | let k = "maxRate" | |
25 | 25 | ||
26 | 26 | let l = "assetToken" | |
27 | 27 | ||
28 | 28 | let m = "owner" | |
29 | 29 | ||
30 | 30 | let n = "service_fee" | |
31 | 31 | ||
32 | 32 | let o = "lend_size" | |
33 | 33 | ||
34 | 34 | let p = "enable_deposit_btc" | |
35 | 35 | ||
36 | 36 | let q = "enable_new_loans" | |
37 | 37 | ||
38 | 38 | func r (s) = ("start_of_" + s) | |
39 | 39 | ||
40 | 40 | ||
41 | 41 | func t (s) = ("end_of_grace_of_" + s) | |
42 | 42 | ||
43 | 43 | ||
44 | 44 | func u (s) = ("end_of_interest_of_" + s) | |
45 | 45 | ||
46 | 46 | ||
47 | 47 | func v (s) = ("end_of_burndown_of_" + s) | |
48 | 48 | ||
49 | 49 | ||
50 | 50 | func w (s) = ("rate_of_" + s) | |
51 | 51 | ||
52 | 52 | ||
53 | 53 | func x (s) = ("deposit_of_" + s) | |
54 | 54 | ||
55 | 55 | ||
56 | 56 | func y (s) = ("lend_of_" + s) | |
57 | 57 | ||
58 | 58 | ||
59 | 59 | func z (s) = ("lenders_of_" + s) | |
60 | 60 | ||
61 | 61 | ||
62 | 62 | func A (B) = ("curculating_assets_of_" + B) | |
63 | 63 | ||
64 | 64 | ||
65 | 65 | func C (B) = ("open_lends_of_" + B) | |
66 | 66 | ||
67 | 67 | ||
68 | 68 | let D = (valueOrErrorMessage(getInteger(this, o), "no lendSize") * c) | |
69 | 69 | ||
70 | 70 | let E = { | |
71 | 71 | let F = getBoolean(this, p) | |
72 | 72 | if ($isInstanceOf(F, "Boolean")) | |
73 | 73 | then { | |
74 | 74 | let G = F | |
75 | 75 | G | |
76 | 76 | } | |
77 | 77 | else true | |
78 | 78 | } | |
79 | 79 | ||
80 | 80 | let H = { | |
81 | 81 | let F = getBoolean(this, q) | |
82 | 82 | if ($isInstanceOf(F, "Boolean")) | |
83 | 83 | then { | |
84 | 84 | let G = F | |
85 | 85 | G | |
86 | 86 | } | |
87 | 87 | else true | |
88 | 88 | } | |
89 | 89 | ||
90 | 90 | let I = { | |
91 | 91 | let F = getString(this, d) | |
92 | 92 | if ($isInstanceOf(F, "String")) | |
93 | 93 | then { | |
94 | 94 | let J = F | |
95 | 95 | J | |
96 | 96 | } | |
97 | 97 | else "" | |
98 | 98 | } | |
99 | 99 | ||
100 | 100 | let K = { | |
101 | 101 | let F = getString(this, e) | |
102 | 102 | if ($isInstanceOf(F, "String")) | |
103 | 103 | then { | |
104 | 104 | let J = F | |
105 | 105 | J | |
106 | 106 | } | |
107 | 107 | else "" | |
108 | 108 | } | |
109 | 109 | ||
110 | 110 | let L = valueOrErrorMessage(getString(this, m), "No owner") | |
111 | 111 | ||
112 | 112 | let M = valueOrErrorMessage(addressFromString(L), "No owner") | |
113 | 113 | ||
114 | 114 | let N = fromBase58String(valueOrErrorMessage(getString(this, l), "No assetId")) | |
115 | 115 | ||
116 | 116 | let O = valueOrErrorMessage(getInteger(this, f), "No grace period") | |
117 | 117 | ||
118 | 118 | let P = valueOrErrorMessage(getInteger(this, g), "No interest period") | |
119 | 119 | ||
120 | 120 | let Q = valueOrErrorMessage(getInteger(this, h), "No burndown period") | |
121 | 121 | ||
122 | 122 | let R = valueOrErrorMessage(getInteger(this, k), "No oracle max value") | |
123 | 123 | ||
124 | 124 | let S = valueOrErrorMessage(getString(this, i), "No oracle") | |
125 | 125 | ||
126 | 126 | let T = valueOrErrorMessage(getInteger(valueOrErrorMessage(addressFromString(S), "bad oracle address"), b), "No oracle value") | |
127 | 127 | ||
128 | 128 | let U = valueOrErrorMessage(getInteger(this, j), "No discount percentile") | |
129 | 129 | ||
130 | 130 | let V = valueOrErrorMessage(getInteger(this, n), "No service fee percentile") | |
131 | 131 | ||
132 | 132 | let W = if ((R >= T)) | |
133 | 133 | then T | |
134 | 134 | else throw(((("Suspicious rate value: actual: " + toString(T)) + ", max: ") + toString(R))) | |
135 | 135 | ||
136 | 136 | let X = (((100 * c) / (U * W)) + (if ((((100 * c) % (U * W)) > 0)) | |
137 | 137 | then 1 | |
138 | 138 | else 0)) | |
139 | 139 | ||
140 | 140 | let Y = isDefined(getString(this, l)) | |
141 | 141 | ||
142 | 142 | func Z (s) = { | |
143 | 143 | let F = getInteger(this, r(s)) | |
144 | 144 | if ($isInstanceOf(F, "Int")) | |
145 | 145 | then { | |
146 | 146 | let aa = F | |
147 | 147 | (aa > 0) | |
148 | 148 | } | |
149 | 149 | else false | |
150 | 150 | } | |
151 | 151 | ||
152 | 152 | ||
153 | 153 | func ab (aa) = ("profit_for_" + aa) | |
154 | 154 | ||
155 | 155 | ||
156 | 156 | func ac (ad) = { | |
157 | 157 | let F = getInteger(this, ab(ad)) | |
158 | 158 | if ($isInstanceOf(F, "Int")) | |
159 | 159 | then { | |
160 | 160 | let ae = F | |
161 | 161 | ae | |
162 | 162 | } | |
163 | 163 | else 0 | |
164 | 164 | } | |
165 | 165 | ||
166 | 166 | ||
167 | 167 | func af (aa) = ("unclaimied_for_" + aa) | |
168 | 168 | ||
169 | 169 | ||
170 | 170 | func ag (ad) = { | |
171 | 171 | let F = getInteger(this, af(ad)) | |
172 | 172 | if ($isInstanceOf(F, "Int")) | |
173 | 173 | then { | |
174 | 174 | let ae = F | |
175 | 175 | ae | |
176 | 176 | } | |
177 | 177 | else 0 | |
178 | 178 | } | |
179 | 179 | ||
180 | 180 | ||
181 | 181 | func ah (B) = { | |
182 | 182 | let ai = valueOrErrorMessage(getInteger(this, C(B)), "must have open lends at the moment") | |
183 | 183 | DataEntry(C(B), (ai - 1)) | |
184 | 184 | } | |
185 | 185 | ||
186 | 186 | ||
187 | 187 | func aj () = { | |
188 | 188 | func ak (al,aa) = { | |
189 | 189 | let ai = { | |
190 | 190 | let F = getInteger(this, C(aa)) | |
191 | 191 | if ($isInstanceOf(F, "Int")) | |
192 | 192 | then { | |
193 | 193 | let J = F | |
194 | 194 | J | |
195 | 195 | } | |
196 | 196 | else 0 | |
197 | 197 | } | |
198 | 198 | DataEntry(C(aa), (ai + 1)) :: al | |
199 | 199 | } | |
200 | 200 | ||
201 | 201 | let am = split(K, "|") | |
202 | 202 | let an = size(am) | |
203 | 203 | let ao = nil | |
204 | 204 | if ((an == 0)) | |
205 | 205 | then ao | |
206 | 206 | else { | |
207 | 207 | let ap = ak(ao, am[0]) | |
208 | 208 | if ((an == 1)) | |
209 | 209 | then ap | |
210 | 210 | else { | |
211 | 211 | let aq = ak(ap, am[1]) | |
212 | 212 | if ((an == 2)) | |
213 | 213 | then aq | |
214 | 214 | else { | |
215 | 215 | let ar = ak(aq, am[2]) | |
216 | 216 | if ((an == 3)) | |
217 | 217 | then ar | |
218 | 218 | else { | |
219 | 219 | let as = ak(ar, am[3]) | |
220 | 220 | if ((an == 4)) | |
221 | 221 | then as | |
222 | 222 | else { | |
223 | 223 | let at = ak(as, am[4]) | |
224 | 224 | if ((an == 5)) | |
225 | 225 | then at | |
226 | 226 | else { | |
227 | 227 | let au = ak(at, am[5]) | |
228 | 228 | if ((an == 6)) | |
229 | 229 | then au | |
230 | 230 | else { | |
231 | 231 | let av = ak(au, am[6]) | |
232 | 232 | if ((an == 7)) | |
233 | 233 | then av | |
234 | 234 | else { | |
235 | 235 | let aw = ak(av, am[7]) | |
236 | 236 | if ((an == 8)) | |
237 | 237 | then aw | |
238 | 238 | else { | |
239 | 239 | let ax = ak(aw, am[8]) | |
240 | 240 | if ((an == 9)) | |
241 | 241 | then ax | |
242 | 242 | else { | |
243 | 243 | let ay = ak(ax, am[9]) | |
244 | 244 | if ((an == 10)) | |
245 | 245 | then ay | |
246 | 246 | else { | |
247 | 247 | let az = ak(ay, am[10]) | |
248 | 248 | if ((an == 11)) | |
249 | 249 | then az | |
250 | 250 | else { | |
251 | 251 | let aA = ak(az, am[11]) | |
252 | 252 | if ((an == 12)) | |
253 | 253 | then aA | |
254 | 254 | else { | |
255 | 255 | let aB = ak(aA, am[12]) | |
256 | 256 | if ((an == 13)) | |
257 | 257 | then aB | |
258 | 258 | else { | |
259 | 259 | let aC = ak(aB, am[13]) | |
260 | 260 | if ((an == 14)) | |
261 | 261 | then aC | |
262 | 262 | else { | |
263 | 263 | let aD = ak(aC, am[14]) | |
264 | 264 | if ((an == 15)) | |
265 | 265 | then aD | |
266 | 266 | else { | |
267 | 267 | let aE = ak(aD, am[15]) | |
268 | 268 | if ((an == 16)) | |
269 | 269 | then aE | |
270 | 270 | else { | |
271 | 271 | let aF = ak(aE, am[16]) | |
272 | 272 | if ((an == 17)) | |
273 | 273 | then aF | |
274 | 274 | else { | |
275 | 275 | let aG = ak(aF, am[17]) | |
276 | 276 | if ((an == 18)) | |
277 | 277 | then aG | |
278 | 278 | else { | |
279 | 279 | let aH = ak(aG, am[18]) | |
280 | 280 | if ((an == 19)) | |
281 | 281 | then aH | |
282 | 282 | else { | |
283 | 283 | let aI = ak(aH, am[19]) | |
284 | 284 | if ((an == 20)) | |
285 | 285 | then aI | |
286 | 286 | else { | |
287 | 287 | let aJ = ak(aI, am[20]) | |
288 | 288 | throw("List size exceed 20") | |
289 | 289 | } | |
290 | 290 | } | |
291 | 291 | } | |
292 | 292 | } | |
293 | 293 | } | |
294 | 294 | } | |
295 | 295 | } | |
296 | 296 | } | |
297 | 297 | } | |
298 | 298 | } | |
299 | 299 | } | |
300 | 300 | } | |
301 | 301 | } | |
302 | 302 | } | |
303 | 303 | } | |
304 | 304 | } | |
305 | 305 | } | |
306 | 306 | } | |
307 | 307 | } | |
308 | 308 | } | |
309 | 309 | } | |
310 | 310 | } | |
311 | 311 | ||
312 | 312 | ||
313 | 313 | func aK (aL,aM) = { | |
314 | - | let aN = fraction(aL, V, | |
314 | + | let aN = fraction(aL, V, 100) | |
315 | 315 | let aO = (aL - aN) | |
316 | 316 | let aP = (ac(L) + aN) | |
317 | 317 | let aQ = size(aM) | |
318 | 318 | func ak (aR,B) = { | |
319 | 319 | let aS = (ac(B) + (aO / aQ)) | |
320 | 320 | [DataEntry(ab(B), aS), ah(B)] :: aR | |
321 | 321 | } | |
322 | 322 | ||
323 | 323 | let aT = aM | |
324 | 324 | let aU = size(aT) | |
325 | 325 | let aV = [DataEntry(ab(L), aP)] | |
326 | 326 | if ((aU == 0)) | |
327 | 327 | then aV | |
328 | 328 | else { | |
329 | 329 | let aW = ak(aV, aT[0]) | |
330 | 330 | if ((aU == 1)) | |
331 | 331 | then aW | |
332 | 332 | else { | |
333 | 333 | let aX = ak(aW, aT[1]) | |
334 | 334 | if ((aU == 2)) | |
335 | 335 | then aX | |
336 | 336 | else { | |
337 | 337 | let aY = ak(aX, aT[2]) | |
338 | 338 | if ((aU == 3)) | |
339 | 339 | then aY | |
340 | 340 | else { | |
341 | 341 | let aZ = ak(aY, aT[3]) | |
342 | 342 | if ((aU == 4)) | |
343 | 343 | then aZ | |
344 | 344 | else { | |
345 | 345 | let ba = ak(aZ, aT[4]) | |
346 | 346 | if ((aU == 5)) | |
347 | 347 | then ba | |
348 | 348 | else { | |
349 | 349 | let bb = ak(ba, aT[5]) | |
350 | 350 | if ((aU == 6)) | |
351 | 351 | then bb | |
352 | 352 | else { | |
353 | 353 | let bc = ak(bb, aT[6]) | |
354 | 354 | if ((aU == 7)) | |
355 | 355 | then bc | |
356 | 356 | else { | |
357 | 357 | let bd = ak(bc, aT[7]) | |
358 | 358 | if ((aU == 8)) | |
359 | 359 | then bd | |
360 | 360 | else { | |
361 | 361 | let be = ak(bd, aT[8]) | |
362 | 362 | if ((aU == 9)) | |
363 | 363 | then be | |
364 | 364 | else { | |
365 | 365 | let bf = ak(be, aT[9]) | |
366 | 366 | if ((aU == 10)) | |
367 | 367 | then bf | |
368 | 368 | else { | |
369 | 369 | let bg = ak(bf, aT[10]) | |
370 | 370 | if ((aU == 11)) | |
371 | 371 | then bg | |
372 | 372 | else { | |
373 | 373 | let bh = ak(bg, aT[11]) | |
374 | 374 | if ((aU == 12)) | |
375 | 375 | then bh | |
376 | 376 | else { | |
377 | 377 | let bi = ak(bh, aT[12]) | |
378 | 378 | if ((aU == 13)) | |
379 | 379 | then bi | |
380 | 380 | else { | |
381 | 381 | let bj = ak(bi, aT[13]) | |
382 | 382 | if ((aU == 14)) | |
383 | 383 | then bj | |
384 | 384 | else { | |
385 | 385 | let bk = ak(bj, aT[14]) | |
386 | 386 | if ((aU == 15)) | |
387 | 387 | then bk | |
388 | 388 | else { | |
389 | 389 | let bl = ak(bk, aT[15]) | |
390 | 390 | if ((aU == 16)) | |
391 | 391 | then bl | |
392 | 392 | else { | |
393 | 393 | let bm = ak(bl, aT[16]) | |
394 | 394 | if ((aU == 17)) | |
395 | 395 | then bm | |
396 | 396 | else { | |
397 | 397 | let bn = ak(bm, aT[17]) | |
398 | 398 | if ((aU == 18)) | |
399 | 399 | then bn | |
400 | 400 | else { | |
401 | 401 | let bo = ak(bn, aT[18]) | |
402 | 402 | if ((aU == 19)) | |
403 | 403 | then bo | |
404 | 404 | else { | |
405 | 405 | let bp = ak(bo, aT[19]) | |
406 | 406 | if ((aU == 20)) | |
407 | 407 | then bp | |
408 | 408 | else { | |
409 | 409 | let bq = ak(bp, aT[20]) | |
410 | 410 | throw("List size exceed 20") | |
411 | 411 | } | |
412 | 412 | } | |
413 | 413 | } | |
414 | 414 | } | |
415 | 415 | } | |
416 | 416 | } | |
417 | 417 | } | |
418 | 418 | } | |
419 | 419 | } | |
420 | 420 | } | |
421 | 421 | } | |
422 | 422 | } | |
423 | 423 | } | |
424 | 424 | } | |
425 | 425 | } | |
426 | 426 | } | |
427 | 427 | } | |
428 | 428 | } | |
429 | 429 | } | |
430 | 430 | } | |
431 | 431 | } | |
432 | 432 | } | |
433 | 433 | ||
434 | 434 | ||
435 | 435 | func br (bs,aL,aM) = { | |
436 | 436 | let bt = fraction(bs, V, 10000) | |
437 | 437 | let bu = (bs - bt) | |
438 | 438 | let bv = (ag(L) + bt) | |
439 | 439 | let aQ = size(aM) | |
440 | 440 | func ak (aR,B) = { | |
441 | 441 | let bw = (ag(B) + (bu / aQ)) | |
442 | 442 | let bx = (getIntegerValue(this, A(B)) - (aL / aQ)) | |
443 | 443 | [DataEntry(af(B), bw), DataEntry(A(B), bx), ah(B)] :: aR | |
444 | 444 | } | |
445 | 445 | ||
446 | 446 | let by = aM | |
447 | 447 | let bz = size(by) | |
448 | 448 | let bA = [DataEntry(af(L), bv)] | |
449 | 449 | if ((bz == 0)) | |
450 | 450 | then bA | |
451 | 451 | else { | |
452 | 452 | let bB = ak(bA, by[0]) | |
453 | 453 | if ((bz == 1)) | |
454 | 454 | then bB | |
455 | 455 | else { | |
456 | 456 | let bC = ak(bB, by[1]) | |
457 | 457 | if ((bz == 2)) | |
458 | 458 | then bC | |
459 | 459 | else { | |
460 | 460 | let bD = ak(bC, by[2]) | |
461 | 461 | if ((bz == 3)) | |
462 | 462 | then bD | |
463 | 463 | else { | |
464 | 464 | let bE = ak(bD, by[3]) | |
465 | 465 | if ((bz == 4)) | |
466 | 466 | then bE | |
467 | 467 | else { | |
468 | 468 | let bF = ak(bE, by[4]) | |
469 | 469 | if ((bz == 5)) | |
470 | 470 | then bF | |
471 | 471 | else { | |
472 | 472 | let bG = ak(bF, by[5]) | |
473 | 473 | if ((bz == 6)) | |
474 | 474 | then bG | |
475 | 475 | else { | |
476 | 476 | let bH = ak(bG, by[6]) | |
477 | 477 | if ((bz == 7)) | |
478 | 478 | then bH | |
479 | 479 | else { | |
480 | 480 | let bI = ak(bH, by[7]) | |
481 | 481 | if ((bz == 8)) | |
482 | 482 | then bI | |
483 | 483 | else { | |
484 | 484 | let bJ = ak(bI, by[8]) | |
485 | 485 | if ((bz == 9)) | |
486 | 486 | then bJ | |
487 | 487 | else { | |
488 | 488 | let bK = ak(bJ, by[9]) | |
489 | 489 | if ((bz == 10)) | |
490 | 490 | then bK | |
491 | 491 | else { | |
492 | 492 | let bL = ak(bK, by[10]) | |
493 | 493 | if ((bz == 11)) | |
494 | 494 | then bL | |
495 | 495 | else { | |
496 | 496 | let bM = ak(bL, by[11]) | |
497 | 497 | if ((bz == 12)) | |
498 | 498 | then bM | |
499 | 499 | else { | |
500 | 500 | let bN = ak(bM, by[12]) | |
501 | 501 | if ((bz == 13)) | |
502 | 502 | then bN | |
503 | 503 | else { | |
504 | 504 | let bO = ak(bN, by[13]) | |
505 | 505 | if ((bz == 14)) | |
506 | 506 | then bO | |
507 | 507 | else { | |
508 | 508 | let bP = ak(bO, by[14]) | |
509 | 509 | if ((bz == 15)) | |
510 | 510 | then bP | |
511 | 511 | else { | |
512 | 512 | let bQ = ak(bP, by[15]) | |
513 | 513 | if ((bz == 16)) | |
514 | 514 | then bQ | |
515 | 515 | else { | |
516 | 516 | let bR = ak(bQ, by[16]) | |
517 | 517 | if ((bz == 17)) | |
518 | 518 | then bR | |
519 | 519 | else { | |
520 | 520 | let bS = ak(bR, by[17]) | |
521 | 521 | if ((bz == 18)) | |
522 | 522 | then bS | |
523 | 523 | else { | |
524 | 524 | let bT = ak(bS, by[18]) | |
525 | 525 | if ((bz == 19)) | |
526 | 526 | then bT | |
527 | 527 | else { | |
528 | 528 | let bU = ak(bT, by[19]) | |
529 | 529 | if ((bz == 20)) | |
530 | 530 | then bU | |
531 | 531 | else { | |
532 | 532 | let bV = ak(bU, by[20]) | |
533 | 533 | throw("List size exceed 20") | |
534 | 534 | } | |
535 | 535 | } | |
536 | 536 | } | |
537 | 537 | } | |
538 | 538 | } | |
539 | 539 | } | |
540 | 540 | } | |
541 | 541 | } | |
542 | 542 | } | |
543 | 543 | } | |
544 | 544 | } | |
545 | 545 | } | |
546 | 546 | } | |
547 | 547 | } | |
548 | 548 | } | |
549 | 549 | } | |
550 | 550 | } | |
551 | 551 | } | |
552 | 552 | } | |
553 | 553 | } | |
554 | 554 | } | |
555 | 555 | } | |
556 | 556 | ||
557 | 557 | ||
558 | 558 | func bW (s,bs,aL,bX,aM) = WriteSet([DataEntry(r(s), 0), DataEntry(t(s), 0), DataEntry(u(s), 0), DataEntry(v(s), 0), DataEntry(w(s), 0), DataEntry(x(s), 0), DataEntry(y(s), 0), DataEntry(z(s), ""), if (bX) | |
559 | 559 | then aK(aL, aM) | |
560 | 560 | else br(bs, aL, aM)]) | |
561 | 561 | ||
562 | 562 | ||
563 | 563 | func bY (bZ,bs,aL,aM) = { | |
564 | 564 | let ca = valueOrErrorMessage(getInteger(this, x(bZ)), "No loan size for address") | |
565 | 565 | bW(bZ, bs, aL, false, aM) | |
566 | 566 | } | |
567 | 567 | ||
568 | 568 | ||
569 | 569 | func cb (s,cc,cd) = { | |
570 | 570 | let ce = toString(s) | |
571 | 571 | let cf = Z(ce) | |
572 | 572 | let cg = (cc == N) | |
573 | 573 | let ch = getIntegerValue(this, y(ce)) | |
574 | 574 | let ci = getIntegerValue(this, x(ce)) | |
575 | 575 | if (!(cf)) | |
576 | 576 | then throw("No open loan for caller") | |
577 | 577 | else if (!(cg)) | |
578 | 578 | then throw(((("User must return WBTC: " + toBase58String(N)) + " but returning: ") + toBase58String(cc))) | |
579 | 579 | else { | |
580 | 580 | let cj = getIntegerValue(this, t(ce)) | |
581 | 581 | let ck = getIntegerValue(this, v(ce)) | |
582 | 582 | let cl = getIntegerValue(this, u(ce)) | |
583 | 583 | let cm = (cj >= height) | |
584 | 584 | let cn = (cj >= height) | |
585 | 585 | if ((height >= cl)) | |
586 | 586 | then throw("your loan has expired") | |
587 | 587 | else { | |
588 | 588 | let co = if ((height > cj)) | |
589 | 589 | then fraction(ch, (height - cj), (ck - cj)) | |
590 | 590 | else 0 | |
591 | 591 | let cp = if (cn) | |
592 | 592 | then ch | |
593 | 593 | else (ch + co) | |
594 | 594 | let cq = (cd >= cp) | |
595 | 595 | let cr = (cd == cp) | |
596 | 596 | if (!(cq)) | |
597 | 597 | then throw(((("User must return " + toString(ch)) + " satoshis, but returning ") + toString(cd))) | |
598 | 598 | else { | |
599 | 599 | let cs = ScriptTransfer(s, ci, a) | |
600 | 600 | let ct = ScriptTransfer(s, (cd - cp), N) | |
601 | 601 | let cu = if (cr) | |
602 | 602 | then [cs] | |
603 | 603 | else [cs, ct] | |
604 | 604 | let aM = split(valueOrErrorMessage(getString(this, z(ce)), "No lenders for an open loan"), "|") | |
605 | 605 | ScriptResult(bW(ce, 0, co, true, aM), TransferSet(cu)) | |
606 | 606 | } | |
607 | 607 | } | |
608 | 608 | } | |
609 | 609 | } | |
610 | 610 | ||
611 | 611 | ||
612 | 612 | func cv (aM,B) = if ((aM == "")) | |
613 | 613 | then B | |
614 | 614 | else ((aM + "|") + B) | |
615 | 615 | ||
616 | 616 | ||
617 | 617 | func cw (aM,B) = { | |
618 | 618 | let cx = split(aM, "|") | |
619 | 619 | func ak (al,cy) = if ((cy == B)) | |
620 | 620 | then al | |
621 | 621 | else cv(al, cy) | |
622 | 622 | ||
623 | 623 | let cz = cx | |
624 | 624 | let cA = size(cz) | |
625 | 625 | let cB = "" | |
626 | 626 | if ((cA == 0)) | |
627 | 627 | then cB | |
628 | 628 | else { | |
629 | 629 | let cC = ak(cB, cz[0]) | |
630 | 630 | if ((cA == 1)) | |
631 | 631 | then cC | |
632 | 632 | else { | |
633 | 633 | let cD = ak(cC, cz[1]) | |
634 | 634 | if ((cA == 2)) | |
635 | 635 | then cD | |
636 | 636 | else { | |
637 | 637 | let cE = ak(cD, cz[2]) | |
638 | 638 | if ((cA == 3)) | |
639 | 639 | then cE | |
640 | 640 | else { | |
641 | 641 | let cF = ak(cE, cz[3]) | |
642 | 642 | if ((cA == 4)) | |
643 | 643 | then cF | |
644 | 644 | else { | |
645 | 645 | let cG = ak(cF, cz[4]) | |
646 | 646 | if ((cA == 5)) | |
647 | 647 | then cG | |
648 | 648 | else { | |
649 | 649 | let cH = ak(cG, cz[5]) | |
650 | 650 | if ((cA == 6)) | |
651 | 651 | then cH | |
652 | 652 | else { | |
653 | 653 | let cI = ak(cH, cz[6]) | |
654 | 654 | if ((cA == 7)) | |
655 | 655 | then cI | |
656 | 656 | else { | |
657 | 657 | let cJ = ak(cI, cz[7]) | |
658 | 658 | if ((cA == 8)) | |
659 | 659 | then cJ | |
660 | 660 | else { | |
661 | 661 | let cK = ak(cJ, cz[8]) | |
662 | 662 | if ((cA == 9)) | |
663 | 663 | then cK | |
664 | 664 | else { | |
665 | 665 | let cL = ak(cK, cz[9]) | |
666 | 666 | if ((cA == 10)) | |
667 | 667 | then cL | |
668 | 668 | else { | |
669 | 669 | let cM = ak(cL, cz[10]) | |
670 | 670 | if ((cA == 11)) | |
671 | 671 | then cM | |
672 | 672 | else { | |
673 | 673 | let cN = ak(cM, cz[11]) | |
674 | 674 | if ((cA == 12)) | |
675 | 675 | then cN | |
676 | 676 | else { | |
677 | 677 | let cO = ak(cN, cz[12]) | |
678 | 678 | if ((cA == 13)) | |
679 | 679 | then cO | |
680 | 680 | else { | |
681 | 681 | let cP = ak(cO, cz[13]) | |
682 | 682 | if ((cA == 14)) | |
683 | 683 | then cP | |
684 | 684 | else { | |
685 | 685 | let cQ = ak(cP, cz[14]) | |
686 | 686 | if ((cA == 15)) | |
687 | 687 | then cQ | |
688 | 688 | else { | |
689 | 689 | let cR = ak(cQ, cz[15]) | |
690 | 690 | if ((cA == 16)) | |
691 | 691 | then cR | |
692 | 692 | else { | |
693 | 693 | let cS = ak(cR, cz[16]) | |
694 | 694 | if ((cA == 17)) | |
695 | 695 | then cS | |
696 | 696 | else { | |
697 | 697 | let cT = ak(cS, cz[17]) | |
698 | 698 | if ((cA == 18)) | |
699 | 699 | then cT | |
700 | 700 | else { | |
701 | 701 | let cU = ak(cT, cz[18]) | |
702 | 702 | if ((cA == 19)) | |
703 | 703 | then cU | |
704 | 704 | else { | |
705 | 705 | let cV = ak(cU, cz[19]) | |
706 | 706 | if ((cA == 20)) | |
707 | 707 | then cV | |
708 | 708 | else { | |
709 | 709 | let cW = ak(cV, cz[20]) | |
710 | 710 | throw("List size exceed 20") | |
711 | 711 | } | |
712 | 712 | } | |
713 | 713 | } | |
714 | 714 | } | |
715 | 715 | } | |
716 | 716 | } | |
717 | 717 | } | |
718 | 718 | } | |
719 | 719 | } | |
720 | 720 | } | |
721 | 721 | } | |
722 | 722 | } | |
723 | 723 | } | |
724 | 724 | } | |
725 | 725 | } | |
726 | 726 | } | |
727 | 727 | } | |
728 | 728 | } | |
729 | 729 | } | |
730 | 730 | } | |
731 | 731 | } | |
732 | 732 | } | |
733 | 733 | ||
734 | 734 | ||
735 | 735 | func cX (B) = { | |
736 | 736 | let cY = toBase58String(B.bytes) | |
737 | 737 | ScriptResult(WriteSet([DataEntry(ab(cY), 0), DataEntry(af(cY), 0)]), TransferSet([ScriptTransfer(B, ac(cY), N), ScriptTransfer(B, ag(cY), a)])) | |
738 | 738 | } | |
739 | 739 | ||
740 | 740 | ||
741 | 741 | @Callable(ae) | |
742 | 742 | func init (M,cZ,S,R,da,db,dc,dd,de,D) = if ((dc > dd)) | |
743 | 743 | then throw("interest must be less or equal to burndown") | |
744 | 744 | else if ((ae.caller != this)) | |
745 | 745 | then throw("only dapp itself can init") | |
746 | 746 | else WriteSet([DataEntry(m, M), DataEntry(l, cZ), DataEntry(i, S), DataEntry(k, R), DataEntry(j, da), DataEntry(f, db), DataEntry(g, dc), DataEntry(h, dd), DataEntry(n, de), DataEntry(o, D)]) | |
747 | 747 | ||
748 | 748 | ||
749 | 749 | ||
750 | 750 | @Callable(ae) | |
751 | 751 | func updateParams (S,R,da,db,dc,dd,de,D) = if ((dc > dd)) | |
752 | 752 | then throw("interest must be less or equal to burndown") | |
753 | 753 | else if ((ae.caller != M)) | |
754 | 754 | then throw("only owner can update params") | |
755 | 755 | else WriteSet([DataEntry(i, S), DataEntry(k, R), DataEntry(j, da), DataEntry(f, db), DataEntry(g, dc), DataEntry(h, dd), DataEntry(n, de), DataEntry(o, D)]) | |
756 | 756 | ||
757 | 757 | ||
758 | 758 | ||
759 | 759 | @Callable(ae) | |
760 | 760 | func borrow () = { | |
761 | 761 | let s = toBase58String(ae.caller.bytes) | |
762 | 762 | if (!(H)) | |
763 | 763 | then throw("New loans temporarily disabled") | |
764 | 764 | else if (Z(s)) | |
765 | 765 | then throw((s + " already has an open loan")) | |
766 | 766 | else { | |
767 | 767 | let F = ae.payment | |
768 | 768 | if ($isInstanceOf(F, "AttachedPayment")) | |
769 | 769 | then { | |
770 | 770 | let df = F | |
771 | 771 | if ((df.assetId == a)) | |
772 | 772 | then { | |
773 | 773 | let dg = height | |
774 | 774 | let cj = (height + O) | |
775 | 775 | let cl = (cj + P) | |
776 | 776 | let ck = (cj + Q) | |
777 | 777 | let dh = df.amount | |
778 | 778 | let di = fraction(dh, (W * U), (c * 100)) | |
779 | 779 | if ((di > 0)) | |
780 | 780 | then { | |
781 | 781 | let dj = WriteSet([DataEntry(r(s), dg), DataEntry(t(s), cj), DataEntry(u(s), cl), DataEntry(v(s), ck), DataEntry(w(s), fraction(W, U, 100)), DataEntry(x(s), dh), DataEntry(y(s), di), DataEntry(z(s), K), aj()]) | |
782 | 782 | ScriptResult(dj, TransferSet([ScriptTransfer(ae.caller, di, N)])) | |
783 | 783 | } | |
784 | 784 | else throw((("payment can't be less than " + toString(X)) + " wavelets (price of 1 satoshi)")) | |
785 | 785 | } | |
786 | 786 | else throw(("can only lend WBTC for WAVES, but got " + toBase58String(valueOrErrorMessage(df.assetId, "No asset provided")))) | |
787 | 787 | } | |
788 | 788 | else throw("payment in assetTokens must be attached") | |
789 | 789 | } | |
790 | 790 | } | |
791 | 791 | ||
792 | 792 | ||
793 | 793 | ||
794 | 794 | @Callable(ae) | |
795 | 795 | func buyBack () = { | |
796 | 796 | let dk = valueOrErrorMessage(ae.payment, "payment must be attached") | |
797 | 797 | cb(ae.caller, valueOrErrorMessage(dk.assetId, "payment in WBTC must be attached"), dk.amount) | |
798 | 798 | } | |
799 | 799 | ||
800 | 800 | ||
801 | 801 | ||
802 | 802 | @Callable(ae) | |
803 | 803 | func closeExpiredFor (bZ) = { | |
804 | 804 | let cl = valueOrErrorMessage(getInteger(this, u(bZ)), "no end of interest") | |
805 | 805 | let dl = (height > cl) | |
806 | 806 | if (!(dl)) | |
807 | 807 | then throw(((("Owner can only close expired rents. Expiring on height " + toString(cl)) + ", current height") + toString(height))) | |
808 | 808 | else bY(bZ, getIntegerValue(this, x(bZ)), getIntegerValue(this, y(bZ)), split(getStringValue(this, z(bZ)), "|")) | |
809 | 809 | } | |
810 | 810 | ||
811 | 811 | ||
812 | 812 | ||
813 | 813 | @Callable(ae) | |
814 | 814 | func discard () = { | |
815 | 815 | let bZ = toBase58String(ae.caller.bytes) | |
816 | 816 | bY(bZ, getIntegerValue(this, x(bZ)), getIntegerValue(this, y(bZ)), split(getStringValue(this, z(bZ)), "|")) | |
817 | 817 | } | |
818 | 818 | ||
819 | 819 | ||
820 | 820 | ||
821 | 821 | @Callable(ae) | |
822 | 822 | func sendProfit (B) = cX(valueOrErrorMessage(addressFromString(B), "incorrect address")) | |
823 | 823 | ||
824 | 824 | ||
825 | 825 | ||
826 | 826 | @Callable(ae) | |
827 | 827 | func takeProfit () = cX(ae.caller) | |
828 | 828 | ||
829 | 829 | ||
830 | 830 | ||
831 | 831 | @Callable(ae) | |
832 | 832 | func enableLending (G) = { | |
833 | 833 | let B = toBase58String(ae.caller.bytes) | |
834 | 834 | let dm = isDefined(indexOf(I, B)) | |
835 | 835 | let dn = isDefined(indexOf(K, B)) | |
836 | 836 | if (!(dm)) | |
837 | 837 | then throw("is not lender") | |
838 | 838 | else { | |
839 | 839 | let ad = if (dn) | |
840 | 840 | then if (G) | |
841 | 841 | then throw("is already active lender") | |
842 | 842 | else cw(K, B) | |
843 | 843 | else if (!(G)) | |
844 | 844 | then throw("is already disabled lender") | |
845 | 845 | else cv(K, B) | |
846 | 846 | WriteSet([DataEntry(e, ad)]) | |
847 | 847 | } | |
848 | 848 | } | |
849 | 849 | ||
850 | 850 | ||
851 | 851 | ||
852 | 852 | @Callable(ae) | |
853 | 853 | func depositBtc () = { | |
854 | 854 | let B = toBase58String(ae.caller.bytes) | |
855 | 855 | let do = (20 > size(split(I, "|"))) | |
856 | 856 | let dp = isDefined(indexOf(I, B)) | |
857 | 857 | if (!(E)) | |
858 | 858 | then throw("New deposits temporarily disabled") | |
859 | 859 | else if (!(do)) | |
860 | 860 | then throw("too much lenders already") | |
861 | 861 | else if (dp) | |
862 | 862 | then throw((("lender " + B) + " already participates in the dApp")) | |
863 | 863 | else { | |
864 | - | let dq = (("exactly" + toString( | |
864 | + | let dq = (("exactly" + toString(value(getInteger(this, o)))) + " BTC must be attached") | |
865 | 865 | let dk = valueOrErrorMessage(ae.payment, dq) | |
866 | 866 | if (if ((dk.assetId != N)) | |
867 | 867 | then true | |
868 | 868 | else (dk.amount != D)) | |
869 | 869 | then throw(dq) | |
870 | 870 | else WriteSet([DataEntry(A(B), D), DataEntry(d, cv(I, B)), DataEntry(e, cv(K, B))]) | |
871 | 871 | } | |
872 | 872 | } | |
873 | 873 | ||
874 | 874 | ||
875 | 875 | ||
876 | 876 | @Callable(ae) | |
877 | 877 | func withdrawBtc () = { | |
878 | 878 | let B = toBase58String(ae.caller.bytes) | |
879 | 879 | let dr = { | |
880 | 880 | let F = getInteger(this, C(B)) | |
881 | 881 | if ($isInstanceOf(F, "Int")) | |
882 | 882 | then { | |
883 | 883 | let df = F | |
884 | 884 | (df == 0) | |
885 | 885 | } | |
886 | 886 | else true | |
887 | 887 | } | |
888 | 888 | if (!(dr)) | |
889 | 889 | then throw("withdraw not allowed, you have open lends. invoke enableLending(false) and wait for loans to be closed") | |
890 | 890 | else ScriptResult(WriteSet([DataEntry(A(B), 0), DataEntry(d, cw(I, B)), DataEntry(e, cw(K, B))]), TransferSet([ScriptTransfer(ae.caller, getIntegerValue(this, A(B)), N)])) | |
891 | 891 | } | |
892 | 892 | ||
893 | 893 | ||
894 | 894 | ||
895 | 895 | @Callable(ae) | |
896 | 896 | func enableDepositBtc (G) = if ((ae.caller != M)) | |
897 | 897 | then throw("admin permissions required") | |
898 | 898 | else if ((G == E)) | |
899 | 899 | then throw("the value already set") | |
900 | 900 | else WriteSet([DataEntry(p, G)]) | |
901 | 901 | ||
902 | 902 | ||
903 | 903 | ||
904 | 904 | @Callable(ae) | |
905 | 905 | func enableNewLoans (G) = if ((ae.caller != M)) | |
906 | 906 | then throw("admin permissions required") | |
907 | 907 | else if ((G == H)) | |
908 | 908 | then throw("the value already set") | |
909 | 909 | else WriteSet([DataEntry(q, G)]) | |
910 | 910 | ||
911 | 911 |
github/deemru/w8io/169f3d6 91.80 ms ◑