tx · 6sDjuS2KxGc5vN1a1cLRP33wMk7stgq3sAvBtgTT2kef

3N2EM5HFgf6UMBnvcJX3Cegmozwdv1iDeq2:  -0.01500000 Waves

2019.10.12 12:11 [716475] smart account 3N2EM5HFgf6UMBnvcJX3Cegmozwdv1iDeq2 > SELF 0.00000000 Waves

{ "type": 13, "id": "6sDjuS2KxGc5vN1a1cLRP33wMk7stgq3sAvBtgTT2kef", "fee": 1500000, "feeAssetId": null, "timestamp": 1570871543498, "version": 1, "sender": "3N2EM5HFgf6UMBnvcJX3Cegmozwdv1iDeq2", "senderPublicKey": "8y2Uc9uYf5gRD6Dzm1aC73zYe3LZvtVDUVAnAhNdN2mg", "proofs": [ "E1Fwox2JYsbnBDMZkRZym9eAAaNhy7ZAKWUGqWvzKYwfYCjTqFWqyw5e1PJeUzYBfMnoLErDFnMzfCuWKrT3RjM" ], "script": "base64:AAIDAAAAAAAAAD8IARIDCgEIEgMKAQgSBQoDAQEIEgQKAggBEgQKAggIEgQKAggBEgMKAQgSAwoBCBIECgIICBIDCgEIEgMKAQgAAAAlAAAAAANkYXkAAAAAAAAABaAAAAAABVdBVkVTBQAAAAR1bml0AAAAAAR3QlRDAQAAACBs+mr/xe2qjAt/tSqT0qIML4KC23R6BIxT+/0TH3Og/wAAAAAEd0VVUgEAAAAg7BZhBF97kSFBBjs38+fX1Pjz08YOqoCX85C/0PoVupkAAAAABHdVU0QBAAAAIN0cvQHwz3UFMHgHsqi2OJjRRd1cH7ozWuNAb/pmWXD9AAAAAAlzdGF0ZU9wZW4CAAAABk9wZW5lZAAAAAAOc3RhdGVTdWdnZXN0ZWQCAAAACVN1Z2dlc3RlZAAAAAALc3RhdGVDYW5jZWwCAAAACENhbmNlbGVkAAAAAA9zdGF0ZUluUHJvZ3Jlc3MCAAAACkluUHJvZ3Jlc3MAAAAAEXN0YXRlV2FpdDRDb25maXJtAgAAABNXYWl0Rm9yQ29uZmlybWF0aW9uAAAAAA1zdGF0ZUNvbXBsZXRlAgAAAAlDb21wbGV0ZWQAAAAADHN0YXRlRGlzcHV0ZQIAAAAHRGlzcHV0ZQAAAAAUc3RhdGVEaXNwdXRlUmVzb2x2ZWQCAAAAD0Rpc3B1dGVSZXNvbHZlZAAAAAAGY2xpZW50AgAAAANDTVIAAAAACmZyZWVsYW5jZXICAAAAAkZMAAAAAAthbWJhc3NhZG9yMQEAAAAg27TPUj36Wh4UzoIbdIokDoBJ0cVnPSfudcacjaZH5x4AAAAAC2FtYmFzc2Fkb3IyAQAAACBQOV8ymRPt2eY6h12J/8iJk4eyEUDx8WjjRS+op7oMFwAAAAALYW1iYXNzYWRvcjMBAAAAIBmXMrJ2k2vKhLZB/kgqcwMBMuhLaCefR2Wwj/4iLIVyAAAAAAthbWJhc3NhZG9yNAEAAAAgi1NZ9R0YZs+seHSmrgvSRQ6ZmuRIAZ2DN019Y0z3cnEAAAAAC2FtYmFzc2Fkb3I1AQAAACAAo6Owdzt27VP+hB9eWv3blLpSzkiqiD2bSXnq6z/BMQEAAAAQQXVjdGlvbklkRGF0YUtleQAAAAEAAAAJYXVjdGlvbklkCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAMX0F1Y3Rpb25EYXRhAQAAAAZnZXRJbnQAAAABAAAAA2tleQQAAAAQdmFsdWVKb2JzT25Hb2luZwkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkEAAAAByRtYXRjaDAFAAAAEHZhbHVlSm9ic09uR29pbmcDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAEAAAARQXNzZXROYW1lVG9CYXNlNTgAAAABAAAAEGF1Y3Rpb25Bc3NldE5hbWUDCQAAAAAAAAIFAAAAEGF1Y3Rpb25Bc3NldE5hbWUCAAAABVdBVkVTBQAAAAVXQVZFUwMJAAAAAAAAAgUAAAAQYXVjdGlvbkFzc2V0TmFtZQIAAAADQlRDBQAAAAR3QlRDAwkAAAAAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lAgAAAANFVVIFAAAABHdFVVIDCQAAAAAAAAIFAAAAEGF1Y3Rpb25Bc3NldE5hbWUCAAAAA1VTRAUAAAAEd1VTRAkAAAIAAAABAgAAABJJbmNvcnJlY3QgQXNzZXQgSWQBAAAACXRpbWVDaGVjawAAAAMAAAALY3VycmVudFRpbWUAAAAJc3RhcnRUaW1lAAAADmV4cGlyYXRpb25UaW1lCQAAZgAAAAIJAABlAAAAAgUAAAALY3VycmVudFRpbWUFAAAACXN0YXJ0VGltZQUAAAAOZXhwaXJhdGlvblRpbWUBAAAADmJpZEFtb3VudENoZWNrAAAAAgAAAAZhbW91bnQAAAAMYXVjdGlvblByaWNlAwkAAGYAAAACBQAAAAZhbW91bnQFAAAADGF1Y3Rpb25QcmljZQkAAAIAAAABAgAAADNCaWQgYW1vdW50IG11c3QgYmUgbG93ZXIgb3IgZXF1YWwgdGhhbiBhdWN0aW9uUHJpY2UFAAAABmFtb3VudAEAAAAWaW5jcmVhc2VGcmVlemVkQmFsYW5jZQAAAAIAAAAMcG10QXNzZXROYW1lAAAADGF1Y3Rpb25QcmljZQQAAAAPa2V5RnJlZXplZEZ1bmRzCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAMcG10QXNzZXROYW1lAgAAAAhfRnJlZXplZAQAAAAVY3VycmVudEZyZWV6ZWRCYWxhbmNlBAAAAAckbWF0Y2gwBQAAAA9rZXlGcmVlemVkRnVuZHMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAkAAGQAAAACBQAAABVjdXJyZW50RnJlZXplZEJhbGFuY2UFAAAADGF1Y3Rpb25QcmljZQEAAAAWZGVjcmVhc2VGcmVlemVkQmFsYW5jZQAAAAIAAAAMcG10QXNzZXROYW1lAAAADGF1Y3Rpb25QcmljZQQAAAAPa2V5RnJlZXplZEZ1bmRzCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAMcG10QXNzZXROYW1lAgAAAAhfRnJlZXplZAQAAAAVY3VycmVudEZyZWV6ZWRCYWxhbmNlBAAAAAckbWF0Y2gwBQAAAA9rZXlGcmVlemVkRnVuZHMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAABYQkAAGUAAAACBQAAABVjdXJyZW50RnJlZXplZEJhbGFuY2UFAAAADGF1Y3Rpb25QcmljZQMJAABnAAAAAgUAAAABYQAAAAAAAAAAAAUAAAABYQkAAAIAAAABAgAAACZGcmVlemVkIGFtb3VudCBjb3VsZG4ndCBiZSBsZXNzIHRoYW4gMAEAAAAWZnJlZWxhbmNlcklzUmVnaXN0ZXJlZAAAAAEAAAAJY2FsbGVyUHViBAAAABZmcmVlbGFuY2VySXNSZWdpc3RlcmVkCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAJY2FsbGVyUHViAgAAAAtfRnJlZWxhbmNlcgQAAAAHJG1hdGNoMAUAAAAWZnJlZWxhbmNlcklzUmVnaXN0ZXJlZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAljYWxsZXJQdWIJAAACAAAAAQIAAAAjT25seSByZWdpc3RlcmVkIHVzZXJzIGNhbiBtYWtlIGJldHMBAAAAF2NyZWF0ZUF1Y3Rpb25QcmljZUNoZWNrAAAAAQAAAAlwbXRBbW91bnQDCQAAZgAAAAIFAAAACXBtdEFtb3VudAAAAAAAAAAAAAUAAAAJcG10QW1vdW50CQAAAgAAAAECAAAAHEFtb3VudCBtdXN0IGJlIGhpZ2hlciB0aGVuIDABAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEAAAAJYXVjdGlvbklkBAAAAAp2YWx1ZVN0YXRlCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfU3RhdGUEAAAAByRtYXRjaDAFAAAACnZhbHVlU3RhdGUDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAABtBdWN0aW9uIFN0YXRlIHdhcyBub3QgZm91bmQBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABAAAACWF1Y3Rpb25JZAQAAAALdmFsdWVDbGllbnQJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADl9BdWN0aW9uQ2xpZW50BAAAAAljbGllbnRQdWIEAAAAByRtYXRjaDAFAAAAC3ZhbHVlQ2xpZW50AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAcQXVjdGlvbiBDbGllbnQgd2FzIG5vdCBmb3VuZAkAAlkAAAABBQAAAAljbGllbnRQdWIBAAAAE2dldEF1Y3Rpb25TdGFydFRpbWUAAAABAAAACWF1Y3Rpb25JZAQAAAARdmFsdWVBdWN0aW9uU3RhcnQJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADV9BdWN0aW9uU3RhcnQEAAAAByRtYXRjaDAFAAAAEXZhbHVlQXVjdGlvblN0YXJ0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAgQXVjdGlvbiBTdGFydCB0aW1lIHdhcyBub3QgZm91bmQBAAAAFmdldEF1Y3Rpb25EdXJhdGlvblRpbWUAAAABAAAACWF1Y3Rpb25JZAQAAAAUdmFsdWVhdWN0aW9uRHVyYXRpb24JAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9BdWN0aW9uRHVyYXRpb24EAAAAByRtYXRjaDAFAAAAFHZhbHVlYXVjdGlvbkR1cmF0aW9uAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAjQXVjdGlvbiBkdXJhdGlvbiB0aW1lIHdhcyBub3QgZm91bmQBAAAAHGdldEF1Y3Rpb25Kb2JQZXJmb3JtYW5jZVRpbWUAAAABAAAACWF1Y3Rpb25JZAQAAAAXdmFsdWVCbG9ja3NGb3JFeGVjdXRpb24JAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAD19Kb2JQZXJmb3JtYW5jZQQAAAAHJG1hdGNoMAUAAAAXdmFsdWVCbG9ja3NGb3JFeGVjdXRpb24DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAACpBdWN0aW9uIGpvYiBwZXJmb3JtYW5jZSB0aW1lIHdhcyBub3QgZm91bmQBAAAAE2dldEF1Y3Rpb25Bc3NldE5hbWUAAAABAAAACWF1Y3Rpb25JZAQAAAAOdmFsdWVBc3NldE5hbWUJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAACl9Bc3NldE5hbWUEAAAAByRtYXRjaDAFAAAADnZhbHVlQXNzZXROYW1lAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAgQXVjdGlvbiBhc3NldCBuYW1lIHdhcyBub3QgZm91bmQBAAAAD2dldEF1Y3Rpb25QcmljZQAAAAEAAAAJYXVjdGlvbklkBAAAAAp2YWx1ZVByaWNlCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfUHJpY2UEAAAAByRtYXRjaDAFAAAACnZhbHVlUHJpY2UDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAABtBdWN0aW9uIHBy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bnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfSW5mbwUAAAALYXVjdGlvbkluZm8JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAA5fQXVjdGlvbkNsaWVudAUAAAANYXVjdGlvbkNsaWVudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADV9BdWN0aW9uU3RhcnQFAAAADGF1Y3Rpb25TdGFydAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9BdWN0aW9uRHVyYXRpb24FAAAAFWF1Y3Rpb25EdXJhdGlvbkJsb2NrcwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAD19Kb2JQZXJmb3JtYW5jZQUAAAASYmxvY2tzRm9yRXhlY3V0aW9uCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAKX0Fzc2V0TmFtZQUAAAAMcG10QXNzZXROYW1lCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1ByaWNlBQAAAAxhdWN0aW9uUHJpY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAMcG10QXNzZXROYW1lAgAAAAhfRnJlZXplZAUAAAARbmV3RnJlZXplZEJhbGFuY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAANYXVjdGlvbkNsaWVudAIAAAAMX0pvYnNDcmVhdGVkCQAAZAAAAAIFAAAAC2pvYnNDcmVhdGVkAAAAAAAAAAABBQAAAANuaWwAAAABaQEAAAAHbWFrZUJpZAAAAAIAAAAJYXVjdGlvbklkAAAABmFtb3VudAQAAAAJY2FsbGVyUHViCQACWAAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQQAAAAHYmV0VGltZQUAAAAGaGVpZ2h0BAAAAAxhdWN0aW9uU3RhdGUJAQAAAA9nZXRBdWN0aW9uU3RhdGUAAAABBQAAAAlhdWN0aW9uSWQEAAAADWF1Y3Rpb25DbGllbnQJAQAAABNnZXRBdWN0aW9uQ2xpZW50UHViAAAAAQUAAAAJYXVjdGlvbklkBAAAAAxhdWN0aW9uU3RhcnQJAQAAABNnZXRBdWN0aW9uU3RhcnRUaW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAAA9hdWN0aW9uRHVyYXRpb24JAQAAABZnZXRBdWN0aW9uRHVyYXRpb25UaW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAABlhdWN0aW9uQmxvY2tzRm9yRXhlY3V0aW9uCQEAAAAcZ2V0QXVjdGlvbkpvYlBlcmZvcm1hbmNlVGltZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAAQYXVjdGlvbkFzc2V0TmFtZQkBAAAAE2dldEF1Y3Rpb25Bc3NldE5hbWUAAAABBQAAAAlhdWN0aW9uSWQEAAAADGF1Y3Rpb25QcmljZQkBAAAAD2dldEF1Y3Rpb25QcmljZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAAQYXVjdGlvbkFzc2V0SWQ1OAkBAAAAEUFzc2V0TmFtZVRvQmFzZTU4AAAAAQUAAAAQYXVjdGlvbkFzc2V0TmFtZQQAAAANbmV3RnJlZWxhbmNlcgkBAAAAFmZyZWVsYW5jZXJJc1JlZ2lzdGVyZWQAAAABBQAAAAljYWxsZXJQdWIEAAAADmRBcHBDb21taXNzaW9uCQAAaQAAAAIJAABoAAAAAgUAAAAMYXVjdGlvblByaWNlAAAAAAAAAAADAAAAAAAAAABkBAAAABFuZXdGcmVlemVkQmFsYW5jZQkBAAAAFmRlY3JlYXNlRnJlZXplZEJhbGFuY2UAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lBQAAAAxhdWN0aW9uUHJpY2UEAAAACWJpZEFtb3VudAkBAAAADmJpZEFtb3VudENoZWNrAAAAAgUAAAAGYW1vdW50BQAAAAxhdWN0aW9uUHJpY2UEAAAAEWF1Y3Rpb25UaW1laXNPdmVyCQEAAAAJdGltZUNoZWNrAAAAAwUAAAAHYmV0VGltZQUAAAAMYXVjdGlvblN0YXJ0BQAAAA9hdWN0aW9uRHVyYXRpb24DBQAAABFhdWN0aW9uVGltZWlzT3ZlcgMJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAAAlzdGF0ZU9wZW4JAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1N0YXRlBQAAAAtzdGF0ZUNhbmNlbAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lAgAAAAhfRnJlZXplZAUAAAARbmV3RnJlZXplZEJhbGFuY2UFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAA1hdWN0aW9uQ2xpZW50CQAAZQAAAAIFAAAADGF1Y3Rpb25QcmljZQUAAAAOZEFwcENvbW1pc3Npb24FAAAAEGF1Y3Rpb25Bc3NldElkNTgFAAAAA25pbAMJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAAA5zdGF0ZVN1Z2dlc3RlZAQAAAATYXVjdGlvbkxvd2VzdEJpZGRlcgQAAAARdmFsdWVMb3dlc3RCaWRkZXIJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9Mb3dlc3RCaWRkZXJQdWIEAAAAByRtYXRjaDAFAAAAEXZhbHVlTG93ZXN0QmlkZGVyAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAjQXVjdGlvbiBsb3dlc3QgYmlkZGVyIHdhcyBub3QgZm91bmQEAAAAD25ld0F1Y3Rpb25QcmljZQQAAAAUdmFsdWVOZXdBdWN0aW9uUHJpY2UJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAFX0JpZF8FAAAAE2F1Y3Rpb25Mb3dlc3RCaWRkZXIEAAAAByRtYXRjaDAFAAAAFHZhbHVlTmV3QXVjdGlvblByaWNlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAgQXVjdGlvbiBsb3dlc3QgYmlkIHdhcyBub3QgZm91bmQEAAAAEGFtb3VudERpZmZlcmVuY2UJAABlAAAAAgkAAGUAAAACBQAAAAxhdWN0aW9uUHJpY2UFAAAAD25ld0F1Y3Rpb25QcmljZQUAAAAOZEFwcENvbW1pc3Npb24JAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1N0YXRlBQAAAA9zdGF0ZUluUHJvZ3Jlc3MJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAABBfSGlyZWRGcmVlbGFuY2VyBQAAABNhdWN0aW9uTG93ZXN0QmlkZGVyCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1ByaWNlBQAAAA9uZXdBdWN0aW9uUHJpY2UFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAA1hdWN0aW9uQ2xpZW50BQAAABBhbW91bnREaWZmZXJlbmNlBQAAABBhdWN0aW9uQXNzZXRJZDU4BQAAAANuaWwJAAACAAAAAQIAAAAXSW5jb3JyZWN0IGF1Y3Rpb24gc3RhdGUDCQAAAAAAAAIFAAAADGF1Y3Rpb25TdGF0ZQUAAAAJc3RhdGVPcGVuCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfQmlkXwUAAAANbmV3RnJlZWxhbmNlcgUAAAAJYmlkQW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1N0YXRlBQAAAA5zdGF0ZVN1Z2dlc3RlZAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9Mb3dlc3RCaWRkZXJQdWIFAAAACWNhbGxlclB1YgUAAAADbmlsAwkAAAAAAAACBQAAAAxhdWN0aW9uU3RhdGUFAAAADnN0YXRlU3VnZ2VzdGVkBAAAABZjdXJyZW50TG93ZXN0QmlkZGVyUHViBAAAAAxsb3dlc3RCaWRkZXIJAAQdAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9Mb3dlc3RCaWRkZXJQdWIEAAAAByRtYXRjaDAFAAAADGxvd2VzdEJpZGRlcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhCQAAAgAAAAECAAAAI0F1Y3Rpb24gbG93ZXN0IGJpZGRlciB3YXMgbm90IGZvdW5kBAAAABJuZXdMb3dlc3RCaWRkZXJQdWIEAAAAFXZhbHVlQ3VycmVudExvd2VzdEJpZAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfQmlkXwUAAAAWY3VycmVudExvd2VzdEJpZGRlclB1YgQAAAAQY3VycmVudExvd2VzdEJpZAQAAAAHJG1hdGNoMAUAAAAVdmFsdWVDdXJyZW50TG93ZXN0QmlkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAgQXVjdGlvbiBsb3dlc3QgYmlkIHdhcyBub3QgZm91bmQDCQAAZgAAAAIFAAAAEGN1cnJlbnRMb3dlc3RCaWQFAAAACWJpZEFtb3VudAUAAAANbmV3RnJlZWxhbmNlcgUAAAAWY3VycmVudExvd2VzdEJpZGRlclB1YgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9Mb3dlc3RCaWRkZXJQdWIFAAAAEm5ld0xvd2VzdEJpZGRlclB1YgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAFX0JpZF8FAAAADW5ld0ZyZWVsYW5jZXIFAAAACWJpZEFtb3VudAUAAAADbmlsCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABxJbmNvcnJlY3Qgam9iSWQgc3RhdGUuIE5vdzogBQAAAAxhdWN0aW9uU3RhdGUCAAAACywgbXVzdCBiZTogBQAAAAlzdGF0ZU9wZW4CAAAABCBvciAFAAAADnN0YXRlU3VnZ2VzdGVkAAAAAWkBAAAAEGNob29zZUZyZWVsYW5jZXIAAAACAAAACWF1Y3Rpb25JZAAAAA1mcmVlbGFuY2VyUHViBAAAAAljYWxsZXJQdWIJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAAdiZXRUaW1lBQAAAAZoZWlnaHQEAAAADGF1Y3Rpb25TdGF0ZQkBAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAANYXVjdGlvbkNsaWVudAkBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAADGF1Y3Rpb25TdGFydAkBAAAAE2dldEF1Y3Rpb25TdGFydFRpbWUAAAABBQAAAAlhdWN0aW9uSWQEAAAAD2F1Y3Rpb25EdXJhdGlvbgkBAAAAFmdldEF1Y3Rpb25EdXJhdGlvblRpbWUAAAABBQAAAAlhdWN0aW9uSWQEAAAAEGF1Y3Rpb25Bc3NldE5hbWUJAQAAABNnZXRBdWN0aW9uQXNzZXROYW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAAAxhdWN0aW9uUHJpY2UJAQAAAA9nZXRBdWN0aW9uUHJpY2UAAAABBQAAAAlhdWN0aW9uSWQEAAAAEGF1Y3Rpb25Bc3NldElkNTgJAQAAABFBc3NldE5hbWVUb0Jhc2U1OAAAAAEFAAAAEGF1Y3Rpb25Bc3NldE5hbWUEAAAAC2pvYnNPbkdvaW5nCQEAAAAGZ2V0SW50AAAAAQkAASwAAAACCQACWAAAAAEFAAAADWF1Y3Rpb25DbGllbnQCAAAADF9Kb2JzT25Hb2luZwQAAAAZZnJlZWxhbmNlclBlbmRpbmdFYXJuaW5ncwkBAAAABmdldEludAAAAAEJAAEsAAAAAgUAAAANZnJlZWxhbmNlclB1YgIAAAAQX1BlbmRpbmdFYXJuaW5ncwQAAAAXZnJlZWxhbmNlclRvdGFsRWFybmluZ3MJAQAAAAZnZXRJbnQAAAABCQABLAAAAAIFAAAADWZyZWVsYW5jZXJQdWICAAAADl9Ub3RhbEVhcm5pbmdzBAAAABNmcmVlbGFuY2VyQmlkQW1vdW50BAAAABBrZXlGcmVlbGFuY2VyQmlkCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfQmlkXwUAAAANZnJlZWxhbmNlclB1YgQAAAARdmFsdWVGcmVlbGFjZXJCaWQJAAQaAAAAAgUAAAAEdGhpcwUAAAAQa2V5RnJlZWxhbmNlckJpZAQAAAAHJG1hdGNoMAUAAAARdmFsdWVGcmVlbGFjZXJCaWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAAB5GcmVlbGFuY2VyJ3MgYmV0IHdhcyBub3QgZm91bmQEAAAAEWF1Y3Rpb25UaW1laXNPdmVyCQEAAAAJdGltZUNoZWNrAAAAAwUAAAAHYmV0VGltZQUAAAAMYXVjdGlvblN0YXJ0BQAAAA9hdWN0aW9uRHVyYXRpb24DCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAANYXVjdGlvbkNsaWVudAMFAAAAEWF1Y3Rpb25UaW1laXNPdmVyAwkAAAAAAAACBQAAAAxhdWN0aW9uU3RhdGUFAAAACXN0YXRlT3BlbgQAAAARbmV3RnJlZXplZEJhbGFuY2UJAQAAABZkZWNyZWFzZUZyZWV6ZWRCYWxhbmNlAAAAAgUAAAAQYXVjdGlvbkFzc2V0TmFtZQUAAAAMYXVjdGlvblByaWNlBAAAAA5kQXBwQ29tbWlzc2lvbgkAAGkAAAACCQAAaAAAAAIFAAAADGF1Y3Rpb25QcmljZQAAAAAAAAAAAwAAAAAAAAAAZAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfU3RhdGUFAAAAC3N0YXRlQ2FuY2VsCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAAEGF1Y3Rpb25Bc3NldE5hbWUCAAAACF9GcmVlemVkBQAAABFuZXdGcmVlemVkQmFsYW5jZQUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAADWF1Y3Rpb25DbGllbnQJAABlAAAAAgUAAAAMYXVjdGlvblByaWNlBQAAAA5kQXBwQ29tbWlzc2lvbgUAAAAQYXVjdGlvbkFzc2V0SWQ1OAUAAAADbmlsAwkAAAAAAAACBQAAAAxhdWN0aW9uU3RhdGUFAAAADnN0YXRlU3VnZ2VzdGVkBAAAABNhdWN0aW9uTG93ZXN0QmlkZGVyBAAAABF2YWx1ZUxvd2VzdEJpZGRlcgkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAQX0xvd2VzdEJpZGRlclB1YgQAAAAHJG1hdGNoMAUAAAARdmFsdWVMb3dlc3RCaWRkZXIDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAACNBdWN0aW9uIGxvd2VzdCBiaWRkZXIgd2FzIG5vdCBmb3VuZAQAAAAPbmV3QXVjdGlvblByaWNlBAAAABR2YWx1ZU5ld0F1Y3Rpb25QcmljZQkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfQmlkXwUAAAATYXVjdGlvbkxvd2VzdEJpZGRlcgQAAAAHJG1hdGNoMAUAAAAUdmFsdWVOZXdBdWN0aW9uUHJpY2UDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQkAAAIAAAABAgAAACBBdWN0aW9uIGxvd2VzdCBiaWQgd2FzIG5vdCBmb3VuZAQAAAAQYW1vdW50RGlmZmVyZW5jZQkAAGUAAAACBQAAAAxhdWN0aW9uUHJpY2UFAAAAD25ld0F1Y3Rpb25QcmljZQQAAAARbmV3RnJlZXplZEJhbGFuY2UJAQAAABZkZWNyZWFzZUZyZWV6ZWRCYWxhbmNlAAAAAgUAAAAQYXVjdGlvbkFzc2V0TmFtZQUAAAAQYW1vdW50RGlmZmVyZW5jZQkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfU3RhdGUFAAAAD3N0YXRlSW5Qcm9ncmVzcwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAAEF9IaXJlZEZyZWVsYW5jZXIFAAAAE2F1Y3Rpb25Mb3dlc3RCaWRkZXIJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfUHJpY2UFAAAAD25ld0F1Y3Rpb25QcmljZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lAgAAAAhfRnJlZXplZAUAAAARbmV3RnJlZXplZEJhbGFuY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAAlgAAAABBQAAAA1hdWN0aW9uQ2xpZW50AgAAAAxfSm9ic09uR29pbmcJAABkAAAAAgUAAAALam9ic09uR29pbmcAAAAAAAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAANZnJlZWxhbmNlclB1YgIAAAAQX1BlbmRpbmdFYXJuaW5ncwkAAGQAAAACBQAAABlmcmVlbGFuY2VyUGVuZGluZ0Vhcm5pbmdzBQAAAA9uZXdBdWN0aW9uUHJpY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAANZnJlZWxhbmNlclB1YgIAAAAOX1RvdGFsRWFybmluZ3MJAABkAAAAAgUAAAAXZnJlZWxhbmNlclRvdGFsRWFybmluZ3MFAAAAD25ld0F1Y3Rpb25QcmljZQUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEFAAAADWF1Y3Rpb25DbGllbnQFAAAAEGFtb3VudERpZmZlcmVuY2UFAAAAEGF1Y3Rpb25Bc3NldElkNTgFAAAAA25pbAkAAAIAAAABAgAAABdJbmNvcnJlY3QgYXVjdGlvbiBzdGF0ZQQAAAAQc2V0TmV3RnJlZWxhbmNlcgQAAAANbmV3RnJlZWxhbmNlcgkABBoAAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAVfQmlkXwUAAAANZnJlZWxhbmNlclB1YgQAAAAHJG1hdGNoMAUAAAANbmV3RnJlZWxhbmNlcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAA1mcmVlbGFuY2VyUHViCQAAAgAAAAECAAAAHkVycm9yOiBJbmNvcnJlY3QgZnJlZWxhbmNlclB1YgQAAAAPbmV3QXVjdGlvblByaWNlBAAAAA1mcmVlbGFuY2VyQmlkCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAABV9CaWRfBQAAAA1mcmVlbGFuY2VyUHViBAAAAAckbWF0Y2gwBQAAAA1mcmVlbGFuY2VyQmlkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEJAAACAAAAAQIAAAAjQXVjdGlvbiBsb3dlc3QgYmlkZGVyIHdhcyBub3QgZm91bmQEAAAAEGFtb3VudERpZmZlcmVuY2UJAABlAAAAAgUAAAAMYXVjdGlvblByaWNlBQAAABNmcmVlbGFuY2VyQmlkQW1vdW50BAAAABFuZXdGcmVlemVkQmFsYW5jZQkBAAAAFmRlY3JlYXNlRnJlZXplZEJhbGFuY2UAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lBQAAABBhbW91bnREaWZmZXJlbmNlCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAABl9TdGF0ZQUAAAAPc3RhdGVJblByb2dyZXNzCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAQX0hpcmVkRnJlZWxhbmNlcgUAAAAQc2V0TmV3RnJlZWxhbmNlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAABl9QcmljZQUAAAAPbmV3QXVjdGlvblByaWNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAAEGF1Y3Rpb25Bc3NldE5hbWUCAAAACF9GcmVlemVkBQAAABFuZXdGcmVlemVkQmFsYW5jZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQACWAAAAAEFAAAADWF1Y3Rpb25DbGllbnQCAAAADF9Kb2JzT25Hb2luZwkAAGQAAAACBQAAAAtqb2JzT25Hb2luZwAAAAAAAAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAA1mcmVlbGFuY2VyUHViAgAAABBfUGVuZGluZ0Vhcm5pbmdzCQAAZAAAAAIFAAAAGWZyZWVsYW5jZXJQZW5kaW5nRWFybmluZ3MFAAAAD25ld0F1Y3Rpb25QcmljZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAA1mcmVlbGFuY2VyUHViAgAAAA5fVG90YWxFYXJuaW5ncwkAAGQAAAACBQAAABdmcmVlbGFuY2VyVG90YWxFYXJuaW5ncwUAAAAPbmV3QXVjdGlvblByaWNlBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQUAAAANYXVjdGlvbkNsaWVudAkAAGQAAAACBQAAABBhbW91bnREaWZmZXJlbmNlAAAAAAAAAAABBQAAABBhdWN0aW9uQXNzZXRJZDU4BQAAAANuaWwJAAACAAAAAQIAAAAtT25seSBhdWN0aW9uIGN1c3RvbWVyIGNhbiBjaG9vc2UgYSBmcmVlbGFuY2VyAAAAAWkBAAAAFWluY3JlYXNlRXhlY3V0aW9uVGltZQAAAAIAAAAJYXVjdGlvbklkAAAADWV4ZWN1dGlvbkRheXMEAAAABmNhbGxlcgkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAADGF1Y3Rpb25TdGF0ZQkBAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAANYXVjdGlvbkNsaWVudAkBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAAGWF1Y3Rpb25CbG9ja3NGb3JFeGVjdXRpb24JAQAAABxnZXRBdWN0aW9uSm9iUGVyZm9ybWFuY2VUaW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAABduZXdBdWN0aW9uRXhlY3V0aW9uVGltZQQAAAAcbmV3QXVjdGlvbkJsb2Nrc0ZvckV4ZWN1dGlvbgkAAGgAAAACBQAAAA1leGVjdXRpb25EYXlzBQAAAANkYXkDCQAAZgAAAAIFAAAAHG5ld0F1Y3Rpb25CbG9ja3NGb3JFeGVjdXRpb24FAAAAGWF1Y3Rpb25CbG9ja3NGb3JFeGVjdXRpb24FAAAAHG5ld0F1Y3Rpb25CbG9ja3NGb3JFeGVjdXRpb24JAAACAAAAAQIAAAA4TmV3IGV4ZWN1dGlvbiB0aW1lIG11c3QgbW9yZSB0aGFuIGN1cnJlbnQgZXhlY3V0aW9uIHRpbWUDCQAAAAAAAAIFAAAABmNhbGxlcgUAAAANYXVjdGlvbkNsaWVudAMDAwkAAAAAAAACBQAAAAxhdWN0aW9uU3RhdGUFAAAACXN0YXRlT3BlbgYJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAAA5zdGF0ZVN1Z2dlc3RlZAYJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAAA9zdGF0ZUluUHJvZ3Jlc3MJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAA9fSm9iUGVyZm9ybWFuY2UFAAAAF25ld0F1Y3Rpb25FeGVjdXRpb25UaW1lBQAAAANuaWwJAAACAAAAAQIAAAAPSW5jb3JyZWN0IHN0YXRlCQAAAgAAAAECAAAAJ09ubHkgQ2xpZW50IGNhbiBpbmNyZWFzZSBleGVjdXRpb24gdGltZQAAAAFpAQAAAA1jYW5jZWxBdWN0aW9uAAAAAQAAAAlhdWN0aW9uSWQEAAAACWNhbGxlclB1YgkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAADGF1Y3Rpb25TdGF0ZQkBAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAANYXVjdGlvbkNsaWVudAkBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAAEGF1Y3Rpb25Bc3NldE5hbWUJAQAAABNnZXRBdWN0aW9uQXNzZXROYW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAAAxhdWN0aW9uUHJpY2UJAQAAAA9nZXRBdWN0aW9uUHJpY2UAAAABBQAAAAlhdWN0aW9uSWQEAAAAEGF1Y3Rpb25Bc3NldElkNTgJAQAAABFBc3NldE5hbWVUb0Jhc2U1OAAAAAEFAAAAEGF1Y3Rpb25Bc3NldE5hbWUEAAAADmRBcHBDb21taXNzaW9uCQAAaQAAAAIJAABoAAAAAgUAAAAMYXVjdGlvblByaWNlAAAAAAAAAAADAAAAAAAAAABkBAAAABFhbW91bnRXaXRob3V0Q29tbQkAAGUAAAACBQAAAAxhdWN0aW9uUHJpY2UFAAAADmRBcHBDb21taXNzaW9uBAAAABFuZXdGcmVlemVkQmFsYW5jZQkBAAAAFmRlY3JlYXNlRnJlZXplZEJhbGFuY2UAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lBQAAAAxhdWN0aW9uUHJpY2UDCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAANYXVjdGlvbkNsaWVudAMJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAAAlzdGF0ZU9wZW4JAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1N0YXRlBQAAAAtzdGF0ZUNhbmNlbAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lAgAAAAhfRnJlZXplZAUAAAARbmV3RnJlZXplZEJhbGFuY2UFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAA1hdWN0aW9uQ2xpZW50BQAAABFhbW91bnRXaXRob3V0Q29tbQUAAAAQYXVjdGlvbkFzc2V0SWQ1OAUAAAADbmlsCQAAAgAAAAECAAAALkF1Y3Rpb24gY2FuIGJlIGNhbmNlbGVkIG9ubHkgYnkgYXVjdGlvbiBvd25lci4JAAACAAAAAQIAAAAeT25seSBDbGllbnQgY2FuIGNhbmNlbCBhdWN0aW9uAAAAAWkBAAAAC29wZW5EaXNwdXRlAAAAAQAAAAlhdWN0aW9uSWQEAAAABmNhbGxlcgkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAADGF1Y3Rpb25TdGF0ZQkBAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAANYXVjdGlvbkNsaWVudAkBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAAEWF1Y3Rpb25GcmVlbGFuY2VyCQEAAAAXZ2V0QXVjdGlvbkZyZWVsYW5jZXJQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAAE2NsaWVudEpvYnNJbkRpc3B1dGUJAQAAAAZnZXRJbnQAAAABCQABLAAAAAIJAAJYAAAAAQUAAAANYXVjdGlvbkNsaWVudAIAAAAOX0pvYnNJbkRpc3B1dGUDAwkAAAAAAAACBQAAAAxhdWN0aW9uU3RhdGUFAAAAD3N0YXRlSW5Qcm9ncmVzcwYJAAAAAAAAAgUAAAAMYXVjdGlvblN0YXRlBQAAABFzdGF0ZVdhaXQ0Q29uZmlybQMDCQAAAAAAAAIFAAAABmNhbGxlcgUAAAANYXVjdGlvbkNsaWVudAYJAAAAAAAAAgUAAAAGY2FsbGVyBQAAABFhdWN0aW9uRnJlZWxhbmNlcgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAABl9TdGF0ZQUAAAAMc3RhdGVEaXNwdXRlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAANX0Rpc3B1dGVWb3RlcwAAAAAAAAAAAAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQACWAAAAAEFAAAADWF1Y3Rpb25DbGllbnQCAAAADV9Kb2JJbkRpc3B1dGUJAABkAAAAAgUAAAATY2xpZW50Sm9ic0luRGlzcHV0ZQAAAAAAAAAAAQUAAAADbmlsCQAAAgAAAAECAAAAK09ubHkgQ2xpZW50IGFuZCBGcmVlbGFuY2VyIGNhbiBvcGVuIGRpc3B1dGUJAAACAAAAAQIAAAArSW5jb3JyZWN0IGF1Y3Rpb24gc3RhdGUgZm9yIGRpc3B1dGUgb3BlbmluZwAAAAFpAQAAAAt2b3RlRGlzcHV0ZQAAAAIAAAAJYXVjdGlvbklkAAAABHZvdGUEAAAACWNhbGxlclB1YgkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAADGF1Y3Rpb25TdGF0ZQkBAAAAD2dldEF1Y3Rpb25TdGF0ZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAANYXVjdGlvbkNsaWVudAkBAAAAE2dldEF1Y3Rpb25DbGllbnRQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAAEGF1Y3Rpb25Bc3NldE5hbWUJAQAAABNnZXRBdWN0aW9uQXNzZXROYW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAAAxhdWN0aW9uUHJpY2UJAQAAAA9nZXRBdWN0aW9uUHJpY2UAAAABBQAAAAlhdWN0aW9uSWQEAAAAEWF1Y3Rpb25GcmVlbGFuY2VyCQEAAAAXZ2V0QXVjdGlvbkZyZWVsYW5jZXJQdWIAAAABBQAAAAlhdWN0aW9uSWQEAAAACmNvbW1pc3Npb24JAABpAAAAAgkAAGgAAAACBQAAAAxhdWN0aW9uUHJpY2UAAAAAAAAAAAMAAAAAAAAAAGQEAAAAEGF1Y3Rpb25Bc3NldElkNTgJAQAAABFBc3NldE5hbWVUb0Jhc2U1OAAAAAEFAAAAEGF1Y3Rpb25Bc3NldE5hbWUEAAAAE2NsaWVudEpvYnNJbkRpc3B1dGUJAQAAAAZnZXRJbnQAAAABCQABLAAAAAIJAAJYAAAAAQUAAAANYXVjdGlvbkNsaWVudAIAAAAOX0pvYnNJbkRpc3B1dGUEAAAAGWZyZWVsYW5jZXJQZW5kaW5nRWFybmluZ3MJAQAAAAZnZXRJbnQAAAABCQABLAAAAAIJAAJYAAAAAQUAAAARYXVjdGlvbkZyZWVsYW5jZXICAAAAEF9QZW5kaW5nRWFybmluZ3MEAAAAEmNhbGxlcklzQW1iYXNzYWRvcgMDAwMDCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAALYW1iYXNzYWRvcjEGCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAALYW1iYXNzYWRvcjIGCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAALYW1iYXNzYWRvcjMGCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAALYW1iYXNzYWRvcjQGCQAAAAAAAAIFAAAACWNhbGxlclB1YgUAAAALYW1iYXNzYWRvcjUJAAJYAAAAAQUAAAAJY2FsbGVyUHViCQAAAgAAAAECAAAALU9ubHkgZGVmaW5lZCBhbWJhc3NhZG9ycyBjYW4gdm90ZSBpbiBkaXNwdXRlcwQAAAAHbmV3Vm90ZQMDCQAAAAAAAAIFAAAABHZvdGUFAAAABmNsaWVudAYJAAAAAAAAAgUAAAAEdm90ZQUAAAAKZnJlZWxhbmNlcgUAAAAEdm90ZQkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABxWb3RlIGlzIGluY29ycmVjdC4gTXVzdCBiZTogBQAAAAZjbGllbnQCAAAABCBvciAFAAAACmZyZWVsYW5jZXIEAAAACG5ld1ZvdGVyBAAAAAhrZXlWb3RlcgkAASwAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAMX0RpcHV0ZVZvdGVfBQAAABJjYWxsZXJJc0FtYmFzc2Fkb3IEAAAACnZhbHVlVm90ZXIJAAQdAAAAAgUAAAAEdGhpcwUAAAAIa2V5Vm90ZXIEAAAAByRtYXRjaDAFAAAA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aWNlCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADV9EaXNwdXRlVm90ZXMJAABkAAAAAgUAAAALdm90ZXNOdW1iZXIAAAAAAAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAZfU3RhdGUFAAAAFHN0YXRlRGlzcHV0ZVJlc29sdmVkCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAJYXVjdGlvbklkAgAAAAxfRGlwdXRlVm90ZV8FAAAAEmNhbGxlcklzQW1iYXNzYWRvcgUAAAAHbmV3Vm90ZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAABBhdWN0aW9uQXNzZXROYW1lAgAAAAhfRnJlZXplZAUAAAARbmV3RnJlZXplZEJhbGFuY2UJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAAlgAAAABBQAAAA1hdWN0aW9uQ2xpZW50AgAAAA1fSm9iSW5EaXNwdXRlCQAAZQAAAAIFAAAAE2NsaWVudEpvYnNJbkRpc3B1dGUAAAAAAAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAAlgAAAABBQAAABFhdWN0aW9uRnJlZWxhbmNlcgIAAAAQX1BlbmRpbmdFYXJuaW5ncwkAAGUAAAACBQAAABlmcmVlbGFuY2VyUGVuZGluZ0Vhcm5pbmdzBQAAAAxhdWN0aW9uUHJpY2UFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAAA1kaXNwdXRlV2lubmVyBQAAABJwYXltZW50V2l0aG91dENvbW0FAAAAEGF1Y3Rpb25Bc3NldElkNTgFAAAAA25pbAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADV9EaXNwdXRlVm90ZXMJAABkAAAAAgUAAAALdm90ZXNOdW1iZXIAAAAAAAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAADF9EaXB1dGVWb3RlXwUAAAASY2FsbGVySXNBbWJhc3NhZG9yBQAAAAduZXdWb3RlBQAAAANuaWwJAAACAAAAAQkAASwAAAACAgAAABpJbmNvcnJlY3Qgc3RhdGUuIE11c3QgYmU6IAUAAAAMc3RhdGVEaXNwdXRlAAAAAWkBAAAADHdvcmtIYW5kT3ZlcgAAAAEAAAAJYXVjdGlvbklkBAAAAAljYWxsZXJQdWIJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAAxhdWN0aW9uU3RhdGUJAQAAAA9nZXRBdWN0aW9uU3RhdGUAAAABBQAAAAlhdWN0aW9uSWQEAAAADWF1Y3Rpb25DbGllbnQJAQAAABNnZXRBdWN0aW9uQ2xpZW50UHViAAAAAQUAAAAJYXVjdGlvbklkBAAAAAxhdWN0aW9uU3RhcnQJAQAAABNnZXRBdWN0aW9uU3RhcnRUaW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAAA9hdWN0aW9uRHVyYXRpb24JAQAAABZnZXRBdWN0aW9uRHVyYXRpb25UaW1lAAAAAQUAAAAJYXVjdGlvbklkBAAAABlhdWN0aW9uQmxvY2tzRm9yRXhlY3V0aW9uCQEAAAAcZ2V0QXVjdGlvbkpvYlBlcmZvcm1hbmNlVGltZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAARYXVjdGlvbkZyZWVsYW5jZXIJAQAAABdnZXRBdWN0aW9uRnJlZWxhbmNlclB1YgAAAAEFAAAACWF1Y3Rpb25JZAQAAAATY2xpZW50Sm9ic0luRGlzcHV0ZQkBAAAABmdldEludAAAAAEJAAEsAAAAAgkAAlgAAAABBQAAAA1hdWN0aW9uQ2xpZW50AgAAAA5fSm9ic0luRGlzcHV0ZQQAAAALY3VycmVudFRpbWUFAAAABmhlaWdodAQAAAASZnJlZWxhbmNlclB1YkNoZWNrAwkAAAAAAAACBQAAAAljYWxsZXJQdWIFAAAAEWF1Y3Rpb25GcmVlbGFuY2VyBQAAAAljYWxsZXJQdWIJAAACAAAAAQIAAAA0T25seSBhIGZyZWVsYW5jZXIgY2FuIGluZGljYXRlIHRoYXQgdGhlIHdvcmsgaXMgZG9uZQQAAAAKdGltZUlzT3ZlcgkAAGYAAAACCQAAZQAAAAIFAAAAC2N1cnJlbnRUaW1lBQAAAAxhdWN0aW9uU3RhcnQFAAAAGWF1Y3Rpb25CbG9ja3NGb3JFeGVjdXRpb24DCQAAAAAAAAIFAAAADGF1Y3Rpb25TdGF0ZQUAAAAPc3RhdGVJblByb2dyZXNzAwUAAAAKdGltZUlzT3ZlcgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAlhdWN0aW9uSWQCAAAABl9TdGF0ZQUAAAAMc3RhdGVEaXNwdXRlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAANX0Rpc3B1dGVWb3RlcwIAAAABMAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQACWAAAAAEFAAAADWF1Y3Rpb25DbGllbnQCAAAADV9Kb2JJbkRpc3B1dGUJAABkAAAAAgUAAAATY2xpZW50Sm9ic0luRGlzcHV0ZQAAAAAAAAAAAQUAAAADbmlsCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACWF1Y3Rpb25JZAIAAAAGX1N0YXRlBQAAABFzdGF0ZVdhaXQ0Q29uZmlybQUAAAADbmlsCQAAAgAAAAECAAAAGkF1Y3Rpb24gc3RhdGUgaXMgaW5jb3JyZWN0AAAAAWkBAAAACmFjY2VwdFdvcmsAAAABAAAACWF1Y3Rpb25JZAQAAAAJY2FsbGVyUHViCQEAAAAHZXh0cmFjdAAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQQAAAAMYXVjdGlvblN0YXRlCQEAAAAPZ2V0QXVjdGlvblN0YXRlAAAAAQUAAAAJYXVjdGlvbklkBAAAAA1hdWN0aW9uQ2xpZW50CQEAAAATZ2V0QXVjdGlvbkNsaWVudFB1YgAAAAEFAAAACWF1Y3Rpb25JZAQAAAAMYXVjdGlvblN0YXJ0CQEAAAATZ2V0QXVjdGlvblN0YXJ0VGltZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAAPYXVjdGlvbkR1cmF0aW9uCQEAAAAWZ2V0QXVjdGlvbkR1cmF0aW9uVGltZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAAQYXVjdGlvbkFzc2V0TmFtZQkBAAAAE2dldEF1Y3Rpb25Bc3NldE5hbWUAAAABBQAAAAlhdWN0aW9uSWQEAAAADGF1Y3Rpb25QcmljZQkBAAAAD2dldEF1Y3Rpb25QcmljZQAAAAEFAAAACWF1Y3Rpb25JZAQAAAARYXVjdGlvbkZyZWVsYW5jZXIJAQAAABdnZXRBdWN0aW9uRnJlZWxhbmNlclB1YgAAAAEFAAAACWF1Y3Rpb25JZAQAAAALam9ic09uR29pbmcJAQAAAAZnZXRJbnQAAAABCQABLAAAAAIJAAJYAAAAAQUAAAANYXVjdGlvbkNsaWVudAIAAAAMX0pvYnNPbkdvaW5nBAAAABlmcmVlbGFuY2VyUGVuZGluZ0Vhcm5pbmdzCQEAAAAGZ2V0SW50AAAAAQkAASwAAAACCQACWAAAAAEFAAAAEWF1Y3Rpb25GcmVlbGFuY2VyAgAAABBfUGVuZGluZ0Vhcm5pbmdzBAAAABZmcmVlbGFuY2VyUGFpZEVhcm5pbmdzCQEAAAAGZ2V0SW50AAAAAQkAASwAAAACCQACWAAAAAEFAAAAEWF1Y3Rpb25GcmVlbGFuY2VyAgAAAA1fUGFpZEVhcm5pbmdzBAAAAA5kQXBwQ29tbWlzc2lvbgkAAGkAAAACCQAAaAAAAAIFAAAADGF1Y3Rpb25QcmljZQAAAAAAAAAAAwAAAAAAAAAAZAQAAAARYW1vdW50V2l0aG91dENvbW0JAABlAAAAAgUAAAAMYXVjdGlvblByaWNlBQAAAA5kQXBwQ29tbWlzc2lvbgQAAAAQYXVjdGlvbkFzc2V0SWQ1OAkBAAAAEUFzc2V0TmFtZVRvQmFzZTU4AAAAAQUAAAAQYXVjdGlvbkFzc2V0TmFtZQQAAAARbmV3RnJlZXplZEJhbGFuY2UJAQAAABZkZWNyZWFzZUZyZWV6ZWRCYWxhbmNlAAAAAgUAAAAQYXVjdGlvbkFzc2V0TmFtZQUA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", "chainId": 84, "height": 716475, "spentComplexity": 0 } View: original | compacted Prev: DQF1ckC5oYxqfejNucHLwk5vZAuAbVyYaf6zeFwWZo8o Next: DUKzfnHFRiBkK3G387TYM1CBqqwEZrdejkfsmiM9Us7q Diff:
OldNewDifferences
3131
3232 let o = "FL"
3333
34-let p = base58'1'
34+let p = base58'FneCJqM5BP2eAuyteMiuEEHYALrE4axhEfcpHVGbdr5s'
3535
36-let q = base58'1'
36+let q = base58'6QAMdssb1GJjpQVQQcnx8fKU8WhtcF9ZsQhifdThAEK8'
3737
38-let r = base58'1'
38+let r = base58'2ituwW7DSRsLP3Vcbnpr98QUQMGFRWKmyYPFqsUKRDoP'
3939
40-let s = base58'1'
40+let s = base58'ANsPQocEESyLb3yQqk2pwCdoK7PJQxLoZVpYvsm3SxUG'
4141
42-let t = base58'1'
42+let t = base58'13VixwQin1MzZCyY69NSWMSBNEV27Rzc159o7uZXR9VS'
4343
4444 func u (v) = (v + "_AuctionData")
4545
500500 let aq = V(v)
501501 let be = ai(v)
502502 let bf = w((toBase58String(aq) + "_JobsInDispute"))
503- if (if ((ay == f))
503+ if (if ((ay == i))
504504 then true
505- else (ay == g))
506- then throw("Incorrect auction state for dispute opening")
507- else if (if ((ba == aq))
505+ else (ay == j))
506+ then if (if ((ba == aq))
508507 then true
509508 else (ba == be))
510509 then WriteSet([DataEntry((v + "_State"), l), DataEntry((v + "_DisputeVotes"), 0), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf + 1))])
511510 else throw("Only Client and Freelancer can open dispute")
511+ else throw("Incorrect auction state for dispute opening")
512512 }
513513
514514
524524 let bh = ((J * 3) / 100)
525525 let aB = B(C)
526526 let bf = w((toBase58String(aq) + "_JobsInDispute"))
527+ let aS = w((toBase58String(be) + "_PendingEarnings"))
527528 let bi = if (if (if (if (if ((Q == p))
528529 then true
529530 else (Q == q))
597598 then (J - bh)
598599 else (J - (bh * 2))
599600 let aw = O(C, J)
600- ScriptResult(WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry((v + "_State"), m), DataEntry(((v + "_DiputeVote_") + bi), bj), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf - 1))]), TransferSet([ScriptTransfer(addressFromPublicKey(bp), bC, aB)]))
601+ ScriptResult(WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry((v + "_State"), m), DataEntry(((v + "_DiputeVote_") + bi), bj), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf - 1)), DataEntry((toBase58String(be) + "_PendingEarnings"), (aS - J))]), TransferSet([ScriptTransfer(addressFromPublicKey(bp), bC, aB)]))
601602 }
602603 else WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry(((v + "_DiputeVote_") + bi), bj)])
603604 else throw(("Incorrect state. Must be: " + l))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 1440
55
66 let b = unit
77
88 let c = base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'
99
1010 let d = base58'Gtb1WRznfchDnTh37ezoDTJ4wcoKaRsKqKjJjy7nm2zU'
1111
1212 let e = base58'Ft8X1v1LTa1ABafufpaCWyVj8KkaxUWE6xBhW6sNFJck'
1313
1414 let f = "Opened"
1515
1616 let g = "Suggested"
1717
1818 let h = "Canceled"
1919
2020 let i = "InProgress"
2121
2222 let j = "WaitForConfirmation"
2323
2424 let k = "Completed"
2525
2626 let l = "Dispute"
2727
2828 let m = "DisputeResolved"
2929
3030 let n = "CMR"
3131
3232 let o = "FL"
3333
34-let p = base58'1'
34+let p = base58'FneCJqM5BP2eAuyteMiuEEHYALrE4axhEfcpHVGbdr5s'
3535
36-let q = base58'1'
36+let q = base58'6QAMdssb1GJjpQVQQcnx8fKU8WhtcF9ZsQhifdThAEK8'
3737
38-let r = base58'1'
38+let r = base58'2ituwW7DSRsLP3Vcbnpr98QUQMGFRWKmyYPFqsUKRDoP'
3939
40-let s = base58'1'
40+let s = base58'ANsPQocEESyLb3yQqk2pwCdoK7PJQxLoZVpYvsm3SxUG'
4141
42-let t = base58'1'
42+let t = base58'13VixwQin1MzZCyY69NSWMSBNEV27Rzc159o7uZXR9VS'
4343
4444 func u (v) = (v + "_AuctionData")
4545
4646
4747 func w (x) = {
4848 let y = getInteger(this, x)
4949 let z = y
5050 if ($isInstanceOf(z, "Int"))
5151 then {
5252 let A = z
5353 A
5454 }
5555 else 0
5656 }
5757
5858
5959 func B (C) = if ((C == "WAVES"))
6060 then b
6161 else if ((C == "BTC"))
6262 then c
6363 else if ((C == "EUR"))
6464 then d
6565 else if ((C == "USD"))
6666 then e
6767 else throw("Incorrect Asset Id")
6868
6969
7070 func D (E,F,G) = ((E - F) > G)
7171
7272
7373 func H (I,J) = if ((I > J))
7474 then throw("Bid amount must be lower or equal than auctionPrice")
7575 else I
7676
7777
7878 func K (L,J) = {
7979 let M = getInteger(this, (L + "_Freezed"))
8080 let N = {
8181 let z = M
8282 if ($isInstanceOf(z, "Int"))
8383 then {
8484 let A = z
8585 A
8686 }
8787 else 0
8888 }
8989 (N + J)
9090 }
9191
9292
9393 func O (L,J) = {
9494 let M = getInteger(this, (L + "_Freezed"))
9595 let N = {
9696 let z = M
9797 if ($isInstanceOf(z, "Int"))
9898 then {
9999 let A = z
100100 A
101101 }
102102 else 0
103103 }
104104 let A = (N - J)
105105 if ((A >= 0))
106106 then A
107107 else throw("Freezed amount couldn't be less than 0")
108108 }
109109
110110
111111 func P (Q) = {
112112 let P = getString(this, (Q + "_Freelancer"))
113113 let z = P
114114 if ($isInstanceOf(z, "String"))
115115 then {
116116 let A = z
117117 Q
118118 }
119119 else throw("Only registered users can make bets")
120120 }
121121
122122
123123 func R (S) = if ((S > 0))
124124 then S
125125 else throw("Amount must be higher then 0")
126126
127127
128128 func T (v) = {
129129 let U = getString(this, (v + "_State"))
130130 let z = U
131131 if ($isInstanceOf(z, "String"))
132132 then {
133133 let A = z
134134 A
135135 }
136136 else throw("Auction State was not found")
137137 }
138138
139139
140140 func V (v) = {
141141 let W = getString(this, (v + "_AuctionClient"))
142142 let X = {
143143 let z = W
144144 if ($isInstanceOf(z, "String"))
145145 then {
146146 let A = z
147147 A
148148 }
149149 else throw("Auction Client was not found")
150150 }
151151 fromBase58String(X)
152152 }
153153
154154
155155 func Y (v) = {
156156 let Z = getInteger(this, (v + "_AuctionStart"))
157157 let z = Z
158158 if ($isInstanceOf(z, "Int"))
159159 then {
160160 let A = z
161161 A
162162 }
163163 else throw("Auction Start time was not found")
164164 }
165165
166166
167167 func aa (v) = {
168168 let ab = getInteger(this, (v + "_AuctionDuration"))
169169 let z = ab
170170 if ($isInstanceOf(z, "Int"))
171171 then {
172172 let A = z
173173 A
174174 }
175175 else throw("Auction duration time was not found")
176176 }
177177
178178
179179 func ac (v) = {
180180 let ad = getInteger(this, (v + "_JobPerformance"))
181181 let z = ad
182182 if ($isInstanceOf(z, "Int"))
183183 then {
184184 let A = z
185185 A
186186 }
187187 else throw("Auction job performance time was not found")
188188 }
189189
190190
191191 func ae (v) = {
192192 let af = getString(this, (v + "_AssetName"))
193193 let z = af
194194 if ($isInstanceOf(z, "String"))
195195 then {
196196 let A = z
197197 A
198198 }
199199 else throw("Auction asset name was not found")
200200 }
201201
202202
203203 func ag (v) = {
204204 let ah = getInteger(this, (v + "_Price"))
205205 let z = ah
206206 if ($isInstanceOf(z, "Int"))
207207 then {
208208 let A = z
209209 A
210210 }
211211 else throw("Auction price was not found")
212212 }
213213
214214
215215 func ai (v) = {
216216 let W = getString(this, (v + "_HiredFreelancer"))
217217 let A = {
218218 let z = W
219219 if ($isInstanceOf(z, "String"))
220220 then {
221221 let A = z
222222 A
223223 }
224224 else throw("Auction Client was not found")
225225 }
226226 fromBase58String(A)
227227 }
228228
229229
230230 @Callable(aj)
231231 func freelancerSignUp (ak) = {
232232 let al = toBase58String(aj.callerPublicKey)
233233 let am = getString(this, (al + "_Freelancer"))
234234 if (isDefined(am))
235235 then throw("User already registered")
236236 else WriteSet([DataEntry((al + "_Freelancer"), ak), DataEntry((al + "_PendingEarnings"), 0), DataEntry((al + "_PaidEarnings"), 0), DataEntry((al + "_TotalEarnings"), 0), DataEntry((al + "_JobsPending"), 0), DataEntry((al + "_JobsCompleted"), 0), DataEntry((al + "_JobsTotal"), 0)])
237237 }
238238
239239
240240
241241 @Callable(aj)
242242 func clientSignUp (ak) = {
243243 let al = toBase58String(aj.callerPublicKey)
244244 let am = getString(this, (al + "_Client"))
245245 if (isDefined(am))
246246 then throw("User already registered")
247247 else WriteSet([DataEntry((al + "_Client"), ak), DataEntry((al + "_JobsCreated"), 0), DataEntry((al + "_JobsOnGoing"), 0), DataEntry((al + "_JobInDispute"), 0)])
248248 }
249249
250250
251251
252252 @Callable(aj)
253253 func createAuction (an,ao,ap) = {
254254 let v = toBase58String(aj.transactionId)
255255 let aq = toBase58String(aj.callerPublicKey)
256256 let ar = extract(aj.payment)
257257 let S = ar.amount
258258 let J = R(S)
259259 let as = height
260260 let at = (ao * a)
261261 let au = (an * a)
262262 let L = if (!(isDefined(ar.assetId)))
263263 then "WAVES"
264264 else if ((ar.assetId == c))
265265 then "BTC"
266266 else if ((ar.assetId == d))
267267 then "EUR"
268268 else if ((ar.assetId == e))
269269 then "USD"
270270 else throw("AssetId is incorrect")
271271 let av = w((aq + "_JobsCreated"))
272272 let aw = K(L, J)
273273 WriteSet([DataEntry((v + "_State"), f), DataEntry((v + "_Info"), ap), DataEntry((v + "_AuctionClient"), aq), DataEntry((v + "_AuctionStart"), as), DataEntry((v + "_AuctionDuration"), at), DataEntry((v + "_JobPerformance"), au), DataEntry((v + "_AssetName"), L), DataEntry((v + "_Price"), J), DataEntry((L + "_Freezed"), aw), DataEntry((aq + "_JobsCreated"), (av + 1))])
274274 }
275275
276276
277277
278278 @Callable(aj)
279279 func makeBid (v,I) = {
280280 let Q = toBase58String(aj.callerPublicKey)
281281 let ax = height
282282 let ay = T(v)
283283 let aq = V(v)
284284 let as = Y(v)
285285 let az = aa(v)
286286 let aA = ac(v)
287287 let C = ae(v)
288288 let J = ag(v)
289289 let aB = B(C)
290290 let aC = P(Q)
291291 let aD = ((J * 3) / 100)
292292 let aw = O(C, J)
293293 let aE = H(I, J)
294294 let aF = D(ax, as, az)
295295 if (aF)
296296 then if ((ay == f))
297297 then ScriptResult(WriteSet([DataEntry((v + "_State"), h), DataEntry((C + "_Freezed"), aw)]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), (J - aD), aB)]))
298298 else if ((ay == g))
299299 then {
300300 let aG = {
301301 let aH = getString(this, (v + "_LowestBidderPub"))
302302 let z = aH
303303 if ($isInstanceOf(z, "String"))
304304 then {
305305 let A = z
306306 A
307307 }
308308 else throw("Auction lowest bidder was not found")
309309 }
310310 let aI = {
311311 let aJ = getInteger(this, ((v + "_Bid_") + aG))
312312 let z = aJ
313313 if ($isInstanceOf(z, "Int"))
314314 then {
315315 let A = z
316316 A
317317 }
318318 else throw("Auction lowest bid was not found")
319319 }
320320 let aK = ((J - aI) - aD)
321321 ScriptResult(WriteSet([DataEntry((v + "_State"), i), DataEntry((v + "_HiredFreelancer"), aG), DataEntry((v + "_Price"), aI)]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), aK, aB)]))
322322 }
323323 else throw("Incorrect auction state")
324324 else if ((ay == f))
325325 then WriteSet([DataEntry(((v + "_Bid_") + aC), aE), DataEntry((v + "_State"), g), DataEntry((v + "_LowestBidderPub"), Q)])
326326 else if ((ay == g))
327327 then {
328328 let aL = {
329329 let aM = getString(this, (v + "_LowestBidderPub"))
330330 let z = aM
331331 if ($isInstanceOf(z, "String"))
332332 then {
333333 let A = z
334334 A
335335 }
336336 else throw("Auction lowest bidder was not found")
337337 }
338338 let aN = {
339339 let aO = getInteger(this, ((v + "_Bid_") + aL))
340340 let aP = {
341341 let z = aO
342342 if ($isInstanceOf(z, "Int"))
343343 then {
344344 let A = z
345345 A
346346 }
347347 else throw("Auction lowest bid was not found")
348348 }
349349 if ((aP > aE))
350350 then aC
351351 else aL
352352 }
353353 WriteSet([DataEntry((v + "_LowestBidderPub"), aN), DataEntry(((v + "_Bid_") + aC), aE)])
354354 }
355355 else throw(((((("Incorrect jobId state. Now: " + ay) + ", must be: ") + f) + " or ") + g))
356356 }
357357
358358
359359
360360 @Callable(aj)
361361 func chooseFreelancer (v,aQ) = {
362362 let Q = extract(aj.callerPublicKey)
363363 let ax = height
364364 let ay = T(v)
365365 let aq = V(v)
366366 let as = Y(v)
367367 let az = aa(v)
368368 let C = ae(v)
369369 let J = ag(v)
370370 let aB = B(C)
371371 let aR = w((toBase58String(aq) + "_JobsOnGoing"))
372372 let aS = w((aQ + "_PendingEarnings"))
373373 let aT = w((aQ + "_TotalEarnings"))
374374 let aU = {
375375 let aV = ((v + "_Bid_") + aQ)
376376 let aW = getInteger(this, aV)
377377 let z = aW
378378 if ($isInstanceOf(z, "Int"))
379379 then {
380380 let A = z
381381 A
382382 }
383383 else throw("Freelancer's bet was not found")
384384 }
385385 let aF = D(ax, as, az)
386386 if ((Q == aq))
387387 then if (aF)
388388 then if ((ay == f))
389389 then {
390390 let aw = O(C, J)
391391 let aD = ((J * 3) / 100)
392392 ScriptResult(WriteSet([DataEntry((v + "_State"), h), DataEntry((C + "_Freezed"), aw)]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), (J - aD), aB)]))
393393 }
394394 else if ((ay == g))
395395 then {
396396 let aG = {
397397 let aH = getString(this, (v + "_LowestBidderPub"))
398398 let z = aH
399399 if ($isInstanceOf(z, "String"))
400400 then {
401401 let A = z
402402 A
403403 }
404404 else throw("Auction lowest bidder was not found")
405405 }
406406 let aI = {
407407 let aJ = getInteger(this, ((v + "_Bid_") + aG))
408408 let z = aJ
409409 if ($isInstanceOf(z, "Int"))
410410 then {
411411 let A = z
412412 A
413413 }
414414 else throw("Auction lowest bid was not found")
415415 }
416416 let aK = (J - aI)
417417 let aw = O(C, aK)
418418 ScriptResult(WriteSet([DataEntry((v + "_State"), i), DataEntry((v + "_HiredFreelancer"), aG), DataEntry((v + "_Price"), aI), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobsOnGoing"), (aR + 1)), DataEntry((aQ + "_PendingEarnings"), (aS + aI)), DataEntry((aQ + "_TotalEarnings"), (aT + aI))]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), aK, aB)]))
419419 }
420420 else throw("Incorrect auction state")
421421 else {
422422 let aX = {
423423 let aC = getInteger(this, ((v + "_Bid_") + aQ))
424424 let z = aC
425425 if ($isInstanceOf(z, "Int"))
426426 then {
427427 let A = z
428428 aQ
429429 }
430430 else throw("Error: Incorrect freelancerPub")
431431 }
432432 let aI = {
433433 let aY = getInteger(this, ((v + "_Bid_") + aQ))
434434 let z = aY
435435 if ($isInstanceOf(z, "Int"))
436436 then {
437437 let A = z
438438 A
439439 }
440440 else throw("Auction lowest bidder was not found")
441441 }
442442 let aK = (J - aU)
443443 let aw = O(C, aK)
444444 ScriptResult(WriteSet([DataEntry((v + "_State"), i), DataEntry((v + "_HiredFreelancer"), aX), DataEntry((v + "_Price"), aI), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobsOnGoing"), (aR + 1)), DataEntry((aQ + "_PendingEarnings"), (aS + aI)), DataEntry((aQ + "_TotalEarnings"), (aT + aI))]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), (aK + 1), aB)]))
445445 }
446446 else throw("Only auction customer can choose a freelancer")
447447 }
448448
449449
450450
451451 @Callable(aj)
452452 func increaseExecutionTime (v,aZ) = {
453453 let ba = extract(aj.callerPublicKey)
454454 let ay = T(v)
455455 let aq = V(v)
456456 let aA = ac(v)
457457 let bb = {
458458 let bc = (aZ * a)
459459 if ((bc > aA))
460460 then bc
461461 else throw("New execution time must more than current execution time")
462462 }
463463 if ((ba == aq))
464464 then if (if (if ((ay == f))
465465 then true
466466 else (ay == g))
467467 then true
468468 else (ay == i))
469469 then WriteSet([DataEntry((v + "_JobPerformance"), bb)])
470470 else throw("Incorrect state")
471471 else throw("Only Client can increase execution time")
472472 }
473473
474474
475475
476476 @Callable(aj)
477477 func cancelAuction (v) = {
478478 let Q = extract(aj.callerPublicKey)
479479 let ay = T(v)
480480 let aq = V(v)
481481 let C = ae(v)
482482 let J = ag(v)
483483 let aB = B(C)
484484 let aD = ((J * 3) / 100)
485485 let bd = (J - aD)
486486 let aw = O(C, J)
487487 if ((Q == aq))
488488 then if ((ay == f))
489489 then ScriptResult(WriteSet([DataEntry((v + "_State"), h), DataEntry((C + "_Freezed"), aw)]), TransferSet([ScriptTransfer(addressFromPublicKey(aq), bd, aB)]))
490490 else throw("Auction can be canceled only by auction owner.")
491491 else throw("Only Client can cancel auction")
492492 }
493493
494494
495495
496496 @Callable(aj)
497497 func openDispute (v) = {
498498 let ba = extract(aj.callerPublicKey)
499499 let ay = T(v)
500500 let aq = V(v)
501501 let be = ai(v)
502502 let bf = w((toBase58String(aq) + "_JobsInDispute"))
503- if (if ((ay == f))
503+ if (if ((ay == i))
504504 then true
505- else (ay == g))
506- then throw("Incorrect auction state for dispute opening")
507- else if (if ((ba == aq))
505+ else (ay == j))
506+ then if (if ((ba == aq))
508507 then true
509508 else (ba == be))
510509 then WriteSet([DataEntry((v + "_State"), l), DataEntry((v + "_DisputeVotes"), 0), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf + 1))])
511510 else throw("Only Client and Freelancer can open dispute")
511+ else throw("Incorrect auction state for dispute opening")
512512 }
513513
514514
515515
516516 @Callable(aj)
517517 func voteDispute (v,bg) = {
518518 let Q = extract(aj.callerPublicKey)
519519 let ay = T(v)
520520 let aq = V(v)
521521 let C = ae(v)
522522 let J = ag(v)
523523 let be = ai(v)
524524 let bh = ((J * 3) / 100)
525525 let aB = B(C)
526526 let bf = w((toBase58String(aq) + "_JobsInDispute"))
527+ let aS = w((toBase58String(be) + "_PendingEarnings"))
527528 let bi = if (if (if (if (if ((Q == p))
528529 then true
529530 else (Q == q))
530531 then true
531532 else (Q == r))
532533 then true
533534 else (Q == s))
534535 then true
535536 else (Q == t))
536537 then toBase58String(Q)
537538 else throw("Only defined ambassadors can vote in disputes")
538539 let bj = if (if ((bg == n))
539540 then true
540541 else (bg == o))
541542 then bg
542543 else throw(((("Vote is incorrect. Must be: " + n) + " or ") + o))
543544 let bk = {
544545 let bl = ((v + "_DiputeVote_") + bi)
545546 let bm = getString(this, bl)
546547 let z = bm
547548 if ($isInstanceOf(z, "String"))
548549 then {
549550 let A = z
550551 throw("User already voted")
551552 }
552553 else bi
553554 }
554555 let bn = {
555556 let bo = getInteger(this, (v + "_DisputeVotes"))
556557 let z = bo
557558 if ($isInstanceOf(z, "Int"))
558559 then {
559560 let A = z
560561 A
561562 }
562563 else throw("VotesNumber was not found")
563564 }
564565 if ((ay == l))
565566 then if ((bn == 4))
566567 then {
567568 let bp = {
568569 let bq = getString(this, ((v + "_DiputeVote_") + toBase58String(p)))
569570 let br = getString(this, ((v + "_DiputeVote_") + toBase58String(q)))
570571 let bs = getString(this, ((v + "_DiputeVote_") + toBase58String(r)))
571572 let bt = getString(this, ((v + "_DiputeVote_") + toBase58String(s)))
572573 let bu = getString(this, ((v + "_DiputeVote_") + toBase58String(t)))
573574 let bv = if ((bq == n))
574575 then 1
575576 else 0
576577 let bw = if ((br == n))
577578 then 1
578579 else 0
579580 let bx = if ((bs == n))
580581 then 1
581582 else 0
582583 let by = if ((bt == n))
583584 then 1
584585 else 0
585586 let bz = if ((bu == n))
586587 then 1
587588 else 0
588589 let bA = if ((bj == n))
589590 then 1
590591 else 0
591592 let bB = (((((bv + bw) + bx) + by) + bz) + bA)
592593 if ((bB > 2))
593594 then aq
594595 else be
595596 }
596597 let bC = if ((bp == aq))
597598 then (J - bh)
598599 else (J - (bh * 2))
599600 let aw = O(C, J)
600- ScriptResult(WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry((v + "_State"), m), DataEntry(((v + "_DiputeVote_") + bi), bj), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf - 1))]), TransferSet([ScriptTransfer(addressFromPublicKey(bp), bC, aB)]))
601+ ScriptResult(WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry((v + "_State"), m), DataEntry(((v + "_DiputeVote_") + bi), bj), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf - 1)), DataEntry((toBase58String(be) + "_PendingEarnings"), (aS - J))]), TransferSet([ScriptTransfer(addressFromPublicKey(bp), bC, aB)]))
601602 }
602603 else WriteSet([DataEntry((v + "_DisputeVotes"), (bn + 1)), DataEntry(((v + "_DiputeVote_") + bi), bj)])
603604 else throw(("Incorrect state. Must be: " + l))
604605 }
605606
606607
607608
608609 @Callable(aj)
609610 func workHandOver (v) = {
610611 let Q = extract(aj.callerPublicKey)
611612 let ay = T(v)
612613 let aq = V(v)
613614 let as = Y(v)
614615 let az = aa(v)
615616 let aA = ac(v)
616617 let be = ai(v)
617618 let bf = w((toBase58String(aq) + "_JobsInDispute"))
618619 let E = height
619620 let bD = if ((Q == be))
620621 then Q
621622 else throw("Only a freelancer can indicate that the work is done")
622623 let bE = ((E - as) > aA)
623624 if ((ay == i))
624625 then if (bE)
625626 then WriteSet([DataEntry((v + "_State"), l), DataEntry((v + "_DisputeVotes"), "0"), DataEntry((toBase58String(aq) + "_JobInDispute"), (bf + 1))])
626627 else WriteSet([DataEntry((v + "_State"), j)])
627628 else throw("Auction state is incorrect")
628629 }
629630
630631
631632
632633 @Callable(aj)
633634 func acceptWork (v) = {
634635 let Q = extract(aj.callerPublicKey)
635636 let ay = T(v)
636637 let aq = V(v)
637638 let as = Y(v)
638639 let az = aa(v)
639640 let C = ae(v)
640641 let J = ag(v)
641642 let be = ai(v)
642643 let aR = w((toBase58String(aq) + "_JobsOnGoing"))
643644 let aS = w((toBase58String(be) + "_PendingEarnings"))
644645 let bF = w((toBase58String(be) + "_PaidEarnings"))
645646 let aD = ((J * 3) / 100)
646647 let bd = (J - aD)
647648 let aB = B(C)
648649 let aw = O(C, J)
649650 let bG = {
650651 let bH = getInteger(this, (toBase58String(be) + "_Rating"))
651652 let bI = {
652653 let z = bH
653654 if ($isInstanceOf(z, "Int"))
654655 then {
655656 let A = z
656657 A
657658 }
658659 else 0
659660 }
660661 (bI + 1)
661662 }
662663 if ((Q == aq))
663664 then if ((ay == j))
664665 then ScriptResult(WriteSet([DataEntry((v + "_State"), k), DataEntry((toBase58String(be) + "_Rating"), bG), DataEntry((C + "_Freezed"), aw), DataEntry((toBase58String(aq) + "_JobsOnGoing"), (aR - 1)), DataEntry((toBase58String(be) + "_PendingEarnings"), (aS - J)), DataEntry((toBase58String(be) + "_PaidEarnings"), (bF + J))]), TransferSet([ScriptTransfer(addressFromPublicKey(be), bd, aB)]))
665666 else throw(("Incorrect state. Must be: " + j))
666667 else throw("Only auction customer can use this function")
667668 }
668669
669670
670671 @Verifier(bJ)
671672 func bK () = if (sigVerify(bJ.bodyBytes, bJ.proofs[0], bJ.senderPublicKey))
672673 then {
673674 let z = bJ
674675 if ($isInstanceOf(z, "TransferTransaction"))
675676 then {
676677 let bL = z
677678 true
678679 }
679680 else if ($isInstanceOf(z, "SetScriptTransaction"))
680681 then {
681682 let bM = z
682683 true
683684 }
684685 else false
685686 }
686687 else false
687688

github/deemru/w8io/169f3d6 
85.65 ms