tx · HnAN5fcy312uGAVtMs9ZCcoBEU51nyRf3PyNe4DH7mw1

3Myn55vLkduxbX3ZXfiDCZhaQsLxYp1kmCy:  -0.01400000 Waves

2022.03.11 16:54 [1959375] smart account 3Myn55vLkduxbX3ZXfiDCZhaQsLxYp1kmCy > SELF 0.00000000 Waves

{ "type": 13, "id": "HnAN5fcy312uGAVtMs9ZCcoBEU51nyRf3PyNe4DH7mw1", "fee": 1400000, "feeAssetId": null, "timestamp": 1647006866537, "version": 1, "sender": "3Myn55vLkduxbX3ZXfiDCZhaQsLxYp1kmCy", "senderPublicKey": "9W33iCCNfmFxUbiC6XZcH5x7f6xfwC7Jb3BoExT5q2PV", "proofs": [ "5amdoSfjSctXsK1P6DopkJtaD9NXJwuSUg6k5KzQCgxkY4HSU7pREnGbrwutxHkTi8WQyV428Y6ktYDc9qwWd5w7" ], "script": "base64:AAIFAAAAAAAAADMIAhIICgYICAEBAQgSAwoBARIDCgEBEgQKAggIEgQKAggIEgMKAQgSAwoBCBIDCgEIEgAAAABkAAAAAANTRVACAAAAAl9fAAAAAAZTQ0FMRTgAAAAAAAAAAAgAAAAABU1VTFQ4AAAAAAAF9eEAAAAAAA5QT09MV0VJR0hUTVVMVAUAAAAFTVVMVDgBAAAABHN0cmYAAAACAAAAB2FkZHJlc3MAAAADa2V5CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5CQABLAAAAAIJAAEsAAAAAgIAAAAPbWFuZGF0b3J5IHRoaXMuBQAAAANrZXkCAAAADyBpcyBub3QgZGVmaW5lZAEAAAAMZ2V0SW50T3JaZXJvAAAAAgAAAAdhZGRyZXNzAAAAA2tleQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdhZGRyZXNzBQAAAANrZXkAAAAAAAAAAAABAAAAD2dldEludE9yRGVmYXVsdAAAAAMAAAAHYWRkcmVzcwAAAANrZXkAAAAKZGVmYXVsdFZhbAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAdhZGRyZXNzBQAAAANrZXkFAAAACmRlZmF1bHRWYWwBAAAADGdldEludE9yRmFpbAAAAAIAAAAHYWRkcmVzcwAAAANrZXkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAdhZGRyZXNzBQAAAANrZXkJAAEsAAAAAgkAASwAAAACAgAAAA9tYW5kYXRvcnkgdGhpcy4FAAAAA2tleQIAAAAPIGlzIG5vdCBkZWZpbmVkAQAAAANhYnMAAAABAAAAA3ZhbAMJAABmAAAAAgAAAAAAAAAAAAUAAAADdmFsCQEAAAABLQAAAAEFAAAAA3ZhbAUAAAADdmFsAQAAAAlhc0FueUxpc3QAAAABAAAAA3ZhbAQAAAAHJG1hdGNoMAUAAAADdmFsAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAlMaXN0W0FueV0EAAAACnZhbEFueUx5c3QFAAAAByRtYXRjaDAFAAAACnZhbEFueUx5c3QJAAACAAAAAQIAAAAbZmFpbCB0byBjYXN0IGludG8gTGlzdFtBbnldAQAAAAVhc0ludAAAAAEAAAADdmFsBAAAAAckbWF0Y2gwBQAAAAN2YWwDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAAGdmFsSW50BQAAAAckbWF0Y2gwBQAAAAZ2YWxJbnQJAAACAAAAAQIAAAAVZmFpbCB0byBjYXN0IGludG8gSW50AQAAABFrZXlGYWN0b3J5QWRkcmVzcwAAAAACAAAAHCVzJXNfX2NvbmZpZ19fZmFjdG9yeUFkZHJlc3MAAAAAGElkeEZhY3RvcnlDZmdTdGFraW5nRGFwcAAAAAAAAAAAAQAAAAAZSWR4RmFjdG9yeUNmZ0Jvb3N0aW5nRGFwcAAAAAAAAAAAAgAAAAAUSWR4RmFjdG9yeUNmZ0lkb0RhcHAAAAAAAAAAAAMAAAAAFUlkeEZhY3RvcnlDZmdUZWFtRGFwcAAAAAAAAAAABAAAAAAZSWR4RmFjdG9yeUNmZ0VtaXNzaW9uRGFwcAAAAAAAAAAABQAAAAAVSWR4RmFjdG9yeUNmZ1Jlc3REYXBwAAAAAAAAAAAGAAAAABlJZHhGYWN0b3J5Q2ZnU2xpcHBhZ2VEYXBwAAAAAAAAAAAHAAAAABRJZHhGYWN0b3J5Q2ZnRGFvRGFwcAAAAAAAAAAACAAAAAAaSWR4RmFjdG9yeUNmZ01hcmtldGluZ0RhcHAAAAAAAAAAAAkAAAAAGklkeEZhY3RvcnlDZmdHd3hSZXdhcmREYXBwAAAAAAAAAAAKAAAAABZJZHhGYWN0b3J5Q2ZnQmlyZHNEYXBwAAAAAAAAAAALAQAAAA1rZXlGYWN0b3J5Q2ZnAAAAAAIAAAARJXNfX2ZhY3RvcnlDb25maWcBAAAAGmtleUZhY3RvcnlMcDJBc3NldHNNYXBwaW5nAAAAAQAAAApscEFzc2V0U3RyCQAEuQAAAAIJAARMAAAAAgIAAAAGJXMlcyVzCQAETAAAAAIFAAAACmxwQXNzZXRTdHIJAARMAAAAAgIAAAAebWFwcGluZ3NfX2xwQXNzZXQyUG9vbENvbnRyYWN0BQAAAANuaWwFAAAAA1NFUAEAAAAQa2V5RmFjdG9yeUxwTGlzdAAAAAACAAAAECVzX19scFRva2Vuc0xpc3QBAAAAJmtleUZhY3RvcnlMcEFzc2V0VG9Qb29sQ29udHJhY3RBZGRyZXNzAAAAAQAAAApscEFzc2V0U3RyCQAEuQAAAAIJAARMAAAAAgIAAAAGJXMlcyVzCQAETAAAAAIFAAAACmxwQXNzZXRTdHIJAARMAAAAAgIAAAAebWFwcGluZ3NfX2xwQXNzZXQyUG9vbENvbnRyYWN0BQAAAANuaWwFAAAAA1NFUAEAAAAUa2V5RmFjdG9yeVBvb2xXZWlnaHQAAAABAAAAD2NvbnRyYWN0QWRkcmVzcwkABLkAAAACCQAETAAAAAICAAAABCVzJXMJAARMAAAAAgIAAAAKcG9vbFdlaWdodAkABEwAAAACBQAAAA9jb250cmFjdEFkZHJlc3MFAAAAA25pbAUAAAADU0VQAQAAABtrZXlGYWN0b3J5UG9vbFdlaWdodEhpc3RvcnkAAAACAAAAC3Bvb2xBZGRyZXNzAAAAA251bQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAASJXMlc19fcG9vbFdlaWdodF9fBQAAAAtwb29sQWRkcmVzcwIAAAACX18JAAGkAAAAAQUAAAADbnVtAQAAABhyZWFkRmFjdG9yeUFkZHJlc3NPckZhaWwAAAAACQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQEAAAAEc3RyZgAAAAIFAAAABHRoaXMJAQAAABFrZXlGYWN0b3J5QWRkcmVzcwAAAAABAAAACnJlYWRMcExpc3QAAAAACQAEtQAAAAIJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQdAAAAAgkBAAAAGHJlYWRGYWN0b3J5QWRkcmVzc09yRmFpbAAAAAAJAQAAABBrZXlGYWN0b3J5THBMaXN0AAAAAAIAAAAABQAAAANTRVABAAAAFHJlYWRGYWN0b3J5Q2ZnT3JGYWlsAAAAAQAAAAdmYWN0b3J5CQAEtQAAAAIJAQAAAARzdHJmAAAAAgUAAAAHZmFjdG9yeQkBAAAADWtleUZhY3RvcnlDZmcAAAAABQAAAANTRVABAAAAGGdldEJvb3N0aW5nQWRkcmVzc09yRmFpbAAAAAEAAAAKZmFjdG9yeUNmZwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkAAZEAAAACBQAAAApmYWN0b3J5Q2ZnBQAAABlJZHhGYWN0b3J5Q2ZnQm9vc3RpbmdEYXBwAQAAABhnZXRFbWlzc2lvbkFkZHJlc3NPckZhaWwAAAABAAAACmZhY3RvcnlDZmcJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAAGRAAAAAgUAAAAKZmFjdG9yeUNmZwUAAAAZSWR4RmFjdG9yeUNmZ0VtaXNzaW9uRGFwcAEAAAAXZ2V0U3Rha2luZ0FkZHJlc3NPckZhaWwAAAABAAAACmZhY3RvcnlDZmcJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAAGRAAAAAgUAAAAKZmFjdG9yeUNmZwUAAAAYSWR4RmFjdG9yeUNmZ1N0YWtpbmdEYXBwAQAAABlnZXRHd3hSZXdhcmRBZGRyZXNzT3JGYWlsAAAAAQAAAApmYWN0b3J5Q2ZnCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQABkQAAAAIFAAAACmZhY3RvcnlDZmcFAAAAGklkeEZhY3RvcnlDZmdHd3hSZXdhcmREYXBwAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAUJXNfX21hbmFnZXJQdWJsaWNLZXkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAbJXNfX3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5AQAAAB5rZXlFbWlzc2lvblJhdGVQZXJCbG9ja0N1cnJlbnQAAAAAAgAAABslcyVzX19yYXRlUGVyQmxvY2tfX2N1cnJlbnQBAAAAIWtleUVtaXNzaW9uUmF0ZVBlckJsb2NrTWF4Q3VycmVudAAAAAACAAAAHiVzJXNfX3JhdGVQZXJCbG9ja01heF9fY3VycmVudAEAAAAVa2V5RW1pc3Npb25TdGFydEJsb2NrAAAAAAIAAAAaJXMlc19fZW1pc3Npb25fX3N0YXJ0QmxvY2sBAAAAG2tleUVtaXNzaW9uRHVyYXRpb25JbkJsb2NrcwAAAAACAAAAGCVzJXNfX2VtaXNzaW9uX19kdXJhdGlvbgEAAAATa2V5RW1pc3Npb25FbmRCbG9jawAAAAACAAAAGCVzJXNfX2VtaXNzaW9uX19lbmRCbG9jawEAAAANa2V5TmV4dFBlcmlvZAAAAAACAAAADiVzX19uZXh0UGVyaW9kAQAAAB9rZXlHd3hSZXdhcmRFbWlzc2lvblN0YXJ0SGVpZ2h0AAAAAAIAAAAoJXMlc19fZ3d4UmV3YXJkRW1pc3Npb25QYXJ0X19zdGFydEhlaWdodAAAAAANSWR4Q2ZnQXNzZXRJZAAAAAAAAAAAAQAAAAATSWR4Q2ZnTWluTG9ja0Ftb3VudAAAAAAAAAAAAgAAAAAVSWR4Q2ZnTWluTG9ja0R1cmF0aW9uAAAAAAAAAAADAAAAABVJZHhDZmdNYXhMb2NrRHVyYXRpb24AAAAAAAAAAAQAAAAAEklkeENmZ01hdGhDb250cmFjdAAAAAAAAAAABQEAAAAJa2V5Q29uZmlnAAAAAAIAAAAKJXNfX2NvbmZpZwEAAAAVcmVhZENvbmZpZ0FycmF5T3JGYWlsAAAAAAkABLUAAAACCQEAAAAEc3RyZgAAAAIFAAAABHRoaXMJAQAAAAlrZXlDb25maWcAAAAABQAAAANTRVABAAAADWZvcm1hdENvbmZpZ1MAAAAFAAAAB2Fzc2V0SWQAAAANbWluTG9ja0Ftb3VudAAAAA9taW5Mb2NrRHVyYXRpb24AAAAPbWF4TG9ja0R1cmF0aW9uAAAADG1hdGhDb250cmFjdAkABLkAAAACCQAETAAAAAICAAAACCVzJWQlZCVkCQAETAAAAAIFAAAAB2Fzc2V0SWQJAARMAAAAAgUAAAANbWluTG9ja0Ftb3VudAkABEwAAAACBQAAAA9taW5Mb2NrRHVyYXRpb24JAARMAAAAAgUAAAAPbWF4TG9ja0R1cmF0aW9uCQAETAAAAAIFAAAADG1hdGhDb250cmFjdAUAAAADbmlsBQAAAANTRVABAAAADGZvcm1hdENvbmZpZwAAAAUAAAAHYXNzZXRJZAAAAA1taW5Mb2NrQW1vdW50AAAAD21pbkxvY2tEdXJhdGlvbgAAAA9tYXhMb2NrRHVyYXRpb24AAAAMbWF0aENvbnRyYWN0CQEAAAANZm9ybWF0Q29uZmlnUwAAAAUFAAAAB2Fzc2V0SWQJAAGkAAAAAQUAAAANbWluTG9ja0Ftb3VudAkAAaQAAAABBQAAAA9taW5Mb2NrRHVyYXRpb24JAAGkAAAAAQUAAAAPbWF4TG9ja0R1cmF0aW9uBQAAAAxtYXRoQ29udHJhY3QBAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAABAAAAAckbWF0Y2gwCQAEIgAAAAEJAQAA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AAAAFWtleUxvY2tQYXJhbUJ5UGVyaW9kSwAAAAIAAAAHdXNlck51bQAAAAZwZXJpb2QJAAS5AAAAAgkABEwAAAACAgAAABclcyVkJXMlZF9fcGFyYW1CeVBlcmlvZAkABEwAAAACBQAAAAd1c2VyTnVtCQAETAAAAAICAAAAAWsJAARMAAAAAgUAAAAGcGVyaW9kBQAAAANuaWwFAAAAA1NFUAEAAAAVa2V5TG9ja1BhcmFtQnlQZXJpb2RCAAAAAgAAAAd1c2VyTnVtAAAABnBlcmlvZAkABLkAAAACCQAETAAAAAICAAAAFyVzJWQlcyVkX19wYXJhbUJ5UGVyaW9kCQAETAAAAAIFAAAAB3VzZXJOdW0JAARMAAAAAgIAAAABYgkABEwAAAACBQAAAAZwZXJpb2QFAAAAA25pbAUAAAADU0VQAQAAABdrZXlMb2NrUGFyYW1Ub3RhbEFtb3VudAAAAAACAAAAHiVzJXNfX3N0YXRzX19hY3RpdmVUb3RhbExvY2tlZAEAAAAga2V5U3RhdHNMb2Nrc0R1cmF0aW9uU3VtSW5CbG9ja3MAAAAAAgAAACUlcyVzX19zdGF0c19fbG9ja3NEdXJhdGlvblN1bUluQmxvY2tzAQAAABJrZXlTdGF0c0xvY2tzQ291bnQAAAAAAgAAABclcyVzX19zdGF0c19fbG9ja3NDb3VudAEAAAASa2V5U3RhdHNVc2Vyc0NvdW50AAAAAAIAAAAdJXMlc19fc3RhdHNfX2FjdGl2ZVVzZXJzQ291bnQBAAAAIGtleVVzZXJCb29zdEVtaXNzaW9uTGFzdElOVEVHUkFMAAAAAQAAAAd1c2VyTnVtCQAEuQAAAAIJAARMAAAAAgIAAAAeJXMlZF9fdXNlckJvb3N0RW1pc3Npb25MYXN0SW50CQAETAAAAAIFAAAAB3VzZXJOdW0FAAAAA25pbAUAAAADU0VQAQAAACJrZXlVc2VyTHBCb29zdEVtaXNzaW9uTGFzdElOVEVHUkFMAAAAAgAAAAd1c2VyTnVtAAAACWxwQXNzZXRJZAkABLkAAAACCQAETAAAAAICAAAAHiVzJWRfX3VzZXJCb29zdEVtaXNzaW9uTGFzdEludAkABEwAAAACBQAAAAd1c2VyTnVtCQAETAAAAAIFAAAACWxwQXNzZXRJZAUAAAADbmlsBQAAAANTRVABAAAAF2tleVVzZXJNYXhCb29zdElOVEVHUkFMAAAAAQAAAAd1c2VyTnVtCQAEuQAAAAIJAARMAAAAAgIAAAARJXMlZF9fbWF4Qm9vc3RJbnQJAARMAAAAAgUAAAAHdXNlck51bQUAAAADbmlsBQAAAANTRVABAAAAGGtleVRvdGFsTWF4Qm9vc3RJTlRFR1JBTAAAAAACAAAAGCVzJXNfX21heEJvb3N0SW50X190b3RhbAEAAAAha2V5VXNlckJvb3N0QXZhbGFpYmxlVG9DbGFpbVRvdGFsAAAAAQAAAAd1c2VyTnVtCQAEuQAAAAIJAARMAAAAAgIAAAAkJXMlZF9fdXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsCQAETAAAAAIFAAAAB3VzZXJOdW0FAAAAA25pbAUAAAADU0VQAQAAABNrZXlVc2VyQm9vc3RDbGFpbWVkAAAAAQAAAAd1c2VyTnVtCQAEuQAAAAIJAARMAAAAAgIAAAAWJXMlZF9fdXNlckJvb3N0Q2xhaW1lZAkABEwAAAACBQAAAAd1c2VyTnVtBQAAAANuaWwFAAAAA1NFUAEAAAARa2V5VG90YWxDYWNoZWRHd3gAAAAAAgAAABYlcyVzX19nd3hDYWNoZWRfX3RvdGFsAAAAAA9mYWN0b3J5Q29udHJhY3QJAQAAABhyZWFkRmFjdG9yeUFkZHJlc3NPckZhaWwAAAAAAAAAAApmYWN0b3J5Q2ZnCQEAAAAUcmVhZEZhY3RvcnlDZmdPckZhaWwAAAABBQAAAA9mYWN0b3J5Q29udHJhY3QAAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABhnZXRFbWlzc2lvbkFkZHJlc3NPckZhaWwAAAABBQAAAApmYWN0b3J5Q2ZnAAAAAA9zdGFraW5nQ29udHJhY3QJAQAAABdnZXRTdGFraW5nQWRkcmVzc09yRmFpbAAAAAEFAAAACmZhY3RvcnlDZmcAAAAAEWd3eFJld2FyZENvbnRyYWN0CQEAAAAZZ2V0R3d4UmV3YXJkQWRkcmVzc09yRmFpbAAAAAEFAAAACmZhY3RvcnlDZmcBAAAADEhpc3RvcnlFbnRyeQAAAAgAAAAEdHlwZQAAAAR1c2VyAAAABmFtb3VudAAAAAlsb2NrU3RhcnQAAAAIZHVyYXRpb24AAAABawAAAAFiAAAAAWkEAAAACmhpc3RvcnlLRVkJAAS5AAAAAgkABEwAAAACAgAAABElcyVzJXMlc19faGlzdG9yeQkABEwAAAACBQAAAAR0eXBlCQAETAAAAAIFAAAABHVzZXIJAARMAAAAAgkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkBQAAAANuaWwFAAAAA1NFUAQAAAALaGlzdG9yeURBVEEJAAS5AAAAAgkABEwAAAACAgAAAA4lZCVkJWQlZCVkJWQlZAkABEwAAAACCQABpAAAAAEIBQAAAAlsYXN0QmxvY2sAAAAGaGVpZ2h0CQAETAAAAAIJAAGkAAAAAQgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXAJAARMAAAAAgkAAaQAAAABBQAAAAZhbW91bnQJAARMAAAAAgkAAaQAAAABBQAAAAlsb2NrU3RhcnQJAARMAAAAAgkAAaQAAAABBQAAAAhkdXJhdGlvbgkABEwAAAACCQABpAAAAAEFAAAAAWsJAARMAAAAAgkAAaQAAAABBQAAAAFiBQAAAANuaWwFAAAAA1NFUAkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAAKaGlzdG9yeUtFWQUAAAALaGlzdG9yeURBVEEBAAAAClN0YXRzRW50cnkAAAAEAAAADnRvdGFsTG9ja2VkSW5jAAAAC2R1cmF0aW9uSW5jAAAADGxvY2tDb3VudEluYwAAAA11c2Vyc0NvdW50SW5jBAAAABtsb2Nrc0R1cmF0aW9uU3VtSW5CbG9ja3NLRVkJAQAAACBrZXlTdGF0c0xvY2tzRHVyYXRpb25TdW1JbkJsb2NrcwAAAAAEAAAADWxvY2tzQ291bnRLRVkJAQAAABJrZXlTdGF0c0xvY2tzQ291bnQAAAAABAAAAA11c2Vyc0NvdW50S0VZCQEAAAASa2V5U3RhdHNVc2Vyc0NvdW50AAAAAAQAAAAOdG90YWxBbW91bnRLRVkJAQAAABdrZXlMb2NrUGFyYW1Ub3RhbEFtb3VudAAAAAAEAAAAGGxvY2tzRHVyYXRpb25TdW1JbkJsb2NrcwkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAAG2xvY2tzRHVyYXRpb25TdW1JbkJsb2Nrc0tFWQQAAAAKbG9ja3NDb3VudAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAADWxvY2tzQ291bnRLRVkEAAAACnVzZXJzQ291bnQJAQAAAAxnZXRJbnRPclplcm8AAAACBQAAAAR0aGlzBQAAAA11c2Vyc0NvdW50S0VZBAAAAAt0b3RhbEFtb3VudAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAADnRvdGFsQW1vdW50S0VZCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABtsb2Nrc0R1cmF0aW9uU3VtSW5CbG9ja3NLRVkJAABkAAAAAgUAAAAYbG9ja3NEdXJhdGlvblN1bUluQmxvY2tzBQAAAAtkdXJhdGlvbkluYwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAANbG9ja3NDb3VudEtFWQkAAGQAAAACBQAAAApsb2Nrc0NvdW50BQAAAAxsb2NrQ291bnRJbmMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAADXVzZXJzQ291bnRLRVkJAABkAAAAAgUAAAAKdXNlcnNDb3VudAUAAAANdXNlcnNDb3VudEluYwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAOdG90YWxBbW91bnRLRVkJAABkAAAAAgUAAAALdG90YWxBbW91bnQFAAAADnRvdGFsTG9ja2VkSW5jBQAAAANuaWwBAAAADWNhbGNHd3hBbW91bnQAAAADAAAABGtSYXcAAAAEYlJhdwAAAAFoBAAAAAVTQ0FMRQAAAAAAAAAD6AkAAGkAAAACCQAAZAAAAAIJAABoAAAAAgUAAAAEa1JhdwUAAAABaAUAAAAEYlJhdwUAAAAFU0NBTEUBAAAAD0xvY2tQYXJhbXNFbnRyeQAAAAgAAAALdXNlckFkZHJlc3MAAAAHdXNlck51bQAAAAZhbW91bnQAAAAFc3RhcnQAAAAIZHVyYXRpb24AAAABawAAAAFiAAAABnBlcmlvZAQAAAANdXNlckFtb3VudEtFWQkBAAAAFmtleUxvY2tQYXJhbVVzZXJBbW91bnQAAAABBQAAAAd1c2VyTnVtBAAAAA1zdGFydEJsb2NrS0VZCQEAAAAWa2V5TG9ja1BhcmFtU3RhcnRCbG9jawAAAAEFAAAAB3VzZXJOdW0EAAAAC2R1cmF0aW9uS0VZCQEAAAAUa2V5TG9ja1BhcmFtRHVyYXRpb24AAAABBQAAAAd1c2VyTnVtBAAAAARrS0VZCQEAAAANa2V5TG9ja1BhcmFtSwAAAAEFAAAAB3VzZXJOdW0EAAAABGJLRVkJAQAAAA1rZXlMb2NrUGFyYW1CAAAAAQUAAAAHdXNlck51bQQAAAAMa0J5UGVyaW9kS0VZCQEAAAAVa2V5TG9ja1BhcmFtQnlQZXJpb2RLAAAAAgUAAAAHdXNlck51bQUAAAAGcGVyaW9kBAAAAAxiQnlQZXJpb2RLRVkJAQAAABVrZXlMb2NrUGFyYW1CeVBlcmlvZEIAAAACBQAAAAd1c2VyTnVtBQAAAAZwZXJpb2QEAAAACWd3eEFtb3VudAkBAAAADWNhbGNHd3hBbW91bnQAAAADBQAAAAFrBQAAAAFiBQAAAAZoZWlnaHQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAADXVzZXJBbW91bnRLRVkFAAAABmFtb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAANc3RhcnRCbG9ja0tFWQUAAAAFc3RhcnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAC2R1cmF0aW9uS0VZBQAAAAhkdXJhdGlvbgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAEa0tFWQUAAAABawkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAEYktFWQUAAAABYgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAMa0J5UGVyaW9kS0VZBQAAAAFrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAxiQnlQZXJpb2RLRVkFAAAAAWIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAE2tleUxvY2tQYXJhbXNSZWNvcmQAAAABBQAAAAt1c2VyQWRkcmVzcwkBAAAAFmZvcm1hdExvY2tQYXJhbXNSZWNvcmQAAAAHBQAAAAd1c2VyTnVtBQAAAAZhbW91bnQFAAAABXN0YXJ0BQAAAAhkdXJhdGlvbgUAAAABawUAAAABYgUAAAAJZ3d4QW1vdW50BQAAAANuaWwBAAAAImV4dHJhY3RPcHRpb25hbFBheW1lbnRBbW91bnRPckZhaWwAAAACAAAAAWkAAAAPZXhwZWN0ZWRBc3NldElkAwkAAGYAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQAAAgAAAAECAAAAG29ubHkgb25lIHBheW1lbnQgaXMgYWxsb3dlZAMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAAAAAAAAAQAAAADcG10CQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAwkBAAAAAiE9AAAAAgkBAAAABXZhbHVlAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkBQAAAA9leHBlY3RlZEFzc2V0SWQJAAACAAAAAQIAAAAbaW52YWxpZCBhc3NldCBpZCBpbiBwYXltZW50CAUAAAADcG10AAAABmFtb3VudAEAAAAUY2FsY0N1cnJlbnRHd3hBbW91bnQAAAABAAAAC3VzZXJBZGRyZXNzBAAAAAVFTVBUWQIAAAAFZW1wdHkEAAAAEnVzZXIyTnVtTWFwcGluZ0tFWQkBAAAAEmtleVVzZXIyTnVtTWFwcGluZwAAAAEFAAAAC3VzZXJBZGRyZXNzBAAAAAd1c2VyTnVtCQEAAAALdmFsdWVPckVsc2UAAAACCQAEIgAAAAEFAAAAEnVzZXIyTnVtTWFwcGluZ0tFWQUAAAAFRU1QVFkEAAAAAWsJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQfAAAAAQkBAAAADWtleUxvY2tQYXJhbUsAAAABBQAAAAd1c2VyTnVtAAAAAAAAAAAABAAAAAFiCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHwAAAAEJAQAAAA1rZXlMb2NrUGFyYW1CAAAAAQUAAAAHdXNlck51bQAAAAAAAAAAAAQAAAANZ3d4QW1vdW50Q2FsYwkBAAAADWNhbGNHd3hBbW91bnQAAAADBQAAAAFrBQAAAAFiBQAAAAZoZWlnaHQEAAAACWd3eEFtb3VudAMJAABmAAAAAgAAAAAAAAAAAAUAAAANZ3d4QW1vdW50Q2FsYwAAAAAAAAAAAAUAAAANZ3d4QW1vdW50Q2FsYwUAAAAJZ3d4QW1vdW50AQAAABRpbnRlcm5hbENsYWltV3hCb29zdAAAAAMAAAAMbHBBc3NldElkU3RyAAAADnVzZXJBZGRyZXNzU3RyAAAACHJlYWRPbmx5BAAAAAVFTVBUWQIAAAAFRU1QVFkEAAAAEXVzZXJSZWNvcmRPckVtcHR5CQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAABHRoaXMJAQAAABNrZXlMb2NrUGFyYW1zUmVjb3JkAAAAAQUAAAAOdXNlckFkZHJlc3NTdHIFAAAABUVNUFRZAwkAAAAAAAACBQAAABF1c2VyUmVjb3JkT3JFbXB0eQUAAAAFRU1QVFkJAAUVAAAAAwAAAAAAAAAAAAUAAAADbmlsAgAAABV1c2VyUmVjb3JkOjppczo6ZW1wdHkEAAAAD3VzZXJSZWNvcmRBcnJheQkABLUAAAACBQAAABF1c2VyUmVjb3JkT3JFbXB0eQUAAAADU0VQBAAAAAp1c2VyTnVtU3RyCQABkQAAAAIFAAAAD3VzZXJSZWNvcmRBcnJheQUAAAAOSWR4TG9ja1VzZXJOdW0EAAAAHGd3eFJld2FyZEVtaXNzaW9uU3RhcnRIZWlnaHQJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAARZ3d4UmV3YXJkQ29udHJhY3QJAQAAAB9rZXlHd3hSZXdhcmRFbWlzc2lvblN0YXJ0SGVpZ2h0AAAAAAAAAAAAAAAAAAQAAAAIRU1QVFlTVFICAAAABWVtcHR5BAAAAA0kdDAxMzA0MjEzNjEwAwkBAAAAAiE9AAAAAgUAAAAMbHBBc3NldElkU3RyBQAAAAhFTVBUWVNUUgQAAAAOcG9vbEFkZHJlc3NTdHIJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB0AAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAABprZXlGYWN0b3J5THAyQXNzZXRzTWFwcGluZwAAAAEFAAAADGxwQXNzZXRJZFN0cgkAASwAAAACAgAAABV1bnN1cHBvcnRlZCBscCBhc3NldCAFAAAADGxwQXNzZXRJZFN0cgQAAAADcHcxCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAA9mYWN0b3J5Q29udHJhY3QJAQAAABRrZXlGYWN0b3J5UG9vbFdlaWdodAAAAAEFAAAADnBvb2xBZGRyZXNzU3RyBAAAAANwdzAJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAPZmFjdG9yeUNvbnRyYWN0CQEAAAAba2V5RmFjdG9yeVBvb2xXZWlnaHRIaXN0b3J5AAAAAgUAAAAOcG9vbEFkZHJlc3NTdHIAAAAAAAAAAAAFAAAAA3B3MQkABRQAAAACBQAAAANwdzAFAAAAA3B3MQMFAAAACHJlYWRPbmx5CQAFFAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAJAAACAAAAAQkAASwAAAACAgAAAChub3QgcmVhZG9ubHkgbW9kZTogdW5zdXBwb3J0ZWQgbHAgYXNzZXQgBQAAAAxscEFzc2V0SWRTdHIEAAAAC3Bvb2xXZWlnaHQwCAUAAAANJHQwMTMwNDIxMzYxMAAAAAJfMQQAAAALcG9vbFdlaWdodDEIBQAAAA0kdDAxMzA0MjEzNjEwAAAAAl8yBAAAABJ3eEVtaXNzaW9uUGVyQmxvY2sJAQAAAAxnZXRJbnRPckZhaWwAAAACBQAAABBlbWlzc2lvbkNvbnRyYWN0CQEAAAAea2V5RW1pc3Npb25SYXRlUGVyQmxvY2tDdXJyZW50AAAAAAQAAAANZW1pc3Npb25TdGFydAkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABVrZXlFbWlzc2lvblN0YXJ0QmxvY2sAAAAABAAAAAtlbWlzc2lvbkVuZAkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABNrZXlFbWlzc2lvbkVuZEJsb2NrAAAAAAQAAAABaAMJAABmAAAAAgUAAAAGaGVpZ2h0BQAAAAtlbWlzc2lvbkVuZAUAAAALZW1pc3Npb25FbmQFAAAABmhlaWdodAQAAAACZGgJAAGWAAAAAQkABEwAAAACCQAAZQAAAAIFAAAAAWgFAAAADWVtaXNzaW9uU3RhcnQJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsBAAAACJ1c2VyTHBCb29zdEVtaXNzaW9uTGFzdEludGVncmFsS0VZCQEAAAAia2V5VXNlckxwQm9vc3RFbWlzc2lvbkxhc3RJTlRFR1JBTAAAAAIFAAAACnVzZXJOdW1TdHIFAAAADGxwQXNzZXRJZFN0cgQAAAAgdXNlckJvb3N0RW1pc3Npb25MYXN0SW50ZWdyYWxLRVkJAQAAACBrZXlVc2VyQm9vc3RFbWlzc2lvbkxhc3RJTlRFR1JBTAAAAAEFAAAACnVzZXJOdW1TdHIEAAAAHXVzZXJCb29zdEVtaXNzaW9uTGFzdEludGVncmFsCQEAAAALdmFsdWVPckVsc2UAAAACCQAEGgAAAAIFAAAABHRoaXMFAAAAInVzZXJMcEJvb3N0RW1pc3Npb25MYXN0SW50ZWdyYWxLRVkJAQAAAAxnZXRJbnRPclplcm8AAAACBQAAAAR0aGlzBQAAACB1c2VyQm9vc3RFbWlzc2lvbkxhc3RJbnRlZ3JhbEtFWQQAAAAVYm9vc3RFbWlzc2lvbkludGVncmFsCQAAaQAAAAIJAABoAAAAAgkAAGgAAAACBQAAABJ3eEVtaXNzaW9uUGVyQmxvY2sFAAAAAmRoAAAAAAAAAAACAAAAAAAAAAADBAAAABl1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsCQAAZQAAAAIFAAAAFWJvb3N0RW1pc3Npb25JbnRlZ3JhbAUAAAAddXNlckJvb3N0RW1pc3Npb25MYXN0SW50ZWdyYWwEAAAAA3VkaAkAAGsAAAADBQAAABl1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsAAAAAAAAAAADCQAAaAAAAAIAAAAAAAAAAAIFAAAAEnd4RW1pc3Npb25QZXJCbG9jawQAAAAGdUxhc3RICQAAZQAAAAIFAAAAAWgFAAAAA3VkaAQAAAAEdWRoMAkAAZYAAAABCQAETAAAAAIJAABlAAAAAgUAAAAcZ3d4UmV3YXJkRW1pc3Npb25TdGFydEhlaWdodAUAAAAGdUxhc3RICQAETAAAAAIAAAAAAAAAAAAFAAAAA25pbAQAAAAEdWRoMQkAAGUAAAACCQAAZQAAAAIFAAAAAWgFAAAABnVMYXN0SAUAAAAEdWRoMAMDAwkAAGYAAAACAAAAAAAAAAAABQAAAAZ1TGFzdEgGCQAAZgAAAAIAAAAAAAAAAAAFAAAABHVkaDEGCQAAZwAAAAIJAQAAAANhYnMAAAABCQAAZQAAAAIJAABkAAAAAgUAAAAEdWRoMAUAAAAEdWRoMQUAAAADdWRoAAAAAAAAAAABCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAWaW52YWxpZCB1ZGggY2FsYzogdWRoPQkAAaQAAAABBQAAAAN1ZGgCAAAACCB1TGFzdEg9CQABpAAAAAEFAAAABnVMYXN0SAIAAAAGIHVkaDA9CQABpAAAAAEFAAAABHVkaDACAAAABiB1ZGgxPQkAAaQAAAABBQAAAAR1ZGgxAwkAAGYAAAACAAAAAAAAAAAABQAAABl1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsCQAAAgAAAAECAAAAEndyb25nIGNhbGN1bGF0aW9ucwQAAAAXdXNlck1heEJvb3N0SW50ZWdyYWxLRVkJAQAAABdrZXlVc2VyTWF4Qm9vc3RJTlRFR1JBTAAAAAEFAAAACnVzZXJOdW1TdHIEAAAAGHRvdGFsTWF4Qm9vc3RJbnRlZ3JhbEtFWQkBAAAAGGtleVRvdGFsTWF4Qm9vc3RJTlRFR1JBTAAAAAAEAAAAD3VzZXJNYXhCb29zdEludAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAAF3VzZXJNYXhCb29zdEludGVncmFsS0VZBAAAABB0b3RhbE1heEJvb3N0SW50CQEAAAAMZ2V0SW50T3JaZXJvAAAAAgUAAAAEdGhpcwUAAAAYdG90YWxNYXhCb29zdEludGVncmFsS0VZBAAAABF0b3RhbENhY2hlZEd3eEtFWQkBAAAAEWtleVRvdGFsQ2FjaGVkR3d4AAAAAAQAAAAOdG90YWxDYWNoZWRHd3gJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAARdG90YWxDYWNoZWRHd3hLRVkAAAAAAAAAAAAEAAAAC3VzZXJDdXJyR3d4CQEAAAAUY2FsY0N1cnJlbnRHd3hBbW91bnQAAAABBQAAAA51c2VyQWRkcmVzc1N0cgQAAAAhdXNlckJvb3N0QXZhbGFpYmxlVG9DbGFpbVRvdGFsS0VZCQEAAAAha2V5VXNlckJvb3N0QXZhbGFpYmxlVG9DbGFpbVRvdGFsAAAAAQUAAAAKdXNlck51bVN0cgQAAAAedXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsCQEAAAAMZ2V0SW50T3JaZXJvAAAAAgUAAAAEdGhpcwUAAAAhdXNlckJvb3N0QXZhbGFpYmxlVG9DbGFpbVRvdGFsS0VZBAAAABp1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsMAkAAGsAAAADBQAAABl1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsBQAAAAR1ZGgwBQAAAAN1ZGgEAAAAGnVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwxCQAAawAAAAMFAAAAGXVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwFAAAABHVkaDEFAAAAA3VkaAQAAAAecG9vbFVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwwCQAAawAAAAMFAAAAGnVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwwBQAAAAtwb29sV2VpZ2h0MAUAAAAOUE9PTFdFSUdIVE1VTFQEAAAAHnBvb2xVc2VyQm9vc3RFbWlzc2lvbkludGVncmFsMQkAAGsAAAADBQAAABp1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsMQUAAAALcG9vbFdlaWdodDEFAAAADlBPT0xXRUlHSFRNVUxUBAAAACJ1c2VyQm9vc3RBdmFsaWFibGVUb0NsYWltVG90YWxOZXcwAwkAAAAAAAACBQAAAA50b3RhbENhY2hlZEd3eAAAAAAAAAAAAAAAAAAAAAAAAAkAAGsAAAADBQAAAB5wb29sVXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbDAFAAAAC3VzZXJDdXJyR3d4BQAAAA50b3RhbENhY2hlZEd3eAQAAAAidXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsTmV3MQMJAAAAAAAAAgUAAAAOdG90YWxDYWNoZWRHd3gAAAAAAAAAAAAAAAAAAAAAAAAJAABrAAAAAwUAAAAecG9vbFVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwxBQAAAAt1c2VyQ3Vyckd3eAUAAAAOdG90YWxDYWNoZWRHd3gEAAAAIXVzZXJCb29zdEF2YWxpYWJsZVRvQ2xhaW1Ub3RhbE5ldwkAAGQAAAACBQAAACJ1c2VyQm9vc3RBdmFsaWFibGVUb0NsYWltVG90YWxOZXcwBQAAACJ1c2VyQm9vc3RBdmFsaWFibGVUb0NsYWltVG90YWxOZXcxBAAAABN1c2VyQm9vc3RDbGFpbWVkS0VZCQEAAAATa2V5VXNlckJvb3N0Q2xhaW1lZAAAAAEFAAAACnVzZXJOdW1TdHIEAAAAEHVzZXJCb29zdENsYWltZWQJAQAAAAxnZXRJbnRPclplcm8AAAACBQAAAAR0aGlzBQAAABN1c2VyQm9vc3RDbGFpbWVkS0VZBAAAABJ1c2VyQm9vc3RBdmFpbGFibGUJAABlAAAAAgUAAAAhdXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsTmV3BQAAABB1c2VyQm9vc3RDbGFpbWVkBAAAAAlkYXRhU3RhdGUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAInVzZXJMcEJvb3N0RW1pc3Npb25MYXN0SW50ZWdyYWxLRVkFAAAAFWJvb3N0RW1pc3Npb25JbnRlZ3JhbAUAAAADbmlsBAAAAAVkZWJ1ZwkABLkAAAACCQAETAAAAAIJAAEsAAAAAgIAAAAedXNlckJvb3N0RW1pc3Npb25MYXN0SW50ZWdyYWw9CQABpAAAAAEFAAAAHXVzZXJCb29zdEVtaXNzaW9uTGFzdEludGVncmFsCQAETAAAAAIJAAEsAAAAAgIAAAAadXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbD0JAAGkAAAAAQUAAAAZdXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbAkABEwAAAACCQABLAAAAAICAAAAEHVzZXJNYXhCb29zdEludD0JAAGkAAAAAQUAAAAPdXNlck1heEJvb3N0SW50CQAETAAAAAIJAAEsAAAAAgIAAAARdG90YWxNYXhCb29zdEludD0JAAGkAAAAAQUAAAAQdG90YWxNYXhCb29zdEludAkABEwAAAACCQABLAAAAAICAAAAH3VzZXJCb29zdEF2YWxpYWJsZVRvQ2xhaW1Ub3RhbD0JAAGkAAAAAQUAAAAedXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsCQAETAAAAAIJAAEsAAAAAgIAAAAidXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsTmV3PQkAAaQAAAABBQAAACF1c2VyQm9vc3RBdmFsaWFibGVUb0NsYWltVG90YWxOZXcJAARMAAAAAgkAASwAAAACAgAAABF1c2VyQm9vc3RDbGFpbWVkPQkAAaQAAAABBQAAABB1c2VyQm9vc3RDbGFpbWVkCQAETAAAAAIJAAEsAAAAAgIAAAATdXNlckJvb3N0QXZhaWxhYmxlPQkAAaQAAAABBQAAABJ1c2VyQm9vc3RBdmFpbGFibGUJAARMAAAAAgkAASwAAAACAgAAABt1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsMD0JAAGkAAAAAQUAAAAadXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbDAJAARMAAAAAgkAASwAAAACAgAAABt1c2VyQm9vc3RFbWlzc2lvbkludGVncmFsMT0JAAGkAAAAAQUAAAAadXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbDEJAARMAAAAAgkAASwAAAACAgAAAB9wb29sVXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbDA9CQABpAAAAAEFAAAAHnBvb2xVc2VyQm9vc3RFbWlzc2lvbkludGVncmFsMAkABEwAAAACCQABLAAAAAICAAAAH3Bvb2xVc2VyQm9vc3RFbWlzc2lvbkludGVncmFsMT0JAAGkAAAAAQUAAAAecG9vbFVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwxCQAETAAAAAIJAAEsAAAAAgIAAAAMcG9vbFdlaWdodDA9CQABpAAAAAEFAAAAC3Bvb2xXZWlnaHQwCQAETAAAAAIJAAEsAAAAAgIAAAAMcG9vbFdlaWdodDE9CQABpAAAAAEFAAAAC3Bvb2xXZWlnaHQxCQAETAAAAAIJAAEsAAAAAgIAAAACaD0JAAGkAAAAAQUAAAABaAkABEwAAAACCQABLAAAAAICAAAABHVkaD0JAAGkAAAAAQUAAAADdWRoCQAETAAAAAIJAAEsAAAAAgIAAAAHdUxhc3RIPQkAAaQAAAABBQAAAAZ1TGFzdEgJAARMAAAAAgkAASwAAAACAgAAAAV1ZGgwPQkAAaQAAAABBQAAAAR1ZGgwCQAETAAAAAIJAAEsAAAAAgIAAAAFdWRoMT0JAAGkAAAAAQUAAAAEdWRoMQkABEwAAAACCQABLAAAAAICAAAADHVzZXJDdXJyR3d4PQkAAaQAAAABBQAAAAt1c2VyQ3Vyckd3eAkABEwAAAACCQABLAAAAAICAAAAD3RvdGFsQ2FjaGVkR3d4PQkAAaQAAAABBQAAAA50b3RhbENhY2hlZEd3eAUAAAADbmlsAgAAAAI6OgkABRUAAAADBQAAACF1c2VyQm9vc3RBdmFsaWFibGVUb0NsYWltVG90YWxOZXcFAAAACWRhdGFTdGF0ZQUAAAAFZGVidWcAAAAJAAAAAWkBAAAAC2NvbnN0cnVjdG9yAAAABgAAABFmYWN0b3J5QWRkcmVzc1N0cgAAAA5sb2NrQXNzZXRJZFN0cgAAAA1taW5Mb2NrQW1vdW50AAAAC21pbkR1cmF0aW9uAAAAC21heER1cmF0aW9uAAAADG1hdGhDb250cmFjdAQAAAALY2hlY2tDYWxsZXIJAQAAAAttdXN0TWFuYWdlcgAAAAEFAAAAAWkDCQAAAAAAAAIFAAAAC2NoZWNrQ2FsbGVyBQAAAAtjaGVja0NhbGxlcgkABE4AAAACCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAOa2V5TmV4dFVzZXJOdW0AAAAAAAAAAAAAAAAACQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAAAlrZXlDb25maWcAAAAACQEAAAAMZm9ybWF0Q29uZmlnAAAABQUAAAAObG9ja0Fzc2V0SWRTdHIFAAAADW1pbkxvY2tBbW91bnQFAAAAC21pbkR1cmF0aW9uBQAAAAttYXhEdXJhdGlvbgUAAAAMbWF0aENvbnRyYWN0CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABFrZXlGYWN0b3J5QWRkcmVzcwAAAAAFAAAAEWZhY3RvcnlBZGRyZXNzU3RyBQAAAANuaWwJAQAAAApTdGF0c0VudHJ5AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AAAABaQEAAAAEbG9jawAAAAEAAAAIZHVyYXRpb24EAAAACGNmZ0FycmF5CQEAAAAVcmVhZENvbmZpZ0FycmF5T3JGYWlsAAAAAAQAAAAKYXNzZXRJZFN0cgkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAANSWR4Q2ZnQXNzZXRJZAQAAAAHYXNzZXRJZAkAAlkAAAABBQAAAAphc3NldElkU3RyBAAAAA1taW5Mb2NrQW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAE0lkeENmZ01pbkxvY2tBbW91bnQEAAAAD21pbkxvY2tEdXJhdGlvbgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABVJZHhDZmdNaW5Mb2NrRHVyYXRpb24EAAAAD21heExvY2tEdXJhdGlvbgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABVJZHhDZmdNYXhMb2NrRHVyYXRpb24EAAAADG1hdGhDb250cmFjdAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAASSWR4Q2ZnTWF0aENvbnRyYWN0AwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAAIAAAABAgAAADRpbnZhbGlkIHBheW1lbnQgLSBleGFjdCBvbmUgcGF5bWVudCBtdXN0IGJlIGF0dGFjaGVkBAAAAANwbXQJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAACXBtdEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQDCQEAAAACIT0AAAACBQAAAAdhc3NldElkCQEAAAAFdmFsdWUAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAHmludmFsaWQgYXNzZXQgaXMgaW4gcGF5bWVudCAtIAUAAAAKYXNzZXRJZFN0cgIAAAAMIGlzIGV4cGVjdGVkBAAAAA5uZXh0VXNlck51bUtFWQkBAAAADmtleU5leHRVc2VyTnVtAAAAAAQAAAAOdXNlckFkZHJlc3NTdHIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAAA51c2VySXNFeGlzdGluZwkBAAAACWlzRGVmaW5lZAAAAAEJAAQiAAAAAQkBAAAAEmtleVVzZXIyTnVtTWFwcGluZwAAAAEFAAAADnVzZXJBZGRyZXNzU3RyBAAAAAp1c2VyTnVtU3RyAwUAAAAOdXNlcklzRXhpc3RpbmcJAQAAAAV2YWx1ZQAAAAEJAAQiAAAAAQkBAAAAEmtleVVzZXIyTnVtTWFwcGluZwAAAAEFAAAADnVzZXJBZGRyZXNzU3RyCQABpAAAAAEJAQAAAAxnZXRJbnRPckZhaWwAAAACBQAAAAR0aGlzBQAAAA5uZXh0VXNlck51bUtFWQQAAAAHdXNlck51bQkBAAAADXBhcnNlSW50VmFsdWUAAAABBQAAAAp1c2VyTnVtU3RyBAAAAAlsb2NrU3RhcnQFAAAABmhlaWdodAQAAAANc3RhcnRCbG9ja0tFWQkBAAAAFmtleUxvY2tQYXJhbVN0YXJ0QmxvY2sAAAABBQAAAAp1c2VyTnVtU3RyBAAAAAtkdXJhdGlvbktFWQkBAAAAFGtleUxvY2tQYXJhbUR1cmF0aW9uAAAAAQUAAAAKdXNlck51bVN0cgQAAAANdXNlckFtb3VudEtFWQkBAAAAFmtleUxvY2tQYXJhbVVzZXJBbW91bnQAAAABBQAAAAp1c2VyTnVtU3RyAwkAAGYAAAACBQAAAA1taW5Mb2NrQW1vdW50BQAAAAlwbXRBbW91bnQJAAACAAAAAQkAASwAAAACAgAAACJhbW91bnQgaXMgbGVzcyB0aGVuIG1pbkxvY2tBbW91bnQ9CQABpAAAAAEFAAAADW1pbkxvY2tBbW91bnQDCQAAZgAAAAIFAAAAD21pbkxvY2tEdXJhdGlvbgUAAAAIZHVyYXRpb24JAAACAAAAAQkAASwAAAACAgAAAC1wYXNzZWQgZHVyYXRpb24gaXMgbGVzcyB0aGVuIG1pbkxvY2tEdXJhdGlvbj0JAAGkAAAAAQUAAAAPbWluTG9ja0R1cmF0aW9uAwkAAGYAAAACBQAAAAhkdXJhdGlvbgUAAAAPbWF4TG9ja0R1cmF0aW9uCQAAAgAAAAEJAAEsAAAAAgIAAAAwcGFzc2VkIGR1cmF0aW9uIGlzIGdyZWF0ZXIgdGhlbiBtYXhMb2NrRHVyYXRpb249CQABpAAAAAEFAAAAD21heExvY2tEdXJhdGlvbgMDBQAAAA51c2VySXNFeGlzdGluZwkAAGcAAAACCQAAZAAAAAIJAQAAAAxnZXRJbnRPckZhaWwAAAACBQAAAAR0aGlzBQAAAA1zdGFydEJsb2NrS0VZCQEAAAAMZ2V0SW50T3JGYWlsAAAAAgUAAAAEdGhpcwUAAAALZHVyYXRpb25LRVkFAAAACWxvY2tTdGFydAcJAAACAAAAAQIAAAA2dGhlcmUgaXMgYW4gYWN0aXZlIGxvY2sgLSBjb25zaWRlciB0byB1c2UgaW5jcmVhc2VMb2NrAwkAAGYAAAACCQEAAAAMZ2V0SW50T3JaZXJvAAAAAgUAAAAEdGhpcwUAAAANdXNlckFtb3VudEtFWQAAAAAAAAAAAAkAAAIAAAABCQABLAAAAAICAAAANHRoZXJlIGFyZSBsb2NrZWQgV1hzIC0gY29uc2lkZXIgdG8gdXNlIGluY3JlYXNlTG9jayAFAAAADXVzZXJBbW91bnRLRVkEAAAAB2NvZWZmWDgJAABrAAAAAwUAAAAIZHVyYXRpb24FAAAABU1VTFQ4BQAAAA9tYXhMb2NrRHVyYXRpb24EAAAADmdXeEFtb3VudFN0YXJ0CQAAawAAAAMFAAAACXBtdEFtb3VudAUAAAAHY29lZmZYOAUAAAAFTVVMVDgEAAAAE2dXeFBhcmFtc1Jlc3VsdExpc3QJAQAAAAlhc0FueUxpc3QAAAABCQAD/AAAAAQFAAAADG1hdGhDb250cmFjdAIAAAAVY2FsY0d3eFBhcmFtc1JFQURPTkxZCQAETAAAAAIFAAAADmdXeEFtb3VudFN0YXJ0CQAETAAAAAIFAAAACWxvY2tTdGFydAkABEwAAAACBQAAAAhkdXJhdGlvbgUAAAADbmlsBQAAAANuaWwEAAAAAWsJAQAAAAVhc0ludAAAAAEJAAGRAAAAAgUAAAATZ1d4UGFyYW1zUmVzdWx0TGlzdAAAAAAAAAAAAAQAAAABYgkBAAAABWFzSW50AAAAAQkAAZEAAAACBQAAABNnV3hQYXJhbXNSZXN1bHRMaXN0AAAAAAAAAAABBAAAAAZwZXJpb2QJAAGkAAAAAQkBAAAABWFzSW50AAAAAQkAAZEAAAACBQAAABNnV3hQYXJhbXNSZXN1bHRMaXN0AAAAAAAAAAACBAAAABJ3eEVtaXNzaW9uUGVyQmxvY2sJAQAAAAxnZXRJbnRPckZhaWwAAAACBQAAABBlbWlzc2lvbkNvbnRyYWN0CQEAAAAea2V5RW1pc3Npb25SYXRlUGVyQmxvY2tDdXJyZW50AAAAAAQAAAANZW1pc3Npb25TdGFydAkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABVrZXlFbWlzc2lvblN0YXJ0QmxvY2sAAAAABAAAAAtlbWlzc2lvbkVuZAkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAABNrZXlFbWlzc2lvbkVuZEJsb2NrAAAAAAQAAAABaAMJAABmAAAAAgUAAAAGaGVpZ2h0BQAAAAtlbWlzc2lvbkVuZAUAAAALZW1pc3Npb25FbmQFAAAABmhlaWdodAQAAAACZGgJAAGWAAAAAQkABEwAAAACCQAAZQAAAAIFAAAAAWgFAAAADWVtaXNzaW9uU3RhcnQJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsBAAAACB1c2VyQm9vc3RFbWlzc2lvbkxhc3RJbnRlZ3JhbEtFWQkBAAAAIGtleVVzZXJCb29zdEVtaXNzaW9uTGFzdElOVEVHUkFMAAAAAQUAAAAKdXNlck51bVN0cgQAAAAVYm9vc3RFbWlzc2lvbkludGVncmFsCQAAaQAAAAIJAABoAAAAAgkAAGgAAAACBQAAABJ3eEVtaXNzaW9uUGVyQmxvY2sFAAAAAmRoAAAAAAAAAAACAAAAAAAAAAADBAAAABd1c2VyTWF4Qm9vc3RJbnRlZ3JhbEtFWQkBAAAAF2tleVVzZXJNYXhCb29zdElOVEVHUkFMAAAAAQUAAAAKdXNlck51bVN0cgQAAAAYdG90YWxNYXhCb29zdEludGVncmFsS0VZCQEAAAAYa2V5VG90YWxNYXhCb29zdElOVEVHUkFMAAAAAAQAAAAPdXNlck1heEJvb3N0SW50CQAAaQAAAAIJAABoAAAAAgUAAAAOZ1d4QW1vdW50U3RhcnQFAAAACGR1cmF0aW9uAAAAAAAAAAACBAAAABB0b3RhbE1heEJvb3N0SW50CQEAAAAMZ2V0SW50T3JaZXJvAAAAAgUAAAAEdGhpcwUAAAAYdG90YWxNYXhCb29zdEludGVncmFsS0VZBAAAABF0b3RhbENhY2hlZEd3eEtFWQkBAAAAEWtleVRvdGFsQ2FjaGVkR3d4AAAAAAQAAAAOdG90YWxDYWNoZWRHd3gJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAARdG90YWxDYWNoZWRHd3hLRVkAAAAAAAAAAAAEAAAAA2FycgMFAAAADnVzZXJJc0V4aXN0aW5nBQAAAANuaWwJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAADm5leHRVc2VyTnVtS0VZCQAAZAAAAAIFAAAAB3VzZXJOdW0AAAAAAAAAAAEJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAEmtleVVzZXIyTnVtTWFwcGluZwAAAAEFAAAADnVzZXJBZGRyZXNzU3RyBQAAAAp1c2VyTnVtU3RyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABJrZXlOdW0yVXNlck1hcHBpbmcAAAABBQAAAAp1c2VyTnVtU3RyBQAAAA51c2VyQWRkcmVzc1N0cgUAAAADbmlsCQAETgAAAAIJAARNAAAAAgkABE4AAAACCQAETgAAAAIFAAAAA2FycgkBAAAAD0xvY2tQYXJhbXNFbnRyeQAAAAgFAAAADnVzZXJBZGRyZXNzU3RyBQAAAAp1c2VyTnVtU3RyBQAAAAlwbXRBbW91bnQFAAAACWxvY2tTdGFydAUAAAAIZHVyYXRpb24FAAAAAWsFAAAAAWIFAAAABnBlcmlvZAkBAAAAClN0YXRzRW50cnkAAAAEBQAAAAlwbXRBbW91bnQFAAAACGR1cmF0aW9uAAAAAAAAAAABAwUAAAAOdXNlcklzRXhpc3RpbmcAAAAAAAAAAAAAAAAAAAAAAAEJAQAAAAxIaXN0b3J5RW50cnkAAAAIAgAAAARsb2NrBQAAAA51c2VyQWRkcmVzc1N0cgUAAAAJcG10QW1vdW50BQAAAAlsb2NrU3RhcnQFAAAACGR1cmF0aW9uBQAAAAFrBQAAAAFiBQAAAAFpCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAACB1c2VyQm9vc3RFbWlzc2lvbkxhc3RJbnRlZ3JhbEtFWQUAAAAVYm9vc3RFbWlzc2lvbkludGVncmFsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABF0b3RhbENhY2hlZEd3eEtFWQkAAGQAAAACBQAAAA50b3RhbENhY2hlZEd3eAUAAAAOZ1d4QW1vdW50U3RhcnQFAAAAA25pbAAAAAFpAQAAAAxpbmNyZWFzZUxvY2sAAAABAAAADWRlbHRhRHVyYXRpb24EAAAACGNmZ0FycmF5CQEAAAAVcmVhZENvbmZpZ0FycmF5T3JGYWlsAAAAAAQAAAAKYXNzZXRJZFN0cgkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAANSWR4Q2ZnQXNzZXRJZAQAAAAHYXNzZXRJZAkAAlkAAAABBQAAAAphc3NldElkU3RyBAAAAA9taW5Mb2NrRHVyYXRpb24JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAVSWR4Q2ZnTWluTG9ja0R1cmF0aW9uBAAAAA9tYXhMb2NrRHVyYXRpb24JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAAVSWR4Q2ZnTWF4TG9ja0R1cmF0aW9uBAAAAAxtYXRoQ29udHJhY3QJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEJAAGRAAAAAgUAAAAIY2ZnQXJyYXkFAAAAEklkeENmZ01hdGhDb250cmFjdAQAAAAJcG10QW1vdW50CQEAAAAiZXh0cmFjdE9wdGlvbmFsUGF5bWVudEFtb3VudE9yRmFpbAAAAAIFAAAAAWkFAAAAB2Fzc2V0SWQEAAAADnVzZXJBZGRyZXNzU3RyCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAPdXNlclJlY29yZEFycmF5CQEAAAAacmVhZExvY2tQYXJhbXNSZWNvcmRPckZhaWwAAAABBQAAAA51c2VyQWRkcmVzc1N0cgQAAAAKdXNlck51bVN0cgkAAZEAAAACBQAAAA91c2VyUmVjb3JkQXJyYXkFAAAADklkeExvY2tVc2VyTnVtBAAAAAp1c2VyQW1vdW50CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAPdXNlclJlY29yZEFycmF5BQAAAA1JZHhMb2NrQW1vdW50BAAAAAlsb2NrU3RhcnQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAA91c2VyUmVjb3JkQXJyYXkFAAAADElkeExvY2tTdGFydAQAAAAMbG9ja0R1cmF0aW9uCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAPdXNlclJlY29yZEFycmF5BQAAAA9JZHhMb2NrRHVyYXRpb24EAAAAB2xvY2tFbmQJAABkAAAAAgUAAAAJbG9ja1N0YXJ0BQAAAAxsb2NrRHVyYXRpb24EAAAAEXJlbWFpbmluZ0R1cmF0aW9uCQABlgAAAAEJAARMAAAAAgkAAGUAAAACBQAAAAdsb2NrRW5kBQAAAAZoZWlnaHQJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsBAAAAA11c2VyQW1vdW50TmV3CQAAZAAAAAIFAAAACnVzZXJBbW91bnQFAAAACXBtdEFtb3VudAQAAAAPbG9ja0R1cmF0aW9uTmV3CQAAZAAAAAIFAAAAEXJlbWFpbmluZ0R1cmF0aW9uBQAAAA1kZWx0YUR1cmF0aW9uAwkAAGYAAAACAAAAAAAAAAAABQAAAA1kZWx0YUR1cmF0aW9uCQAAAgAAAAECAAAAGmR1cmF0aW9uIGlzIGxlc3MgdGhlbiB6ZXJvAwkAAGYAAAACBQAAAA9taW5Mb2NrRHVyYXRpb24FAAAAD2xvY2tEdXJhdGlvbk5ldwkAAAIAAAABCQABLAAAAAICAAAALWxvY2tEdXJhdGlvbk5ldyBpcyBsZXNzIHRoZW4gbWluTG9ja0R1cmF0aW9uPQkAAaQAAAABBQAAAA9taW5Mb2NrRHVyYXRpb24DCQAAZgAAAAIFAAAAD2xvY2tEdXJhdGlvbk5ldwUAAAAPbWF4TG9ja0R1cmF0aW9uCQAAAgAAAAEJAAEsAAAAAgIAAABEZGVsdGFEdXJhdGlvbiArIGV4aXN0ZWRMb2NrRHVyYXRpb24gaXMgZ3JlYXRlciB0aGVuIG1heExvY2tEdXJhdGlvbj0JAAGkAAAAAQUAAAAPbWF4TG9ja0R1cmF0aW9uBAAAAAdjb2VmZlg4CQAAawAAAAMFAAAAD2xvY2tEdXJhdGlvbk5ldwUAAAAFTVVMVDgFAAAAD21heExvY2tEdXJhdGlvbgQAAAAOZ1d4QW1vdW50U3RhcnQJAABrAAAAAwUAAAANdXNlckFtb3VudE5ldwUAAAAHY29lZmZYOAUAAAAFTVVMVDgEAAAADGxvY2tTdGFydE5ldwUAAAAGaGVpZ2h0BAAAABNnV3hQYXJhbXNSZXN1bHRMaXN0CQEAAAAJYXNBbnlMaXN0AAAAAQkAA/wAAAAEBQAAAAxtYXRoQ29udHJhY3QCAAAAFWNhbGNHd3hQYXJhbXNSRUFET05MWQkABEwAAAACBQAAAA5nV3hBbW91bnRTdGFydAkABEwAAAACBQAAAAxsb2NrU3RhcnROZXcJAARMAAAAAgUAAAAPbG9ja0R1cmF0aW9uTmV3BQAAAANuaWwFAAAAA25pbAQAAAABawkBAAAABWFzSW50AAAAAQkAAZEAAAACBQAAABNnV3hQYXJhbXNSZXN1bHRMaXN0AAAAAAAAAAAABAAAAAFiCQEAAAAFYXNJbnQAAAABCQABkQAAAAIFAAAAE2dXeFBhcmFtc1Jlc3VsdExpc3QAAAAAAAAAAAEEAAAABnBlcmlvZAkAAaQAAAABCQEAAAAFYXNJbnQAAAABCQABkQAAAAIFAAAAE2dXeFBhcmFtc1Jlc3VsdExpc3QAAAAAAAAAAAIEAAAAEnd4RW1pc3Npb25QZXJCbG9jawkBAAAADGdldEludE9yRmFpbAAAAAIFAAAAEGVtaXNzaW9uQ29udHJhY3QJAQAAAB5rZXlFbWlzc2lvblJhdGVQZXJCbG9ja0N1cnJlbnQAAAAABAAAAA1lbWlzc2lvblN0YXJ0CQEAAAAMZ2V0SW50T3JGYWlsAAAAAgUAAAAQZW1pc3Npb25Db250cmFjdAkBAAAAFWtleUVtaXNzaW9uU3RhcnRCbG9jawAAAAAEAAAAC2VtaXNzaW9uRW5kCQEAAAAMZ2V0SW50T3JGYWlsAAAAAgUAAAAQZW1pc3Npb25Db250cmFjdAkBAAAAE2tleUVtaXNzaW9uRW5kQmxvY2sAAAAABAAAAAFoAwkAAGYAAAACBQAAAAZoZWlnaHQFAAAAC2VtaXNzaW9uRW5kBQAAAAtlbWlzc2lvbkVuZAUAAAAGaGVpZ2h0BAAAAAJkaAkAAZYAAAABCQAETAAAAAIJAABlAAAAAgUAAAABaAUAAAANZW1pc3Npb25TdGFydAkABEwAAAACAAAAAAAAAAAABQAAAANuaWwEAAAAIHVzZXJCb29zdEVtaXNzaW9uTGFzdEludGVncmFsS0VZCQEAAAAga2V5VXNlckJvb3N0RW1pc3Npb25MYXN0SU5URUdSQUwAAAABBQAAAAp1c2VyTnVtU3RyBAAAAB11c2VyQm9vc3RFbWlzc2lvbkxhc3RJbnRlZ3JhbAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAAIHVzZXJCb29zdEVtaXNzaW9uTGFzdEludGVncmFsS0VZBAAAABVib29zdEVtaXNzaW9uSW50ZWdyYWwJAABpAAAAAgkAAGgAAAACCQAAaAAAAAIFAAAAEnd4RW1pc3Npb25QZXJCbG9jawUAAAACZGgAAAAAAAAAAAIAAAAAAAAAAAMEAAAAGXVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwJAABlAAAAAgUAAAAVYm9vc3RFbWlzc2lvbkludGVncmFsBQAAAB11c2VyQm9vc3RFbWlzc2lvbkxhc3RJbnRlZ3JhbAMJAABmAAAAAgAAAAAAAAAAAAUAAAAZdXNlckJvb3N0RW1pc3Npb25JbnRlZ3JhbAkAAAIAAAABAgAAABJ3cm9uZyBjYWxjdWxhdGlvbnMEAAAAF3VzZXJNYXhCb29zdEludGVncmFsS0VZCQEAAAAXa2V5VXNlck1heEJvb3N0SU5URUdSQUwAAAABBQAAAAp1c2VyTnVtU3RyBAAAABh0b3RhbE1heEJvb3N0SW50ZWdyYWxLRVkJAQAAABhrZXlUb3RhbE1heEJvb3N0SU5URUdSQUwAAAAABAAAAA91c2VyTWF4Qm9vc3RJbnQJAQAAAAxnZXRJbnRPclplcm8AAAACBQAAAAR0aGlzBQAAABd1c2VyTWF4Qm9vc3RJbnRlZ3JhbEtFWQQAAAAQdG90YWxNYXhCb29zdEludAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAAGHRvdGFsTWF4Qm9vc3RJbnRlZ3JhbEtFWQQAAAALY3VyclVzZXJHd3gJAQAAABRjYWxjQ3VycmVudEd3eEFtb3VudAAAAAEFAAAADnVzZXJBZGRyZXNzU3RyBAAAAAdnd3hEaWZmCQAAZQAAAAIFAAAADmdXeEFtb3VudFN0YXJ0BQAAAAtjdXJyVXNlckd3eAMJAABmAAAAAgAAAAAAAAAAAAUAAAAHZ3d4RGlmZgkAAAIAAAABCQABLAAAAAICAAAAGGd3eERpZmYgaXMgbGVzcyB0aGVuIDA6IAkAAaQAAAABBQAAAAdnd3hEaWZmBAAAABF0b3RhbENhY2hlZEd3eEtFWQkBAAAAEWtleVRvdGFsQ2FjaGVkR3d4AAAAAAQAAAAOdG90YWxDYWNoZWRHd3gJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAARdG90YWxDYWNoZWRHd3hLRVkAAAAAAAAAAAAEAAAAIXVzZXJCb29zdEF2YWxhaWJsZVRvQ2xhaW1Ub3RhbEtFWQkBAAAAIWtleVVzZXJCb29zdEF2YWxhaWJsZVRvQ2xhaW1Ub3RhbAAAAAEFAAAACnVzZXJOdW1TdHIEAAAAHnVzZXJCb29zdEF2YWxpYWJsZVRvQ2xhaW1Ub3RhbAkBAAAADGdldEludE9yWmVybwAAAAIFAAAABHRoaXMFAAAAIXVzZXJCb29zdEF2YWxhaWJsZVRvQ2xhaW1Ub3RhbEtFWQQAAAAhdXNlckJvb3N0QXZhbGlhYmxlVG9DbGFpbVRvdGFsTmV3CQAAawAAAAMFAAAAGXVzZXJCb29zdEVtaXNzaW9uSW50ZWdyYWwFAAAAC2N1cnJVc2VyR3d4BQAAAA50b3RhbENhY2hlZEd3eAQAAAASdXNlck1heEJvb3N0SW50TmV3CQAAaQAAAAIJAABoAAAAAgUAAAAOZ1d4QW1vdW50U3RhcnQFAAAAD2xvY2tEdXJhdGlvbk5ldwAAAAAAAAAAAgQAAAAYcmVtYWluaW5nVXNlck1heEJvb3N0SW50CQAAaQAAAAIJAABoAAAAAgUAAAALY3VyclVzZXJHd3gFAAAAEXJlbWFpbmluZ0R1cmF0aW9uAAAAAAAAAAACBAAAABN1c2VyTWF4Qm9vc3RJbnREaWZmCQAAZQAAAAIFAAAAEnVzZXJNYXhCb29zdEludE5ldwUAAAAYcmVtYWluaW5nVXNlck1heEJvb3N0SW50CQAETgAAAAIJAARNAAAAAgkABE4AAAACCQEAAAAPTG9ja1BhcmFtc0VudHJ5AAAACAUAAAAOdXNlckFkZHJlc3NTdHIFAAAACnVzZXJOdW1TdHIFAAAADXVzZXJBbW91bnROZXcFAAAADGxvY2tTdGFydE5ldwUAAAAPbG9ja0R1cmF0aW9uTmV3BQAAAAFrBQAAAAFiBQAAAAZwZXJpb2QJAQAAAApTdGF0c0VudHJ5AAAABAUAAAAJcG10QW1vdW50BQAAAA1kZWx0YUR1cmF0aW9uAAAAAAAAAAAAAAAAAAAAAAAACQEAAAAMSGlzdG9yeUVudHJ5AAAACAIAAAAEbG9jawUAAAAOdXNlckFkZHJlc3NTdHIFAAAACXBtdEFtb3VudAUAAAAJbG9ja1N0YXJ0BQAAAA9sb2NrRHVyYXRpb25OZXcFAAAAAWsFAAAAAWIFAAAAAWkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEXRvdGFsQ2FjaGVkR3d4S0VZCQAAZAAAAAIFAAAADnRvdGFsQ2FjaGVkR3d4BQAAAAdnd3hEaWZmBQAAAANuaWwAAAABaQEAAAAMY2xhaW1XeEJvb3N0AAAAAgAAAAxscEFzc2V0SWRTdHIAAAAOdXNlckFkZHJlc3NTdHIDCQEAAAACIT0AAAACBQAAAA9zdGFraW5nQ29udHJhY3QIBQAAAAFpAAAABmNhbGxlcgkAAAIAAAABAgAAABJwZXJtaXNzaW9ucyBkZW5pZWQEAAAADSR0MDI3ODEwMjc5MTIJAQAAABRpbnRlcm5hbENsYWltV3hCb29zdAAAAAMFAAAADGxwQXNzZXRJZFN0cgUAAAAOdXNlckFkZHJlc3NTdHIHBAAAABJ1c2VyQm9vc3RBdmFpbGFibGUIBQAAAA0kdDAyNzgxMDI3OTEyAAAAAl8xBAAAAAlkYXRhU3RhdGUIBQAAAA0kdDAyNzgxMDI3OTEyAAAAAl8yBAAAAAVkZWJ1ZwgFAAAADSR0MDI3ODEwMjc5MTIAAAACXzMJAAUUAAAAAgUAAAAJZGF0YVN0YXRlCQAETAAAAAIFAAAAEnVzZXJCb29zdEF2YWlsYWJsZQUAAAADbmlsAAAAAWkBAAAAFGNsYWltV3hCb29zdFJFQURPTkxZAAAAAgAAAAxscEFzc2V0SWRTdHIAAAAOdXNlckFkZHJlc3NTdHIEAAAADSR0MDI4MDQ0MjgxNDUJAQAAABRpbnRlcm5hbENsYWltV3hCb29zdAAAAAMFAAAADGxwQXNzZXRJZFN0cgUAAAAOdXNlckFkZHJlc3NTdHIGBAAAABJ1c2VyQm9vc3RBdmFpbGFibGUIBQAAAA0kdDAyODA0NDI4MTQ1AAAAAl8xBAAAAAlkYXRhU3RhdGUIBQAAAA0kdDAyODA0NDI4MTQ1AAAAAl8yBAAAAAVkZWJ1ZwgFAAAADSR0MDI4MDQ0MjgxNDUAAAACXzMJAAUUAAAAAgUAAAADbmlsCQAETAAAAAIFAAAAEnVzZXJCb29zdEF2YWlsYWJsZQkABEwAAAACBQAAAAVkZWJ1ZwUAAAADbmlsAAAAAWkBAAAABnVubG9jawAAAAEAAAALdXNlckFkZHJlc3MEAAAAD3VzZXJSZWNvcmRBcnJheQkBAAAAGnJlYWRMb2NrUGFyYW1zUmVjb3JkT3JGYWlsAAAAAQUAAAALdXNlckFkZHJlc3MEAAAACnVzZXJOdW1TdHIJAAGRAAAAAgUAAAAPdXNlclJlY29yZEFycmF5BQAAAA5JZHhMb2NrVXNlck51bQQAAAAKdXNlckFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAD3VzZXJSZWNvcmRBcnJheQUAAAANSWR4TG9ja0Ftb3VudAQAAAAJbG9ja1N0YXJ0CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAPdXNlclJlY29yZEFycmF5BQAAAAxJZHhMb2NrU3RhcnQEAAAADGxvY2tEdXJhdGlvbgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAD3VzZXJSZWNvcmRBcnJheQUAAAAPSWR4TG9ja0R1cmF0aW9uBAAAAAdsb2NrRW5kCQAAZAAAAAIFAAAACWxvY2tTdGFydAUAAAAMbG9ja0R1cmF0aW9uBAAAAAhjZmdBcnJheQkBAAAAFXJlYWRDb25maWdBcnJheU9yRmFpbAAAAAAEAAAAB2Fzc2V0SWQJAAJZAAAAAQkAAZEAAAACBQAAAAhjZmdBcnJheQUAAAANSWR4Q2ZnQXNzZXRJZAQAAAAMbWF0aENvbnRyYWN0CQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABCQABkQAAAAIFAAAACGNmZ0FycmF5BQAAABJJZHhDZmdNYXRoQ29udHJhY3QDCQAAZwAAAAIFAAAAB2xvY2tFbmQFAAAABmhlaWdodAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAFd2FpdCAJAAGkAAAAAQUA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", "chainId": 84, "height": 1959375, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DBDMkVpd6MpKd8b83QY8r2YwaPNchBnmx9EZy1hB6aXw Next: 9heaPi1NThZTuxzCg1yfszA6b4YefV7GErYeH45e7MmE Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = 8
77
88 let c = 100000000
99
1010 let d = c
1111
1212 func e (f,g) = valueOrErrorMessage(getString(f, g), (("mandatory this." + g) + " is not defined"))
1313
1414
1515 func h (f,g) = valueOrElse(getInteger(f, g), 0)
1616
1717
1818 func i (f,g,j) = valueOrElse(getInteger(f, g), j)
1919
2020
2121 func k (f,g) = valueOrErrorMessage(getInteger(f, g), (("mandatory this." + g) + " is not defined"))
2222
2323
2424 func l (m) = if ((0 > m))
2525 then -(m)
2626 else m
2727
2828
2929 func n (m) = {
3030 let o = m
3131 if ($isInstanceOf(o, "List[Any]"))
3232 then {
3333 let p = o
3434 p
3535 }
3636 else throw("fail to cast into List[Any]")
3737 }
3838
3939
4040 func q (m) = {
4141 let o = m
4242 if ($isInstanceOf(o, "Int"))
4343 then {
4444 let r = o
4545 r
4646 }
4747 else throw("fail to cast into Int")
4848 }
4949
5050
5151 func s () = "%s%s__config__factoryAddress"
5252
5353
5454 let t = 1
5555
5656 let u = 2
5757
5858 let v = 3
5959
6060 let w = 4
6161
6262 let x = 5
6363
6464 let y = 6
6565
6666 let z = 7
6767
6868 let A = 8
6969
7070 let B = 9
7171
7272 let C = 10
7373
7474 let D = 11
7575
7676 func E () = "%s__factoryConfig"
7777
7878
7979 func F (G) = makeString(["%s%s%s", G, "mappings__lpAsset2PoolContract"], a)
8080
8181
8282 func H () = "%s__lpTokensList"
8383
8484
8585 func I (G) = makeString(["%s%s%s", G, "mappings__lpAsset2PoolContract"], a)
8686
8787
8888 func J (K) = makeString(["%s%s", "poolWeight", K], a)
8989
9090
9191 func L (M,N) = ((("%s%s__poolWeight__" + M) + "__") + toString(N))
9292
9393
9494 func O () = addressFromStringValue(e(this, s()))
9595
9696
9797 func P () = split(valueOrElse(getString(O(), H()), ""), a)
9898
9999
100100 func Q (R) = split(e(R, E()), a)
101101
102102
103103 func S (T) = addressFromStringValue(T[u])
104104
105105
106106 func U (T) = addressFromStringValue(T[x])
107107
108108
109109 func V (T) = addressFromStringValue(T[t])
110110
111111
112112 func W (T) = addressFromStringValue(T[C])
113113
114114
115115 func X () = "%s__managerPublicKey"
116116
117117
118118 func Y () = "%s__pendingManagerPublicKey"
119119
120120
121121 func Z () = "%s%s__ratePerBlock__current"
122122
123123
124124 func aa () = "%s%s__ratePerBlockMax__current"
125125
126126
127127 func ab () = "%s%s__emission__startBlock"
128128
129129
130130 func ac () = "%s%s__emission__duration"
131131
132132
133133 func ad () = "%s%s__emission__endBlock"
134134
135135
136136 func ae () = "%s__nextPeriod"
137137
138138
139139 func af () = "%s%s__gwxRewardEmissionPart__startHeight"
140140
141141
142142 let ag = 1
143143
144144 let ah = 2
145145
146146 let ai = 3
147147
148148 let aj = 4
149149
150150 let ak = 5
151151
152152 func al () = "%s__config"
153153
154154
155155 func am () = split(e(this, al()), a)
156156
157157
158158 func an (ao,ap,aq,ar,as) = makeString(["%s%d%d%d", ao, ap, aq, ar, as], a)
159159
160160
161161 func at (ao,ap,aq,ar,as) = an(ao, toString(ap), toString(aq), toString(ar), as)
162162
163163
164164 func au () = {
165165 let o = getString(X())
166166 if ($isInstanceOf(o, "String"))
167167 then {
168168 let av = o
169169 fromBase58String(av)
170170 }
171171 else if ($isInstanceOf(o, "Unit"))
172172 then unit
173173 else throw("Match error")
174174 }
175175
176176
177177 func aw () = {
178178 let o = getString(Y())
179179 if ($isInstanceOf(o, "String"))
180180 then {
181181 let av = o
182182 fromBase58String(av)
183183 }
184184 else if ($isInstanceOf(o, "Unit"))
185185 then unit
186186 else throw("Match error")
187187 }
188188
189189
190190 func ax (ay) = {
191191 let az = throw("Permission denied")
192192 let o = au()
193193 if ($isInstanceOf(o, "ByteVector"))
194194 then {
195195 let aA = o
196196 if ((ay.callerPublicKey == aA))
197197 then true
198198 else az
199199 }
200200 else if ($isInstanceOf(o, "Unit"))
201201 then if ((ay.caller == this))
202202 then true
203203 else az
204204 else throw("Match error")
205205 }
206206
207207
208208 let aB = 1
209209
210210 let aC = 2
211211
212212 let aD = 3
213213
214214 let aE = 4
215215
216216 let aF = 5
217217
218218 let aG = 6
219219
220220 func aH (aI) = makeString(["%s%s__lock", aI], a)
221221
222222
223223 func aJ (aI) = split(e(this, aH(aI)), a)
224224
225225
226226 func aK (aL,aM,aN,aO,aP,aQ,aR,aS) = makeString(["%d%d%d%d%d%d%d%d", aL, aM, aN, aO, aP, aQ, aR, aS], a)
227227
228228
229229 func aT (aL,aM,aN,aO,aP,aQ,aS) = aK(aL, toString(aM), toString(aN), toString(aO), toString(aP), toString(aQ), toString(lastBlock.timestamp), toString(aS))
230230
231231
232232 func aU () = "%s__nextUserNum"
233233
234234
235235 func aV (aI) = makeString(["%s%s%s__mapping__user2num", aI], a)
236236
237237
238238 func aW (N) = makeString(["%s%s%s__mapping__num2user", N], a)
239239
240240
241241 func aX (aL) = makeString(["%s%d%s__paramByUserNum", aL, "amount"], a)
242242
243243
244244 func aY (aL) = makeString(["%s%d%s__paramByUserNum", aL, "start"], a)
245245
246246
247247 func aZ (aL) = makeString(["%s%d%s__paramByUserNum", aL, "duration"], a)
248248
249249
250250 func ba (aL) = makeString(["%s%d%s__paramByUserNum", aL, "k"], a)
251251
252252
253253 func bb (aL) = makeString(["%s%d%s__paramByUserNum", aL, "b"], a)
254254
255255
256256 func bc (aL,bd) = makeString(["%s%d%s%d__paramByPeriod", aL, "k", bd], a)
257257
258258
259259 func be (aL,bd) = makeString(["%s%d%s%d__paramByPeriod", aL, "b", bd], a)
260260
261261
262262 func bf () = "%s%s__stats__activeTotalLocked"
263263
264264
265265 func bg () = "%s%s__stats__locksDurationSumInBlocks"
266266
267267
268268 func bh () = "%s%s__stats__locksCount"
269269
270270
271271 func bi () = "%s%s__stats__activeUsersCount"
272272
273273
274274 func bj (aL) = makeString(["%s%d__userBoostEmissionLastInt", aL], a)
275275
276276
277277 func bk (aL,bl) = makeString(["%s%d__userBoostEmissionLastInt", aL, bl], a)
278278
279279
280280 func bm (aL) = makeString(["%s%d__maxBoostInt", aL], a)
281281
282282
283283 func bn () = "%s%s__maxBoostInt__total"
284284
285285
286286 func bo (aL) = makeString(["%s%d__userBoostAvaliableToClaimTotal", aL], a)
287287
288288
289289 func bp (aL) = makeString(["%s%d__userBoostClaimed", aL], a)
290290
291291
292292 func bq () = "%s%s__gwxCached__total"
293293
294294
295295 let br = O()
296296
297297 let T = Q(br)
298298
299299 let bs = U(T)
300300
301301 let bt = V(T)
302302
303303 let bu = W(T)
304304
305305 func bv (bw,bx,aM,by,aO,bz,bA,ay) = {
306306 let bB = makeString(["%s%s%s%s__history", bw, bx, toBase58String(ay.transactionId)], a)
307307 let bC = makeString(["%d%d%d%d%d%d%d", toString(lastBlock.height), toString(lastBlock.timestamp), toString(aM), toString(by), toString(aO), toString(bz), toString(bA)], a)
308308 StringEntry(bB, bC)
309309 }
310310
311311
312312 func bD (bE,bF,bG,bH) = {
313313 let bI = bg()
314314 let bJ = bh()
315315 let bK = bi()
316316 let bL = bf()
317317 let bM = h(this, bI)
318318 let bN = h(this, bJ)
319319 let bO = h(this, bK)
320320 let bP = h(this, bL)
321321 [IntegerEntry(bI, (bM + bF)), IntegerEntry(bJ, (bN + bG)), IntegerEntry(bK, (bO + bH)), IntegerEntry(bL, (bP + bE))]
322322 }
323323
324324
325325 func bQ (bR,bS,bT) = {
326326 let bU = 1000
327327 (((bR * bT) + bS) / bU)
328328 }
329329
330330
331331 func bV (aI,aL,aM,aN,aO,bz,bA,bd) = {
332332 let bW = aX(aL)
333333 let bX = aY(aL)
334334 let bY = aZ(aL)
335335 let bZ = ba(aL)
336336 let ca = bb(aL)
337337 let cb = bc(aL, bd)
338338 let cc = be(aL, bd)
339339 let aS = bQ(bz, bA, height)
340340 [IntegerEntry(bW, aM), IntegerEntry(bX, aN), IntegerEntry(bY, aO), IntegerEntry(bZ, bz), IntegerEntry(ca, bA), IntegerEntry(cb, bz), IntegerEntry(cc, bA), StringEntry(aH(aI), aT(aL, aM, aN, aO, bz, bA, aS))]
341341 }
342342
343343
344344 func cd (ay,ce) = if ((size(ay.payments) > 1))
345345 then throw("only one payment is allowed")
346346 else if ((size(ay.payments) == 0))
347347 then 0
348348 else {
349349 let cf = ay.payments[0]
350350 if ((value(cf.assetId) != ce))
351351 then throw("invalid asset id in payment")
352352 else cf.amount
353353 }
354354
355355
356356 func cg (aI) = {
357357 let ch = "empty"
358358 let ci = aV(aI)
359359 let aL = valueOrElse(getString(ci), ch)
360360 let bz = valueOrElse(getInteger(ba(aL)), 0)
361361 let bA = valueOrElse(getInteger(bb(aL)), 0)
362362 let cj = bQ(bz, bA, height)
363363 let aS = if ((0 > cj))
364364 then 0
365365 else cj
366366 aS
367367 }
368368
369369
370370 func ck (cl,cm,cn) = {
371371 let ch = "EMPTY"
372372 let co = valueOrElse(getString(this, aH(cm)), ch)
373373 if ((co == ch))
374374 then $Tuple3(0, nil, "userRecord::is::empty")
375375 else {
376376 let cp = split(co, a)
377377 let cq = cp[aB]
378378 let cr = valueOrElse(getInteger(bu, af()), 0)
379379 let cs = "empty"
380380 let ct = if ((cl != cs))
381381 then {
382382 let cu = valueOrErrorMessage(getString(br, F(cl)), ("unsupported lp asset " + cl))
383383 let cv = getIntegerValue(br, J(cu))
384384 let cw = valueOrElse(getInteger(br, L(cu, 0)), cv)
385385 $Tuple2(cw, cv)
386386 }
387387 else if (cn)
388388 then $Tuple2(0, 0)
389389 else throw(("not readonly mode: unsupported lp asset " + cl))
390390 let cx = ct._1
391391 let cy = ct._2
392392 let cz = k(bs, Z())
393393 let cA = k(bs, ab())
394394 let cB = k(bs, ad())
395395 let bT = if ((height > cB))
396396 then cB
397397 else height
398398 let cC = max([(bT - cA), 0])
399399 let cD = bk(cq, cl)
400400 let cE = bj(cq)
401401 let cF = valueOrElse(getInteger(this, cD), h(this, cE))
402402 let cG = (((cz * cC) * 2) / 3)
403403 let cH = (cG - cF)
404404 let cI = fraction(cH, 3, (2 * cz))
405405 let cJ = (bT - cI)
406406 let cK = max([(cr - cJ), 0])
407407 let cL = ((bT - cJ) - cK)
408408 if (if (if ((0 > cJ))
409409 then true
410410 else (0 > cL))
411411 then true
412412 else (l(((cK + cL) - cI)) >= 1))
413413 then throw(((((((("invalid udh calc: udh=" + toString(cI)) + " uLastH=") + toString(cJ)) + " udh0=") + toString(cK)) + " udh1=") + toString(cL)))
414414 else if ((0 > cH))
415415 then throw("wrong calculations")
416416 else {
417417 let cM = bm(cq)
418418 let cN = bn()
419419 let cO = h(this, cM)
420420 let cP = h(this, cN)
421421 let cQ = bq()
422422 let cR = valueOrElse(getInteger(this, cQ), 0)
423423 let cS = cg(cm)
424424 let cT = bo(cq)
425425 let cU = h(this, cT)
426426 let cV = fraction(cH, cK, cI)
427427 let cW = fraction(cH, cL, cI)
428428 let cX = fraction(cV, cx, d)
429429 let cY = fraction(cW, cy, d)
430430 let cZ = if ((cR == 0))
431431 then 0
432432 else fraction(cX, cS, cR)
433433 let da = if ((cR == 0))
434434 then 0
435435 else fraction(cY, cS, cR)
436436 let db = (cZ + da)
437437 let dc = bp(cq)
438438 let dd = h(this, dc)
439439 let de = (db - dd)
440440 let df = [IntegerEntry(cD, cG)]
441441 let dg = makeString([("userBoostEmissionLastIntegral=" + toString(cF)), ("userBoostEmissionIntegral=" + toString(cH)), ("userMaxBoostInt=" + toString(cO)), ("totalMaxBoostInt=" + toString(cP)), ("userBoostAvaliableToClaimTotal=" + toString(cU)), ("userBoostAvaliableToClaimTotalNew=" + toString(db)), ("userBoostClaimed=" + toString(dd)), ("userBoostAvailable=" + toString(de)), ("userBoostEmissionIntegral0=" + toString(cV)), ("userBoostEmissionIntegral1=" + toString(cW)), ("poolUserBoostEmissionIntegral0=" + toString(cX)), ("poolUserBoostEmissionIntegral1=" + toString(cY)), ("poolWeight0=" + toString(cx)), ("poolWeight1=" + toString(cy)), ("h=" + toString(bT)), ("udh=" + toString(cI)), ("uLastH=" + toString(cJ)), ("udh0=" + toString(cK)), ("udh1=" + toString(cL)), ("userCurrGwx=" + toString(cS)), ("totalCachedGwx=" + toString(cR))], "::")
442442 $Tuple3(db, df, dg)
443443 }
444444 }
445445 }
446446
447447
448448 @Callable(ay)
449449 func constructor (dh,di,ap,dj,dk,as) = {
450450 let dl = ax(ay)
451451 if ((dl == dl))
452452 then ([IntegerEntry(aU(), 0), StringEntry(al(), at(di, ap, dj, dk, as)), StringEntry(s(), dh)] ++ bD(0, 0, 0, 0))
453453 else throw("Strict value is not equal to itself.")
454454 }
455455
456456
457457
458458 @Callable(ay)
459459 func lock (aO) = {
460460 let dm = am()
461461 let dn = dm[ag]
462462 let ao = fromBase58String(dn)
463463 let ap = parseIntValue(dm[ah])
464464 let aq = parseIntValue(dm[ai])
465465 let ar = parseIntValue(dm[aj])
466466 let as = addressFromStringValue(dm[ak])
467467 if ((size(ay.payments) != 1))
468468 then throw("invalid payment - exact one payment must be attached")
469469 else {
470470 let cf = ay.payments[0]
471471 let do = cf.amount
472472 if ((ao != value(cf.assetId)))
473473 then throw((("invalid asset is in payment - " + dn) + " is expected"))
474474 else {
475475 let dp = aU()
476476 let cm = toString(ay.caller)
477477 let dq = isDefined(getString(aV(cm)))
478478 let cq = if (dq)
479479 then value(getString(aV(cm)))
480480 else toString(k(this, dp))
481481 let aL = parseIntValue(cq)
482482 let by = height
483483 let bX = aY(cq)
484484 let bY = aZ(cq)
485485 let bW = aX(cq)
486486 if ((ap > do))
487487 then throw(("amount is less then minLockAmount=" + toString(ap)))
488488 else if ((aq > aO))
489489 then throw(("passed duration is less then minLockDuration=" + toString(aq)))
490490 else if ((aO > ar))
491491 then throw(("passed duration is greater then maxLockDuration=" + toString(ar)))
492492 else if (if (dq)
493493 then ((k(this, bX) + k(this, bY)) >= by)
494494 else false)
495495 then throw("there is an active lock - consider to use increaseLock")
496496 else if ((h(this, bW) > 0))
497497 then throw(("there are locked WXs - consider to use increaseLock " + bW))
498498 else {
499499 let dr = fraction(aO, c, ar)
500500 let ds = fraction(do, dr, c)
501501 let dt = n(invoke(as, "calcGwxParamsREADONLY", [ds, by, aO], nil))
502502 let bz = q(dt[0])
503503 let bA = q(dt[1])
504504 let bd = toString(q(dt[2]))
505505 let cz = k(bs, Z())
506506 let cA = k(bs, ab())
507507 let cB = k(bs, ad())
508508 let bT = if ((height > cB))
509509 then cB
510510 else height
511511 let cC = max([(bT - cA), 0])
512512 let cE = bj(cq)
513513 let cG = (((cz * cC) * 2) / 3)
514514 let cM = bm(cq)
515515 let cN = bn()
516516 let cO = ((ds * aO) / 2)
517517 let cP = h(this, cN)
518518 let cQ = bq()
519519 let cR = valueOrElse(getInteger(this, cQ), 0)
520520 let du = if (dq)
521521 then nil
522522 else [IntegerEntry(dp, (aL + 1)), StringEntry(aV(cm), cq), StringEntry(aW(cq), cm)]
523523 ((((du ++ bV(cm, cq, do, by, aO, bz, bA, bd)) ++ bD(do, aO, 1, if (dq)
524524 then 0
525525 else 1)) :+ bv("lock", cm, do, by, aO, bz, bA, ay)) ++ [IntegerEntry(cE, cG), IntegerEntry(cQ, (cR + ds))])
526526 }
527527 }
528528 }
529529 }
530530
531531
532532
533533 @Callable(ay)
534534 func increaseLock (dv) = {
535535 let dm = am()
536536 let dn = dm[ag]
537537 let ao = fromBase58String(dn)
538538 let aq = parseIntValue(dm[ai])
539539 let ar = parseIntValue(dm[aj])
540540 let as = addressFromStringValue(dm[ak])
541541 let do = cd(ay, ao)
542542 let cm = toString(ay.caller)
543543 let cp = aJ(cm)
544544 let cq = cp[aB]
545545 let dw = parseIntValue(cp[aC])
546546 let by = parseIntValue(cp[aD])
547547 let dx = parseIntValue(cp[aE])
548548 let dy = (by + dx)
549549 let dz = max([(dy - height), 0])
550550 let dA = (dw + do)
551551 let dB = (dz + dv)
552552 if ((0 > dv))
553553 then throw("duration is less then zero")
554554 else if ((aq > dB))
555555 then throw(("lockDurationNew is less then minLockDuration=" + toString(aq)))
556556 else if ((dB > ar))
557557 then throw(("deltaDuration + existedLockDuration is greater then maxLockDuration=" + toString(ar)))
558558 else {
559559 let dr = fraction(dB, c, ar)
560560 let ds = fraction(dA, dr, c)
561561 let dC = height
562562 let dt = n(invoke(as, "calcGwxParamsREADONLY", [ds, dC, dB], nil))
563563 let bz = q(dt[0])
564564 let bA = q(dt[1])
565565 let bd = toString(q(dt[2]))
566566 let cz = k(bs, Z())
567567 let cA = k(bs, ab())
568568 let cB = k(bs, ad())
569569 let bT = if ((height > cB))
570570 then cB
571571 else height
572572 let cC = max([(bT - cA), 0])
573573 let cE = bj(cq)
574574 let cF = h(this, cE)
575575 let cG = (((cz * cC) * 2) / 3)
576576 let cH = (cG - cF)
577577 if ((0 > cH))
578578 then throw("wrong calculations")
579579 else {
580580 let cM = bm(cq)
581581 let cN = bn()
582582 let cO = h(this, cM)
583583 let cP = h(this, cN)
584584 let dD = cg(cm)
585585 let dE = (ds - dD)
586586 if ((0 > dE))
587587 then throw(("gwxDiff is less then 0: " + toString(dE)))
588588 else {
589589 let cQ = bq()
590590 let cR = valueOrElse(getInteger(this, cQ), 0)
591591 let cT = bo(cq)
592592 let cU = h(this, cT)
593593 let db = fraction(cH, dD, cR)
594594 let dF = ((ds * dB) / 2)
595595 let dG = ((dD * dz) / 2)
596596 let dH = (dF - dG)
597597 (((bV(cm, cq, dA, dC, dB, bz, bA, bd) ++ bD(do, dv, 0, 0)) :+ bv("lock", cm, do, by, dB, bz, bA, ay)) ++ [IntegerEntry(cQ, (cR + dE))])
598598 }
599599 }
600600 }
601601 }
602602
603603
604604
605605 @Callable(ay)
606606 func claimWxBoost (cl,cm) = if ((bt != ay.caller))
607607 then throw("permissions denied")
608608 else {
609609 let dI = ck(cl, cm, false)
610610 let de = dI._1
611611 let df = dI._2
612612 let dg = dI._3
613613 $Tuple2(df, [de])
614614 }
615615
616616
617617
618618 @Callable(ay)
619619 func claimWxBoostREADONLY (cl,cm) = {
620620 let dJ = ck(cl, cm, true)
621621 let de = dJ._1
622622 let df = dJ._2
623623 let dg = dJ._3
624624 $Tuple2(nil, [de, dg])
625625 }
626626
627627
628628
629629 @Callable(ay)
630630 func unlock (aI) = {
631631 let cp = aJ(aI)
632632 let cq = cp[aB]
633633 let dw = parseIntValue(cp[aC])
634634 let by = parseIntValue(cp[aD])
635635 let dx = parseIntValue(cp[aE])
636636 let dy = (by + dx)
637637 let dm = am()
638638 let ao = fromBase58String(dm[ag])
639639 let as = addressFromStringValue(dm[ak])
640640 if ((dy >= height))
641641 then throw((("wait " + toString(dy)) + " to unlock"))
642642 else if ((0 >= dw))
643643 then throw("nothing to unlock")
644644 else {
645645 let bd = valueOrElse(getInteger(as, ae()), 0)
646646 (((bV(aI, cq, 0, by, dx, 0, 0, toString(bd)) ++ bD(-(dw), 0, 0, -1)) :+ bv("unlock", aI, dw, by, dx, 0, 0, ay)) :+ ScriptTransfer(addressFromStringValue(aI), dw, ao))
647647 }
648648 }
649649
650650
651651
652652 @Callable(ay)
653653 func gwxUserInfoREADONLY (aI) = {
654654 let aS = cg(aI)
655655 $Tuple2(nil, [aS])
656656 }
657657
658658
659659
660660 @Callable(ay)
661661 func setManager (dK) = {
662662 let dl = ax(ay)
663663 if ((dl == dl))
664664 then {
665665 let dL = fromBase58String(dK)
666666 if ((dL == dL))
667667 then [StringEntry(Y(), dK)]
668668 else throw("Strict value is not equal to itself.")
669669 }
670670 else throw("Strict value is not equal to itself.")
671671 }
672672
673673
674674
675675 @Callable(ay)
676676 func confirmManager () = {
677677 let dM = aw()
678678 let dN = if (isDefined(dM))
679679 then true
680680 else throw("No pending manager")
681681 if ((dN == dN))
682682 then {
683683 let dO = if ((ay.callerPublicKey == value(dM)))
684684 then true
685685 else throw("You are not pending manager")
686686 if ((dO == dO))
687687 then [StringEntry(X(), toBase58String(value(dM))), DeleteEntry(Y())]
688688 else throw("Strict value is not equal to itself.")
689689 }
690690 else throw("Strict value is not equal to itself.")
691691 }
692692
693693
694694 @Verifier(dP)
695695 func dQ () = {
696696 let dR = {
697697 let o = au()
698698 if ($isInstanceOf(o, "ByteVector"))
699699 then {
700700 let aA = o
701701 aA
702702 }
703703 else if ($isInstanceOf(o, "Unit"))
704704 then dP.senderPublicKey
705705 else throw("Match error")
706706 }
707707 sigVerify(dP.bodyBytes, dP.proofs[0], dR)
708708 }
709709

github/deemru/w8io/026f985 
59.95 ms