@win-trader/bindings 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,313 @@
1
+ import { Buffer } from "buffer";
2
+ import { Client as ContractClient, Spec as ContractSpec, } from "@stellar/stellar-sdk/contract";
3
+ export * from "@stellar/stellar-sdk";
4
+ export * as contract from "@stellar/stellar-sdk/contract";
5
+ export * as rpc from "@stellar/stellar-sdk/rpc";
6
+ if (typeof window !== "undefined") {
7
+ //@ts-ignore Buffer exists
8
+ window.Buffer = window.Buffer || Buffer;
9
+ }
10
+ export const ConfigManagerError = {
11
+ 1: { message: "AlreadyInitialized" },
12
+ 2: { message: "NotInitialized" },
13
+ 3: { message: "Unauthorized" },
14
+ /**
15
+ * `set_upgrade_timelock` called with seconds below `MIN_UPGRADE_TIMELOCK`.
16
+ */
17
+ 6: { message: "UpgradeTimelockTooShort" },
18
+ /**
19
+ * `propose_admin(caller, new_admin)` rejected because `caller == new_admin`.
20
+ */
21
+ 7: { message: "InvalidAdminProposal" },
22
+ /**
23
+ * `accept_admin` rejected — caller is not the currently pending admin.
24
+ */
25
+ 8: { message: "NotPendingAdmin" },
26
+ /**
27
+ * `accept_admin` rejected — there is no pending admin proposal.
28
+ */
29
+ 9: { message: "NoPendingAdmin" },
30
+ /**
31
+ * `upgrade` rejected — no `propose_upgrade` was made before commit.
32
+ * The two-step upgrade flow requires a prior proposal.
33
+ */
34
+ 10: { message: "NoPendingUpgrade" },
35
+ /**
36
+ * `upgrade` rejected — timelock has not elapsed yet.
37
+ */
38
+ 11: { message: "UpgradeTimelockNotElapsed" },
39
+ /**
40
+ * `upgrade` rejected — `new_wasm_hash` does not match the proposed
41
+ * `PendingUpgrade.wasm_hash`.
42
+ */
43
+ 12: { message: "UpgradeHashMismatch" },
44
+ /**
45
+ * `accept_admin` rejected — the proposal is older than
46
+ * `ADMIN_PROPOSAL_TTL_SECS`.
47
+ */
48
+ 13: { message: "AdminProposalExpired" },
49
+ /**
50
+ * `set_upgrade_timelock` called with seconds above
51
+ * `MAX_UPGRADE_TIMELOCK_SECS`.
52
+ */
53
+ 14: { message: "UpgradeTimelockTooLong" },
54
+ /**
55
+ * FeeSplits components (lp/dev/staker) do not sum to exactly BPS.
56
+ */
57
+ 22: { message: "InvalidFeeSplitSum" },
58
+ /**
59
+ * `min_collateral` is not strictly positive.
60
+ */
61
+ 30: { message: "InvalidMinCollateral" },
62
+ /**
63
+ * `max_utilization_ratio` is out of (0, BPS] range.
64
+ */
65
+ 31: { message: "InvalidMaxUtilization" },
66
+ /**
67
+ * `funding_cut_bps` exceeds `MAX_FUNDING_CUT_BPS`.
68
+ */
69
+ 32: { message: "InvalidFundingCut" },
70
+ /**
71
+ * `adl_pnl_bps` is below `MIN_ADL_PNL_BPS` or above BPS.
72
+ */
73
+ 33: { message: "InvalidAdlPnl" },
74
+ /**
75
+ * `adl_utilization_bps` is out of (0, BPS] range.
76
+ */
77
+ 34: { message: "InvalidAdlUtilization" },
78
+ /**
79
+ * `liquidation_threshold_bps` is below `MIN_LIQUIDATION_THRESHOLD_BPS`
80
+ * or exceeds 10% of collateral.
81
+ */
82
+ 35: { message: "InvalidLiquidationThreshold" },
83
+ /**
84
+ * `cooldown_duration` exceeds `MAX_COOLDOWN_DURATION`.
85
+ */
86
+ 36: { message: "InvalidCooldownDuration" },
87
+ /**
88
+ * `min_position_lifetime` exceeds `MAX_MIN_POSITION_LIFETIME_SECS`.
89
+ */
90
+ 37: { message: "InvalidMinPositionLifetime" },
91
+ /**
92
+ * A BorrowRateConfig rate is negative.
93
+ */
94
+ 40: { message: "InvalidBorrowRateNegative" },
95
+ /**
96
+ * `optimal_utilization_bps` is out of (0, BPS] range.
97
+ */
98
+ 41: { message: "InvalidOptimalUtilization" },
99
+ /**
100
+ * `slope2_bps < slope1_bps` — kink curve must be non-decreasing.
101
+ */
102
+ 42: { message: "InvalidSlopeOrdering" },
103
+ /**
104
+ * `slope2_bps` exceeds `MAX_SLOPE2_BPS`.
105
+ */
106
+ 43: { message: "InvalidSlopeTooSteep" },
107
+ /**
108
+ * `open_fee_bps` exceeds `MAX_OPEN_FEE_BPS`.
109
+ */
110
+ 44: { message: "InvalidOpenFee" },
111
+ /**
112
+ * `liquidation_bounty_bps` exceeds `MAX_LIQUIDATION_BOUNTY_BPS`.
113
+ */
114
+ 45: { message: "InvalidLiquidationBounty" },
115
+ /**
116
+ * `tp_sl_execution_fee` is negative or exceeds `MAX_TP_SL_EXECUTION_FEE`.
117
+ */
118
+ 46: { message: "InvalidTpSlExecutionFee" },
119
+ /**
120
+ * `base_borrow_rate_bps` exceeds `MAX_BASE_BORROW_RATE_BPS`.
121
+ */
122
+ 47: { message: "InvalidBaseBorrowRate" },
123
+ /**
124
+ * `base_funding_rate_bps` exceeds `MAX_BASE_FUNDING_RATE_BPS`.
125
+ */
126
+ 48: { message: "InvalidBaseFundingRate" }
127
+ };
128
+ export const RoleTransferError = {
129
+ 2200: { message: "NoPendingTransfer" },
130
+ 2201: { message: "InvalidLiveUntilLedger" },
131
+ 2202: { message: "InvalidPendingAccount" }
132
+ };
133
+ export const AccessControlError = {
134
+ 2000: { message: "Unauthorized" },
135
+ 2001: { message: "AdminNotSet" },
136
+ 2002: { message: "IndexOutOfBounds" },
137
+ 2003: { message: "AdminRoleNotFound" },
138
+ 2004: { message: "RoleCountIsNotZero" },
139
+ 2005: { message: "RoleNotFound" },
140
+ 2006: { message: "AdminAlreadySet" },
141
+ 2007: { message: "RoleNotHeld" },
142
+ 2008: { message: "RoleIsEmpty" },
143
+ 2009: { message: "TransferInProgress" },
144
+ 2010: { message: "MaxRolesExceeded" }
145
+ };
146
+ export const OwnableError = {
147
+ 2100: { message: "OwnerNotSet" },
148
+ 2101: { message: "TransferInProgress" },
149
+ 2102: { message: "OwnerAlreadySet" }
150
+ };
151
+ export const UpgradeableError = {
152
+ /**
153
+ * When migration is attempted but not allowed due to upgrade state.
154
+ */
155
+ 1100: { message: "MigrationNotAllowed" }
156
+ };
157
+ export const MerkleDistributorError = {
158
+ /**
159
+ * The merkle root is not set.
160
+ */
161
+ 1300: { message: "RootNotSet" },
162
+ /**
163
+ * The provided index was already claimed.
164
+ */
165
+ 1301: { message: "IndexAlreadyClaimed" },
166
+ /**
167
+ * The proof is invalid.
168
+ */
169
+ 1302: { message: "InvalidProof" }
170
+ };
171
+ export const SorobanFixedPointError = {
172
+ /**
173
+ * Arithmetic overflow occurred
174
+ */
175
+ 1500: { message: "Overflow" },
176
+ /**
177
+ * Division by zero
178
+ */
179
+ 1501: { message: "DivisionByZero" }
180
+ };
181
+ export const CryptoError = {
182
+ /**
183
+ * The merkle proof length is out of bounds.
184
+ */
185
+ 1400: { message: "MerkleProofOutOfBounds" },
186
+ /**
187
+ * The index of the leaf is out of bounds.
188
+ */
189
+ 1401: { message: "MerkleIndexOutOfBounds" },
190
+ /**
191
+ * No data in hasher state.
192
+ */
193
+ 1402: { message: "HasherEmptyState" }
194
+ };
195
+ export const PausableError = {
196
+ /**
197
+ * The operation failed because the contract is paused.
198
+ */
199
+ 1000: { message: "EnforcedPause" },
200
+ /**
201
+ * The operation failed because the contract is not paused.
202
+ */
203
+ 1001: { message: "ExpectedPause" }
204
+ };
205
+ export class Client extends ContractClient {
206
+ options;
207
+ static async deploy(
208
+ /** Constructor/Initialization Args for the contract's `__constructor` method */
209
+ { admin_address },
210
+ /** Options for initializing a Client as well as for calling a method, with extras specific to deploying. */
211
+ options) {
212
+ return ContractClient.deploy({ admin_address }, options);
213
+ }
214
+ constructor(options) {
215
+ super(new ContractSpec(["AAAABAAAAAAAAAAAAAAAEkNvbmZpZ01hbmFnZXJFcnJvcgAAAAAAHgAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAABAAAAAAAAAA5Ob3RJbml0aWFsaXplZAAAAAAAAgAAAAAAAAAMVW5hdXRob3JpemVkAAAAAwAAAEhgc2V0X3VwZ3JhZGVfdGltZWxvY2tgIGNhbGxlZCB3aXRoIHNlY29uZHMgYmVsb3cgYE1JTl9VUEdSQURFX1RJTUVMT0NLYC4AAAAXVXBncmFkZVRpbWVsb2NrVG9vU2hvcnQAAAAABgAAAEpgcHJvcG9zZV9hZG1pbihjYWxsZXIsIG5ld19hZG1pbilgIHJlamVjdGVkIGJlY2F1c2UgYGNhbGxlciA9PSBuZXdfYWRtaW5gLgAAAAAAFEludmFsaWRBZG1pblByb3Bvc2FsAAAABwAAAEZgYWNjZXB0X2FkbWluYCByZWplY3RlZCDigJQgY2FsbGVyIGlzIG5vdCB0aGUgY3VycmVudGx5IHBlbmRpbmcgYWRtaW4uAAAAAAAPTm90UGVuZGluZ0FkbWluAAAAAAgAAAA/YGFjY2VwdF9hZG1pbmAgcmVqZWN0ZWQg4oCUIHRoZXJlIGlzIG5vIHBlbmRpbmcgYWRtaW4gcHJvcG9zYWwuAAAAAA5Ob1BlbmRpbmdBZG1pbgAAAAAACQAAAHhgdXBncmFkZWAgcmVqZWN0ZWQg4oCUIG5vIGBwcm9wb3NlX3VwZ3JhZGVgIHdhcyBtYWRlIGJlZm9yZSBjb21taXQuClRoZSB0d28tc3RlcCB1cGdyYWRlIGZsb3cgcmVxdWlyZXMgYSBwcmlvciBwcm9wb3NhbC4AAAAQTm9QZW5kaW5nVXBncmFkZQAAAAoAAAA0YHVwZ3JhZGVgIHJlamVjdGVkIOKAlCB0aW1lbG9jayBoYXMgbm90IGVsYXBzZWQgeWV0LgAAABlVcGdyYWRlVGltZWxvY2tOb3RFbGFwc2VkAAAAAAAACwAAAF5gdXBncmFkZWAgcmVqZWN0ZWQg4oCUIGBuZXdfd2FzbV9oYXNoYCBkb2VzIG5vdCBtYXRjaCB0aGUgcHJvcG9zZWQKYFBlbmRpbmdVcGdyYWRlLndhc21faGFzaGAuAAAAAAATVXBncmFkZUhhc2hNaXNtYXRjaAAAAAAMAAAAUWBhY2NlcHRfYWRtaW5gIHJlamVjdGVkIOKAlCB0aGUgcHJvcG9zYWwgaXMgb2xkZXIgdGhhbgpgQURNSU5fUFJPUE9TQUxfVFRMX1NFQ1NgLgAAAAAAABRBZG1pblByb3Bvc2FsRXhwaXJlZAAAAA0AAABNYHNldF91cGdyYWRlX3RpbWVsb2NrYCBjYWxsZWQgd2l0aCBzZWNvbmRzIGFib3ZlCmBNQVhfVVBHUkFERV9USU1FTE9DS19TRUNTYC4AAAAAAAAWVXBncmFkZVRpbWVsb2NrVG9vTG9uZwAAAAAADgAAAD9GZWVTcGxpdHMgY29tcG9uZW50cyAobHAvZGV2L3N0YWtlcikgZG8gbm90IHN1bSB0byBleGFjdGx5IEJQUy4AAAAAEkludmFsaWRGZWVTcGxpdFN1bQAAAAAAFgAAACpgbWluX2NvbGxhdGVyYWxgIGlzIG5vdCBzdHJpY3RseSBwb3NpdGl2ZS4AAAAAABRJbnZhbGlkTWluQ29sbGF0ZXJhbAAAAB4AAAAxYG1heF91dGlsaXphdGlvbl9yYXRpb2AgaXMgb3V0IG9mICgwLCBCUFNdIHJhbmdlLgAAAAAAABVJbnZhbGlkTWF4VXRpbGl6YXRpb24AAAAAAAAfAAAAMGBmdW5kaW5nX2N1dF9icHNgIGV4Y2VlZHMgYE1BWF9GVU5ESU5HX0NVVF9CUFNgLgAAABFJbnZhbGlkRnVuZGluZ0N1dAAAAAAAACAAAAA2YGFkbF9wbmxfYnBzYCBpcyBiZWxvdyBgTUlOX0FETF9QTkxfQlBTYCBvciBhYm92ZSBCUFMuAAAAAAANSW52YWxpZEFkbFBubAAAAAAAACEAAAAvYGFkbF91dGlsaXphdGlvbl9icHNgIGlzIG91dCBvZiAoMCwgQlBTXSByYW5nZS4AAAAAFUludmFsaWRBZGxVdGlsaXphdGlvbgAAAAAAACIAAABiYGxpcXVpZGF0aW9uX3RocmVzaG9sZF9icHNgIGlzIGJlbG93IGBNSU5fTElRVUlEQVRJT05fVEhSRVNIT0xEX0JQU2AKb3IgZXhjZWVkcyAxMCUgb2YgY29sbGF0ZXJhbC4AAAAAABtJbnZhbGlkTGlxdWlkYXRpb25UaHJlc2hvbGQAAAAAIwAAADRgY29vbGRvd25fZHVyYXRpb25gIGV4Y2VlZHMgYE1BWF9DT09MRE9XTl9EVVJBVElPTmAuAAAAF0ludmFsaWRDb29sZG93bkR1cmF0aW9uAAAAACQAAABBYG1pbl9wb3NpdGlvbl9saWZldGltZWAgZXhjZWVkcyBgTUFYX01JTl9QT1NJVElPTl9MSUZFVElNRV9TRUNTYC4AAAAAAAAaSW52YWxpZE1pblBvc2l0aW9uTGlmZXRpbWUAAAAAACUAAAAkQSBCb3Jyb3dSYXRlQ29uZmlnIHJhdGUgaXMgbmVnYXRpdmUuAAAAGUludmFsaWRCb3Jyb3dSYXRlTmVnYXRpdmUAAAAAAAAoAAAAM2BvcHRpbWFsX3V0aWxpemF0aW9uX2Jwc2AgaXMgb3V0IG9mICgwLCBCUFNdIHJhbmdlLgAAAAAZSW52YWxpZE9wdGltYWxVdGlsaXphdGlvbgAAAAAAACkAAABAYHNsb3BlMl9icHMgPCBzbG9wZTFfYnBzYCDigJQga2luayBjdXJ2ZSBtdXN0IGJlIG5vbi1kZWNyZWFzaW5nLgAAABRJbnZhbGlkU2xvcGVPcmRlcmluZwAAACoAAAAmYHNsb3BlMl9icHNgIGV4Y2VlZHMgYE1BWF9TTE9QRTJfQlBTYC4AAAAAABRJbnZhbGlkU2xvcGVUb29TdGVlcAAAACsAAAAqYG9wZW5fZmVlX2Jwc2AgZXhjZWVkcyBgTUFYX09QRU5fRkVFX0JQU2AuAAAAAAAOSW52YWxpZE9wZW5GZWUAAAAAACwAAAA+YGxpcXVpZGF0aW9uX2JvdW50eV9icHNgIGV4Y2VlZHMgYE1BWF9MSVFVSURBVElPTl9CT1VOVFlfQlBTYC4AAAAAABhJbnZhbGlkTGlxdWlkYXRpb25Cb3VudHkAAAAtAAAAR2B0cF9zbF9leGVjdXRpb25fZmVlYCBpcyBuZWdhdGl2ZSBvciBleGNlZWRzIGBNQVhfVFBfU0xfRVhFQ1VUSU9OX0ZFRWAuAAAAABdJbnZhbGlkVHBTbEV4ZWN1dGlvbkZlZQAAAAAuAAAAOmBiYXNlX2JvcnJvd19yYXRlX2Jwc2AgZXhjZWVkcyBgTUFYX0JBU0VfQk9SUk9XX1JBVEVfQlBTYC4AAAAAABVJbnZhbGlkQmFzZUJvcnJvd1JhdGUAAAAAAAAvAAAAPGBiYXNlX2Z1bmRpbmdfcmF0ZV9icHNgIGV4Y2VlZHMgYE1BWF9CQVNFX0ZVTkRJTkdfUkFURV9CUFNgLgAAABZJbnZhbGlkQmFzZUZ1bmRpbmdSYXRlAAAAAAAw",
216
+ "AAAABQAAAAAAAAAAAAAAClJvbGVDaGFuZ2UAAAAAAAEAAAAEcm9sZQAAAAMAAAAAAAAABHJvbGUAAAARAAAAAAAAAAAAAAAHYWNjb3VudAAAAAATAAAAAAAAAAAAAAAIaXNfZ3JhbnQAAAABAAAAAAAAAAE=",
217
+ "AAAABQAAAAAAAAAAAAAADExpbWl0c1VwZGF0ZQAAAAEAAAAGbGltaXRzAAAAAAAIAAAAAAAAAA5taW5fY29sbGF0ZXJhbAAAAAAACwAAAAAAAAAAAAAAEWNvb2xkb3duX2R1cmF0aW9uAAAAAAAABgAAAAAAAAAAAAAAFW1pbl9wb3NpdGlvbl9saWZldGltZQAAAAAAAAYAAAAAAAAAAAAAABVtYXhfdXRpbGl6YXRpb25fcmF0aW8AAAAAAAALAAAAAAAAAAAAAAAPZnVuZGluZ19jdXRfYnBzAAAAAAQAAAAAAAAAAAAAAAthZGxfcG5sX2JwcwAAAAAEAAAAAAAAAAAAAAATYWRsX3V0aWxpemF0aW9uX2JwcwAAAAAEAAAAAAAAAAAAAAAZbGlxdWlkYXRpb25fdGhyZXNob2xkX2JwcwAAAAAAAAQAAAAAAAAAAQ==",
218
+ "AAAABQAAAAAAAAAAAAAADUFkbWluUHJvcG9zZWQAAAAAAAABAAAACWFkbWlucHJvcAAAAAAAAAIAAAAAAAAACHByb3Bvc2VyAAAAEwAAAAAAAAAAAAAACW5ld19hZG1pbgAAAAAAABMAAAAAAAAAAQ==",
219
+ "AAAABQAAAAAAAAAAAAAAD0ZlZUNvbmZpZ1VwZGF0ZQAAAAABAAAABmZlZWNuZgAAAAAAAwAAAAAAAAAMb3Blbl9mZWVfYnBzAAAABAAAAAAAAAAAAAAAFmxpcXVpZGF0aW9uX2JvdW50eV9icHMAAAAAAAQAAAAAAAAAAAAAABN0cF9zbF9leGVjdXRpb25fZmVlAAAAAAsAAAAAAAAAAQ==",
220
+ "AAAABQAAAAAAAAAAAAAAD0ZlZVNwbGl0c1VwZGF0ZQAAAAABAAAABmZlZWNmZwAAAAAAAwAAAAAAAAAGbHBfYnBzAAAAAAAEAAAAAAAAAAAAAAAHZGV2X2JwcwAAAAAEAAAAAAAAAAAAAAAKc3Rha2VyX2JwcwAAAAAABAAAAAAAAAAB",
221
+ "AAAABQAAAAAAAAAAAAAAEEJvcnJvd1JhdGVVcGRhdGUAAAABAAAABXJhdGVzAAAAAAAABQAAAAAAAAAUYmFzZV9ib3Jyb3dfcmF0ZV9icHMAAAALAAAAAAAAAAAAAAAKc2xvcGUxX2JwcwAAAAAACwAAAAAAAAAAAAAACnNsb3BlMl9icHMAAAAAAAsAAAAAAAAAAAAAABdvcHRpbWFsX3V0aWxpemF0aW9uX2JwcwAAAAALAAAAAAAAAAAAAAAVYmFzZV9mdW5kaW5nX3JhdGVfYnBzAAAAAAAACwAAAAAAAAAB",
222
+ "AAAABQAAAAAAAAAAAAAAFVVwZ3JhZGVUaW1lbG9ja1VwZGF0ZQAAAAAAAAEAAAAFdXBndGwAAAAAAAABAAAAAAAAABB0aW1lbG9ja19zZWNvbmRzAAAABgAAAAAAAAAB",
223
+ "AAAABQAAAAAAAAAAAAAAFkFkbWluUHJvcG9zYWxDYW5jZWxsZWQAAAAAAAEAAAAIYWRtaW5jeGwAAAABAAAAAAAAAAljYW5jZWxsZXIAAAAAAAATAAAAAAAAAAE=",
224
+ "AAAAAgAAAAAAAAAAAAAAClN0b3JhZ2VLZXkAAAAAAAgAAAAAAAAAQkluaXRpYWxpemF0aW9uIGZsYWcg4oCUIHNldCB0byBgdHJ1ZWAgYWZ0ZXIgYGluaXRpYWxpemVgIHN1Y2NlZWRzLgAAAAAAC0luaXRpYWxpemVkAAAAAAAAAAAYRmVlIHNwbGl0IGNvbmZpZ3VyYXRpb24uAAAACUZlZVNwbGl0cwAAAAAAAAAAAAApRXhlY3V0aW9uLWJvdW50eSBhbmQgb3Blbi1mZWUgcGFyYW1ldGVycy4AAAAAAAAJRmVlQ29uZmlnAAAAAAAAAAAAAExQcm90b2NvbCByaXNrIGFuZCB0aW1pbmcgbGltaXRzIChzaW5nbGUgc3RydWN0IHJlcGxhY2VzIGZvdXIgc2VwYXJhdGUga2V5cykuAAAADlByb3RvY29sTGltaXRzAAAAAAAAAAAAM0JvcnJvdyByYXRlIGtpbmsgY3VydmUgYW5kIGZ1bmRpbmcgcmF0ZSBwYXJhbWV0ZXJzLgAAAAAQQm9ycm93UmF0ZUNvbmZpZwAAAAAAAABmQ29uZmlndXJhYmxlIHVwZ3JhZGUgdGltZWxvY2sgaW4gc2Vjb25kcy4gRmxvb3IgZW5mb3JjZWQgYXQKYHNoYXJlZDo6Y29uc3RhbnRzOjpNSU5fVVBHUkFERV9USU1FTE9DS2AuAAAAAAAPVXBncmFkZVRpbWVsb2NrAAAAAAAAAABBUGVuZGluZyBhZG1pbiBhd2FpdGluZyBgYWNjZXB0X2FkbWluYCDigJQgc2V0IGJ5IGBwcm9wb3NlX2FkbWluYC4AAAAAAAAMUGVuZGluZ0FkbWluAAAAAAAAADBDdXJyZW50IGNvbnRyYWN0IHZlcnNpb24gKHdyaXR0ZW4gYnkgbWlncmF0aW9uKS4AAAAHVmVyc2lvbgA=",
225
+ "AAAAAQAAAHhQZW5kaW5nIGFkbWluIHRyYW5zZmVyIGF3YWl0aW5nIGBhY2NlcHRfYWRtaW5gLiBUaGUgcHJvcG9zYWwgdGltZXN0YW1wCmJvdW5kcyBpdHMgbGlmZXRpbWUgdG8gYEFETUlOX1BST1BPU0FMX1RUTF9TRUNTYC4AAAAAAAAAFFBlbmRpbmdBZG1pblByb3Bvc2FsAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAAtwcm9wb3NlZF9hdAAAAAAG",
226
+ "AAAAAAAAAAAAAAAHbWlncmF0ZQAAAAACAAAAAAAAAA5taWdyYXRpb25fZGF0YQAAAAAH0AAAAA1NaWdyYXRpb25EYXRhAAAAAAAAAAAAAAhvcGVyYXRvcgAAABMAAAAA",
227
+ "AAAAAAAAAAAAAAAHdXBncmFkZQAAAAACAAAAAAAAAA1uZXdfd2FzbV9oYXNoAAAAAAAD7gAAACAAAAAAAAAACG9wZXJhdG9yAAAAEwAAAAA=",
228
+ "AAAAAAAAAAAAAAAIaGFzX3JvbGUAAAACAAAAAAAAAARyb2xlAAAAEQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAE=",
229
+ "AAAAAAAAAAAAAAAKZ3JhbnRfcm9sZQAAAAAAAwAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAARyb2xlAAAAEQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAA==",
230
+ "AAAAAAAAAAAAAAALcmV2b2tlX3JvbGUAAAAAAwAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAARyb2xlAAAAEQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAA==",
231
+ "AAAAAAAAAAAAAAAMYWNjZXB0X2FkbWluAAAAAQAAAAAAAAAJbmV3X2FkbWluAAAAAAAAEwAAAAA=",
232
+ "AAAAAAAAARFBdG9taWMtd2l0aC1kZXBsb3kgaW5pdGlhbGl6YXRpb24gKFNvcm9iYW4gY29uc3RydWN0b3IpLiBSdW5zIGV4YWN0bHkKb25jZSwgaW5zaWRlIHRoZSBkZXBsb3kgdHJhbnNhY3Rpb24sIHNvIHRoZXJlIGlzIG5vIHdpbmRvdyBpbiB3aGljaCBhCnRoaXJkIHBhcnR5IGNvdWxkIGZyb250LXJ1biBpbml0IGFuZCBjbGFpbSB0aGUgYWRtaW4gcm9sZS4gR3JhbnRzCkRFRkFVTFRfQURNSU5fUk9MRSB0byBgYWRtaW5fYWRkcmVzc2AgYW5kIHNlZWRzIHZhbGlkYXRlZCBkZWZhdWx0cy4AAAAAAAANX19jb25zdHJ1Y3RvcgAAAAAAAAEAAAAAAAAADWFkbWluX2FkZHJlc3MAAAAAAAATAAAAAA==",
233
+ "AAAAAAAAAAAAAAANcHJvcG9zZV9hZG1pbgAAAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAJbmV3X2FkbWluAAAAAAAAEwAAAAA=",
234
+ "AAAAAAAAAAAAAAAOY2FuY2VsX3VwZ3JhZGUAAAAAAAEAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAA=",
235
+ "AAAAAAAAAAAAAAAOZ2V0X2ZlZV9jb25maWcAAAAAAAAAAAABAAAH0AAAAAlGZWVDb25maWcAAAA=",
236
+ "AAAAAAAAAAAAAAAOZ2V0X2ZlZV9zcGxpdHMAAAAAAAAAAAABAAAH0AAAAAlGZWVTcGxpdHMAAAA=",
237
+ "AAAAAAAAAAAAAAAOc2V0X2ZlZV9jb25maWcAAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAGY29uZmlnAAAAAAfQAAAACUZlZUNvbmZpZwAAAAAAAAA=",
238
+ "AAAAAAAAAAAAAAAPcHJvcG9zZV91cGdyYWRlAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAJd2FzbV9oYXNoAAAAAAAD7gAAACAAAAAA",
239
+ "AAAAAAAAAAAAAAARYnVtcF9jb25maWdfc3RhdGUAAAAAAAAAAAAAAA==",
240
+ "AAAAAAAAAAAAAAARZ2V0X3BlbmRpbmdfYWRtaW4AAAAAAAAAAAAAAQAAA+gAAAAT",
241
+ "AAAAAAAAAAAAAAARdXBkYXRlX2ZlZV9zcGxpdHMAAAAAAAACAAAAAAAAAAZjYWxsZXIAAAAAABMAAAAAAAAACmZlZV9zcGxpdHMAAAAAB9AAAAAJRmVlU3BsaXRzAAAAAAAAAA==",
242
+ "AAAAAAAAAAAAAAATZ2V0X3Byb3RvY29sX2xpbWl0cwAAAAAAAAAAAQAAB9AAAAAOUHJvdG9jb2xMaW1pdHMAAA==",
243
+ "AAAAAAAAAAAAAAAUZ2V0X3VwZ3JhZGVfdGltZWxvY2sAAAAAAAAAAQAAAAY=",
244
+ "AAAAAAAAAAAAAAAUc2V0X3VwZ3JhZGVfdGltZWxvY2sAAAACAAAAAAAAAAZjYWxsZXIAAAAAABMAAAAAAAAAB3NlY29uZHMAAAAABgAAAAA=",
245
+ "AAAAAAAAAAAAAAAVY2FuY2VsX2FkbWluX3Byb3Bvc2FsAAAAAAAAAQAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAA==",
246
+ "AAAAAAAAAAAAAAAWZ2V0X2JvcnJvd19yYXRlX2NvbmZpZwAAAAAAAAAAAAEAAAfQAAAAEEJvcnJvd1JhdGVDb25maWc=",
247
+ "AAAAAAAAAAAAAAAWdXBkYXRlX3Byb3RvY29sX2xpbWl0cwAAAAAAAgAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAZsaW1pdHMAAAAAB9AAAAAOUHJvdG9jb2xMaW1pdHMAAAAAAAA=",
248
+ "AAAAAAAAAAAAAAAZdXBkYXRlX2JvcnJvd19yYXRlX2NvbmZpZwAAAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAGY29uZmlnAAAAAAfQAAAAEEJvcnJvd1JhdGVDb25maWcAAAAA",
249
+ "AAAABAAAAAAAAAAAAAAAEVJvbGVUcmFuc2ZlckVycm9yAAAAAAAAAwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAiYAAAAAAAAABZJbnZhbGlkTGl2ZVVudGlsTGVkZ2VyAAAAAAiZAAAAAAAAABVJbnZhbGlkUGVuZGluZ0FjY291bnQAAAAAAAia",
250
+ "AAAABQAAACVFdmVudCBlbWl0dGVkIHdoZW4gYSByb2xlIGlzIGdyYW50ZWQuAAAAAAAAAAAAAAtSb2xlR3JhbnRlZAAAAAABAAAADHJvbGVfZ3JhbnRlZAAAAAMAAAAAAAAABHJvbGUAAAARAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAI=",
251
+ "AAAABQAAACVFdmVudCBlbWl0dGVkIHdoZW4gYSByb2xlIGlzIHJldm9rZWQuAAAAAAAAAAAAAAtSb2xlUmV2b2tlZAAAAAABAAAADHJvbGVfcmV2b2tlZAAAAAMAAAAAAAAABHJvbGUAAAARAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAI=",
252
+ "AAAABQAAAC9FdmVudCBlbWl0dGVkIHdoZW4gdGhlIGFkbWluIHJvbGUgaXMgcmVub3VuY2VkLgAAAAAAAAAADkFkbWluUmVub3VuY2VkAAAAAAABAAAAD2FkbWluX3Jlbm91bmNlZAAAAAABAAAAAAAAAAVhZG1pbgAAAAAAABMAAAABAAAAAg==",
253
+ "AAAABQAAACtFdmVudCBlbWl0dGVkIHdoZW4gYSByb2xlIGFkbWluIGlzIGNoYW5nZWQuAAAAAAAAAAAQUm9sZUFkbWluQ2hhbmdlZAAAAAEAAAAScm9sZV9hZG1pbl9jaGFuZ2VkAAAAAAADAAAAAAAAAARyb2xlAAAAEQAAAAEAAAAAAAAAE3ByZXZpb3VzX2FkbWluX3JvbGUAAAAAEQAAAAAAAAAAAAAADm5ld19hZG1pbl9yb2xlAAAAAAARAAAAAAAAAAI=",
254
+ "AAAABAAAAAAAAAAAAAAAEkFjY2Vzc0NvbnRyb2xFcnJvcgAAAAAACwAAAAAAAAAMVW5hdXRob3JpemVkAAAH0AAAAAAAAAALQWRtaW5Ob3RTZXQAAAAH0QAAAAAAAAAQSW5kZXhPdXRPZkJvdW5kcwAAB9IAAAAAAAAAEUFkbWluUm9sZU5vdEZvdW5kAAAAAAAH0wAAAAAAAAASUm9sZUNvdW50SXNOb3RaZXJvAAAAAAfUAAAAAAAAAAxSb2xlTm90Rm91bmQAAAfVAAAAAAAAAA9BZG1pbkFscmVhZHlTZXQAAAAH1gAAAAAAAAALUm9sZU5vdEhlbGQAAAAH1wAAAAAAAAALUm9sZUlzRW1wdHkAAAAH2AAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAfZAAAAAAAAABBNYXhSb2xlc0V4Y2VlZGVkAAAH2g==",
255
+ "AAAABQAAADJFdmVudCBlbWl0dGVkIHdoZW4gYW4gYWRtaW4gdHJhbnNmZXIgaXMgY29tcGxldGVkLgAAAAAAAAAAABZBZG1pblRyYW5zZmVyQ29tcGxldGVkAAAAAAABAAAAGGFkbWluX3RyYW5zZmVyX2NvbXBsZXRlZAAAAAIAAAAAAAAACW5ld19hZG1pbgAAAAAAABMAAAABAAAAAAAAAA5wcmV2aW91c19hZG1pbgAAAAAAEwAAAAAAAAAC",
256
+ "AAAABQAAADJFdmVudCBlbWl0dGVkIHdoZW4gYW4gYWRtaW4gdHJhbnNmZXIgaXMgaW5pdGlhdGVkLgAAAAAAAAAAABZBZG1pblRyYW5zZmVySW5pdGlhdGVkAAAAAAABAAAAGGFkbWluX3RyYW5zZmVyX2luaXRpYXRlZAAAAAMAAAAAAAAADWN1cnJlbnRfYWRtaW4AAAAAAAATAAAAAQAAAAAAAAAJbmV3X2FkbWluAAAAAAAAEwAAAAAAAAAAAAAAEWxpdmVfdW50aWxfbGVkZ2VyAAAAAAAABAAAAAAAAAAC",
257
+ "AAAAAQAAADFTdG9yYWdlIGtleSBmb3IgZW51bWVyYXRpb24gb2YgYWNjb3VudHMgcGVyIHJvbGUuAAAAAAAAAAAAAA5Sb2xlQWNjb3VudEtleQAAAAAAAgAAAAAAAAAFaW5kZXgAAAAAAAAEAAAAAAAAAARyb2xlAAAAEQ==",
258
+ "AAAAAgAAADxTdG9yYWdlIGtleXMgZm9yIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgYWNjZXNzIGNvbnRyb2wAAAAAAAAAF0FjY2Vzc0NvbnRyb2xTdG9yYWdlS2V5AAAAAAcAAAAAAAAAAAAAAA1FeGlzdGluZ1JvbGVzAAAAAAAAAQAAAAAAAAAMUm9sZUFjY291bnRzAAAAAQAAB9AAAAAOUm9sZUFjY291bnRLZXkAAAAAAAEAAAAAAAAAB0hhc1JvbGUAAAAAAgAAABMAAAARAAAAAQAAAAAAAAARUm9sZUFjY291bnRzQ291bnQAAAAAAAABAAAAEQAAAAEAAAAAAAAACVJvbGVBZG1pbgAAAAAAAAEAAAARAAAAAAAAAAAAAAAFQWRtaW4AAAAAAAAAAAAAAAAAAAxQZW5kaW5nQWRtaW4=",
259
+ "AAAABAAAAAAAAAAAAAAADE93bmFibGVFcnJvcgAAAAMAAAAAAAAAC093bmVyTm90U2V0AAAACDQAAAAAAAAAElRyYW5zZmVySW5Qcm9ncmVzcwAAAAAINQAAAAAAAAAPT3duZXJBbHJlYWR5U2V0AAAACDY=",
260
+ "AAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gYW4gb3duZXJzaGlwIHRyYW5zZmVyIGlzIGluaXRpYXRlZC4AAAAAAAAAAAART3duZXJzaGlwVHJhbnNmZXIAAAAAAAABAAAAEm93bmVyc2hpcF90cmFuc2ZlcgAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAABFsaXZlX3VudGlsX2xlZGdlcgAAAAAAAAQAAAAAAAAAAg==",
261
+ "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAC",
262
+ "AAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gYW4gb3duZXJzaGlwIHRyYW5zZmVyIGlzIGNvbXBsZXRlZC4AAAAAAAAAAAAaT3duZXJzaGlwVHJhbnNmZXJDb21wbGV0ZWQAAAAAAAEAAAAcb3duZXJzaGlwX3RyYW5zZmVyX2NvbXBsZXRlZAAAAAEAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAg==",
263
+ "AAAAAgAAACNTdG9yYWdlIGtleXMgZm9yIGBPd25hYmxlYCB1dGlsaXR5LgAAAAAAAAAAEU93bmFibGVTdG9yYWdlS2V5AAAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVy",
264
+ "AAAAAQAAADVSZXByZXNlbnRzIGEgc2luZ2xlIHRyYWRlcidzIG9wZW4gbGV2ZXJhZ2VkIHBvc2l0aW9uLgAAAAAAAAAAAAAIUG9zaXRpb24AAAAKAAAAKFVTREMgY29sbGF0ZXJhbCBkZXBvc2l0ZWQgYnkgdGhlIHRyYWRlci4AAAAKY29sbGF0ZXJhbAAAAAAACwAAAEVHbG9iYWwgYm9ycm93IGFjY3VtdWxhdG9yIGluZGV4IGF0IHBvc2l0aW9uIG9wZW4gKGZvciBsYXp5IGZlZSBjYWxjKS4AAAAAAAASZW50cnlfYm9ycm93X2luZGV4AAAAAAALAAAARkdsb2JhbCBmdW5kaW5nIGFjY3VtdWxhdG9yIGluZGV4IGF0IHBvc2l0aW9uIG9wZW4gKGZvciBsYXp5IGZlZSBjYWxjKS4AAAAAABNlbnRyeV9mdW5kaW5nX2luZGV4AAAAAAsAAABBT3JhY2xlIHByaWNlIGF0IHRoZSB0aW1lIHRoZSBwb3NpdGlvbiB3YXMgb3BlbmVkIChzY2FsZWQgYnkgMWU3KS4AAAAAAAALZW50cnlfcHJpY2UAAAAACwAAAIxGbGF0IFVTREMgZmVlIGVzY3Jvd2VkIHdoZW4gVFAgb3IgU0wgaXMgc2V0LiBQYWlkIHRvIGV4ZWN1dG9yIG9uIHRyaWdnZXIsIHJlZnVuZGVkIG9uIHVzZXIgY2xvc2UgLyBBREwsIGZvcmZlaXRlZCB0byByZXZlbnVlIG9uIGxpcXVpZGF0aW9uLgAAABRleGVjdXRpb25fZmVlX2VzY3JvdwAAAAsAAAAsVHJ1ZSBmb3IgYSBsb25nIHBvc2l0aW9uLCBmYWxzZSBmb3IgYSBzaG9ydC4AAAAHaXNfbG9uZwAAAAABAAAAT0Jsb2NrIHRpbWVzdGFtcCB3aGVuIHRoZSBwb3NpdGlvbiB3YXMgbGFzdCBpbmNyZWFzZWQgKGFudGktZnJvbnQtcnVubmluZyBsb2NrKS4AAAAAE2xhc3RfaW5jcmVhc2VkX3RpbWUAAAAABgAAACZOb3Rpb25hbCBzaXplIG9mIHRoZSBwb3NpdGlvbiBpbiBVU0RDLgAAAAAABHNpemUAAAALAAAALVN0b3AtbG9zcyBwcmljZSAoc2NhbGVkIGJ5IDFlNykuIDAgPSBub3Qgc2V0LgAAAAAAAAlzdG9wX2xvc3MAAAAAAAALAAAAL1Rha2UtcHJvZml0IHByaWNlIChzY2FsZWQgYnkgMWU3KS4gMCA9IG5vdCBzZXQuAAAAAAt0YWtlX3Byb2ZpdAAAAAAL",
265
+ "AAAAAQAAADhHbG9iYWwgbWFya2V0IHN0YXRlIGZvciBhIHNpbmdsZSB0cmFkZWFibGUgYXNzZXQgc3ltYm9sLgAAAAAAAAAKTWFya2V0SW5mbwAAAAAABwAAADxDdW11bGF0aXZlIGJvcnJvdyBmZWUgaW5kZXggKGdyb3dzIG1vbm90b25pY2FsbHkgd2l0aCB0aW1lKS4AAAAQYWNjX2JvcnJvd19pbmRleAAAAAsAAABEQ3VtdWxhdGl2ZSBmdW5kaW5nIHJhdGUgaW5kZXggKHNpZ25lZDsgcG9zaXRpdmUgPSBsb25ncyBwYXkgc2hvcnRzKS4AAAARYWNjX2Z1bmRpbmdfaW5kZXgAAAAAAAALAAAAQVZvbHVtZS13ZWlnaHRlZCBhdmVyYWdlIGVudHJ5IHByaWNlIG9mIGFsbCBhY3RpdmUgbG9uZyBwb3NpdGlvbnMuAAAAAAAAFWdsb2JhbF9sb25nX2F2Z19wcmljZQAAAAAAAAsAAABCVm9sdW1lLXdlaWdodGVkIGF2ZXJhZ2UgZW50cnkgcHJpY2Ugb2YgYWxsIGFjdGl2ZSBzaG9ydCBwb3NpdGlvbnMuAAAAAAAWZ2xvYmFsX3Nob3J0X2F2Z19wcmljZQAAAAAACwAAACpUaW1lc3RhbXAgb2YgdGhlIGxhc3Qga2VlcGVyIGluZGV4IHVwZGF0ZS4AAAAAABFsYXN0X2luZGV4X3VwZGF0ZQAAAAAAAAYAAAAvVG90YWwgbm90aW9uYWwgc2l6ZSBvZiBhbGwgb3BlbiBsb25nIHBvc2l0aW9ucy4AAAAAEmxvbmdfb3Blbl9pbnRlcmVzdAAAAAAACwAAADBUb3RhbCBub3Rpb25hbCBzaXplIG9mIGFsbCBvcGVuIHNob3J0IHBvc2l0aW9ucy4AAAATc2hvcnRfb3Blbl9pbnRlcmVzdAAAAAAL",
266
+ "AAAAAQAAAC5HbG9iYWwgc2FmZXR5IHRocmVzaG9sZHMgZm9yIHByaWNlIHZhbGlkYXRpb24uAAAAAAAAAAAADE9yYWNsZUNvbmZpZwAAAAQAAAEkSG93IGxvbmcgYSBjYWNoZWQgYWdncmVnYXRlZCBwcmljZSByZW1haW5zIHZhbGlkIChpbiBzZWNvbmRzKS4gQQpgZ2V0X3ByaWNlYCBjYWxsIHdpdGhpbiB0aGlzIHdpbmRvdyBvZiB0aGUgbGFzdCBmZXRjaCByZXR1cm5zIHRoZQpjYWNoZWQgdmFsdWUgd2l0aG91dCByZS1xdWVyeWluZyBzb3VyY2VzLiBNdXN0IGJlID4gMCBhbmQKPD0gYHN0YWxlbmVzc190aHJlc2hvbGRgIChvdGhlcndpc2UgdGhlIGNhY2hlIGNvdWxkIG91dGxpdmUgYSBmcmVzaApzb3VyY2UgcHJpY2UgYW5kIHNlcnZlIHN0YWxlIGRhdGEpLgAAAA5jYWNoZV9kdXJhdGlvbgAAAAAABgAAAIpNYXhpbXVtIGFsbG93ZWQgc3ByZWFkIGJldHdlZW4gb3JhY2xlIHNvdXJjZXMgaW4gYmFzaXMgcG9pbnRzCihlLmcuLCAxMDAgPSAxJSkuIEJvdW5kZWQgYXQgYHNoYXJlZDo6Y29uc3RhbnRzOjpNQVhfREVWSUFUSU9OX0JQU19DRUlMSU5HYC4AAAAAABFtYXhfZGV2aWF0aW9uX2JwcwAAAAAAAAsAAADjTWluaW11bSBudW1iZXIgb2Ygc291cmNlIHJlc3BvbnNlcyB0aGF0IG11c3QgYWdyZWUgd2l0aGluCmBtYXhfZGV2aWF0aW9uX2Jwc2AgZm9yIE9yYWNsZVJvdXRlciB0byByZXR1cm4gYSBwcmljZS4gRmxvb3JlZCBhdApgc2hhcmVkOjpjb25zdGFudHM6Ok1JTl9SRVFVSVJFRF9TT1VSQ0VTX0ZMT09SYCwgY2VpbGluZ2VkIGF0CmBzaGFyZWQ6OmNvbnN0YW50czo6TUFYX09SQUNMRV9TT1VSQ0VTYC4AAAAAFG1pbl9yZXF1aXJlZF9zb3VyY2VzAAAABAAAAFlNYXhpbXVtIGFnZSBvZiBhbiBleHRlcm5hbCBTRVAtNDAgcHJpY2UgZmVlZCBiZWZvcmUgaXQgaXMgcmVqZWN0ZWQKYXMgc3RhbGUgKGluIHNlY29uZHMpLgAAAAAAABNzdGFsZW5lc3NfdGhyZXNob2xkAAAAAAY=",
267
+ "AAAAAQAAAEtEYXRhIHJlcXVpcmVkIGR1cmluZyBhIFdBU00gbWlncmF0aW9uLiBTaW5nbGUgZGVmaW5pdGlvbiBmb3IgYWxsIGNvbnRyYWN0cy4AAAAAAAAAAA1NaWdyYXRpb25EYXRhAAAAAAAAAQAAAAAAAAAHdmVyc2lvbgAAAAAE",
268
+ "AAAAAQAAAb5QZW5kaW5nIFdBU00gdXBncmFkZSDigJQgc2V0IGJ5IGBwcm9wb3NlX3VwZ3JhZGVgLCBjb25zdW1lZCBieSBgdXBncmFkZWAKKGNsZWFyZWQgYXRvbWljYWxseSBvbiBhIHN1Y2Nlc3NmdWwgaW5zdGFsbCksIG9yIGNsZWFyZWQgYnkgYGNhbmNlbF91cGdyYWRlYC4KU2luZ2xlIHNoYXBlIGFjcm9zcyBldmVyeSBwcm90b2NvbCBjb250cmFjdDsgYWxsIGZvdXIgY29udHJhY3RzIHN0b3JlIGl0IGF0CnRoZSBzaGFyZWQgYHBlbmRpbmdfdXBncmFkZWAgU3ltYm9sIGtleSBpbiB0aGVpciBvd24gaW5zdGFuY2Ugc3RvcmFnZSAoc2VlCmBpbnRlcmZhY2VzOjp1cGdyYWRlOjpwZW5kaW5nX3VwZ3JhZGVfa2V5YCkuIGB1cGdyYWRlYCByZWZ1c2VzIHRvIGluc3RhbGwKdW5sZXNzIGBwZW5kaW5nLndhc21faGFzaGAgbWF0Y2hlcyB0aGUgc3VwcGxpZWQgaGFzaCBhbmQgYG5vdyA+PSBldGFgLgAAAAAAAAAAAA5QZW5kaW5nVXBncmFkZQAAAAAAAgAAAAAAAAADZXRhAAAAAAYAAAAAAAAACXdhc21faGFzaAAAAAAAA+4AAAAg",
269
+ "AAAABQAAALVFbWl0dGVkIGJ5IGBwcm9wb3NlX3VwZ3JhZGVgLiBPZmYtY2hhaW4gbW9uaXRvcmluZyByZWNvcmRzIHRoZSBwcm9wb3NlZApgd2FzbV9oYXNoYCArIGBldGFgIGFuZCBmbGFncyBhbnkgc3Vic2VxdWVudCBgdXBncmFkZSgpYCBjYWxsIHdob3NlIGhhc2gKZGl2ZXJnZXMgb3IgdGhhdCBmaXJlcyBiZWZvcmUgYGV0YWAuAAAAAAAAAAAAAA9VcGdyYWRlUHJvcG9zZWQAAAAAAQAAAAZ1cGdwcnAAAAAAAAIAAAAAAAAACXdhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAADZXRhAAAAAAYAAAAAAAAAAQ==",
270
+ "AAAABQAAAC9FbWl0dGVkIGJ5IGBjYW5jZWxfdXBncmFkZWAgKFBBVVNFUiB2ZXRvIHBhdGgpLgAAAAAAAAAAEFVwZ3JhZGVDYW5jZWxsZWQAAAABAAAABnVwZ2NhbgAAAAAAAQAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAE=",
271
+ "AAAABAAAAAAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAABAAAAQVdoZW4gbWlncmF0aW9uIGlzIGF0dGVtcHRlZCBidXQgbm90IGFsbG93ZWQgZHVlIHRvIHVwZ3JhZGUgc3RhdGUuAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAETA==",
272
+ "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gdGhlIG1lcmtsZSByb290IGlzIHNldC4AAAAAAAAAAAAHU2V0Um9vdAAAAAABAAAACHNldF9yb290AAAAAQAAAAAAAAAEcm9vdAAAAA4AAAAAAAAAAg==",
273
+ "AAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gYW4gaW5kZXggaXMgY2xhaW1lZC4AAAAAAAAAAApTZXRDbGFpbWVkAAAAAAABAAAAC3NldF9jbGFpbWVkAAAAAAEAAAAAAAAABWluZGV4AAAAAAAAAAAAAAAAAAAC",
274
+ "AAAABAAAAAAAAAAAAAAAFk1lcmtsZURpc3RyaWJ1dG9yRXJyb3IAAAAAAAMAAAAbVGhlIG1lcmtsZSByb290IGlzIG5vdCBzZXQuAAAAAApSb290Tm90U2V0AAAAAAUUAAAAJ1RoZSBwcm92aWRlZCBpbmRleCB3YXMgYWxyZWFkeSBjbGFpbWVkLgAAAAATSW5kZXhBbHJlYWR5Q2xhaW1lZAAAAAUVAAAAFVRoZSBwcm9vZiBpcyBpbnZhbGlkLgAAAAAAAAxJbnZhbGlkUHJvb2YAAAUW",
275
+ "AAAAAgAAAD1TdG9yYWdlIGtleXMgZm9yIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCBgTWVya2xlRGlzdHJpYnV0b3JgAAAAAAAAAAAAABtNZXJrbGVEaXN0cmlidXRvclN0b3JhZ2VLZXkAAAAAAgAAAAAAAAAoVGhlIE1lcmtsZSByb290IG9mIHRoZSBkaXN0cmlidXRpb24gdHJlZQAAAARSb290AAAAAQAAACNNYXBzIGFuIGluZGV4IHRvIGl0cyBjbGFpbWVkIHN0YXR1cwAAAAAHQ2xhaW1lZAAAAAABAAAABA==",
276
+ "AAAAAgAAACpSb3VuZGluZyBkaXJlY3Rpb24gZm9yIGRpdmlzaW9uIG9wZXJhdGlvbnMAAAAAAAAAAAAIUm91bmRpbmcAAAADAAAAAAAAACVSb3VuZCB0b3dhcmQgbmVnYXRpdmUgaW5maW5pdHkgKGRvd24pAAAAAAAABUZsb29yAAAAAAAAAAAAACNSb3VuZCB0b3dhcmQgcG9zaXRpdmUgaW5maW5pdHkgKHVwKQAAAAAEQ2VpbAAAAAAAAAAeUm91bmQgdG93YXJkIHplcm8gKHRydW5jYXRpb24pAAAAAAAIVHJ1bmNhdGU=",
277
+ "AAAABAAAAAAAAAAAAAAAFlNvcm9iYW5GaXhlZFBvaW50RXJyb3IAAAAAAAIAAAAcQXJpdGhtZXRpYyBvdmVyZmxvdyBvY2N1cnJlZAAAAAhPdmVyZmxvdwAABdwAAAAQRGl2aXNpb24gYnkgemVybwAAAA5EaXZpc2lvbkJ5WmVybwAAAAAF3Q==",
278
+ "AAAABAAAAAAAAAAAAAAAC0NyeXB0b0Vycm9yAAAAAAMAAAApVGhlIG1lcmtsZSBwcm9vZiBsZW5ndGggaXMgb3V0IG9mIGJvdW5kcy4AAAAAAAAWTWVya2xlUHJvb2ZPdXRPZkJvdW5kcwAAAAAFeAAAACdUaGUgaW5kZXggb2YgdGhlIGxlYWYgaXMgb3V0IG9mIGJvdW5kcy4AAAAAFk1lcmtsZUluZGV4T3V0T2ZCb3VuZHMAAAAABXkAAAAYTm8gZGF0YSBpbiBoYXNoZXIgc3RhdGUuAAAAEEhhc2hlckVtcHR5U3RhdGUAAAV6",
279
+ "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNvbnRyYWN0IGlzIHBhdXNlZC4AAAAAAAAAAAAGUGF1c2VkAAAAAAABAAAABnBhdXNlZAAAAAAAAAAAAAI=",
280
+ "AAAABQAAACxFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNvbnRyYWN0IGlzIHVucGF1c2VkLgAAAAAAAAAIVW5wYXVzZWQAAAABAAAACHVucGF1c2VkAAAAAAAAAAI=",
281
+ "AAAABAAAAAAAAAAAAAAADVBhdXNhYmxlRXJyb3IAAAAAAAACAAAANFRoZSBvcGVyYXRpb24gZmFpbGVkIGJlY2F1c2UgdGhlIGNvbnRyYWN0IGlzIHBhdXNlZC4AAAANRW5mb3JjZWRQYXVzZQAAAAAAA+gAAAA4VGhlIG9wZXJhdGlvbiBmYWlsZWQgYmVjYXVzZSB0aGUgY29udHJhY3QgaXMgbm90IHBhdXNlZC4AAAANRXhwZWN0ZWRQYXVzZQAAAAAAA+k=",
282
+ "AAAAAgAAACJTdG9yYWdlIGtleSBmb3IgdGhlIHBhdXNhYmxlIHN0YXRlAAAAAAAAAAAAElBhdXNhYmxlU3RvcmFnZUtleQAAAAAAAQAAAAAAAAAySW5kaWNhdGVzIHdoZXRoZXIgdGhlIGNvbnRyYWN0IGlzIGluIHBhdXNlZCBzdGF0ZS4AAAAAAAZQYXVzZWQAAA==",
283
+ "AAAAAQAAAL1FeGVjdXRpb24tYm91bnR5IGFuZCBvcGVuLWZlZSBwYXJhbWV0ZXJzIGNoYXJnZWQgdG8gdHJhZGVycy4KYG9wZW5fZmVlX2Jwc2AgYW5kIGBsaXF1aWRhdGlvbl9ib3VudHlfYnBzYCBhcmUgaW4gYmFzaXMgcG9pbnRzOwpgdHBfc2xfZXhlY3V0aW9uX2ZlZWAgaXMgYSBmbGF0IFVTREMgYW1vdW50IGF0IFBSRUNJU0lPTiBzY2FsZS4AAAAAAAAAAAAACUZlZUNvbmZpZwAAAAAAAAMAAAAAAAAAFmxpcXVpZGF0aW9uX2JvdW50eV9icHMAAAAAAAQAAAAAAAAADG9wZW5fZmVlX2JwcwAAAAQAAAAAAAAAE3RwX3NsX2V4ZWN1dGlvbl9mZWUAAAAACw==",
284
+ "AAAAAQAAAHBEZWZpbmVzIGhvdyBwcm90b2NvbCByZXZlbnVlIGlzIHNwbGl0IGJldHdlZW4gcGFydGllcy4KQWxsIHZhbHVlcyBhcmUgaW4gYmFzaXMgcG9pbnRzIChicHMpLiBNdXN0IHN1bSB0byAxMF8wMDAuAAAAAAAAAAlGZWVTcGxpdHMAAAAAAAADAAAAAAAAAAdkZXZfYnBzAAAAAAQAAAAAAAAABmxwX2JwcwAAAAAABAAAAAAAAAAKc3Rha2VyX2JwcwAAAAAABA==",
285
+ "AAAAAQAAACtHbG9iYWwgcHJvdG9jb2wgcmlzayBhbmQgdGltaW5nIHBhcmFtZXRlcnMuAAAAAAAAAAAOUHJvdG9jb2xMaW1pdHMAAAAAAAgAAAAAAAAAC2FkbF9wbmxfYnBzAAAAAAQAAAAAAAAAE2FkbF91dGlsaXphdGlvbl9icHMAAAAABAAAAAAAAAARY29vbGRvd25fZHVyYXRpb24AAAAAAAAGAAAAAAAAAA9mdW5kaW5nX2N1dF9icHMAAAAABAAAAAAAAAAZbGlxdWlkYXRpb25fdGhyZXNob2xkX2JwcwAAAAAAAAQAAAAAAAAAFW1heF91dGlsaXphdGlvbl9yYXRpbwAAAAAAAAsAAAAAAAAADm1pbl9jb2xsYXRlcmFsAAAAAAALAAAAAAAAABVtaW5fcG9zaXRpb25fbGlmZXRpbWUAAAAAAAAG",
286
+ "AAAAAQAAAElCb3Jyb3cgcmF0ZSBraW5rIGN1cnZlIGFuZCBmdW5kaW5nIHJhdGUgcGFyYW1ldGVycyAoYWxsIGluIGJhc2lzIHBvaW50cykuAAAAAAAAAAAAABBCb3Jyb3dSYXRlQ29uZmlnAAAABQAAAAAAAAAUYmFzZV9ib3Jyb3dfcmF0ZV9icHMAAAALAAAAAAAAABViYXNlX2Z1bmRpbmdfcmF0ZV9icHMAAAAAAAALAAAAAAAAABdvcHRpbWFsX3V0aWxpemF0aW9uX2JwcwAAAAALAAAAAAAAAApzbG9wZTFfYnBzAAAAAAALAAAAAAAAAApzbG9wZTJfYnBzAAAAAAAL"]), options);
287
+ this.options = options;
288
+ }
289
+ fromJSON = {
290
+ migrate: (this.txFromJSON),
291
+ upgrade: (this.txFromJSON),
292
+ has_role: (this.txFromJSON),
293
+ grant_role: (this.txFromJSON),
294
+ revoke_role: (this.txFromJSON),
295
+ accept_admin: (this.txFromJSON),
296
+ propose_admin: (this.txFromJSON),
297
+ cancel_upgrade: (this.txFromJSON),
298
+ get_fee_config: (this.txFromJSON),
299
+ get_fee_splits: (this.txFromJSON),
300
+ set_fee_config: (this.txFromJSON),
301
+ propose_upgrade: (this.txFromJSON),
302
+ bump_config_state: (this.txFromJSON),
303
+ get_pending_admin: (this.txFromJSON),
304
+ update_fee_splits: (this.txFromJSON),
305
+ get_protocol_limits: (this.txFromJSON),
306
+ get_upgrade_timelock: (this.txFromJSON),
307
+ set_upgrade_timelock: (this.txFromJSON),
308
+ cancel_admin_proposal: (this.txFromJSON),
309
+ get_borrow_rate_config: (this.txFromJSON),
310
+ update_protocol_limits: (this.txFromJSON),
311
+ update_borrow_rate_config: (this.txFromJSON)
312
+ };
313
+ }