@huma-finance/widgets 0.0.62-beta.611 → 0.0.62-beta.616
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/API.md +0 -185
- package/dist/cjs/index.cjs +481 -1661
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/index.d.ts +8 -116
- package/dist/index.js +484 -1661
- package/dist/index.js.map +1 -1
- package/package.json +9 -12
- package/src/components/InputAmountModal.tsx +2 -12
- package/src/components/Lend/addRedemptionV2/2-ChooseAmount.tsx +6 -1
- package/src/components/Lend/supplyV2/6-Success.tsx +10 -8
- package/src/components/Lend/supplyV2/7-Notifications.tsx +6 -1
- package/src/components/Notifi/NotifiContextWrapper.tsx +57 -0
- package/src/components/Notifi/NotifiSubscriptionModal.tsx +118 -113
- package/src/components/WidgetWrapper.tsx +4 -6
- package/src/hooks/useNotifi.ts +28 -17
- package/src/index.tsx +7 -124
- package/src/store/widgets.reducers.ts +0 -5
- package/src/store/widgets.store.ts +0 -1
- package/src/theme/coreThemeConstants.ts +1 -1
- package/src/components/CreditLine/solanaBorrow/1-ChooseAmount.tsx +0 -86
- package/src/components/CreditLine/solanaBorrow/2-ApproveAllowance.tsx +0 -87
- package/src/components/CreditLine/solanaBorrow/index.tsx +0 -96
- package/src/components/Lend/solanaAddRedemption/1-ChooseTranche.tsx +0 -114
- package/src/components/Lend/solanaAddRedemption/2-ChooseAmount.tsx +0 -183
- package/src/components/Lend/solanaAddRedemption/3-Transfer.tsx +0 -102
- package/src/components/Lend/solanaAddRedemption/4-Done.tsx +0 -29
- package/src/components/Lend/solanaAddRedemption/index.tsx +0 -140
- package/src/components/Lend/solanaCancelRedemption/1-ChooseTranche.tsx +0 -114
- package/src/components/Lend/solanaCancelRedemption/2-Transfer.tsx +0 -99
- package/src/components/Lend/solanaCancelRedemption/3-Done.tsx +0 -55
- package/src/components/Lend/solanaCancelRedemption/index.tsx +0 -152
- package/src/components/Lend/solanaSupply/1-ChooseTranche.tsx +0 -116
- package/src/components/Lend/solanaSupply/2-Evaluation.tsx +0 -0
- package/src/components/Lend/solanaSupply/3-ChooseAmount.tsx +0 -130
- package/src/components/Lend/solanaSupply/4-Transfer.tsx +0 -89
- package/src/components/Lend/solanaSupply/5-Success.tsx +0 -50
- package/src/components/Lend/solanaSupply/index.tsx +0 -143
- package/src/components/SolanaTxDoneModal.tsx +0 -115
- package/src/components/SolanaTxSendModal.tsx +0 -61
- package/src/components/SolanaViewOnExplorer.tsx +0 -29
package/dist/cjs/index.cjs
CHANGED
|
@@ -21,13 +21,14 @@ var constants = require('@ethersproject/constants');
|
|
|
21
21
|
var ethers = require('ethers');
|
|
22
22
|
var ArrowDropDownIcon = require('@mui/icons-material/ArrowDropDown');
|
|
23
23
|
var ArrowDropUpIcon = require('@mui/icons-material/ArrowDropUp');
|
|
24
|
-
var
|
|
24
|
+
var notifiReact = require('@notifi-network/notifi-react');
|
|
25
|
+
require('@notifi-network/notifi-frontend-client');
|
|
25
26
|
var reactNumberFormat = require('react-number-format');
|
|
26
27
|
var ArrowForwardIosIcon = require('@mui/icons-material/ArrowForwardIos');
|
|
27
28
|
var dayjs = require('dayjs');
|
|
28
29
|
var Persona = require('persona');
|
|
29
|
-
var moment = require('moment');
|
|
30
30
|
var sdk = require('@huma-finance/sdk');
|
|
31
|
+
var moment = require('moment');
|
|
31
32
|
var client = require('@apollo/client');
|
|
32
33
|
var Table = require('@mui/material/Table');
|
|
33
34
|
var TableBody = require('@mui/material/TableBody');
|
|
@@ -36,10 +37,7 @@ var TableContainer = require('@mui/material/TableContainer');
|
|
|
36
37
|
var TableHead = require('@mui/material/TableHead');
|
|
37
38
|
var TableRow = require('@mui/material/TableRow');
|
|
38
39
|
var address = require('@ethersproject/address');
|
|
39
|
-
var
|
|
40
|
-
var splToken = require('@solana/spl-token');
|
|
41
|
-
var walletAdapterReact = require('@solana/wallet-adapter-react');
|
|
42
|
-
var web3_js = require('@solana/web3.js');
|
|
40
|
+
var bytes = require('@ethersproject/bytes');
|
|
43
41
|
|
|
44
42
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
45
43
|
|
|
@@ -140,7 +138,6 @@ const widgetSlice = toolkit.createSlice({
|
|
|
140
138
|
state.withdrawShares = undefined;
|
|
141
139
|
state.redeemAmount = undefined;
|
|
142
140
|
state.redeemShares = undefined;
|
|
143
|
-
state.solanaSignature = undefined;
|
|
144
141
|
},
|
|
145
142
|
setStep: (state, _ref) => {
|
|
146
143
|
let {
|
|
@@ -231,16 +228,10 @@ const widgetSlice = toolkit.createSlice({
|
|
|
231
228
|
} = _ref12;
|
|
232
229
|
state.multisend = payload;
|
|
233
230
|
},
|
|
234
|
-
|
|
231
|
+
setError: (state, _ref13) => {
|
|
235
232
|
let {
|
|
236
233
|
payload
|
|
237
234
|
} = _ref13;
|
|
238
|
-
state.solanaSignature = payload;
|
|
239
|
-
},
|
|
240
|
-
setError: (state, _ref14) => {
|
|
241
|
-
let {
|
|
242
|
-
payload
|
|
243
|
-
} = _ref14;
|
|
244
235
|
state.errorMessage = payload.errorMessage;
|
|
245
236
|
state.errorReason = payload.errorReason;
|
|
246
237
|
state.step = WIDGET_STEP.Error;
|
|
@@ -261,8 +252,7 @@ const {
|
|
|
261
252
|
setWithdrawAmount,
|
|
262
253
|
setWithdrawShares,
|
|
263
254
|
setRedeemAmount,
|
|
264
|
-
setRedeemShares
|
|
265
|
-
setSolanaSignature
|
|
255
|
+
setRedeemShares
|
|
266
256
|
} = widgetSlice.actions;
|
|
267
257
|
var widgetsReducers = widgetSlice.reducer;
|
|
268
258
|
|
|
@@ -272,7 +262,7 @@ var SorryImg = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAU8AAAFTCAYAAAC52Y
|
|
|
272
262
|
|
|
273
263
|
var AutoPaybackImg = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbcAAAFkCAYAAACjPXVqAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAJL6SURBVHgB7Z0JYBNl+sbfaQu9S7hvGu6blhuk2nCoKCpVUVfdXYq7KuquoKviqru064nrCnU90PW/tIsHIkirAgJCUwXkppX7bApyI6SUFgql+c/7zUwySXNOJpmkfX+7sWmSljRfMs+83/d8zwtAEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBeAsHBEEQRL1Bx4NfZBeIjIzUS/dfu3bNJHs4XjcjUM8gcSPUIOO5556bGRcXl7p+/fr8lStXFvC3GUH44BAEoTKigOl50Uq1WCypffr0SW7btm1q+/btdbGxsbqOHTtCkyZN2GM7derk9HccOXIEysvL4cKFC+w6r2/FFRUV5nXr1pXU1taa+IcU4yVchY/EjfALvV4/c968eVkGgwFycnIgKysLxM+Cib8M5C/17oyQIIINr2UoZAYUsJSUlHResFL79esH/fv3Z+IlCZla7NixgwkeL3RQVlZW/N133xVzHFfAV30odiYgiHrOzOLiYgvCi5qF/97xkgUEQSiCFzRDs2bN5tx7772l77//vuXHH3+0aAn++3/9618tt99+eyH/3Kaj4AJBeACnGAziRQ/hgX727NnsTT9nzhxJzM7zFZyFr+ak70uBIAivQUHjK7I506dPP//tt99a+CrJEorw1ZwFBXfkyJEodJkkdIQjug5t9DOfefj1819/tN2Cl1nPzbM8fN9z29u27DCHvz8VQpQnn3yyFN/kpaWlFv6NLQmZfsaMGed5pNvwogOCIFyC62d8hTYzIyPjPFZHoSporvj5558tjz/+uIX/G+aRyBGMLh17Fm/9+rzlwBqL08snbxdafn/nk6X9ew6eB0JVFxLw1dlMFDVErNKYsOF9zzzzTD7ezp95SuKmB4Ig6oBVWvfu3QvfeOONsBM0Z2A19+mnn1r44wOJXAMn0/hZqUthcyZ0T07OkoQuA7TDOh05b948ScAM0p2DBw/OdbhPDwRBWMFpPJ5CrdfQAgmJXAMGKzJvhc3xgtOXLz/10fm0ITct4X9VJgRx6k8SL6zcxKotS34/Pwc/B+/Pz88ncSMIGShq99xzT2l9FjU5WMlhVcpPV84Wty4ElQggtMBw0/V36kEhvbulwm9uf1g3780VGXz1N49fpzt/i+GeQhCETg+BQ//nP/95Ml7Jy8sDEw9/dY6zB6ptTSaIcAWnH7FS++abb+YtXLhQn5aWBg0B3KLAr8HD9u3bp997773bUdwhiNA+Nw3o32Nw7ldzt0wGlTl20gQbi43w8/4txk/z38ON1Pmg4kZqrNq2bNkyGTVt9OjRKG5T+JtznT3GaDSyx/A0BdrrRjRAcEquZcuW87KysgwPPPAANHQ+++wzePnll3NPnjz5VDA2hlPlFnx099326EQIAO3b6OGu8ZmQ9eS7hq1fn5/9/j+WlOL0p+i8NIB/OKvach0f1KVLl2T8KtzNRI2EjWhQSO7H6dOnb9+8eTMJmwi+DitWrMjs2rXr9mCsxZG4BZ+MtCE3Bnz+OSlBBzemZcDf/pyj/+GLo9M+ebuw0B/nJV+RZU2eLBSbubm5+CXb6b+blMT+Noz1AW3itzL+8Ic/bJ81a9Z5/jnj35oJBBEkcApy6NCh2/mZi6yZM2fqaHreHpyq5Gd29M8//3wpbgSHAELiFmR+O/GJyVhhBZvhqQYmdF99sCUThc7BeelJbHW33357Ol5BYXNVtSE9evTQ41exciuDIIJRYIWFhUs+/vjj1OjoaN2hQ4cy+Zvxb8StCrTfjggoaJzgD9qFK1eu1GMsFuEaXIt77bXXZmOFCwGC1tyCi37Wc7mld41XfblNMbhOt2ptAew6uDU/f+V8V4HHmaWlpfN48YDOnTs7XWsT0eXn55+fOHEiW2/jz16xusuC4IBRYFkpKSmQnZ3NMi4dCOZzIRoQOMXWu3fveR9++KGBRM031q5dCw899JDxzJkzU9TOrKTKLYj07zE4K5SEDcEqMnPSNPjn8/+TnJeljs7LJ554YjIKG5pEeGHDNTSji1+XmpzMltyk8ORiCA64944JmxTejE8Bw5zxeYsEZJ2TaNiITsjty5cvJ2FTADpHFy9ebGjatGmh2utwJG5BZGDfUekQwkiGlHf+vtAgCd24URO382sIBrwfjSTg3oGZysOEja+iAIK05vbkk08W8ov3bCpUFDYTfxl9yy23mLdv3w7iFpuQjTIjwhP+fTXz9ddfL+RPrGhtzQ/wpKCgoEDPC5yq2wVI3IJH5kP3PKWHMEESulEjRqdKRhJ+yhFaNG0thTzX4Xe/+x27XRQ2LN0CXrlhFNhTTwmvK06FilMbuAeh+MiRI8UobPyZtfRwPRCECvTp02feN998kzV16lQg/EcUOF3rpp3mqbUOR+IWJPipPk2MJP5S00hw8qORJCFGBz8tPpnhynnZrl07VpmWlJTglyIIPHpeuLJw6lE0uuBtd4JYMW7YsIEZWmRTkwThF2jzxyR8fhoys6Fsxg4WKHB/f2UGdIocn9W1edoSf1NNooAIBnrDsAkGCDN2HyyGcTcLM6n8WRXcdXMmu47OS/6i569m7jlYnPlt4QLz7gPbjdXV1TqcksQKD1yvy6mGtD0BRQ1NJCCYRupUizRlRKgBrgn16NEjf8GCBSmuulsT/oF74Y4ePQob5ozP2G6Zkwq6w6OVGk1I3IJAhzb6zFAzknhD4cYCmP2wMEOAgvXNR3VnCzAKjL/gGVYGOi/fejEPLgnFHt6mh8CtuznbVJ7l9IFUuRF+gsLWtWvXwi+//FJPwhZYcJvAH3Y9AePWfKzffOXVQtCtViRwNC0ZBMaMvCP8lI0ntqnwFas2XqChVzf3ngzJeclPW4Lxs9KZzpyXaiGv2kQTSZ1N5fw0KfsqbihHTEAQPiIJ21dffUXCFiTe/vdrcKz1f2B89Gf6/tEPo5PSZ0MYiVvgMdxzyxQ9hBm/8FVYz356dh2rtnGjfOuyI3debv36PHNeTrr1D9t5kcwC/52LdlUbCKKV6/igmJgYti/h/Pnz+IViwAifwXUfErbgg0sJL+Y8ADtr/gMjG72q79Po9z5vFSBxCzD9ewzO9FTxhCKbSoyQni6st+H+tnGjlG8TwygwFLrXn/k4tZCv6N7/x5LtwYgC69y5M1uQLitjvpJg7bmTY5CiwFJSUoLenojwH36NzUjCpg1o2Bn20EW4CEchLeYtXffGd/skcCRugUX/24w/h+WUZDWUs7UqtPXj1B+aSNRCyryUosBkQudNeah/5JFHmNJ6igKLi4tjZxXihvJyCCJiFFihFAXGCyz+bfg3bgcSuLCgb9++s/k1NjKPaMj056bC7pi3ACwWuK7RrOTWkYMLvXVRkrgFFsPw1JDet+2Sak6YxSsqKlJV2ByRZ15+/dH2Jc8+PMtTE1bDTTfdxG6XOSSdwTaUI+K+u2BWbtP4qdwsTEjB54gbzGUdPvT8ZToQIQ1u0J47d+50EjZtwenJ8X9MhhO16yE6IpEbE/ORvmlkryXe/CyJWwDhK5KZ4bi3Ddfbho4QhAGnJIenGCAYoPPykfufc9uE9bnnnpsmiwIzgYuqDR8vRYEFWdwwCmwORoFhZekiCiwsq/mGAi9sGc8//3wW7WMLDXCj/MHY//DVG0BiREdIi37D4M1GbxK3wOFXt20t2XOoBOTCMCwl+NWnqyiw6667jqmuaCQxuvp5XkisUWDBzLmUR4E99dRTeJOJvwwcPny4PApMDzQ1GZLgms6jjz46G+3oRGiA1dvEhwfASct6nJ60tIkYCcMb/SMLcz3d/RyJW4BAI0kgp/MCyX5TMc7psQM0XnprbIiRhG5Av4Gp2HFA2iguRoE5fXJDhw5liizLuDRBgJFHgU2ZMkUeBWa6du1akUMUGIlbCIKbtB9//HE9ECEFq95i/oNXuQiOP742fgQ6NRo7z936G4lbYNCNT783bFPooxOErxijhU5HvIQC0r47FDZZFJhT52WXLl2Y6OGaIU8JBB49L7zWKDCcNuXB1kAmvFJYWMjKR5yuJEITXGf7+OOPyUASgmD1dgdfvV2VfGEWsIxq/KY+Maq9y+lJSigJDBkTRt8btmfmLdoITx2rHq2rNomNxUa7KLDMuwVPhjwKjH9M5qaSItOqtUuKY2Nj2R8hiowRAgxuT5CMI6LRJUf+7zZu3JiJW9OmTYEIPXA6EtfZqG2Nb2BAwtKlS1lkVr9+/Vg+ZKBODrB6mzT7XRjc+Fn+OwuXGNEBekY+OL1C92Ye/7mrs+xAlVsACNeQZIlGscJXJm5dQ0PcDhwrwWk/65Sks313KHR/njxT//V/ijMGtZsIb72UC6d+YZqig8BOA1o3lWM/OdHoMsfZAynnMjThpyOX0Dqb96CoPTftBXg6bS4ce7cTtFp+P+x+tQn8adwsmDVrFgQC/Ow0Gb4HOL5s4zgLu61fo4ehaWSv2c4eT+KmPmEZkizx77xs69SZzL6uOXFiwYPTjH34atLTyQNWnBljM+Hrj7ZLUWDngxEFJttUbpI/5sqVK47iSokpIQL2EJs2bVr4JS1oxI4dO+DR216A3iVTIaPdDOiVmAYtojuxrw93fg/2fwKsmgsE425JY9sCGBYLRHNJkNLocYMzcwmJm8qEYrdtb8Gpv3fysiRHH6vcvlqRC1rjGAU2zMetCc6clw9mPIFCh3ObevAPa9WGz83V9gR+DZDZT8W2PGYgcQsJ0JDw6KOPzsQ0esIzc+fOhXcfXgYPxr3HBM0ZKHjz31gGgeD++++H4zXr+eqNFy8O/2uBno3uw+qtztobiZvKhHq3bXccO2ViXwcOHAh33nlnyFRuakaBSUKX9eS7mHk5+/1/LClFQ0rblh1wGtEAPiKPAsMpSXCxqTwpKYmdMYghziYIPqn33HNPYVZWVuntt9+O5ptMIMcmMo3ckd7xyt9nwa65ALc18Tx927KiPxw5cgTUBqcmO4+MANQ1C9TytwgC17vRg3WqNxI3dQmrbtuOYDiy5IwUe7LB5LungdacuVjGqkmsJM+dNauWmIJ/qxQF9sMXR6e5asLqjlGjhJMZT1Fg/JqOHr+KlVsZBJfJs2fP3r5w4UIDf5Kg56eVMsEWBaaHBoq4py2T3JHuwROyhyY9AU0Lb4WbWnvXeTw2sklAxA1p3rsCqmvLmazh+hvSM+o+SIhsZXewIrekioS7kQQP9rhG9Q6/7nahkheRlHSrK1FLWncQBBfX2wLp3nR0Xv6w+TvzT9u+z9+xb2sBCM5Hx1I2U9rX5q5q49H17NmT/RGiuAVlQ7mIgRe2XHRy4sZ32T47RM9fcDpnCjRMJlPV5h5cX3vxkTfhzuhXoUWc9ycBl66V81VWPwgEmByz8H87oR13nSBt/H8ac02ge+R9hou6f2PDZPY5JXFTj7A2kkigOM+aMQ9CBewG3r23nl3HKckbfWy9oxRR6FCQMo+dNGWuWlsAuw5uzc9fOV8SOhM/zTdZCpcWN4sbXfy6VCnxJcjipudFd96TTz7J/l1J2KTkFvG54Ava4MSNqjbPfP7552DMOQIPN5kPvnImcQf07+9dlecruOXg/WsF0C7iOsE5GcFhcAl0jBqt237l35kgOpVpWlIlsNv2uLSw3bcdshw7VWZ1b6K49eoa/E3QUhPWfz7/PynzspQXvsIJE4STGbFqywXXa2nWKDBZYkrAwfVAXtj0KGKjR2NQCqs8R99www2m0tJSKetS6pje0DBQ1eYatPOvn1Xu1fqaI2evHIE7HhsFgQJPSGoSfxGW24AlcrGv7SJHobHEehAmcVMJ7LYdKkke9QmMApOqIxSHUIkCGznYYJCMJCi6bVt2QKeI0yf3u9/9zoBfRWFDgQlG5Za5aNEi9gRxU7lYpaHCGdetW8diW2RTlHpoYNx0000zqWqri7S+lvCt9+trcqr46chPq/4EgXafxrW/IOx14wWOmSbZBCVfvUXeYJAiuUjc1EFxSPKs/3sKvlqRx+zuRF2kKDBsOIr720LlBCK+pfAV01JqLgOgIUVqwjqoz0g752XXrkK5iXFmEBxh0/EV20zppEDce/eU9G9v3brVhF+llkANDXTVTZw4UQ+EHWgA+d34P8H1Z2dApzjfk1qwYkNh+++X70Kg0ffVsX1ukqFEEjh91Hi8wtYuaM1NBZSGJOMeshdfEQw+ePa/oagcLp4FZnXvEMbGFDWRxA0P0okhImy4Dii1BBLSUoR1QHRe8hc9f3XaxmLjtJU/LjFt/rmomK848TYpCqwAAozBYJgmGV1wSwcIU6Z1ElOkdcCGRtu2bTNpX5s90vrag/HvQlyU7yk6Ry7tgK2t5sL8/3s3KCk8MUkcL2i41iY4JlHmUOCaR/SF+Ig26WYw55K4+Y/ibtvnLpdZe3zJXWx4wPx+ZR40uqqDbu1TIFy7C/jLhYtmaNZSlnMZIlFghRsLYPbHwp5RHKv5bxbWeYzMeanfw4vhlElPwb6dJrxLigIL1CZCPS9omVKAszgd6dTF6WVD43rHzTffTIvjMnB97ZfPm8BtrZXFj608NRda314O/335PQgWKKDHao9CItdRuEHUt5iIJGge2cdwDPZS5aYCirpt4zRk74F6p/dlZGSwC4Jn+7krsuHSeYBBPdMblNDlLc6BOzOF1xYP0qld9RAKSN0JcEoSuxP08rAOiOuEL4qPOXbSNHPV2oKZ23avMy43folN6YygosGEr9om33HHHXq8LutUbnL2WNkm/UAJbciBjUjHjRunmarjmhZeWE6ixjmj+Dyynp4F7fbg+pqyxqzfls+CgVObwNSpwc3lxPXSY9aMSVx4s3Cshqu1gI7rpsd1NxI3P1HabRvP/p/K8lzwYVgwXhAUuvmrsyGKr+haxifDMF7o6quJBcUfo8CmTN/OvkdxO3yQn8Z9YjZoiWMU2DgftyZIzstMmGY49ojJgJFnxk3LVBO6AQMGyKs2EzjZVD5y5Ej2ppGJmwkaCBERERkTJkyAYLN27Vp4919zAfZ2gpbRHaGy5gKY2+6AP0y/H7R4Pri+9qf7XhT2ryX6bqxB48iS6hfgxf9MBa06KXAyt6QwRSkYTFpE9sGb9SRu/pGq1EhyLdbs87SQXOjwuFVQkMfW6HD6Ertl16d1OozcQtDCjlVsKEWB3TvVwK7jycYrTyrfEyg5L/mL4cLTZsP3a/Nh8861xRu2rS7gRTQffDefWDeVi1UbCqbJ8UHdunVjjxGjwLTIudR36NBhOj89mM5PNxdv3bpVEvaAw1dtQY/Hw2k/DBN+sB3/Hwcd+er5WXDhwgWWmRgsli1bBp/PXAsPJvm3vvbm2zNAU8cpK9rkwsax3QG47saTSuLmB/17DJ6uZJpQ3ptMKXh2Pm2aYEZBocMD7Xdfl0GzaH29EDohCuwpJmqi2w8yQyAKrBrKrVsT8HVXMwpMFDqcv0zl3yMz0ZCynZ++3LHPu4O/5JDE9wL/3FCwcp09rnHjxvIQZxMEl9TnnnuukD/g6/DfnzJlCv69meLzGA0BfD64cZs/WdJDEEFhO7ewE2S0cy5eGDL8bc4sGDXqSFCEQlpfu7f1a6CEtWc/h8RbjwR1fc0VbAO37RsrScI6HFVu/qC02/a2fUXw4FMzQS3wgCYZUqR+ZyuXodAlQ8/k1JBpOOoLUhTYK+8/BRUXzUywn5ycBVpTzQlFDopbINc/HaPAZEKHbst8Jz9iuPNOYRYBY7bEx5ic/e6OHTuyN4QGOZeYmLKEF2EdbouQ+vNJ94GQdzkaAkcqplsEC5z62zcf4M727quyMQlT4U+/eQLmL38vYOtwWKVj8HGrzcrX1/KPz4KhTwR/fc0ZLLeSGyh+x7wk1uotOjIJb0wmcVNOppJu27hmM2CkHgIFTnU6Oi9zVxaEpfMSp+0++McSCBVw7KQtAGgmGe5j6x2lyIVuz8HizJI9m80rflxkXLtlpSR05sGDB2eiWDj0lHNGqrS/zUNkmNroHnzwwUIpMUWaapbcwqLQ4hMLpJPUgLmEweLfb82F61t43ggdF9kE7mz8Gi8+b8I/c14FtVFtfe0z7dbXnIG93Fh3AClgUqzeUOhaRqbQJm6lKA1JlrdvCQZ4EHnl9Zkw861p0J4/0XnpnYaakes/ew6VWPeGoTBgNRlssAr/ze0P6+a9uUKKAmNNWKWecuJeOvyPycWv0EtxZqK4BWNTOZpYZr7yyit6vI7rqKKYPTVhwgQjRoGJghvQKLDrr78+qNlth38sd9nzzBF8XMKG61i/NDVBI8uLd8+FB+Pe9fq5yMGN2Qsj/gRvfjojpIQNBTuGFzdB2cSN3NKdllqogct6EjdlKA5JvsDZ9rYFG/x3B/UwAKEMjALDgzAemPESKlFghuG3GqQTJtFIgpWP3tnP8CJjwPcBPn9xSjAY4pb66KOPTsd/VxYFhokpc7Zt28ZiW4IRBda8efOgDRiz+1/1TUwG6SbA5vfKmSCpAa6v/XfqOri32WuKjCO4vnYs7XNYvHI+hFpU2aXjiSBVa7LlNmEdji/n4rlmVLkpQWm3bTWMJP6AZ/Xu9uTNfI2iwNwhpaXgwRnXBENlG4YUBiD1u9v69fkMbML68H3PbRebsFoP6oMGDXKMAgu4U5KfilyCOZz4umVlZeFNqMD4vOCnn34y4VfZbEZAXlTc99SrV6+Q3zeDBpN3//q5X73QUFifnfYCRBSM4tf7lK2P4fpa54fL4aWXtV9fc8blcqlaEyo3KYZLIoZrQZu4laC027baRhJf2bGhDNLu0zu9D4V3+MXJEL9eBwVLjVDRsgx6DKsfzku16NJNmJIMdF85X5CHAaCRRGo4K0aBpT736KxUKQoMDSmVlZUGfKw4fRmUAGeH7Qkm/pIlu9+MoheEtBR9MDdN479V1fQoKOHO6Ncg6+kX4L+LfHckoig+9YcX4barytfXVlybBQ99cCsEc33SV07uuQbdY4QN3GwrAF6zWET/pAUuW86SuClAUbdtjJLq0E27E0c8mGHCiSvW/lAEtyYJwjsmNpN9rdxk5oUuH2qalYOlrRluHjsxLJ2XaoENGJFQigKT77tD89CMh+bUeYyD8xKm/zEbvl9nxLuCUbVZtyeIRhdPbkgTBAZdx44dIZikP9AX9s5fC70SfRMJNJgMPjWVuRtf+of3lRNOZ3741DK4F/evRfsu5Li+9m2jF2H2f18NuWlIOdhANSmig+CQBGkTN4DVXcJ/reTFjaYlfSTjpt9lKDGSfL8uH+6cpF2k3fffFbl0SuLZf/RBfZ3b4xvpYEy7TLgpZhrcfH4m7PjIDC8/kw3/eiebVXoNiX/nZVv7yoXKhnLkzEX7KUlPPQXxPfCnB2dC/vvbcavF9Bcfn2NJG3ITWlIzQf31LseqLRfqipcuSGvQumDHXT322GOwp93nTDR8BVP5T32dxAKNvQGNKP6sr209vwx295/LEv1DvRXQzp07oWVkH3GfmwUi7BfdmMBV154vJ3HzDf3I1LGKFEoekhxs8GAcedl11Yhn//2bep5p7d/MAJNazIRbq2ZC2WcAbz+fw4QOkzXqM1IUmAQKCXZ0CAXadhbGFadKfd2agFU4RoHJnJel6LwElYROXrWJ06DOtic4RoEF6sxBp0WW4+z/ew1W1MwCJdzU+jGW1O9u/U3av3bqvx39Wl9r89AR+Oc7r2med+kNm9f9DB2ihoPkkrSI625YwnHizORl7pyJpiV9QN++W4aSbtvuQpKDAU5XjRnu+nnvWlXGi5YefAGFrj+2LKsCOLy8GD4oyIWL/Dpd1xQ9a9lTnzIvj4kGG2wfE0pRYFg9DxosVJM4xreMygSlyKPApMzLn/dvMX6a/x7upTOCH1Fg4qbyXHAy5Xj77bezx8he04CtA2px4MZ/88X3p8K7D89S1NXa3QZvu/W1psrW1zD4+NEQX19zZP+GczAMbNLGyTa44W0Vtb9AbW2tmSo3H7hh2K3TlBy0vynKA6lrsxbsLSkDV1OpeBDrGeGfg7NLYioYmmfCbbUzofn6dJj/Qj688XJ2vXFe9habpIZaFNj+MlvKhycnrC9IQpf15LuGA2sss101YXXHPffcM1nacuBuU3lMTAxz6Yg5lyaoh+D+sNTJScxa7yvyDd5ycH0t6/dz4d5a//avvbp4algJGwp64xO92HVOzJIUA5StdpILtczIU0yVm/co7rYttUjRAjy4NGusd3k/M5I0U8/B2SpWbzWknF5vYs5LS9tySOgRvk1YpSiwGW9OYcYg/DtCIgoMbFFg+Lq2D9Br66wJq4fMS/2ECcI+UDdrbYwuXbowZ464odwE9RRcf3uFn/47u/YItGjsmxiheLXafAtbV5s6dSr7uundcn4aUlk+5J4La+HM0GXw35ffDYtpSDnr1q2DDo1sU5IyOMEnWQu/XtuF39O0pLf40237j1O1q9o+npsHmeOdixceqGtL+Uq0NQQEudBV7jbDqnVGuJBUEJbOSxSOT94uhFBCWm/DKLBhGkWBfVu4wHywbHf+mvXfSNOXGAWWJc1UiGtteS5+na5t27bsjxDFrQQCCJ71a2mW+PMzU+GhDU/AvdfeYxWZL6DjMv+9dbCd/3ndjjRe2DzHejkD19d6/BbgnzOUCaPWLP3iB36m6TVhnU2s3Czixm1J7y5YfsHZDKrcvERxt+2rUeWaGUmQS26Wh9DBOSwpOA5OdF6OaJUhfHMeYMdHRvhP1BR4+7V5QPgOTienDLTFaKX1zYBggycn/AXFKZNfl8xctbYAdh3cmt+pV1N21iLrKWd08StSJQeqmFpihMBhFqc+NQOrJDSYvHj3m3BvM98zJHGDd9XRcohr4Xu1Fa7ra3Lw5OTExjjoGSuZIsVGpUzdLGxyEkWuovYoO1OiNTfvUNxtu0N37YwVeHC5I921Ju/fVMaqKy3okpQK1w03AKEMzLmUApCxOurVNaixiXWQmrBOGv9QxpQpU/R4m2gkMYJr52WqtGYYhGlJE/ZN0xqsHB+dfQusOKksQ1KJzR/X1z6tCr/1NUdwSnJwTCbYpiQtYtyWIGxSGXfwykoSN295+L7npilZz9iyqwgmTtRub9tJU7nLdRgU3oQzetCKjafzYeRw1ycMb3xIUWDuaNFGx1I9RFEImW4PmMIj5W+i6PJrlZm4xWDSrX/Yrm/fbTrIosDuuece9uEQ/wacYwhkYorJn0grNUGB6fhAOeytUCdD0h24vob71+YvD/39a5747F9GSIpobzWQcJxtGwAnbAWAX679hPfiFDkllHhBavrwWxQtDpmvBSVWyCl4cIm45Prf/mJhHtzaTrsoMK5zuVsH52+nTgRpj1R9asKqFifPmtjXsrIy6BNCa5cJLYSvgnvTIE1dWpuwrlqbDxu2F5p27tuMByD2xHGPHn6BAMJXh+aTJ0+igIbEHpUZM2bAQ5ufgBa/dvLZYOItK0/NhQ73l4ft+pocdIcmnhoC0FjMlORskcnS7CRyrGYDfmEnSSRuHtCy27Y/rFld5DatogpPYluAJpy+bII2qa6PMfIMTiktXqoEsAkrivZwXugachSYFOKMVU9iiOwpxPe8lMKDU5J33ZRZ5zEOzkv4y9RsWFGUj3eVQoDZt2+fCWSVo9bg+tujt70ADzZWt6s1rq+tuTgX7ni1H0yYoMx4Emp8/tE30Lfxs7YJSQtWbhaOqRwn3WaBIzVri/nzGBN+T9OSHhg98nbFIcm4nqAVuzabXG6kRgfnDfHaOTh/uMgf+Fx0VUAHZ9+h+jq3S93GX/vnTHjl3WlwraUJcldmw6dLcxpcFFju4hxo1lIYWxS39q31EAo4Tkl6WqfGk8bH7rNFgT1y/4zzY667HR1GmaB+hWXgD36pWptK5EgbvNHooRbS+tqLC+/nhW0C1AdwOtls7MZELEKs14R1NmFfm9TTrcJyHI5d3WJ15lLl5p7Mu26erAcfCXS3bU94CklGI8lEjYwkSLybWRh0cEpBwO7ApBC8ICyUd0U2XDoP7O8Op27jvoLvrVffm84SSRA0Y2zbYuSvae86lfZzSlOSvqxTO3Feztu2e51xufFLaS+dCfxgwIAB03//+9+z0N1QMlUIG7zXwtqPP4e0FveDP+D62vE+y2D+2+G3f80dc//5CXSMulX8zrYFgK/drNsAUN5+qfkJb7VmAZK4ucGfbtveHKADBYYkZ97sfD3NaiRpB5qw5ngu3PeC66qxNsb3rRNYIUtVMlYy8xdnQ9RVHbSMT4Zh/EG2PkaBYRWL4o5/L1a7eNHy79x9sBiGjhBm/HDf3Y2jlG9NkJyXmTDNGgVm3LQMhQ7X6fDgZQLf0D/99NMTR40aBcuWLQs5x6A/G7wlpPW1OfVgfU0OVm07vqqG62LbC9Z/KflfRPT/g6XWAjuvfGGdkkRI3FyjuNs2tkP59xt5EMsfa8aNTw/q9CRrpGnRu7x/5eoCGNFSuylJ7BPnzsEpbUxWCk6LSRZ5fC0KCvLg4lmARrzY1QdDirMosLtuztRcwPceKoZH7rFV0pP+rk48mTzz8sLTZsP3a/NnHyzbU/ztms+KTpz5JRe8cFhKm8rx/fDjjz+ylI9Qw58N3jitaZjRCe6/v36sr8l582/vQVrcM1BrETdqI5z1P0znLLW1cObaHpySzJH/LImbC5R220Ykhxiy50AxTP8kG9rpddC6o45tDQikg1KaEnLFse1mGNlCmwMhGkl6jNC7vB8zOP81Vz0HJ1aA06YJB1lpHSjcnZfyKDCs4u68eTJk3j0dtAZb7+D7Gl/j2prAbE3Avx2FjqdOE1Z3UWB//rMQwIDPbcmSJSzHMtSm7ZRs8Mb1tSXVL8K7C0O7/5pSsN2PubALdGgsj9qyWL9YZMGSP1d/jk5Yo/znSdxcoLTbtiNyocOD0Vsv5kFNIzPrEpCenq56eomnbtv+hiT7w+byAngkzfUJQyAzOCVDCoJVD65ZofOyWXQy9ExOpSgwP2ndQThhKikpCdpr6dCENXNTSZGpcMM3KHTS9CViwM8ZgjmX165dy+MPmpNDsXqTNngveGIu3NzG/fM7cmkHbG01F+b/X/1aX5Mz760CGBudIzYjFXdoW8TILc5ibVZaUXsMSqo/y5dPSSIcEM7A/lZL2gfwzB6FDsXmXHUZm4rDis5focP1l12FZpdnzdh7DXuxacXyuGx4+knn/z46OHGdUouoMhS6BXkF8MqT2psywhGcTi6PK2HvYWwL1KlJKvx5snbvsz38+l/Jns3mFT8uMib3bJn6ySef6LFqGz16tIm/uzP/HM9/9dVXIbsQO2vWLIgoGOWygzeuryXeegRee61+ra/Jwdfgwkc3QlJke7FY46z72SwWSbaE29ZffhfWVeV0dhQ3qtyccP2QmzLbB3jKSlpLQNAMsPCDfKjmyqEmysz2CknrRr6waEGBWyMJ67atkZFkxzkjjBrvumrUspkrGjN+/C6gmb31GowCG3lbMruOJ1iTntS2HZDkvEwbemNG2RVhb7gYBWbiL/rCwsIcfmpyZqhWPLjB+5WLs2DtsqN2Dkp0Q26s/hwmzUjj19fqr7ChiWT9vy/CqDg8WEmNbCzytTZrqOQFvmo7dHVNrqOwISRuddHfNuYBRZlZ8wtyID5G53OzTtlaAmNjoRHmz8322ZDiudu2AbRiX20R3JvqWni1bObqKYPzvU+zoW2L+teEVS0wLSU1dSKb7sW1zVCZ4i1YnQezPxbec1idz5qRa+BP9Uu37lpXjG1jUERClZdengFLRywF48oX4OyxcmicwC80ZvSD/z4QHt2ylYLrob/LmAq3x/2XeSOZiokGSVHibDsB+G92XlkCJ6/uyHb2u0jc6mJQ2m27y0AdW0czGvNh7xrlxgVxLYFd37jdCFnf5rCKbsiIFOveLkfwAK12t221QCNJ33F6l/cXbiyA7Dnane1jM9e0O/RO70OLu+H2VMD0en/Htb7SWJaWguIfKicA8S2Fr7g1IYE/6bzrZuEEBqPA5sx/ISSNJXJwE3Z92YjtLTn//ACuL/8Hf6YupvyzqUfbXjbOIvXfBla1rat6x2nVhpC4OfD7O5+cqbTbtuT0c4yM2lBUzuzoSpp1yoUO1xLeeimXTeH17K+3c166O0BrbSTZyU9JZrhxz12LNYNWeGrmWrS1wOW4ovMS99OFaxNWtaisFsYvmGYST8j33WHVNs5h3919NwtNP0O5emto4Hgcmt8E+kfbr53I47Wk0g3ZfDnXBC46vCMkbvao2m3b0aGHB8RN6wrguMkMQ/v6nqTh6Lz86PV8qyElmN22faW6W5nbkORJ92nXOeGrxQX8mbzrqtHXcR07PLyasPoLdm6Qci7ZHsv40KjaNpUUsZg2BMVt/pv27tK2rTrB0RXlIV+9NRQwOea7V3+B62MfFwyRkkPSIuX+i9OT7NEWOH1tL2y99L8cV1UbQuImQ2m37VX8ge2Pj7rfE4cVFptSFE8g/Y2McjSkJA1wflAJdLdtT3gykshDkrXg2AG+6hjk/D5vuqirPa7hBL63ZszKtG4mx2nJbSXFmqelIPLuBDgl2cvJCQdWb++/Oxf++iJVb1qCBpJX/jgPboj7C7A8ZNHiLwmbdbWN5SQL9xVcmGbihW2Ou99L4mZDcbftwyeL+bN536oPeWQUfgDzN+bAiVIzdG+fAuPSMnz6Xe4OJMHstu0MT0YSrTM4Rw92/doocXCqOa6hjtRrLysri/2tWLmhsGkNPgcp6QbX24alGJw+Dqs3s1GoGjDjkQg+zEBy51S4+cK/ACIsMtMIJzORiHvaOEHq1lW9B+eulY329LtJ3Gwo7rbdz0mKvU//sOyAKERG5agWGTWc/2B/sS8PKo8AW3fr38wAwaKyxgztB7p3cIZyBqe/Dk7HzMsftubC3uIyaBFfP5yX+L7EvwHfs1L1hi1ttP67NvJTkiNvEzqTo+g+eleWy8f+ZsJUeHfOC/Dh/6nbdobwjCRsoy/MhNjIRHabBcS5RwvYHCVgE7pTNXth3aX3s91NR0rQJm6Re275w/bXnv3Y58USnLp65PmMgERqScYFNIuo4dDD9a0d20rgxG4zdKhNgRGtAltJYEhyxguu0+GxZc0rr2szJYmv7cIPily23vngi2xVo8Ac/201x1VLcO1XigJD0wZu3tZa3D5ZmgNZb01jr3Pnzp1h69fn3T6nrbvWwvmonSGZOVmfuWPM/TDo6DTQ4UZtsDawEfIiQbZRW/xqvnYcvih/tPjg2a0Dvfn9VLkJpI4ZebsiF8AFrixgWZFy44K8WafSyChH5+XG4hyoOMC/bU7o+IouHVrF6EFN3IUka93M1VMGZ7CiwNRw1GpJKEaBXeFs7s0+YtC0O9rx05Om0nVABAes2DAQeTATNoeN2iA2H2WlWoTgkBT5seod09maQ3d6+++QuIHQbVvJ3rZgHqDlB0QEHWBvf5YHTz8wG5Tg6LzEv+WnzWWsHY4aQucpJFlrI4m7DE40CAXLwenMeTn3nWyKAlMIrrdJOZf4Wrpab5Pz2sd/guUrvwYi8EhTkUOOPglNItvadmZLThIhP1JQOUut6JgE+KHyffj50tdTvJmOlKBO3KA8JFnLbtvo0IuNVKdilJyXz/9tJtz5Qjr8OsII30Zmw9dHcuDwhWJQgqdu2x26aTd15amZKxqElMSf+YvkvAyVztrhCM5I4IZ7BMcZ20+54z8LZ8GHH78LROBBV+TvUdh++TPootpiN21rF20uwmI1+gNn626D/FxdAGsvfYDrbEbwAarcADIfuucpPfhIqHfbXrMxH2qvgs/NOq1bDMYL369amw/LtxWwqcv211K8NqR47ratnYPTk5HEX4OQP6C7z52DM3dxDnRoXf+asKoF5lxOmCKcVKGJ5+XHU1w+9sSZI9BMD/WyXUyogcL2yN3PwKjy6dCUn4oUrP5itL8UisyQNSLlFe5kzV6+avsg+9y5c1ngIw1e3Oprt+3otuUsCszfZp3ofrtRtLDj1OXyH7I9Oi89ddvWMiQZp/50UXqX92s9rht/LIaHJjgXNxzXi0U6aNQ0FT7gp6QTuwO06VM/mrCqRYs2OlYBo7AhvdysS9N0ZHBYu3YtvP3IQrix9iWIFl2RCK9tnM3TKK26cRDBX6nlNa782jH45sLMPNPZnVmggIYuboq7bUNiuWYHaE/dtrfsKoI/PiNEc6nZrNPRkLJydTbAcR0kVSQzoYuPEioJCy+s7rptaxmSjGuVQ/saXN6PBiEtx1UXqXd5/xcL8+DWdsIJzR2d+HGt5tc215ugYKmRmXd6DKPMSwxxRsrKypiZxBU0HRkcsHXNjg9qYFzcdLBEiMtrFqFgsy231cqyI9kDeGE7Dp+WP15y8Mz2TFBIgxY3pd22MbeuZz89aIUnp5/5mqmOg1PtZp2OhpRVa/OY87LqKED3O1xPl6ndbdtXjh0sh7Sxeqf3hbqDs4qvmKGF/W2tYvUwJjaTXa/cZOaFLh/KE1HokqFv3/BqwuovON1dLTolsXJLdDFtS9ORgQeNI3/OfBZa7xgH18UNtt4uSpjgj+TEUGThLrRHcjhTaa45AZ/xwnb2aqkB/KBBi5tSI4k8TFcLju7lD9A3653e580BGoXP0XmZu7LAryiwzElChYhC526aN5AWe09gZYTTs64IdQfnDfHuT8TiG+lgTLtM4Zs9ABuK8mFRRAGbuhwwKKXeR4G98t5T8Ozz09n3KG44u+AsCoymIwMLTkP+6+n/wg0Vf4aYxkksFFKq1qSMSJvxX0ojEfZsCxXbEyVneGEz41m4HzRkccu455YpelBAW712C/n4oW0Zr3d5v5IDNDr0pFY6amReusKbrMZA8vHcPMgc7/y1wYNgKBuEitcVw22xvplwhE36/OU0L5yfGWHlJ9kQxxcraTfUv8xLnO7GEys8UcOTNykKrMJB3Gg6MnBgtZbzz/fhwKc1cHP8C6IX32ILPRYFTrgV2PSjkJFci4+AkzX7IP9CVt4BP6Yi5TRYccNu270UTNngAVpLp5+nbtv+HqAdI6O+/j4HTpaZVYmMwiiwf7+R53MTVrW45OY8UHBwGkArPBmEYn/R+9VFHddE+4OBn9sEOPxlMWT9Xza07a2DrgPqh/NSigLDkwS8SLfJT7ZoOjJwLFu2DD7OWgTDKiZDWpzwRrVYazMxY4SzuiKlFGSrwG27/A0UVryXY/p133RQiYYqboq7bWvp9EMa1QQvqxH3ekn7vQRDin/NOvFA89h9wgEcm7D+ZUF20ITOU7dt87WykDUIqd1FvUtiKrvABb6oW2WqF85LFDZMSsEoMKzW8L0267l5do/xdzoSp9tWL18LMUkc9YETQYv/36a9Ak13DIHxMc8DRAq3W9fSpEB/sWLjhPBjKfaffSms/BDWVHz4lKeUf19pqOKmOCRZS6cfHqANbvZABdLpp3ZklJ3z8kAxzMzPgatR5jpNWNXCXTNXHNfhadoZLzwZSQLZRR0NKfXFeYnmma8/2u70PqXTkZKgbVz0K7SruhmaRUwGU+0euH7BbfBpwfsNtgqUpiB3fXIOrk94BKJjsKmfLUZLrNKECs1q8uekMBLA2y5bKmBFxb/NmysX3+nrBm1vaJDiht22lext09rp5+4AjQ5OLaLApMiohZ/mwNMPqhMFJjVhxRMJ3Kvnr2B76rat9bju3sKP6916p/cFs4u6M+fl/qgiyHl7HoQzW3eu9Wk6UhC0H2H1wmLoWn0XtI+6H0ZyTaC2EWYdctCRGwZJv74N1w+6HW67L41VcQ1F5FDUsGP2lv+VQTpkwo2JuG+tbv5+rdBslJNmITnZfjbUuxP8+tpC8wslp6+aMnyJ1PKFhihuqnbbDhaeDtDMwflw8A/QUmTUj9+VgBrIm7Ci0C38wGjtNo4VnRKhw27b49JcT0lqOa64rtmlteuqUasu6pLzsjquDMKZiqpyyP3mTY/TkShoa3hBW/PlNkiuHg3dGk2C2yL+ANca4+E4QjA9cBZ2HasSHdcOfpPwHfy4KAse2vQHmPSHu+t1VwG5qA2HSXBL5B3SzKI1U0QecszJBE8yk7AsEgv2Y/sc1l38RNX1NWc0OHHzp9t2sMJ0neHO6Yf0TtWDVuAB2p3TD004SfE6n5t1OnYbXz7fCGcrC6CGn768c9JEr/Mfsdt20iCdy+empYPTk0Eo+qDeLyOJP3jqoq50XIPJfxa4no6UBM24aCt0vpIOPaPvgDsjfwu1sRxfefCCBtcA4zLwuFwrZGewr7UWTNGwQCyXAOPi/gUbf5kN381aCbs/2wsjHxsO999/P9QX8DXK/+IbOPZtDdyQcC8vagni9KJF3JnGWUVNTNKyOiGF22x12/ma45BfPsu07/L6KYGYhnSkoYmbX922H0vVTtzcOf0EB6cBtMLTAbp1bw5SUvR+NevEx94oO4huLDTC/LmeDSmeLPZaG4TcjavaRhJf8dRFXRpXNR21aoLTkcn9mthNGeLBGp19m77aC92upkHv6Jvg3qh7oDZKmHKstVzjD9gRzPhQW8sflCN4Qau1sNvYVJtYuTHBswi3j4yZDgevroKK46uh5l8R8OQH0+Fa/6thO12JVdrnn38O+1Yfh/KtHAyNvxP6JsaDdfoRNaxW0iyLNbnfItVwFvs1Nvzv2qov4MeKT3PM105l+bt/zVsamrhp1m3bHzyF6Wp9gI687NnBic9PTeel3JCCzsusb3NYRTdkRIp1zx4S6G7b/uDJwbnnhzK4K1EPWoAti/qO07u8H8dVatKr5riqBU5Hrin+nHXYlgRt81e7odOVAfzB+g7o3vhBqG2MgobVWC1/sMaeKxHsgMyO2/ztEREcyzjEg7e8csOvFlnSBv5c98bjYNflcnjl6Ex4qWM2/6YE+MfY16G2/xW48Z5xcOutt0KTJk0gVEFBW7p0KRTwVVpsaQfoeKU/DIyZBBa2pGbrq2axWKxt1ySxs5r9Je0TO9bgGcDhK9thbeXnJbuqfpgejGpNToMSt3tu+cO0cAxJ9hSmq/UBesxw3xycAXVeHiyGt17KZYLfuqPOrcXeyK9TYsdmrfBkEGp/iReNRNCEnfyUZIab6XtnTXrVHld/wOnIqCSAm3tPhM41fWFYwnjoF3uPbMqRFzRm5xMqjNoI6QDOCxxWcOzYLC4SsUdECL6/WqFCqcUdyrzoHbm6CU402gQtUi7D3YYJ8OeWK+Hr7+bDlZ/Owd3N7wU4zr8n39gNk//6EHQenQzDbhoKo0aNComKDm38KPobVmyFC9sABsSlwW3RM9hULMRwrK8a9liT71azrZ9FsDus29aEB1pYWzb+vnNXj8OyivfMJZWrs9W2+HtLQxI3v7pth2qYbrg7OJ05L79fmQcXzwAM7et7koaj8zKxi+uqsqZRUGZHnOLJILR8WQHc2kq7ca3q4F8XdWfjuolftz5uMsNY/mQo0JmXJ84cheHF18OY+N8yIWIVGk45ongJDTF5AYsA22qRZBaxMPFD4asVRU2aXmPTkLwIllZvhOONtsHlNgdh3OgJ8MjQ6ZAYb6vKHv39i7B18FqYNfcf8IeYP0DvuD7QK7YPr3Ic7N66C2ZcfAmSuidA88E6q9D1798fAglWZjt27ICdO3fCtvXFcHrrRWh5OZkXtOvhxqjhYGkGomtfXENjDUN5ibcG96Pkiz1q2PeikkVwnOgVYS/jpdqLUHjhE/OaC//L4W+ZE6wpSGdw0EDo32Nw7ldzt/i83oYf5PYDQbOmpFgZdY42uDzQ5K7Mhlde1+YgiAfohR8UuWxK+sEX2XbCm5OTww5yS5YsAW9gQreiSHEUmDtwXPuO1mnSlBR5640cyBjuump8+ZlsmNRCm3E9XFEM0beUgavu9I7j6iuBHFc5uLft4upzMLZJhihuIFZtEaxeq2W3cewiOCKFr8JtEdbrePuhK9vgl8hiqGxTCuP4Ci196AQ7QXP3HC5sPQkja0dCi6iWIB1yURAqLVVwpNoEZZdL+ervKLTu1Rqa9IhnYtexY0c2jYnXva3ysBJDEcOvR48eZV8rj18B874quHjiCnRs3AW6x6RCs8jWYLN72DZYW79abM9RVDLbbew/onHEuoWNg3PXTsL6i/nm4qrVOedqjmsqahINpnJTGpKMUylfL8iDLRtK2HpOsEXOU5juHx/VzunnycHp2G0bxRCz//Ly8mDyZM/PWx4FhgfE+auzWUXXvX2K35FRSQlNYf7cfPheX6TJuJ7gKxgY7vw+NAh5CkkOJNuqC+BvacGJeMNxzd+YAydKzWxc1XRePnzvDFgQ9wEsXbEAbou9TzSD1ApVWK0w5chqM9EsUmtdSxMquIOXt0JZ5M9Q0eoIjOUF7bdDn/VK0ByfwwnDEUHktp2EO5vdBy0btWL3xXNx0CumL7swYcGuD/zlTM0Z2HX1CP/1NJy9epopyln+OoodXs7gbTwtolozcTlSdgRiIxMgLiIemvO3xUYkQIfGXaFnZC+I5eIFkWpuawhqnWa0WBfPrO5HkIcaR3C2xwhzjqLY2SYqD14uhu8r/mfef2mz5pWaIw2lcss0flY6r72fc/54to/BxMGKjMIP/rHt4PLM9sPF2fDPd7WbuvrL1GxrnJYjkoNTPp2Lf8/o0aPZbaWlpaAUFEk02fjThFVOsMcVn3vk6WSXjTTfeDkbJjbSblyXx2XD0096P65qgVtKtm0ttjpq1TKknDh9BF57dRrcHfl7/uDfxr5awwqulhOFLQL2XyqBHZfWQY2+ghe027yu0Lx9Hihy8UcbQ7fLXaFXXD+QvPMWWyKVtYJi38qrJLCmNFqFxmKxZTay9A+Zs8PusUL+vsNtYL3NVsmJgsZxYiVr27NmEZ8PTj1urvoODlfvMBZXFhbwN+eGkqhJNAhxu8VwT+E7f19oABVB48LqjQXQTq+DHv2S2QFR7ciol57Pduv0K7tS5FUFFAjwAK2rSnE5XfpxQTa8Mafuc0dxY2frfAWHm7L9RTIu4NqfGg49FLrNu4ogoQVYKzq1x/XNV3LgrlHOpyRxXPNfK4Kx7bQZV+yinvGC62nwr9bnwHMvBt6Eo/a4orC88fZf4K4r90OzqNbiNGQEW1fbV7UDtlf9BFeTK2HYkBtgwugHVBM0Vywt/AzWr1oJnc38SU5sP2ghVnM2MZNEyyY+zPgiFyWZwFm/2gmj+L3svlqLVHVx9mLI2a7XFUXgBa0Sfr60FrZUrjLvu7QFqzRjsN2PvtIQxE0/67ncUiVNSb1FaNZZAAn8lDomaagVGeVuPQvPoCUrtha8kZUDk9JdH6BdCa9UvaFoFBYWgppYm7AuLYJ/PD4P/EWLcf3XO9lwa5V2VVvB1Wx4/m/O/300CFlalalyUuILNudlCTzze2URbxKfLnoXzqw6Ah2iu8JeXtQuJ1+GfgMHB0XQnLG/dAc8//pUaHu5M6QmdmNTlC0atWb3yas2th3B2iLGVkXJRYn9DPtvhHU60VaROQgnu08mcNa9auznmaPkbM0p2FG1DnZe3mA+U30079y1U/mhLmhy6v2a26A+I6cHUtgQx2adUmSUP9mInsJ0nVmxgwUebCIuKeu2La23SK1J1JwClJqw4tm+Gmgxrs66bQcL3NvWY4Te5f1aNemVnJc7NmSDvzw46U+wtPlnUFFZDtNGv6qJoMlp07IjtK28B/pGTINT5p1QUruWPyqvBV1jM6voOkV34dfWWlnnHC1Cd0/rSpmtPrGI62FiY1DRCGLNxkI4ceOD9UdE6RMdkr9cOQwHq0vgxNWy8kPVO4tPVJtwyhErtGIIQ+q9uPXrOVTRaSZWRu1b6xU165RHRi38IB/OVpZBG376csy4dK/deZ7CdIMVkuwMPEC7W/j3lNU4c+ZM9juys7MVixtWaWhMSU5Ottu07clir/a49hqYDIMGp3o9rp4MQoMba5eC88PFPPibG4OQ1hmcniLevB1XrNJCBewj2MkivH+bcf0szaL6Mem5Ul3Or//thKJra6GaWwnxURf56dlG0KlxZ2jOV3Yt+anVZlHCVKZYdAnI8h3thE2civz16kl+irGKF7JDUMWvnZ24etR84qrJdLbmRLH56q8YEBu2YuZIfRc3xd22sTK6aXSqX9FC+FjpgIis+iYf5s8t8Ghc8BSmq6TbtpoIB2jlWY3+VG8oarilYM6cOew6iopc3Dx12+42RAdduulg/uJsiLqqg5bxvjfrdDWu2KHdnfPSq27bSdqJW7wbx3moZ3BiFFj7ZFDVURsMNhWaIDkymV23cNbtYtAYmkCbyFHsgiw7d59xS/SyO/mreukSERGhT4ps2iQhIkGfEKGDhMgkuGK5rJd+dwREmS/XVpkrasuhERdtMl3ehzeXRUZGmq5du2bir5sClcgfCtRrcRs78vYMpd228YOsdmQUZiPeCMKBWN6s0zEyKtDdtv3B0wH6alS5V9N1vlZvjqKGU5DTp0+HadPs1/286bbtOK4FBXl+OS9djavjCUygu237w4bTBXDr4+Ef8Sa93mqMa6DBMa88oAeIk6+McUJ6CsdZC68LNSbYd+nLPLgE+O4uFi+Mc/z/COfUZ3HT33T93YpONZ19kAMdGTVzuq1Zp6cwXS2jwDwdoDt09+5M2dvqzZmooTCisDmuOXrKaqyNKXc6rpJASuP63dfqZF5iE9bpn2QzR22rDk2gky7F5c9pHZJ8PK4YenWrXxFvao5rIMj7NBf6xP3d4VbRCMKWxwQHyNaLs038jblA+ER9FreAddtWO1rIMTKq/wQ3U1OJ3lVGgQAPEu6yGrfsKoI/PuP9tJq76g3/LRQ1PLB5EjWJk6ZySEvXO70PxxUdj+5wHFfmvFxWxqYvMQrM33FN7Ov63w9kt21PoJGkd5re5f2hHPGmJApMGtdm0cnQMzk14FFgrji+xwLNwWFpDESPI3OECEaP41fWG4HwmXorbsHqti016xRnpdjBOndFtuJoIXfPGa3YPfvpQSs8Of3M/DS+Lw5OZ9UbfkWjCIoa4o2oIf44OJ0hOS8lAjmuwey27QxPIcmh3KTXcf3ZU8Sb47ii0OWuLGBTl934dbpARYE5gksfnaomC0dgi9z1KCFI3u6qPDh9dav/NtEGSH0VN826bQcyWqgJvzj+w09FsG1ztk/NOtXi6F6+MrpZ7/Q+pQ5O3AuHr9NTTz3FDjx4HcHrOK3kSdQk1qwucpmFiKg9rpLQqRUZVdayCI4cK4HecenQJSm441rdzXVIcig36UWDkGPEmxQQ4G3EG56YSuvd/p7A+MLezeehGRpJLBZ5ABY4ipypepkRvwDhM/VS3EKl27b8gIgOSH+adSJ4ALq/jbCO4G2zTrXA59+Sf96uUOrglKZY8fdL32dlZfmcvLJrswlu8MPB6QuO4+pvs0673nT8ScLyH7Kh8giwaq5/MwMEEk/dtkO5Sa9gELJ/bnhCxKoxvvL39T3kOK7+OGrdgVPkJ7broBn2/xSLNk7cXW2R9SkoZ0aSRXlAKKI+iptOabftsxdNfDUUmA8yVllaNOtUC7UdnNJam1SpIfi8ve0Y4Pi7tOq2HdBxlQldh9oUGNFK/XH11G1byya9ngxCzsZVrZAAx3FF5yWGXathSFn7kxG6xd4ufCMkGNuafdo2rPHC9gVKez4QiqiP4pah1EjSqbc6Z2aecOa8XP51Gdw3Zpqis0NXzTrRealGZBTSqMazFdsbHEUNDz64pnbnnXeyM258PXx9vqHSbdvZuC74n/LIKMdx3bUrF/ZtKoMmFXpe6CZCfJR/71dvum1r6cz1ZBByNa5qhATIcea8nPtOEbzy5DxQwtqlpdA/QpgnZ6ZIa1sZoU+oRazi9l1ajMJmBkIREVDP+O3EJyYr7baNQhBspANiZCSoMu2Bzq+MsZnw0ISZoG+cziKjnp+ezdYg8IOpBDyDNgz2z8HJ+tJ17mwNTpayJfGC13FtDcEDki94cnAWbizQJFxaGle1ItJwXCdNzIQXX+VPBF5IhyND8lkO5OrjeUyklIBGEncnglo36fVkEHI1ro7Vm5pI46r0dcFqXFdxA4Bs+tGG2FaG/3r0ShEaSWhK0g/qW+WmHzX4RgMoIJS7basRGSVlI9Y0Kof4lsDCb739ez112x42yvn+Lcc9aohUqTmeUeOZMT4ORXD27Nlei4InB+e12NDttu33uI4XxhUPmLv2lEPFAWAVXasYvVe/x99u24HEX4OQlhFv7li92ggdo1+ys5BYt29zNqE7UJVv4r8YgVBMvRK3/j0GZ7n7QLgiFLIa3R3gcA9UTYQelv9fNiR2B0gZ5Hu0kGM24vL5Rjh4LM9jZJSnDzIL033YfkrQmajh2S6eabv6d6TEETST4M/iwckbPDk4tXT6fbW4gH/NXbeHwROqYfzUmj+OWrnQ4bji3/zDjgI4sdsMQxMnunReYrU3cJxrV6bWEW/+GoS0inhzB06lnlzfCZrHg0zWOLtGoSAaSbZX/pvs/35Sr8RNabft0Mhq1Du9TwrT7cwfpPqDgT/d5g9Mq0zwwWd5TOja9PE9WghF0dvIKE8f5N6pervv8UzZWUSWN1WiVL3hBa97qt6EDE7XqR9aj+uxA7ywD3J+nzzizZWjVum4QprwvTvnJQtJDmC3bX8IlYg3BE/KHE+0LimcDMClj44x6Y4TkcIV0TGJm7aPVhfhLUYg/KI+iVvmQ/c8pQcfwbPdUP4gOwvTbRWrhzs68RVBNS90601QsNQIFS3LoMcwdZyXGBklNet090GWujJbnyt/cMbKy9uN1474Wr2Fegbn6MG+ZTXWdV6qFwWGQrduWw6r6NB56WZXB0W8+RHx5o41X5bCgMgHwRqxJfbctlh7sbFGa7Dt4vu5QHvb/KbeiNsthnsUGUmkMF2t8DdMF4VuTGwmu165ycwLXT6UJ6LQJUPfvr5HC8kPiLiec0e66593PEDjgRmt/P50r/alemvuZm0p1A/QvkS8BSLLNCnB9biar2m7/qxmxBu+h1xVb76ImoS79Wd34Np004obgIvhxEaiFquZhLOKHbCqjYwk6lBfxE1vGDbBAArQ8oOMHyh3H2Rfw3TjG+lgTLtM4Zs9wB8M82FRRAGbuhwwKEWRccEVrg7Q/u6x87Z6wzPoQT0NLn+P1gYhd+O6bZ8Rns7KBG9xlmX6/co8xZFR7k548CA8PM23EyI1UTviDd+P+PrJqzccHxQ7JRFvSo0k+QX50Cn6RVHYBPjrFs5qlxTEjowk6hEJ9QD+LHb6rBnzDOAjeIBu0ZWDXr16gRYsWLAA+nVwbQxZNLcAhjZRLhYd4ntBnzgDdKocAfs3mfhpxDzYsrcIIqPB71R0rOq2bNsIR0+YgIvg1/7atAG1wArwww8/hA0bNsDUqVMhJiamzmMW5BWAYbDz1wan4FLT9JqJG+7XczeuP+0vgDHjDKAEfC3w/Yo/b7hpBJyr5seVF7qfthRBbY3/43r23ElYu74Idh8oYf+WmuPqDd8sKILrUsc7vU/puKJgFRQUQHl5OXtfYdQbTqHj7TNmzGCfw/Hjxzt9n8lBg9B1vSdCdOMY8JWF72+DVtxwFvMvRCIDfm6sy28obNW158FofjbnssVsBMJv6kXlNmbkHYomwbVOO/fUbVvNMF00E0iGlMNf8mtj/5cNbXvroOsAZdFC8sR7b5t1eoun6s3XMN1g484gpLaD0zHz0t9mnYEcV08EOuINTzqk7/H9he5dX6pAdw5Od+DadLLlDpx45IDj6twvBZMcuPQ1mGtNuUCoQn0QN4PSbttap52767a99ociuLVZYA7QXRJT2QUu+O+8RLx1XvqCu7U3X8N0g4kng9DhUyXwYOo0CARyoQtmE1a1CEbEmxQe4CuextUdm42l0CXqAUHBLIJphK2yiTOUkq3k8OXvjEBGEtUIe3HDkGR/um1rBTtAu/kgRx/UB6UrszPn5cmmJfDsszP9jwKTNets3VHHNo57e6YstRLCdRGcUpKnUfgaphtMPBlJghnx5hgZ9fn/SuDRu9Qd1x79kv0yEMkJZMQbvhZTpkxht0nmEV9wN67uwDG/dKATcBiSzIndbfgrLGbLYrHOS1JIsvqEu7jplYYkBzJM1xs8ddvWoiuz5LxcdDZbtSgwebPOt17Mg5pGZmZE8SbzEqcj8THyWDQUOl/DdIMFO2hG6V3er5WDUzKknP4lJ2DjmtASWDNYpVmmniLevDEI4e/ARBHH3FKpyiwpKfE5JADxZBByx/8+zYV+8S9Yv+dEUbNw1m8Aq7bNle+YgLptq0q4i1vAum0HEk97Zfb8UAZ3JepBCzyF6eKaEaLEeZk5SagkpCiwc9VlboUOb3M8CG38sRgectGpXOtxxTWdoX0NLu/X2sEJFa6FbdXafCZ8wRhXZ3iKeHOVICRFZOH0tZSd6inizduQAAlPDk53nNhTC60lP6TYlFQSOLb8Jk5RHr+83giEqoS1uCnttu2rFVttPH2Q21/iz4oTQRM8dWVe+UkRM7qs5Kel4joJUWCKI6NAWCNb+EE+VHPlrGWPuyasnjI4tTYIHTtYDmlj9U7vC/WItw35JXbjmnZDul9ZptK4nq0sg14Dk2HQ4FS346pGxJsrUZNQGvHmziDkDkwX0l/6LViipOR/m5kEv2fLb/xNOyvnw8mr2yhuS2XCWdwUd9vGM0ut8PRBXr6sAG5tpd0B2lOYrhTjZHVeLi+GtxbngKWtGbqm+N6sEx8rHRDZv+GmCSseoN0JqdYGITRuuCLcIt7kjtqWXXV+j6s756U/EW+IFJEVqIg3pUaSLcbD0CpK3NZgscjatUlBycJdJ65sNgIZSVQnbMVNabdtrcN00RHmLky36gj/nxagCYcrimHgLb45OK3Oy1rBkDJ/ab6qUWCSQw8PiMIBWnmYbiDx5ODsq2HTT09Ov0MlJkh3iHizc9Ty4/pBQR47gVE6ru6cl/5EvPnafkbNiDd34BT5qe2J0CpevMFqJgGrYxK5UFMG2y9+SEaSABCu4qa777ZHFSlUIK3Y3oDdfGG48/vwg3xDvHYH6G3VBW7DdD05OOVRYJLz0tK2HBJ6qBMZ5UsUWLDx7OA0gFZ4cnDW7NV5HFfmqAX1s0zReemLQSjYEW+Rl5X9G2ge6hF3m7XTNtviBrLmpKKZ5PDl7/Gdkw+E6oSruGWkDbnR53ddMK3YzvAUprt/UxlM5A8kWhHfyfV9vjo47TIvd5v5qS8jXEgqYGf/N4+d6HPmpbvHh7pBqDamXDPhxam7TjrXnRP8Glcxy7SmWXlQxzWYEW9jhiub5SlcdBgGRuiscVs2E4mYLWkR4rZKKv8Phc0MhOqEZSdupSHJCKYM4BtaaVdqf9i0tgRc7cnDD3LCGT1oxZrjuXDfve4dnK0UCi9mXo5olQE3xUyDm8/PhB0fmeHlZ7LhX+9kW92X/lDBT/thexmtxhUNQq7ejziuaJHXCnRw9kx2LSDYK9CfccUs00CO657tgfm8ShWbfO3OEXfj6g7825tXCH2HbBYSMShZXHuL4EXuSPUPcPLKNpqSDBDhWLkpDknG6ZNH7p7pU7NOtfBkxf5uaQGMbafddClOM7n6IKvt4JQbUnZ8ZoR1C3LA0s6syHmJSPuupHE9W1ng0XmpFp4MQqHu4AxUxJva4+qto9ZbUNhwvQ7FTUnEmzuw23an6BnW7znJSSLr2Ybf77tEIcmBhIMwo3+Pwblfzd2i6sIUfsjRzRbIaCGc4ugcbXApIHjGO6mFNgdB3Nv264giuGu885cVz8RvrQr8c0NDy5ErxXCRF1p0XipZz5ETjHF9+185YOgx2aWTMHdlNrzyujbjigfohR+E3rj66rx0RK1xxdenc+fOTOhKS0vt1t5eej5bsZHkX39eBf3jfgtcBCemkHDWztti021L+bUj3AfHe04B2rgdMMKuclPabdsdzpp1qh0t5I0VWytYV2Y3VuxgOTiZQw9szkspCmzqY9MUTQ85jmvWtznszB8rdX/XbSRwOjRpUHg6OIMV8eY4ruioVSvizZ9xlZJb8MSzqKiIxcNJ+NNtOzn6etEdaevTZkXoCMAd5ackgaq2gBJu4qao27YvODbrVCNaSIkVO5i4M5Jo5eCUR4G196N6k3B0Xr70RA7UxpqhZ399wMY11B2c9SHizXFc33opl73uOK7eZJlK05EpKTbTjaeIN3ds/e5X6NYoGSTvvwWkys0iTk0Kk2VbKj7IBdrbFlDCStyUGkmCGRnlDH+t2IFkw+kCuPXx8HRwKh1Xx2zEQI0rRbw5x5uINxQ+Jc5L+bh+9Hq+VxFv8+bNs7sNTSyT0n0/2cS1acvxjgCx+J2USmKxmkhQ2FDfTl0tISNJEAgncVNsJDlaXgIjDCmQuyIbLp0HdrYdrGghb8J0tTiDlriQZIJe3VxnNTIHp0bCyxycL7g5QJ8uYpFWao2rJHQ4ru27C5W6u8god2G6hRsLIHuOdgYhdxFvOK6hHPHGxnWg+uNa06gc4vlZGKzoXJ3A4LhGXFJWUWK37R5xM4TpSMnyLwfnI/nbSir/ZwKakgw4YSNuHdroM8el+X42JVmx5b2uMOVg/uJsiLqqg2gIbLSQpzBdtGJPaqEHLcAz6I4jXP/dXyzMg1vbaef0c+fglLIanTXrxHFtGe97E1b5ARFxN66eshqvxWq3dcmT04+NawhHvDkb1/yNOXCi1MyasPqbZerOUbttSzEoOc4g5v0J0NYiVWzChm0BMW4LhG4Ah6qWUdUWBMJG3LDbtpI5emdWbHwzS29oqakjJoc0i1Y/WiiYVmxf8XQGrWUUGApvjxF6l/c7y2oMZrNOT922tQxJ/mpx+Ea8eRpXPDFdWpTDf67M0CLe988rHkNulImjY5bpuu9LYMB9vpuNcG26fdVtwLEjqq1is+4CEA0mO6o+BXMNddsOBuEibopDkj2F6Tpr6vjd12WKhc4xWmhAssHlYwPZbdsbqru5PoMOZQenN922Az2u7taztA5JRgcnDHJ+X6hHvHnqtu14YqrmuOIJjGIjSdFh6B51r91tUjAyWFvdcHDg0gojkJEkKISFuCkNSfbVii1ZgxFcK8MpxU3ryuE4X9WNHa5utFAwrdjO2MFXbaPGu64uitcVw20h6uD0tdu2s3FduQwPiMksvUPtyChPB+hAEu4Rb75kcMrHVRI6HFdcMxvOC52v46q0Z5vQbbsDQIIUJWmRKZuEha/YjsDeysU0JRkkwkHcNOm2LSUYSOAHx58FbkdQ3E7piuHrI2YY0WoitIrRQzDZV1sE96a6PoOO/UUfsg5ONccVhS53ZQGbuuzGr+f4O67IT4XF7KvSLQb+4MnBGcoGIUhUnsEpFzokEOPqivmfzoOUhOdsosZ0TajWQLYGt6mCum0Hk3AQt5Dotq3mAjeC0ycv/2M2E7nv1+bD3tJyOLHbDEMTJ0KXJN/OOH2lssbs1oqttYPzeFyxWwenmuOKm36ljb9qnMDguD4zebZPjlq18OTgXFdkhLHtMkErPEW89eynB7VQe1zdcXLvNWgPHK9iFk7IkJTa29gqOPzv0csbjUAEjZAXN6XdttGK/VRWYNYWHBe4f9iaC3uLy9gCt9/NOouNsPyHbKjkF/2lxqBqs/F0vlsjidYOzt5pepf3BzKrUStHrVp4cnDu31wGA0LUIMS6bQd5XJU4ah3Bten2VRPA0thiNw8pzUpKnQD2XvoW97ZlAxE0Ql3cFBtJ0IqtRmyWJ+oucOfDT1+VwAM3qRAZxQvdum05rKLrUJvCkvXVwJtu21rhycEZrG7bzhy1u4tNisfVnfNSLaHz5OAM5Yg3FP1g4Gxc0Xn5G35clYjc+jXbQN/4Wak9mxUUtFoWTyJUcweqluJctQmIoBHS4uZPt20trNjSvP+5X3MCEhm1a1cu7NtUBk0q9GydLj7K9w8jnkEPHOd6eiyUHZxaZTVKzksM01V9XA8UW7NMW3fUeRUZ5QxPUWBsXJO0G1dPEW++GITUQj6uSoQNp8gv/NyOGUnkvdqsX4VFNzDXHIWSi//LASKohLK46can36voHR/KVuw9B0sA3/CKo4UmCokLG4vz2TQTGgT6N0v32pDCzqD96LYdSDw5OK9Gadf0E3GX1ej3uIIty7SmkVn1KDAtxzWQBiE1aFSjrGpkIcmx11v3skkxW7ZkEmFusuwyC0nOByKohLK4ZUwYfa+ibttaW7HdnUGv25UP4zNUihYaLwmdEXbtKYeKA+DRealmt2218eTg7NA9OFNXzvCU1ajWuDrLMsWEHXeRUbi9IfKy69emIRmEfAXH1TBYWdVYtOggDI68W0r6B7k7UqjghNu2VnyUC9RtO+iErLgpDUn2da+M2ngTphuQaKHxwvYCFLofdhQ4dV56zGoM4TDdLbuK4I/PaLdm5CmrMWDjCuCxWSfa3scMd/3aNFSDkDe4G1d34OesReUo4GI42xYAa8Vmq+DKLq+F4xSSrAmhKm6KQ5IvcNpNcSgJ0w1ItJDQ4b6O8zKY3bZ9xZORxHzNFBSDkDOUdNsOqKPWITLK3QGaDEKu8afb9prVhaCPeYZdt62xcRYLZyviONZtu8AEFJKsCSEpbv17DM5y1T3YHVpn+vkbphvQaCH+temf4Lp6WL6sIOTDdLVizeoit2G6ng7Qzhy1e9eoFxk1qo/rcQ31iLdJ92lXjbtr5uoOrNTPbmwLHRIArK22EeaMlPYAAJRfOwKbLswl+79GhKS4Ke22rbWRxJMV25cPcrCjhcItTDeY7NpsghvuU6fbtrNx3VBUzgKesaJTInSuwOnMuKN6gOagCZ4MQodPFsNjqdqJmz/dtvUx17PrHMcKNLscSVbJcWgk+RFvMQKhCaEoboq6bXsTphtIPBlJ/DlABzpaCM9Er8SZYfXxPJ+cl2rhb5huIAlkt23HzEv8tzbx1YzSLFNH8DNxPLaYH1fQZFw9GYT6DdWDVvjTbXvD8kPQP+ouVDVhGtLWbhsixIakqHV7q/Jzgfa2aUbIiVvGTb/LUGIk8TVMV208GUnUPEAHIjIKo8Ak5+WmHWVQW6qDfrr0gEeBIWqG6apNsLpt43oiG1NxhjEQ4+qto1YNPBmEtB7XjT8Ww0MTlHXbbnyyD3BxnBD0jzeK1RtTO/FxJ6/sgH1V3xUAoRmhJm76kaljFSmUlntlvLFiB+qDrGa0kNx5iaxamw/LtxUAd0IH7a+lBCQKzJODM9QNQsGIeAuko7ZPbGAi3jwZSbQeV12kHpRQULAEesX9ha21WURxs1jvtc5NQsnF+SagvW2aElLipm/fLUNpt20t98p4smIH64PsKlpownWTlUdGiQfSQGVeenJwhrpBKBgOTleOWiXj6slRq9a4hrJByNO4uuPUvhroxMkikdmimyhvwvQk/oc7Vr2VqjaNCSlxu2HYrdPU6rYdTDxZsbWKAsNoIdykqgaOUWArV2cDHNdBUkUyOyAqjQLzGKb7cOgahLQYV+kE5u1/5UBigv/CGogsU08Rb6Fs/HIHmoe6Xb7fYomyWOckLXaBkkJ4csnFz+CX6s1zgNCUUBK3gHXbDiSe9sqE8gcZK94KfprK38ioVWvz2FoOTl/6YlzYdpmf1hs/zfW/k6oHrcAKKVAGITXAiLekQc7FTWkUmOMJzMbiHEXj6iniLZQNQu7YVnQIeje6087uj8j3b6Ov5CB12w4JQkbcgtVtW23c7ZXB9Y2+GjrCPH2QfywpgP4jkpnzUq3IKDz7/8nLzEtLO9debCFM1wBasWhBQdAMQr7iTcTbCEOKX45axxMYX8Y1XA1C7sAxrz4ohCTbr7KJc5SCvnHmmjLYVZlPiSQhQKiImybdttXA3V4ZwcFpAK3w5PTr1FunqvPS0biATVjReZlwOhk6NUq1c16GepiuVgYhb/DGwRmocZU7ap2NqyeDkPla6BqE3IHdtlMTnq57BycZ/3ErgAV+uvCuCajbdkgQKuIWEt22fcVTmG5tTLmmDk5dlN7l/c4O0AFp1unCeXkhyRTSYbqhYBByhhIHZzAdtZ4MQsPTAr+1xBV+G0nwijgjyba1WWoBxB6lzEvCz09St+3QISTELRS7bXuDpzBdTHPXCnRwDu1rcHm/pwO02pFRjs7LZEhx+dhQNgiFu4PTmaMW01Fw+lKdcXX92gSy27Y37N7Cj+vdevAVjAnreOkW4BoLIgayYo3BCXu491Z+C8evFFPfthAhFMQtNdS7bTtDSZhuMDl2sBzSxuqd3uer089ZZBRmXuLZv9qRUUgoG4TCycGJf0tOTg7MnDnT6edEctRKj1Ujy9QdWo4rVqxdWiurGnduPgRtG+PrKqb9iykkUqsbYQXOAvuqlhfjPwVESKC5uPXvMXi6kqkCXNM5e8IMeXl5PjV1VIuvFhfAuDTXVaPWB2g8E3eFWlFgOPWJFeKmdeWqRUaxUFoNx9VTmG44RbxhxNScOXOYsKHAucPZuGKWKZ7ADO2brsq41lwCzcbVnUHIHfi8T/wUC60TZDdaLLb92qKhBI0k2y9+QlVbCKG5uCntto3rBM9Mnm1t6ljTqBziW4Lbpo5q4s6KHeoOTrWcfnjQlGdeqhUZJR9Xb5p1qok7g5Dg4AyfiLfJkydDVlYWEzis0Lyd5XAcVynL1N9x/ePEmXbj6mu3cX/wJyS5c8wopmW1YigyJxc29sUCZdXr8JoRiJBBa3HLVNJtW45jU8fl841wtrKANXUcPS7dupCuJoEM01UDrRycWjXrVAtPYbrhFvGGIjV9+nQmcNL0pBIC4rwE27ierSyDNnodjOE/r4EYV0/GL3f8uHg/DI2aKBpGhNt4jeNnJi1WicM7N5Z/hPZ/ExAhAwcacovhnsJ3/r7QAAEC1yBwqkZq6qiW0L30fLbbM+iyK0XsrFkL8IPcOdrg0rH232XZ8No/g7tmhOsd27YWs2adSqPA5ARqXN/IyoFJ6c43lYf6uOauzIZXXq87riiKnTt3ZtdLS0tVXaPGcV3zfRHsKTbBbydM83tc0Xl58FiJ6uP6/FPZ8Mc7fH/P4/ts9T8vgp6v3ORwINc1/nW9vBZyT9w+GqhyCykiQTv0D9/73Bx/5/LdgVMhQ/sZILWbgX0AcZ3s+zUr2Bljr169QAm4nnVwc7nLNYiC1fyU4NT7ICYmBrRgQV4BGAY7r5LwAN2iK6f4b1dKmzZtYOCgVDh22gRNo/SQ5GdsVKDGdfdPp1yO66dLc+C5l6aBVrgbVzwIp6bpnVaV+D6srq6G7777DmJjY1WdycBxHXndCDh34aQq49q1Uy+7ccX1uR/XFvk9roe3lytaM5z/2TzoYr5XMI6I5hFbNLLQgRuvbbjwvumX6q1PARFSaDYtqbTbtlIco4VeeiIHEvg1OlzP8WXeP1TCdJ0R6g5Od1ZsFF7En67UOK5vvZTLpg979tezdTpvxwLH1d3UaThHvClde3NE6jknTVFKeIp4Q/wd15nTc+AqPyXt67gq7baNgnp+YyvonOhwBydOS4o6V37tKGwo/ygbiJBDM3FT2m1bDRyjhXxZ4A7FMF0JrGDucpPVqPUB2p0VG4X3+vEp1mad6NDzNzLqo9fzfRxX5wdM3Of0x0dD1yDkycEpOSFxahOrIcn+7y04dtnZ2dYQbpzelF5LbyPe/GnC6s+4KjWS4Np0l1hsnYD72nAjm8XqJJGEDbvelF5ai9eNQIQcWolbhpJu24FAvsAtCR0ucPcamAyDBqfaLXCHQ5guDHJ+X0g4OD04/dRs1ulsXF05aj0bhEz847VzSXo2CHl+bmgmQXGSqjdvwNcFRQ2/ItKWAvlr523Emxbjigah0YOVjdvG5QdgYNQd7DrHWfWMVW3SohtK3s8XF2FrGxMQIYcm4nb9kJsy/V18DgTyDw6y6pt8mD+3ANrqdTBkREpQu237Sjg7OD1FgantvHR01Hoa1w7dtZlmRjw5/bwdV3wMvp74WmL15s4Y4yhq+LPousSfkU8H4jRlJ53rpBktxxUdtUq7beOYx57uDRAntLThZLY7SehQ405e2QmHLhXmAhGSaCFu+tvGPKDdabAPsGgh8ZRz43YjdIj37YMcTLwJ09UKTwdoT2G6zpp1Ko2MsjbrFMFx7d3a9UnB/rJiTfe2nTSVQ1q63ul9vo4rVl0oKLj+5kzcHEUNZy0kUXMG7n/rmWxw+e95inhzHNcftuYyR22LeL2iLFO7cS00Qt/2ypYI5n/2X+gdP53t1Y6IiLDv2SYKG2rctoufmoC6bYcsWoibQUm3ba3xNH0S6mG62XO0c/p5ymr0JUy3buZlYCOjjpSX8NWKbxWFWuDfF3HJ9QHeV4OQJCb4muFFXkHJRQ1vRyH05KxUM+JN7SxTpQHJyJl9NdBFFDThi3SdE/a3sXjJWjhyaZMRiJAl6OKGIclJKnQQDiVwSkTLaCFvHJxa4VVWo0IHp7PMS4yMahadzFcUqWEfGbVmdRG4OxFUYhCSqjcUM3zN8G/zVdQQ/NnmvPC4Qq2IN2lcNxSVs2pdSZapL+DadI/qe6xHRqZkHCeFJQtrbfxi27aKBRiSTC7JECbY4qa423Yog2KtZbSQJwfnpPu0jIwy2q1jOqKWg1N+QESkyCilzToRrSOjdm02wQ33qRvxhtURPnepekN8ETUJdwYhNSPeHDMv8Tl/vzIPLp4BRY5aT2wvOgj9om5n16VQZKmpje02DvZXrTICGUlCmqCKm9Ju2+GCFtFCvobpBps9/BqKoafz+wLp4AxUZJQnR61aqG0QQmHACC50S+J1BM0hS5YsUbSxW4uIN3y+ao6rI1ipXz3UBiBRkDSrMZJZJG1iZ645ArsqC/KACGmCKm4jB48Lv8U2hVibdYpIzku1o4VC3cHpzoodLAenq2ad16f4PsXlyVEbrHH11kjiTNSwEsLXAS9K8NcgpBaunJcPTpimKC2lcPUaGJj4G6s7UmhIKpuPBEHg1pW/bwLqth3yBFXcYhrH1q/FNh9wdF7+ZUG230KnJEw3mGxaWwJ3jXKd1aiFg1MyLuABWo1g1UCMq5Ju2444ipq0Rw2FTZqWHD16NFt78/V5emrSq0W3bUnocFwr+FkTJeJW/MMBGM5J9ZlF6GzD2QROesOQkSQ8CKq4HSjbZeS/GKCBYxctdKAYZuYrixbCdaUxw11XRlo7OKFCPaef2rg7QOOUMkv+8Ccyih/X6Z9kQzu+ouvRL5kdeH2JAlMa8eZK1NDSL/8ZV85JT4RzxJs7cG260+XxAI1ttn+WHSnucxNMkxbYU7Ucjl8pob5tYUBQxW258cuCPQ8UGwIZlhxu+BMt5O4ArXUUmKcDdChnNWJIMkZG+dOs03Fc33oxz+ss06N7yyHtZuf3uxpXx4gsV6ImR+6c9FbcwjnizR0bjFuhbePJoh2S17FaYBEk1pZtIKy7lV3ehHO5yuZziaASbLdk7oyXp8zMfGC67q6bA2MkCGecGRdcNev0N0w30LhzcGJWo5YOTk9hurh+pmazThzXzEmCIHhyXuI6WJfWrsMCHMe1pKSEbcrG54igkGG8ljtRk1BSvYVrxJs7cCr15IZoaJ8kNiQVYyTZ5KTYoBTBkOS15nepagsTgi1u5jOnTudcXRIz82/fPAlJXRPghtE3QX12UCrFU7TQogUFbsN0+w7Vg1Z4cvodPlkMj6WGZlajs27bwWzWycbVB4MQChJOP6JAYpKIN6ImB3/G2+otVAxCrvCr23bsddY2NkzQxPs42cLs4UvUbTucCPom7rNXjs/ZcXH9tNtaPqSDo3yZ/+E++PrKn6B9Sgdo07Otz7E7DQFn0ULuDAeB7LbtDZ6cfv00FF5PYbqeDtCOzsuvv8+Bk2VmxZFRjs5LXyPeZs+ezQ7ISpuoYoUqpZPg3+NuW0M4R7y5Y91X+2BE1AQpjsTOaCTZS5CfzB/nAu1tCxu0iN8yrz67KGdM87tnxkcmQafYntAppidYSi1wdt8J+PCzf0N18gXoM6qfotidhoCnakHLM2hmYojSu7xfawenuzBdXw/QakdG3eghONiZQUg+faoUXHubMmUKM6LMmzfP6WM8OTi37TPC01mZoBXu1p/dgWuYrSuHAxdnm4KUoiTl/bZLL61HIwntbQsjIkADsHr78dw3ths4YSdJy+j2cH3zO2BcxYPQ6JtW8PmM/8Grf38WchfnWJseEp458osQqyTtawomuPaDBgxXaO3g1EXqXd6PTj+lFZCUpPHG7Jm8eKeDqdoIi4pyVHvv4hTmuTPmgIwrPm+cysTqh7lcnSAYhNxsKufXELXC0/qzOwrXrIEuOCVpzZIUtgHIQZHbVbXUBDQlGVZEgjZcvnDtfOfRze5KtbqR5JPb/JsrPioRkuN6QpfqARBragHrlq+BH9Yvh42HCvkPYlNo2awNEM4ZPSwDIi/p4OtF38E3Swvg2KkydvAKRofwpYuKYOSA8U7vw7Pk1DS9ZuKGwtuvg8Hl1OGu40X8upcB/AVfZ6zo0gwjYNB1vWDvsQ2wdusKWP3jCkiM0yl670Y3jmGva6DGtbq6mgkYfg7Hj687frhRfcwI55UljqvhtlRo00abz+SiBflwy4hM8BU8Yfgh7xC0juzLDkP4t9sutvW2y7Xl8OnJzKeAXJJhhRr7WJVieLHbfwp7Jwxm31inAjjJdCt7auIN0oLv7ootltLon7mkrvFkSPECdOjhAchVU0e1wDPohR8U8etIzqufD77I1nQP1F+mZsNj9zn/99HBectvUwIuvCwbcUWRKpFRao4rVoOdO3dm17HTtlww8Tkf2+56OjyUx9UdaB46t6A/6Bp1ZAlbnDyKRHb82XphASw6/SS+OCYgwgatKjfEdKX2smFYk3F6+zMlzprnZt10Yk3jFr5vGd2O6xE5EDqV94Xd63bCitVfwU97V8OlaxXQpVMvIOzBSgX3XPXtMgLaxPcC48oNsODzL2D9hiLgIkC1A/pbb+TA/eNdJ5LEtCsPSA6jN+ABOuGq3uU62Pebv4B7H8iAQIOvNVaHN99m4KfyTLBmUwEUrl0BbVvofTZSORvX75avgDXGFdC0mc6nSiomJoZVb9999x3ExsbaOSfRYn9bWqbTnwuFcW0fnQotFFTDS/JWQoeqdBYgaS9siO2b5b9mFZy7WjYXiLBCk07cEhvNq7LHtbjX0Dt+sEX+1pK63wrxN2KIKSeWdhawq+t6JwyB3jAEuKMcmPbthbc/eQ2udLoAPQb3JuelEyTnpdqRUYiv3baDSSg6OCXnJTo4uSrwC2eO2vlzfRtX3B+HYpGSYnNshnPEmztwzC8ejAFLgoUTZosErO5IcSrpfM1ROFj1Qy4QYYem4sZj/P7sF0Z+atJgu8nW1t22DCcqmniKJd1kjYETb0yO7QnJwFduZyxw9mvReckLXZ80cl66Qh4ZhUKHkVEJLcAaAuztek6ohOk6w5PTDw/Qjzwf+KrNFe4cnGpEgeG4Zn2bw/ZI4rhKe/YcwbEuLCy0uy2cI97c8cln/4XBiU+w68xEIs+RFOo4JnRryz8wAXXbDku0Fje+evs+7/4rxw0tGre1v0MmWgC2tThrY1x2VwRbibNYaq2LwOxu/n78fWnN7gCuAixnvj7Off7ZfIjsbIFm/ZsEvOFhuCI/IPoaGaVmt2218RQFhgfoYJhtnOHJwSlFgfnTrNMu85Ifi7deymXbRbzJMg3niDd3nN1/BbqL1yOsxxZbGokkcmVVW4xAhCWaixtP7vxj/5z2dOfZqXZGkjpWF4vdhkqbxcThoUK6AJvmtAirxJwkdFAOUFVUAQVL8+FkXCk069cErhsxhgwpTvAlMiqQ3bbVwF2YbigcoMe52d+GWY1qNuv0Jcs0nCPe3IFGkt5XJgEXJXjV7Pe12ToAbK1YAMeulGQDEZaEgrjB1vKiO/++/3eF97ebpu8luicF6po5OdnNFpC/K+XtBDlOPs3AiW9WfBPHRSXCoCajgTUn2MfBrq1b4NvGSyCpG0aB3UhC5wRXkVFSs841q4tCNkxXyGp0XTWGxgHaeeWEDs4/Pmqb6lW7WaezLFO589JdBmeoR7y5A1vbpESNFw8XnO2wYbGtdeAxY2/l90Ygh2TYEhLixmM6VLWr8ysHHzF0juud2SM+JX1okzF6YZuA7XwKQB6Hg2WbxV79rA5LcIjSEefU2VVOvFeYf5AMKXCUg93vbYY1cashSl8LA4cOhWGpBjKkOOAsMqrmouvXSOswXV+zGoOJ527bJr6Scr3e5disc/7qbFbRdW+f4vN711mWabhGvLkDx/za4VbAJYF4FLDNFFnAJnTna47Ajovf5AERtoSKuEkYS6v24AVWnFmQ2qxR68zrmo5Pbx/TJXVwEwPERSbIRc5+NlK80fqdtRdThK3Csz6Sf0tbLGCLRxXEr1fiUOhl4YXuCAdnDx2Ht+e+Bk35NbqOqR3IkOICT5FRoRymG+oOzg7dvRcnudDhdGJBQR5bo2t0Vefze9fReemM2pjykI14c8fyVUtgcNL9wjfSjI842SN0AhAEb2/lShNQt+2wRst9bp44eam28rv9lSUfbi035n1zOrfk2OXDuiu1l/WYSRkXmSi8EcE2jWBN8pZOvzjBb8LKNeGdC3JJsy/77OUyLioJusX1h/YXe0D17looXPYdFG7/Fs5eOQGJ/IefKjrvKNzKV3a1l9meK9xLFUzQwTmia4bLsfppfwHcfa82LkkUoIOby132iduyywh3/3a8otcMpy9HjBgBN4wZAe276aD4kBFW/lDA/5tlqr13F674ECL4U2MtxnXBggXQt62yWZXP+Sn1jjDSdoN8XxHYZobyT/01v+LaqQIgwhYOwg89fzEM142b3CM+1YAVXYvG7WR3i/viLLZN33Isot1SqOikx4P4M7LgVDv3iu0zUHmtAraZC6Gq1Xm2xaB/v0FAzVfdg+s5q9YWeO28VIvnn8qGP97hvDJCB6elVRlbW9ICFN7O0QY2Hej0/pXZ8Mrr6q4FYsWD1v79uzDcORl6Jqf69d7ValxffSkH7hvr+942NA/9+PY56BrLixumF1gsdiv10jr9oar18OGxuwYCxW2FNeEobnLw1C1jYNL1hg4xXSeOaHqzDve6IdJUpJB2wom+SfGn5At4IDed2K5bf95R7OwqQA62lhfCqdjD0IGfukzl1+nIkOIeKTLK227jSgn1KLCXn8+B+292foDG16f9QPBrQ703oNBt2VjCpi678et0akSBaT2u7njj7b9Bz32P23/8oW7cX8GZF03rzf/tDERYE+7i5ohBH9dncs/4AYYhzJAyhN1oe+tKk+qYdyLTOmltTjqTs8WjANjZVmy3s59BFzGb8BS+31u5FUqjfwYh85Kcl55A48L3a+2bdaoV44RRYBnDXZ/dB6Iy8hZ0cG74pgzGpTmvGrUQXnnm5e3pk/1aX5aPq+SoVWtcX3o+W7GRZO7TBTAk4V6LJQI4+SK9tM6GH+3zV4/CG6ZhU4DW28Ke+iZucgzd4wdkdInrM7F3wlD9EGb/t0cQPU72PQfyvQO2aUrbV2cvmbDlTtBLqaIru7QPfr76A7RPaQ89B/Ui56UXrOIPiAePlagSBeYuTFfotm3QzBDh7gCNB+GyK0WKW+/4i6eQZCVI49qWP4GRkm+U4k9IsvmLPtAMQ5Lt7rFOybD/by7/Ar48NR2rNhMQYU19Fjc5qa2jOxl6xQ+c3DNhEHNexkcm2j3A9oaPkE9K2u6xgG2ik7PuNLD7eWk6U9xywKo6fODZq8dhW7kRmvVPYtOX5Lz0DE5x4R40FDp3kVHOwKzGyNPJ0MvFetLHBdnwxhztpiTDVXiVRoHJkY+rrycwntYp3fHM1BmQZpkufGP/sbYj5+gtuccul0wBIuwJta0AgaL4VPURvMwpOlegB9GQksqv1eHUJRpSOOvkZa3DG95iv9HTumeOs+6qs1j3y9h+ktc260wo/v6bWj4AcJKDs18fh88++wSudCqnzEs3OEZGzZyeA1ejzF5FRu3bYYK7RqnTbVttPGVwQqJ2FntPGZyLCvLgzDr+vd3WDD2GKes2bjeuB4pZlmk7vqLr0S/ZY5apP92221YNA4gVLWTi5xdAmqMRbjt86SfghS0PiHpBQxE3OSb+krvR/D1e9Px1Q1rT2ybq43plDE4yQItom/NSetNbV9rkhhQxyhKFTcimE4iwmlJsD5WvV6PQsSiwiwBVSyuY0FW1PMf20mEUGDkv6+JrZJS7MF3stq2lkcRTBmfPfnrQCk9Zjce2m2FSJ+G1q9xkZjF25Yn8emkfHYwcnu7ze9dxXDHLtKaRWVEUmDuMa1ZDz7jHbPvZhG7bgp3MYjut/fkidduuTzSUaUlvwCMiJqRk9E0YPjElaZQOE1Js05NgZzKpO7Vhr3xyRbO/RbzNtlfBCm4xwMzLJt3IkOINzpp14gE62BZ7bwnnZq74Opd9BtC/mcHp/TvOGWFfbRHEdQJIuyFddeflV4sL4I5Bvtv/cRr19T//G4Y3/gPYqjTZ2ab4wbxkqYB3ysY/dfaqaQ4Q9QISN9cw52WP+AGGoU3G6nvFD5a1xIgA2SKc/TYBEcc1OaeI63LyCU1pinPvxa1wuHExL3QJLApsXJo2m43DBTyI4QExshHAmOHOXyvMahx5W7JmjTU9Of3yN+bAM8/7fgBXA09Gkn+9kw23VnknvHKhSxmU4td7V3JeRjTiIGOs7yYbXMMsX9hbNJKIp5cWaWYSrJ/bLeUL4QsyktQrGuK0pLcYTVW78QIrzywwdI0fkNE1ru/EPglD2RYDTEgRjSVMn1gzVYtFnm7JYJMgHHDONoSLm/BA/iPS3CeKaS9uMIsCK9u3F17+3wvQSF9LTVhd4E1k1OGTxfBYqjabthF3UWCCkUS75+YpCiz6oB6gnXe/C6u7/hhMXsW/5suL4a3FOWydrmuK3uf3rmOWqa+U/LAfBkXdWOdDab0qXjtY9SOmkZiAqDeQuHmH8VDlz3iZvvLM53r++4xxLe6Z2CWuv4GfuuRaigkpqHO2hTmO9ZlDteIstu11Frt+q1IbH9uuO2sxyIE1QaVTTA9I5nqC5TTA2YLj8MFn78JVMqT4zImzJrZx2RfnpVqgg3P0YNfipWUGpzfdtvs3NYASuiSmsgvwH4XT600wn1+nq2hZptiQ4gsoyrWlrXiFFGZEBF+YbZFA+sydu3oEtlYszgeiXkHTkv6hB+a8vHFySlKaoVf8EGgpNV3l7CPALNamUbbNcHZz/9ZOicydabHZuaxRz7bfIfwiOFP9C+yr3ApRXWpZbzpqwuoZdF7uKyu2NusMVmTUC89kw0MTQnNvmyeL/cv8c5/UQt21wNOXTLDzvJGv6MohoQcE5L076+2/Qa/9U63fc3XSSITrS07/zbSOEknqHVS5+YcJmPNyFV5YFFi/xJETh+nGGbrG9dN1jOlu7cIjlzB2DmkRbrWt44G1VpOuy2PAJF2TbztoGd2Bv7QHy3l+BshYAUu+LYDLrc5DVOdaGD/uLnJeOsHRoeeuCataeOq2HcoOTlzH7BmRDmrTKlYPY2Iz2fXK3WZ+PdQIF5IK2PTlzWMnqvLePbu/GmyfI7zGl48yJ5g0k2K6vNUIRL2DKrfAkaGP6zNxYNINht7xg/WS85IVZKzjjsXuTFJeuNVFfJxssU7CIrsia85q2Vu5hTvcuIScl17izHmpltBpEZLsLZ4cnL4YSdRCbki5715lUWC4hnnhy17MSCKdGdqm/G2hyZuZkeRpMpLUQ6hyCxz5pqrdeIElzHmJTVhT04ckjdH3TpQyL8UzSOlkUjZ1Kd8/IO84Lu8qLt4kQ/oQW7heCUOgJzZhLQPY+e5mWB23Ghp1riXnpQucNes8eCxPlcgoodu23ul96OCcdJ92RhJP3bZrS/kJidYQVCRDyo5fjOykQ4m4oZFkcNQ4O9uy9bPChE3qtr3GCCRs9RISt+BgNFXtwQusPPM5a8I6sukt6d3iB6T25tfp4qOSrC5JNkNpkW3+BjsvpfCYWv6DGcHZdiPI9t9x8spO/GCj0PViQsfBkX374K1PXoeaTuXkvHSB5Ly8EYSTgI3bjfCXBdmKIqM8ddsOZQcndtselqTdc8Pq7d5U36tGwUjSArttW8MXbFcEgzN+Qs7X/AIlF7/NA6JeQuIWfIrPXT01fenpXLyuB+a8vG9i57i+hj4YBdaorfDRk8832uediFsQpK3jnK1rAQd1Hmf9DWLbH2wJ1MnSk1/RF52Xn74LV5PJeekOeWQUCp0vkVGeLPb9hupBKzxFge3fVAYT+bUxLaisMUP7gcpOur5btQT6J94sLGlLRZqgaoh1f9v2C1+jtJNLsp5C4qYtJv4y5/uzX2Aqgh6szsvrDbjPDc0iNqel/QSkfDuBcMViW49zSD+RUvQ4B9dmi8ZtIa3ZROAuApzhhe7Tzz5hU5fN+pPz0hVyoZMio1w16/SU1YgWewxJ1oqTpnJIS9c7vQ+FN+GM3uu9bWqz8XQ+ZPxRWdW4f90JuD4iCcRPB9uew1ls0/nSKsDPF5eisJmBqJeQuIUOJnDivOybOMwwIPE6XceYHiAqlF36CSe7Yl2m4ziZJ0x6kMU6NSNlX9qW2Tkh87LxRPZRrzRWwFfffm05HXeY65janpqwugDX6TInCYkizpyXnrIaL3Da7W1D4Y245Loy+mJhHtzaThuTC4J74ZSk/7OQ5EtDgIurc44n7ahhHLr0ExylkOR6DYlbaIJnk7k7K37CC3wBORn6uN4ZzJDSZKwe1+msphKxdOOExGbrxnD7Ss9augFIczTiGS3b3Co7CqAsxkclwuAmo/mCzwDcLg52btoC3zTOJ+elGxwNKQs/ECKj0sbqnT4eD8Ljbk4HrVizushls1Sk6gj/nxagCacvm6DHCD0oAUOS+8Y9In4oQGwozDKCbG08+Pf6jorlJqCQ5HoNbQUIP6zOyz4Jw/SDk0bbNqbanarai5udZ8zxlFbM15O+kZtbbD8m/Nzeyi1w8No21psOnZfUhFUZoRySjDb65usNbC+aFiw6mw1/e0uZkeQ/f/kKhjW5h713ZYZju5mM81d/gZcPXzcFqNt2vYYqt/DDznnJTydm9E0YNrEHNmHlhQ6rLovcaskQpzNrhVNXTtaiByxWD6admDmmoVidl/FDLL1gCGcpA/j1wHH41wdvQLMBiaxlDxlSvOeU2cSmLf3ZYqAUTw5OLY0kSHwnUASuYXaNHWFdo+bAfq1aEriDVRvwWyMQ9Rqq3OoPev5iGKq7UWjCGi80YXXEIjuNtRc5iy0yjN3AWcP36mglCD9bK1u7O3vlBOy9uAlqyHnpNRgFtnpjgdfOS7Vw150Aq5/814pgbLvJoAVrjudCxgvKum0/99hzkM79CaQ5SWswAuB7tVaQO/6+2Uduzz1K3bbrPVS51R9M/CV3s3kVXvQgNmFN5tfqBiUZoGXj9iD6JUFajGBY88FkK3VMsaQNBraqzZZvKUiasPmctXvkMFOzBTovKzio/LYCPv3sU7jU8lcmdP37DaIoMCf40qxTLTw5OFeuLoARLbURNkSpkQQbvba/xK9Fxwrf22LrhIVpcUmajCQNCKrc6j+sCWtq0g0ZHWK6ThyuG6/DvW6IVIxJMWDWzjzypqzCA2wbxsFmORNCVfDAESGmGVk4+e+Vfve28jVwKu4wkPPSO5w16wxWFFggQpK9BY0kv45wHQXmDgxJ7n/wYbAPRuasMVvid/DV6SzTD+fndQai3kOVW/2HbVQtvvADXuDb0/NsUWDYhDVhqGAiYQ8VBU7aSiC5zcCa+iU+Slqt59gZsbhwJ1yr5X8sQpzOFKPDBunG8NdHA+ziYMfGzfBNNDkv3eHMeVnNlUN8C4Ax49L9arbqLgosUCHJ3rK5vAAeSVNWNV7YyR/KYuQnaNb/WLfPXKq9ADsrVlHV1kCgyq1hY23C2jt+mH5wk9HSpgF2p3wfnBXZmp1FzLq02E1byn67rOKr8zv5/x+5vB9+vmqEjintoefgXuS89AIUoG37ihRFgRUXF8OuQrMq3bYDwfK4bHj6Sd//fXR3Vi3qDs0adbDbywniGZkwy86/duVfwucnn8GqzQREvYfEjZBIbR3dydAzftBk/pKKQhcXmSSb5pEkSkwyEvK8rPuGrHvlnKSp4C0RonlF6oYAsh15eP1s9XHYfqEQorpcg75kSPEKudBhuLOnJqyhbCTBTgDJD4CiSj7rxb/C0HNTZbtbxPeXBez6KeYef8JYXLF0NBANAhI3whl6EKPABrAoMEfnpf0eOflBxbp257hfzqZj0lcL61vuEImE35y9is7LzXA12UxC5yWOTVixZY+j83J2Vh7c7iJLMpz3tn38l8UwrMkkp/dLldyvV3+BfxwaNQVob1uDgcSN8ISevxiua3rbxM5xvTMGJ42B5qLQWQXJiiRq9t/L75ew2P08V/d3iYpYVVsB2y6sgYg2V1nuJTVh9YwzQwrubau/RpI/AsgNUU5YfAqNJLlkJGlAkLgRvsCcl9iENTXxBkPvhCHMkMKJ5ZpFZkuzrn3gt1KTEfF+2VSR/cIIIu1QqKucDKzoTNHUhNVbJKG7WG2G30+c7vQxaKPf+ZGZ9VHTAn/2ts147FlI556wmzivu1bMwVum23KPXt4xBYgGA4kb4Q/Medk9PjV9cOJYfZ+EoaLIWYRux2DbbwSyqUr7ak64DxynJwHstyawGzi7Y9bei1t4oStmQkdNWJUTzkaSS4u6MSOJDfvZAWRT+SL49AQZSRoaJG6EWhiaNWqdMUQ3ZmKvuGH63olDIS4ykd0hVG9gfbfZtIqzC222Phjsv7WbbqrrV2F6WnZpL3cMDrCEFHReUhNW75n+lylwXeRkTSo3f4wkb78xC/oc/Y2TkyV7h+68Y08Yt5ORpMFB4kYEAj1/yRjb4r6JXWL7GnDqEpuwghiFZNdyR9pT50zkHDePy4Ld7R8kfif+irNXjouGlHLom9aXDClegFOXO7aVwIndZuhQmwIjWgWnCvbHSPJ/f1nEjCTyTtviTLdFChRAI0n2oevJSNIAIXEjAo0erJmXN4jOS2zCahMmq47JF+3skKYtZWfo8m0HjsIogjf/elUQukZdaqF5/yRqwuoF6LzcWFwEx7aboUmFnq/o0qFVjB4CwU8dc+ChB6f5+mOw/Puv2JQk267iUNbLT5y+P/uB+eszs3BKkpqSNjBI3IhgYm3CyoudoUtsP12n2J7itKUsqFm2Z07enc4qfeJjLV79k7Y9T1XXKmBf5Ra41OpXaEzOS6+QDCn7N5exztxqCp0/RpLnH3sGDNwT4necQ+yWdCvAm6Y7yEjSQCFxI7SENWFNTUxP750wVN8rYQjI8wDZNCTnbFOdrFqz2G8GF3LAOGt7H8cftZ3lc9ibzlIWvZ0j56V3SEJ3aEcZ1JbqoJ8uHbokKT85KLiaDc//zfcpSXwOm3JOQvfY4VKKgHj+YhE3TgqPO1C1Ad45cv9ooPY2DRISNyJUwC0Gk7vHpxiGJI0TMi8Ru+BbxzU3cFiXE75xDICWgqHtT+7lmik0YT0dd5iv6K6R89JLVq3NZ+t03AkdtL+W4pMhxZ+9bW/O/hukHHwIbKEBsihJa9Ndfj3vVLapiPa2NVhI3IhQJLVZo9aZI3S3pHePT03Fik5YW3HYEC6fq2SJJ/L3sy3kq04cmGg+kH0j/grhkUcu7WXrdLF9OSHzkgwpHsFqat0PRVB5BFj4sieh88tI8syXMKLJ3SBfs7UifvNrzTHIOkhGkoYMiRsR6uj5Swa/Rsc2jqPQNW8kRYHZ74oDu2lHqBvkLMf+LF+2P88WGYZXzzDnpdCElZyX3oGGFOwLB8d1kFSRzIQuPsp+W4Y/e9suL+7Cvwc6su/lYyaBQ7vRvBg+OfEs7W1rwJC4EeGEHiTnJS90PdF5Gd3e1pbHEVcbxl3iIJZgv1Z39soxNn15udWv0HlkJxjOCx0ZUtyD63Sr1hZAxQFg05doSNl5zqjYSPLqsy/DkMoHZV3kZa5bKSSAv/5m6UQykjRwSNyIcIU5L3F7QfuYbmIT1l4gaxRuD8fZrd+BLLCpLrKDpWRqsdj9GvYQbMJ6Ju4QNWH1EsmQcqTMBNMfzQJfwZiwpdkbYEDSTdbb5O1tJHH7pXo3vHH4ttFARpIGDYkbUV8QosBiB6YP1o3V94pHQ4rUo8CGTc6c28eFB+FWA4t4hy0M2iJNZUrOPNnP4hYDIQosjpyXAQKNJKkHp8jOS5xX5otOZpuM5/PISNLAIXEj6iOi0KWm904crh/UZIxV1eT5lfYiB+B8Q7i8GSuAM3OK9ToIe/COVO/ldlw1QoeUdtCLmrCqxj/+lA0jLL+1r6blRiJx7P5+ID37XM0vWUA0aEjciPqOrAnr4FQUutiIBBAMKJy4jcDBhSn/znrwtG0GZ7fbVQ2cLQLKeuAV7sMosO0X1kDzAYls+pIMKcpAI0n14s7QorHNSCK3/UtsKF8M848/R0YSgsSNaFDoQTSkpCTcYOiViJmXsiasnLxzgatfYav75F0OhI3jwiyobR+xfY6mFAVWw5qwkvPSF7Jfeh6uMz8si2qre4KBfPzLkxSSTDBI3IiGih7EJqz62D4Zg5JGQ/PG7e07FYg7g+3ETrzNmmLIyRu0cnYHX0esP8NTee0Cq+jQedl3VF/o338QOS9dgHvb/vvMQhipu5t977jdQ7oNQ5L/fjCdX5SjvW0EiRtBIKwJa2rSDRmC8/IWXaeYnuwOi13qicV+f5yE7Db7nnWcnbvS3sEpqwD5/6LQnY47BJ1S25Hz0oE3Z78EAw9msutSRczJEtekl/XLky+TkYSwQuJGEHURm7AOTB+cOE6P05fitgCZw9K509K64Y4DJ+tzHNjFYNa9yh6LU5dl5Ly08tfH/wJjIh4X1z8tnN1JA4N9Y3mj9M68I7S3jRAhcSMI9xi6xg/I6BLTb2LvhGGC81K21sM5bikQdxYLS0KcXfqJ9TEc2MLBLOINsi3JcmU8Wr0PJOdlu15tG1wT1lXrCuDc/5pAc9Zt297ZKr1q+Nr+XPE9fPjLY2QkIayQuBGE9+CimOGGZndO7hE/KBXDnYUoMFklJzbL5CI4rrZWjIaSuhzY7ZVzqPwcyj3rIVy23ocJKdsvrIbGXWobjCHltVdfgKEnpoBdcwi7Rwi3f3FiprHo/KejgSBESNwIQhl6QOdlkxsnp2AUWMIQaBndwU2Wpa07tCRktplKqYqTRUmBZFgB69Fc/qtR6PZVCs5L3GJQH5uwopEk99mFMKLJXXXuk3skf716DF46YCAjCWEHiRtB+I+evxiwCeuAxOszMB2lE0aBgRMficOiG9sUZ7c+J1tLsoqgPDSMk/20cEvVtXJmSOHaXIXoLtfqTRNW3NvWqGAAxEUksjwYaVuFVM1Kr8G2C8vNH//yJE5JUrdtwgqJG0GoD2vCmpJoSO8dP1SPAc91HJZ2smddr5O0TtpxANIXQee4ureBo3gCq+gwCkwX5oYUNJKMi5wKMoGXuXJsr8DrhzNyj1zeRUYSwg4SN4IILFbn5aBEsQlrHaOlbRsB+062d8t6t7UMdJyqdO3aRFDozsQfCrsmrBiwvO2dY5YeccPwWw4c3ZHi372vciPMKfstrrUZgSBkkLgRRPAQmrA2vTW9W1xqak9++jIuMrFuGcY5ST+x3y8A4rycsD/Ber+0t84xuUN0Xl7eB8dgP1zj1+mwCWsoOy9xb9vgQ793uqdQeImEv3nhyZdNhef+1xkIwgESN4LQBj1/yRjb4jcTO8f2M6DQtWgsRIHVyW62Cp71O+G/EeKNMhEEmebh/2trZXWO7Hdi5uXeyk1M6ELNeSkYSb6Akbo7xb+Ws/ubJIHDRJKXDowhIwnhFBI3gtAePUjOy6R0oQlr4/YykZOlmUgVGicZL4UDvxjaLO1nll23/SN1zS3CrWeY83ITRHepheb9EzV3XqKR5NoSPTSPaieuQTrZS8hf/en8V5B3/Hna20Y4hcSNIEIL1oS1X8LIiUOa3GToEtdfx5yXsr1ydiIHXF3VsjoLZRWP7CFSE1ZhQpNjvelwqwIKSdW1C7Dv4maWeYnOy+tGjAm6IeXvf3kGRl95RJh5dThCyYXugyOP5JZUGMlIQjiFxI0gQpsMfVzfjJTEG9J7xw/T4346AVmkl9hJDuSfZ86+I4FcFDg2XWmxGlfAQQQR6Vfvu7iJRYHpugfHeYndtle8sh5SEsdJzwRshhuwavnRy3vglUMZ/Lwl5ANBOIHEjSDCBwMvdJndY1PSBze5kRe6oS6MJzYV4MDW5cDpY+ogiwVz6JeGU5cY7owVXaCcl2gkGXL4d/Z5nGB7GtJ3C068Yio8N5+MJIRLSNwIIjwRnJe6W9PbRndlTVjjIpPcC5jMXWl1HULd4Ga501L6Ebvfy//Q0Ut7WVXXIkXdJqwvPP403Bj1qEPSC2f3x+BzebPsNzmHK4unA0G4gMSNIMIfPX/JGNrkZkxIMeBeOntDCoBjcDPU4pqbtGmu7n4561qcbGLT+ntkm8nxZhYFxgvdNb1/zkvBSNIJWjRqb93u4LiBHW/5ybwEco/9lYwkhFtI3AiifqEH5ry8eXK3+FTDoKQxrAkruJqKlDVlBbcdyAWs63d19isId569Kghddetz0HdUH5+asLKqLfJR2XODOrma+G9/eGSacWvFd6OBINxA4kYQ9RfmvExJTE9vH9MtgzVhje3F7rBqmAVsbXlAOiBw1s10nPW6iHUDOSdv5WPX7E7aZI1sL18NZ+IOQqeBrpuwXrhohrkf/RO67OeFuFF76/QnF8F/rbXJqLC37Ri8sH/sFKC9bYQHSNwIouFg0Mf1mdw9lq/o0JASP7ROp3DZbKPUlI5976qgE9SMs4qjcKN8CpSz7krfd3Gj6LyMh4FDBddnWelhOPTTUUiLuB/iIprY1vbkwir7fQtOvGpaQ0YSwgtI3AiiYcKasOpj+k/skzBcPzAJZ/lkhwOHrQTWm0XBsW4UF9fm7LsZcHWmQR0nRM9ePc6+xkYkMiOM3R5ti/RrHPbw8V9fLb0711RFIcmEZ0jcCIJIbR2tN3SPGzi5Z/zg1EFNxjLRYchUS/gvZ/2vfTUnXyATzSicnVPT7qqjSUSen8mEMyLCJpBiL7xtF1bDB0f/NJC/sRgIwgMkbgRByNGDaEjpL3NeMura8+tsJ5D3pZOwbSIHuxtlJhFhWrPWIqme7V/hf1GtOFWZ+8uLxevOLx4IBOEFJG4EQbhCz18M1zW9fWJybJ+MgUljoUUjMdxZfIB9tJdYgbH0kwjZ9gIpF9NB+RymIq2PlPbayTaSowvzr/vGkZGE8BoSN4IgvAGdl4YBiTdkdIjpPrFfYpoODSkIZ9+VQLY/zhl1I76s1Arf2wTONiu6/vwSmHfshc5Ae9sILyFxIwhCCcx52TV2oGFwE2zCOky41SJtCHcyFelYxcldKPKN4Q4Px5tfPXhProm6bRM+QOJGEIS/GLrGp2boY/pO7J0wXI+GFCFdxJX5RI6TSs7hK3YT/+fhyaOBum0TPkDiRhCEmmAciWFs89/w63T9DL3ih0Fz1oTV8zQlYlfRsU5uHHx6/DXTml9pbxvhGyRuBEEECj1/MQxpcvPklMQbWLfx5qLz0rGas24Yt6alCPvosJHq8/tuJCMJ4TMkbgRBBAM9fzH0Sbhu4tAmNxk6x/bTdYrtbbX5u+L7s5+aPj/xGk5JmoAgfIDEjSAILWBNWAckpqfzU5f6XnxV57gut+z0x+bFp2ajsNGmbcJnSNwIgtAa1oS1d/yIlMYRMalXai+bN5qX5Z27emIOUMVGEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEAQRXP4f8kfGser8rBoAAAAASUVORK5CYII=";
|
|
274
264
|
|
|
275
|
-
var _templateObject$
|
|
265
|
+
var _templateObject$r, _templateObject2$o, _templateObject3$i, _templateObject4$d, _templateObject5$7, _templateObject6$6, _templateObject7$5, _templateObject8$3;
|
|
276
266
|
function ErrorModal(_ref) {
|
|
277
267
|
let {
|
|
278
268
|
title,
|
|
@@ -289,13 +279,13 @@ function ErrorModal(_ref) {
|
|
|
289
279
|
errorReason = 'Oops! Something went wrong';
|
|
290
280
|
}
|
|
291
281
|
const styles = {
|
|
292
|
-
wrapper: material.css(_templateObject$
|
|
293
|
-
header: material.css(_templateObject2$
|
|
294
|
-
sorry: material.css(_templateObject3$
|
|
295
|
-
content: material.css(_templateObject4$
|
|
296
|
-
errorIcon: material.css(_templateObject5$
|
|
297
|
-
messageWrapper: material.css(_templateObject6$
|
|
298
|
-
errorMessage: material.css(_templateObject7$
|
|
282
|
+
wrapper: material.css(_templateObject$r || (_templateObject$r = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
283
|
+
header: material.css(_templateObject2$o || (_templateObject2$o = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
284
|
+
sorry: material.css(_templateObject3$i || (_templateObject3$i = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n margin-right: ", ";\n & > img {\n width: 170px;\n }\n "])), theme.cssMixins.rowHCentered, theme.spacing(12), theme.spacing(4)),
|
|
285
|
+
content: material.css(_templateObject4$d || (_templateObject4$d = _taggedTemplateLiteral(["\n box-sizing: border-box;\n width: 100%;\n display: inline-table;\n padding: ", ";\n position: relative;\n margin-top: ", ";\n height: 79px;\n "])), theme.spacing(2, 0), theme.spacing(9)),
|
|
286
|
+
errorIcon: material.css(_templateObject5$7 || (_templateObject5$7 = _taggedTemplateLiteral(["\n position: absolute;\n font-size: 20px;\n color: ", ";\n margin: ", ";\n "])), theme.palette.error.main, theme.spacing(0, 2)),
|
|
287
|
+
messageWrapper: material.css(_templateObject6$6 || (_templateObject6$6 = _taggedTemplateLiteral(["\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n padding-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(6)),
|
|
288
|
+
errorMessage: material.css(_templateObject7$5 || (_templateObject7$5 = _taggedTemplateLiteral(["\n margin-top: ", ";\n font-size: 14px;\n font-weight: 400;\n color: ", ";\n cursor: pointer;\n display: -webkit-box;\n line-height: 16px;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-right: ", ";\n "])), theme.spacing(0.5), theme.palette.text.primary, theme.spacing(2)),
|
|
299
289
|
okButton: material.css(_templateObject8$3 || (_templateObject8$3 = _taggedTemplateLiteral(["\n & .MuiButtonBase-root {\n width: 100%;\n position: absolute;\n bottom: 0;\n }\n "])))
|
|
300
290
|
};
|
|
301
291
|
const handleCloseModal = React.useCallback(() => {
|
|
@@ -1684,7 +1674,7 @@ function HumaLoading(_ref2) {
|
|
|
1684
1674
|
});
|
|
1685
1675
|
}
|
|
1686
1676
|
|
|
1687
|
-
var _templateObject$
|
|
1677
|
+
var _templateObject$q, _templateObject2$n, _templateObject3$h, _templateObject4$c;
|
|
1688
1678
|
function WrapperModal(_ref) {
|
|
1689
1679
|
let {
|
|
1690
1680
|
title,
|
|
@@ -1693,10 +1683,10 @@ function WrapperModal(_ref) {
|
|
|
1693
1683
|
} = _ref;
|
|
1694
1684
|
const theme = material.useTheme();
|
|
1695
1685
|
const styles = {
|
|
1696
|
-
wrapper: material.css(_templateObject$
|
|
1697
|
-
header: material.css(_templateObject2$
|
|
1698
|
-
content: material.css(_templateObject3$
|
|
1699
|
-
bottom: material.css(_templateObject4$
|
|
1686
|
+
wrapper: material.css(_templateObject$q || (_templateObject$q = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
1687
|
+
header: material.css(_templateObject2$n || (_templateObject2$n = _taggedTemplateLiteral(["\n ", ";\n font-weight: 700;\n font-size: 20px;\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
1688
|
+
content: material.css(_templateObject3$h || (_templateObject3$h = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(4), theme.palette.text.secondary),
|
|
1689
|
+
bottom: material.css(_templateObject4$c || (_templateObject4$c = _taggedTemplateLiteral(["\n & .MuiButtonBase-root {\n width: 100%;\n position: absolute;\n bottom: 0;\n }\n "])))
|
|
1700
1690
|
};
|
|
1701
1691
|
return jsxRuntime.jsxs(material.Box, {
|
|
1702
1692
|
css: styles.wrapper,
|
|
@@ -1711,7 +1701,7 @@ function WrapperModal(_ref) {
|
|
|
1711
1701
|
});
|
|
1712
1702
|
}
|
|
1713
1703
|
|
|
1714
|
-
var _templateObject$
|
|
1704
|
+
var _templateObject$p, _templateObject2$m;
|
|
1715
1705
|
function LoadingModal(_ref) {
|
|
1716
1706
|
let {
|
|
1717
1707
|
title,
|
|
@@ -1721,8 +1711,8 @@ function LoadingModal(_ref) {
|
|
|
1721
1711
|
} = _ref;
|
|
1722
1712
|
const theme = material.useTheme();
|
|
1723
1713
|
const styles = {
|
|
1724
|
-
loader: material.css(_templateObject$
|
|
1725
|
-
bottom: material.css(_templateObject2$
|
|
1714
|
+
loader: material.css(_templateObject$p || (_templateObject$p = _taggedTemplateLiteral(["\n width: 100%;\n ", ";\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n "])), theme.cssMixins.rowHCentered),
|
|
1715
|
+
bottom: material.css(_templateObject2$m || (_templateObject2$m = _taggedTemplateLiteral(["\n & .MuiButtonBase-root {\n width: 100%;\n position: absolute;\n bottom: 0;\n }\n "])))
|
|
1726
1716
|
};
|
|
1727
1717
|
return jsxRuntime.jsxs(WrapperModal, {
|
|
1728
1718
|
title: title,
|
|
@@ -1749,8 +1739,7 @@ function WidgetWrapper(_ref) {
|
|
|
1749
1739
|
const theme = material.useTheme();
|
|
1750
1740
|
const dispatch = useAppDispatch();
|
|
1751
1741
|
const {
|
|
1752
|
-
step
|
|
1753
|
-
solanaSignature
|
|
1742
|
+
step
|
|
1754
1743
|
} = useAppSelector(selectWidgetState);
|
|
1755
1744
|
const [{
|
|
1756
1745
|
state,
|
|
@@ -1766,14 +1755,12 @@ function WidgetWrapper(_ref) {
|
|
|
1766
1755
|
}
|
|
1767
1756
|
}, [dispatch, failReason, state]);
|
|
1768
1757
|
React.useEffect(() => {
|
|
1769
|
-
if (step === WIDGET_STEP.Done &&
|
|
1770
|
-
if (handleSuccess
|
|
1758
|
+
if (step === WIDGET_STEP.Done && txReceipt) {
|
|
1759
|
+
if (handleSuccess) {
|
|
1771
1760
|
handleSuccess(txReceipt.blockNumber);
|
|
1772
|
-
} else if (handleSuccess && solanaSignature) {
|
|
1773
|
-
handleSuccess(0); // solana tx doesn't have block number
|
|
1774
1761
|
}
|
|
1775
1762
|
}
|
|
1776
|
-
}, [handleSuccess,
|
|
1763
|
+
}, [handleSuccess, step, txReceipt]);
|
|
1777
1764
|
const handleCloseModal = React.useCallback(() => {
|
|
1778
1765
|
reset();
|
|
1779
1766
|
dispatch(resetState());
|
|
@@ -1800,7 +1787,7 @@ function WidgetWrapper(_ref) {
|
|
|
1800
1787
|
});
|
|
1801
1788
|
}
|
|
1802
1789
|
|
|
1803
|
-
var _templateObject$
|
|
1790
|
+
var _templateObject$o;
|
|
1804
1791
|
function BottomButton(_ref) {
|
|
1805
1792
|
let {
|
|
1806
1793
|
variant,
|
|
@@ -1808,7 +1795,7 @@ function BottomButton(_ref) {
|
|
|
1808
1795
|
onClick,
|
|
1809
1796
|
children
|
|
1810
1797
|
} = _ref;
|
|
1811
|
-
const styles = material.css(_templateObject$
|
|
1798
|
+
const styles = material.css(_templateObject$o || (_templateObject$o = _taggedTemplateLiteral(["\n & .MuiButtonBase-root {\n width: 100%;\n position: absolute;\n bottom: 0;\n }\n "])));
|
|
1812
1799
|
return jsxRuntime.jsx(material.Box, {
|
|
1813
1800
|
css: styles,
|
|
1814
1801
|
children: jsxRuntime.jsx(material.Button, {
|
|
@@ -1841,7 +1828,7 @@ function ViewOnExplorer(_ref) {
|
|
|
1841
1828
|
});
|
|
1842
1829
|
}
|
|
1843
1830
|
|
|
1844
|
-
var _templateObject$
|
|
1831
|
+
var _templateObject$n, _templateObject2$l;
|
|
1845
1832
|
function ApproveAllowanceModal(_ref) {
|
|
1846
1833
|
let {
|
|
1847
1834
|
poolInfo,
|
|
@@ -1879,8 +1866,8 @@ function ApproveAllowanceModal(_ref) {
|
|
|
1879
1866
|
}
|
|
1880
1867
|
}, [handleSuccess, reset, resetAfterSuccess, state, symbol]);
|
|
1881
1868
|
const styles = {
|
|
1882
|
-
iconWrapper: material.css(_templateObject$
|
|
1883
|
-
description: material.css(_templateObject2$
|
|
1869
|
+
iconWrapper: material.css(_templateObject$n || (_templateObject$n = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 220px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(6)),
|
|
1870
|
+
description: material.css(_templateObject2$l || (_templateObject2$l = _taggedTemplateLiteral(["\n margin-top: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n padding: ", ";\n "])), theme.spacing(4), theme.palette.text.secondary, theme.spacing(0, 1))
|
|
1884
1871
|
};
|
|
1885
1872
|
const sendIncreaseAllowance = React.useCallback(async () => {
|
|
1886
1873
|
const allowanceSpender = spender !== null && spender !== void 0 ? spender : poolInfo.pool;
|
|
@@ -1932,7 +1919,7 @@ function ApproveAllowanceModal(_ref) {
|
|
|
1932
1919
|
});
|
|
1933
1920
|
}
|
|
1934
1921
|
|
|
1935
|
-
function ApproveAllowance$
|
|
1922
|
+
function ApproveAllowance$c(_ref) {
|
|
1936
1923
|
let {
|
|
1937
1924
|
poolInfo,
|
|
1938
1925
|
amount
|
|
@@ -1950,7 +1937,7 @@ function ApproveAllowance$d(_ref) {
|
|
|
1950
1937
|
});
|
|
1951
1938
|
}
|
|
1952
1939
|
|
|
1953
|
-
var _templateObject$
|
|
1940
|
+
var _templateObject$m, _templateObject2$k, _templateObject3$g, _templateObject4$b, _templateObject5$6, _templateObject6$5;
|
|
1954
1941
|
function TxDoneModal(_ref) {
|
|
1955
1942
|
let {
|
|
1956
1943
|
content,
|
|
@@ -1962,12 +1949,12 @@ function TxDoneModal(_ref) {
|
|
|
1962
1949
|
const dispatch = useAppDispatch();
|
|
1963
1950
|
const reset = utils.useResetAtom(webShared.txAtom);
|
|
1964
1951
|
const styles = {
|
|
1965
|
-
wrapper: material.css(_templateObject$
|
|
1966
|
-
header: material.css(_templateObject2$
|
|
1967
|
-
content: material.css(_templateObject3$
|
|
1968
|
-
subContent: material.css(_templateObject4$
|
|
1969
|
-
check: material.css(_templateObject5$
|
|
1970
|
-
doneButton: material.css(_templateObject6$
|
|
1952
|
+
wrapper: material.css(_templateObject$m || (_templateObject$m = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
1953
|
+
header: material.css(_templateObject2$k || (_templateObject2$k = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
1954
|
+
content: material.css(_templateObject3$g || (_templateObject3$g = _taggedTemplateLiteral(["\n ", ";\n font-weight: ", ";\n font-size: 18px;\n color: ", ";\n margin-top: ", ";\n text-align: center;\n "])), theme.cssMixins.colVCentered, subContent ? 700 : 400, theme.palette.text.secondary, theme.spacing(8)),
|
|
1955
|
+
subContent: material.css(_templateObject4$b || (_templateObject4$b = _taggedTemplateLiteral(["\n ", ";\n font-weight: 400;\n font-size: 18px;\n color: ", ";\n margin-top: ", ";\n text-align: center;\n "])), theme.cssMixins.colVCentered, theme.palette.text.primary, theme.spacing(2)),
|
|
1956
|
+
check: material.css(_templateObject5$6 || (_templateObject5$6 = _taggedTemplateLiteral(["\n width: 100%;\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(10)),
|
|
1957
|
+
doneButton: material.css(_templateObject6$5 || (_templateObject6$5 = _taggedTemplateLiteral(["\n width: 100%;\n position: absolute;\n bottom: 0;\n "])))
|
|
1971
1958
|
};
|
|
1972
1959
|
const handleCloseModal = React.useCallback(() => {
|
|
1973
1960
|
reset();
|
|
@@ -2009,7 +1996,7 @@ function TxDoneModal(_ref) {
|
|
|
2009
1996
|
});
|
|
2010
1997
|
}
|
|
2011
1998
|
|
|
2012
|
-
function Success$
|
|
1999
|
+
function Success$e(_ref) {
|
|
2013
2000
|
let {
|
|
2014
2001
|
poolInfo,
|
|
2015
2002
|
handleAction
|
|
@@ -2074,10 +2061,10 @@ function CreditLineApprove(_ref) {
|
|
|
2074
2061
|
loadingTitle: "Approve Allowance",
|
|
2075
2062
|
handleClose: handleClose,
|
|
2076
2063
|
handleSuccess: handleSuccess,
|
|
2077
|
-
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
2064
|
+
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$c, {
|
|
2078
2065
|
poolInfo: poolInfo,
|
|
2079
2066
|
amount: amount
|
|
2080
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
2067
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$e, {
|
|
2081
2068
|
poolInfo: poolInfo,
|
|
2082
2069
|
handleAction: handleClose
|
|
2083
2070
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
@@ -2088,7 +2075,7 @@ function CreditLineApprove(_ref) {
|
|
|
2088
2075
|
});
|
|
2089
2076
|
}
|
|
2090
2077
|
|
|
2091
|
-
var _templateObject$
|
|
2078
|
+
var _templateObject$l, _templateObject2$j;
|
|
2092
2079
|
function ApproveAllowanceModalV2(_ref) {
|
|
2093
2080
|
let {
|
|
2094
2081
|
poolInfo,
|
|
@@ -2123,8 +2110,8 @@ function ApproveAllowanceModalV2(_ref) {
|
|
|
2123
2110
|
}
|
|
2124
2111
|
}, [handleSuccess, reset, resetAfterSuccess, state]);
|
|
2125
2112
|
const styles = {
|
|
2126
|
-
iconWrapper: material.css(_templateObject$
|
|
2127
|
-
description: material.css(_templateObject2$
|
|
2113
|
+
iconWrapper: material.css(_templateObject$l || (_templateObject$l = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 220px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(6)),
|
|
2114
|
+
description: material.css(_templateObject2$j || (_templateObject2$j = _taggedTemplateLiteral(["\n margin-top: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n padding: ", ";\n "])), theme.spacing(4), theme.palette.text.secondary, theme.spacing(0, 1))
|
|
2128
2115
|
};
|
|
2129
2116
|
const sendIncreaseAllowance = React.useCallback(async () => {
|
|
2130
2117
|
const allowanceSpender = spender !== null && spender !== void 0 ? spender : poolInfo.pool;
|
|
@@ -2173,7 +2160,7 @@ function ApproveAllowanceModalV2(_ref) {
|
|
|
2173
2160
|
});
|
|
2174
2161
|
}
|
|
2175
2162
|
|
|
2176
|
-
function ApproveAllowance$
|
|
2163
|
+
function ApproveAllowance$b(_ref) {
|
|
2177
2164
|
let {
|
|
2178
2165
|
poolInfo,
|
|
2179
2166
|
poolUnderlyingToken
|
|
@@ -2191,7 +2178,7 @@ function ApproveAllowance$c(_ref) {
|
|
|
2191
2178
|
});
|
|
2192
2179
|
}
|
|
2193
2180
|
|
|
2194
|
-
function Success$
|
|
2181
|
+
function Success$d(_ref) {
|
|
2195
2182
|
let {
|
|
2196
2183
|
handleAction
|
|
2197
2184
|
} = _ref;
|
|
@@ -2243,10 +2230,10 @@ function AutoPaybackV2(_ref) {
|
|
|
2243
2230
|
loadingTitle: "Auto Payback",
|
|
2244
2231
|
handleClose: handleClose,
|
|
2245
2232
|
handleSuccess: handleSuccess,
|
|
2246
|
-
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
2233
|
+
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$b, {
|
|
2247
2234
|
poolInfo: poolInfo,
|
|
2248
2235
|
poolUnderlyingToken: poolUnderlyingToken
|
|
2249
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
2236
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$d, {
|
|
2250
2237
|
handleAction: handleClose
|
|
2251
2238
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
2252
2239
|
title: "Auto Payback",
|
|
@@ -2301,17 +2288,17 @@ const useEA = () => {
|
|
|
2301
2288
|
|
|
2302
2289
|
var spinner = "data:image/gif;base64,R0lGODlhuQEjAfcAAFFRUVFRUVFRUVFRUVNTU1dXV1hYWFlZWVlZWVxcXGtra4ODg5GRkZmZmZmZmZmZmZqampubm52dnaGhoaioqLCwsLe3t7y8vL29vb29vb29vb6+vr6+vr6+vr+/v8HBwcTExMjIyMvLy83Nzc3Nzc3Nzc3Nzc7Ozs7Ozs7OztHR0dfX1+7u7vj4+P7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJBQCZACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBAAj+ADMJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJ3qHAgAIItKhABSgixkCLNNKoAAoxEsZijTwiwEGOge3YI484AtlXBUMOqYCRaKEAAQNQwuiQkEnW+COTY6mowJZcKgABQxxUOSQDWIrFwQJdpkmmQhCI2eOSZX6FApppqsmmmz3G+dWKddZ55UFt4mmjnl2h0Gefax4UpqAtLkAoVxAc2qdCVLr55aNa8Slpl0UeNKOgcCrkJJQQdIqpUZpuuqWpBlWa5KX+CLUpwKy0IiDlqUSlqiqrBXHgKo+JHqQArcTSGiquQVWgKpeOLmRolcEahECx1ApwLLI/0akqrAsFWuMCvBI0bLXUNovtT8qqaq5DKFRQAQfhElQBueT+eW5PutYZb0bj0lvstffuFGmfC9jbEQr+khswUBykugC3H82bMLX7LowTChiXBMHE1Bps8Vgbc0ysxx+HhbDItFZcclco07ryWQu0HO3LJY1KqsoqnSwyzSk9CeXPDEAMEwMiC81zSEAnHXRNRCds9NEf+az0z0+3FDK5t0ItkopTJ33T1bMiULXWHUnddZQ5ZUz2SWcnPfbaWLUN9NtwWyU31XWDZfb+2STnjRXXcvutt9xZCw7p2YUbfrjSiSveFQcQRN6345RXbvnlmGeu+eacd+7556CHLvp37UYOQQU4j15UBaa33rjqR7HeuuuwLwX57LOnXjtPuOP++u5A9Y478EcJPzvxRhnfOvJFKR/578zvdLvxukdvk/LQWy+w8NobJbvpk3f/E8bVi2/++einr/767LfPHAocxB+/+zzJbz+89ON0//3l52/S/vfzH03gB0D5CXAmBbSfRMjXvwM6K4HzgwgDyefAjBAwgRKcIAUreBEIVk+DDOTgRS64vwyCsIEiLAgJDWhCEKYQIxjD3wJPiMIXboSGNbShRk6ow5dosIeSMVEbEIdIxCIa8YhITKISl8jEJjrxiVCMohSnSMUqWvGKWMyiFrfIxS568YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pTdCwgAIfkECQUAmQAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYc9PT09PT09PT09PT1CQkJKSkpPT09QUFBRUVFTU1NYWFhdXV1iYmJmZmZpaWlpaWlpaWlsbGxycnJ/f3+MjIyampqqqqqvr6+xsbGxsbGxsbGxsbGysrKysrK1tbW4uLi7u7u8vLy9vb29vb2+vr6+vr6+vr7AwMDExMTHx8fKysrMzMzQ0NDV1dXi4uLv7+/7+/v+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gAzCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiid+VQMEEE1DQAYqJlSDBAzTW+EAFMBZWgY08PjBBjoJ10GOPPwLpFwtDDomjkWix0EEHJUBEQZJDMmlWByxm2SILDVE55ItWirWilloumRCSXvJoZphejUmmlmAihGaaNVLA5ldYvvmmQnPSeeOdXump55oG+VljnIBmxYKgeio0gaEPcJmoVnkyqqVCJRha5EIslFCCpJMiVamlLC70KJ2cToDAqqzaGapR/iWQeulCM3oZZUIVsKorq4i+GpSsLLq60JRDSgDqQRTsqiwChPrqk5uW3spQrDZK0GxBHSy7rLTO/iSrsB9pu+wD3QYVq6Ui5Squsr2Wu9O5b4L70QPrKkuuu0B14GYFx4JU77L4qsXCv8oGnNbABOtqcFoJK7zwWfQ2LMHDZ2XbMLcUn1RCBxV00K9MEf87ccYocVzByShjDBPC/5KMEsowo9zuSyX8+7HLIJkcM8w3vxTyrpviTNLORN9E7aoPUNCz0B6VQPTOSzNN6dMxqyw1V1RXfXVYOmdt9daKZo0y2GGJfbJQTnpMtkZOZw2UjALEHTcBE0S9dkNdx2w3/k0PyO233EHfLRELRf+EwN+IC3Cv4BV5+nVOhyeOeOCMT0WB5JLPXPlTmEuOwOZUVdC55HuDblTfoyN+relKEZA64iOz7tTriC8uO1Ou0y537LcvhbruAqzee1GiAy9A6cMDZfznyTN1ue6aN19U5KlTLr1AGz+J/EzUY2779QKl/eT428f0e+LWSy/++OS/LcHfBBgLvkHs1//kUGmXL3v29rc/P1P9s9//ABhA9g1wKQU04AGTksAnPW6BQFlf/yCoFP7Z74EUfFv/MJjBCNZPfx0MoQhHSMISmvCEKEyh1DrlKRCq8CUsdJynXvgTGdqQhjyxoQ1diEON6VCGuj3MyQ+BGESjDXGGRbTJET+VRJvEUIdNNKIOeRjFkTyRiVXMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjXCMoxznSMc62vGOeMyjHvfIxz768Y+ADKQgB0nIQhrykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTnryk6AMpShHScpSmvKUqEylKlfJyla68pWwjKUsZ0nLWtrylrjMpS53ycte+vKXwAymMIdJzPAEBAAh+QQJBQCZACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBh0FBQUFBQUFBQUJCQklJSVBQUFZWVlhYWFlZWVpaWmBgYG1tbXNzc3R0dHR0dHV1dXd3d3x8fIGBgYmJiZKSkqGhoaysrLCwsLGxsbKysrKysrKysrKysrOzs7a2tr29vcbGxsvLy8zMzM3Nzc3Nzc3Nzc3Nzc7Ozs7Ozs7OztLS0tjY2Orq6vj4+P7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+ADMJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJ4H2wwYoooKhYBQ/EKKMEH7hYGAoy5ihjBTYKhqOOQPLY419AFvlAi0OmhQKSD31gJJASJGkWChVQYKWVGzhEwZNASknWBleGaSWTCXEJZI1eggWmmGIyZKaOWab5FZtsClnmmzKiKSdXVdIpJpkGSYBnjIDuiZWfdSq0waAPGMoVCoiyudCgcTqaFaSRhrnQomZGuakECISKAI2WIpXplXYmBOOTniaEwgL+osaKQKOlFnUqlg1xCiQFC30g668IFFprTx/cChGYOwpLEArAAjvsUH0iWulHDzT7K6/PBhVpqh4xa+2v2QoVbZjTfkTBt79yG25PG1Tgrp4iwYpurK2ui9a8stJq7734iqrvvmZV2++oAKNVwcAIlFvwWAgv3BIKHygL07n4quswSe26667CMQn87b8Xk/SBxiS7K3FLHgNbb8gklezyTQcDyzHLIGXsssYzw9SuBBJUAC/NLd9cMtBkUSk0yUSPNfLRGictltFMW+z0VlG7O3VYNgv989V8Hp0zThssUEAAARTwwNdcOwR1yWjXtMHYZMdNdgEnp51ryVvrRIH+3HzH3bbdT+3d9+B/A77UB4MnHoDhVyGg+ODYMj7V44MXIPlUFVA+eN2XG/WA5n0X3rlQn4Mut9SjH1W66WSLnvpPmbNONuevCyV72bU75TjrkeeuFOKs++6U4Jq73vmStNckQfHCI6TiiivmrdPbiRcgvfDQZ7+iUGHDbbbxl2uv/fXNIyW+9uU/hcL52Sef/k/Ps7+B++8TKz+L9S+1/v35M3U/+P3Lyf7OF0CmDDB7BXQKxDYQsQQ68IEQjKAEJ0jBClqwgEu6YFGQx0ENAoWDIPRgT0AYQhHuhIQlNCFOUNhBFa6QhRl04U1gSD8ZpgSGNnwhCXOokxTy8IeWQAyiEIdIxCIa8YhITKISl8jEJjrxiVCMohSnSMUqWvGKWMyiFrfIxS568YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUquRYQACH5BAkFAJkAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHUVFRUVFRUVFRUlJSWVlZYGBgZmZmaGhoaWlpampqbm5uc3NzdHR0dXV1dXV1eXl5gYGBioqKkpKSmZmZn5+fp6enrq6us7Oztra2uLi4vLy8vb29vb29vr6+vr6+vr6+v7+/wsLCyMjIzMzMzc3Nzc3Nzs7Ozs7Ozs7Ozs7O0NDQ2dnZ5+fn+Pj4/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AMwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4onhoaAiiot5IIEDMDoAwQUsHvZijDhCgEKNg92I44878vjXBT8WKaOQf0FgZJE0ImmWBxNIIOUFQTJE5JI/QuAkWShEKeWXEjS5kI9YxrilWCiAqaYEEzBEZpkOnBmWl2t+KSZCb5Yp51cu1qnmQlfCeeSeXdHpp5QeKISCoDC2SShXh6p550F5GvloV5GCOelBSpa56UEX3BjmpUllaidDKHRqpKMKTYDAq/6wvsoqqUOFamqVC01QJASJLgRBrMAioCWtRJk6K6oXTDDBBb0u5ECwwUpAbK2Z4uqRq9AG++m0O9laZ7MgZQttnNwGBaWax37kgbjQgluuTyh4IK9J2LIb67bvjiWBvcCmmy9Z+/ILq7//ilWvwPgW/BUKAsOqcFrPCjzsw082bC3FJXlwwcYbuyvTwdkmjPFHHJe88U0gAyvyyB2Z7PJNqUbLMkoau1zyxTPV7PHMI9n8Ms9k+Wwy0EELzTHRYxl9NNJhKc0s02GhoDTUYtVs88476foqBARTLZHPWOfkQABkl022tF5fJHXJ5prtNtkEpM2VB2/XHbfcWRFQd/7d5OJd1QR77x2230zpHfjbfRMOFQqH7624VBc0XjfOjycVueRuU175UZdjXrbmmxfFuOdlh/6U4Z4nbrpSgJM++OpEod646rAnRbfkd9fe1O2B5657QfHKKy/oOI1dN9q/FyT88vMKpbWwXesePPPDJ/8U9cxb7xT2y2vP1PTce88U98KLvxT5zdvUJQJkIzAB8eKjD79KKBAAwP3430+7+QSRb5ME+Qsg/lamPez9T4AIBAABtaei+anEAwlMoAP5R5MARBCBCKAgUC5wQQlq0CcO6CACo/fBmYgQgyXkyQkFGIAU7mSFAWyhC3MCw/xlcIY4QUAN7zcxHNZkAvE7BMDrfDiQBq6IJDuUIREXYsQGkgSAMFwgDptoRJJY8IT7WyJBqFhFK4rwhlpMCBedWBIIXJCEYRzjEUuSqiveLwDICyMTx7iSNcqxIXS8Y0+4qEd4kbGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU568pOgDKUoR0nKUprylKhMpSpXycpWuvKVsIylLGdJy1ra8pa4zKUud8nLXvryl8AMpjCHScxiGvOYyEymMpfJzGY685nQjKY0p0nNalrzmtjMpja3yc1uevOb4AynOMdJznKa85zoTKc618lOEAUEACH5BAkFAJcAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHUVFRUVFRUVFRU1NTWFhYYmJiZ2dnaWlpbGxscXFxeXl5f39/gYGBgoKCgoKCg4ODhoaGi4uLkpKSlZWVmJiYmpqanp6epaWlqqqqr6+vsrKytra2v7+/x8fHy8vLzc3Nzc3Nzc3Nzs7Ozs7Ozs7Ozs7Ozs7Oz8/P09PT39/f9fX1/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4ALwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopniUBhE44GIFJKhoGAcu1lhjBTIOpoGNPDoQQY6AkdBjjzgC2VcFQ/ZoJFocaOBkjA8l2aMGS5KlQQVYZgljQzRKaeOPVYZ1pZZacsDQjl7aGCZYY5KpJZQJoZmmi2t+5aabVCok5JwOFFnnVhzc6SZDLc5p5p9btSkolnAi1KWXYCKqlaKLNooQkl5aihAJY+Yp6YqLvtkQpkMeqqcDB6SqqgOafvoTCf6hZvkQB4XeOKqquKrqqatBxVqBqQ6RwAEHrR5UQa7IHrArrz7BGupIJCSbLLNCOXsnSRFIi6yf1P5EKbAhaTttt0MV+1G04uZqLrlipqsuu2lp4C6u68LrFbrzHmBvWvkeoMC+aB0777IAj6WAu/8WrFKTToI7E77SJqzwSQw7aXG9LJFwcLIOTIxSxRZfjNOOuDpAsMcihayykyibBfLKGmDcMlYwq+zwzF3VrDLOYuls8c08a/XyyjIHTZXPJxutFac1l9tp0UovxPTOQckbwNVYHwB11AkJqwGxQimA9dhYc8s1VmKTrXakZ1sVgdpwB5B0206REDfcBNBdlf4Dd8M9t95KEdC32hID/tTgaudt+FN2I0724lA5PrbikDcluOQBFF65Unxj/vfm5WJOOehLve3456QPdQDiHafuVNpxm+36QCTUXvtQVpN9ANCu2+47UU1iGfPsm/r+O/F1G2888k0pvzzzSzl/PPRJSW879UpZfztOgUYQwZbY6yk9ThUEAMD56Acge/gCWW+T3ejHj76+7Buk/E0kyK//+QFsXX9M5tuf/gLwv58oQIACZFsBc4JABC5wJxVooABR98CWHFCC+lNgBWdCAAzqj34brEkHPRg/EIZwJgcgYfxad8KZRECF6FtfC1uSPxgCYIYihKEJcQgTDsDQf8E8HEkEPUjBIKLkhRKUoRFdooEA6o8AQFyiSTggtvMRwAG8k6IWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU568pOgDKUoR0nKUprylKhMpSpXycpWuvKVsIylLGdJy1ra8pa4zKUud8nLXvryl8AMpjCHScxiGvOYyEwmrwICACH5BAkFAJYAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHWVlZWVlZWVlZWVlZWVlZXFxcZWVlb29vdHR0dnZ2e3t7gYGBhYWFiIiIioqKjIyMjY2Njo6OkJCQlJSUnJycpKSkqqqqsbGxtbW1ubm5vLy8v7+/wsLCx8fHy8vLzMzMzc3Nzc3Nzs7Ozs7Ozs7Ozs7Oz8/P0tLS29vb7u7u+Pj4/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4ALQkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopojUBRRQcAEJKiJGQQQ01hjBBjESZuOOEVyQY2Az8mgjjj/2dYGQPBaZFgkbwAgRkjw6qaRYJLDYYos+OgTljllOCdYGV4bZYkMkbGljl152RYKYYqKZkJk1upmmVlayeSWRCsFJI55zbmVnmwwdCWefav4pZkNwykmoVWAaemVDG2xJAUQkSLnoUWs6OiakSE7a0AUJhCqqopcCpamLEAlKIwV8JkTCAv6ixprAAqUWVeefJcmqawK1EnWrmK1+BOuusdLaq1C/thisR6ASK+uyx+5U5ZWkejSss6J6Gu1a2Oq6LVvdyvott+GKOq5a5Zp7LloUpKvtumWRkC68abXbbbX0isTkBtDKFAG27+Zr0gYXFFxwvzDZqyu+An9k8MMF63TBsAsw3LBHBENsMMIXc1Wlxg93XFbGIBdsqchfkVzyySirWbLBLY/1csQxh6UyxBzXfNXNBxO1L8s6V3RzzjdFYIAASAtgQMBBWwR0TxckLXXSRDf9FAVTZy1A1VYvFbXWWT/d9VNHgz01r2NT9bXZU4udtlIJsJ01028zVbbcSUdQd/5UeE9t7N5O3d233oA7FXffSNNd+FFr9+324kQJzjbakDPVONuPVz4U1nJzrTlQl0/t+d6VZp5TBFMv/bmrpZde1M+rs96667E/NXvrtTt1++y5M7U77r0r9TvtwSc1vLQmF8/Q8TdtkAAA0Ef/t/IH7Y7TAtFnH73i1AN/kwHahw8A5dQD9bz44RNevk8XoI++6evHJID74pMfP04k0I/+/Tu1r3/4o+MfSiLwv/BxT4AvIWABs3dABLaEAgvMnsUcqJINRDB6FLzJBQEggAzaRIELnKAHUzK/AnZwhDXJXwFReBMVuu+ELCwa+hoYQ5gcKVQ9qqEOd8jDHvrwh5VADKIQh0jEIhrxiEhMohKXyMQmOvGJUIyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU568pOgDKUoR0nKUprylKhMpR0DAgAh+QQJBQCWACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBhzk5OTk5OTk5OTk5OTo6Ojw8PEpKSlpaWmRkZGhoaGhoaGhoaGlpaWpqam1tbXR0dHt7e4GBgYWFhYqKio2NjY2NjY6Ojo6OjpKSkpeXl5ubm6CgoKmpqbCwsLi4uMDAwMPDw8jIyMzMzM3Nzc7Ozs7Ozs7Ozs7Ozs/Pz9XV1d3d3ezs7PX19f7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AC0JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKaIlAkffGCCiol9oMEFNNLYAYyFzVjjjhe8iCNgHfAo5I9/mSCkkDcSyVeQR/KopFkfdCCllD42pGOTNVb5JFhTdimlQ1jyqOWWXXlpZkNh7jgmmVpFaWaXVqZJI5tfvXnmQkamqQGdXtnpZZxhrsnnVX7CCeiRSQ66VaFTPnTljh84ZIIGEVQaQaKKFsVoB4ImZEIHM2oQqUOUWmoqppkG9WmhJV1g6qv+EeyZ6lBuvllSB7DCiuqsPtVqKEm55sorUau6aBKuwb466rBruZqsqbIyq9azr14g7VrUmmrttWk5m2203JqFbLadhhtWthFsa+5ZH5C7bkvlyjRurru+SxKLLbYY70tGwtqjvSnlK7CxOX2qgQacApwSvgPrqzC7DQv8MJQR5zsxWQxXfDFZFVu8sVgdt/ixWBkPPPJYJTt88lgm03oBAzAz8O/KYD0Q880y09yVCTj3/IDOW/UsdARAY/Wy0D3XW/RTSCO9NFUdNC30vk8fpYHUSVcd1dFYx6y01khd3bXXYD8V9dgwU132UGjDvPZTXGP99dtGjU003U7xLPX+z3hDZbPQ6vZtdtwXLCu4QSYknvjhUynuOONQOS455HlLrjjlTVl+OeZLab4450p5rjboPmmuU9QGpG7AA3OTPjlOHzCg+uwGMDA65bevpAHtvBvQOuk4ddB777kDH9PwvR9g/E8XIN/778sf7zzvDES/kwnT9269Th9kz3vx25/Uvfezgx9+SdiTr/r5OKm/PvvoBxmr4QdF4H7g8H8kvAD8918A/gRJH/nyJxIG9O+A/fMdQprnPXARkCMGQKAE+ae0B2QPgA/MyAEmyMFO2Q95GMzgRTTAQQ4qDyEfsCDtHmA+ES4kgiWcIP0M4qYZujAjH4ghB+92w5VcQIfiEzRAD1nyACBOcIgrMaAREYhElRRxiQdsYkpICEX+CVGKKKki/0KIRZBssIot7OJEcghFLorxIz804hXPeJIIAHGNbDxJBwpQQh7GMSXNo6MVIxDGO2rkc34MpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuMylLnfJy1768pfADKYwh0nMYhrzmMhMpjKXycxmOvOZ0IymNKdJzWpa85rYzKY2t8nNbnrzm+AMZ1wCAgAh+QQJBQCWACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBh0FBQUFBQUFBQUFBQUFBQUFBQUFBQUpKSllZWWZmZm5ubnJycnR0dHR0dHR0dHR0dHR0dHV1dXV1dXZ2dnh4eHx8fH9/f4GBgYSEhIiIiIyMjJCQkJSUlJeXl5mZmZmZmZqampqamp2dnaGhoaenp62trbGxsbOzs7S0tLe3t7u7u7+/v8LCwsXFxcjIyM3NzdLS0tbW1tvb2+Tk5O7u7vX19f7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AC0JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKaoonUnhOCiiy+sWNgKL9YYwgkyCvaCjTbimONfPPIY44987RhkjT4SWdYKJzS5AkQtHlmjkmQx2eSVJwzJUJRSukilWFZieaVDXHb5ZVhiptkQjV16eaZXYabZpJYKtRnCk292JaeYdCbEppR5erUnln0mVKaNhQZ61aBXJorQny8m2ZCRG2SpKFIvMCqpQ5megKdDK1wg6qgXbODopT4x+qlIJ5Dq6gX+q6Ia1KAlvfDqq7IWlWasIW1wq6sh5FrUC8SeZOuvrgrrVqvIksqrsmYx26yom0Ib7bSjVmttldiKeuq2YXV7AbhqhYCttuSONe0G6a6FLLvtrkTsvDtJm228Ks2rb7E6vbDCCt/iG9K++gqMFsH7GmwWwgUrTBbD9Do8FsT8ShwWxQFbjBXEGj9McMdlNUzUCb6W+izIW50gwcosr4wuylZd0PLMEgQLs1Yy0zyzzTdbpbLONPd8FdA68yx0VC8QrfPRU62gdNBMR/Xz0yxHHZXTVFdt9VNJZ73y1lB5XTPYT039NNlQ5ay00WgzpXbRbUcVAtAvx60UyaJucLL+3Xz37fffgAcu+OCBzp1AAhfUTfhPGyDg+OOOs734Ty8kAPnlCEgwuVCWY3655pv7JIHnnkseuk0vkE56xqe7dIHqnsPb+k2we57A7DjV7jnutOt+Oe82+Q757cDTNLrwCIxbPElMZnwC8gjsvTxGFxwwwPXXSyA98qBP31EI2IePPfEHPe87695DdIH47A+AQEIh6K54+hFt0H777z+qegLo0+/Q/feT3UFC0DnHJWB+/lMfAO83qf4l8CELvB8CH9iRF0Swfd2joElOcEH25U+DJgFfB8P3QRCShIMjxF4JTSgSC6bwespjIUkQ8MIBSE+GGxHhCFeIw5BYb4SqE+zhRVx4wRgKcSQrKOIRUZKA+x0giEvUyAsad73MQTGKWMyiFrfIxS568YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuDxaQAAAIfkECQUAJQAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYdRUVFRUVFRUVFRUVFRUVFUVFRZWVlhYWFpaWlvb29ycnJ0dHR1dXV1dXV3d3eAgICKioqPj4+VlZWZmZmbm5uioqKqqqqwsLC3t7e/v7/FxcXNzc3c3Nze3t7r6+vx8fH7+/v+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gBLCBxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqKJ1G1xAAQUXZLDiYS6+aCMFG8w4WI032pijjn/x2KONQP415JAyFmnWBhtk8ONDGxzZ4wVKktVkBlhmCaWUPVYp1pVZhulQlFy+SKWXYIWpppMOlWkmml+BuSaWDgl5JJxxzilmQ2RKeSaeXMk555ZH/gnoVoKuGZGdT46ZwQWNHmqUnlpKxKREFESg6aaGSjoUpWyStMGmpGpKgaeTzhlpSKW2eiqq/kQJelKmrZaaJKxu1eoqrm6NqmupvLaVwa+lrhpsWcMSu6mxx47lq7IRNLsWtBG8Ki1aF0DL7LVi0aprp9ya5W2p4IZ7EpPbzhQlqZCauxK68Lq7Frz0ypsWvfHauyS+6Oq7L7+X+usswOkKjCjABluJcMID18vwkkhdIPGtD4M1agMYZ2xtxVxdkPHHGD9QMMdQZQDyyQ2QrNUDKIP8gMpXedwyyCPDnBTLM3+8sc1Q5ewyz1P5DDLQUgmd8ctEQ4Wz0DsnvZTMQtfs9FBGIz21Uyb7fHVUUJ8s8tZRXQxy02A/JXGMZaet9tpst+3223Af26KZUse9k8kG5K33/td2E/WA3oDrTXbfO/0d+OGDE37TBYc3bgDFiueEgOOHpxy5ToxTfjjkl9MUgeaId45TA6AHbrXoNJFe+t6o22T46gYk3jpLFMCed7mzt7SB7QjkLhLeAgSPgOwlvA468b5TtAECwTffvAG4C6S65pYnz9EGzmff/OkFLU+99R1hr/34shsPeLTgc8T8+OOnG6XqDeCYPkcXsM9+7/Oz1ID97OfPEv/si57/QCI+AGYPfQM0SQEN2DwEJrAkDMwe8h64kQg6T4AU5MgDLBi8DCqQg9zzYEg2yEADiPAk6wMg504YkhSOzwB1Y2FGaje+EMqwJBmgQMgweMMe+vCHhEAMohCHSMQiGvGISEyiEpfIxCY68YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjXCMoxznSMc62vGOeMyjHvfIxz768Y+ADKQgB0nIQhrykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTk4tIAAh+QQJBQAvACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBhz09PT09PT09PT09PT09PT8/P0REREpKSk5OTlBQUFBQUFFRUVFRUVFRUVFRUVFRUVRUVF9fX25ubnp6en9/f4GBgYGBgYGBgYKCgoODg4eHh5CQkJmZmaGhoaurq7CwsLGxsbW1tby8vMXFxc3Nzdra2uXl5fLy8vv7+/7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AF8IHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKao4nUkgACCCCSseJgILtboooyE0WijjTgG1uKOO/b4F5BACukXkTvGaCRZJIjgpJNKOoSkjSIsOdaTWML40JQ1VmklWE1m+eSWXIIQ5ZddiYnlmQrpOCWaYKmJJZlIsgmnVnKOSWeSd36Vp5MRuXnjRHb2WdSfhYJEAgeMMmqmoUjleRIIjVbKAQiQGhVmlpNaaimmmRa1aaIfLeqppaHGdaqnoKba1qr+nrrqFqyoysoWrZXaeiuujOq6FqW4eulrWrwOu5YItJJqrFimeqrsslc2+ii01FZr7bXYZqvtttx26+23b5HwLLhXgYDBueduICy5WZGwAbrwYsABu1rFa+8G9F7Fgb32tppvVCTwy++/U+0rcLzrEtzUwfbOq/BTDMfr8MMLR4zuxBQvZbDFCWeMVMAWY+CxUxsf7O/ISkWML8pNgcwvxiwzZS686sY8lbg256zzzjz37PPPQJso7rhB98SBBEgnDXPRPpGQ9NNJE820TCJAbbUEUk/90tVXa70TBlxbvbTXM4XdNdk2gWC21VkXLQIGDQggNwQri3T02k+fjLb+QE7L7bffBYy90d14I6032iIU8Pfic4ekduFId0w2CYozzjgEikKO9N4FxW255SJ/BHbhoXP+Agefp+7QvkjL+2zVhbfds+epMy74QBw0oPvuupeOEOFhH+41CbV/3oBCEvCufAMQSD7QBmbfrjUIxX+eUPLLL6/s41Y7Tzbq1TP+e/bZS8AQshtswIHsQIMf/t8IkU++9KY3JML7fx9vUO7yL495/RapHP7MZxDs9U95ALSIBPAnt8NB4IDL814CF3I//OnPIBCM4AQpggH8Oe+BGdwd+zYokAVW73ZwC6HuSFgRE36uAMITCAhU2AACsnAiIIAA4wrgu4SAMIOzMbyhlNIVxIKIIIQ9FOJJ+Nc/GypRJTOUXxKfmJIU8k4CRaSiSdw0Qi168YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuMylLnfJy1768pcKCwgAIfkECQUAkgAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYdBQUFBQUFBQUFBQUFBQUFBQUFERERMTExUVFRYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhZWVlZWVlZWVlZWVlZWVldXV1jY2NqampycnJ6enqBgYGHh4eLi4uNjY2NjY2Ojo6Ojo6Ojo6Pj4+RkZGVlZWcnJynp6eurq6wsLCxsbGysrKysrKzs7O1tbW5ubm9vb3Dw8PKysrNzc3Ozs7Ozs7f39/p6enu7u7y8vL+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gAlCRxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqCJ2N9ywomIuxCijiy8OdoOMOLogQ42C5ZgjjTz2daOPOAbpF5E5GnlWi0xGhGSRSo7F5JRANvSkjFFKSWWTDslwpQtZhrXllBBdWWWYXI1JpkNDEokmWGpyyaaPO775VZwtSjSkDGfauRWeKcmAwqA6+plUnCfdMOiii/ZpaFBjJsropCg8ilSeKVE6KZiWwiWopow62ilaoG46qlulMsrpqWuluuiq/qym5YKrKNQZa1qKunorW7OWCuuupIL6K7Bo9aoqsW8NKSqyzDbr7LPQRivttNRWa+212DZ34wjcjjBstli50O24I9gK7lUokEvut+dCJa665C7bLlPwqlvpvFLdUK+6+Er17r7dytuvUf8CPILAAxNVMMAIJyyUvgZz6/BTEY9w78RMLQxvwxgHle6+7HZ8lMbchizyUdt2a/LJLLfs8sswxyzzzDTXbHO+KGyg8wYocHxzTSPsLDTPPwPVwdBDj1B0T0cjnfTSOrngtNM+Q51S01MLrbTVNmXtNNcKudBBBRVocDBJN3iNNNgHoYDAAHDHPUAF5nqUttpCs12Q/gZy9w33xXbjnbfeAlXg9+FbfyS4zh0QLkkHh0de90Y5C76yzTdEHnkFD/XqQsOLOw655ocLfMPYZKdewcoy4F21zG+T7nfibatuewUbLNR61q/LLPvhGiSEwu23575Q5UIDrnfmv/fN+UE3EE887Qkp6zhBzDcf9/MGoS697ddXpL3cjRsU/fe3Ux++Q4aPP4DyAg2P/u3rS+SC+wMgNML89NcfUfvNU59AvMc/svkvIjLQHvcMsr8Cpu6ATvrdAg3iAgeSLXgQhIgMYgc8hliwAvDLIEOG1zcNXE4SDSygCCvipdc58IQr3Mj50BfCGI5EA9+DoQ07IjXb1XCHjSjpHRCHSMQiGvGISEyiEpfIxCY68YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjXCMoxznSMc62vGOeMyjHvfIxz768Y+ADKQgB0nIQhrykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTnryk6AMpShHSceAAAAh+QQJBQCSACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBhzU1NTU1NTU1NTU1NTU1NTU1NTU1NTc3Nz4+PkhISE9PT1BQUFBQUFBQUFBQUFBQUFBQUFFRUVFRUVJSUlVVVVxcXGNjY2dnZ2hoaGhoaGhoaGhoaGlpaWlpaWlpaWlpaWlpaWpqam5ubnJycnZ2dnp6en5+foKCgoaGhomJiYyMjI2NjY2NjY6Ojo+Pj5OTk5qamqamprKysrq6ur29vb6+vsHBwcfHx87OztTU1Nvb2+Pj4+zs7Pv7+/7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+ACUJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKao4oos4oRDDTDC2GJhMdZYw4yC2WgjjoDpWCMOPPb1oo8xBnkWDkhKRGSNRpKF5JNJPjTkkk2KBSWUES0pY5VgXYnlQ1py2aWXT2bpI5BiekVmmWb+mOZXa0YpEZtvwrlmSi/KIMONdSZFZkp6Bhpon0hdCaigiBI6F6KM8qmoWzgwyuijb9UgKaJoUrrWpZhqyhangmbqKVqWgiqDqKOeZaoMqa5V6qX+qLZq1quIOiprWpF2eiukse7q66/ABivssMQWa+yxyCar7HCRwgDDqct2hQMMLVRrLQzRaoWDtdxa22u2UHUrLrbgUiWDuOLaWu5T6I67blTbttvtu1DFK6+19D5l770t5Msuvy2Q6+9Blqrb07n8GuxvCxIM4LDDEgjcE78SDwxDww9nPIAECt+0r7jfrtuCxiQ7zGpP07o78EAwlOxyxx7L4Cy0Kw/ksssS1HyUBze7XLHOQPWMM9BD1SC0y0QLNfLRJMOc9E0nME3yyU9PLLXGVFe9kwxXZ6z1T11D/LVPGF/dL001UBuw0zob3TXaJ5Ag99wnhKwzCVf/3BL+DHP3PXfWVVfAtAczyeD34SSwvTLePevdUtyI933C2ALVUHbGHtitkuGR+w341+ee0MLnMUHe+dxnUy6RzGubdPrhqkNUgwcS1G67BKmH9LrfsTvE8O3AV6D5Raa/PnnvC/0O/PLDV8T37iSQjvxAMixvvQQVhIQD9CRMr9D11+fO0IvNS/L86Y57Xz341jcEgwfwxy8+Qi2cPr/3A9HO/vLSD0RC/ACEX/8GUj/EpQ9/+7Ne+nAQwAZ64ICVK6DcWlC+3iVwefcTyP8cGEDF4S8iFwReBt/HwQZ+kCMVCKHtpFdCB3rwhA05gQpr1ysGtjCAGYRhlmZIuIPI4IbsATyeDi+ivwt27IdAjF/3hoiREOZwdkmEnxCZWBEcJHCKB4ki/CBIRYcUcXlc3GASK9hFhdTgBCms3QMdAkUgYrGMK2lBEuFYuhuSkY4hIWED34hHl8DgBPAjQQte2MdCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuMylLnfJy1768pfADKYwh0nMYhrzmMhMpjKXycxmOvOZ0IymNKdJzWpa85rYzKY2t8nNbnrzm+AMpzjHSc5ymvOc6PxOQAAAIfkECQUANQAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYdBQUFBQUFBQUFBQUFBQUFCQkJFRUVMTExPT09QUFBQUFBQUFBRUVFRUVFRUVFUVFRcXFxkZGRoaGhoaGhoaGhoaGhoaGhpaWlpaWltbW1xcXF6enqDg4OMjIySkpKXl5eZmZmampqampqbm5udnZ2ioqKtra21tbW9vb3Dw8PIyMjOzs7R0dHd3d3j4+Pq6ur4+Pj+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gBrCBxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLOa0wosrtGgYjDTGKKNgNdJ4I2A56rijXz36+ONeQcI4JF9FvngkkUUuyWSQTj5ZY5RITknllRUqiaVeK5zg5Zc2bkkXCl+WeUKYYsLVpZllpikXm2y6CRecZsrp1pp0emlnW3jmuWdbeX75J1uBnoDCoIT6iehafba5KKBlHvropJRWaumlmGaq6aacdurpp6CKuQIKKKAZ6lYniKDqqpKemtWq/rCqeoKrWMVq66y0UrWCrbbmShWvt/oqFbC9CgsVsbEaeyyyqyr7FLOyOuvUrsxKa9AKHDQgwLYNcGDqTsziaq1AEGxr7rkYAIXsuAKtoO258ArQwLc5pRprq9a6G+++DQQ1aqnsDvTuvvFCEHBRJxCsML4H/1Suwvtq0LBQECs8MVAoVEwwvRfflLDG8XLccU0ZgwyvyCPTZDK8Kfc0sMnptgzuytuKOxOZhsos0MsV90uTCBwELbQIMn8MMsMuYSv00kGjPK4IINsME9NUc1A0z+fO+3PVTBMtswg8Q+D1TEpzvbTOA5GJtEwnmM201Gg3RKrTHAHt9tBxOyQC/gQN9N23BnRjZPfdHIydN0IrYOD34n13MNLgd8N9+EAr8M044xKHhALhTU+OkOWXM251SJw77rlBGoSu+toabX534DK7q3romS+0qwYY5M6B5AZBTjXvk4M9e+gMiZD78ccDzlDbVbPueerDX45yB8hXn3vgqQYtAvCnKx49484bb331tZ+ekfff+8164uNbb7j5FmWbvt8cU9++9fBndML8fRuM0P3jc17+HgK6772PIAC0HvcG2JD9pc9//0sg8g7IwIjIL3oClCDyFlhBhlwwdBBYIO40iAHYdTAhJyig38qXEPFJkIUnpEjbcqcBEZiQhByMoUhOIMHR6bAloTy8nw9/2JIVjLB6OSRiSailKgEq8YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjXCMoxznSMc62vGOeMyjHvfIxz768Y+ADKQgB0nIQhrykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTnryk6AMpShHScpSmvKUqEylKlfJyla68pWwjKUsNRIQACH5BAkFADcAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHUVFRUVFRUVFRUVFRUVFRU1NTVlZWWFhYWFhYWFhYWFhYWFhYWVlZW1tbYGBgaGhocHBwc3NzdHR0dHR0dHR0dHR0dXV1dXV1dXV1dXV1dnZ2eXl5fHx8goKCiIiIj4+PlZWVmJiYmZmZmZmZmpqampqam5ubnZ2do6OjqKiora2tsbGxt7e3wMDAx8fHzMzM1NTU5eXl7u7u9vb2/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AbwgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiizq9MILLSL24owwxjgYjTTaGBiOOOr4F485+tgXkDMKOSSRNRqpF5JJKpkXkk7yBWSUR75I5ZVYZrlVCyt0uUKTWs7l5ZgrhEkXl2R22YKZcaGZZpdgsqnWm2OuKWdbdI55J555drknW32uYOefab3QJ6FsuUnmoIimpaiajbb1ApotxBnppZhmqummnHbq6aeghirqqKSWaupMhpagagllnprVCv6rxlqCpa4+1YKsstJaK1O44rqrVLf2Gquuvx4Fq7CrMlrsUsjG2uqyTB3brLLQIhVss8RWO1Szqmpb0AodPMDAAx9Qu9O1vWbragkCtOuuu8/2JG2u3gqEwbv4ttsBUKmuGq+29+ab7771GvWBwAiXUHBRCDe88LYNI/zvwzw9ELHAGFAM1MUIa/wTxwJ77BPI+YrcEwMku/uAyTx1kHK7CrPs4ssC4GSlzDcEDDLBM936wc8fzCozySvTVALQSAfN8gscM1DT0UkjHbPJOg9c0wpRR23uwy90gHK7DHygrkpZZ41zTy+UHfXZPGGtNtJjs522uAwwgMHUIrn99v7PcePsdd2A1/3AxB2lvTffbC+EQeCM1433R4f/nLhCfzfO+NYaQf024ZPfsILllhcd0uGdI0Q36Iw/ntALmnNukOFll37QC6hbnvFCXWOg++53O6Q50KrLfkMJtVu+0Aq8J4/BBw95ibnsxBfPuEIvKK988MJPFL30gFNuvfLPZ+/Q59wLnlAL3yvPvPgXlV/3+geVkL7y7F9UufS6zq983/W/fnrtPDuI/pLHv/59S3qiQ0gHBri7AhqQICv4H+NupxD5MZCCD5xI1xr3AOwVpHoM9GAGm5csiHyAgSN0yQLn57oUlmSF1muhC0uCvOSJbYYxmVSlcMjDHvrwh4ZADKIQh0jEIhrxiEhMohKXyMQmOvGJUIyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU56ck8BAQAh+QQJBQCSACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBhzo6Ojk5OTo6Ojw8PEFBQUlJSU9PT1BQUFFRUVFRUVFRUVJSUlVVVV5eXmZmZmhoaGhoaGhoaGlpaWlpaWlpaWlpaW1tbXV1dXx8fICAgIGBgYGBgYGBgYGBgYKCgoKCgoKCgoODg4WFhYiIiIuLi5GRkZaWlpubm6GhoaampqysrK+vr7GxsbKysrKysrW1tbi4uLy8vL29vcDAwMXFxcvLy8zMzNLS0t/f3/r6+v7+/v7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+ACUJHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKao4oostlicDTDC6GJhMdY4o2A15njjXznquGNfPdr4I19BxjgkkEUeSWSQSiIpZJNIQinllFRyZYMMWMpgQ5V3ZemlDFzS9aWXW4YJ15VjZmkmXGmSuaZbbWZZ5ptrxYnlnHSu5MIHH5TgQk5otolnnibZQEEAiCYaAAU42UloSh8oKimiJ9gU6JeDPirSoZNO+oGlY2aqKUiRdtpppZYaOWpJNphqagL+q4LFqauexuoVra/aypUMuJqq61Yn9Nrpn79iFaywkhJbrFUuICspmMta1aqziUaLVQLUBsCAtVeVkC2q3FaFLbLbhmsVr8iKai5Ux+KqbE8yuCCvC+quq5AN43aaQL03zevvu/Y65MKsiFIAME///hvwRKoGlXDCC0v7sMIRUxXvxPPyW3FSF2NM78ZSdYyxxiAbZYPH8pYsFcoHq0yQCyeUcELLCGPsMkIfJKDzzgl86vDDNxvkAgM8F80AtD+JTHLFJxTttM5IB30Uvk8/LXVSFFT99AVXGyWD1lV3XVTOYDsNrthAZV120T6jnfbabLsdlNpw69y23D2RXXf+AmfjvZMLe+u8tN8yEV03o4T7BHjdg6MkwwmQnxA14XqD3TdMj0eu+eR4V/705S/BrPnonMs99NMUlO6SDaO3Djree1Ig+weqv+R66zQnntPtrev+E+u8a+67RI/z+cEJjVsEfPCQD/+QDLJHH/3dITEfufMNnSD99rInP5H1zWOv0MDccz9S5sF777eh5XNPvUfWi69QCe2X33jHEAUvv0L1l/96QScwnvFKMDj0Ra52+2Nf/6T3voLYQIAQ/EDuDNKw/SUEegtk4EIiGEEEWlAiCswgBRo4kAByEIIf5IgIo1cChZwwghNMIUQusMLUXfCFEZRhRsgnQoWYEIfbxtNhRj4gwgn+EIgkFGJEMvg/gRwRiEocYv2aKBAZIJFPLYwiRlxAQwYO7oq00+JGruQ9KwIxi2J0SQmAqL40wu+FbXSjR1gnwBJ4UI54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuMylLnfJy1768pfADKYwh0nMYhrzmMhMpjKXycxmOvOZ0IymNKdJzWpa85rYzKY2t8lNqQQEACH5BAkFADUAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHREREREREQ0NDSUlJUlJSV1dXWFhYWVlZWVlZW1tbYmJibm5uc3NzdHR0dHR0dXV1dXV1dXV1eHh4fX19gICAgYGBgYGBgoKCgoKCg4ODhoaGjIyMk5OTnJycoqKiqKiora2tsLCwsbGxs7Oztra2urq6vr6+xcXFysrKzMzM1tbW39/f7Ozs8fHx9vb2/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AawgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmqOOOPPboo3wpBJnCj3QJaeSQRL51pJFJKrmkkE229SSUUao1JZVVonVlkFmyZMIIJuy0ZZcodYCAAGiiuUAHOI1JJkkpEJDmnGgigGRNU75J0gh09onmnTQtqedIJvhpKKCDanWmoX0ukChXfDLqZ5iPZrWApH5iUGlWmPpJwKZXpdCpn6BaJeqodJZqFaqpqkoVq/5pIuAqVRDAKsAGs05VKKyI5urUpahq6utUi2Iq67BUySnpsUClYIIJvSKrEAaM4grUlyNkm2200iLUwQJyErCmUNhqqy2l3U6VgrnsjsBtuku12y68UsnLLr1QrWuvtvhCtS+//Tr1b7YBO6Wvve/262zCOpXLLroFCzTCAghUXDEEEPvk8LYRD5QCxRaHjAAEQzkLbccei6wyAo6ifBTIK4dMsstEmRmzyiPQPBTMN1vcss4/mdDzygwDTZPNQ4ecs9E9IZ10xUszvZPTT0ctdU4jPB1y0VfDpLXFXfO0wddshr2T1j8Hiu3JXWedNNcpdSD33B1YzbTbN8NdJv7dfJs9tsrW1sT34GWHPcLcGc9kAuF86222S4zzbffjN0XeN+UOfVm34xdZTjfmDHUAweikY1yS53ODnlAKpbcOQeAhLe4550yz7nrrsIOEuuoIYXC764l3lILltBttwu+3R8QlRLIPXrzRGyDvOtfDY2A9BhtMrtDhc2vPu0DSu+49QR1cbz7233cUfuuFe3v++bmnb9H6pbdvkAnvv2+//BTRT/r4NShf/s7HP4yIzn8LGeD7AFjAhvhvfwRJgQLPB8EGPuSA4VsI/iZ4vQpa0CEY/B3DJMhB63nwgw0JYeu4VkLrBQ+FEAkhBhhIvhbC0CUb4CANbxi7CZ6Qh5lwyuECgQiTxeUwe0RMohKXyMQmOvGJUIyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU568pOgDKUoR0nKUprylKhMpSpXycoJBQQAIfkECQUANQAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYdSUlJSUlJSUlJVVVVYWFhYWFhZWVlZWVlaWlpfX19tbW1ycnJ0dHR0dHR0dHR0dHR0dHR1dXV1dXV1dXV4eHiCgoKKioqNjY2NjY2Ojo6Ojo6Ojo6Ojo6QkJCUlJSZmZmhoaGqqqqxsbG1tbW6urq8vLy9vb2/v7/CwsLHx8fOzs7U1NTi4uLz8/P4+Pj+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gBrCBxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogklmjiiSimqOKKLLbo4oswxijjjDTWaOONOOao44489ujjj0CupMKQRAYZF5FIqmCkW0kmuSRbTSL55FpRFjllWlUOeSWWWW55kgoVHADAmAdsoORNXXpZkgRjtunmBjhVqSZJYrppJwAKxCnlnCMpcOefEvDp1QZ/FvqBoFwVqiiiWn2gaKEiMIoVm4/eWYGkV1X6Z56YVqXpnQd06umnbnIqqlSUkgoAnKdKJYKq/mOe0OpUsIY6q6uqynqrVBV8yuquvFZ6qFBaAvvQCXXaqcCZP6lwwrPQMmvsQidsUIEEFXwgrU/OQuvtttNC5e24uoYbFbnjgmvuUuiOu6647UL77lPxyjtvU/WeoO69R9XLr1Pdkrvvuip8oMABCEswbFABR/vvQB8gLPHEkQ5V7MMChTnxxmVifNQGHIe8sMcMh2wyyUNpbPLGv6Ls08ohm+oyTyrAHPLMPiFr88YD4zxTzTtP7HNPQQs99E4SFH3ApUfrJILSPTcdk8owM21Tt1FjfDDMgdp0wgdgh12uz0mbbDVNIoSt9gcVDy1C2RJLMPZMX6+t9tw+O5u1/kt22y11T3X3Hfbef7uUtuBiF/6QlSYdjvgHeCteULUSVF75yCIFjnjkkgv0geWgV845RwU/jnnnA20Q+uqjb+R4322jPtDbq69e0utqxy67QLXXfvpHuLO9e0G09x76sRskv4EIhAukwuHMD1+Q6saHnnW1ymevu/QUXVs96FFjn332v3MPEfXfV96zCuO3v0Hr5i/0efqVLySC++3HT5EK9GO7EP7ta57+COK977WOfQDMHvwGeBD+fa9lDUyg9hgokRNUD4IIkaDyFkhBg4DJdw7RYPIE2MGBFMxay4PI/SRYvhKKRIMkdGFGEshBGXrkA+6LoQ03cgIR+FCHjTsMohCHSMQiGvGISEyiEpfIxCY68YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa8YxoTKMa18jGNrrxjXCMoxznSMc62vGOeMyjHvfIxz768Y+ADKQgB0nIQhrykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTnryk6AMpShHeauAAAAh+QQJBQAvACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBh1lZWVJSUlpaWmNjY2dnZ2lpaWlpaW5ubn19fYGBgYGBgYKCgoKCgoKCgoSEhIiIiI2NjZGRkZWVlZiYmJmZmZmZmZmZmZmZmZqampubm56enqKioqioqK6urrKysri4uLu7u729vb+/v8PDw8nJyc3NzdDQ0NnZ2d7e3uXl5fj4+P7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AF8IHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaOKJKKao4oosfuQBBAxA4EGLhHkAQAA45hgAAzQCdoCOQOI4Y497GRDkkRgQmRcDRzYpgpJ2idDklFDWZeSURw5ZZVxYNmnAlnFJ2eWRYMKFwZhklunWmWgCqaZbHrTp5ptslSCnjnS2dSeOSea5Fpty+qmnnDwKupadaAJgaFtxdqnoom2VcCWSkMLlAZM5AgBBpZxm96IBBhwAwZOdMnpjkAaUUKpaEHTZ56r+ZQGKpZawhoUomrWONemYhebq1a1t+vqVrGjSKmxWmMr56rHI7rkss1e1euez0FZF7JjGVlvVntpqleyYm3ab1amOiqtVo12Sai5W6B4JgLrrNhtkuEGVIMK9Iqgab0UeYOBvtj7hKzC8+2I1sMD6FmzwwfgqjJW9DN+bsMNTRYzvxBRHBXHEGGcMlcUEe/wxxyJXFXHJC5WAAQMsY9CxTxvni3JCJTAA6s2gMvDyzEh5gPPPoO7MM1GSAg300EsdYDTQvSJdlM9LAw2w0z/ZHPXP9FIt1NVAH6A1UVwf/fXWYd/s9dhBKV22AU2j3RMGaxswtds5rX023T9BzXX+yHjvBPfVc7/kweCE902Q3lLfVALhjHsg9NgeqM124C4t3jjjhgt1+eWZA7V5453D/Dnjj4cuk+WjO266Qy+yzIDLJqE++uoMieD67TGalPrgtCt0Ke64lyRC6qWvDjzwWYeUeu8JwXg87pRrNHzjfDMv0PPIQ9QvBqpHBHHxtP+O/e2s+2u+v+Bbr/34wTN0/vuwq6+R+Oy3fRD88MuvUc31s5wy/u+Lnv4a0r/XLWR7ADTfADFCP+y5L4HnWyBGnIe96EHwfOmTYPOwR637XdBfGmQg8tKHQAiGMCOoy6BAPli9E+rugi4UXAJjCBOVBZCGMymBDnHIwx768IeHQAyiEIdIxCIa8YhITKISl8jEJjrxiVCMohSnSMUqWvGKWMyiFrfIxS568YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKTFAoIACH5BAkFAC0AIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHZWVlXl5eZmZmb29vdHR0dXV1d3d3fn5+h4eHjIyMjY2NjY2NjY2Njo6OkJCQlZWVmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmpqampqam5ubn5+fp6enr6+vs7OzuLi4vLy8wcHBxcXFy8vLzc3Nzs7O0dHR1dXV3t7e7Ozs+/v7/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AWwgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZo4okopqjiiiyCBMKLLRqWQQA01iiABzECBkKNPNqYY18z9ihkACX8mNeOQw5pJF5JJtnAknV50GSSUNI1ZZIZVCnXlUMeoCVcJXCp5JduhSlmj2S+dSaPAqTp1po1PukmWwfAGQAIc7Jl5pp5tlXnmXj2ydaZcgrKlgBXZmmoW0EOGeiib3nwpwANFAnppdl5kMGmj2LaVgNDKuppWiAgmqQAlo5aFpJXpqqqWP6mXtnmq2I1yiWOtIIF56y5drXnma72mpWUcHYqLFbErmnssVYlCyyzWv0qJrRbxcqll9QOq2y2WhUgJrbcZmXtkAWEy9WfXZrblQfe8ljAsj6VIG+w6k70Ir0/zasvvvVWta++/W71L8ABYzXwvAVfdTDCCVu1ML8NO/VwxP4eTLHDA1/MEAgedAxxTwRrnBC7BZRsMq4iP3WAySyXDG7KS63ccssvw3xUAzPnLKrNRZWQ8888H0Xyzy3DG7RPOBPd8s5HAyWz0iYX2jRQSUNdMtNT95SB1SdnHZTPXBfwsdc3Pa201GSDzHXaQoFN9NgtldCxByDAHXQJZked0/7cfBvtdQkZHHBAAxnYzRLfiPvNtk4cI8634YvP5LjjkQM1OeKV/3Q535lHpCmnKG0+d+cOZdDA6ag3gPJIjV+uOOkCpS474SaJDvtCs8++ekhyT367QiDkPvtJif+ukPC6Q1TCvRTJazzuyMvuEOCbVv/68xKVEL30DH1e/ffYb6T99qhv/P35GewefkXkn461QeijD/n6CZlO/tjUx1+9+vRLRP77BfGe/jbVv4t4YHtwE+AAC2hA5NlNgfpj4EUAJzv+ISR/A7SgBCPiPIkMsHobdAkG0Xe9EIpkhNYzIUxA8D0PzE+FMIyhDGdIwxra8IY4zKEOd8jDHvrwh3hADKIQh0jEIhrxiEhMohKXyMQmOvGJUIyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSUnqBAQAIfkECQUAMAAh/h9HZW5lcmF0ZWQgYnkgb25saW5lR0lGdG9vbHMuY29tACwAAAAAuQEjAYc1NTU1NTU1NTU2NjY5OTlHR0dhYWFra2twcHB0dHR0dHR0dHR1dXV2dnZ7e3uEhISLi4uNjY2NjY2NjY2NjY2NjY2NjY2Ojo6QkJCRkZGVlZWcnJyjo6Opqamtra2wsLCxsbGxsbGxsbGysrKysrK4uLjCwsLIyMjOzs7X19fj4+Pu7u7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8I/gBhCBxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bNmzhz6tzJs6fPn0CDCh1KtKjRo0iTKl3KtKnTp1CjSp1KtarVq1izat3KtavXr2DDih1LtqzZs2jTql3Ltq3bt3Djyp1Lt67du3jz6t3Lt6/fv4ADCx5MuLDhw4gTK17MuLHjx5AjS55MubLly5gza97MubPnz6BDix5NurTp06hTq17NurXr17Bjy55Nu7bt27hz697Nu7fv38CDCx9OvLjx48iTK1/OvLnz59CjS59Ovbr169iza9/Ovbv37+DD/osfT768+fPo06tfz769+/fw48ufT7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26OGHIIYo4ogkgocCCSSgUGJjKDBQQAAwBkCAASSsiNgFBMSoI4wH2FjYATsGGUABKvoIGJBCBkmAkX+RkGSSPTJ5FgoPGFDAlQds0NCLTwpZpJRjHXDlmGRqmZAJXSb5AJhioUDmm2OuidAFaQpZAJthwalnARcgZECdQuL5lZh7wvklQVwCqqOgXblZKJxRFpSoojAyytUDj+p5qEAPUBrjnZZqZWWmb5pJkJOeBsBAqFqRCmef/gbl6GmNrGLl6puwFkQnpaDWetWtZSI0aZom+IoVocDSapCbgOZqbFUbAHulQsw+SYCpz1olrbNzyrpjpNleRcKtBjxEwgUHHPCAsuFmdYGrm7bL1ruFGhCvvGyhgCyZ3OIL14kXXLBBsf4WHB4KCBtMFwkMpOvwA/cqjNYDDlecbr8Sm9WwxRavmjFa6HLMMbYftynyyRGXzFXIJ1uMscpctXwyzGLJLDLNYOlrs8U4g7Uzzz179bPDHge98tBZGi300Ep7RcLP7DatFcsnkyy1Vhu0HPXVXG2w8QEMbM31aQiXnfLYWJltNtpeqa0221y5vTbcWsldNt112302/t5P6b03307ZDXjecw/+0N2Gp30BA4wzbnXiT3nd+ORhQx6V5JRPLrblR5mQ+ed/cw7UA59n/rLoQrVYeuaoJ8Xw6pQT3HpRr8PeuOyzD1W77QzgnntQqvPOQOi/40Q673IWr7vwvisP1OKwn+58T8d/Lj1MhU9vEOaNr5sTCiaELz7xuZOwwfnN0wS++OyTr/1N7Mef/vs9rS9/+O7TL9P98esfFP/s899E7JcSAOJPgBAxQcAWKLCT2O9+CDQXAyeYv4oYMIINOdcEKWgS/mGwIRsMoQPb90GGaDCEDKxgCUuCwg1u7iAoimGKVgiSFk7whQQ5kQxjOD8aWsSG8AzE4UB2uEMV+jAhGwBiwHo4RCLu8IgbUaASM+hEGRoRigZRohBhoMMqxhCLGrHh45blRRmCMSMoQOEYyVhGEjDxjBBBQRIDNkNztfGKcIxiG/MYkzLikY8bqSIgZ9LFOg7ykIhMpCIXychGOvKRkIykJCdJyUpa8pKYzKQmN8nJTnryk6AMpShHScpSmvKUqEylKlfJyla68pWwjKUsZ0nLWtrylrjMpS53ycte+vKXwAymMIdJzGIa85jITKYyl8nMZjrzmdCMpjSnSc1qWvOa2MymNrfJzW5685vgDKc4x0nOcprznOhMpzrXWcuAAAAh+QQJBQA1ACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBh0FBQUFBQUFBQUJCQkREREdHR1hYWGlpaXR0dHx8fICAgIGBgYGBgYKCgoKCgoKCgoWFhYqKipKSkpeXl5mZmZmZmZmZmZmZmZmZmZqampqampubm6CgoKioqK2trbCwsLGxsbGxsbKysrKysrKysrOzs7W1tbi4uLy8vMHBwcjIyM/Pz9vb2/X19fv7+/7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AGsIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaCJTIyAQwIoBGKDBiYihYACLNK74IoyDaVDjjgEcgGNgI/DIo48/9rWCkELeWKRZIzhwwAEIaLBCQw4gKeSSZY1gwJZcbokAQ1YKOQKWYjnQ5ZlbopBQkGHuSCSZXpmJJppqHqRjmzvC6ZWWc86JUJV41qhnV332qSRBEgQq6KBa8VkomgexqWiLjGol56NnTmnQpDZWmtUBmNJ50IyTauqpVaCG2mWdBUmK55v+p1aFgKpdmloQoG0aECtWGtDKpUIH4MnqrlSt4KsBXyqkIpK6EovVrLQOixAKwdboorNa0eoARChooMEItmJ7lYyYwipuW8YWKsG5c/V6JgLSsgvXCiigEK68+Oarr0QpPnmAA2Pu2xYKCPhrMAL3CkzWCAY3/GTACmfp8MQJR+xVwRM3vK3FYjGcscPxcryVBB87fKjIXJXs8MYod6Wyxi1f/LK/LMeslQYzP3myzVetkPMBFfNMlZMvryv0Vj6/fHRXSWeM8NJxTlwz1FytoIEDWEtJ9dZcd+3112CHLfbYZJdt9tkVdYu1AxqEjHZSK0iw9tw7v33UCnPnjXX+0HYHpbfeRvdtVJN/5+224D4VDjjiRSmuN+ND4e343JALJfnkWFcuFOZrax7U1ZhD7HnimI8eFOGKi256T6jrrfrqPVmdd900rWD77bAXVC/fMt3uO++52/T778H/NLzvxcd+PPLJ67Q88803BLxHz9sePUMjeKv94R9Vf31CVmsvPu3dL/89QuGPL/5J5p9vkPrqvy4S9O4TlD782tcvU/b4iz+9QCsYgQDBpb+N8K9/3vrfABcovwLyC4Hamx4DGejAi3QLguSz3wQpWMGKYLCBrdrgAjtYkQPiT4IiHOD/SGgQE44PhCFMIQFZOBEXJvAhMhTgCmloEBSoMCKoOYQhD0MSwBRyb4gh8aEIkciSInKQiU30ob2gSMUqWvGKWMyiFrfIxS568YtgDKMYx0jGMprxjGhMoxrXyMY2uvGNcIyjHOdIxzra8Y54zKMe98jHPvrxj4AMpCAHSchCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWxAoIACH5BAkFADYAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHUVFRUVFRUVFRUVFRUlJSVVVVV1dXY2NjcnJyfn5+ioqKjY2NjY2NjY2Njo6Ojo6Ojo6OkJCQlZWVmJiYmZmZmZmZmZmZmZmZmpqampqam5ubnJycnp6eo6Ojqampr6+vs7Oztra2urq6vLy8vb29vb29vb29vb29vr6+vr6+vr6+wMDAxMTEzc3N3t7e8fHx+/v7/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AbQgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZoYlMZJHCAAQg80MKJiSUgwIw0znjAizAO1oIBNfY4YwY5Csajjz6CEORfBxCpJI5HngVCBlCm4BAISip5QJNltZCAAVx2eQCQCyVZJZFYjgVCl2h2icBCYyoJZplenZnmnFci1EKbRCYAp1c7zumnngelgKePa+7J1ZZ++skkQYIOWmOhhmqVaKIPIORojW9GepWck6ZZp0FDXrqoplVl0KmfCD1wqQAGkJqVqf6nppnQqka6ehWssXaZEJWDQmprVX3myqJCGeD56a9WrShspgedWWWlyGLFaawOmdojtNFmhUCuUkLUwqjZansqs+G29UCiB9RablwtPKAsi+SuK++89Na7WAsZPKAvCODam9YDCAQscIv+rtXCwAgjAGjBZyWQMMILMzwWwA8jrK7EYVX8MMZigaBxwv1y/OrHFov8FcUkB3yxyVplkLLAK7OMVQovBxyyzFXV7CvOWXmccsw8X4VyxdgGvdXQCBdt9FY+l7w0WC2AIPXNT1dt9dVYZ6311lx37fXXYIftUApQZtCt2FDlq+/aDwCN9lFqs712vG8TFbfca7tdN/5Q7eKN995w+4233oDzJLjfhRN1+N+JC7W43I0LdffhdEeeU9+PU235TY/ru3lQmAv+uVChQz76UCnIfTZO37Z+elGtx6756zbJLjvtP9keO+4+6e467zz5/i3wwQtPPENRl716ScLPDvyTZSuPku/HKwR99NKfZHv1CZGNPfbc2/T994SHnxK+44PvbQspOG++t+mr3xD7KdRv//saoR8/lA7Rb///+MvI/so2tv8Z0H0BTMgAzTY/AzowgRbRX/oK6EAAQrAi3hvfQypowAtG8HpQKl9BOGhBD1ZkdxHxHwdN2BISto+FLawgAmH4EQfOkIYgGR4Od8jDHvrwh4ZADKIQh0jEIhrxiEhMohKXyMQmOvGJUIyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU56cooBAQAh+QQJBQA3ACH+H0dlbmVyYXRlZCBieSBvbmxpbmVHSUZ0b29scy5jb20ALAAAAAC5ASMBhzk5OTk5OTk5OTo6Oj8/P0hISE5OTlBQUFBQUFBQUFJSUlVVVVpaWmBgYGtra3d3d4CAgIqKipCQkJWVlZeXl5iYmJmZmZqampqampqampubm6Wlpa+vr7GxsbGxsbKysrKysrKysrKysra2tru7u729vb29vb6+vr6+vr6+vr6+vsHBwcTExMnJyc/Pz9nZ2e3t7fv7+/7+/v7+/v7+/v7+/v7+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wj+AG8IHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHUq0qNGjSJMqXcq0qdOnUKNKnUq1qtWrWLNq3cq1q9evYMOKHUu2rNmzaNOqXcu2rdu3cOPKnUu3rt27ePPq3cu3r9+/gAMLHky4sOHDiBMrXsy4sePHkCNLnky5suXLmDNr3sy5s+fPoEOLHk26tOnTqFOrXs26tevXsGPLnk27tu3buHPr3s27t+/fwIMLH068uPHjyJMrX868ufPn0KNLn069uvXr2LNr3869u/fv4MP+ix9Pvrz58+jTq1/Pvr379/Djy59Pv779+/jz69/Pv7///wAGKOCABBZo4IEIJqjgggw26OCDEEYo4YQUVmjhhRhmqOGGHHbo4YcghijiiCSWaGJTLoSAgQQYpHCiYik4oMCMNCqAwYuGSVDjjgo4gONgEPDIIwM/AhaCkEL6WKRaLqTgAkRIInnjkmWF8IADWGIJwZMLYRBlklSSBUGWZGI5ZUIMfCkkl2F+dWWZZZ55kJpChtDmV2PCCaedCNHJI593bhWCnoQm5OeOgAaa1ZuEluninIfSyKaiWDWqpwQIBRmpApRq5YKlcEKAkAubYpoQBg4EoGoADyTa6VD+MYJK5gMJaernqavmqqoCj74q1KeyZikqmn66OtADuiYbwLC+BhVslnIelOaXxgqErLLJMtusTxI868CkmSL5LUIYYIstuNvqBKys2irkggQPzOgABL3Oaa6ynKbr06Cg0vpRCPdiW6++OqHa6APoanRtwLqaSjBPKTBKZrsdKcBwsko+3FMKGEDwAAQYJMzRxcnmq7FZJOtq8slkWZyyqv6yLObLqkYrs0kphhCCyC25QHMAN6eUAgREF00vTS6TTHHQIXVstNE29/wy0yZJ8PTVUbME8MUDU/3R0FdfzbNKKQTMq9ckWR320w7LtHDDaJe0dtg3hZDn0XGTBPb+3EaPnbdVe/NNtN9/UxW44IQXPpXgRiv+ldqCZ+24VS4wvvTkWDk9d7WYY2X32l13vhXkREsu+lYupH766qy37vrrsMcu++y012777SeloDvuVLmAwe/Ah8z7UyoGH3zowxfFsfHGJ558T8xH/zxSvkff/PRGFW898MhjD/32wXPuPU/ghz8+rOX/7vz5NaVvOvs5aW999/AXDH79RMkPvPj485Qi9z5RXf+OkroCrm+ANTGgAREYFAUukIE/ceADIeg/CQqQgjux4AUxuBDdhcBJKrEgBxmSAp2ZUGcpkeAIO3jCFh4wIxNc4UFy1sITytAmNawh/W6okhzWUCLtG+ThRnzYQojo7oggFKJGiGhDhyARiS9UIkKYqLMdDuSJT5QiRkrIROdhEYpavAgTrSiQJn3xiGEUYw7JWMYzojGNFuGiCQ9oRjfC0SVuTOIdV5LHPeLxi358SR31GMhCGvKQiEykIhfJyEY68pGQjKQkJ0nJSlrykpjMpCY3yclOevKToAylKEdJylKa8pSoTKUqV8nKVrrylbCMpSxnScta2vKWuMylLnfJy1768pfADKYwh0nMYhrzmMhMpjKXycxmOvOZ0IymNKdJzWpa85rYzKY2t8nNbnrzm+AMpzjHSc5ymvOc6EznMwMCACH5BAkFADAAIf4fR2VuZXJhdGVkIGJ5IG9ubGluZUdJRnRvb2xzLmNvbQAsAAAAALkBIwGHQUFBQUFBQUFBRUVFS0tLUlJSV1dXWVlZWVlZWlpaXV1dbm5uhISEk5OTmJiYmZmZmZmZmZmZmpqanp6ep6enra2tsLCwsbGxsbGxsrKys7OztLS0t7e3urq6vb29wMDAxcXFycnJzMzMzc3Nzc3Nzs7Ozs7Oz8/P1NTU3Nzc7u7u/v7+/v7+/v7+/v7+/v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////CP4AYQgcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMoU6pcybKly5cwY8qcSbOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gw4odS7as2bNo06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIEytezLix48eQI0ueTLmy5cuYM2vezLmz58+gQ4seTbq06dOoU6tezbq169ewY8ueTbu27du4c+vezbu379/AgwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279+/gw/6LH0++vPnz6NOrX8++vfv38OPLn0+/vv37+PPr38+/v///AAYo4IAEFmjggQgmqOCCDDbo4IMQRijhhBRWaOGFGGao4YYcdujhhyCGKOKIJJZoolMmeOCBCScyJgECMMbIAIstFmZCjDjGKEGNg3mQ448IMMAjYDcC+WMGQ/q1gJFA0phkWRIsIOUCDHjQUJFM5tjAk2RFOeWXCziJ0ItZ/silWF6C+aWYBi1ZZo5ngpWmml8q5OabMbIZZ1Z00rkjQnfiiYCee1o1Z59TJtSAoDEWyhWidCJ5kI+MLuDoVpCq+edBjCJgZUImRAnjAptealSmYJZaUAaCWoqQCf4LBCDrrLK6aipRqH4pKUKLvplQBrQGOyuht/LUQK5SEjtQr0aGiZAHwkYbgLLF4uQBsrYqdC2QqhYkbbQIVBsUA7l+2pAHEjDAgAS7IsTAt9FuKa5PsGYq70fwSjvvT/X2ea9HwOYrrLn78nSolAR79K7AwXZbsE4eZMAutRrFyjCt/z5MlsUXy5qxxmI10PGsDoP8FbQjT2sySya0fFPK4a6cUrrqqttuTBKMfLPMInlQ88/qUpwSAhdny3PPQCctNEpE5xvz0SQlnfTHLzUtrdFQg5SB1EknDBOrwi7gddYfNcA10CW/ZILEEoxNNkhnJ/22WHEDPXdYdf98t/6cea+798l9L/23VGbHnfbgVplQN+JgmVA42oyLhW7NEgge+eWYZ6755px37vnnoIcu+uikE+ly6VSxLcHqbqOOVKirxx67607JbvvqtC+l+u2r75z7ULzf/vtRsAcfu+XD24Su8ccnT1TxzCPvPE3Mzz498NX7fj1P0PO+PVHL8y799zN1v/r45NOUYgYrpu/++/DHL//89GPWMvr1sxRxBvxngH/+J+mfANkHQJwMcICtKyDLDjhABdKEgQP8nwM7AkEBIu9+95vgRirYP8thEIMazMj+Kii4D34whBdZGwcfYkIQotAiIzwgRFrowhdSJIYdnCENT2dDiqyPf6UJfNUOJdjDFO6wiC45IhJZ1sIlqi2DToyiFKdIxSpa8YpYzKIWt8jFLnrxi2AMoxjHSMYymvGMaEyjGtfIxja68Y1wjKMc50jHOtrxjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjrykZCMpCQnSclKWvKSmMykJjfJyU568pOgDKUoR0nKUprylKhMpSpXycpWuvKVsIylLGdJy1qSLyAAOw==";
|
|
2303
2290
|
|
|
2304
|
-
var _templateObject$
|
|
2291
|
+
var _templateObject$k, _templateObject2$i, _templateObject3$f, _templateObject4$a;
|
|
2305
2292
|
function SignIn(_ref) {
|
|
2306
2293
|
let {
|
|
2307
2294
|
description
|
|
2308
2295
|
} = _ref;
|
|
2309
2296
|
const theme = material.useTheme();
|
|
2310
2297
|
const styles = {
|
|
2311
|
-
wrapper: material.css(_templateObject$
|
|
2312
|
-
header: material.css(_templateObject2$
|
|
2313
|
-
icon: material.css(_templateObject3$
|
|
2314
|
-
content: material.css(_templateObject4$
|
|
2298
|
+
wrapper: material.css(_templateObject$k || (_templateObject$k = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
2299
|
+
header: material.css(_templateObject2$i || (_templateObject2$i = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
2300
|
+
icon: material.css(_templateObject3$f || (_templateObject3$f = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n margin-right: ", ";\n & > img {\n width: 170px;\n }\n "])), theme.cssMixins.rowHCentered, theme.spacing(12), theme.spacing(4)),
|
|
2301
|
+
content: material.css(_templateObject4$a || (_templateObject4$a = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: ", ";\n margin-bottom: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(4), theme.palette.text.secondary, theme.spacing(8))
|
|
2315
2302
|
};
|
|
2316
2303
|
return jsxRuntime.jsxs(material.Box, {
|
|
2317
2304
|
css: styles.wrapper,
|
|
@@ -2332,7 +2319,7 @@ function SignIn(_ref) {
|
|
|
2332
2319
|
});
|
|
2333
2320
|
}
|
|
2334
2321
|
|
|
2335
|
-
var _templateObject$
|
|
2322
|
+
var _templateObject$j, _templateObject2$h, _templateObject3$e, _templateObject4$9, _templateObject5$5, _templateObject6$4, _templateObject7$4;
|
|
2336
2323
|
function Evaluation$4(_ref) {
|
|
2337
2324
|
let {
|
|
2338
2325
|
poolInfo,
|
|
@@ -2364,13 +2351,13 @@ function Evaluation$4(_ref) {
|
|
|
2364
2351
|
fetchData();
|
|
2365
2352
|
}, [account, chainId, checkingEA, handleApprove, poolInfo.assetAddress, poolInfo.pool, isWalletOwnershipVerified]);
|
|
2366
2353
|
const styles = {
|
|
2367
|
-
wrapper: material.css(_templateObject$
|
|
2368
|
-
header: material.css(_templateObject2$
|
|
2369
|
-
content: material.css(_templateObject3$
|
|
2370
|
-
checkWrapper: material.css(_templateObject4$
|
|
2371
|
-
checkIcon: material.css(_templateObject5$
|
|
2372
|
-
congratsWrapper: material.css(_templateObject6$
|
|
2373
|
-
bottom: material.css(_templateObject7$
|
|
2354
|
+
wrapper: material.css(_templateObject$j || (_templateObject$j = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
2355
|
+
header: material.css(_templateObject2$h || (_templateObject2$h = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
2356
|
+
content: material.css(_templateObject3$e || (_templateObject3$e = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: ", ";\n margin-bottom: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(4), theme.palette.text.secondary, theme.spacing(8)),
|
|
2357
|
+
checkWrapper: material.css(_templateObject4$9 || (_templateObject4$9 = _taggedTemplateLiteral(["\n ", "\n width: 100%;\n height: 72px;\n background: #f9f8fa;\n border-radius: 4px;\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n "])), theme.cssMixins.rowVCentered, theme.palette.text.secondary),
|
|
2358
|
+
checkIcon: material.css(_templateObject5$5 || (_templateObject5$5 = _taggedTemplateLiteral(["\n ", "\n width: 105px;\n height: 100%;\n\n & > img {\n max-width: 100%;\n max-height: 100%;\n }\n "])), theme.cssMixins.rowCentered),
|
|
2359
|
+
congratsWrapper: material.css(_templateObject6$4 || (_templateObject6$4 = _taggedTemplateLiteral(["\n font-weight: 400;\n font-size: 16px;\n padding: ", ";\n ", "\n margin-top: ", ";\n height: 52px;\n background: linear-gradient(\n 0deg,\n rgba(255, 255, 255, 0.9),\n rgba(255, 255, 255, 0.9)\n ),\n #2e7d32;\n border-radius: 4px;\n "])), theme.spacing(0, 2), theme.cssMixins.rowVCentered, theme.spacing(8)),
|
|
2360
|
+
bottom: material.css(_templateObject7$4 || (_templateObject7$4 = _taggedTemplateLiteral(["\n & .MuiButtonBase-root {\n width: 100%;\n position: absolute;\n bottom: 0;\n }\n "])))
|
|
2374
2361
|
};
|
|
2375
2362
|
const goToNextStep = () => {
|
|
2376
2363
|
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
@@ -2433,7 +2420,7 @@ function Evaluation$4(_ref) {
|
|
|
2433
2420
|
});
|
|
2434
2421
|
}
|
|
2435
2422
|
|
|
2436
|
-
var _templateObject$
|
|
2423
|
+
var _templateObject$i, _templateObject2$g, _templateObject3$d, _templateObject4$8, _templateObject5$4, _templateObject6$3, _templateObject7$3, _templateObject8$2, _templateObject9$1, _templateObject10$1, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
|
|
2437
2424
|
function ChooseAmountModal(_ref) {
|
|
2438
2425
|
let {
|
|
2439
2426
|
title,
|
|
@@ -2460,13 +2447,13 @@ function ChooseAmountModal(_ref) {
|
|
|
2460
2447
|
} = webShared.useMQ();
|
|
2461
2448
|
const [inputTouched, setInputTouched] = React.useState(false);
|
|
2462
2449
|
const styles = {
|
|
2463
|
-
subTitle: material.css(_templateObject$
|
|
2464
|
-
description2: material.css(_templateObject2$
|
|
2465
|
-
chosenAmountWrapper: material.css(_templateObject3$
|
|
2466
|
-
chosenAmount: material.css(_templateObject4$
|
|
2467
|
-
chosenAmountSymbol: material.css(_templateObject5$
|
|
2468
|
-
inputAmountWrapper: material.css(_templateObject6$
|
|
2469
|
-
inputAmount: material.css(_templateObject7$
|
|
2450
|
+
subTitle: material.css(_templateObject$i || (_templateObject$i = _taggedTemplateLiteral(["\n font-weight: 400;\n "]))),
|
|
2451
|
+
description2: material.css(_templateObject2$g || (_templateObject2$g = _taggedTemplateLiteral(["\n ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowCentered, theme.palette.text.secondary, theme.spacing(2)),
|
|
2452
|
+
chosenAmountWrapper: material.css(_templateObject3$d || (_templateObject3$d = _taggedTemplateLiteral(["\n ", ";\n background: linear-gradient(232.71deg, #a363f4 4.17%, #ff6a8a 178.69%);\n background-clip: text;\n -webkit-text-fill-color: transparent;\n font-weight: 700;\n font-size: 32px;\n margin-bottom: ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowCentered, theme.spacing(1), theme.spacing(4)),
|
|
2453
|
+
chosenAmount: material.css(_templateObject4$8 || (_templateObject4$8 = _taggedTemplateLiteral(["\n font-weight: 700;\n font-size: 32px;\n "]))),
|
|
2454
|
+
chosenAmountSymbol: material.css(_templateObject5$4 || (_templateObject5$4 = _taggedTemplateLiteral(["\n font-size: 75%;\n margin-left: ", ";\n letter-spacing: 0.1px;\n "])), theme.spacing(0.5)),
|
|
2455
|
+
inputAmountWrapper: material.css(_templateObject6$3 || (_templateObject6$3 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n margin-top: ", ";\n "])), theme.spacing(1), theme.spacing(4)),
|
|
2456
|
+
inputAmount: material.css(_templateObject7$3 || (_templateObject7$3 = _taggedTemplateLiteral(["\n ", ";\n "])), theme.cssMixins.rowSpaceBetweened),
|
|
2470
2457
|
inputField: material.css(_templateObject8$2 || (_templateObject8$2 = _taggedTemplateLiteral(["\n width: 100%;\n "]))),
|
|
2471
2458
|
maxButton: material.css(_templateObject9$1 || (_templateObject9$1 = _taggedTemplateLiteral(["\n width: 80px;\n "]))),
|
|
2472
2459
|
amountAvailable: material.css(_templateObject10$1 || (_templateObject10$1 = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n margin-bottom: ", ";\n font-size: 16px;\n & > svg {\n margin-right: ", ";\n }\n "])), theme.cssMixins.rowVCentered, theme.spacing(0.5), theme.spacing(12), theme.spacing(0.5)),
|
|
@@ -2616,7 +2603,7 @@ function ChooseAmountModal(_ref) {
|
|
|
2616
2603
|
});
|
|
2617
2604
|
}
|
|
2618
2605
|
|
|
2619
|
-
function ChooseAmount$
|
|
2606
|
+
function ChooseAmount$c(_ref) {
|
|
2620
2607
|
let {
|
|
2621
2608
|
poolInfo,
|
|
2622
2609
|
accountStats
|
|
@@ -2676,7 +2663,7 @@ function ChooseAmount$f(_ref) {
|
|
|
2676
2663
|
});
|
|
2677
2664
|
}
|
|
2678
2665
|
|
|
2679
|
-
function ApproveAllowance$
|
|
2666
|
+
function ApproveAllowance$a(_ref) {
|
|
2680
2667
|
let {
|
|
2681
2668
|
poolInfo
|
|
2682
2669
|
} = _ref;
|
|
@@ -2735,7 +2722,7 @@ function TxSendModal(_ref) {
|
|
|
2735
2722
|
});
|
|
2736
2723
|
}
|
|
2737
2724
|
|
|
2738
|
-
function Transfer$
|
|
2725
|
+
function Transfer$f(_ref) {
|
|
2739
2726
|
let {
|
|
2740
2727
|
poolInfo
|
|
2741
2728
|
} = _ref;
|
|
@@ -2758,7 +2745,7 @@ function Transfer$i(_ref) {
|
|
|
2758
2745
|
});
|
|
2759
2746
|
}
|
|
2760
2747
|
|
|
2761
|
-
function Success$
|
|
2748
|
+
function Success$c(_ref) {
|
|
2762
2749
|
let {
|
|
2763
2750
|
poolInfo,
|
|
2764
2751
|
creditRecord,
|
|
@@ -2783,182 +2770,114 @@ function Success$d(_ref) {
|
|
|
2783
2770
|
});
|
|
2784
2771
|
}
|
|
2785
2772
|
|
|
2786
|
-
|
|
2787
|
-
|
|
2788
|
-
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
|
|
2792
|
-
}
|
|
2793
|
-
};
|
|
2794
|
-
checkNotifiChainSupported();
|
|
2795
|
-
}, [chainId]);
|
|
2796
|
-
return {
|
|
2797
|
-
notifiChainSupported
|
|
2798
|
-
};
|
|
2799
|
-
};
|
|
2800
|
-
const useNotifiClient = (account, chainId) => {
|
|
2801
|
-
const [notifiClient, setNotifiClient] = React.useState(null);
|
|
2802
|
-
const {
|
|
2803
|
-
notifiChainSupported
|
|
2804
|
-
} = useDoesChainSupportNotifi(chainId);
|
|
2805
|
-
React.useEffect(() => {
|
|
2806
|
-
const createNotifiClient = async () => {
|
|
2807
|
-
if (account != null && chainId != null && notifiChainSupported) {
|
|
2808
|
-
const client = notifiFrontendClient.newFrontendClient({
|
|
2809
|
-
account: {
|
|
2810
|
-
publicKey: account
|
|
2811
|
-
},
|
|
2812
|
-
tenantId: 'humafinanceprod',
|
|
2813
|
-
env: 'Production',
|
|
2814
|
-
walletBlockchain: shared.getBlockchainConfigFromChain(chainId)
|
|
2815
|
-
});
|
|
2816
|
-
await client.initialize();
|
|
2817
|
-
setNotifiClient(client);
|
|
2818
|
-
}
|
|
2819
|
-
};
|
|
2820
|
-
createNotifiClient();
|
|
2821
|
-
}, [account, chainId, notifiChainSupported]);
|
|
2822
|
-
return {
|
|
2823
|
-
notifiClient
|
|
2824
|
-
};
|
|
2825
|
-
};
|
|
2826
|
-
const useIsFirstTimeNotifiUser = (account, chainId) => {
|
|
2827
|
-
const [isFirstTimeNotifiUser, setIsFirstTimeNotifiUser] = React.useState(false);
|
|
2828
|
-
const {
|
|
2829
|
-
notifiClient
|
|
2830
|
-
} = useNotifiClient(account, chainId);
|
|
2831
|
-
const {
|
|
2832
|
-
notifiChainSupported
|
|
2833
|
-
} = useDoesChainSupportNotifi(chainId);
|
|
2834
|
-
React.useEffect(() => {
|
|
2835
|
-
const checkIsFirstTimeNotifiUser = async () => {
|
|
2836
|
-
if (notifiClient != null && notifiChainSupported) {
|
|
2837
|
-
const {
|
|
2838
|
-
userState
|
|
2839
|
-
} = notifiClient;
|
|
2840
|
-
// If the user is not authenticated or expired, they are a first time user
|
|
2841
|
-
if (userState == null || userState.status !== 'authenticated' && userState.status !== 'expired') {
|
|
2842
|
-
setIsFirstTimeNotifiUser(true);
|
|
2843
|
-
} else if (userState.status === 'authenticated') {
|
|
2844
|
-
var _targetGroups$;
|
|
2845
|
-
// If a user is authenticated, check if they have a target group (AKA email)
|
|
2846
|
-
// associated with their wallet. If they do not, show them the notifi onboarding flow.
|
|
2847
|
-
const targetGroups = await notifiClient.getTargetGroups();
|
|
2848
|
-
const emailTargets = (_targetGroups$ = targetGroups[0]) === null || _targetGroups$ === void 0 || (_targetGroups$ = _targetGroups$.emailTargets) === null || _targetGroups$ === void 0 ? void 0 : _targetGroups$[0];
|
|
2849
|
-
if (emailTargets == null || emailTargets.emailAddress == null) {
|
|
2850
|
-
setIsFirstTimeNotifiUser(true);
|
|
2851
|
-
}
|
|
2852
|
-
}
|
|
2853
|
-
}
|
|
2854
|
-
};
|
|
2855
|
-
checkIsFirstTimeNotifiUser();
|
|
2856
|
-
}, [notifiChainSupported, notifiClient]);
|
|
2857
|
-
return {
|
|
2858
|
-
isFirstTimeNotifiUser
|
|
2859
|
-
};
|
|
2773
|
+
var _templateObject$h, _templateObject2$f, _templateObject3$c, _templateObject4$7, _templateObject5$3;
|
|
2774
|
+
const validateDefaultTargetGroup = async frontendClient => {
|
|
2775
|
+
var _await$frontendClient;
|
|
2776
|
+
// NOTE: this extra request is necessary as the targetGroupId state in NotifiTargetContext will not be updated constantly right after login
|
|
2777
|
+
const targetGroup = (_await$frontendClient = await (frontendClient === null || frontendClient === void 0 ? void 0 : frontendClient.fetchFusionData())) === null || _await$frontendClient === void 0 || (_await$frontendClient = _await$frontendClient.targetGroup) === null || _await$frontendClient === void 0 ? void 0 : _await$frontendClient.find(group => (group === null || group === void 0 ? void 0 : group.name) === 'Default');
|
|
2778
|
+
return !!targetGroup;
|
|
2860
2779
|
};
|
|
2861
|
-
|
|
2862
|
-
var _templateObject$l, _templateObject2$j, _templateObject3$g, _templateObject4$8, _templateObject5$4;
|
|
2863
|
-
function getIdFromEventType(eventType) {
|
|
2864
|
-
if (eventType.type === 'directPush') {
|
|
2865
|
-
const directPushEventType = eventType;
|
|
2866
|
-
return directPushEventType.directPushId.value;
|
|
2867
|
-
}
|
|
2868
|
-
if (eventType.type === 'broadcast') {
|
|
2869
|
-
const broadcastEventType = eventType;
|
|
2870
|
-
return broadcastEventType.broadcastId.value;
|
|
2871
|
-
}
|
|
2872
|
-
return '';
|
|
2873
|
-
}
|
|
2874
|
-
async function fetchEventTypes(notifiClient) {
|
|
2875
|
-
var _process$env$REACT_AP, _subscriptionConfig$e;
|
|
2876
|
-
const subscribedAlerts = await notifiClient.getAlerts();
|
|
2877
|
-
const subscriptionConfig = await notifiClient.fetchSubscriptionCard({
|
|
2878
|
-
id: (_process$env$REACT_AP = process.env.REACT_APP_NOTIFI_CONFIG_ID) !== null && _process$env$REACT_AP !== void 0 ? _process$env$REACT_AP : '',
|
|
2879
|
-
type: 'SUBSCRIPTION_CARD'
|
|
2880
|
-
});
|
|
2881
|
-
const eventTypes = subscriptionConfig === null || subscriptionConfig === void 0 || (_subscriptionConfig$e = subscriptionConfig.eventTypes) === null || _subscriptionConfig$e === void 0 ? void 0 : _subscriptionConfig$e.map(eventType => {
|
|
2882
|
-
const eventTypeId = getIdFromEventType(eventType);
|
|
2883
|
-
let enabled = false;
|
|
2884
|
-
// Check whether the user is subscribed to the event
|
|
2885
|
-
const subscribedAlert = subscribedAlerts === null || subscribedAlerts === void 0 ? void 0 : subscribedAlerts.find(alert => alert.filterOptions.indexOf(eventTypeId) >= 0);
|
|
2886
|
-
if (subscribedAlert) {
|
|
2887
|
-
enabled = true;
|
|
2888
|
-
}
|
|
2889
|
-
return {
|
|
2890
|
-
...eventType,
|
|
2891
|
-
enabled
|
|
2892
|
-
};
|
|
2893
|
-
});
|
|
2894
|
-
return eventTypes;
|
|
2895
|
-
}
|
|
2896
2780
|
function NotifiSubscriptionModal(_ref) {
|
|
2897
2781
|
let {
|
|
2782
|
+
successText,
|
|
2898
2783
|
handleSuccess
|
|
2899
2784
|
} = _ref;
|
|
2900
2785
|
const theme = material.useTheme();
|
|
2901
2786
|
const reset = utils.useResetAtom(webShared.txAtom);
|
|
2902
2787
|
const dispatch = useAppDispatch();
|
|
2903
|
-
const {
|
|
2904
|
-
account,
|
|
2905
|
-
chainId,
|
|
2906
|
-
provider
|
|
2907
|
-
} = core.useWeb3React();
|
|
2908
2788
|
const [showSuccessScreen, setShowSuccessScreen] = React.useState(false);
|
|
2909
2789
|
const [isLoading, setIsLoading] = React.useState(false);
|
|
2910
2790
|
const [emailAddress, setEmailAddress] = React.useState('');
|
|
2911
2791
|
const [emailValid, setEmailValid] = React.useState();
|
|
2912
2792
|
const {
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2919
|
-
|
|
2793
|
+
frontendClientStatus: {
|
|
2794
|
+
isInitialized,
|
|
2795
|
+
isAuthenticated,
|
|
2796
|
+
isExpired
|
|
2797
|
+
},
|
|
2798
|
+
frontendClient,
|
|
2799
|
+
login
|
|
2800
|
+
} = notifiReact.useNotifiFrontendClientContext();
|
|
2801
|
+
const {
|
|
2802
|
+
fusionEventTopics
|
|
2803
|
+
} = notifiReact.useNotifiTenantConfigContext();
|
|
2804
|
+
const {
|
|
2805
|
+
subscribeAlertsDefault
|
|
2806
|
+
} = notifiReact.useNotifiTopicContext();
|
|
2807
|
+
const {
|
|
2808
|
+
targetDocument: {
|
|
2809
|
+
targetGroupId
|
|
2810
|
+
},
|
|
2811
|
+
updateTargetInputs,
|
|
2812
|
+
renewTargetGroup
|
|
2813
|
+
} = notifiReact.useNotifiTargetContext();
|
|
2814
|
+
const {
|
|
2815
|
+
ftuStage,
|
|
2816
|
+
isLoading: isLoadingFtuStage,
|
|
2817
|
+
updateFtuStage
|
|
2818
|
+
} = notifiReact.useNotifiUserSettingContext();
|
|
2920
2819
|
const handleEmailAddressChange = event => {
|
|
2921
2820
|
var _event$target$value;
|
|
2922
2821
|
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
2923
2822
|
setEmailValid(emailRegex.test((_event$target$value = event.target.value) !== null && _event$target$value !== void 0 ? _event$target$value : ''));
|
|
2924
2823
|
setEmailAddress(event.target.value);
|
|
2925
2824
|
};
|
|
2825
|
+
React.useEffect(() => {
|
|
2826
|
+
async function subscribe() {
|
|
2827
|
+
if (!isInitialized || !isAuthenticated || !targetGroupId || isLoadingFtuStage) {
|
|
2828
|
+
return;
|
|
2829
|
+
}
|
|
2830
|
+
|
|
2831
|
+
// If a user is authenticated but already finished with the FTU (First Time User) setup
|
|
2832
|
+
// (AKA their login expired and they logged back in), then we can skip the subscription step.
|
|
2833
|
+
if (ftuStage !== notifiReact.FtuStage.Done) {
|
|
2834
|
+
var _await$frontendClient2, _targetGroup$emailTar;
|
|
2835
|
+
await updateTargetInputs('email', {
|
|
2836
|
+
value: emailAddress
|
|
2837
|
+
});
|
|
2838
|
+
// Authorize this email address for this wallet
|
|
2839
|
+
|
|
2840
|
+
if (!targetGroupId) {
|
|
2841
|
+
setIsLoading(false);
|
|
2842
|
+
return;
|
|
2843
|
+
}
|
|
2844
|
+
await subscribeAlertsDefault(fusionEventTopics, targetGroupId);
|
|
2845
|
+
await updateFtuStage(notifiReact.FtuStage.Done);
|
|
2846
|
+
const targetGroup = (_await$frontendClient2 = await (frontendClient === null || frontendClient === void 0 ? void 0 : frontendClient.fetchFusionData())) === null || _await$frontendClient2 === void 0 || (_await$frontendClient2 = _await$frontendClient2.targetGroup) === null || _await$frontendClient2 === void 0 ? void 0 : _await$frontendClient2.find(group => (group === null || group === void 0 ? void 0 : group.name) === 'Default');
|
|
2847
|
+
const emailTarget = targetGroup === null || targetGroup === void 0 || (_targetGroup$emailTar = targetGroup.emailTargets) === null || _targetGroup$emailTar === void 0 ? void 0 : _targetGroup$emailTar[0];
|
|
2848
|
+
if (emailTarget && !emailTarget.isConfirmed) {
|
|
2849
|
+
await frontendClient.sendEmailTargetVerification({
|
|
2850
|
+
targetId: emailTarget.id
|
|
2851
|
+
});
|
|
2852
|
+
}
|
|
2853
|
+
}
|
|
2854
|
+
setShowSuccessScreen(true);
|
|
2855
|
+
setIsLoading(false);
|
|
2856
|
+
}
|
|
2857
|
+
subscribe();
|
|
2858
|
+
}, [isInitialized, isAuthenticated, targetGroupId, updateTargetInputs, emailAddress, subscribeAlertsDefault, fusionEventTopics, updateFtuStage, isLoadingFtuStage, ftuStage, frontendClient]);
|
|
2859
|
+
React.useEffect(() => {
|
|
2860
|
+
const loginIfExpired = async () => {
|
|
2861
|
+
if (isExpired) {
|
|
2862
|
+
await login();
|
|
2863
|
+
}
|
|
2864
|
+
};
|
|
2865
|
+
loginIfExpired();
|
|
2866
|
+
}, [isExpired, login]);
|
|
2926
2867
|
const logInAndSubscribe = async () => {
|
|
2927
|
-
if (
|
|
2868
|
+
if (!isAuthenticated) {
|
|
2928
2869
|
setIsLoading(true);
|
|
2929
2870
|
|
|
2930
2871
|
// Ask user to sign a message to authenticate
|
|
2931
2872
|
try {
|
|
2932
|
-
await
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2873
|
+
await login();
|
|
2874
|
+
const isDefaultTargetExist = await validateDefaultTargetGroup(frontendClient);
|
|
2875
|
+
if (!isDefaultTargetExist) {
|
|
2876
|
+
await renewTargetGroup();
|
|
2877
|
+
}
|
|
2936
2878
|
} catch (e) {
|
|
2937
2879
|
setIsLoading(false);
|
|
2938
|
-
return;
|
|
2939
|
-
}
|
|
2940
|
-
|
|
2941
|
-
// Fetch all event types
|
|
2942
|
-
const fetchedEventTypes = await fetchEventTypes(notifiClient);
|
|
2943
|
-
|
|
2944
|
-
// Authorize this email address for this wallet
|
|
2945
|
-
await notifiClient.ensureTargetGroup({
|
|
2946
|
-
name: 'Default',
|
|
2947
|
-
emailAddress: emailAddress
|
|
2948
|
-
});
|
|
2949
|
-
|
|
2950
|
-
// Intentionally running this in serial because the Notifi ensureAlert can't handle
|
|
2951
|
-
// multiple calls. Notified their team to fix this.
|
|
2952
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
2953
|
-
for (const eventType of fetchedEventTypes) {
|
|
2954
|
-
// eslint-disable-next-line no-await-in-loop
|
|
2955
|
-
await notifiClient.ensureAlert({
|
|
2956
|
-
eventType,
|
|
2957
|
-
inputs: {}
|
|
2958
|
-
});
|
|
2959
2880
|
}
|
|
2960
|
-
setShowSuccessScreen(true);
|
|
2961
|
-
setIsLoading(false);
|
|
2962
2881
|
}
|
|
2963
2882
|
};
|
|
2964
2883
|
const handleCloseModal = React.useCallback(() => {
|
|
@@ -2967,11 +2886,11 @@ function NotifiSubscriptionModal(_ref) {
|
|
|
2967
2886
|
handleSuccess();
|
|
2968
2887
|
}, [dispatch, handleSuccess, reset]);
|
|
2969
2888
|
const styles = {
|
|
2970
|
-
disclaimer: material.css(_templateObject$
|
|
2971
|
-
inputField: material.css(_templateObject2$
|
|
2972
|
-
inputWrapper: material.css(_templateObject3$
|
|
2973
|
-
header: material.css(_templateObject4$
|
|
2974
|
-
check: material.css(_templateObject5$
|
|
2889
|
+
disclaimer: material.css(_templateObject$h || (_templateObject$h = _taggedTemplateLiteral(["\n ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowCentered, theme.palette.text.secondary, theme.spacing(6)),
|
|
2890
|
+
inputField: material.css(_templateObject2$f || (_templateObject2$f = _taggedTemplateLiteral(["\n width: 100%;\n font-size: 16px;\n "]))),
|
|
2891
|
+
inputWrapper: material.css(_templateObject3$c || (_templateObject3$c = _taggedTemplateLiteral(["\n width: 100%;\n "]))),
|
|
2892
|
+
header: material.css(_templateObject4$7 || (_templateObject4$7 = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
2893
|
+
check: material.css(_templateObject5$3 || (_templateObject5$3 = _taggedTemplateLiteral(["\n width: 100%;\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(10))
|
|
2975
2894
|
};
|
|
2976
2895
|
if (isLoading) {
|
|
2977
2896
|
return jsxRuntime.jsx(LoadingModal, {
|
|
@@ -2988,7 +2907,7 @@ function NotifiSubscriptionModal(_ref) {
|
|
|
2988
2907
|
}), jsxRuntime.jsx(BottomButton, {
|
|
2989
2908
|
variant: "contained",
|
|
2990
2909
|
onClick: handleCloseModal,
|
|
2991
|
-
children:
|
|
2910
|
+
children: successText !== null && successText !== void 0 ? successText : 'DONE'
|
|
2992
2911
|
})]
|
|
2993
2912
|
});
|
|
2994
2913
|
}
|
|
@@ -2996,7 +2915,6 @@ function NotifiSubscriptionModal(_ref) {
|
|
|
2996
2915
|
title: "Connect Your Email",
|
|
2997
2916
|
children: [jsxRuntime.jsx(material.Typography, {
|
|
2998
2917
|
variant: "body2",
|
|
2999
|
-
textAlign: "justify",
|
|
3000
2918
|
margin: theme.spacing(6, 0, 4, 0),
|
|
3001
2919
|
children: "Connect your emails to receive important update about your account."
|
|
3002
2920
|
}), jsxRuntime.jsx(material.Box, {
|
|
@@ -3007,7 +2925,9 @@ function NotifiSubscriptionModal(_ref) {
|
|
|
3007
2925
|
type: "email",
|
|
3008
2926
|
value: emailAddress,
|
|
3009
2927
|
onChange: handleEmailAddressChange,
|
|
3010
|
-
variant: "
|
|
2928
|
+
variant: "outlined",
|
|
2929
|
+
color: "primary",
|
|
2930
|
+
focused: true
|
|
3011
2931
|
})
|
|
3012
2932
|
}), jsxRuntime.jsx(material.Box, {
|
|
3013
2933
|
css: styles.disclaimer,
|
|
@@ -3015,7 +2935,7 @@ function NotifiSubscriptionModal(_ref) {
|
|
|
3015
2935
|
}), jsxRuntime.jsx(BottomButton, {
|
|
3016
2936
|
variant: "contained",
|
|
3017
2937
|
onClick: logInAndSubscribe,
|
|
3018
|
-
disabled: !emailValid || isLoading,
|
|
2938
|
+
disabled: !emailValid || isLoading || !isInitialized,
|
|
3019
2939
|
children: "CONNECT EMAIL"
|
|
3020
2940
|
})]
|
|
3021
2941
|
});
|
|
@@ -3030,6 +2950,63 @@ function Notifications$4(_ref) {
|
|
|
3030
2950
|
});
|
|
3031
2951
|
}
|
|
3032
2952
|
|
|
2953
|
+
const useDoesChainSupportNotifi = chainId => {
|
|
2954
|
+
const [notifiChainSupported, setNotifiChainSupported] = React.useState(false);
|
|
2955
|
+
React.useEffect(() => {
|
|
2956
|
+
const checkNotifiChainSupported = async () => {
|
|
2957
|
+
if (chainId != null) {
|
|
2958
|
+
setNotifiChainSupported(shared.doesChainSupportNotifi(chainId, shared.checkIsDev()));
|
|
2959
|
+
}
|
|
2960
|
+
};
|
|
2961
|
+
checkNotifiChainSupported();
|
|
2962
|
+
}, [chainId]);
|
|
2963
|
+
return {
|
|
2964
|
+
notifiChainSupported
|
|
2965
|
+
};
|
|
2966
|
+
};
|
|
2967
|
+
|
|
2968
|
+
// Check if user is authenticated
|
|
2969
|
+
// If not authenticated or expired, have user login
|
|
2970
|
+
// After login, check FTU stage
|
|
2971
|
+
// If FTU stage is not Done, go to signup flow. Otherwise, skip to next step
|
|
2972
|
+
|
|
2973
|
+
const useIsFirstTimeNotifiUser = (account, chainId) => {
|
|
2974
|
+
const [isFirstTimeNotifiUser, setIsFirstTimeNotifiUser] = React.useState(false);
|
|
2975
|
+
const {
|
|
2976
|
+
frontendClientStatus: {
|
|
2977
|
+
isInitialized,
|
|
2978
|
+
isAuthenticated,
|
|
2979
|
+
isExpired
|
|
2980
|
+
}
|
|
2981
|
+
} = notifiReact.useNotifiFrontendClientContext();
|
|
2982
|
+
const {
|
|
2983
|
+
ftuStage,
|
|
2984
|
+
isLoading: isLoadingFtu
|
|
2985
|
+
} = notifiReact.useNotifiUserSettingContext();
|
|
2986
|
+
const {
|
|
2987
|
+
notifiChainSupported
|
|
2988
|
+
} = useDoesChainSupportNotifi(chainId);
|
|
2989
|
+
React.useEffect(() => {
|
|
2990
|
+
const checkIsFirstTimeNotifiUser = async () => {
|
|
2991
|
+
if (isInitialized && notifiChainSupported) {
|
|
2992
|
+
// If the user is not authenticated or expired, they are possibly a first time user.
|
|
2993
|
+
if (!isAuthenticated || isExpired) {
|
|
2994
|
+
setIsFirstTimeNotifiUser(true);
|
|
2995
|
+
} else if (isAuthenticated) {
|
|
2996
|
+
// If a user is authenticated, check if they've completed all the FTU (First Time User) stages.
|
|
2997
|
+
if (ftuStage !== notifiReact.FtuStage.Done) {
|
|
2998
|
+
setIsFirstTimeNotifiUser(true);
|
|
2999
|
+
}
|
|
3000
|
+
}
|
|
3001
|
+
}
|
|
3002
|
+
};
|
|
3003
|
+
checkIsFirstTimeNotifiUser();
|
|
3004
|
+
}, [ftuStage, isAuthenticated, isExpired, isInitialized, isLoadingFtu, notifiChainSupported]);
|
|
3005
|
+
return {
|
|
3006
|
+
isFirstTimeNotifiUser
|
|
3007
|
+
};
|
|
3008
|
+
};
|
|
3009
|
+
|
|
3033
3010
|
function CreditLineBorrow(_ref) {
|
|
3034
3011
|
let {
|
|
3035
3012
|
poolName: poolNameStr,
|
|
@@ -3093,14 +3070,14 @@ function CreditLineBorrow(_ref) {
|
|
|
3093
3070
|
children: [step === WIDGET_STEP.Evaluation && jsxRuntime.jsx(Evaluation$4, {
|
|
3094
3071
|
poolInfo: poolInfo,
|
|
3095
3072
|
handleApprove: approveCallback
|
|
3096
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
3073
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$c, {
|
|
3097
3074
|
poolInfo: poolInfo,
|
|
3098
3075
|
accountStats: accountStats
|
|
3099
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
3076
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$a, {
|
|
3100
3077
|
poolInfo: poolInfo
|
|
3101
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
3078
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$f, {
|
|
3102
3079
|
poolInfo: poolInfo
|
|
3103
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
3080
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$c, {
|
|
3104
3081
|
poolInfo: poolInfo,
|
|
3105
3082
|
handleAction: setupNotificationsOrClose,
|
|
3106
3083
|
creditRecord: creditRecord,
|
|
@@ -3115,7 +3092,7 @@ function CreditLineBorrow(_ref) {
|
|
|
3115
3092
|
});
|
|
3116
3093
|
}
|
|
3117
3094
|
|
|
3118
|
-
var _templateObject$
|
|
3095
|
+
var _templateObject$g, _templateObject2$e, _templateObject3$b, _templateObject4$6, _templateObject5$2, _templateObject6$2, _templateObject7$2, _templateObject8$1;
|
|
3119
3096
|
function InputAmountModal(_ref) {
|
|
3120
3097
|
let {
|
|
3121
3098
|
title,
|
|
@@ -3124,7 +3101,6 @@ function InputAmountModal(_ref) {
|
|
|
3124
3101
|
tokenSymbol,
|
|
3125
3102
|
suffix: defaultSuffix,
|
|
3126
3103
|
currentAmount,
|
|
3127
|
-
minimumAmount,
|
|
3128
3104
|
maxAmount,
|
|
3129
3105
|
maxAmountText = 'MAX',
|
|
3130
3106
|
maxAmountTitle,
|
|
@@ -3136,13 +3112,13 @@ function InputAmountModal(_ref) {
|
|
|
3136
3112
|
const [inputTouched, setInputTouched] = React.useState(false);
|
|
3137
3113
|
const suffix = " ".concat(defaultSuffix !== null && defaultSuffix !== void 0 ? defaultSuffix : tokenSymbol);
|
|
3138
3114
|
const styles = {
|
|
3139
|
-
inputAmountWrapper: material.css(_templateObject$
|
|
3140
|
-
inputAmount: material.css(_templateObject2$
|
|
3141
|
-
inputField: material.css(_templateObject3$
|
|
3142
|
-
maxWrapper: material.css(_templateObject4$
|
|
3143
|
-
maxTitle: material.css(_templateObject5$
|
|
3144
|
-
max: material.css(_templateObject6$
|
|
3145
|
-
info: material.css(_templateObject7$
|
|
3115
|
+
inputAmountWrapper: material.css(_templateObject$g || (_templateObject$g = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n margin-top: ", ";\n "])), theme.spacing(1), theme.spacing(16)),
|
|
3116
|
+
inputAmount: material.css(_templateObject2$e || (_templateObject2$e = _taggedTemplateLiteral(["\n ", ";\n "])), theme.cssMixins.rowSpaceBetweened),
|
|
3117
|
+
inputField: material.css(_templateObject3$b || (_templateObject3$b = _taggedTemplateLiteral(["\n input {\n width: 100%;\n color: ", ";\n font-weight: 800;\n font-size: 40px;\n line-height: 133.4%;\n }\n "])), theme.palette.text.primary),
|
|
3118
|
+
maxWrapper: material.css(_templateObject4$6 || (_templateObject4$6 = _taggedTemplateLiteral(["\n position: relative;\n display: flex;\n justify-content: flex-end;\n "]))),
|
|
3119
|
+
maxTitle: material.css(_templateObject5$2 || (_templateObject5$2 = _taggedTemplateLiteral(["\n position: absolute;\n color: ", ";\n font-weight: 400;\n font-size: 12px;\n line-height: 166%;\n letter-spacing: 0.4px;\n top: ", ";\n width: 200px;\n text-align: right;\n "])), theme.palette.text.primary, theme.spacing(-3)),
|
|
3120
|
+
max: material.css(_templateObject6$2 || (_templateObject6$2 = _taggedTemplateLiteral(["\n display: flex;\n min-width: fit-content;\n justify-content: center;\n align-items: center;\n border-radius: 32px;\n padding: 4px 10px;\n gap: 8px;\n font-weight: 700;\n font-size: 13px;\n line-height: 22px;\n letter-spacing: 0.46px;\n "]))),
|
|
3121
|
+
info: material.css(_templateObject7$2 || (_templateObject7$2 = _taggedTemplateLiteral(["\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 160%;\n letter-spacing: 0.15px;\n "])), theme.palette.text.secondary),
|
|
3146
3122
|
subInfo: material.css(_templateObject8$1 || (_templateObject8$1 = _taggedTemplateLiteral(["\n position: absolute;\n bottom: ", ";\n "])), theme.spacing(6))
|
|
3147
3123
|
};
|
|
3148
3124
|
const onChange = event => {
|
|
@@ -3159,9 +3135,6 @@ function InputAmountModal(_ref) {
|
|
|
3159
3135
|
if (!shared.isEmpty(maxAmount) && Number(currentAmount) > Number(maxAmount)) {
|
|
3160
3136
|
return true;
|
|
3161
3137
|
}
|
|
3162
|
-
if (!shared.isEmpty(minimumAmount) && Number(currentAmount) < minimumAmount) {
|
|
3163
|
-
return true;
|
|
3164
|
-
}
|
|
3165
3138
|
return false;
|
|
3166
3139
|
};
|
|
3167
3140
|
const getEndAdornment = () => jsxRuntime.jsxs(material.Box, {
|
|
@@ -3203,11 +3176,6 @@ function InputAmountModal(_ref) {
|
|
|
3203
3176
|
css: styles.info,
|
|
3204
3177
|
children: info
|
|
3205
3178
|
}, info))
|
|
3206
|
-
}), !!minimumAmount && minimumAmount > 0 && jsxRuntime.jsx(material.Box, {
|
|
3207
|
-
children: jsxRuntime.jsxs(material.Typography, {
|
|
3208
|
-
css: styles.info,
|
|
3209
|
-
children: ["Minimum deposit: ", minimumAmount, " ", tokenSymbol]
|
|
3210
|
-
}, 'minDeposit')
|
|
3211
3179
|
}), jsxRuntime.jsx(BottomButton, {
|
|
3212
3180
|
variant: "contained",
|
|
3213
3181
|
onClick: handleAction,
|
|
@@ -3217,7 +3185,7 @@ function InputAmountModal(_ref) {
|
|
|
3217
3185
|
});
|
|
3218
3186
|
}
|
|
3219
3187
|
|
|
3220
|
-
function ChooseAmount$
|
|
3188
|
+
function ChooseAmount$b(_ref) {
|
|
3221
3189
|
let {
|
|
3222
3190
|
poolInfo,
|
|
3223
3191
|
poolUnderlyingToken,
|
|
@@ -3270,7 +3238,7 @@ function ChooseAmount$e(_ref) {
|
|
|
3270
3238
|
});
|
|
3271
3239
|
}
|
|
3272
3240
|
|
|
3273
|
-
function ApproveAllowance$
|
|
3241
|
+
function ApproveAllowance$9(_ref) {
|
|
3274
3242
|
let {
|
|
3275
3243
|
poolInfo,
|
|
3276
3244
|
poolUnderlyingToken
|
|
@@ -3328,7 +3296,7 @@ function TxSendModalV2(_ref) {
|
|
|
3328
3296
|
});
|
|
3329
3297
|
}
|
|
3330
3298
|
|
|
3331
|
-
function Transfer$
|
|
3299
|
+
function Transfer$e(_ref) {
|
|
3332
3300
|
let {
|
|
3333
3301
|
poolInfo
|
|
3334
3302
|
} = _ref;
|
|
@@ -3362,7 +3330,7 @@ function Transfer$h(_ref) {
|
|
|
3362
3330
|
});
|
|
3363
3331
|
}
|
|
3364
3332
|
|
|
3365
|
-
function Success$
|
|
3333
|
+
function Success$b(_ref) {
|
|
3366
3334
|
let {
|
|
3367
3335
|
poolUnderlyingToken,
|
|
3368
3336
|
creditRecord,
|
|
@@ -3459,16 +3427,16 @@ function CreditLineBorrowV2(_ref) {
|
|
|
3459
3427
|
handleSuccess: handleSuccessCallback,
|
|
3460
3428
|
children: [!step && jsxRuntime.jsx(LoadingModal, {
|
|
3461
3429
|
title: "Borrow"
|
|
3462
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
3430
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$b, {
|
|
3463
3431
|
poolInfo: poolInfo,
|
|
3464
3432
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3465
3433
|
accountStats: accountStats
|
|
3466
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
3434
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$9, {
|
|
3467
3435
|
poolInfo: poolInfo,
|
|
3468
3436
|
poolUnderlyingToken: poolUnderlyingToken
|
|
3469
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
3437
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$e, {
|
|
3470
3438
|
poolInfo: poolInfo
|
|
3471
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
3439
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$b, {
|
|
3472
3440
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3473
3441
|
handleAction: setupNotificationsOrClose,
|
|
3474
3442
|
creditRecord: accountStats.creditRecord,
|
|
@@ -3483,7 +3451,7 @@ function CreditLineBorrowV2(_ref) {
|
|
|
3483
3451
|
});
|
|
3484
3452
|
}
|
|
3485
3453
|
|
|
3486
|
-
function ChooseAmount$
|
|
3454
|
+
function ChooseAmount$a(_ref) {
|
|
3487
3455
|
let {
|
|
3488
3456
|
payoffAmount,
|
|
3489
3457
|
totalDueAmount,
|
|
@@ -3534,7 +3502,7 @@ function ChooseAmount$d(_ref) {
|
|
|
3534
3502
|
});
|
|
3535
3503
|
}
|
|
3536
3504
|
|
|
3537
|
-
function ApproveAllowance$
|
|
3505
|
+
function ApproveAllowance$8(_ref) {
|
|
3538
3506
|
let {
|
|
3539
3507
|
poolInfo
|
|
3540
3508
|
} = _ref;
|
|
@@ -3548,7 +3516,7 @@ function ApproveAllowance$9(_ref) {
|
|
|
3548
3516
|
});
|
|
3549
3517
|
}
|
|
3550
3518
|
|
|
3551
|
-
function Transfer$
|
|
3519
|
+
function Transfer$d(_ref) {
|
|
3552
3520
|
let {
|
|
3553
3521
|
poolInfo
|
|
3554
3522
|
} = _ref;
|
|
@@ -3574,7 +3542,7 @@ function Transfer$g(_ref) {
|
|
|
3574
3542
|
});
|
|
3575
3543
|
}
|
|
3576
3544
|
|
|
3577
|
-
function Success$
|
|
3545
|
+
function Success$a(_ref) {
|
|
3578
3546
|
let {
|
|
3579
3547
|
poolInfo,
|
|
3580
3548
|
handleAction
|
|
@@ -3640,15 +3608,15 @@ function CreditLinePayment(_ref) {
|
|
|
3640
3608
|
loadingTitle: "Make Payment",
|
|
3641
3609
|
handleClose: handleClose,
|
|
3642
3610
|
handleSuccess: handleSuccess,
|
|
3643
|
-
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
3611
|
+
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$a, {
|
|
3644
3612
|
poolInfo: poolInfo,
|
|
3645
3613
|
payoffAmount: payoffAmount,
|
|
3646
3614
|
totalDueAmount: totalDueAmount
|
|
3647
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
3615
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$8, {
|
|
3648
3616
|
poolInfo: poolInfo
|
|
3649
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
3617
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$d, {
|
|
3650
3618
|
poolInfo: poolInfo
|
|
3651
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
3619
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$a, {
|
|
3652
3620
|
poolInfo: poolInfo,
|
|
3653
3621
|
handleAction: handleClose
|
|
3654
3622
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
@@ -3659,7 +3627,7 @@ function CreditLinePayment(_ref) {
|
|
|
3659
3627
|
});
|
|
3660
3628
|
}
|
|
3661
3629
|
|
|
3662
|
-
function ChooseAmount$
|
|
3630
|
+
function ChooseAmount$9(_ref) {
|
|
3663
3631
|
let {
|
|
3664
3632
|
payoffAmount: payoffAmountBN,
|
|
3665
3633
|
totalDueAmount: totalDueAmountBN,
|
|
@@ -3720,7 +3688,7 @@ function ChooseAmount$c(_ref) {
|
|
|
3720
3688
|
});
|
|
3721
3689
|
}
|
|
3722
3690
|
|
|
3723
|
-
function ApproveAllowance$
|
|
3691
|
+
function ApproveAllowance$7(_ref) {
|
|
3724
3692
|
let {
|
|
3725
3693
|
poolInfo,
|
|
3726
3694
|
poolUnderlyingToken
|
|
@@ -3738,7 +3706,7 @@ function ApproveAllowance$8(_ref) {
|
|
|
3738
3706
|
});
|
|
3739
3707
|
}
|
|
3740
3708
|
|
|
3741
|
-
function Transfer$
|
|
3709
|
+
function Transfer$c(_ref) {
|
|
3742
3710
|
let {
|
|
3743
3711
|
poolInfo,
|
|
3744
3712
|
poolUnderlyingToken
|
|
@@ -3773,7 +3741,7 @@ function Transfer$f(_ref) {
|
|
|
3773
3741
|
});
|
|
3774
3742
|
}
|
|
3775
3743
|
|
|
3776
|
-
function Success$
|
|
3744
|
+
function Success$9(_ref) {
|
|
3777
3745
|
let {
|
|
3778
3746
|
poolUnderlyingToken,
|
|
3779
3747
|
handleAction
|
|
@@ -3844,18 +3812,18 @@ function CreditLinePaymentV2(_ref) {
|
|
|
3844
3812
|
loadingTitle: "Pay",
|
|
3845
3813
|
handleClose: handleClose,
|
|
3846
3814
|
handleSuccess: handleSuccess,
|
|
3847
|
-
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
3815
|
+
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$9, {
|
|
3848
3816
|
poolInfo: poolInfo,
|
|
3849
3817
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3850
3818
|
payoffAmount: payoffAmount,
|
|
3851
3819
|
totalDueAmount: totalDueAmount
|
|
3852
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
3820
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$7, {
|
|
3853
3821
|
poolInfo: poolInfo,
|
|
3854
3822
|
poolUnderlyingToken: poolUnderlyingToken
|
|
3855
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
3823
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$c, {
|
|
3856
3824
|
poolInfo: poolInfo,
|
|
3857
3825
|
poolUnderlyingToken: poolUnderlyingToken
|
|
3858
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
3826
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$9, {
|
|
3859
3827
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3860
3828
|
handleAction: handleClose
|
|
3861
3829
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
@@ -3866,7 +3834,7 @@ function CreditLinePaymentV2(_ref) {
|
|
|
3866
3834
|
});
|
|
3867
3835
|
}
|
|
3868
3836
|
|
|
3869
|
-
function ApproveAllowance$
|
|
3837
|
+
function ApproveAllowance$6(_ref) {
|
|
3870
3838
|
let {
|
|
3871
3839
|
poolInfo,
|
|
3872
3840
|
poolUnderlyingToken,
|
|
@@ -3885,7 +3853,7 @@ function ApproveAllowance$7(_ref) {
|
|
|
3885
3853
|
});
|
|
3886
3854
|
}
|
|
3887
3855
|
|
|
3888
|
-
function Success$
|
|
3856
|
+
function Success$8(_ref) {
|
|
3889
3857
|
let {
|
|
3890
3858
|
amountToDeposit,
|
|
3891
3859
|
poolUnderlyingToken,
|
|
@@ -3903,7 +3871,7 @@ function Success$9(_ref) {
|
|
|
3903
3871
|
});
|
|
3904
3872
|
}
|
|
3905
3873
|
|
|
3906
|
-
function Transfer$
|
|
3874
|
+
function Transfer$b(_ref) {
|
|
3907
3875
|
let {
|
|
3908
3876
|
poolInfo,
|
|
3909
3877
|
amountToDeposit,
|
|
@@ -3980,15 +3948,15 @@ function SupplyFirstLossCover(_ref) {
|
|
|
3980
3948
|
loadingTitle: title,
|
|
3981
3949
|
handleClose: handleClose,
|
|
3982
3950
|
handleSuccess: handleSuccess,
|
|
3983
|
-
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
3951
|
+
children: [step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$6, {
|
|
3984
3952
|
poolInfo: poolInfo,
|
|
3985
3953
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3986
3954
|
amountToDeposit: minAmountToDeposit
|
|
3987
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
3955
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$b, {
|
|
3988
3956
|
poolInfo: poolInfo,
|
|
3989
3957
|
amountToDeposit: minAmountToDeposit,
|
|
3990
3958
|
title: title
|
|
3991
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
3959
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$8, {
|
|
3992
3960
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
3993
3961
|
handleAction: handleClose,
|
|
3994
3962
|
amountToDeposit: minAmountToDeposit
|
|
@@ -4037,7 +4005,7 @@ function Evaluation$3(_ref) {
|
|
|
4037
4005
|
});
|
|
4038
4006
|
}
|
|
4039
4007
|
|
|
4040
|
-
function ChooseAmount$
|
|
4008
|
+
function ChooseAmount$8(_ref) {
|
|
4041
4009
|
var _receivable;
|
|
4042
4010
|
let {
|
|
4043
4011
|
poolInfo,
|
|
@@ -4102,7 +4070,7 @@ function ChooseAmount$b(_ref) {
|
|
|
4102
4070
|
});
|
|
4103
4071
|
}
|
|
4104
4072
|
|
|
4105
|
-
var _templateObject$
|
|
4073
|
+
var _templateObject$f, _templateObject2$d, _templateObject3$a, _templateObject4$5, _templateObject5$1, _templateObject6$1, _templateObject7$1, _templateObject8, _templateObject9, _templateObject10;
|
|
4106
4074
|
function ConfirmTransferModal(_ref) {
|
|
4107
4075
|
let {
|
|
4108
4076
|
title,
|
|
@@ -4113,13 +4081,13 @@ function ConfirmTransferModal(_ref) {
|
|
|
4113
4081
|
} = _ref;
|
|
4114
4082
|
const theme = material.useTheme();
|
|
4115
4083
|
const styles = {
|
|
4116
|
-
wrapper: material.css(_templateObject$
|
|
4117
|
-
header: material.css(_templateObject2$
|
|
4118
|
-
description: material.css(_templateObject3$
|
|
4119
|
-
transferWrapper: material.css(_templateObject4$
|
|
4120
|
-
transfer: material.css(_templateObject5$
|
|
4121
|
-
transferItem: material.css(_templateObject6$
|
|
4122
|
-
arrow: material.css(_templateObject7$
|
|
4084
|
+
wrapper: material.css(_templateObject$f || (_templateObject$f = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n ", ";\n "])), theme.cssMixins.colStretch),
|
|
4085
|
+
header: material.css(_templateObject2$d || (_templateObject2$d = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
4086
|
+
description: material.css(_templateObject3$a || (_templateObject3$a = _taggedTemplateLiteral(["\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n margin-top: ", ";\n text-align: center;\n "])), theme.palette.text.secondary, theme.spacing(4)),
|
|
4087
|
+
transferWrapper: material.css(_templateObject4$5 || (_templateObject4$5 = _taggedTemplateLiteral(["\n margin-top: ", ";\n "])), theme.spacing(9)),
|
|
4088
|
+
transfer: material.css(_templateObject5$1 || (_templateObject5$1 = _taggedTemplateLiteral(["\n font-weight: 400;\n ", "\n ", "\n height: 72px;\n background: #f9f8fa;\n border-radius: 4px;\n font-size: 16px;\n color: ", ";\n padding: ", ";\n margin-bottom: ", ";\n position: relative;\n box-sizing: border-box;\n "])), theme.cssMixins.rowSpaceBetweened, theme.cssMixins.rowVCentered, theme.palette.text.primary, theme.spacing(3, 2), theme.spacing(1)),
|
|
4089
|
+
transferItem: material.css(_templateObject6$1 || (_templateObject6$1 = _taggedTemplateLiteral(["\n ", "\n "])), theme.cssMixins.rowVCentered),
|
|
4090
|
+
arrow: material.css(_templateObject7$1 || (_templateObject7$1 = _taggedTemplateLiteral(["\n @keyframes bounceAlpha {\n 0% {\n opacity: 1;\n transform: translateX(0px) scale(1);\n }\n 25% {\n opacity: 0;\n transform: translateX(10px) scale(0.9);\n }\n 26% {\n opacity: 0;\n transform: translateX(-10px) scale(0.9);\n }\n 55% {\n opacity: 1;\n transform: translateX(0px) scale(1);\n }\n }\n animation-name: bounceAlpha;\n animation-duration: 1.4s;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n\n color: ", ";\n position: absolute;\n margin: auto;\n top: 0;\n left: calc(15% + 36px);\n bottom: 0;\n right: 0;\n width: 16px;\n height: 16px;\n "])), theme.palette.primary.main),
|
|
4123
4091
|
arrowFirst: material.css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n left: calc(15% + 20px);\n animation-delay: 0.2s;\n "]))),
|
|
4124
4092
|
okButton: material.css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n width: 100%;\n position: absolute;\n bottom: 0;\n "]))),
|
|
4125
4093
|
usdcIcon: material.css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n width: 22px;\n margin-right: ", ";\n & > path:first-of-type {\n fill: #76707e;\n }\n "])), theme.spacing(2))
|
|
@@ -4242,7 +4210,7 @@ function ApproveNFT(_ref) {
|
|
|
4242
4210
|
});
|
|
4243
4211
|
}
|
|
4244
4212
|
|
|
4245
|
-
function Transfer$
|
|
4213
|
+
function Transfer$a(_ref) {
|
|
4246
4214
|
let {
|
|
4247
4215
|
poolInfo,
|
|
4248
4216
|
tokenId
|
|
@@ -4267,7 +4235,7 @@ function Transfer$d(_ref) {
|
|
|
4267
4235
|
});
|
|
4268
4236
|
}
|
|
4269
4237
|
|
|
4270
|
-
function Success$
|
|
4238
|
+
function Success$7(_ref) {
|
|
4271
4239
|
let {
|
|
4272
4240
|
handleAction
|
|
4273
4241
|
} = _ref;
|
|
@@ -4318,16 +4286,16 @@ function InvoiceFactoringBorrow(_ref) {
|
|
|
4318
4286
|
children: [step === WIDGET_STEP.Evaluation && jsxRuntime.jsx(Evaluation$3, {
|
|
4319
4287
|
poolInfo: poolInfo,
|
|
4320
4288
|
tokenId: tokenId.toString()
|
|
4321
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
4289
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$8, {
|
|
4322
4290
|
poolInfo: poolInfo,
|
|
4323
4291
|
accountStats: accountStats
|
|
4324
4292
|
}), step === WIDGET_STEP.ConfirmTransfer && jsxRuntime.jsx(ConfirmTransfer$2, {}), step === WIDGET_STEP.ApproveNFT && jsxRuntime.jsx(ApproveNFT, {
|
|
4325
4293
|
poolInfo: poolInfo,
|
|
4326
4294
|
tokenId: tokenId.toString()
|
|
4327
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
4295
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$a, {
|
|
4328
4296
|
poolInfo: poolInfo,
|
|
4329
4297
|
tokenId: tokenId.toString()
|
|
4330
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
4298
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$7, {
|
|
4331
4299
|
handleAction: handleClose
|
|
4332
4300
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
4333
4301
|
title: "Invoice Factoring",
|
|
@@ -4337,7 +4305,7 @@ function InvoiceFactoringBorrow(_ref) {
|
|
|
4337
4305
|
});
|
|
4338
4306
|
}
|
|
4339
4307
|
|
|
4340
|
-
function ChooseAmount$
|
|
4308
|
+
function ChooseAmount$7(_ref) {
|
|
4341
4309
|
let {
|
|
4342
4310
|
creditRecord,
|
|
4343
4311
|
poolInfo
|
|
@@ -4388,7 +4356,7 @@ function ChooseAmount$a(_ref) {
|
|
|
4388
4356
|
});
|
|
4389
4357
|
}
|
|
4390
4358
|
|
|
4391
|
-
function ApproveAllowance$
|
|
4359
|
+
function ApproveAllowance$5(_ref) {
|
|
4392
4360
|
let {
|
|
4393
4361
|
poolInfo
|
|
4394
4362
|
} = _ref;
|
|
@@ -4402,7 +4370,7 @@ function ApproveAllowance$6(_ref) {
|
|
|
4402
4370
|
});
|
|
4403
4371
|
}
|
|
4404
4372
|
|
|
4405
|
-
function Transfer$
|
|
4373
|
+
function Transfer$9(_ref) {
|
|
4406
4374
|
let {
|
|
4407
4375
|
poolInfo
|
|
4408
4376
|
} = _ref;
|
|
@@ -4428,7 +4396,7 @@ function Transfer$c(_ref) {
|
|
|
4428
4396
|
});
|
|
4429
4397
|
}
|
|
4430
4398
|
|
|
4431
|
-
function Success$
|
|
4399
|
+
function Success$6(_ref) {
|
|
4432
4400
|
let {
|
|
4433
4401
|
poolInfo,
|
|
4434
4402
|
handleAction
|
|
@@ -4482,14 +4450,14 @@ function InvoiceFactoringPayment(_ref) {
|
|
|
4482
4450
|
loadingTitle: "Make Payment",
|
|
4483
4451
|
handleClose: handleClose,
|
|
4484
4452
|
handleSuccess: handleSuccess,
|
|
4485
|
-
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
4453
|
+
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$7, {
|
|
4486
4454
|
creditRecord: creditRecord,
|
|
4487
4455
|
poolInfo: poolInfo
|
|
4488
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
4456
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$5, {
|
|
4489
4457
|
poolInfo: poolInfo
|
|
4490
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
4458
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$9, {
|
|
4491
4459
|
poolInfo: poolInfo
|
|
4492
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
4460
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$6, {
|
|
4493
4461
|
poolInfo: poolInfo,
|
|
4494
4462
|
handleAction: handleClose
|
|
4495
4463
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
@@ -4500,8 +4468,8 @@ function InvoiceFactoringPayment(_ref) {
|
|
|
4500
4468
|
});
|
|
4501
4469
|
}
|
|
4502
4470
|
|
|
4503
|
-
var _templateObject$
|
|
4504
|
-
function ChooseTranche$
|
|
4471
|
+
var _templateObject$e, _templateObject2$c, _templateObject3$9;
|
|
4472
|
+
function ChooseTranche$1(_ref) {
|
|
4505
4473
|
let {
|
|
4506
4474
|
selectedTranche,
|
|
4507
4475
|
changeTranche
|
|
@@ -4509,9 +4477,9 @@ function ChooseTranche$4(_ref) {
|
|
|
4509
4477
|
const theme = material.useTheme();
|
|
4510
4478
|
const dispatch = useAppDispatch();
|
|
4511
4479
|
const styles = {
|
|
4512
|
-
subTitle: material.css(_templateObject$
|
|
4513
|
-
radioGroup: material.css(_templateObject2$
|
|
4514
|
-
formControl: material.css(_templateObject3$
|
|
4480
|
+
subTitle: material.css(_templateObject$e || (_templateObject$e = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
4481
|
+
radioGroup: material.css(_templateObject2$c || (_templateObject2$c = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
4482
|
+
formControl: material.css(_templateObject3$9 || (_templateObject3$9 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
4515
4483
|
};
|
|
4516
4484
|
const handleNext = () => {
|
|
4517
4485
|
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
@@ -4556,7 +4524,7 @@ function ChooseTranche$4(_ref) {
|
|
|
4556
4524
|
});
|
|
4557
4525
|
}
|
|
4558
4526
|
|
|
4559
|
-
function ChooseAmount$
|
|
4527
|
+
function ChooseAmount$6(_ref) {
|
|
4560
4528
|
let {
|
|
4561
4529
|
poolInfo,
|
|
4562
4530
|
poolUnderlyingToken,
|
|
@@ -4583,10 +4551,11 @@ function ChooseAmount$9(_ref) {
|
|
|
4583
4551
|
const lockupEndTime = depositRecord.lastDepositTime.toNumber() + lpConfig.withdrawalLockoutPeriodInDays * SECONDS_IN_A_DAY;
|
|
4584
4552
|
if (nextEpochStartTime < lockupEndTime) {
|
|
4585
4553
|
const lockupEndTimeDayjs = dayjs__default["default"].unix(lockupEndTime).date(1);
|
|
4554
|
+
const withdrawTime = lockupEndTimeDayjs.add(1, 'month');
|
|
4586
4555
|
dispatch(setStep(WIDGET_STEP.Error));
|
|
4587
4556
|
dispatch(setError({
|
|
4588
4557
|
errorReason: 'Redemption too soon',
|
|
4589
|
-
errorMessage: "Your last deposit was on ".concat(shared.timestampToLL(depositRecord.lastDepositTime.toNumber()), ". You can
|
|
4558
|
+
errorMessage: "Your last deposit was on ".concat(shared.timestampToLL(depositRecord.lastDepositTime.toNumber()), ". You can begin submitting redemption requests on ").concat(shared.timestampToLL(lockupEndTimeDayjs.unix()), ", which can be redeemed starting ").concat(shared.timestampToLL(withdrawTime.unix()), ".")
|
|
4590
4559
|
}));
|
|
4591
4560
|
}
|
|
4592
4561
|
}
|
|
@@ -4621,7 +4590,7 @@ function ChooseAmount$9(_ref) {
|
|
|
4621
4590
|
});
|
|
4622
4591
|
}
|
|
4623
4592
|
|
|
4624
|
-
function Transfer$
|
|
4593
|
+
function Transfer$8(_ref) {
|
|
4625
4594
|
let {
|
|
4626
4595
|
poolInfo,
|
|
4627
4596
|
poolUnderlyingToken,
|
|
@@ -4654,7 +4623,7 @@ function Transfer$b(_ref) {
|
|
|
4654
4623
|
});
|
|
4655
4624
|
}
|
|
4656
4625
|
|
|
4657
|
-
function Done$
|
|
4626
|
+
function Done$2(_ref) {
|
|
4658
4627
|
let {
|
|
4659
4628
|
handleAction
|
|
4660
4629
|
} = _ref;
|
|
@@ -4764,18 +4733,18 @@ function AddRedemptionV2(_ref) {
|
|
|
4764
4733
|
loadingTitle: title,
|
|
4765
4734
|
handleClose: handleClose,
|
|
4766
4735
|
handleSuccess: handleRedeemSuccess,
|
|
4767
|
-
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche$
|
|
4736
|
+
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche$1, {
|
|
4768
4737
|
selectedTranche: trancheInfo === null || trancheInfo === void 0 ? void 0 : trancheInfo.tranche,
|
|
4769
4738
|
changeTranche: handleChangeTranche
|
|
4770
|
-
}), step === WIDGET_STEP.ChooseAmount && trancheInfo && jsxRuntime.jsx(ChooseAmount$
|
|
4739
|
+
}), step === WIDGET_STEP.ChooseAmount && trancheInfo && jsxRuntime.jsx(ChooseAmount$6, {
|
|
4771
4740
|
poolInfo: poolInfo,
|
|
4772
4741
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
4773
4742
|
trancheInfo: trancheInfo
|
|
4774
|
-
}), step === WIDGET_STEP.Transfer && trancheInfo && jsxRuntime.jsx(Transfer$
|
|
4743
|
+
}), step === WIDGET_STEP.Transfer && trancheInfo && jsxRuntime.jsx(Transfer$8, {
|
|
4775
4744
|
poolInfo: poolInfo,
|
|
4776
4745
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
4777
4746
|
trancheInfo: trancheInfo
|
|
4778
|
-
}), step === WIDGET_STEP.Done && trancheInfo && jsxRuntime.jsx(Done$
|
|
4747
|
+
}), step === WIDGET_STEP.Done && trancheInfo && jsxRuntime.jsx(Done$2, {
|
|
4779
4748
|
handleAction: handleClose
|
|
4780
4749
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
4781
4750
|
title: title,
|
|
@@ -4786,7 +4755,7 @@ function AddRedemptionV2(_ref) {
|
|
|
4786
4755
|
});
|
|
4787
4756
|
}
|
|
4788
4757
|
|
|
4789
|
-
function Transfer$
|
|
4758
|
+
function Transfer$7(_ref) {
|
|
4790
4759
|
let {
|
|
4791
4760
|
poolInfo,
|
|
4792
4761
|
trancheType,
|
|
@@ -4812,7 +4781,7 @@ function Transfer$a(_ref) {
|
|
|
4812
4781
|
});
|
|
4813
4782
|
}
|
|
4814
4783
|
|
|
4815
|
-
function Done$
|
|
4784
|
+
function Done$1(_ref) {
|
|
4816
4785
|
let {
|
|
4817
4786
|
poolUnderlyingToken,
|
|
4818
4787
|
redemptionInfo,
|
|
@@ -4873,11 +4842,11 @@ function CancelRedemptionV2(_ref) {
|
|
|
4873
4842
|
loadingTitle: title,
|
|
4874
4843
|
handleClose: handleClose,
|
|
4875
4844
|
handleSuccess: handleRedeemSuccess,
|
|
4876
|
-
children: [step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
4845
|
+
children: [step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$7, {
|
|
4877
4846
|
poolInfo: poolInfo,
|
|
4878
4847
|
trancheType: trancheType,
|
|
4879
4848
|
redemptionInfo: redemptionInfo
|
|
4880
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Done$
|
|
4849
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Done$1, {
|
|
4881
4850
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
4882
4851
|
handleAction: handleClose,
|
|
4883
4852
|
redemptionInfo: redemptionInfo
|
|
@@ -4890,7 +4859,7 @@ function CancelRedemptionV2(_ref) {
|
|
|
4890
4859
|
});
|
|
4891
4860
|
}
|
|
4892
4861
|
|
|
4893
|
-
var _templateObject$
|
|
4862
|
+
var _templateObject$d, _templateObject2$b;
|
|
4894
4863
|
function EvaluationEA(_ref) {
|
|
4895
4864
|
let {
|
|
4896
4865
|
poolInfo,
|
|
@@ -4904,8 +4873,8 @@ function EvaluationEA(_ref) {
|
|
|
4904
4873
|
} = core.useWeb3React();
|
|
4905
4874
|
const [loading, setLoading] = React.useState(false);
|
|
4906
4875
|
const styles = {
|
|
4907
|
-
iconWrapper: material.css(_templateObject$
|
|
4908
|
-
description: material.css(_templateObject2$
|
|
4876
|
+
iconWrapper: material.css(_templateObject$d || (_templateObject$d = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 144px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(8)),
|
|
4877
|
+
description: material.css(_templateObject2$b || (_templateObject2$b = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n padding: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n "])), theme.cssMixins.rowCentered, theme.spacing(10), theme.spacing(0, 2), theme.palette.text.secondary)
|
|
4909
4878
|
};
|
|
4910
4879
|
const approveLender = async () => {
|
|
4911
4880
|
if (account) {
|
|
@@ -5000,7 +4969,7 @@ function HumaSnackBar(_ref2) {
|
|
|
5000
4969
|
});
|
|
5001
4970
|
}
|
|
5002
4971
|
|
|
5003
|
-
var _templateObject$
|
|
4972
|
+
var _templateObject$c, _templateObject2$a;
|
|
5004
4973
|
const KYCProvider = 'Securitize';
|
|
5005
4974
|
// TODO: Add copies for the other pools. Currently only the Jia pool is using the KYC process.
|
|
5006
4975
|
const JiaPoolCopies = {
|
|
@@ -5066,8 +5035,8 @@ function EvaluationKYC(_ref) {
|
|
|
5066
5035
|
const docSignatureCompleted = docSignatureStatus === 'completed';
|
|
5067
5036
|
const [openSnackBar, setOpenSnackBar] = React.useState(false);
|
|
5068
5037
|
const styles = {
|
|
5069
|
-
iconWrapper: material.css(_templateObject$
|
|
5070
|
-
description: material.css(_templateObject2$
|
|
5038
|
+
iconWrapper: material.css(_templateObject$c || (_templateObject$c = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 144px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(8)),
|
|
5039
|
+
description: material.css(_templateObject2$a || (_templateObject2$a = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n padding: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n "])), theme.cssMixins.rowCentered, theme.spacing(10), theme.spacing(0, 2), theme.palette.text.secondary)
|
|
5071
5040
|
};
|
|
5072
5041
|
const {
|
|
5073
5042
|
envelopeKey,
|
|
@@ -5279,7 +5248,7 @@ function Evaluation$2(_ref) {
|
|
|
5279
5248
|
});
|
|
5280
5249
|
}
|
|
5281
5250
|
|
|
5282
|
-
function ChooseAmount$
|
|
5251
|
+
function ChooseAmount$5(_ref) {
|
|
5283
5252
|
let {
|
|
5284
5253
|
allowance,
|
|
5285
5254
|
withdrawlLockoutSeconds,
|
|
@@ -5322,7 +5291,7 @@ function ChooseAmount$8(_ref) {
|
|
|
5322
5291
|
});
|
|
5323
5292
|
}
|
|
5324
5293
|
|
|
5325
|
-
function ApproveAllowance$
|
|
5294
|
+
function ApproveAllowance$4(_ref) {
|
|
5326
5295
|
let {
|
|
5327
5296
|
poolInfo
|
|
5328
5297
|
} = _ref;
|
|
@@ -5336,7 +5305,7 @@ function ApproveAllowance$5(_ref) {
|
|
|
5336
5305
|
});
|
|
5337
5306
|
}
|
|
5338
5307
|
|
|
5339
|
-
function Transfer$
|
|
5308
|
+
function Transfer$6(_ref) {
|
|
5340
5309
|
let {
|
|
5341
5310
|
poolInfo
|
|
5342
5311
|
} = _ref;
|
|
@@ -5359,7 +5328,7 @@ function Transfer$9(_ref) {
|
|
|
5359
5328
|
});
|
|
5360
5329
|
}
|
|
5361
5330
|
|
|
5362
|
-
function Success$
|
|
5331
|
+
function Success$5(_ref) {
|
|
5363
5332
|
let {
|
|
5364
5333
|
poolInfo,
|
|
5365
5334
|
handleAction,
|
|
@@ -5486,16 +5455,16 @@ function LendSupply(_ref) {
|
|
|
5486
5455
|
poolInfo: poolInfo,
|
|
5487
5456
|
handleClose: handleClose,
|
|
5488
5457
|
handleApproveSuccess: handleApproveSuccess
|
|
5489
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
5458
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$5, {
|
|
5490
5459
|
poolInfo: poolInfo,
|
|
5491
5460
|
allowance: allowance,
|
|
5492
5461
|
underlyingTokenBalance: balanceWithoutDecimals,
|
|
5493
5462
|
withdrawlLockoutSeconds: withdrawlLockoutSeconds
|
|
5494
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
5463
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$4, {
|
|
5495
5464
|
poolInfo: poolInfo
|
|
5496
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
5465
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$6, {
|
|
5497
5466
|
poolInfo: poolInfo
|
|
5498
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
5467
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$5, {
|
|
5499
5468
|
poolInfo: poolInfo,
|
|
5500
5469
|
handleAction: setupNotificationsOrClose,
|
|
5501
5470
|
hasNextStep: isFirstTimeNotifiUser
|
|
@@ -5510,8 +5479,8 @@ function LendSupply(_ref) {
|
|
|
5510
5479
|
});
|
|
5511
5480
|
}
|
|
5512
5481
|
|
|
5513
|
-
var _templateObject$
|
|
5514
|
-
function ChooseTranche
|
|
5482
|
+
var _templateObject$b, _templateObject2$9, _templateObject3$8;
|
|
5483
|
+
function ChooseTranche(_ref) {
|
|
5515
5484
|
let {
|
|
5516
5485
|
poolUnderlyingToken,
|
|
5517
5486
|
selectedTranche,
|
|
@@ -5520,9 +5489,9 @@ function ChooseTranche$3(_ref) {
|
|
|
5520
5489
|
const theme = material.useTheme();
|
|
5521
5490
|
const dispatch = useAppDispatch();
|
|
5522
5491
|
const styles = {
|
|
5523
|
-
subTitle: material.css(_templateObject$
|
|
5524
|
-
radioGroup: material.css(_templateObject2$
|
|
5525
|
-
formControl: material.css(_templateObject3$
|
|
5492
|
+
subTitle: material.css(_templateObject$b || (_templateObject$b = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
5493
|
+
radioGroup: material.css(_templateObject2$9 || (_templateObject2$9 = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
5494
|
+
formControl: material.css(_templateObject3$8 || (_templateObject3$8 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
5526
5495
|
};
|
|
5527
5496
|
const handleNext = () => {
|
|
5528
5497
|
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
@@ -5572,7 +5541,7 @@ function ChooseTranche$3(_ref) {
|
|
|
5572
5541
|
});
|
|
5573
5542
|
}
|
|
5574
5543
|
|
|
5575
|
-
var _templateObject$
|
|
5544
|
+
var _templateObject$a, _templateObject2$8, _templateObject3$7;
|
|
5576
5545
|
function PersonaEvaluation(_ref) {
|
|
5577
5546
|
let {
|
|
5578
5547
|
poolInfo,
|
|
@@ -5838,9 +5807,9 @@ function PersonaEvaluation(_ref) {
|
|
|
5838
5807
|
}
|
|
5839
5808
|
};
|
|
5840
5809
|
const styles = {
|
|
5841
|
-
iconWrapper: material.css(_templateObject$
|
|
5842
|
-
description: material.css(_templateObject2$
|
|
5843
|
-
points: material.css(_templateObject3$
|
|
5810
|
+
iconWrapper: material.css(_templateObject$a || (_templateObject$a = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 144px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(8)),
|
|
5811
|
+
description: material.css(_templateObject2$8 || (_templateObject2$8 = _taggedTemplateLiteral(["\n margin-top: ", ";\n padding: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n "])), theme.spacing(10), theme.spacing(0, 2), theme.palette.text.primary),
|
|
5812
|
+
points: material.css(_templateObject3$7 || (_templateObject3$7 = _taggedTemplateLiteral(["\n color: ", ";\n font-weight: 700;\n "])), theme.palette.primary.main)
|
|
5844
5813
|
};
|
|
5845
5814
|
if (!loadingType) {
|
|
5846
5815
|
return jsxRuntime.jsxs(WrapperModal, {
|
|
@@ -5872,7 +5841,7 @@ function PersonaEvaluation(_ref) {
|
|
|
5872
5841
|
});
|
|
5873
5842
|
}
|
|
5874
5843
|
|
|
5875
|
-
var _templateObject$
|
|
5844
|
+
var _templateObject$9, _templateObject2$7;
|
|
5876
5845
|
const LoadingCopiesByType = {
|
|
5877
5846
|
verificationStatus: {
|
|
5878
5847
|
description: "Checking your verification status..."
|
|
@@ -6077,8 +6046,8 @@ function SecuritizeEvaluation(_ref) {
|
|
|
6077
6046
|
onClose: () => setOpenSnackBar(false)
|
|
6078
6047
|
});
|
|
6079
6048
|
const styles = {
|
|
6080
|
-
iconWrapper: material.css(_templateObject$
|
|
6081
|
-
description: material.css(_templateObject2$
|
|
6049
|
+
iconWrapper: material.css(_templateObject$9 || (_templateObject$9 = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n & > img {\n width: 144px;\n }\n "])), theme.cssMixins.rowCentered, theme.spacing(8)),
|
|
6050
|
+
description: material.css(_templateObject2$7 || (_templateObject2$7 = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n padding: ", ";\n font-weight: 400;\n font-size: 16px;\n color: ", ";\n "])), theme.cssMixins.rowCentered, theme.spacing(10), theme.spacing(0, 2), theme.palette.text.primary)
|
|
6082
6051
|
};
|
|
6083
6052
|
if (!loadingType) {
|
|
6084
6053
|
return jsxRuntime.jsxs(WrapperModal, {
|
|
@@ -6134,7 +6103,7 @@ function Evaluation$1(_ref) {
|
|
|
6134
6103
|
return null;
|
|
6135
6104
|
}
|
|
6136
6105
|
|
|
6137
|
-
function ChooseAmount$
|
|
6106
|
+
function ChooseAmount$4(_ref) {
|
|
6138
6107
|
let {
|
|
6139
6108
|
poolInfo,
|
|
6140
6109
|
lpConfig,
|
|
@@ -6217,7 +6186,7 @@ function ChooseAmount$7(_ref) {
|
|
|
6217
6186
|
});
|
|
6218
6187
|
}
|
|
6219
6188
|
|
|
6220
|
-
function ApproveAllowance$
|
|
6189
|
+
function ApproveAllowance$3(_ref) {
|
|
6221
6190
|
let {
|
|
6222
6191
|
poolInfo
|
|
6223
6192
|
} = _ref;
|
|
@@ -6234,7 +6203,7 @@ function ApproveAllowance$4(_ref) {
|
|
|
6234
6203
|
});
|
|
6235
6204
|
}
|
|
6236
6205
|
|
|
6237
|
-
function Transfer$
|
|
6206
|
+
function Transfer$5(_ref) {
|
|
6238
6207
|
let {
|
|
6239
6208
|
poolInfo,
|
|
6240
6209
|
trancheType
|
|
@@ -6266,7 +6235,7 @@ function Transfer$8(_ref) {
|
|
|
6266
6235
|
});
|
|
6267
6236
|
}
|
|
6268
6237
|
|
|
6269
|
-
function Success$
|
|
6238
|
+
function Success$4(_ref) {
|
|
6270
6239
|
let {
|
|
6271
6240
|
poolInfo,
|
|
6272
6241
|
lpConfig,
|
|
@@ -6329,8 +6298,9 @@ function Success$5(_ref) {
|
|
|
6329
6298
|
}, [campaign, dispatch, handleAction, isFirstTimeNotifiUser, notifiChainSupported]);
|
|
6330
6299
|
const content = ["You successfully supplied ".concat(shared.formatMoney(supplyAmount), " ").concat(symbol, ".")];
|
|
6331
6300
|
const getSubContent = () => {
|
|
6332
|
-
const
|
|
6333
|
-
|
|
6301
|
+
const redemptionTime = dayjs__default["default"]().add(lpConfig.withdrawalLockoutPeriodInDays, 'day').date(1);
|
|
6302
|
+
const withdrawTime = redemptionTime.add(1, 'month');
|
|
6303
|
+
return ["You can begin submitting redemption requests on ".concat(shared.timeUtil.timestampToLL(redemptionTime.unix()), ", which can be redeemed starting ").concat(shared.timeUtil.timestampToLL(withdrawTime.unix()), ".")];
|
|
6334
6304
|
};
|
|
6335
6305
|
const getButtonText = () => {
|
|
6336
6306
|
if (hasNextStep) {
|
|
@@ -6360,11 +6330,12 @@ function Notifications$1(_ref) {
|
|
|
6360
6330
|
}
|
|
6361
6331
|
}, [campaign, dispatch, handleAction]);
|
|
6362
6332
|
return jsxRuntime.jsx(NotifiSubscriptionModal, {
|
|
6333
|
+
successText: campaign ? 'VIEW POINTS' : undefined,
|
|
6363
6334
|
handleSuccess: handleUserAction
|
|
6364
6335
|
});
|
|
6365
6336
|
}
|
|
6366
6337
|
|
|
6367
|
-
var _templateObject$
|
|
6338
|
+
var _templateObject$8, _templateObject2$6, _templateObject3$6, _templateObject4$4, _templateObject5, _templateObject6, _templateObject7;
|
|
6368
6339
|
var STATE = /*#__PURE__*/function (STATE) {
|
|
6369
6340
|
STATE["Loading"] = "Loading";
|
|
6370
6341
|
STATE["SignIn"] = "SignIn";
|
|
@@ -6452,13 +6423,13 @@ function PointsEarned(_ref) {
|
|
|
6452
6423
|
handleAction();
|
|
6453
6424
|
}, [dispatch, handleAction, reset]);
|
|
6454
6425
|
const styles = {
|
|
6455
|
-
wrapper: material.css(_templateObject$
|
|
6456
|
-
congrats: material.css(_templateObject2$
|
|
6457
|
-
ribbon: material.css(_templateObject3$
|
|
6458
|
-
ribbonContent: material.css(_templateObject4$
|
|
6459
|
-
entirePoints: material.css(_templateObject5
|
|
6460
|
-
entirePointsDetails: material.css(_templateObject6
|
|
6461
|
-
everyday: material.css(_templateObject7
|
|
6426
|
+
wrapper: material.css(_templateObject$8 || (_templateObject$8 = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
6427
|
+
congrats: material.css(_templateObject2$6 || (_templateObject2$6 = _taggedTemplateLiteral(["\n margin: ", ";\n "])), theme.spacing(-4, -4.5, 0, -4.5)),
|
|
6428
|
+
ribbon: material.css(_templateObject3$6 || (_templateObject3$6 = _taggedTemplateLiteral(["\n position: relative;\n ", ";\n font-weight: 700;\n margin-top: ", ";\n color: ", ";\n font-size: 20px;\n line-height: 160%;\n letter-spacing: 0.15px;\n "])), theme.cssMixins.rowHCentered, theme.spacing(-8), theme.palette.text.primary),
|
|
6429
|
+
ribbonContent: material.css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteral(["\n ", ";\n position: absolute;\n top: ", ";\n\n svg {\n margin-right: ", ";\n }\n "])), theme.cssMixins.rowVCentered, theme.spacing(1), theme.spacing(1)),
|
|
6430
|
+
entirePoints: material.css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n color: ", ";\n text-align: center;\n font-weight: 700;\n font-size: 20px;\n line-height: 160%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n "])), theme.palette.text.tertiary, theme.spacing(7)),
|
|
6431
|
+
entirePointsDetails: material.css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n color: ", ";\n text-align: center;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n "])), theme.palette.text.tertiary, theme.spacing(4)),
|
|
6432
|
+
everyday: material.css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n font-weight: 700;\n "])))
|
|
6462
6433
|
};
|
|
6463
6434
|
if (state === STATE.SignIn) {
|
|
6464
6435
|
return jsxRuntime.jsx(SignIn, {
|
|
@@ -6589,7 +6560,7 @@ function LendSupplyV2(_ref) {
|
|
|
6589
6560
|
loadingTitle: "Supply ".concat(poolUnderlyingToken.symbol),
|
|
6590
6561
|
handleClose: handleClose,
|
|
6591
6562
|
handleSuccess: handleSuccess,
|
|
6592
|
-
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche
|
|
6563
|
+
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche, {
|
|
6593
6564
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
6594
6565
|
selectedTranche: selectedTranche,
|
|
6595
6566
|
changeTranche: setSelectedTranche
|
|
@@ -6600,19 +6571,19 @@ function LendSupplyV2(_ref) {
|
|
|
6600
6571
|
changeTranche: setSelectedTranche,
|
|
6601
6572
|
pointsTestnetExperience: pointsTestnetExperience,
|
|
6602
6573
|
campaign: campaign
|
|
6603
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
6574
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$4, {
|
|
6604
6575
|
poolInfo: poolInfo,
|
|
6605
6576
|
lpConfig: lpConfig,
|
|
6606
6577
|
juniorAssets: juniorAssets,
|
|
6607
6578
|
seniorAssets: seniorAssets,
|
|
6608
6579
|
selectedTranche: selectedTranche,
|
|
6609
6580
|
isUniTranche: isUniTranche
|
|
6610
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
6581
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$3, {
|
|
6611
6582
|
poolInfo: poolInfo
|
|
6612
|
-
}), step === WIDGET_STEP.Transfer && selectedTranche && jsxRuntime.jsx(Transfer$
|
|
6583
|
+
}), step === WIDGET_STEP.Transfer && selectedTranche && jsxRuntime.jsx(Transfer$5, {
|
|
6613
6584
|
poolInfo: poolInfo,
|
|
6614
6585
|
trancheType: selectedTranche
|
|
6615
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
6586
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$4, {
|
|
6616
6587
|
poolInfo: poolInfo,
|
|
6617
6588
|
lpConfig: lpConfig,
|
|
6618
6589
|
campaign: campaign,
|
|
@@ -6677,7 +6648,7 @@ function CheckWithdrawable(_ref) {
|
|
|
6677
6648
|
});
|
|
6678
6649
|
}
|
|
6679
6650
|
|
|
6680
|
-
function ChooseAmount$
|
|
6651
|
+
function ChooseAmount$3(_ref) {
|
|
6681
6652
|
let {
|
|
6682
6653
|
lenderPosition,
|
|
6683
6654
|
poolBalance,
|
|
@@ -6715,7 +6686,7 @@ function ChooseAmount$6(_ref) {
|
|
|
6715
6686
|
});
|
|
6716
6687
|
}
|
|
6717
6688
|
|
|
6718
|
-
function Transfer$
|
|
6689
|
+
function Transfer$4(_ref) {
|
|
6719
6690
|
let {
|
|
6720
6691
|
poolInfo
|
|
6721
6692
|
} = _ref;
|
|
@@ -6738,7 +6709,7 @@ function Transfer$7(_ref) {
|
|
|
6738
6709
|
});
|
|
6739
6710
|
}
|
|
6740
6711
|
|
|
6741
|
-
function Success$
|
|
6712
|
+
function Success$3(_ref) {
|
|
6742
6713
|
let {
|
|
6743
6714
|
poolInfo,
|
|
6744
6715
|
handleAction
|
|
@@ -6828,13 +6799,13 @@ function LendWithdraw(_ref) {
|
|
|
6828
6799
|
children: [step === WIDGET_STEP.CheckWithdrawable && jsxRuntime.jsx(CheckWithdrawable, {
|
|
6829
6800
|
poolInfo: poolInfo,
|
|
6830
6801
|
handleClose: handleClose
|
|
6831
|
-
}), step === WIDGET_STEP.ChooseAmount && lenderPosition && poolBalance && jsxRuntime.jsx(ChooseAmount$
|
|
6802
|
+
}), step === WIDGET_STEP.ChooseAmount && lenderPosition && poolBalance && jsxRuntime.jsx(ChooseAmount$3, {
|
|
6832
6803
|
poolInfo: poolInfo,
|
|
6833
6804
|
lenderPosition: lenderPosition,
|
|
6834
6805
|
poolBalance: poolBalance
|
|
6835
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
6806
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$4, {
|
|
6836
6807
|
poolInfo: poolInfo
|
|
6837
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
6808
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$3, {
|
|
6838
6809
|
poolInfo: poolInfo,
|
|
6839
6810
|
handleAction: handleClose
|
|
6840
6811
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
@@ -6846,7 +6817,7 @@ function LendWithdraw(_ref) {
|
|
|
6846
6817
|
});
|
|
6847
6818
|
}
|
|
6848
6819
|
|
|
6849
|
-
var _templateObject$
|
|
6820
|
+
var _templateObject$7, _templateObject2$5, _templateObject3$5, _templateObject4$3;
|
|
6850
6821
|
function ConfirmTransfer$1(_ref) {
|
|
6851
6822
|
let {
|
|
6852
6823
|
poolInfo,
|
|
@@ -6888,10 +6859,10 @@ function ConfirmTransfer$1(_ref) {
|
|
|
6888
6859
|
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
6889
6860
|
};
|
|
6890
6861
|
const styles = {
|
|
6891
|
-
itemWrapper: material.css(_templateObject$
|
|
6892
|
-
item: material.css(_templateObject2$
|
|
6893
|
-
itemValue: material.css(_templateObject3$
|
|
6894
|
-
divider: material.css(_templateObject4$
|
|
6862
|
+
itemWrapper: material.css(_templateObject$7 || (_templateObject$7 = _taggedTemplateLiteral(["\n margin-top: ", ";\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 175%;\n letter-spacing: 0.15px;\n "])), theme.spacing(9), theme.palette.text.primary),
|
|
6863
|
+
item: material.css(_templateObject2$5 || (_templateObject2$5 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: ", ";\n "])), theme.spacing(3)),
|
|
6864
|
+
itemValue: material.css(_templateObject3$5 || (_templateObject3$5 = _taggedTemplateLiteral(["\n font-size: 20px;\n font-weight: 700;\n "]))),
|
|
6865
|
+
divider: material.css(_templateObject4$3 || (_templateObject4$3 = _taggedTemplateLiteral(["\n border-color: ", ";\n margin-bottom: ", ";\n "])), theme.palette.divider, theme.spacing(3))
|
|
6895
6866
|
};
|
|
6896
6867
|
return jsxRuntime.jsxs(WrapperModal, {
|
|
6897
6868
|
title: "Withdraw ".concat(symbol),
|
|
@@ -6935,7 +6906,7 @@ function ConfirmTransfer$1(_ref) {
|
|
|
6935
6906
|
});
|
|
6936
6907
|
}
|
|
6937
6908
|
|
|
6938
|
-
function Transfer$
|
|
6909
|
+
function Transfer$3(_ref) {
|
|
6939
6910
|
let {
|
|
6940
6911
|
poolInfo,
|
|
6941
6912
|
tranche,
|
|
@@ -6961,7 +6932,7 @@ function Transfer$6(_ref) {
|
|
|
6961
6932
|
});
|
|
6962
6933
|
}
|
|
6963
6934
|
|
|
6964
|
-
function Done
|
|
6935
|
+
function Done(_ref) {
|
|
6965
6936
|
let {
|
|
6966
6937
|
poolUnderlyingToken,
|
|
6967
6938
|
withdrawAmount,
|
|
@@ -7061,11 +7032,11 @@ function LendWithdrawV2(_ref) {
|
|
|
7061
7032
|
redemptionStatus: redemptionStatus,
|
|
7062
7033
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7063
7034
|
poolIsClosed: poolIsClosed
|
|
7064
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$
|
|
7035
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer$3, {
|
|
7065
7036
|
poolInfo: poolInfo,
|
|
7066
7037
|
tranche: trancheType,
|
|
7067
7038
|
poolIsClosed: poolIsClosed
|
|
7068
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Done
|
|
7039
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Done, {
|
|
7069
7040
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7070
7041
|
withdrawAmount: redemptionStatus.withdrawableAssets,
|
|
7071
7042
|
handleAction: handleClose
|
|
@@ -7078,7 +7049,7 @@ function LendWithdrawV2(_ref) {
|
|
|
7078
7049
|
});
|
|
7079
7050
|
}
|
|
7080
7051
|
|
|
7081
|
-
function ChooseAmount$
|
|
7052
|
+
function ChooseAmount$2(_ref) {
|
|
7082
7053
|
let {
|
|
7083
7054
|
poolInfo,
|
|
7084
7055
|
poolUnderlyingToken,
|
|
@@ -7142,7 +7113,7 @@ function ChooseAmount$5(_ref) {
|
|
|
7142
7113
|
});
|
|
7143
7114
|
}
|
|
7144
7115
|
|
|
7145
|
-
function ApproveAllowance$
|
|
7116
|
+
function ApproveAllowance$2(_ref) {
|
|
7146
7117
|
let {
|
|
7147
7118
|
poolInfo,
|
|
7148
7119
|
poolUnderlyingToken
|
|
@@ -7201,7 +7172,7 @@ function ApproveReceivable$1(_ref) {
|
|
|
7201
7172
|
});
|
|
7202
7173
|
}
|
|
7203
7174
|
|
|
7204
|
-
function Transfer$
|
|
7175
|
+
function Transfer$2(_ref) {
|
|
7205
7176
|
let {
|
|
7206
7177
|
poolInfo,
|
|
7207
7178
|
tokenId
|
|
@@ -7246,7 +7217,7 @@ function Transfer$5(_ref) {
|
|
|
7246
7217
|
});
|
|
7247
7218
|
}
|
|
7248
7219
|
|
|
7249
|
-
function Success$
|
|
7220
|
+
function Success$2(_ref) {
|
|
7250
7221
|
let {
|
|
7251
7222
|
poolUnderlyingToken,
|
|
7252
7223
|
creditRecord,
|
|
@@ -7342,21 +7313,21 @@ function ReceivableBackedCreditLineBorrowV2(_ref) {
|
|
|
7342
7313
|
loadingTitle: "Borrow",
|
|
7343
7314
|
handleClose: handleClose,
|
|
7344
7315
|
handleSuccess: handleSuccessCallback,
|
|
7345
|
-
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$
|
|
7316
|
+
children: [step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$2, {
|
|
7346
7317
|
poolInfo: poolInfo,
|
|
7347
7318
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7348
7319
|
accountStats: accountStats,
|
|
7349
7320
|
tokenId: tokenId
|
|
7350
|
-
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$
|
|
7321
|
+
}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance$2, {
|
|
7351
7322
|
poolInfo: poolInfo,
|
|
7352
7323
|
poolUnderlyingToken: poolUnderlyingToken
|
|
7353
7324
|
}), step === WIDGET_STEP.ApproveNFT && tokenId && jsxRuntime.jsx(ApproveReceivable$1, {
|
|
7354
7325
|
poolInfo: poolInfo,
|
|
7355
7326
|
tokenId: tokenId
|
|
7356
|
-
}), step === WIDGET_STEP.Transfer && tokenId && jsxRuntime.jsx(Transfer$
|
|
7327
|
+
}), step === WIDGET_STEP.Transfer && tokenId && jsxRuntime.jsx(Transfer$2, {
|
|
7357
7328
|
poolInfo: poolInfo,
|
|
7358
7329
|
tokenId: tokenId
|
|
7359
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$
|
|
7330
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success$2, {
|
|
7360
7331
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7361
7332
|
handleAction: setupNotificationsOrClose,
|
|
7362
7333
|
creditRecord: accountStats.creditRecord,
|
|
@@ -7371,7 +7342,7 @@ function ReceivableBackedCreditLineBorrowV2(_ref) {
|
|
|
7371
7342
|
});
|
|
7372
7343
|
}
|
|
7373
7344
|
|
|
7374
|
-
var _templateObject$
|
|
7345
|
+
var _templateObject$6, _templateObject2$4, _templateObject3$4;
|
|
7375
7346
|
function ChoosePaymentType(_ref) {
|
|
7376
7347
|
let {
|
|
7377
7348
|
paymentType,
|
|
@@ -7380,9 +7351,9 @@ function ChoosePaymentType(_ref) {
|
|
|
7380
7351
|
const theme = material.useTheme();
|
|
7381
7352
|
const dispatch = useAppDispatch();
|
|
7382
7353
|
const styles = {
|
|
7383
|
-
subTitle: material.css(_templateObject$
|
|
7384
|
-
radioGroup: material.css(_templateObject2$
|
|
7385
|
-
formControl: material.css(_templateObject3$
|
|
7354
|
+
subTitle: material.css(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
7355
|
+
radioGroup: material.css(_templateObject2$4 || (_templateObject2$4 = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
7356
|
+
formControl: material.css(_templateObject3$4 || (_templateObject3$4 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
7386
7357
|
};
|
|
7387
7358
|
const handleNext = () => {
|
|
7388
7359
|
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
@@ -7427,7 +7398,7 @@ function ChoosePaymentType(_ref) {
|
|
|
7427
7398
|
});
|
|
7428
7399
|
}
|
|
7429
7400
|
|
|
7430
|
-
function ChooseAmount$
|
|
7401
|
+
function ChooseAmount$1(_ref) {
|
|
7431
7402
|
let {
|
|
7432
7403
|
payoffAmount: payoffAmountBN,
|
|
7433
7404
|
poolInfo,
|
|
@@ -7481,7 +7452,7 @@ function ChooseAmount$4(_ref) {
|
|
|
7481
7452
|
});
|
|
7482
7453
|
}
|
|
7483
7454
|
|
|
7484
|
-
function ApproveAllowance$
|
|
7455
|
+
function ApproveAllowance$1(_ref) {
|
|
7485
7456
|
let {
|
|
7486
7457
|
poolInfo,
|
|
7487
7458
|
poolUnderlyingToken,
|
|
@@ -7609,7 +7580,7 @@ function ApproveReceivable(_ref) {
|
|
|
7609
7580
|
});
|
|
7610
7581
|
}
|
|
7611
7582
|
|
|
7612
|
-
function Transfer$
|
|
7583
|
+
function Transfer$1(_ref) {
|
|
7613
7584
|
let {
|
|
7614
7585
|
poolInfo,
|
|
7615
7586
|
poolUnderlyingToken,
|
|
@@ -7667,7 +7638,7 @@ function Transfer$4(_ref) {
|
|
|
7667
7638
|
});
|
|
7668
7639
|
}
|
|
7669
7640
|
|
|
7670
|
-
function Success$
|
|
7641
|
+
function Success$1(_ref) {
|
|
7671
7642
|
let {
|
|
7672
7643
|
poolUnderlyingToken,
|
|
7673
7644
|
paymentType,
|
|
@@ -7760,12 +7731,12 @@ function ReceivableBackedCreditLinePaymentV2(_ref) {
|
|
|
7760
7731
|
children: [step === WIDGET_STEP.ChoosePaymentType && jsxRuntime.jsx(ChoosePaymentType, {
|
|
7761
7732
|
paymentType: paymentType,
|
|
7762
7733
|
changePaymentType: setPaymentType
|
|
7763
|
-
}), step === WIDGET_STEP.ChooseAmount && paymentType && jsxRuntime.jsx(ChooseAmount$
|
|
7734
|
+
}), step === WIDGET_STEP.ChooseAmount && paymentType && jsxRuntime.jsx(ChooseAmount$1, {
|
|
7764
7735
|
poolInfo: poolInfo,
|
|
7765
7736
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7766
7737
|
payoffAmount: payoffAmount,
|
|
7767
7738
|
paymentType: paymentType
|
|
7768
|
-
}), step === WIDGET_STEP.ApproveAllowance && paymentType && jsxRuntime.jsx(ApproveAllowance$
|
|
7739
|
+
}), step === WIDGET_STEP.ApproveAllowance && paymentType && jsxRuntime.jsx(ApproveAllowance$1, {
|
|
7769
7740
|
poolInfo: poolInfo,
|
|
7770
7741
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7771
7742
|
paymentType: paymentType
|
|
@@ -7776,14 +7747,14 @@ function ReceivableBackedCreditLinePaymentV2(_ref) {
|
|
|
7776
7747
|
}), step === WIDGET_STEP.ApproveNFT && borrowTokenId && jsxRuntime.jsx(ApproveReceivable, {
|
|
7777
7748
|
poolInfo: poolInfo,
|
|
7778
7749
|
tokenId: borrowTokenId
|
|
7779
|
-
}), step === WIDGET_STEP.Transfer && paymentType && jsxRuntime.jsx(Transfer$
|
|
7750
|
+
}), step === WIDGET_STEP.Transfer && paymentType && jsxRuntime.jsx(Transfer$1, {
|
|
7780
7751
|
poolInfo: poolInfo,
|
|
7781
7752
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7782
7753
|
paymentType: paymentType,
|
|
7783
7754
|
paymentTokenId: tokenId,
|
|
7784
7755
|
borrowTokenId: borrowTokenId,
|
|
7785
7756
|
setSuccessTxReceipt: setSuccessTxReceipt
|
|
7786
|
-
}), step === WIDGET_STEP.Done && paymentType && successTxReceipt && jsxRuntime.jsx(Success$
|
|
7757
|
+
}), step === WIDGET_STEP.Done && paymentType && successTxReceipt && jsxRuntime.jsx(Success$1, {
|
|
7787
7758
|
poolUnderlyingToken: poolUnderlyingToken,
|
|
7788
7759
|
paymentType: paymentType,
|
|
7789
7760
|
handleAction: handleClose,
|
|
@@ -7823,7 +7794,7 @@ const useElementDimensions = ref => {
|
|
|
7823
7794
|
return dimensions;
|
|
7824
7795
|
};
|
|
7825
7796
|
|
|
7826
|
-
var _templateObject$
|
|
7797
|
+
var _templateObject$5, _templateObject2$3, _templateObject3$3;
|
|
7827
7798
|
// @TODO: Move HumaTable along with Superfluid widget to Dapp package
|
|
7828
7799
|
function HumaTable(_ref) {
|
|
7829
7800
|
let {
|
|
@@ -7842,9 +7813,9 @@ function HumaTable(_ref) {
|
|
|
7842
7813
|
} = useElementDimensions(ref);
|
|
7843
7814
|
const isLoading = !columns || !rows;
|
|
7844
7815
|
const styles = {
|
|
7845
|
-
tableHeader: material.css(_templateObject$
|
|
7846
|
-
tableBody: material.css(_templateObject2$
|
|
7847
|
-
empty: material.css(_templateObject3$
|
|
7816
|
+
tableHeader: material.css(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteral(["\n font-weight: 400;\n ", "\n font-size: 14px;\n color: rgba(0, 0, 0, 0.87);\n "])), theme.cssMixins.rowVCentered),
|
|
7817
|
+
tableBody: material.css(_templateObject2$3 || (_templateObject2$3 = _taggedTemplateLiteral(["\n font-weight: 400;\n font-size: 14px;\n color: rgba(0, 0, 0, 0.87);\n "]))),
|
|
7818
|
+
empty: material.css(_templateObject3$3 || (_templateObject3$3 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n align-items: center;\n margin-top: ", ";\n font-weight: 400;\n font-size: 14px;\n "])), theme.spacing(2))
|
|
7848
7819
|
};
|
|
7849
7820
|
const handleChangePage = (event, newPage) => {
|
|
7850
7821
|
setPage(newPage);
|
|
@@ -7971,8 +7942,8 @@ function HumaTable(_ref) {
|
|
|
7971
7942
|
});
|
|
7972
7943
|
}
|
|
7973
7944
|
|
|
7974
|
-
var _templateObject$
|
|
7975
|
-
const GET_ACTIVITY = client.gql(_templateObject$
|
|
7945
|
+
var _templateObject$4, _templateObject2$2, _templateObject3$2, _templateObject4$2;
|
|
7946
|
+
const GET_ACTIVITY = client.gql(_templateObject$4 || (_templateObject$4 = _taggedTemplateLiteral(["\n query GetCreditLineActivity($pool: String!, $owner: String!, $event: [Int]!) {\n creditEvents(\n where: { pool: $pool, owner: $owner, event_in: $event }\n orderBy: timestamp\n orderDirection: desc\n ) {\n id\n amount\n timestamp\n owner\n pool\n event\n }\n }\n"])));
|
|
7976
7947
|
const columns = [{
|
|
7977
7948
|
title: 'Action',
|
|
7978
7949
|
dataIndex: 'eventText'
|
|
@@ -8033,9 +8004,9 @@ function Activity(_ref) {
|
|
|
8033
8004
|
setEvents(result);
|
|
8034
8005
|
}, [data === null || data === void 0 ? void 0 : data.creditEvents, decimals]);
|
|
8035
8006
|
const styles = {
|
|
8036
|
-
wrapper: material.css(_templateObject2$
|
|
8037
|
-
title: material.css(_templateObject3$
|
|
8038
|
-
tableWrapper: material.css(_templateObject4$
|
|
8007
|
+
wrapper: material.css(_templateObject2$2 || (_templateObject2$2 = _taggedTemplateLiteral(["\n margin-top: ", ";\n "])), theme.spacing(9)),
|
|
8008
|
+
title: material.css(_templateObject3$2 || (_templateObject3$2 = _taggedTemplateLiteral(["\n font-weight: 800;\n font-size: 24px;\n color: ", ";\n margin-bottom: ", ";\n "])), theme.palette.text.primary, theme.spacing(2)),
|
|
8009
|
+
tableWrapper: material.css(_templateObject4$2 || (_templateObject4$2 = _taggedTemplateLiteral(["\n box-shadow: 0px 4px 40px 8px rgba(0, 0, 0, 0.04);\n border-radius: 24px;\n padding: ", ";\n "])), getPadding())
|
|
8039
8010
|
};
|
|
8040
8011
|
return jsxRuntime.jsxs(material.Box, {
|
|
8041
8012
|
css: styles.wrapper,
|
|
@@ -8106,7 +8077,7 @@ function Evaluation(_ref) {
|
|
|
8106
8077
|
});
|
|
8107
8078
|
}
|
|
8108
8079
|
|
|
8109
|
-
function ChooseAmount
|
|
8080
|
+
function ChooseAmount(_ref) {
|
|
8110
8081
|
var _poolInfo$extra;
|
|
8111
8082
|
let {
|
|
8112
8083
|
poolInfo,
|
|
@@ -8220,7 +8191,7 @@ function ConfirmTransfer() {
|
|
|
8220
8191
|
});
|
|
8221
8192
|
}
|
|
8222
8193
|
|
|
8223
|
-
function ApproveAllowance
|
|
8194
|
+
function ApproveAllowance(_ref) {
|
|
8224
8195
|
let {
|
|
8225
8196
|
poolInfo
|
|
8226
8197
|
} = _ref;
|
|
@@ -8292,7 +8263,7 @@ function Permit(_ref) {
|
|
|
8292
8263
|
});
|
|
8293
8264
|
}
|
|
8294
8265
|
|
|
8295
|
-
function Transfer
|
|
8266
|
+
function Transfer(_ref) {
|
|
8296
8267
|
let {
|
|
8297
8268
|
poolInfo
|
|
8298
8269
|
} = _ref;
|
|
@@ -8321,7 +8292,7 @@ function Transfer$3(_ref) {
|
|
|
8321
8292
|
});
|
|
8322
8293
|
}
|
|
8323
8294
|
|
|
8324
|
-
function Success
|
|
8295
|
+
function Success(_ref) {
|
|
8325
8296
|
let {
|
|
8326
8297
|
handleAction
|
|
8327
8298
|
} = _ref;
|
|
@@ -8371,19 +8342,19 @@ function StreamFactoringBorrow(_ref) {
|
|
|
8371
8342
|
poolInfo: poolInfo,
|
|
8372
8343
|
payerAddress: payerAddress,
|
|
8373
8344
|
superToken: superToken
|
|
8374
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount
|
|
8345
|
+
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount, {
|
|
8375
8346
|
poolInfo: poolInfo,
|
|
8376
8347
|
currentFlowRate: currentFlowRate
|
|
8377
|
-
}), step === WIDGET_STEP.ConfirmTransfer && jsxRuntime.jsx(ConfirmTransfer, {}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance
|
|
8348
|
+
}), step === WIDGET_STEP.ConfirmTransfer && jsxRuntime.jsx(ConfirmTransfer, {}), step === WIDGET_STEP.ApproveAllowance && jsxRuntime.jsx(ApproveAllowance, {
|
|
8378
8349
|
poolInfo: poolInfo
|
|
8379
8350
|
}), step === WIDGET_STEP.Permit && account && jsxRuntime.jsx(Permit, {
|
|
8380
8351
|
poolInfo: poolInfo,
|
|
8381
8352
|
payerAddress: payerAddress,
|
|
8382
8353
|
borrower: account,
|
|
8383
8354
|
superToken: superToken
|
|
8384
|
-
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer
|
|
8355
|
+
}), step === WIDGET_STEP.Transfer && jsxRuntime.jsx(Transfer, {
|
|
8385
8356
|
poolInfo: poolInfo
|
|
8386
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success
|
|
8357
|
+
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success, {
|
|
8387
8358
|
handleAction: handleClose
|
|
8388
8359
|
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
8389
8360
|
title: "Stream Borrowing",
|
|
@@ -8393,7 +8364,7 @@ function StreamFactoringBorrow(_ref) {
|
|
|
8393
8364
|
});
|
|
8394
8365
|
}
|
|
8395
8366
|
|
|
8396
|
-
var _templateObject$
|
|
8367
|
+
var _templateObject$3, _templateObject2$1, _templateObject3$1, _templateObject4$1;
|
|
8397
8368
|
function UpcomingList(_ref) {
|
|
8398
8369
|
let {
|
|
8399
8370
|
items,
|
|
@@ -8419,10 +8390,10 @@ function UpcomingList(_ref) {
|
|
|
8419
8390
|
return theme.spacing(0, 2, 2, 2);
|
|
8420
8391
|
};
|
|
8421
8392
|
const styles = {
|
|
8422
|
-
title: material.css(_templateObject$
|
|
8423
|
-
description: material.css(_templateObject2$
|
|
8424
|
-
tableWrapper: material.css(_templateObject3$
|
|
8425
|
-
progress: material.css(_templateObject4$
|
|
8393
|
+
title: material.css(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n font-weight: 800;\n color: ", ";\n font-size: 24px;\n margin-bottom: ", ";\n "])), theme.palette.text.primary, theme.spacing(2)),
|
|
8394
|
+
description: material.css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\n font-weight: 400;\n color: ", ";\n font-size: 1rem;\n "])), theme.palette.text.primary),
|
|
8395
|
+
tableWrapper: material.css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral(["\n margin-top: ", ";\n padding: ", ";\n background: linear-gradient(180deg, #ffffff 0%, #ffffff 100%);\n border: 1px solid #ffffff;\n border-radius: 24px;\n position: relative;\n "])), theme.spacing(3), getPadding()),
|
|
8396
|
+
progress: material.css(_templateObject4$1 || (_templateObject4$1 = _taggedTemplateLiteral(["\n width: calc(100% - 30px);\n position: absolute;\n top: 0;\n left: ", ";\n "])), theme.spacing(2))
|
|
8426
8397
|
};
|
|
8427
8398
|
return jsxRuntime.jsxs(material.Box, {
|
|
8428
8399
|
children: [jsxRuntime.jsx(material.Box, {
|
|
@@ -8451,7 +8422,7 @@ function UpcomingList(_ref) {
|
|
|
8451
8422
|
});
|
|
8452
8423
|
}
|
|
8453
8424
|
|
|
8454
|
-
var _templateObject$
|
|
8425
|
+
var _templateObject$2, _templateObject2, _templateObject3, _templateObject4;
|
|
8455
8426
|
function _EMOTION_STRINGIFIED_CSS_ERROR__$2() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
8456
8427
|
var _ref2$1 = process.env.NODE_ENV === "production" ? {
|
|
8457
8428
|
name: "1llo5fb",
|
|
@@ -8529,10 +8500,10 @@ function FactoredList(_ref) {
|
|
|
8529
8500
|
return theme.spacing(0, 2, 2, 2);
|
|
8530
8501
|
};
|
|
8531
8502
|
const styles = {
|
|
8532
|
-
title: material.css(_templateObject$
|
|
8533
|
-
description: material.css(_templateObject2
|
|
8534
|
-
tableWrapper: material.css(_templateObject3
|
|
8535
|
-
progress: material.css(_templateObject4
|
|
8503
|
+
title: material.css(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n font-weight: 800;\n color: ", ";\n font-size: 24px;\n margin-bottom: ", ";\n "])), theme.palette.text.primary, theme.spacing(2)),
|
|
8504
|
+
description: material.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n font-weight: 400;\n color: ", ";\n font-size: 1rem;\n "])), theme.palette.text.primary),
|
|
8505
|
+
tableWrapper: material.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-top: ", ";\n padding: ", ";\n background: linear-gradient(180deg, #ffffff 0%, #ffffff 100%);\n border: 1px solid #ffffff;\n border-radius: 24px;\n position: relative;\n "])), theme.spacing(3), getPadding()),
|
|
8506
|
+
progress: material.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n width: calc(100% - 30px);\n position: absolute;\n top: 0;\n left: ", ";\n "])), theme.spacing(2))
|
|
8536
8507
|
};
|
|
8537
8508
|
return jsxRuntime.jsxs(material.Box, {
|
|
8538
8509
|
children: [jsxRuntime.jsxs(material.Box, {
|
|
@@ -8609,7 +8580,7 @@ function SuperfluidFactoredList(_ref) {
|
|
|
8609
8580
|
});
|
|
8610
8581
|
}
|
|
8611
8582
|
|
|
8612
|
-
var _templateObject$
|
|
8583
|
+
var _templateObject$1;
|
|
8613
8584
|
function TableActionButton(_ref) {
|
|
8614
8585
|
let {
|
|
8615
8586
|
title,
|
|
@@ -8617,7 +8588,7 @@ function TableActionButton(_ref) {
|
|
|
8617
8588
|
handleClick,
|
|
8618
8589
|
disabled = false
|
|
8619
8590
|
} = _ref;
|
|
8620
|
-
const styles = material.css(_templateObject$
|
|
8591
|
+
const styles = material.css(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n border: none;\n padding: 0;\n background: ", ";\n &:hover {\n border: none;\n }\n "])), disabled ? 'unset !important' : 'inherit');
|
|
8621
8592
|
return jsxRuntime.jsx(material.Button, {
|
|
8622
8593
|
className: className,
|
|
8623
8594
|
variant: disabled ? undefined : 'outlined',
|
|
@@ -8630,9 +8601,9 @@ function TableActionButton(_ref) {
|
|
|
8630
8601
|
});
|
|
8631
8602
|
}
|
|
8632
8603
|
|
|
8633
|
-
var _templateObject
|
|
8604
|
+
var _templateObject;
|
|
8634
8605
|
function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
8635
|
-
const GET_RECEIVED_STREAMS = client.gql(_templateObject
|
|
8606
|
+
const GET_RECEIVED_STREAMS = client.gql(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n query GetReceivedStreams($receiver: String!, $tokenIds: [String]!) {\n streams(\n where: { receiver: $receiver, token_in: $tokenIds, currentFlowRate_gt: 0 }\n orderBy: updatedAtTimestamp\n orderDirection: desc\n ) {\n id\n currentFlowRate\n sender {\n id\n }\n token {\n id\n symbol\n decimals\n }\n }\n }\n"])));
|
|
8636
8607
|
const getUpcomingColumns = (userHasActiveLoan, handleGetPaid) => [{
|
|
8637
8608
|
title: '',
|
|
8638
8609
|
dataIndex: 'icon',
|
|
@@ -8886,7 +8857,7 @@ const coreThemeConstants = {
|
|
|
8886
8857
|
borderRadius: {
|
|
8887
8858
|
md: 4
|
|
8888
8859
|
},
|
|
8889
|
-
fontFamily: ['
|
|
8860
|
+
fontFamily: ['Red-Hat-Display', '-apple-system', 'BlinkMacSystemFont', '"Segoe UI"', '"Helvetica Neue"', 'Arial', 'sans-serif', '"Apple Color Emoji"', '"Segoe UI Emoji"', '"Segoe UI Symbol"'].join(','),
|
|
8890
8861
|
letterSpacing: {
|
|
8891
8862
|
lg: '2px',
|
|
8892
8863
|
md: '1px',
|
|
@@ -9279,1126 +9250,80 @@ const themeHuma = material.createTheme(themeBase, {
|
|
|
9279
9250
|
components: components(themeBase)
|
|
9280
9251
|
});
|
|
9281
9252
|
|
|
9282
|
-
|
|
9283
|
-
function ChooseTranche$2(_ref) {
|
|
9284
|
-
let {
|
|
9285
|
-
poolUnderlyingToken,
|
|
9286
|
-
selectedTranche,
|
|
9287
|
-
changeTranche
|
|
9288
|
-
} = _ref;
|
|
9289
|
-
const theme = material.useTheme();
|
|
9290
|
-
const dispatch = useAppDispatch();
|
|
9291
|
-
const styles = {
|
|
9292
|
-
subTitle: material.css(_templateObject$3 || (_templateObject$3 = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
9293
|
-
radioGroup: material.css(_templateObject2$3 || (_templateObject2$3 = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
9294
|
-
formControl: material.css(_templateObject3$3 || (_templateObject3$3 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
9295
|
-
};
|
|
9296
|
-
const handleNext = () => {
|
|
9297
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9298
|
-
};
|
|
9299
|
-
const items = [{
|
|
9300
|
-
label: 'Senior',
|
|
9301
|
-
value: 'senior'
|
|
9302
|
-
}, {
|
|
9303
|
-
label: 'Junior',
|
|
9304
|
-
value: 'junior'
|
|
9305
|
-
}];
|
|
9306
|
-
return jsxRuntime.jsxs(WrapperModal, {
|
|
9307
|
-
title: "Supply ".concat(poolUnderlyingToken.symbol),
|
|
9308
|
-
children: [jsxRuntime.jsxs(material.FormControl, {
|
|
9309
|
-
children: [jsxRuntime.jsx(material.FormLabel, {
|
|
9310
|
-
css: styles.subTitle,
|
|
9311
|
-
children: "Select Tranche Type"
|
|
9312
|
-
}), jsxRuntime.jsx(material.RadioGroup, {
|
|
9313
|
-
"aria-labelledby": "buttons-group-label",
|
|
9314
|
-
name: "radio-buttons-group",
|
|
9315
|
-
css: styles.radioGroup,
|
|
9316
|
-
onChange: e => changeTranche(e.target.value),
|
|
9317
|
-
children: items.map(item => jsxRuntime.jsx(material.FormControlLabel, {
|
|
9318
|
-
value: item.value,
|
|
9319
|
-
control: jsxRuntime.jsx(material.Radio, {
|
|
9320
|
-
sx: {
|
|
9321
|
-
'& .MuiSvgIcon-root': {
|
|
9322
|
-
fontSize: 24
|
|
9323
|
-
}
|
|
9324
|
-
}
|
|
9325
|
-
}),
|
|
9326
|
-
label: item.label,
|
|
9327
|
-
css: styles.formControl
|
|
9328
|
-
}, item.label))
|
|
9329
|
-
})]
|
|
9330
|
-
}), jsxRuntime.jsx(BottomButton, {
|
|
9331
|
-
variant: "contained",
|
|
9332
|
-
disabled: !selectedTranche,
|
|
9333
|
-
onClick: handleNext,
|
|
9334
|
-
children: "NEXT"
|
|
9335
|
-
})]
|
|
9336
|
-
});
|
|
9337
|
-
}
|
|
9338
|
-
|
|
9339
|
-
function ChooseAmount$2(_ref) {
|
|
9253
|
+
function NotifiContextWrapper(_ref) {
|
|
9340
9254
|
let {
|
|
9341
|
-
|
|
9342
|
-
|
|
9343
|
-
tokenAccount,
|
|
9344
|
-
selectedTranche,
|
|
9345
|
-
isUniTranche
|
|
9255
|
+
chainId,
|
|
9256
|
+
children
|
|
9346
9257
|
} = _ref;
|
|
9347
|
-
const dispatch = useAppDispatch();
|
|
9348
|
-
const {
|
|
9349
|
-
symbol,
|
|
9350
|
-
decimals
|
|
9351
|
-
} = poolInfo.underlyingMint;
|
|
9352
|
-
const [currentAmount, setCurrentAmount] = React.useState(0);
|
|
9353
|
-
const balance = React.useMemo(() => new anchor.BN(tokenAccount.amount), [tokenAccount.amount]);
|
|
9354
9258
|
const {
|
|
9355
|
-
|
|
9356
|
-
|
|
9357
|
-
} =
|
|
9358
|
-
|
|
9359
|
-
|
|
9360
|
-
|
|
9361
|
-
seniorTrancheAssets,
|
|
9362
|
-
juniorTrancheAssets
|
|
9363
|
-
} = poolState;
|
|
9364
|
-
const juniorTrancheAssetsBN = new anchor.BN(juniorTrancheAssets);
|
|
9365
|
-
const seniorTrancheAssetsBN = new anchor.BN(seniorTrancheAssets);
|
|
9366
|
-
const totalDeployedBN = seniorTrancheAssetsBN.add(juniorTrancheAssetsBN);
|
|
9367
|
-
const totalAvailableCapBN = new anchor.BN(liquidityCap).sub(totalDeployedBN);
|
|
9368
|
-
const maxSeniorAssetsBN = juniorTrancheAssetsBN.muln(maxSeniorJuniorRatio);
|
|
9369
|
-
let seniorAvailableCapBN = maxSeniorAssetsBN.sub(seniorTrancheAssetsBN);
|
|
9370
|
-
seniorAvailableCapBN = seniorAvailableCapBN.gt(totalAvailableCapBN) ? totalAvailableCapBN : seniorAvailableCapBN;
|
|
9371
|
-
return {
|
|
9372
|
-
juniorAvailableCapBN: totalAvailableCapBN.sub(seniorAvailableCapBN),
|
|
9373
|
-
seniorAvailableCapBN
|
|
9374
|
-
};
|
|
9375
|
-
}, [poolState]);
|
|
9376
|
-
const handleChangeAmount = newAmount => {
|
|
9377
|
-
setCurrentAmount(newAmount);
|
|
9378
|
-
dispatch(setSupplyAmount(Number(newAmount)));
|
|
9379
|
-
};
|
|
9380
|
-
const handleAction = () => {
|
|
9381
|
-
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
9382
|
-
};
|
|
9383
|
-
const getTrancheCap = () => {
|
|
9384
|
-
if (selectedTranche === 'junior') {
|
|
9385
|
-
return juniorAvailableCapBN;
|
|
9386
|
-
}
|
|
9387
|
-
return seniorAvailableCapBN;
|
|
9388
|
-
};
|
|
9389
|
-
const getMinAmount = () => {
|
|
9390
|
-
const minAmount = poolState.minDepositAmount ? shared.SolanaTokenUtils.formatUnits(new anchor.BN(poolState.minDepositAmount), decimals) : 0;
|
|
9391
|
-
return Math.max(0, Math.ceil(Number(minAmount)));
|
|
9392
|
-
};
|
|
9393
|
-
const getMaxAmount = () => {
|
|
9394
|
-
const trancheCap = getTrancheCap();
|
|
9395
|
-
return balance.gt(trancheCap) ? trancheCap : balance;
|
|
9396
|
-
};
|
|
9397
|
-
const getInfos = () => {
|
|
9398
|
-
const trancheCap = getTrancheCap();
|
|
9399
|
-
const currentAmountBN = shared.SolanaTokenUtils.parseUnits(String(currentAmount), decimals);
|
|
9400
|
-
const remainingCap = trancheCap.sub(currentAmountBN);
|
|
9401
|
-
if (remainingCap.ltn(0)) {
|
|
9402
|
-
return ['0 remaining capacity'];
|
|
9259
|
+
account,
|
|
9260
|
+
provider
|
|
9261
|
+
} = core.useWeb3React();
|
|
9262
|
+
const signer = React.useMemo(() => {
|
|
9263
|
+
if (provider instanceof ethers.providers.JsonRpcProvider) {
|
|
9264
|
+
return provider.getSigner();
|
|
9403
9265
|
}
|
|
9404
|
-
return
|
|
9405
|
-
};
|
|
9406
|
-
|
|
9407
|
-
title: "Enter Amount",
|
|
9408
|
-
subTitle: "Depositing to ".concat(isUniTranche ? 'uni tranche' : selectedTranche, " tranche"),
|
|
9409
|
-
tokenSymbol: symbol,
|
|
9410
|
-
currentAmount: currentAmount,
|
|
9411
|
-
handleChangeAmount: handleChangeAmount,
|
|
9412
|
-
minimumAmount: getMinAmount(),
|
|
9413
|
-
maxAmount: Number(shared.SolanaTokenUtils.formatUnits(getMaxAmount(), decimals)),
|
|
9414
|
-
maxAmountTitle: "".concat(shared.formatNumber(shared.SolanaTokenUtils.formatUnits(balance, decimals)), " balance"),
|
|
9415
|
-
infos: getInfos(),
|
|
9416
|
-
handleAction: handleAction,
|
|
9417
|
-
actionText: "SUPPLY"
|
|
9418
|
-
});
|
|
9419
|
-
}
|
|
9420
|
-
|
|
9421
|
-
function SolanaViewOnExplorer(_ref) {
|
|
9422
|
-
let {
|
|
9423
|
-
chainId,
|
|
9424
|
-
signature
|
|
9425
|
-
} = _ref;
|
|
9426
|
-
const link = shared.getSolanaExplorerUrl(chainId, signature, 'tx');
|
|
9427
|
-
if (!link) {
|
|
9266
|
+
return undefined;
|
|
9267
|
+
}, [provider]);
|
|
9268
|
+
if (account == null || signer == null || chainId == null) {
|
|
9428
9269
|
return null;
|
|
9429
9270
|
}
|
|
9430
|
-
|
|
9431
|
-
|
|
9432
|
-
|
|
9433
|
-
|
|
9434
|
-
|
|
9435
|
-
|
|
9436
|
-
|
|
9437
|
-
|
|
9271
|
+
let cardId = '';
|
|
9272
|
+
if (chainId === shared.ChainEnum.Celo || chainId === shared.ChainEnum.Alfajores) {
|
|
9273
|
+
var _process$env$REACT_AP;
|
|
9274
|
+
cardId = (_process$env$REACT_AP = process.env.REACT_APP_NOTIFI_CONFIG_ID_CELO) !== null && _process$env$REACT_AP !== void 0 ? _process$env$REACT_AP : '';
|
|
9275
|
+
} else if (chainId === shared.ChainEnum.Polygon || chainId === shared.ChainEnum.Amoy) {
|
|
9276
|
+
var _process$env$REACT_AP2;
|
|
9277
|
+
cardId = (_process$env$REACT_AP2 = process.env.REACT_APP_NOTIFI_CONFIG_ID_POLYGON) !== null && _process$env$REACT_AP2 !== void 0 ? _process$env$REACT_AP2 : '';
|
|
9278
|
+
} else if (chainId === shared.ChainEnum.Scroll || chainId === shared.ChainEnum.ScrollSepolia) {
|
|
9279
|
+
var _process$env$REACT_AP3;
|
|
9280
|
+
cardId = (_process$env$REACT_AP3 = process.env.REACT_APP_NOTIFI_CONFIG_ID_SCROLL) !== null && _process$env$REACT_AP3 !== void 0 ? _process$env$REACT_AP3 : '';
|
|
9281
|
+
}
|
|
9282
|
+
return jsxRuntime.jsx(notifiReact.NotifiContextProvider, {
|
|
9283
|
+
tenantId: "humafinanceprod",
|
|
9284
|
+
env: "Production",
|
|
9285
|
+
signMessage: async message => {
|
|
9286
|
+
const result = await signer.signMessage(message);
|
|
9287
|
+
return bytes.arrayify(result);
|
|
9288
|
+
},
|
|
9289
|
+
walletPublicKey: account,
|
|
9290
|
+
walletBlockchain: shared.getBlockchainConfigFromChain(chainId),
|
|
9291
|
+
cardId: cardId,
|
|
9292
|
+
children: children
|
|
9438
9293
|
});
|
|
9439
9294
|
}
|
|
9440
9295
|
|
|
9441
|
-
function
|
|
9442
|
-
let {
|
|
9443
|
-
chainId,
|
|
9444
|
-
tx,
|
|
9445
|
-
handleSuccess
|
|
9446
|
-
} = _ref;
|
|
9447
|
-
const dispatch = useAppDispatch();
|
|
9448
|
-
const {
|
|
9449
|
-
sendTransaction
|
|
9450
|
-
} = walletAdapterReact.useWallet();
|
|
9296
|
+
function Widget(props) {
|
|
9451
9297
|
const {
|
|
9452
|
-
|
|
9453
|
-
|
|
9454
|
-
|
|
9298
|
+
children,
|
|
9299
|
+
provider
|
|
9300
|
+
} = props;
|
|
9301
|
+
const [chainId, setChainId] = React.useState(undefined);
|
|
9455
9302
|
React.useEffect(() => {
|
|
9456
|
-
async
|
|
9457
|
-
if (
|
|
9458
|
-
|
|
9459
|
-
|
|
9460
|
-
try {
|
|
9461
|
-
const latestBlockHash = await connection.getLatestBlockhash();
|
|
9462
|
-
const signature = await sendTransaction(tx, connection);
|
|
9463
|
-
setSignature(signature);
|
|
9464
|
-
dispatch(setSolanaSignature(signature));
|
|
9465
|
-
await connection.confirmTransaction({
|
|
9466
|
-
blockhash: latestBlockHash.blockhash,
|
|
9467
|
-
lastValidBlockHeight: latestBlockHash.lastValidBlockHeight,
|
|
9468
|
-
signature
|
|
9469
|
-
});
|
|
9470
|
-
handleSuccess();
|
|
9471
|
-
} catch (error) {
|
|
9472
|
-
const err = error;
|
|
9473
|
-
dispatch(setError({
|
|
9474
|
-
errorMessage: (err === null || err === void 0 ? void 0 : err.message) || ''
|
|
9475
|
-
}));
|
|
9303
|
+
const getChainId = async () => {
|
|
9304
|
+
if (provider instanceof providers.JsonRpcProvider) {
|
|
9305
|
+
const network = await provider.getNetwork();
|
|
9306
|
+
setChainId(network === null || network === void 0 ? void 0 : network.chainId);
|
|
9476
9307
|
}
|
|
9477
|
-
}
|
|
9478
|
-
|
|
9479
|
-
}, [
|
|
9480
|
-
return jsxRuntime.jsx(
|
|
9481
|
-
|
|
9482
|
-
|
|
9483
|
-
|
|
9484
|
-
|
|
9485
|
-
|
|
9486
|
-
|
|
9487
|
-
|
|
9488
|
-
|
|
9489
|
-
|
|
9490
|
-
|
|
9491
|
-
|
|
9492
|
-
|
|
9493
|
-
|
|
9494
|
-
|
|
9495
|
-
|
|
9496
|
-
const {
|
|
9497
|
-
publicKey
|
|
9498
|
-
} = walletAdapterReact.useWallet();
|
|
9499
|
-
const {
|
|
9500
|
-
supplyAmount
|
|
9501
|
-
} = useAppSelector(selectWidgetState);
|
|
9502
|
-
const {
|
|
9503
|
-
decimals
|
|
9504
|
-
} = poolInfo.underlyingMint;
|
|
9505
|
-
const supplyBigNumber = shared.SolanaTokenUtils.parseUnits(String(supplyAmount), decimals);
|
|
9506
|
-
const [transaction, setTransaction] = React.useState();
|
|
9507
|
-
const program = webShared.useHumaProgram(poolInfo.chainId);
|
|
9508
|
-
const handleSuccess = React.useCallback(() => {
|
|
9509
|
-
dispatch(setStep(WIDGET_STEP.Done));
|
|
9510
|
-
}, [dispatch]);
|
|
9511
|
-
React.useEffect(() => {
|
|
9512
|
-
async function getTx() {
|
|
9513
|
-
if (!publicKey || transaction) {
|
|
9514
|
-
return;
|
|
9515
|
-
}
|
|
9516
|
-
const {
|
|
9517
|
-
underlyingTokenATA,
|
|
9518
|
-
seniorTrancheATA,
|
|
9519
|
-
juniorTrancheATA
|
|
9520
|
-
} = shared.getTokenAccounts(poolInfo, publicKey);
|
|
9521
|
-
const tx = await program.methods.deposit(supplyBigNumber).accountsPartial({
|
|
9522
|
-
depositor: publicKey,
|
|
9523
|
-
poolConfig: poolInfo.poolConfig,
|
|
9524
|
-
underlyingMint: poolInfo.underlyingMint.address,
|
|
9525
|
-
trancheMint: selectedTranche === 'senior' ? poolInfo.seniorTrancheMint : poolInfo.juniorTrancheMint,
|
|
9526
|
-
poolUnderlyingToken: poolInfo.poolUnderlyingTokenAccount,
|
|
9527
|
-
depositorUnderlyingToken: underlyingTokenATA,
|
|
9528
|
-
depositorTrancheToken: selectedTranche === 'senior' ? seniorTrancheATA : juniorTrancheATA,
|
|
9529
|
-
humaConfig: poolInfo.humaConfig,
|
|
9530
|
-
tokenProgram: splToken.TOKEN_2022_PROGRAM_ID
|
|
9531
|
-
}).transaction();
|
|
9532
|
-
setTransaction(tx);
|
|
9533
|
-
}
|
|
9534
|
-
getTx();
|
|
9535
|
-
}, [poolInfo, program.methods, publicKey, selectedTranche, supplyBigNumber, transaction]);
|
|
9536
|
-
return jsxRuntime.jsx(SolanaTxSendModal, {
|
|
9537
|
-
tx: transaction,
|
|
9538
|
-
chainId: poolInfo.chainId,
|
|
9539
|
-
handleSuccess: handleSuccess
|
|
9540
|
-
});
|
|
9541
|
-
}
|
|
9542
|
-
|
|
9543
|
-
var _templateObject$2, _templateObject2$2, _templateObject3$2, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
9544
|
-
function SolanaTxDoneModal(_ref) {
|
|
9545
|
-
let {
|
|
9546
|
-
content,
|
|
9547
|
-
subContent,
|
|
9548
|
-
handleAction,
|
|
9549
|
-
solanaSignature,
|
|
9550
|
-
chainId,
|
|
9551
|
-
buttonText
|
|
9552
|
-
} = _ref;
|
|
9553
|
-
const theme = material.useTheme();
|
|
9554
|
-
const dispatch = useAppDispatch();
|
|
9555
|
-
const styles = {
|
|
9556
|
-
wrapper: material.css(_templateObject$2 || (_templateObject$2 = _taggedTemplateLiteral(["\n height: 518px;\n position: relative;\n "]))),
|
|
9557
|
-
header: material.css(_templateObject2$2 || (_templateObject2$2 = _taggedTemplateLiteral(["\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(-0.5)),
|
|
9558
|
-
content: material.css(_templateObject3$2 || (_templateObject3$2 = _taggedTemplateLiteral(["\n ", ";\n font-weight: ", ";\n font-size: 18px;\n color: ", ";\n margin-top: ", ";\n text-align: center;\n "])), theme.cssMixins.colVCentered, subContent ? 700 : 400, theme.palette.text.secondary, theme.spacing(8)),
|
|
9559
|
-
subContent: material.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n ", ";\n font-weight: 400;\n font-size: 18px;\n color: ", ";\n margin-top: ", ";\n text-align: center;\n "])), theme.cssMixins.colVCentered, theme.palette.text.primary, theme.spacing(2)),
|
|
9560
|
-
check: material.css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n width: 100%;\n ", ";\n margin-top: ", ";\n "])), theme.cssMixins.rowHCentered, theme.spacing(10)),
|
|
9561
|
-
bottomButtonGroup: material.css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n width: 100%;\n position: absolute;\n bottom: 0;\n "]))),
|
|
9562
|
-
bottomButton: material.css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n margin-top: ", ";\n "])), theme.spacing(1))
|
|
9563
|
-
};
|
|
9564
|
-
const handleCloseModal = React.useCallback(() => {
|
|
9565
|
-
dispatch(resetState());
|
|
9566
|
-
handleAction();
|
|
9567
|
-
}, [dispatch, handleAction]);
|
|
9568
|
-
return jsxRuntime.jsxs(material.Box, {
|
|
9569
|
-
css: styles.wrapper,
|
|
9570
|
-
children: [jsxRuntime.jsx(material.Typography, {
|
|
9571
|
-
variant: "h6",
|
|
9572
|
-
css: styles.header,
|
|
9573
|
-
children: "Transaction Completed"
|
|
9574
|
-
}), jsxRuntime.jsx(material.Box, {
|
|
9575
|
-
css: styles.check,
|
|
9576
|
-
children: jsxRuntime.jsx(CheckIcon, {})
|
|
9577
|
-
}), jsxRuntime.jsx(material.Box, {
|
|
9578
|
-
css: styles.content,
|
|
9579
|
-
children: content.map(item => jsxRuntime.jsx(material.Box, {
|
|
9580
|
-
sx: {
|
|
9581
|
-
marginTop: theme.spacing(1)
|
|
9582
|
-
},
|
|
9583
|
-
children: item
|
|
9584
|
-
}, item))
|
|
9585
|
-
}), subContent && jsxRuntime.jsx(material.Box, {
|
|
9586
|
-
css: styles.subContent,
|
|
9587
|
-
children: subContent.map(item => jsxRuntime.jsx(material.Box, {
|
|
9588
|
-
sx: {
|
|
9589
|
-
marginTop: theme.spacing(1)
|
|
9590
|
-
},
|
|
9591
|
-
children: item
|
|
9592
|
-
}, item))
|
|
9593
|
-
}), jsxRuntime.jsxs(material.Box, {
|
|
9594
|
-
css: styles.bottomButtonGroup,
|
|
9595
|
-
children: [solanaSignature && chainId && jsxRuntime.jsx(SolanaViewOnExplorer, {
|
|
9596
|
-
signature: solanaSignature,
|
|
9597
|
-
chainId: chainId
|
|
9598
|
-
}), jsxRuntime.jsx(material.Button, {
|
|
9599
|
-
className: "transaction-done-modal-close-btn",
|
|
9600
|
-
variant: "contained",
|
|
9601
|
-
fullWidth: true,
|
|
9602
|
-
css: styles.bottomButton,
|
|
9603
|
-
onClick: handleCloseModal,
|
|
9604
|
-
children: !buttonText ? 'DONE' : buttonText
|
|
9605
|
-
})]
|
|
9606
|
-
})]
|
|
9607
|
-
});
|
|
9608
|
-
}
|
|
9609
|
-
|
|
9610
|
-
function Success(_ref) {
|
|
9611
|
-
let {
|
|
9612
|
-
poolInfo,
|
|
9613
|
-
poolState,
|
|
9614
|
-
handleAction
|
|
9615
|
-
} = _ref;
|
|
9616
|
-
const {
|
|
9617
|
-
supplyAmount,
|
|
9618
|
-
solanaSignature
|
|
9619
|
-
} = useAppSelector(selectWidgetState);
|
|
9620
|
-
const {
|
|
9621
|
-
symbol
|
|
9622
|
-
} = poolInfo.underlyingMint;
|
|
9623
|
-
const content = ["You successfully supplied ".concat(shared.formatMoney(supplyAmount), " ").concat(symbol, ".")];
|
|
9624
|
-
const getSubContent = () => {
|
|
9625
|
-
const currentTime = moment__default["default"]().add(poolState.withdrawalLockupPeriodDays, 'days');
|
|
9626
|
-
return ["First redemption date: ".concat(shared.timeUtil.timestampToLL(currentTime.unix()), ". You can redeem end of each month after.")];
|
|
9627
|
-
};
|
|
9628
|
-
return jsxRuntime.jsx(SolanaTxDoneModal, {
|
|
9629
|
-
handleAction: handleAction,
|
|
9630
|
-
content: content,
|
|
9631
|
-
subContent: getSubContent(),
|
|
9632
|
-
chainId: poolInfo.chainId,
|
|
9633
|
-
solanaSignature: solanaSignature,
|
|
9634
|
-
buttonText: "DONE"
|
|
9635
|
-
});
|
|
9636
|
-
}
|
|
9637
|
-
|
|
9638
|
-
function SolanaLendSupply(_ref) {
|
|
9639
|
-
let {
|
|
9640
|
-
poolInfo,
|
|
9641
|
-
poolState,
|
|
9642
|
-
handleClose,
|
|
9643
|
-
handleSuccess
|
|
9644
|
-
} = _ref;
|
|
9645
|
-
const dispatch = reactRedux.useDispatch();
|
|
9646
|
-
const {
|
|
9647
|
-
seniorLenderApproved,
|
|
9648
|
-
juniorLenderApproved,
|
|
9649
|
-
loading: isLoadingLenderAccounts
|
|
9650
|
-
} = webShared.useLenderAccounts(poolInfo.chainId, poolInfo.poolName);
|
|
9651
|
-
const [tokenAccount, isLoadingTokenAccount] = webShared.useTokenAccount(poolInfo);
|
|
9652
|
-
const {
|
|
9653
|
-
step,
|
|
9654
|
-
errorMessage
|
|
9655
|
-
} = useAppSelector(selectWidgetState);
|
|
9656
|
-
const isUniTranche = poolState.maxSeniorJuniorRatio === 0;
|
|
9657
|
-
const [selectedTranche, setSelectedTranche] = React.useState();
|
|
9658
|
-
React.useEffect(() => {
|
|
9659
|
-
if (!step && !isLoadingLenderAccounts && !isLoadingTokenAccount) {
|
|
9660
|
-
if (juniorLenderApproved && !seniorLenderApproved) {
|
|
9661
|
-
setSelectedTranche('junior');
|
|
9662
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9663
|
-
return;
|
|
9664
|
-
}
|
|
9665
|
-
if (seniorLenderApproved && !juniorLenderApproved) {
|
|
9666
|
-
setSelectedTranche('senior');
|
|
9667
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9668
|
-
return;
|
|
9669
|
-
}
|
|
9670
|
-
if (juniorLenderApproved && seniorLenderApproved) {
|
|
9671
|
-
dispatch(setStep(WIDGET_STEP.ChooseTranche));
|
|
9672
|
-
// return
|
|
9673
|
-
}
|
|
9674
|
-
|
|
9675
|
-
// if (poolInfo.supplyLink) {
|
|
9676
|
-
// openInNewTab(poolInfo.supplyLink)
|
|
9677
|
-
// handleClose()
|
|
9678
|
-
// }
|
|
9679
|
-
}
|
|
9680
|
-
}, [dispatch, handleClose, poolInfo, step, isLoadingLenderAccounts, juniorLenderApproved, seniorLenderApproved, isLoadingTokenAccount]);
|
|
9681
|
-
if (isLoadingLenderAccounts || isLoadingTokenAccount) {
|
|
9682
|
-
return jsxRuntime.jsx(WidgetWrapper, {
|
|
9683
|
-
isOpen: true,
|
|
9684
|
-
isLoading: true,
|
|
9685
|
-
loadingTitle: "Supply",
|
|
9686
|
-
handleClose: handleClose,
|
|
9687
|
-
handleSuccess: handleSuccess
|
|
9688
|
-
});
|
|
9689
|
-
}
|
|
9690
|
-
return jsxRuntime.jsxs(WidgetWrapper, {
|
|
9691
|
-
isOpen: true,
|
|
9692
|
-
loadingTitle: "Supply ".concat(poolInfo.underlyingMint.symbol),
|
|
9693
|
-
handleClose: handleClose,
|
|
9694
|
-
handleSuccess: handleSuccess,
|
|
9695
|
-
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche$2, {
|
|
9696
|
-
poolUnderlyingToken: poolInfo.underlyingMint,
|
|
9697
|
-
selectedTranche: selectedTranche,
|
|
9698
|
-
changeTranche: setSelectedTranche
|
|
9699
|
-
}), step === WIDGET_STEP.ChooseAmount && jsxRuntime.jsx(ChooseAmount$2, {
|
|
9700
|
-
poolInfo: poolInfo,
|
|
9701
|
-
poolState: poolState,
|
|
9702
|
-
tokenAccount: tokenAccount,
|
|
9703
|
-
selectedTranche: selectedTranche,
|
|
9704
|
-
isUniTranche: isUniTranche
|
|
9705
|
-
}), step === WIDGET_STEP.Transfer && selectedTranche && jsxRuntime.jsx(Transfer$2, {
|
|
9706
|
-
poolInfo: poolInfo,
|
|
9707
|
-
selectedTranche: selectedTranche
|
|
9708
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Success, {
|
|
9709
|
-
poolInfo: poolInfo,
|
|
9710
|
-
poolState: poolState,
|
|
9711
|
-
handleAction: handleClose
|
|
9712
|
-
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
9713
|
-
title: "Supply",
|
|
9714
|
-
errorReason: "Sorry there was an error",
|
|
9715
|
-
errorMessage: errorMessage,
|
|
9716
|
-
handleOk: handleClose
|
|
9717
|
-
})]
|
|
9718
|
-
});
|
|
9719
|
-
}
|
|
9720
|
-
|
|
9721
|
-
function ChooseAmount$1(_ref) {
|
|
9722
|
-
let {
|
|
9723
|
-
poolInfo,
|
|
9724
|
-
poolState,
|
|
9725
|
-
selectedTranche,
|
|
9726
|
-
lenderState
|
|
9727
|
-
} = _ref;
|
|
9728
|
-
const dispatch = useAppDispatch();
|
|
9729
|
-
const {
|
|
9730
|
-
symbol
|
|
9731
|
-
} = poolInfo.underlyingMint;
|
|
9732
|
-
const [currentAmount, setCurrentAmount] = React.useState(0);
|
|
9733
|
-
const [currentShares, setCurrentShares] = React.useState(0);
|
|
9734
|
-
const {
|
|
9735
|
-
mintAccount,
|
|
9736
|
-
loading: isLoadingTrancheMintAccounts
|
|
9737
|
-
} = webShared.useTrancheMintAccounts(poolInfo, selectedTranche);
|
|
9738
|
-
const {
|
|
9739
|
-
seniorTokenAccount,
|
|
9740
|
-
juniorTokenAccount,
|
|
9741
|
-
loading: isLoadingTokenAccounts
|
|
9742
|
-
} = webShared.useTrancheTokenAccounts(poolInfo);
|
|
9743
|
-
const maxSharesFormatted = React.useMemo(() => {
|
|
9744
|
-
if (!(mintAccount !== null && mintAccount !== void 0 && mintAccount.decimals)) {
|
|
9745
|
-
return 0;
|
|
9746
|
-
}
|
|
9747
|
-
return shared.SolanaTokenUtils.formatUnits(selectedTranche === 'senior' ? new anchor.BN(seniorTokenAccount === null || seniorTokenAccount === void 0 ? void 0 : seniorTokenAccount.amount) : new anchor.BN(juniorTokenAccount === null || juniorTokenAccount === void 0 ? void 0 : juniorTokenAccount.amount), mintAccount.decimals);
|
|
9748
|
-
}, [mintAccount, juniorTokenAccount === null || juniorTokenAccount === void 0 ? void 0 : juniorTokenAccount.amount, selectedTranche, seniorTokenAccount === null || seniorTokenAccount === void 0 ? void 0 : seniorTokenAccount.amount]);
|
|
9749
|
-
const sharePrice = React.useMemo(() => {
|
|
9750
|
-
if (!(mintAccount !== null && mintAccount !== void 0 && mintAccount.decimals) || !(mintAccount !== null && mintAccount !== void 0 && mintAccount.supply)) {
|
|
9751
|
-
return 0;
|
|
9752
|
-
}
|
|
9753
|
-
const mintSupplyFormatted = Number(shared.SolanaTokenUtils.formatUnits(new anchor.BN(mintAccount.supply), mintAccount.decimals));
|
|
9754
|
-
if (mintSupplyFormatted === 0) {
|
|
9755
|
-
return 0;
|
|
9756
|
-
}
|
|
9757
|
-
const seniorTrancheAssetsFormatted = Number(shared.SolanaTokenUtils.formatUnits(new anchor.BN(poolState === null || poolState === void 0 ? void 0 : poolState.seniorTrancheAssets), mintAccount.decimals));
|
|
9758
|
-
if (selectedTranche === 'senior') {
|
|
9759
|
-
return seniorTrancheAssetsFormatted / mintSupplyFormatted;
|
|
9760
|
-
}
|
|
9761
|
-
const juniorTrancheAssetsFormatted = Number(shared.SolanaTokenUtils.formatUnits(new anchor.BN(poolState === null || poolState === void 0 ? void 0 : poolState.juniorTrancheAssets), mintAccount.decimals));
|
|
9762
|
-
return juniorTrancheAssetsFormatted / mintSupplyFormatted;
|
|
9763
|
-
}, [mintAccount === null || mintAccount === void 0 ? void 0 : mintAccount.decimals, mintAccount === null || mintAccount === void 0 ? void 0 : mintAccount.supply, poolState === null || poolState === void 0 ? void 0 : poolState.juniorTrancheAssets, poolState === null || poolState === void 0 ? void 0 : poolState.seniorTrancheAssets, selectedTranche]);
|
|
9764
|
-
React.useEffect(() => {
|
|
9765
|
-
if (poolState !== null && poolState !== void 0 && poolState.withdrawalLockupPeriodDays && poolState !== null && poolState !== void 0 && poolState.epochEndTime && lenderState) {
|
|
9766
|
-
const SECONDS_IN_A_DAY = 24 * 60 * 60;
|
|
9767
|
-
const lastDepositTime = Number(lenderState.depositRecord.lastDepositTime);
|
|
9768
|
-
const lockupEndTime = lastDepositTime + poolState.withdrawalLockupPeriodDays * SECONDS_IN_A_DAY;
|
|
9769
|
-
if (poolState.epochEndTime < lockupEndTime) {
|
|
9770
|
-
const lockupEndTimeDayjs = dayjs__default["default"].unix(lockupEndTime).date(1);
|
|
9771
|
-
dispatch(setStep(WIDGET_STEP.Error));
|
|
9772
|
-
dispatch(setError({
|
|
9773
|
-
errorReason: 'Redemption too soon',
|
|
9774
|
-
errorMessage: "Your last deposit was on ".concat(shared.timestampToLL(lastDepositTime), ". You can redeem on ").concat(shared.timestampToLL(lockupEndTimeDayjs.unix()), ".")
|
|
9775
|
-
}));
|
|
9776
|
-
}
|
|
9777
|
-
}
|
|
9778
|
-
}, [dispatch, lenderState, poolState.epochEndTime, poolState.withdrawalLockupPeriodDays]);
|
|
9779
|
-
const handleChangeShares = newShares => {
|
|
9780
|
-
const amount = Number(newShares) * sharePrice;
|
|
9781
|
-
setCurrentShares(Number(newShares));
|
|
9782
|
-
setCurrentAmount(amount);
|
|
9783
|
-
dispatch(setRedeemShares(Number(newShares)));
|
|
9784
|
-
dispatch(setRedeemAmount(amount));
|
|
9785
|
-
};
|
|
9786
|
-
const handleAction = () => {
|
|
9787
|
-
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
9788
|
-
};
|
|
9789
|
-
if (isLoadingTokenAccounts || isLoadingTrancheMintAccounts || !lenderState || (poolState === null || poolState === void 0 ? void 0 : poolState.withdrawalLockupPeriodDays) === undefined ||
|
|
9790
|
-
// withdrawalLockupPeriodDays can be 0
|
|
9791
|
-
!(poolState !== null && poolState !== void 0 && poolState.epochEndTime)) {
|
|
9792
|
-
return jsxRuntime.jsx(LoadingModal, {
|
|
9793
|
-
title: "Redemption"
|
|
9794
|
-
});
|
|
9795
|
-
}
|
|
9796
|
-
return jsxRuntime.jsx(InputAmountModal, {
|
|
9797
|
-
title: "Redemption",
|
|
9798
|
-
subTitle: "Enter number of shares to redeem from the ".concat(selectedTranche, " tranche"),
|
|
9799
|
-
tokenSymbol: symbol,
|
|
9800
|
-
currentAmount: currentShares,
|
|
9801
|
-
handleChangeAmount: handleChangeShares,
|
|
9802
|
-
maxAmount: maxSharesFormatted,
|
|
9803
|
-
infos: ["".concat(String(shared.formatNumber(currentAmount)), " ").concat(symbol)],
|
|
9804
|
-
maxAmountTitle: "".concat(shared.formatNumber(maxSharesFormatted), " Shares"),
|
|
9805
|
-
suffix: "Shares",
|
|
9806
|
-
handleAction: handleAction,
|
|
9807
|
-
actionText: "REQUEST"
|
|
9808
|
-
});
|
|
9809
|
-
}
|
|
9810
|
-
|
|
9811
|
-
var _templateObject$1, _templateObject2$1, _templateObject3$1;
|
|
9812
|
-
function ChooseTranche$1(_ref) {
|
|
9813
|
-
let {
|
|
9814
|
-
selectedTranche,
|
|
9815
|
-
changeTranche
|
|
9816
|
-
} = _ref;
|
|
9817
|
-
const theme = material.useTheme();
|
|
9818
|
-
const dispatch = useAppDispatch();
|
|
9819
|
-
const styles = {
|
|
9820
|
-
subTitle: material.css(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
9821
|
-
radioGroup: material.css(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
9822
|
-
formControl: material.css(_templateObject3$1 || (_templateObject3$1 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
9823
|
-
};
|
|
9824
|
-
const handleNext = () => {
|
|
9825
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9826
|
-
};
|
|
9827
|
-
const items = [{
|
|
9828
|
-
label: 'Senior',
|
|
9829
|
-
value: 'senior'
|
|
9830
|
-
}, {
|
|
9831
|
-
label: 'Junior',
|
|
9832
|
-
value: 'junior'
|
|
9833
|
-
}];
|
|
9834
|
-
return jsxRuntime.jsxs(WrapperModal, {
|
|
9835
|
-
title: "Redemption",
|
|
9836
|
-
children: [jsxRuntime.jsxs(material.FormControl, {
|
|
9837
|
-
children: [jsxRuntime.jsx(material.FormLabel, {
|
|
9838
|
-
css: styles.subTitle,
|
|
9839
|
-
children: "Select Tranche Type"
|
|
9840
|
-
}), jsxRuntime.jsx(material.RadioGroup, {
|
|
9841
|
-
"aria-labelledby": "buttons-group-label",
|
|
9842
|
-
name: "radio-buttons-group",
|
|
9843
|
-
css: styles.radioGroup,
|
|
9844
|
-
onChange: e => changeTranche(e.target.value),
|
|
9845
|
-
children: items.map(item => jsxRuntime.jsx(material.FormControlLabel, {
|
|
9846
|
-
value: item.value,
|
|
9847
|
-
control: jsxRuntime.jsx(material.Radio, {
|
|
9848
|
-
sx: {
|
|
9849
|
-
'& .MuiSvgIcon-root': {
|
|
9850
|
-
fontSize: 24
|
|
9851
|
-
}
|
|
9852
|
-
}
|
|
9853
|
-
}),
|
|
9854
|
-
label: item.label,
|
|
9855
|
-
css: styles.formControl
|
|
9856
|
-
}, item.label))
|
|
9857
|
-
})]
|
|
9858
|
-
}), jsxRuntime.jsx(BottomButton, {
|
|
9859
|
-
variant: "contained",
|
|
9860
|
-
disabled: !selectedTranche,
|
|
9861
|
-
onClick: handleNext,
|
|
9862
|
-
children: "NEXT"
|
|
9863
|
-
})]
|
|
9864
|
-
});
|
|
9865
|
-
}
|
|
9866
|
-
|
|
9867
|
-
function Done$1(_ref) {
|
|
9868
|
-
let {
|
|
9869
|
-
poolInfo,
|
|
9870
|
-
handleAction
|
|
9871
|
-
} = _ref;
|
|
9872
|
-
const {
|
|
9873
|
-
redeemShares,
|
|
9874
|
-
solanaSignature
|
|
9875
|
-
} = useAppSelector(selectWidgetState);
|
|
9876
|
-
const content = ["".concat(shared.formatNumber(redeemShares), " shares requested for redemption")];
|
|
9877
|
-
return jsxRuntime.jsx(SolanaTxDoneModal, {
|
|
9878
|
-
handleAction: handleAction,
|
|
9879
|
-
content: content,
|
|
9880
|
-
chainId: poolInfo.chainId,
|
|
9881
|
-
solanaSignature: solanaSignature,
|
|
9882
|
-
buttonText: "DONE"
|
|
9883
|
-
});
|
|
9884
|
-
}
|
|
9885
|
-
|
|
9886
|
-
function Transfer$1(_ref) {
|
|
9887
|
-
let {
|
|
9888
|
-
poolInfo,
|
|
9889
|
-
selectedTranche
|
|
9890
|
-
} = _ref;
|
|
9891
|
-
const dispatch = useAppDispatch();
|
|
9892
|
-
const {
|
|
9893
|
-
publicKey
|
|
9894
|
-
} = walletAdapterReact.useWallet();
|
|
9895
|
-
const {
|
|
9896
|
-
redeemShares
|
|
9897
|
-
} = useAppSelector(selectWidgetState);
|
|
9898
|
-
const {
|
|
9899
|
-
mintAccount
|
|
9900
|
-
} = webShared.useTrancheMintAccounts(poolInfo, selectedTranche);
|
|
9901
|
-
const [transaction, setTransaction] = React.useState();
|
|
9902
|
-
const program = webShared.useHumaProgram(poolInfo.chainId);
|
|
9903
|
-
const redeemBN = React.useMemo(() => {
|
|
9904
|
-
if (!mintAccount) {
|
|
9905
|
-
return null;
|
|
9906
|
-
}
|
|
9907
|
-
return shared.SolanaTokenUtils.parseUnits(String(redeemShares), mintAccount === null || mintAccount === void 0 ? void 0 : mintAccount.decimals);
|
|
9908
|
-
}, [mintAccount, redeemShares]);
|
|
9909
|
-
const handleSuccess = React.useCallback(() => {
|
|
9910
|
-
dispatch(setStep(WIDGET_STEP.Done));
|
|
9911
|
-
}, [dispatch]);
|
|
9912
|
-
React.useEffect(() => {
|
|
9913
|
-
async function getTx() {
|
|
9914
|
-
if (!publicKey || !redeemBN || transaction) {
|
|
9915
|
-
return;
|
|
9916
|
-
}
|
|
9917
|
-
const {
|
|
9918
|
-
seniorTrancheATA,
|
|
9919
|
-
juniorTrancheATA,
|
|
9920
|
-
poolSeniorTrancheATA,
|
|
9921
|
-
poolJuniorTrancheATA
|
|
9922
|
-
} = shared.getTokenAccounts(poolInfo, publicKey);
|
|
9923
|
-
const tx = await program.methods.addRedemptionRequest(redeemBN).accountsPartial({
|
|
9924
|
-
lender: publicKey,
|
|
9925
|
-
humaConfig: poolInfo.humaConfig,
|
|
9926
|
-
poolConfig: poolInfo.poolConfig,
|
|
9927
|
-
trancheMint: selectedTranche === 'senior' ? poolInfo.seniorTrancheMint : poolInfo.juniorTrancheMint,
|
|
9928
|
-
poolTrancheToken: selectedTranche === 'senior' ? poolSeniorTrancheATA : poolJuniorTrancheATA,
|
|
9929
|
-
lenderTrancheToken: selectedTranche === 'senior' ? seniorTrancheATA : juniorTrancheATA,
|
|
9930
|
-
tokenProgram: splToken.TOKEN_2022_PROGRAM_ID
|
|
9931
|
-
}).transaction();
|
|
9932
|
-
setTransaction(tx);
|
|
9933
|
-
}
|
|
9934
|
-
getTx();
|
|
9935
|
-
}, [poolInfo, program.methods, publicKey, redeemBN, selectedTranche, transaction]);
|
|
9936
|
-
return jsxRuntime.jsx(SolanaTxSendModal, {
|
|
9937
|
-
tx: transaction,
|
|
9938
|
-
chainId: poolInfo.chainId,
|
|
9939
|
-
handleSuccess: handleSuccess
|
|
9940
|
-
});
|
|
9941
|
-
}
|
|
9942
|
-
|
|
9943
|
-
function SolanaLendAddRedemption(_ref) {
|
|
9944
|
-
let {
|
|
9945
|
-
poolInfo,
|
|
9946
|
-
poolState,
|
|
9947
|
-
handleClose,
|
|
9948
|
-
handleSuccess
|
|
9949
|
-
} = _ref;
|
|
9950
|
-
const dispatch = reactRedux.useDispatch();
|
|
9951
|
-
const {
|
|
9952
|
-
seniorLenderStateAccount,
|
|
9953
|
-
juniorLenderStateAccount,
|
|
9954
|
-
loading: isLoadingLenderAccounts
|
|
9955
|
-
} = webShared.useLenderAccounts(poolInfo.chainId, poolInfo.poolName);
|
|
9956
|
-
const {
|
|
9957
|
-
seniorTokenAccount,
|
|
9958
|
-
juniorTokenAccount,
|
|
9959
|
-
loading: isLoadingTokenAccounts
|
|
9960
|
-
} = webShared.useTrancheTokenAccounts(poolInfo);
|
|
9961
|
-
const {
|
|
9962
|
-
step,
|
|
9963
|
-
errorMessage
|
|
9964
|
-
} = useAppSelector(selectWidgetState);
|
|
9965
|
-
const [selectedTranche, setSelectedTranche] = React.useState();
|
|
9966
|
-
React.useEffect(() => {
|
|
9967
|
-
if (!step && !isLoadingLenderAccounts && !isLoadingTokenAccounts) {
|
|
9968
|
-
const seniorTrancheShares = new anchor.BN(seniorTokenAccount === null || seniorTokenAccount === void 0 ? void 0 : seniorTokenAccount.amount);
|
|
9969
|
-
const juniorTrancheShares = new anchor.BN(juniorTokenAccount === null || juniorTokenAccount === void 0 ? void 0 : juniorTokenAccount.amount);
|
|
9970
|
-
if (juniorTrancheShares.gtn(0) && seniorTrancheShares.lten(0)) {
|
|
9971
|
-
setSelectedTranche('junior');
|
|
9972
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9973
|
-
return;
|
|
9974
|
-
}
|
|
9975
|
-
if (seniorTrancheShares.gtn(0) && juniorTrancheShares.lten(0)) {
|
|
9976
|
-
setSelectedTranche('senior');
|
|
9977
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
9978
|
-
return;
|
|
9979
|
-
}
|
|
9980
|
-
if (seniorTrancheShares.gtn(0) && juniorTrancheShares.gtn(0)) {
|
|
9981
|
-
dispatch(setStep(WIDGET_STEP.ChooseTranche));
|
|
9982
|
-
}
|
|
9983
|
-
}
|
|
9984
|
-
}, [dispatch, step, isLoadingLenderAccounts, isLoadingTokenAccounts, seniorTokenAccount === null || seniorTokenAccount === void 0 ? void 0 : seniorTokenAccount.amount, juniorTokenAccount === null || juniorTokenAccount === void 0 ? void 0 : juniorTokenAccount.amount]);
|
|
9985
|
-
const title = 'Redemption';
|
|
9986
|
-
if (isLoadingLenderAccounts || isLoadingTokenAccounts) {
|
|
9987
|
-
return jsxRuntime.jsx(WidgetWrapper, {
|
|
9988
|
-
isOpen: true,
|
|
9989
|
-
isLoading: true,
|
|
9990
|
-
loadingTitle: title,
|
|
9991
|
-
handleClose: handleClose,
|
|
9992
|
-
handleSuccess: handleSuccess
|
|
9993
|
-
});
|
|
9994
|
-
}
|
|
9995
|
-
return jsxRuntime.jsxs(WidgetWrapper, {
|
|
9996
|
-
isOpen: true,
|
|
9997
|
-
loadingTitle: title,
|
|
9998
|
-
handleClose: handleClose,
|
|
9999
|
-
handleSuccess: handleSuccess,
|
|
10000
|
-
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche$1, {
|
|
10001
|
-
selectedTranche: selectedTranche,
|
|
10002
|
-
changeTranche: setSelectedTranche
|
|
10003
|
-
}), step === WIDGET_STEP.ChooseAmount && selectedTranche && jsxRuntime.jsx(ChooseAmount$1, {
|
|
10004
|
-
poolInfo: poolInfo,
|
|
10005
|
-
poolState: poolState,
|
|
10006
|
-
lenderState: selectedTranche === 'senior' ? seniorLenderStateAccount : juniorLenderStateAccount,
|
|
10007
|
-
selectedTranche: selectedTranche
|
|
10008
|
-
}), step === WIDGET_STEP.Transfer && selectedTranche && jsxRuntime.jsx(Transfer$1, {
|
|
10009
|
-
poolInfo: poolInfo,
|
|
10010
|
-
selectedTranche: selectedTranche
|
|
10011
|
-
}), step === WIDGET_STEP.Done && jsxRuntime.jsx(Done$1, {
|
|
10012
|
-
poolInfo: poolInfo,
|
|
10013
|
-
handleAction: handleClose
|
|
10014
|
-
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
10015
|
-
title: title,
|
|
10016
|
-
errorReason: "Sorry there was an error",
|
|
10017
|
-
errorMessage: errorMessage,
|
|
10018
|
-
handleOk: handleClose
|
|
10019
|
-
})]
|
|
10020
|
-
});
|
|
10021
|
-
}
|
|
10022
|
-
|
|
10023
|
-
function Transfer(_ref) {
|
|
10024
|
-
let {
|
|
10025
|
-
poolInfo,
|
|
10026
|
-
lenderState,
|
|
10027
|
-
lenderStatePDA,
|
|
10028
|
-
selectedTranche
|
|
10029
|
-
} = _ref;
|
|
10030
|
-
const dispatch = useAppDispatch();
|
|
10031
|
-
const {
|
|
10032
|
-
publicKey
|
|
10033
|
-
} = walletAdapterReact.useWallet();
|
|
10034
|
-
const [transaction, setTransaction] = React.useState();
|
|
10035
|
-
const program = webShared.useHumaProgram(poolInfo.chainId);
|
|
10036
|
-
const handleSuccess = React.useCallback(() => {
|
|
10037
|
-
dispatch(setStep(WIDGET_STEP.Done));
|
|
10038
|
-
}, [dispatch]);
|
|
10039
|
-
React.useEffect(() => {
|
|
10040
|
-
async function getTx() {
|
|
10041
|
-
if (!publicKey || !lenderState || !lenderStatePDA || transaction) {
|
|
10042
|
-
return;
|
|
10043
|
-
}
|
|
10044
|
-
const {
|
|
10045
|
-
seniorTrancheATA,
|
|
10046
|
-
juniorTrancheATA,
|
|
10047
|
-
poolSeniorTrancheATA,
|
|
10048
|
-
poolJuniorTrancheATA
|
|
10049
|
-
} = shared.getTokenAccounts(poolInfo, publicKey);
|
|
10050
|
-
const tx = await program.methods.cancelRedemptionRequest(lenderState.redemptionRecord.numSharesRequested).accountsPartial({
|
|
10051
|
-
lender: publicKey,
|
|
10052
|
-
humaConfig: poolInfo.humaConfig,
|
|
10053
|
-
poolConfig: poolInfo.poolConfig,
|
|
10054
|
-
trancheMint: selectedTranche === 'senior' ? poolInfo.seniorTrancheMint : poolInfo.juniorTrancheMint,
|
|
10055
|
-
trancheState: selectedTranche === 'senior' ? poolInfo.seniorTrancheState : poolInfo.juniorTrancheState,
|
|
10056
|
-
lenderState: lenderStatePDA,
|
|
10057
|
-
poolAuthority: poolInfo.poolAuthority,
|
|
10058
|
-
poolTrancheToken: selectedTranche === 'senior' ? poolSeniorTrancheATA : poolJuniorTrancheATA,
|
|
10059
|
-
lenderTrancheToken: selectedTranche === 'senior' ? seniorTrancheATA : juniorTrancheATA,
|
|
10060
|
-
tokenProgram: splToken.TOKEN_2022_PROGRAM_ID
|
|
10061
|
-
}).transaction();
|
|
10062
|
-
setTransaction(tx);
|
|
10063
|
-
}
|
|
10064
|
-
getTx();
|
|
10065
|
-
}, [lenderState, lenderStatePDA, poolInfo, program.methods, publicKey, selectedTranche, transaction]);
|
|
10066
|
-
return jsxRuntime.jsx(SolanaTxSendModal, {
|
|
10067
|
-
tx: transaction,
|
|
10068
|
-
chainId: poolInfo.chainId,
|
|
10069
|
-
handleSuccess: handleSuccess
|
|
10070
|
-
});
|
|
10071
|
-
}
|
|
10072
|
-
|
|
10073
|
-
var _templateObject, _templateObject2, _templateObject3;
|
|
10074
|
-
function ChooseTranche(_ref) {
|
|
10075
|
-
let {
|
|
10076
|
-
selectedTranche,
|
|
10077
|
-
changeTranche
|
|
10078
|
-
} = _ref;
|
|
10079
|
-
const theme = material.useTheme();
|
|
10080
|
-
const dispatch = useAppDispatch();
|
|
10081
|
-
const styles = {
|
|
10082
|
-
subTitle: material.css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n color: ", " !important;\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n margin-top: ", ";\n margin-left: ", ";\n "])), theme.palette.text.primary, theme.spacing(5), theme.spacing(2)),
|
|
10083
|
-
radioGroup: material.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n margin-left: ", ";\n margin-top: ", ";\n "])), theme.spacing(3), theme.spacing(3)),
|
|
10084
|
-
formControl: material.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-bottom: ", ";\n\n .MuiFormControlLabel-label {\n color: ", ";\n font-weight: 400;\n font-size: 16px;\n line-height: 150%;\n letter-spacing: 0.15px;\n }\n "])), theme.spacing(1), theme.palette.text.primary)
|
|
10085
|
-
};
|
|
10086
|
-
const handleNext = () => {
|
|
10087
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
10088
|
-
};
|
|
10089
|
-
const items = [{
|
|
10090
|
-
label: 'Senior',
|
|
10091
|
-
value: 'senior'
|
|
10092
|
-
}, {
|
|
10093
|
-
label: 'Junior',
|
|
10094
|
-
value: 'junior'
|
|
10095
|
-
}];
|
|
10096
|
-
return jsxRuntime.jsxs(WrapperModal, {
|
|
10097
|
-
title: "Cancel Redemption",
|
|
10098
|
-
children: [jsxRuntime.jsxs(material.FormControl, {
|
|
10099
|
-
children: [jsxRuntime.jsx(material.FormLabel, {
|
|
10100
|
-
css: styles.subTitle,
|
|
10101
|
-
children: "Select Tranche Type"
|
|
10102
|
-
}), jsxRuntime.jsx(material.RadioGroup, {
|
|
10103
|
-
"aria-labelledby": "buttons-group-label",
|
|
10104
|
-
name: "radio-buttons-group",
|
|
10105
|
-
css: styles.radioGroup,
|
|
10106
|
-
onChange: e => changeTranche(e.target.value),
|
|
10107
|
-
children: items.map(item => jsxRuntime.jsx(material.FormControlLabel, {
|
|
10108
|
-
value: item.value,
|
|
10109
|
-
control: jsxRuntime.jsx(material.Radio, {
|
|
10110
|
-
sx: {
|
|
10111
|
-
'& .MuiSvgIcon-root': {
|
|
10112
|
-
fontSize: 24
|
|
10113
|
-
}
|
|
10114
|
-
}
|
|
10115
|
-
}),
|
|
10116
|
-
label: item.label,
|
|
10117
|
-
css: styles.formControl
|
|
10118
|
-
}, item.label))
|
|
10119
|
-
})]
|
|
10120
|
-
}), jsxRuntime.jsx(BottomButton, {
|
|
10121
|
-
variant: "contained",
|
|
10122
|
-
disabled: !selectedTranche,
|
|
10123
|
-
onClick: handleNext,
|
|
10124
|
-
children: "NEXT"
|
|
10125
|
-
})]
|
|
10126
|
-
});
|
|
10127
|
-
}
|
|
10128
|
-
|
|
10129
|
-
function Done(_ref) {
|
|
10130
|
-
let {
|
|
10131
|
-
poolInfo,
|
|
10132
|
-
lenderState,
|
|
10133
|
-
selectedTranche,
|
|
10134
|
-
handleAction
|
|
10135
|
-
} = _ref;
|
|
10136
|
-
const {
|
|
10137
|
-
mintAccount,
|
|
10138
|
-
loading: isLoadingTrancheMintAccounts
|
|
10139
|
-
} = webShared.useTrancheMintAccounts(poolInfo, selectedTranche);
|
|
10140
|
-
const {
|
|
10141
|
-
solanaSignature
|
|
10142
|
-
} = useAppSelector(selectWidgetState);
|
|
10143
|
-
const content = !lenderState || isLoadingTrancheMintAccounts || !mintAccount ? [''] : ["Your request to cancel the redemption of ".concat(shared.formatNumber(shared.SolanaTokenUtils.formatUnits(lenderState.redemptionRecord.numSharesRequested, mintAccount.decimals)), " shares has been successfully processed.")];
|
|
10144
|
-
return jsxRuntime.jsx(SolanaTxDoneModal, {
|
|
10145
|
-
handleAction: handleAction,
|
|
10146
|
-
content: content,
|
|
10147
|
-
chainId: poolInfo.chainId,
|
|
10148
|
-
solanaSignature: solanaSignature,
|
|
10149
|
-
buttonText: "DONE"
|
|
10150
|
-
});
|
|
10151
|
-
}
|
|
10152
|
-
|
|
10153
|
-
function SolanaLendCancelRedemption(_ref) {
|
|
10154
|
-
let {
|
|
10155
|
-
poolInfo,
|
|
10156
|
-
handleClose,
|
|
10157
|
-
handleSuccess
|
|
10158
|
-
} = _ref;
|
|
10159
|
-
const dispatch = reactRedux.useDispatch();
|
|
10160
|
-
const {
|
|
10161
|
-
seniorLenderStateAccount,
|
|
10162
|
-
juniorLenderStateAccount,
|
|
10163
|
-
juniorLenderStateAccountPDA,
|
|
10164
|
-
seniorLenderStateAccountPDA,
|
|
10165
|
-
loading: isLoadingLenderAccounts
|
|
10166
|
-
} = webShared.useLenderAccounts(poolInfo.chainId, poolInfo.poolName);
|
|
10167
|
-
const {
|
|
10168
|
-
step,
|
|
10169
|
-
errorMessage
|
|
10170
|
-
} = useAppSelector(selectWidgetState);
|
|
10171
|
-
const [selectedTranche, setSelectedTranche] = React.useState();
|
|
10172
|
-
React.useEffect(() => {
|
|
10173
|
-
if (!step && !isLoadingLenderAccounts) {
|
|
10174
|
-
const seniorTrancheSharesRequested = new anchor.BN(seniorLenderStateAccount === null || seniorLenderStateAccount === void 0 ? void 0 : seniorLenderStateAccount.redemptionRecord.numSharesRequested);
|
|
10175
|
-
const juniorTrancheSharesRequested = new anchor.BN(juniorLenderStateAccount === null || juniorLenderStateAccount === void 0 ? void 0 : juniorLenderStateAccount.redemptionRecord.numSharesRequested);
|
|
10176
|
-
if (juniorTrancheSharesRequested.gtn(0) && seniorTrancheSharesRequested.lten(0)) {
|
|
10177
|
-
setSelectedTranche('junior');
|
|
10178
|
-
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
10179
|
-
return;
|
|
10180
|
-
}
|
|
10181
|
-
if (seniorTrancheSharesRequested.gtn(0) && juniorTrancheSharesRequested.lten(0)) {
|
|
10182
|
-
setSelectedTranche('senior');
|
|
10183
|
-
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
10184
|
-
return;
|
|
10185
|
-
}
|
|
10186
|
-
if (seniorTrancheSharesRequested.gtn(0) && juniorTrancheSharesRequested.gtn(0)) {
|
|
10187
|
-
dispatch(setStep(WIDGET_STEP.ChooseTranche));
|
|
10188
|
-
}
|
|
10189
|
-
}
|
|
10190
|
-
}, [dispatch, step, isLoadingLenderAccounts, seniorLenderStateAccount === null || seniorLenderStateAccount === void 0 ? void 0 : seniorLenderStateAccount.redemptionRecord.numSharesRequested, juniorLenderStateAccount === null || juniorLenderStateAccount === void 0 ? void 0 : juniorLenderStateAccount.redemptionRecord.numSharesRequested]);
|
|
10191
|
-
const title = 'Cancel Redemption';
|
|
10192
|
-
if (isLoadingLenderAccounts) {
|
|
10193
|
-
return jsxRuntime.jsx(WidgetWrapper, {
|
|
10194
|
-
isOpen: true,
|
|
10195
|
-
isLoading: true,
|
|
10196
|
-
loadingTitle: title,
|
|
10197
|
-
handleClose: handleClose,
|
|
10198
|
-
handleSuccess: handleSuccess
|
|
10199
|
-
});
|
|
10200
|
-
}
|
|
10201
|
-
return jsxRuntime.jsxs(WidgetWrapper, {
|
|
10202
|
-
isOpen: true,
|
|
10203
|
-
loadingTitle: title,
|
|
10204
|
-
handleClose: handleClose,
|
|
10205
|
-
handleSuccess: handleSuccess,
|
|
10206
|
-
children: [step === WIDGET_STEP.ChooseTranche && jsxRuntime.jsx(ChooseTranche, {
|
|
10207
|
-
selectedTranche: selectedTranche,
|
|
10208
|
-
changeTranche: setSelectedTranche
|
|
10209
|
-
}), step === WIDGET_STEP.Transfer && selectedTranche && jsxRuntime.jsx(Transfer, {
|
|
10210
|
-
poolInfo: poolInfo,
|
|
10211
|
-
lenderState: selectedTranche === 'senior' ? seniorLenderStateAccount : juniorLenderStateAccount,
|
|
10212
|
-
lenderStatePDA: selectedTranche === 'senior' ? seniorLenderStateAccountPDA : juniorLenderStateAccountPDA,
|
|
10213
|
-
selectedTranche: selectedTranche
|
|
10214
|
-
}), step === WIDGET_STEP.Done && selectedTranche && jsxRuntime.jsx(Done, {
|
|
10215
|
-
poolInfo: poolInfo,
|
|
10216
|
-
lenderState: selectedTranche === 'senior' ? seniorLenderStateAccount : juniorLenderStateAccount,
|
|
10217
|
-
selectedTranche: selectedTranche,
|
|
10218
|
-
handleAction: handleClose
|
|
10219
|
-
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
10220
|
-
title: title,
|
|
10221
|
-
errorReason: "Sorry there was an error",
|
|
10222
|
-
errorMessage: errorMessage,
|
|
10223
|
-
handleOk: handleClose
|
|
10224
|
-
})]
|
|
10225
|
-
});
|
|
10226
|
-
}
|
|
10227
|
-
|
|
10228
|
-
function ChooseAmount(_ref) {
|
|
10229
|
-
let {
|
|
10230
|
-
poolInfo,
|
|
10231
|
-
creditConfigAccount,
|
|
10232
|
-
tokenAccount
|
|
10233
|
-
} = _ref;
|
|
10234
|
-
const dispatch = useAppDispatch();
|
|
10235
|
-
const {
|
|
10236
|
-
symbol,
|
|
10237
|
-
decimals
|
|
10238
|
-
} = poolInfo.underlyingMint;
|
|
10239
|
-
const sentinel = React.useMemo(() => shared.getSentinelAddress(poolInfo.chainId), [poolInfo.chainId]);
|
|
10240
|
-
const [currentAmount, setCurrentAmount] = React.useState(0);
|
|
10241
|
-
const creditAvailable = React.useMemo(() => shared.SolanaTokenUtils.formatUnits(creditConfigAccount.creditAvailable, decimals), [creditConfigAccount.creditAvailable, decimals]);
|
|
10242
|
-
const handleChangeAmount = newAmount => {
|
|
10243
|
-
setCurrentAmount(newAmount);
|
|
10244
|
-
};
|
|
10245
|
-
const handleAction = React.useCallback(() => {
|
|
10246
|
-
var _tokenAccount$delegat;
|
|
10247
|
-
if (!tokenAccount) {
|
|
10248
|
-
return;
|
|
10249
|
-
}
|
|
10250
|
-
const borrowAmountBN = shared.SolanaTokenUtils.parseUnits(String(currentAmount), decimals);
|
|
10251
|
-
const nextStep = borrowAmountBN.gt(new anchor.BN(tokenAccount.delegatedAmount)) || ((_tokenAccount$delegat = tokenAccount.delegate) === null || _tokenAccount$delegat === void 0 ? void 0 : _tokenAccount$delegat.toString()) !== sentinel ? WIDGET_STEP.ApproveAllowance : WIDGET_STEP.Transfer;
|
|
10252
|
-
dispatch(setBorrowInfo({
|
|
10253
|
-
borrowAmount: currentAmount,
|
|
10254
|
-
borrowAmountBN,
|
|
10255
|
-
chargedFees: 0,
|
|
10256
|
-
nextStep
|
|
10257
|
-
}));
|
|
10258
|
-
}, [currentAmount, decimals, dispatch, sentinel, tokenAccount]);
|
|
10259
|
-
return jsxRuntime.jsx(InputAmountModal, {
|
|
10260
|
-
title: "Borrow",
|
|
10261
|
-
subTitle: "Choose Amount",
|
|
10262
|
-
tokenSymbol: symbol,
|
|
10263
|
-
currentAmount: currentAmount,
|
|
10264
|
-
handleChangeAmount: handleChangeAmount,
|
|
10265
|
-
maxAmount: creditAvailable,
|
|
10266
|
-
infos: ["".concat(String(shared.formatNumber(creditAvailable)), " ").concat(symbol, " Available")],
|
|
10267
|
-
handleAction: handleAction,
|
|
10268
|
-
actionText: "BORROW"
|
|
10269
|
-
});
|
|
10270
|
-
}
|
|
10271
|
-
|
|
10272
|
-
function ApproveAllowance(_ref) {
|
|
10273
|
-
let {
|
|
10274
|
-
poolInfo,
|
|
10275
|
-
tokenAccount
|
|
10276
|
-
} = _ref;
|
|
10277
|
-
const dispatch = useAppDispatch();
|
|
10278
|
-
const {
|
|
10279
|
-
wallet,
|
|
10280
|
-
publicKey,
|
|
10281
|
-
sendTransaction,
|
|
10282
|
-
signTransaction
|
|
10283
|
-
} = walletAdapterReact.useWallet();
|
|
10284
|
-
const sentinel = React.useMemo(() => shared.getSentinelAddress(poolInfo.chainId), [poolInfo.chainId]);
|
|
10285
|
-
const {
|
|
10286
|
-
connection
|
|
10287
|
-
} = walletAdapterReact.useConnection();
|
|
10288
|
-
const [transaction, setTransaction] = React.useState();
|
|
10289
|
-
const handleSuccess = React.useCallback(() => {
|
|
10290
|
-
dispatch(setStep(WIDGET_STEP.Transfer));
|
|
10291
|
-
}, [dispatch]);
|
|
10292
|
-
React.useEffect(() => {
|
|
10293
|
-
async function getTx() {
|
|
10294
|
-
if (!wallet || !publicKey || !connection || !signTransaction) {
|
|
10295
|
-
return;
|
|
10296
|
-
}
|
|
10297
|
-
const tx = new web3_js.Transaction().add(splToken.createApproveCheckedInstruction(tokenAccount.address, new web3_js.PublicKey(poolInfo.underlyingMint.address), new web3_js.PublicKey(sentinel),
|
|
10298
|
-
// delegate
|
|
10299
|
-
publicKey,
|
|
10300
|
-
// owner of the wallet
|
|
10301
|
-
shared.SolanaTokenUtils.parseUnits('100000000000',
|
|
10302
|
-
// 100 billion
|
|
10303
|
-
poolInfo.underlyingMint.decimals),
|
|
10304
|
-
// amount
|
|
10305
|
-
poolInfo.underlyingMint.decimals, undefined,
|
|
10306
|
-
// multiSigners
|
|
10307
|
-
splToken.TOKEN_2022_PROGRAM_ID));
|
|
10308
|
-
setTransaction(tx);
|
|
10309
|
-
}
|
|
10310
|
-
getTx();
|
|
10311
|
-
}, [connection, dispatch, poolInfo.underlyingMint.address, poolInfo.underlyingMint.decimals, publicKey, sendTransaction, sentinel, signTransaction, tokenAccount.address, wallet]);
|
|
10312
|
-
return jsxRuntime.jsx(SolanaTxSendModal, {
|
|
10313
|
-
tx: transaction,
|
|
10314
|
-
chainId: poolInfo.chainId,
|
|
10315
|
-
handleSuccess: handleSuccess
|
|
10316
|
-
});
|
|
10317
|
-
}
|
|
10318
|
-
|
|
10319
|
-
function SolanaBorrow(_ref) {
|
|
10320
|
-
let {
|
|
10321
|
-
poolInfo,
|
|
10322
|
-
handleClose,
|
|
10323
|
-
handleSuccess
|
|
10324
|
-
} = _ref;
|
|
10325
|
-
const dispatch = reactRedux.useDispatch();
|
|
10326
|
-
const {
|
|
10327
|
-
creditConfigAccount,
|
|
10328
|
-
loading: isLoadingBorrowerAccounts
|
|
10329
|
-
} = webShared.useBorrowerAccounts(poolInfo.chainId, poolInfo.poolName);
|
|
10330
|
-
const {
|
|
10331
|
-
account: tokenAccount,
|
|
10332
|
-
loading: isLoadingTokenAccounts
|
|
10333
|
-
} = webShared.usePoolUnderlyingTokenAccount(poolInfo);
|
|
10334
|
-
const {
|
|
10335
|
-
step,
|
|
10336
|
-
errorMessage
|
|
10337
|
-
} = useAppSelector(selectWidgetState);
|
|
10338
|
-
React.useEffect(() => {
|
|
10339
|
-
if (!step) {
|
|
10340
|
-
dispatch(setStep(WIDGET_STEP.ChooseAmount));
|
|
10341
|
-
}
|
|
10342
|
-
}, [dispatch, step]);
|
|
10343
|
-
const title = 'Redemption';
|
|
10344
|
-
if (isLoadingBorrowerAccounts || isLoadingTokenAccounts) {
|
|
10345
|
-
return jsxRuntime.jsx(WidgetWrapper, {
|
|
10346
|
-
isOpen: true,
|
|
10347
|
-
isLoading: true,
|
|
10348
|
-
loadingTitle: title,
|
|
10349
|
-
handleClose: handleClose,
|
|
10350
|
-
handleSuccess: handleSuccess
|
|
10351
|
-
});
|
|
10352
|
-
}
|
|
10353
|
-
return jsxRuntime.jsxs(WidgetWrapper, {
|
|
10354
|
-
isOpen: true,
|
|
10355
|
-
loadingTitle: title,
|
|
10356
|
-
handleClose: handleClose,
|
|
10357
|
-
handleSuccess: handleSuccess,
|
|
10358
|
-
children: [step === WIDGET_STEP.ChooseAmount && creditConfigAccount && tokenAccount && jsxRuntime.jsx(ChooseAmount, {
|
|
10359
|
-
poolInfo: poolInfo,
|
|
10360
|
-
creditConfigAccount: creditConfigAccount,
|
|
10361
|
-
tokenAccount: tokenAccount
|
|
10362
|
-
}), step === WIDGET_STEP.ApproveAllowance && tokenAccount && jsxRuntime.jsx(ApproveAllowance, {
|
|
10363
|
-
poolInfo: poolInfo,
|
|
10364
|
-
tokenAccount: tokenAccount
|
|
10365
|
-
}), step === WIDGET_STEP.Error && jsxRuntime.jsx(ErrorModal, {
|
|
10366
|
-
title: title,
|
|
10367
|
-
errorReason: "Sorry there was an error",
|
|
10368
|
-
errorMessage: errorMessage,
|
|
10369
|
-
handleOk: handleClose
|
|
10370
|
-
})]
|
|
10371
|
-
});
|
|
10372
|
-
}
|
|
10373
|
-
|
|
10374
|
-
function Widget(props) {
|
|
10375
|
-
const {
|
|
10376
|
-
children,
|
|
10377
|
-
provider
|
|
10378
|
-
} = props;
|
|
10379
|
-
const [chainId, setChainId] = React.useState(undefined);
|
|
10380
|
-
React.useEffect(() => {
|
|
10381
|
-
const getChainId = async () => {
|
|
10382
|
-
if (provider instanceof providers.JsonRpcProvider) {
|
|
10383
|
-
const network = await provider.getNetwork();
|
|
10384
|
-
setChainId(network === null || network === void 0 ? void 0 : network.chainId);
|
|
10385
|
-
}
|
|
10386
|
-
};
|
|
10387
|
-
getChainId();
|
|
10388
|
-
}, [provider]);
|
|
10389
|
-
return jsxRuntime.jsx(material.ThemeProvider, {
|
|
10390
|
-
theme: themeHuma,
|
|
10391
|
-
children: jsxRuntime.jsx(reactRedux.Provider, {
|
|
10392
|
-
store: store,
|
|
10393
|
-
children: jsxRuntime.jsx(webShared.Provider, {
|
|
10394
|
-
...props,
|
|
10395
|
-
defaultChainId: chainId,
|
|
10396
|
-
children: jsxRuntime.jsx(jotai.Provider, {
|
|
10397
|
-
children: jsxRuntime.jsx(ChainSupportProvider, {
|
|
10398
|
-
children: children
|
|
10399
|
-
})
|
|
10400
|
-
})
|
|
10401
|
-
})
|
|
9308
|
+
};
|
|
9309
|
+
getChainId();
|
|
9310
|
+
}, [provider]);
|
|
9311
|
+
return jsxRuntime.jsx(material.ThemeProvider, {
|
|
9312
|
+
theme: themeHuma,
|
|
9313
|
+
children: jsxRuntime.jsx(reactRedux.Provider, {
|
|
9314
|
+
store: store,
|
|
9315
|
+
children: jsxRuntime.jsx(webShared.Provider, {
|
|
9316
|
+
...props,
|
|
9317
|
+
defaultChainId: chainId,
|
|
9318
|
+
children: jsxRuntime.jsx(jotai.Provider, {
|
|
9319
|
+
children: jsxRuntime.jsx(ChainSupportProvider, {
|
|
9320
|
+
children: jsxRuntime.jsx(NotifiContextWrapper, {
|
|
9321
|
+
chainId: chainId,
|
|
9322
|
+
children: children
|
|
9323
|
+
})
|
|
9324
|
+
})
|
|
9325
|
+
})
|
|
9326
|
+
})
|
|
10402
9327
|
})
|
|
10403
9328
|
});
|
|
10404
9329
|
}
|
|
@@ -10791,108 +9716,6 @@ function ReceivableBackedCreditLinePaymentWidgetV2(props) {
|
|
|
10791
9716
|
});
|
|
10792
9717
|
}
|
|
10793
9718
|
|
|
10794
|
-
/**
|
|
10795
|
-
* Object representing the props passed to Solana widgets
|
|
10796
|
-
* @typedef {Object} SolanaWidgetProps
|
|
10797
|
-
*/
|
|
10798
|
-
|
|
10799
|
-
function SolanaWidget(props) {
|
|
10800
|
-
const {
|
|
10801
|
-
children
|
|
10802
|
-
} = props;
|
|
10803
|
-
return jsxRuntime.jsx(material.ThemeProvider, {
|
|
10804
|
-
theme: themeHuma,
|
|
10805
|
-
children: jsxRuntime.jsx(reactRedux.Provider, {
|
|
10806
|
-
store: store,
|
|
10807
|
-
children: children
|
|
10808
|
-
})
|
|
10809
|
-
});
|
|
10810
|
-
}
|
|
10811
|
-
|
|
10812
|
-
/**
|
|
10813
|
-
* Lend pool supply widget props for Solana pools
|
|
10814
|
-
* @typedef {Object} SolanaLendSupplyWidgetProps
|
|
10815
|
-
* @property {SolanaLendSupplyProps} SolanaLendSupplyProps - Specific widget props
|
|
10816
|
-
* @property {SolanaWidgetProps} SolanaWidgetProps - Widget general props.
|
|
10817
|
-
*/
|
|
10818
|
-
|
|
10819
|
-
/**
|
|
10820
|
-
* Lend pool supply widget for Solana pools
|
|
10821
|
-
*
|
|
10822
|
-
* @param {SolanaLendSupplyWidgetProps} props - Widget props
|
|
10823
|
-
*/
|
|
10824
|
-
function SolanaLendSupplyWidget(props) {
|
|
10825
|
-
return jsxRuntime.jsx(SolanaWidget, {
|
|
10826
|
-
...props,
|
|
10827
|
-
children: jsxRuntime.jsx(SolanaLendSupply, {
|
|
10828
|
-
...props
|
|
10829
|
-
})
|
|
10830
|
-
});
|
|
10831
|
-
}
|
|
10832
|
-
|
|
10833
|
-
/**
|
|
10834
|
-
* Lend pool supply widget props for Solana pools
|
|
10835
|
-
* @typedef {Object} SolanaLendAddRedemptionWidgetProps
|
|
10836
|
-
* @property {SolanaLendSupplyProps} SolanaLendSupplyProps - Specific widget props
|
|
10837
|
-
* @property {SolanaWidgetProps} SolanaWidgetProps - Widget general props.
|
|
10838
|
-
*/
|
|
10839
|
-
|
|
10840
|
-
/**
|
|
10841
|
-
* Lend pool supply widget for Solana pools
|
|
10842
|
-
*
|
|
10843
|
-
* @param {SolanaLendAddRedemptionWidgetProps} props - Widget props
|
|
10844
|
-
*/
|
|
10845
|
-
function SolanaLendAddRedemptionWidget(props) {
|
|
10846
|
-
return jsxRuntime.jsx(SolanaWidget, {
|
|
10847
|
-
...props,
|
|
10848
|
-
children: jsxRuntime.jsx(SolanaLendAddRedemption, {
|
|
10849
|
-
...props
|
|
10850
|
-
})
|
|
10851
|
-
});
|
|
10852
|
-
}
|
|
10853
|
-
|
|
10854
|
-
/**
|
|
10855
|
-
* Lend pool supply widget props for Solana pools
|
|
10856
|
-
* @typedef {Object} SolanaLendCancelRedemptionWidgetProps
|
|
10857
|
-
* @property {SolanaLendSupplyProps} SolanaLendSupplyProps - Specific widget props
|
|
10858
|
-
* @property {SolanaWidgetProps} SolanaWidgetProps - Widget general props.
|
|
10859
|
-
*/
|
|
10860
|
-
|
|
10861
|
-
/**
|
|
10862
|
-
* Lend pool supply widget for Solana pools
|
|
10863
|
-
*
|
|
10864
|
-
* @param {SolanaLendCancelRedemptionWidgetProps} props - Widget props
|
|
10865
|
-
*/
|
|
10866
|
-
function SolanaLendCancelRedemptionWidget(props) {
|
|
10867
|
-
return jsxRuntime.jsx(SolanaWidget, {
|
|
10868
|
-
...props,
|
|
10869
|
-
children: jsxRuntime.jsx(SolanaLendCancelRedemption, {
|
|
10870
|
-
...props
|
|
10871
|
-
})
|
|
10872
|
-
});
|
|
10873
|
-
}
|
|
10874
|
-
|
|
10875
|
-
/**
|
|
10876
|
-
* Lend pool supply widget props for Solana pools
|
|
10877
|
-
* @typedef {Object} SolanaBorrowWidgetProps
|
|
10878
|
-
* @property {SolanaLendSupplyProps} SolanaLendSupplyProps - Specific widget props
|
|
10879
|
-
* @property {SolanaWidgetProps} SolanaWidgetProps - Widget general props.
|
|
10880
|
-
*/
|
|
10881
|
-
|
|
10882
|
-
/**
|
|
10883
|
-
* Lend pool supply widget for Solana pools
|
|
10884
|
-
*
|
|
10885
|
-
* @param {SolanaBorrowWidgetProps} props - Widget props
|
|
10886
|
-
*/
|
|
10887
|
-
function SolanaBorrowWidget(props) {
|
|
10888
|
-
return jsxRuntime.jsx(SolanaWidget, {
|
|
10889
|
-
...props,
|
|
10890
|
-
children: jsxRuntime.jsx(SolanaBorrow, {
|
|
10891
|
-
...props
|
|
10892
|
-
})
|
|
10893
|
-
});
|
|
10894
|
-
}
|
|
10895
|
-
|
|
10896
9719
|
exports.AddRedemptionWidgetV2 = AddRedemptionWidgetV2;
|
|
10897
9720
|
exports.AutoPaybackWidgetV2 = AutoPaybackWidgetV2;
|
|
10898
9721
|
exports.CancelRedemptionWidgetV2 = CancelRedemptionWidgetV2;
|
|
@@ -10907,12 +9730,9 @@ exports.LendSupplyWidget = LendSupplyWidget;
|
|
|
10907
9730
|
exports.LendSupplyWidgetV2 = LendSupplyWidgetV2;
|
|
10908
9731
|
exports.LendWithdrawWidget = LendWithdrawWidget;
|
|
10909
9732
|
exports.LendWithdrawWidgetV2 = LendWithdrawWidgetV2;
|
|
9733
|
+
exports.NotifiContextWrapper = NotifiContextWrapper;
|
|
10910
9734
|
exports.ReceivableBackedCreditLineBorrowWidgetV2 = ReceivableBackedCreditLineBorrowWidgetV2;
|
|
10911
9735
|
exports.ReceivableBackedCreditLinePaymentWidgetV2 = ReceivableBackedCreditLinePaymentWidgetV2;
|
|
10912
|
-
exports.SolanaBorrowWidget = SolanaBorrowWidget;
|
|
10913
|
-
exports.SolanaLendAddRedemptionWidget = SolanaLendAddRedemptionWidget;
|
|
10914
|
-
exports.SolanaLendCancelRedemptionWidget = SolanaLendCancelRedemptionWidget;
|
|
10915
|
-
exports.SolanaLendSupplyWidget = SolanaLendSupplyWidget;
|
|
10916
9736
|
exports.SuperfluidFactoringWidget = SuperfluidFactoringWidget;
|
|
10917
9737
|
exports.SupplyFirstLossCoverWidget = SupplyFirstLossCoverWidget;
|
|
10918
9738
|
//# sourceMappingURL=index.cjs.map
|