@gr4vy/secure-fields-react 2.3.4 → 2.5.0
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/CHANGELOG.md +38 -0
- package/lib/components/Field/Field.js +1 -1
- package/lib/components/Field/Field.js.map +1 -1
- package/lib/hooks/use-secure-fields.js +3 -1
- package/lib/hooks/use-secure-fields.js.map +1 -1
- package/lib/hooks/use-secure-input.js +6 -2
- package/lib/hooks/use-secure-input.js.map +1 -1
- package/lib/types.d.ts +3 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,41 @@
|
|
|
1
|
+
# v2.5.0 (Thu May 07 2026)
|
|
2
|
+
|
|
3
|
+
#### 🚀 Enhancement
|
|
4
|
+
|
|
5
|
+
- task: add api scheme detection [#1208](https://github.com/gr4vy/secure-fields/pull/1208) ([@luca-gr4vy](https://github.com/luca-gr4vy))
|
|
6
|
+
|
|
7
|
+
#### 🐛 Bug Fix
|
|
8
|
+
|
|
9
|
+
- task: Add field auto-focus functionality (opt-in) - TA-15759 [#1201](https://github.com/gr4vy/secure-fields/pull/1201) ([@luca-gr4vy](https://github.com/luca-gr4vy) [@GiordanoArman](https://github.com/GiordanoArman))
|
|
10
|
+
|
|
11
|
+
#### Authors: 2
|
|
12
|
+
|
|
13
|
+
- GiordanoArman ([@GiordanoArman](https://github.com/GiordanoArman))
|
|
14
|
+
- Luca Allievi ([@luca-gr4vy](https://github.com/luca-gr4vy))
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# v2.4.0 (Thu Apr 30 2026)
|
|
19
|
+
|
|
20
|
+
#### 🚀 Enhancement
|
|
21
|
+
|
|
22
|
+
- task: add support for auto advance in react [#1170](https://github.com/gr4vy/secure-fields/pull/1170) ([@luca-gr4vy](https://github.com/luca-gr4vy))
|
|
23
|
+
|
|
24
|
+
#### 🐛 Bug Fix
|
|
25
|
+
|
|
26
|
+
- task: add setautoadvance method [#1169](https://github.com/gr4vy/secure-fields/pull/1169) ([@luca-gr4vy](https://github.com/luca-gr4vy) [@GiordanoArman](https://github.com/GiordanoArman))
|
|
27
|
+
|
|
28
|
+
#### 🏠 Internal
|
|
29
|
+
|
|
30
|
+
- fix: uuid webpack-dev-server vulnerability [#1195](https://github.com/gr4vy/secure-fields/pull/1195) ([@luca-gr4vy](https://github.com/luca-gr4vy) [@GiordanoArman](https://github.com/GiordanoArman))
|
|
31
|
+
|
|
32
|
+
#### Authors: 2
|
|
33
|
+
|
|
34
|
+
- GiordanoArman ([@GiordanoArman](https://github.com/GiordanoArman))
|
|
35
|
+
- Luca Allievi ([@luca-gr4vy](https://github.com/luca-gr4vy))
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
1
39
|
# v2.3.4 (Tue Apr 21 2026)
|
|
2
40
|
|
|
3
41
|
#### 🐛 Bug Fix
|
|
@@ -27,7 +27,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
27
27
|
var react_1 = require("react");
|
|
28
28
|
var use_secure_input_1 = require("../../hooks/use-secure-input");
|
|
29
29
|
exports.Field = (0, react_1.forwardRef)(function (props, handleRef) {
|
|
30
|
-
var maskInput = props.maskInput, onRedacted = props.onRedacted, onUnredacted = props.onUnredacted, rest = __rest(props, ["maskInput", "onRedacted", "onUnredacted"]);
|
|
30
|
+
var autoFocus = props.autoFocus, maskInput = props.maskInput, onRedacted = props.onRedacted, onUnredacted = props.onUnredacted, onCardDetailsChanged = props.onCardDetailsChanged, rest = __rest(props, ["autoFocus", "maskInput", "onRedacted", "onUnredacted", "onCardDetailsChanged"]);
|
|
31
31
|
var ref = (0, react_1.useRef)(null);
|
|
32
32
|
var field = (0, use_secure_input_1.useSecureInput)(__assign(__assign({}, props), { ref: ref }));
|
|
33
33
|
(0, react_1.useImperativeHandle)(handleRef, function () { return ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/components/Field/Field.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA+D;AAC/D,iEAAuD;AAG1C,QAAA,KAAK,GAAG,IAAA,kBAAU,EAC7B,UAAC,KAAK,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/components/Field/Field.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA+D;AAC/D,iEAAuD;AAG1C,QAAA,KAAK,GAAG,IAAA,kBAAU,EAC7B,UAAC,KAAK,EAAE,SAAS;IAEb,IAAA,SAAS,GAMP,KAAK,UANE,EACT,SAAS,GAKP,KAAK,UALE,EACT,UAAU,GAIR,KAAK,WAJG,EACV,YAAY,GAGV,KAAK,aAHK,EACZ,oBAAoB,GAElB,KAAK,qBAFa,EACjB,IAAI,UACL,KAAK,EAPH,gFAOL,CADQ,CACA;IACT,IAAM,GAAG,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IACxB,IAAM,KAAK,GAAG,IAAA,iCAAc,wBAAM,KAAK,KAAE,GAAG,KAAA,IAAG,CAAA;IAE/C,IAAA,2BAAmB,EACjB,SAAS,EACT,cAAM,OAAA,CAAC;QACL,KAAK,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,qDAAI,CAAA,EAAA;QAC7B,WAAW,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,qDAAI,CAAA,EAAA;QACzC,aAAa,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,qDAAI,CAAA,EAAA;KAC9C,CAAC,EAJI,CAIJ,EACF,CAAC,KAAK,CAAC,CACR,CAAA;IAED,OAAO,2CAAO,GAAG,EAAE,GAAG,IAAM,IAAI,EAAI,CAAA;AACtC,CAAC,CACF,CAAA;AAED,aAAK,CAAC,WAAW,GAAG,OAAO,CAAA"}
|
|
@@ -32,7 +32,7 @@ var eventHandlers = {
|
|
|
32
32
|
exports.SecureFieldsContext = (0, react_1.createContext)(null);
|
|
33
33
|
var SecureFieldsProvider = function (_a) {
|
|
34
34
|
var children = _a.children, config = __rest(_a, ["children"]);
|
|
35
|
-
var sessionId = config.sessionId, debug = config.debug, font = config.font;
|
|
35
|
+
var sessionId = config.sessionId, autoAdvance = config.autoAdvance, debug = config.debug, font = config.font;
|
|
36
36
|
var _b = (0, react_1.useState)(), secureFields = _b[0], setSecureFields = _b[1];
|
|
37
37
|
var _c = (0, react_1.useState)(), clickToPay = _c[0], setClickToPay = _c[1];
|
|
38
38
|
var handlers = Object.entries(eventHandlers).map(function (_a) {
|
|
@@ -44,12 +44,14 @@ var SecureFieldsProvider = function (_a) {
|
|
|
44
44
|
});
|
|
45
45
|
var handlersDeps = handlers.map(function (handler) { return handler.callback; });
|
|
46
46
|
(0, react_1.useEffect)(function () {
|
|
47
|
+
// eslint-disable-next-line react-hooks/set-state-in-effect
|
|
47
48
|
setSecureFields(new secure_fields_1.SecureFields(config));
|
|
48
49
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
49
50
|
}, [sessionId]);
|
|
50
51
|
(0, react_1.useLayoutEffect)(function () {
|
|
51
52
|
secureFields === null || secureFields === void 0 ? void 0 : secureFields.setDebug(debug);
|
|
52
53
|
font && (secureFields === null || secureFields === void 0 ? void 0 : secureFields.addFont(font));
|
|
54
|
+
autoAdvance && (secureFields === null || secureFields === void 0 ? void 0 : secureFields.setAutoAdvance(autoAdvance));
|
|
53
55
|
handlers.forEach(function (_a) {
|
|
54
56
|
var event = _a.event, callback = _a.callback;
|
|
55
57
|
return callback && (secureFields === null || secureFields === void 0 ? void 0 : secureFields.addEventListener(event, callback));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-secure-fields.js","sourceRoot":"","sources":["../../src/hooks/use-secure-fields.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAA+E;AAC/E,+BAQc;AAGd,IAAM,aAAa,GAA2B;IAC5C,OAAO,EAAE,sBAAM,CAAC,KAAK;IACrB,YAAY,EAAE,sBAAM,CAAC,WAAW;IAChC,kBAAkB,EAAE,sBAAM,CAAC,kBAAkB;IAC7C,kBAAkB,EAAE,sBAAM,CAAC,kBAAkB;IAC7C,uBAAuB,EAAE,sBAAM,CAAC,wBAAwB;IACxD,iBAAiB,EAAE,sBAAM,CAAC,kBAAkB;IAC5C,mBAAmB,EAAE,sBAAM,CAAC,qBAAqB;IACjD,iBAAiB,EAAE,sBAAM,CAAC,kBAAkB;IAC5C,kBAAkB,EAAE,sBAAM,CAAC,mBAAmB;IAC9C,+BAA+B,EAAE,sBAAM,CAAC,mCAAmC;IAC3E,2BAA2B,EAAE,sBAAM,CAAC,+BAA+B;IACnE,cAAc,EAAE,sBAAM,CAAC,aAAa;CACrC,CAAA;AAEY,QAAA,mBAAmB,GAAG,IAAA,qBAAa,EAK7C,IAAI,CAAC,CAAA;AAED,IAAM,oBAAoB,GAAG,UAAC,EAGT;IAF1B,IAAA,QAAQ,cAAA,EACL,MAAM,cAF0B,YAGpC,CADU;IAED,IAAA,SAAS,GAAkB,MAAM,
|
|
1
|
+
{"version":3,"file":"use-secure-fields.js","sourceRoot":"","sources":["../../src/hooks/use-secure-fields.tsx"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ var addFieldFns = {
|
|
|
33
33
|
var useSecureInput = function (options) {
|
|
34
34
|
var secureFields = (0, use_secure_fields_1.useSecureFields)().secureFields;
|
|
35
35
|
var _a = (0, react_1.useState)(), field = _a[0], setField = _a[1];
|
|
36
|
-
var ref = options.ref, type = options.type, onBlur = options.onBlur, onFocus = options.onFocus, onInput = options.onInput, onRedacted = options.onRedacted, onUnredacted = options.onUnredacted, rest = __rest(options, ["ref", "type", "onBlur", "onFocus", "onInput", "onRedacted", "onUnredacted"]);
|
|
36
|
+
var ref = options.ref, type = options.type, onBlur = options.onBlur, onFocus = options.onFocus, onInput = options.onInput, onRedacted = options.onRedacted, onUnredacted = options.onUnredacted, onCardDetailsChanged = options.onCardDetailsChanged, rest = __rest(options, ["ref", "type", "onBlur", "onFocus", "onInput", "onRedacted", "onUnredacted", "onCardDetailsChanged"]);
|
|
37
37
|
var addField = function (type) {
|
|
38
38
|
if (!secureFields || !(options === null || options === void 0 ? void 0 : options.ref) || field) {
|
|
39
39
|
return;
|
|
@@ -48,7 +48,7 @@ var useSecureInput = function (options) {
|
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
50
|
setField(addField(options === null || options === void 0 ? void 0 : options.type));
|
|
51
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
51
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/refs
|
|
52
52
|
}, [secureFields, ref === null || ref === void 0 ? void 0 : ref.current, options === null || options === void 0 ? void 0 : options.type, field]);
|
|
53
53
|
(0, react_1.useEffect)(function () {
|
|
54
54
|
if (!field)
|
|
@@ -58,12 +58,16 @@ var useSecureInput = function (options) {
|
|
|
58
58
|
onInput && field.addEventListener('input', onInput);
|
|
59
59
|
onRedacted && field.addEventListener('redacted', onRedacted);
|
|
60
60
|
onUnredacted && field.addEventListener('unredacted', onUnredacted);
|
|
61
|
+
onCardDetailsChanged &&
|
|
62
|
+
field.addEventListener('card-details-changed', onCardDetailsChanged);
|
|
61
63
|
return function () {
|
|
62
64
|
onBlur && field.removeEventListener('blur', onBlur);
|
|
63
65
|
onFocus && field.removeEventListener('focus', onFocus);
|
|
64
66
|
onInput && field.removeEventListener('input', onInput);
|
|
65
67
|
onRedacted && field.removeEventListener('redacted', onRedacted);
|
|
66
68
|
onUnredacted && field.removeEventListener('unredacted', onUnredacted);
|
|
69
|
+
onCardDetailsChanged &&
|
|
70
|
+
field.removeEventListener('card-details-changed', onCardDetailsChanged);
|
|
67
71
|
};
|
|
68
72
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
69
73
|
}, [secureFields, field]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-secure-input.js","sourceRoot":"","sources":["../../src/hooks/use-secure-input.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAA2C;AAC3C,yDAAyD;AAGzD,IAAM,WAAW,GAAG;IAClB,MAAM,EAAE,oBAAoB;IAC5B,UAAU,EAAE,oBAAoB;IAChC,YAAY,EAAE,sBAAsB;CACrC,CAAA;AAEM,IAAM,cAAc,GAAG,UAAC,OAAe;IACpC,IAAA,YAAY,GAAK,IAAA,mCAAe,GAAE,aAAtB,CAAsB;IACpC,IAAA,KAAoB,IAAA,gBAAQ,GAAe,EAA1C,KAAK,QAAA,EAAE,QAAQ,QAA2B,CAAA;IAE/C,IAAA,GAAG,
|
|
1
|
+
{"version":3,"file":"use-secure-input.js","sourceRoot":"","sources":["../../src/hooks/use-secure-input.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAA2C;AAC3C,yDAAyD;AAGzD,IAAM,WAAW,GAAG;IAClB,MAAM,EAAE,oBAAoB;IAC5B,UAAU,EAAE,oBAAoB;IAChC,YAAY,EAAE,sBAAsB;CACrC,CAAA;AAEM,IAAM,cAAc,GAAG,UAAC,OAAe;IACpC,IAAA,YAAY,GAAK,IAAA,mCAAe,GAAE,aAAtB,CAAsB;IACpC,IAAA,KAAoB,IAAA,gBAAQ,GAAe,EAA1C,KAAK,QAAA,EAAE,QAAQ,QAA2B,CAAA;IAE/C,IAAA,GAAG,GASD,OAAO,IATN,EACH,IAAI,GAQF,OAAO,KARL,EACJ,MAAM,GAOJ,OAAO,OAPH,EACN,OAAO,GAML,OAAO,QANF,EACP,OAAO,GAKL,OAAO,QALF,EACP,UAAU,GAIR,OAAO,WAJC,EACV,YAAY,GAGV,OAAO,aAHG,EACZ,oBAAoB,GAElB,OAAO,qBAFW,EACjB,IAAI,UACL,OAAO,EAVL,qGAUL,CADQ,CACE;IAEX,IAAM,QAAQ,GAAG,UAAC,IAAmB;QACnC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,CAAA,IAAI,KAAK,EAAE,CAAC;YAC5C,OAAM;QACR,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,eAAO,IAAI,EAAG,CAAA;QAClE,CAAC;QAED,OAAO,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,aAAI,IAAI,MAAA,IAAK,IAAI,EAAG,CAAA;IAC9D,CAAC,CAAA;IAED,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAA,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAA,IAAI,KAAK,EAAE,CAAC;YAC9D,OAAM;QACR,CAAC;QAED,QAAQ,CAAC,QAAQ,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAA;QACjC,yEAAyE;IAC3E,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IAEtD,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChD,OAAO,IAAI,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACnD,OAAO,IAAI,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACnD,UAAU,IAAI,KAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QAC5D,YAAY,IAAI,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;QAClE,oBAAoB;YAClB,KAAK,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAA;QAEtE,OAAO;YACL,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACnD,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtD,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtD,UAAU,IAAI,KAAK,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;YAC/D,YAAY,IAAI,KAAK,CAAC,mBAAmB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;YACrE,oBAAoB;gBAClB,KAAK,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAA;QAC3E,CAAC,CAAA;QACD,uDAAuD;IACzD,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAA;IAEzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AA5DY,QAAA,cAAc,kBA4D1B"}
|
package/lib/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClickToPayOptions as BaseClickToPayOptions, ClickToPayInstance, Config as BaseConfig, Field as BaseField, FormChangeEventData, ThreeDSecureOptions as BaseThreeDSecureOptions } from '@gr4vy/secure-fields';
|
|
1
|
+
import { AutoAdvanceConfig, ClickToPayOptions as BaseClickToPayOptions, ClickToPayInstance, Config as BaseConfig, Field as BaseField, FormChangeEventData, ThreeDSecureOptions as BaseThreeDSecureOptions } from '@gr4vy/secure-fields';
|
|
2
2
|
import { MutableRefObject } from 'react';
|
|
3
3
|
export type CardVaultFailureData = {
|
|
4
4
|
status: number;
|
|
@@ -8,6 +8,7 @@ export type CardVaultFailureData = {
|
|
|
8
8
|
export type Config = BaseConfig & {
|
|
9
9
|
debug?: boolean;
|
|
10
10
|
font?: string;
|
|
11
|
+
autoAdvance?: AutoAdvanceConfig;
|
|
11
12
|
onReady?: (config: {
|
|
12
13
|
version: string;
|
|
13
14
|
} & BaseConfig) => void;
|
|
@@ -34,6 +35,7 @@ export type Field = BaseField & {
|
|
|
34
35
|
onInput?: (data: any) => void;
|
|
35
36
|
onRedacted?: () => void;
|
|
36
37
|
onUnredacted?: () => void;
|
|
38
|
+
onCardDetailsChanged?: (data: any) => void;
|
|
37
39
|
};
|
|
38
40
|
export type FieldHandle = {
|
|
39
41
|
clear: () => void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gr4vy/secure-fields-react",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.0",
|
|
4
4
|
"description": "Gr4vy-hosted secure fields offering advanced theming, PCI compliance, event handling, and more.",
|
|
5
5
|
"main": "lib/index",
|
|
6
6
|
"types": "lib/index",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"react-dom": ">=17.0.0"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@gr4vy/secure-fields": "^2.
|
|
44
|
+
"@gr4vy/secure-fields": "^2.5.0"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@testing-library/react": "^12.1.5",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"access": "public",
|
|
56
56
|
"registry": "https://registry.npmjs.org"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "98b8221a9bbaca78d42aba26e7801b5b24958275"
|
|
59
59
|
}
|