@perpx/js-sdk 0.0.1 → 0.0.2
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.
- package/LICENSE +1 -1
- package/README.md +8 -35
- package/build/cjs/src/clients/constants.js +4 -4
- package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/build/esm/src/clients/constants.d.ts +3 -3
- package/build/esm/src/clients/constants.d.ts.map +1 -1
- package/build/esm/src/clients/constants.js +4 -4
- package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +3 -2
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Copyright (C) 2025 PerpX
|
|
2
2
|
|
|
3
|
-
Subject to your compliance with applicable law and the
|
|
3
|
+
Subject to your compliance with applicable law and the Terms of Use, available at PerpX.exchange/legal, you are granted the right to use the Software (defined below) under the terms of the license as set forth below; provided, however, that if you violate any such applicable law in your use of the Software, all of your rights and licenses to use (including any rights to reproduce, distribute, install or modify) the Software will automatically and immediately terminate.
|
|
4
4
|
|
|
5
5
|
The "Software" shall mean the following: 1119-Labs/perpx-sdk and any PerpX repository reflecting a copy of, or linking to, this license.
|
|
6
6
|
|
package/README.md
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
<h1 align="center">PerpX Chain Client for Javascript</h1>
|
|
4
4
|
|
|
5
5
|
<div align="center">
|
|
6
|
-
<a href='https://www.npmjs.com/package/@
|
|
7
|
-
<img src='https://img.shields.io/npm/v/@
|
|
6
|
+
<a href='https://www.npmjs.com/package/@perpx/js-sdk'>
|
|
7
|
+
<img src='https://img.shields.io/npm/v/@perpx/js-sdk.svg' alt='npm'/>
|
|
8
8
|
</a>
|
|
9
9
|
<a href='https://github.com/1119-Labs/perpx-sdk/blob/main/LICENSE'>
|
|
10
10
|
<img src='https://img.shields.io/badge/License-AGPL_v3-blue.svg' alt='License' />
|
|
@@ -18,34 +18,18 @@ The v4-Client Typescript client is used for placing transactions and querying th
|
|
|
18
18
|
Install the package directly from the GitHub repository:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npm install
|
|
21
|
+
npm install @perpx/js-sdk
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
Or using yarn:
|
|
25
25
|
|
|
26
26
|
```bash
|
|
27
|
-
yarn add
|
|
27
|
+
yarn add @perpx/js-sdk
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
## Development
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
You can use `nvm` to manage different versions of node.
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
nvm install
|
|
37
|
-
nvm use
|
|
38
|
-
nvm alias default $(nvm version) # optional
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
You can run the following commands to ensure that you are running the correct `node` and `npm` versions.
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
node -v # expected: v20.x.x (should match .nvmrc)
|
|
45
|
-
npm -v # expected: 10.x.x
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### 1. Clone or fork the V4 clients repo
|
|
32
|
+
### 1. Clone or fork the clients repo
|
|
49
33
|
|
|
50
34
|
```bash
|
|
51
35
|
git clone git@github.com:1119-Labs/perpx-sdk.git
|
|
@@ -53,13 +37,13 @@ git clone git@github.com:1119-Labs/perpx-sdk.git
|
|
|
53
37
|
|
|
54
38
|
### 2. Go to one of the examples
|
|
55
39
|
|
|
56
|
-
- Go to `
|
|
40
|
+
- Go to `perpx-sdk/examples`
|
|
57
41
|
|
|
58
42
|
```bash
|
|
59
|
-
cd
|
|
43
|
+
cd perpx-sdk/examples
|
|
60
44
|
```
|
|
61
45
|
|
|
62
|
-
These examples by default use a test account with `PERPX_TEST_MNEMONIC` from the TS client library under `
|
|
46
|
+
These examples by default use a test account with `PERPX_TEST_MNEMONIC` from the TS client library under `perpx-sdk/examples/constants`, but you can use any test address that you own.
|
|
63
47
|
|
|
64
48
|
### 3. Run the scripts with node
|
|
65
49
|
|
|
@@ -79,17 +63,6 @@ node ../build/examples/composite_example.js
|
|
|
79
63
|
|
|
80
64
|
Everytime you change the TS code, you need to run `npm run build` again, before you execute using node.
|
|
81
65
|
|
|
82
|
-
## Single-JS for mobile apps
|
|
83
|
-
|
|
84
|
-
Mobile apps needs to load JS as a single JS file. To build, run
|
|
85
|
-
|
|
86
|
-
```
|
|
87
|
-
npm run webpack
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
The file is generated in **native**/**ios**/v4-native-client.js
|
|
91
|
-
Pending: Different configurations may be needed to generate JS for Android app
|
|
92
|
-
|
|
93
66
|
## Release
|
|
94
67
|
|
|
95
68
|
Using the `npm version` command will update the appropriate version tags within the package locks and also will add a git tag with the version number..
|
|
@@ -23,7 +23,7 @@ const long_1 = __importDefault(require("long"));
|
|
|
23
23
|
__exportStar(require("../lib/constants"), exports);
|
|
24
24
|
/**
|
|
25
25
|
* Disclaimer: Note that as of the date hereof, the testnet and PerpX Chain deployment by PerpX
|
|
26
|
-
* token holders are the only known deployments of the PerpX
|
|
26
|
+
* token holders are the only known deployments of the PerpX software, and other deployment
|
|
27
27
|
* options may be added.
|
|
28
28
|
* For more information, please see https://perpx.exchange/perpx-chain-front-end-options
|
|
29
29
|
*/
|
|
@@ -37,8 +37,8 @@ exports.MAINNET_CHAIN_ID = 'perpx-mainnet';
|
|
|
37
37
|
// ------------ API URLs ------------
|
|
38
38
|
var IndexerApiHost;
|
|
39
39
|
(function (IndexerApiHost) {
|
|
40
|
-
IndexerApiHost["TESTNET"] = "
|
|
41
|
-
IndexerApiHost["STAGING"] = "
|
|
40
|
+
IndexerApiHost["TESTNET"] = "https://indexer-perpx-testnet.1119labs.com/";
|
|
41
|
+
IndexerApiHost["STAGING"] = "https://indexer-perpx-testnet.1119labs.com/";
|
|
42
42
|
IndexerApiHost["LOCAL"] = "http://localhost:3002";
|
|
43
43
|
// For the deployment by PerpX token holders
|
|
44
44
|
IndexerApiHost["MAINNET"] = "http://indexer-perpx-testnet.1119labs.com/";
|
|
@@ -285,4 +285,4 @@ class Network {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
exports.Network = Network;
|
|
288
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NsaWVudHMvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBLGdEQUF3QjtBQUl4QixtREFBaUM7QUFFakM7Ozs7O0dBS0c7QUFFSCxXQUFXO0FBQ0UsUUFBQSxZQUFZLEdBQUcsb0JBQW9CLENBQUM7QUFDcEMsUUFBQSxnQkFBZ0IsR0FBRyxvQkFBb0IsQ0FBQztBQUN4QyxRQUFBLGdCQUFnQixHQUFHLG9CQUFvQixDQUFDO0FBQ3hDLFFBQUEsY0FBYyxHQUFHLG9CQUFvQixDQUFDO0FBQ25ELDRDQUE0QztBQUMvQixRQUFBLGdCQUFnQixHQUFHLGVBQWUsQ0FBQztBQUVoRCxxQ0FBcUM7QUFDckMsSUFBWSxjQU1YO0FBTkQsV0FBWSxjQUFjO0lBQ3hCLHlFQUF1RCxDQUFBO0lBQ3ZELHlFQUF1RCxDQUFBO0lBQ3ZELGlEQUErQixDQUFBO0lBQy9CLDRDQUE0QztJQUM1Qyx3RUFBc0QsQ0FBQTtBQUN4RCxDQUFDLEVBTlcsY0FBYyw4QkFBZCxjQUFjLFFBTXpCO0FBRUQsSUFBWSxhQU1YO0FBTkQsV0FBWSxhQUFhO0lBQ3ZCLGdFQUErQyxDQUFBO0lBQy9DLGdFQUErQyxDQUFBO0lBQy9DLDhDQUE2QixDQUFBO0lBQzdCLDRDQUE0QztJQUM1QyxnRUFBK0MsQ0FBQTtBQUNqRCxDQUFDLEVBTlcsYUFBYSw2QkFBYixhQUFhLFFBTXhCO0FBRUQsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLGtEQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFGVyxhQUFhLDZCQUFiLGFBQWEsUUFFeEI7QUFFRCxJQUFZLGdCQU1YO0FBTkQsV0FBWSxnQkFBZ0I7SUFDMUIsc0VBQWtELENBQUE7SUFDbEQsc0VBQWtELENBQUE7SUFDbEQsb0RBQWdDLENBQUE7SUFDaEMsNENBQTRDO0lBQzVDLHNFQUFrRCxDQUFBO0FBQ3BELENBQUMsRUFOVyxnQkFBZ0IsZ0NBQWhCLGdCQUFnQixRQU0zQjtBQUVELHdDQUF3QztBQUV4QyxJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDbkIsMkNBQThCLENBQUE7SUFDOUIsNENBQTRDO0lBQzVDLHNDQUF5QixDQUFBO0FBQzNCLENBQUMsRUFKVyxTQUFTLHlCQUFULFNBQVMsUUFJcEI7QUFDWSxRQUFBLGtCQUFrQixHQUFXLG9CQUFvQixDQUFDO0FBQy9ELDRDQUE0QztBQUMvQixRQUFBLGtCQUFrQixHQUFXLGVBQWUsQ0FBQztBQUUxRCx1Q0FBdUM7QUFDdkMsSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQzFCLHFDQUFpQixDQUFBO0lBQ2pCLGlDQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsZ0JBQWdCLGdDQUFoQixnQkFBZ0IsUUFHM0I7QUFFRCx5Q0FBeUM7QUFDekMsb0JBQW9CO0FBQ3BCLFNBQVM7QUFDSSxRQUFBLGlCQUFpQixHQUFHLDhCQUE4QixDQUFDO0FBRWhFLFFBQVE7QUFDSyxRQUFBLDRCQUE0QixHQUFHLGtDQUFrQyxDQUFDO0FBRS9FLGlCQUFpQjtBQUNqQixTQUFTO0FBQ0ksUUFBQSx3QkFBd0IsR0FBRywyQkFBMkIsQ0FBQztBQUN2RCxRQUFBLHlCQUF5QixHQUFHLDRCQUE0QixDQUFDO0FBQ3pELFFBQUEscUJBQXFCLEdBQUcsNEJBQTRCLENBQUM7QUFDckQsUUFBQSw2QkFBNkIsR0FBRywrQkFBK0IsQ0FBQztBQUNoRSxRQUFBLDZCQUE2QixHQUFHLCtCQUErQixDQUFDO0FBQ2hFLFFBQUEsNEJBQTRCLEdBQUcsK0JBQStCLENBQUM7QUFFNUUsYUFBYTtBQUNBLFFBQUEsMEJBQTBCLEdBQUcsaUNBQWlDLENBQUM7QUFFNUUsWUFBWTtBQUNDLFFBQUEseUNBQXlDLEdBQ3BELDhDQUE4QyxDQUFDO0FBRWpELGVBQWU7QUFDRixRQUFBLDZCQUE2QixHQUFHLHNDQUFzQyxDQUFDO0FBRXBGLFdBQVc7QUFDRSxRQUFBLGlDQUFpQyxHQUFHLHFDQUFxQyxDQUFDO0FBRXZGLFlBQVk7QUFDQyxRQUFBLDRCQUE0QixHQUFHLGtDQUFrQyxDQUFDO0FBQ2xFLFFBQUEscUNBQXFDLEdBQ2hELDBDQUEwQyxDQUFDO0FBQ2hDLFFBQUEsa0NBQWtDLEdBQUcsdUNBQXVDLENBQUM7QUFFMUYsZUFBZTtBQUNGLFFBQUEsK0JBQStCLEdBQUcsd0NBQXdDLENBQUM7QUFFeEYsVUFBVTtBQUNHLFFBQUEsaUNBQWlDLEdBQUcsb0NBQW9DLENBQUM7QUFDekUsUUFBQSxvQ0FBb0MsR0FBRyx1Q0FBdUMsQ0FBQztBQUU1RixZQUFZO0FBQ0MsUUFBQSxxQkFBcUIsR0FBRyxxQ0FBcUMsQ0FBQztBQUM5RCxRQUFBLHVCQUF1QixHQUFHLHVDQUF1QyxDQUFDO0FBRS9FLGlCQUFpQjtBQUNKLFFBQUEsc0NBQXNDLEdBQ2pELHlEQUF5RCxDQUFDO0FBRTVELGdCQUFnQjtBQUNILFFBQUEsOEJBQThCLEdBQUcsd0NBQXdDLENBQUM7QUFDMUUsUUFBQSxpQ0FBaUMsR0FBRywyQ0FBMkMsQ0FBQztBQUU3Riw0Q0FBNEM7QUFDNUMsa0VBQWtFO0FBQ3JELFFBQUEsa0JBQWtCLEdBQUcsOENBQThDLENBQUM7QUFDcEUsUUFBQSx1QkFBdUIsR0FBRyw4Q0FBOEMsQ0FBQztBQUN6RSxRQUFBLHdCQUF3QixHQUFHLDhDQUE4QyxDQUFDO0FBRXZGLHVEQUF1RDtBQUN2RCxJQUFZLGtCQUlYO0FBSkQsV0FBWSxrQkFBa0I7SUFDNUIsK0JBQVMsQ0FBQTtJQUNULGlDQUFXLENBQUE7SUFDWCxtQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLGtCQUFrQixrQ0FBbEIsa0JBQWtCLFFBSTdCO0FBRUQsd0NBQXdDO0FBQ3hDLHdDQUF3QztBQUN4QyxJQUFZLFNBT1g7QUFQRCxXQUFZLFNBQVM7SUFDbkIsNEJBQWUsQ0FBQTtJQUNmLDhCQUFpQixDQUFBO0lBQ2pCLHNDQUF5QixDQUFBO0lBQ3pCLDhDQUFpQyxDQUFBO0lBQ2pDLHdDQUEyQixDQUFBO0lBQzNCLHNEQUF5QyxDQUFBO0FBQzNDLENBQUMsRUFQVyxTQUFTLHlCQUFULFNBQVMsUUFPcEI7QUFFRCx1Q0FBdUM7QUFDdkMsd0NBQXdDO0FBQ3hDLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNuQix3QkFBVyxDQUFBO0lBQ1gsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxTQUFTLHlCQUFULFNBQVMsUUFHcEI7QUFFRCw4Q0FBOEM7QUFDOUMsK0NBQStDO0FBQy9DLElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQiwrQkFBVyxDQUFBO0lBQ1gsK0JBQVcsQ0FBQTtJQUNYLCtCQUFXLENBQUE7QUFDYixDQUFDLEVBSlcsZ0JBQWdCLGdDQUFoQixnQkFBZ0IsUUFJM0I7QUFFRCw0Q0FBNEM7QUFDNUMsNkNBQTZDO0FBQzdDLElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4QixxQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBVyxDQUFBO0lBQ1gsNkJBQVcsQ0FBQTtJQUNYLHlDQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFMVyxjQUFjLDhCQUFkLGNBQWMsUUFLekI7QUFFRCx5Q0FBeUM7QUFDekMsMENBQTBDO0FBQzFDLElBQVksV0FNWDtBQU5ELFdBQVksV0FBVztJQUNyQix3REFBeUMsQ0FBQTtJQUN6Qyw0QkFBYSxDQUFBO0lBQ2IsZ0NBQWlCLENBQUE7SUFDakIsNERBQTZDLENBQUE7SUFDN0Msb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQU5XLFdBQVcsMkJBQVgsV0FBVyxRQU10QjtBQUVELElBQVksVUFFWDtBQUZELFdBQVksVUFBVTtJQUNwQixxQ0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBRlcsVUFBVSwwQkFBVixVQUFVLFFBRXJCO0FBRUQsSUFBWSxjQUlYO0FBSkQsV0FBWSxjQUFjO0lBQ3hCLCtCQUFhLENBQUE7SUFDYixtQ0FBaUIsQ0FBQTtJQUNqQiwyQ0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSlcsY0FBYyw4QkFBZCxjQUFjLFFBSXpCO0FBRUQsdURBQXVEO0FBRXZELElBQVksVUFHWDtBQUhELFdBQVksVUFBVTtJQUNwQixpQ0FBbUIsQ0FBQTtJQUNuQix1Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsVUFBVSwwQkFBVixVQUFVLFFBR3JCO0FBRUQsSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3pCLGdDQUFhLENBQUE7SUFDYiw4QkFBVyxDQUFBO0FBQ2IsQ0FBQyxFQUhXLGVBQWUsK0JBQWYsZUFBZSxRQUcxQjtBQUVELDJDQUEyQztBQUUzQyxJQUFZLGlCQU9YO0FBUEQsV0FBWSxpQkFBaUI7SUFDM0IscUNBQWdCLENBQUE7SUFDaEIscUNBQWdCLENBQUE7SUFDaEIscUVBQWdELENBQUE7SUFDaEQscURBQWdDLENBQUE7SUFDaEMsNkRBQXdDLENBQUE7SUFDeEMsMkRBQXNDLENBQUE7QUFDeEMsQ0FBQyxFQVBXLGlCQUFpQixpQ0FBakIsaUJBQWlCLFFBTzVCO0FBT0QsSUFBWSw4QkFJWDtBQUpELFdBQVksOEJBQThCO0lBQ3hDLGlEQUFlLENBQUE7SUFDZixtREFBaUIsQ0FBQTtJQUNqQixxREFBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsOEJBQThCLDhDQUE5Qiw4QkFBOEIsUUFJekM7QUFFRCx5Q0FBeUM7QUFDNUIsUUFBQSxtQkFBbUIsR0FBVyxJQUFLLENBQUM7QUFFcEMsUUFBQSxtQkFBbUIsR0FBVyxHQUFHLENBQUM7QUFFbEMsUUFBQSxrQkFBa0IsR0FBVyxFQUFFLENBQUM7QUFFaEMsUUFBQSxtQkFBbUIsR0FBVyxFQUFFLENBQUM7QUFFOUMsV0FBVztBQUNFLFFBQUEsWUFBWSxHQUFnQjtJQUN2QyxHQUFHLEVBQUUsSUFBSSxVQUFVLEVBQUU7SUFDckIsTUFBTSxFQUFFLGNBQUksQ0FBQyxLQUFLO0lBQ2xCLEtBQUssRUFBRSxjQUFJLENBQUMsa0JBQWtCO0lBQzlCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE9BQU8sRUFBRSxLQUFLO0NBQ2YsQ0FBQztBQUVGLE1BQWEsYUFBYTtJQUt4QixZQUFZLFlBQW9CLEVBQUUsaUJBQXlCLEVBQUUsS0FBd0I7UUFDbkYsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7Q0FDRjtBQVZELHNDQVVDO0FBRUQsTUFBYSxlQUFlO0lBUzFCLFlBQ0UsWUFBb0IsRUFDcEIsT0FBZSxFQUNmLE1BQW1CLEVBQ25CLGdCQUFtQyxFQUNuQyxpQkFBMEIsRUFDMUIsaUJBQTJCLEVBQzNCLHNCQUErQjtRQUUvQixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUEsWUFBWSxhQUFaLFlBQVksdUJBQVosWUFBWSxDQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO1FBQzNGLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRXZCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDM0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQztJQUN2RCxDQUFDO0NBQ0Y7QUEzQkQsMENBMkJDO0FBRUQsTUFBYSxPQUFPO0lBQ2xCLFlBQ1MsR0FBVyxFQUNYLGFBQTRCLEVBQzVCLGVBQWdDO1FBRmhDLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDWCxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7SUFDdEMsQ0FBQztJQUVKLE1BQU0sQ0FBQyxPQUFPO1FBQ1osTUFBTSxhQUFhLEdBQUcsSUFBSSxhQUFhLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkYsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQ3pDLGdCQUFnQixDQUFDLE9BQU8sRUFDeEIsd0JBQWdCLEVBQ2hCO1lBQ0UsZ0JBQWdCLEVBQUUsUUFBUTtZQUMxQixVQUFVLEVBQUUsc0VBQXNFO1lBQ2xGLGNBQWMsRUFBRSxPQUFPO1lBQ3ZCLGFBQWEsRUFBRSxDQUFDO1lBQ2hCLG1CQUFtQixFQUFFLEVBQUU7U0FDeEIsRUFDRCxTQUFTLEVBQ1QsZ0JBQWdCLENBQ2pCLENBQUM7UUFDRixPQUFPLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELDZDQUE2QztJQUM3QyxNQUFNLENBQUMsT0FBTztRQUNaLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZGLE1BQU0sZUFBZSxHQUFHLElBQUksZUFBZSxDQUN6QyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQ3hCLHdCQUFnQixFQUNoQjtZQUNFLGdCQUFnQixFQUFFLFFBQVE7WUFDMUIsVUFBVSxFQUFFLHNFQUFzRTtZQUNsRixjQUFjLEVBQUUsT0FBTztZQUN2QixhQUFhLEVBQUUsQ0FBQztZQUNoQixtQkFBbUIsRUFBRSxFQUFFO1NBQ3hCLEVBQ0QsU0FBUyxFQUNULGdCQUFnQixDQUNqQixDQUFDO1FBQ0YsT0FBTyxJQUFJLE9BQU8sQ0FBQyxTQUFTLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7Q0FDRjtBQXZERCwwQkF1REMifQ==
|