@curless/hotel-storefront 0.51.6 → 0.52.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/hotels.d.ts +18 -1
- package/dist/aggregate/hotels.d.ts.map +1 -1
- package/dist/aggregate/hotels.js +38 -7
- package/dist/aggregate/hotels.js.map +1 -1
- package/dist/aggregate/make.d.ts.map +1 -1
- package/dist/aggregate/make.js +2 -0
- package/dist/aggregate/make.js.map +1 -1
- package/dist/backend.d.ts +26 -0
- package/dist/backend.d.ts.map +1 -1
- package/dist/backend.js.map +1 -1
- package/dist/card.generated.d.ts +1 -1
- package/dist/card.generated.js +2 -2
- package/dist/card.generated.js.map +1 -1
- package/dist/config.d.ts +27 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +43 -0
- package/dist/config.js.map +1 -1
- package/dist/demo-hotels.d.ts.map +1 -1
- package/dist/demo-hotels.js +28 -1
- package/dist/demo-hotels.js.map +1 -1
- package/dist/money.d.ts +1 -0
- package/dist/money.d.ts.map +1 -1
- package/dist/money.js +1 -1
- package/dist/money.js.map +1 -1
- package/dist/reference.d.ts +34 -0
- package/dist/reference.d.ts.map +1 -0
- package/dist/reference.js +117 -0
- package/dist/reference.js.map +1 -0
- package/dist/server.d.ts +2 -2
- package/dist/server.js +2 -2
- package/dist/supplier.d.ts.map +1 -1
- package/dist/supplier.js +2 -1
- package/dist/supplier.js.map +1 -1
- package/dist/surface.d.ts.map +1 -1
- package/dist/surface.js +7 -0
- package/dist/surface.js.map +1 -1
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +86 -4
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +15 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/vocab.d.ts +1 -1
- package/dist/vocab.d.ts.map +1 -1
- package/dist/vocab.js +18 -3
- package/dist/vocab.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { decimalsOf, moneyWords } from './money.js';
|
|
2
|
+
// "≈ US$179" beside a price in another currency (0.52.0). A hotel is quoted
|
|
3
|
+
// and charged in ITS OWN currency, always (robin, 2026-10-21); this only says,
|
|
4
|
+
// small and beside it, what that comes to in a currency the guest may think in.
|
|
5
|
+
//
|
|
6
|
+
// ⚠️ A REFERENCE, NEVER A PRICE. Nothing here sorts, filters, adds up or is
|
|
7
|
+
// sent to a booking: the figure is made from an amount that was already
|
|
8
|
+
// written, rounded to WHOLE units of the reference currency (it is an
|
|
9
|
+
// approximation, and a cent on it would claim otherwise), and drawn by the card
|
|
10
|
+
// beside the amount it is of. The card does no arithmetic of its own - the
|
|
11
|
+
// figure is ours, like every other amount.
|
|
12
|
+
/** The most "≈" figures the text lists: a list of fifty hotels is not fifty of them. */
|
|
13
|
+
export const APPROX_IN_TEXT_MAX = 12;
|
|
14
|
+
/**
|
|
15
|
+
* An amount in the reference currency - whole units - or nothing: the amount is
|
|
16
|
+
* already in it, the currency has no rate, or the figure would round to zero
|
|
17
|
+
* ("≈ US$0" beside a ¥3 fee says nothing, and a zero beside a price reads as
|
|
18
|
+
* free).
|
|
19
|
+
*/
|
|
20
|
+
export const refOf = (reference, amount) => {
|
|
21
|
+
const to = reference.currency.toUpperCase();
|
|
22
|
+
const from = amount.currency.toUpperCase();
|
|
23
|
+
if (from === to)
|
|
24
|
+
return undefined;
|
|
25
|
+
const rate = reference.rates[from];
|
|
26
|
+
if (typeof rate !== 'number' || !Number.isFinite(rate) || rate <= 0)
|
|
27
|
+
return undefined;
|
|
28
|
+
const whole = Math.round((amount.minor / 10 ** amount.dp) * rate);
|
|
29
|
+
if (whole === 0)
|
|
30
|
+
return undefined;
|
|
31
|
+
const dp = decimalsOf(to);
|
|
32
|
+
return { minor: whole * 10 ** dp, currency: to, dp };
|
|
33
|
+
};
|
|
34
|
+
/** The reference currency as a guest reads it: "US$" - a bare "$" is also the Hong Kong and Singapore dollar. */
|
|
35
|
+
export const currencyLabel = (code) => code.toUpperCase() === 'USD' ? 'US$' : code;
|
|
36
|
+
/** "US$179" - the amount as the text writes it, with the dollar made unmistakable. */
|
|
37
|
+
const refWords = (ref) => {
|
|
38
|
+
const said = moneyWords({ minor: ref.minor, currency: ref.currency });
|
|
39
|
+
return /^-?\$/.test(said) ? said.replace('$', 'US$') : said;
|
|
40
|
+
};
|
|
41
|
+
/** "≈ US$179". */
|
|
42
|
+
export const approxWords = (ref) => `≈ ${refWords(ref)}`;
|
|
43
|
+
/** "a demonstration rate of 2026-11-01" / "the rate of 2026-11-01" / "an indicative rate". */
|
|
44
|
+
const rateWords = (reference) => reference.demo
|
|
45
|
+
? `a demonstration rate${reference.asOf ? ` of ${reference.asOf}` : ''}`
|
|
46
|
+
: reference.asOf
|
|
47
|
+
? `the rate of ${reference.asOf}`
|
|
48
|
+
: 'an indicative rate';
|
|
49
|
+
/** What the "≈" figures in an answer are, for the model - in `structuredContent.reference.words`. */
|
|
50
|
+
export const referenceWords = (reference) => `≈ figures are in ${currencyLabel(reference.currency)} at ${rateWords(reference)}, for reference only - what is charged is each hotel's own currency.`;
|
|
51
|
+
/** Where `words` stands in `text` as a whole amount, else -1: not inside a longer number, nor after another symbol ("$400" in "HK$400"). */
|
|
52
|
+
const indexIn = (text, words) => {
|
|
53
|
+
for (let at = text.indexOf(words); at >= 0; at = text.indexOf(words, at + 1)) {
|
|
54
|
+
const before = text[at - 1] ?? '';
|
|
55
|
+
const after = text.slice(at + words.length, at + words.length + 2);
|
|
56
|
+
if (/[\p{L}\p{N}]/u.test(before))
|
|
57
|
+
continue;
|
|
58
|
+
// "650 MYR" in "1,650 MYR".
|
|
59
|
+
if (/[.,]/.test(before) && /\d/.test(text[at - 2] ?? ''))
|
|
60
|
+
continue;
|
|
61
|
+
if (/^\d|^[.,]\d/.test(after))
|
|
62
|
+
continue;
|
|
63
|
+
return at;
|
|
64
|
+
}
|
|
65
|
+
return -1;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* An answer with its "≈" figures: each amount the card is handed gets the
|
|
69
|
+
* `ref` it is drawn with, the model is told what they are
|
|
70
|
+
* (`structuredContent.approx` and `.reference`), and the text ends with one
|
|
71
|
+
* sentence listing the figures of the amounts the text itself writes.
|
|
72
|
+
*
|
|
73
|
+
* Nothing at all - the answer as it came - when there is no reference or no
|
|
74
|
+
* amount in another currency.
|
|
75
|
+
*/
|
|
76
|
+
export const withReference = (reference, answer, amounts, written) => {
|
|
77
|
+
// The card's: every amount in the payload, with its figure where it has one.
|
|
78
|
+
const drawn = {};
|
|
79
|
+
const approx = {};
|
|
80
|
+
for (const [words, amount] of Object.entries(amounts)) {
|
|
81
|
+
const ref = refOf(reference, amount);
|
|
82
|
+
drawn[words] = ref ? { ...amount, ref } : amount;
|
|
83
|
+
if (ref)
|
|
84
|
+
approx[words] = approxWords(ref);
|
|
85
|
+
}
|
|
86
|
+
// The model's: the amounts the text writes, in the order it writes them.
|
|
87
|
+
const inText = [];
|
|
88
|
+
for (const [words, amount] of written) {
|
|
89
|
+
const ref = amount ? refOf(reference, amount) : undefined;
|
|
90
|
+
const at = ref ? indexIn(answer.text, words) : -1;
|
|
91
|
+
if (ref && at >= 0)
|
|
92
|
+
inText.push({ at, words, ref });
|
|
93
|
+
}
|
|
94
|
+
inText.sort((a, b) => a.at - b.at);
|
|
95
|
+
const listed = inText.slice(0, APPROX_IN_TEXT_MAX).map((x) => `${x.words} ${approxWords(x.ref)}`);
|
|
96
|
+
const hasAny = Object.keys(approx).length > 0 || listed.length > 0;
|
|
97
|
+
const structured = {
|
|
98
|
+
...answer.structured,
|
|
99
|
+
...(Object.keys(drawn).length ? { amounts: drawn } : {}),
|
|
100
|
+
...(Object.keys(approx).length ? { approx } : {}),
|
|
101
|
+
...(hasAny
|
|
102
|
+
? {
|
|
103
|
+
reference: {
|
|
104
|
+
currency: reference.currency.toUpperCase(),
|
|
105
|
+
...(reference.asOf ? { asOf: reference.asOf } : {}),
|
|
106
|
+
...(reference.demo ? { demo: true } : {}),
|
|
107
|
+
words: referenceWords(reference),
|
|
108
|
+
},
|
|
109
|
+
}
|
|
110
|
+
: {}),
|
|
111
|
+
};
|
|
112
|
+
const sentence = listed.length
|
|
113
|
+
? `For reference only, at ${rateWords(reference)} (what is charged is the hotel's own currency): ${listed.join('; ')}.`
|
|
114
|
+
: '';
|
|
115
|
+
return { structured, text: sentence ? `${answer.text}\n\n${sentence}` : answer.text };
|
|
116
|
+
};
|
|
117
|
+
//# sourceMappingURL=reference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reference.js","sourceRoot":"","sources":["../src/reference.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export declare const INITIALIZE_PER_MINUTE = 300;
|
|
|
28
28
|
* number. Found by reading the boot banner of a container that had just been
|
|
29
29
|
* deployed (2026-09-22): seventeen tools listed, and "0.7.0" above them.
|
|
30
30
|
*/
|
|
31
|
-
export declare const VERSION = "0.
|
|
31
|
+
export declare const VERSION = "0.52.1";
|
|
32
32
|
/**
|
|
33
33
|
* The card's resource URI.
|
|
34
34
|
*
|
|
@@ -37,7 +37,7 @@ export declare const VERSION = "0.51.6";
|
|
|
37
37
|
* connector went storefront-v35 → v40 in a single day of UI work for exactly
|
|
38
38
|
* this reason.
|
|
39
39
|
*/
|
|
40
|
-
export declare const CARD_URI = "ui://curless/hotel/booking-
|
|
40
|
+
export declare const CARD_URI = "ui://curless/hotel/booking-v108.html";
|
|
41
41
|
/**
|
|
42
42
|
* The URI one deployment names its card by: `CARD_URI` with a short hash of
|
|
43
43
|
* everything a host caches under it - the card itself, and the hosts it may
|
package/dist/server.js
CHANGED
|
@@ -48,7 +48,7 @@ export const INITIALIZE_PER_MINUTE = 300;
|
|
|
48
48
|
* number. Found by reading the boot banner of a container that had just been
|
|
49
49
|
* deployed (2026-09-22): seventeen tools listed, and "0.7.0" above them.
|
|
50
50
|
*/
|
|
51
|
-
export const VERSION = '0.
|
|
51
|
+
export const VERSION = '0.52.1';
|
|
52
52
|
/**
|
|
53
53
|
* The card's resource URI.
|
|
54
54
|
*
|
|
@@ -57,7 +57,7 @@ export const VERSION = '0.51.6';
|
|
|
57
57
|
* connector went storefront-v35 → v40 in a single day of UI work for exactly
|
|
58
58
|
* this reason.
|
|
59
59
|
*/
|
|
60
|
-
export const CARD_URI = 'ui://curless/hotel/booking-
|
|
60
|
+
export const CARD_URI = 'ui://curless/hotel/booking-v108.html';
|
|
61
61
|
/** The card as it ships, hashed once - what a host caches under the URI. */
|
|
62
62
|
const CARD_HTML_SHA = createHash('sha256').update(HOTEL_CARD_HTML).digest('hex');
|
|
63
63
|
/**
|
package/dist/supplier.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supplier.d.ts","sourceRoot":"","sources":["../src/supplier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAa3C,8FAA8F;AAC9F,MAAM,MAAM,IAAI,GAAG;IACjB,OAAO,EAAE,YAAY,CAAC;IACtB,qDAAqD;IACrD,YAAY,EAAE,MAAM,MAAM,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,iGAAiG;IACjG,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,8EAA8E;IAC9E,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;CACvD,CAAC;AAEF,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG;IAC5B,sFAAsF;IACtF,KAAK,EAAE,MAAM,CAAC;IACd,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC,mFAAmF;IACnF,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,KAAK,CAAC;IAC5B,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,sFAAsF;IACtF,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,eAAe,KAAG,IAW9E,CAAC;
|
|
1
|
+
{"version":3,"file":"supplier.d.ts","sourceRoot":"","sources":["../src/supplier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAa3C,8FAA8F;AAC9F,MAAM,MAAM,IAAI,GAAG;IACjB,OAAO,EAAE,YAAY,CAAC;IACtB,qDAAqD;IACrD,YAAY,EAAE,MAAM,MAAM,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,iGAAiG;IACjG,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,8EAA8E;IAC9E,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC;CACvD,CAAC;AAEF,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG;IAC5B,sFAAsF;IACtF,KAAK,EAAE,MAAM,CAAC;IACd,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC,mFAAmF;IACnF,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,KAAK,CAAC;IAC5B,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,sFAAsF;IACtF,UAAU,EAAE,OAAO,CAAC;IACpB,0EAA0E;IAC1E,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,eAAe,KAAG,IAW9E,CAAC;AAwBF;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAA;CAAE,EAAE,KACjF,MAAM,EAOR,CAAC"}
|
package/dist/supplier.js
CHANGED
|
@@ -28,7 +28,8 @@ const makeDemo = (data, ctx) => {
|
|
|
28
28
|
});
|
|
29
29
|
const domains = imageDomainsOf(hotels.hotels);
|
|
30
30
|
return {
|
|
31
|
-
|
|
31
|
+
// Reference rates (`data.reference`): the tools quote "≈" beside a price in another currency.
|
|
32
|
+
backend: data.reference ? { ...backend, reference: data.reference } : backend,
|
|
32
33
|
imageDomains: () => domains,
|
|
33
34
|
hotelCount: () => hotels.hotels.length,
|
|
34
35
|
health: () => ({}),
|
package/dist/supplier.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supplier.js","sourceRoot":"","sources":["../src/supplier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAqD9C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAyB,EAAE,GAAoB,EAAQ,EAAE;IACpF,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACvD,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAClG,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,GAAG,GAAG,CAAC,KAAK,yFAAyF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAC7H,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAyB,EAAE,GAAoB,EAAQ,EAAE;IACzE,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjC,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO;QACL,OAAO;
|
|
1
|
+
{"version":3,"file":"supplier.js","sourceRoot":"","sources":["../src/supplier.ts"],"names":[],"mappings":"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"}
|
package/dist/surface.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAqB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAqB,MAAM,cAAc,CAAC;AAI3E,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,YAAY,CAAC;AA8BlE,eAAO,MAAM,iBAAiB,GAC5B,OAAO,aAAa,EACpB,OAAM,mBAAuC;AAC7C;;;;;;;;;;;;;GAaG;AACH,OAAM;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,KAChD,MAmSF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,EACzE,OAAO,SAAS,CAAC,EAAE,EACnB,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,SAAS,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClD,YAAW,WAAW,CAAC,MAAM,CAAa;;;;;;;;;;;;;;;;;KAwBxC,CAAC;AAEL;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;CAIb,CAAC;AAEX,6DAA6D;AAC7D,eAAO,MAAM,aAAa,GAAI,OAAO,aAAa,KAAG,WAAW,CAAC,MAAM,CAsBnE,CAAC"}
|
package/dist/surface.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FULL_CAPABILITIES } from './backend.js';
|
|
2
2
|
import { FENCE_RULE } from './fence.js';
|
|
3
|
+
import { currencyLabel } from './reference.js';
|
|
3
4
|
import { HOME_LIST_MAX } from './tools.js';
|
|
4
5
|
import { noteFor, upFirst } from './vocab.js';
|
|
5
6
|
// What a host is told about this connector: the `instructions` it injects into
|
|
@@ -295,6 +296,12 @@ opts = {}) => {
|
|
|
295
296
|
caps.oneCurrency
|
|
296
297
|
? ''
|
|
297
298
|
: `A trip can hold ${v.nounPlural} that charge in different currencies. It is then priced one currency at a time: each has its own taxes and total, and nothing converts one into another - so never add them together, never convert one, and never call one ${v.noun} cheaper than another across currencies.`,
|
|
299
|
+
// ⚠️ A REFERENCE, NEVER THE PRICE (robin, 2026-10-21): only where the
|
|
300
|
+
// deployment quotes "≈" figures (`data.reference`), in a card host and in
|
|
301
|
+
// one that draws none alike.
|
|
302
|
+
brand.config.data.reference
|
|
303
|
+
? `Prices are in each ${v.noun}'s own currency, and that is what is charged. Where an answer gives ≈ ${currencyLabel(brand.config.data.reference.currency)} figures, they are a reference at the stated rate: quote the ${v.noun}'s own price first, and add the ≈ figure only for a guest who does not use that currency - never as the price.`
|
|
304
|
+
: '',
|
|
298
305
|
caps.policies === false
|
|
299
306
|
? `A ${v.noun}'s cancellation terms are its RATE's: they come with each room for the nights asked about, and in full in the cancellation preview. ${v.market ? 'The groups here publish' : `${v.brand} publishes`} no other policy text here - asked about check-in times, children, pets, deposits or accessibility, say that it is not published here and do not fill in what hotels usually do.`
|
|
300
307
|
: `Questions about cancellation terms, check-in and check-out, children, pets, deposits or accessibility: call ${t.policies} with that topic and answer from what the ${v.noun} has published. If it does not say, tell the guest that and give the ${v.noun}'s link; do not fill in what hotels usually do.`,
|
package/dist/surface.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EASzB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAa,YAAY,EAAgB,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAK7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -7,6 +7,7 @@ import { amountsIn, formatMoney, keepingAmounts, money, multiplyMoney, toMinor }
|
|
|
7
7
|
import { namedExactly, roomNamesOf, roomTypeNamed, withTraditional } from './names.js';
|
|
8
8
|
import { overlapsOf } from './overlap.js';
|
|
9
9
|
import { MAX_COMPARED, MAX_CONS, MAX_DAYS, MAX_ITEMS_PER_DAY, MAX_MOMENTS, MAX_PROS, buildItinerary, candidatesFor, compareHotels, namesMoreThanOne, } from './present.js';
|
|
10
|
+
import { withReference } from './reference.js';
|
|
10
11
|
import { regionOf } from './regions.js';
|
|
11
12
|
import { activeKeysOf, byRoomType, facetsOf, keyWords, matchesTerms, optionsOf, roomTermsOf, termWords, } from './room-filters.js';
|
|
12
13
|
import { SAME_BOOKING_MS } from './same-booking.js';
|
|
@@ -1337,6 +1338,10 @@ export const buildOutputSchemas = (n) => ({
|
|
|
1337
1338
|
stayDefault: STR,
|
|
1338
1339
|
/** Only where the client shows no cards: nothing was drawn - see `LIST_NOT_DRAWN`. */
|
|
1339
1340
|
notDrawn: STR,
|
|
1341
|
+
/** In a market: the groups that did not answer in time - none of their hotels is in this answer (`degradedOf`). */
|
|
1342
|
+
degraded: ARR,
|
|
1343
|
+
/** What `degraded` means, as the text says it: not that those groups have none here. */
|
|
1344
|
+
degradedSaid: STR,
|
|
1340
1345
|
...HOTEL_PAGE,
|
|
1341
1346
|
},
|
|
1342
1347
|
required: ['view'],
|
|
@@ -1535,6 +1540,9 @@ export const buildOutputSchemas = (n) => ({
|
|
|
1535
1540
|
dropped: STRS,
|
|
1536
1541
|
/** For a name that fits more than one hotel, the ones it fits - each with \`for\`, the name. */
|
|
1537
1542
|
candidates: ARR,
|
|
1543
|
+
/** A \`city\` read in a market: the groups that did not answer in time (\`degradedOf\`). */
|
|
1544
|
+
degraded: ARR,
|
|
1545
|
+
degradedSaid: STR,
|
|
1538
1546
|
},
|
|
1539
1547
|
required: ['view'],
|
|
1540
1548
|
},
|
|
@@ -2833,6 +2841,30 @@ const remember = (deps, k, amount) => {
|
|
|
2833
2841
|
};
|
|
2834
2842
|
/** "a, b and c" - "a and b" - "a". */
|
|
2835
2843
|
const listAnd = (xs) => xs.length > 1 ? `${xs.slice(0, -1).join(', ')} and ${xs.at(-1)}` : (xs[0] ?? '');
|
|
2844
|
+
/**
|
|
2845
|
+
* The groups of a market that did not answer a search, as the sentence the
|
|
2846
|
+
* model is told and the fields the card draws its own line from - the same
|
|
2847
|
+
* list in both (`HotelSearchResult.degraded`).
|
|
2848
|
+
*
|
|
2849
|
+
* ⚠️ "DID NOT ANSWER" IS NOT "HAS NONE". A list without Atour's hotels, from
|
|
2850
|
+
* an Atour that timed out, reads to a guest as a city where Atour has no
|
|
2851
|
+
* hotel. The sentence says the first and denies the second, in the text and in
|
|
2852
|
+
* `structuredContent` alike - a host with no card has only the words.
|
|
2853
|
+
*/
|
|
2854
|
+
const degradedOf = (deps, answer) => {
|
|
2855
|
+
const down = answer.degraded ?? [];
|
|
2856
|
+
if (down.length === 0)
|
|
2857
|
+
return { structured: {}, said: '' };
|
|
2858
|
+
const one = down.length === 1;
|
|
2859
|
+
const said = `${listAnd(down.map((d) => d.name))} did not answer in time, so none of ${one ? 'its' : 'their'} ${deps.vocab.nounPlural} is in this list - this does not mean ${one ? 'it has' : 'they have'} none here; asking again in a moment may bring them.`;
|
|
2860
|
+
return {
|
|
2861
|
+
structured: {
|
|
2862
|
+
degraded: down.map((d) => ({ supplier: d.supplier, name: d.name })),
|
|
2863
|
+
degradedSaid: said,
|
|
2864
|
+
},
|
|
2865
|
+
said,
|
|
2866
|
+
};
|
|
2867
|
+
};
|
|
2836
2868
|
/** The counts a call can carry, and what each may be. */
|
|
2837
2869
|
const COUNTS = ['guests', 'rooms', 'quantity'];
|
|
2838
2870
|
/** "2" is 2: a host that sends a count as a string has not asked for something else. */
|
|
@@ -3002,6 +3034,25 @@ const needsRoomIn = (t, lines, parts) => {
|
|
|
3002
3034
|
.join('\n'),
|
|
3003
3035
|
};
|
|
3004
3036
|
};
|
|
3037
|
+
/**
|
|
3038
|
+
* What a booking of these stays takes of the guest, in the words of the
|
|
3039
|
+
* sentence that asks for it: "name and email", and a phone number where a group
|
|
3040
|
+
* needs one - for all of them, or, in a market where only some of the trip's
|
|
3041
|
+
* groups do, for the stays with those.
|
|
3042
|
+
*/
|
|
3043
|
+
const guestDetailsFor = (deps, rooms) => {
|
|
3044
|
+
if (!deps.backend.suppliers)
|
|
3045
|
+
return (deps.backend.capabilities ?? FULL_CAPABILITIES).requiresPhone
|
|
3046
|
+
? 'name, email and phone number'
|
|
3047
|
+
: 'name and email';
|
|
3048
|
+
const groups = [...new Set(rooms.map((l) => deps.backend.supplierOf?.(l.hotelId)))];
|
|
3049
|
+
const needing = groups.filter((id) => !!holderOf(deps, id).caps.requiresPhone);
|
|
3050
|
+
if (needing.length === 0)
|
|
3051
|
+
return 'name and email';
|
|
3052
|
+
if (needing.length === groups.length)
|
|
3053
|
+
return 'name, email and phone number';
|
|
3054
|
+
return `name and email, and a phone number for the stays with ${listAnd(needing.map((id) => holderOf(deps, id).name))}`;
|
|
3055
|
+
};
|
|
3005
3056
|
/**
|
|
3006
3057
|
* The lines in one slot of the trip store, priced - the trip itself, or (with
|
|
3007
3058
|
* `store`) the picked room's slot. `key` stays the conversation's trip key: it
|
|
@@ -3040,8 +3091,14 @@ const currentTrip = async (deps, key, who, store = key, coupon, ctx) => {
|
|
|
3040
3091
|
const overlapping = overlaps.length ? { overlaps } : {};
|
|
3041
3092
|
// ⚠️ WHAT COMES NEXT, IN WORDS (2026-11-02 audit, P2-4): the card has a
|
|
3042
3093
|
// Book button under the trip, and the words had nothing in its place.
|
|
3094
|
+
//
|
|
3095
|
+
// ⚠️ AND A PHONE NUMBER WHERE THE TRIP'S GROUP NEEDS ONE (the 0.52.0 gap): the
|
|
3096
|
+
// card's form asks for it, and this sentence - the whole of the card for a
|
|
3097
|
+
// client that draws none - said only "name and email", so the first booking
|
|
3098
|
+
// came back "needs a phone number". Whose need it is is the trip's groups',
|
|
3099
|
+
// as `requestBooking` judges it.
|
|
3043
3100
|
const nextStep = ctx?.noCards && parts.some((p) => p.lines.some((l) => l.kind === 'room'))
|
|
3044
|
-
? `Nothing in the trip is booked yet. To book it, ${deps.tools.requestBooking} takes the guest's own
|
|
3101
|
+
? `Nothing in the trip is booked yet. To book it, ${deps.tools.requestBooking} takes the guest's own ${guestDetailsFor(deps, lines.filter((l) => l.kind === 'room'))} - ask for them if the guest has not typed them in this conversation.`
|
|
3045
3102
|
: '';
|
|
3046
3103
|
if (parts.length === 1 && only) {
|
|
3047
3104
|
return {
|
|
@@ -3389,6 +3446,14 @@ export const handleTool = async (deps, name, rawArgs, ctx) => {
|
|
|
3389
3446
|
// a card from before - its minor units and currency, for the card to write
|
|
3390
3447
|
// in its reader's language. The card does no sums: every figure is ours.
|
|
3391
3448
|
const amounts = amountsIn(named, written);
|
|
3449
|
+
// ⚠️ AND, WHERE THE DEPLOYMENT HAS REFERENCE RATES, A SMALL "≈" BESIDE EACH
|
|
3450
|
+
// AMOUNT IN ANOTHER CURRENCY (reference.ts): the hotel's own currency is what
|
|
3451
|
+
// is quoted and charged, and the figure is only ever beside it.
|
|
3452
|
+
if (deps.backend.reference)
|
|
3453
|
+
return {
|
|
3454
|
+
...answer,
|
|
3455
|
+
...withReference(deps.backend.reference, { structured: named, text: answer.text }, amounts, written),
|
|
3456
|
+
};
|
|
3392
3457
|
const structured = Object.keys(amounts).length ? { ...named, amounts } : named;
|
|
3393
3458
|
return { ...answer, structured };
|
|
3394
3459
|
};
|
|
@@ -4672,6 +4737,7 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4672
4737
|
: `${c.name} (${c.count})`)
|
|
4673
4738
|
.join(', ');
|
|
4674
4739
|
const n = deps.vocab.nounPlural;
|
|
4740
|
+
const degraded = degradedOf(deps, answer);
|
|
4675
4741
|
if (namedCountry) {
|
|
4676
4742
|
const [only] = countries;
|
|
4677
4743
|
return {
|
|
@@ -4683,8 +4749,9 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4683
4749
|
ask: { city: asked.city, ...stayArgs },
|
|
4684
4750
|
...(ask.stay ? { stay: ask.stay } : {}),
|
|
4685
4751
|
...(today ? { today } : {}),
|
|
4752
|
+
...degraded.structured,
|
|
4686
4753
|
},
|
|
4687
|
-
text: `${total} ${branded(deps.vocab, n)} in ${only?.name}, in ${only?.cities.length} cities to choose from: ${every(only?.cities ?? [])}. A city lists its ${n}; \`all\` lists every one in ${only?.name}. ${forPlans}`,
|
|
4754
|
+
text: `${total} ${branded(deps.vocab, n)} in ${only?.name}, in ${only?.cities.length} cities to choose from: ${every(only?.cities ?? [])}. A city lists its ${n}; \`all\` lists every one in ${only?.name}. ${degraded.said ? `${degraded.said} ` : ''}${forPlans}`,
|
|
4688
4755
|
};
|
|
4689
4756
|
}
|
|
4690
4757
|
const regions = [
|
|
@@ -4707,11 +4774,13 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4707
4774
|
ask: { ...stayArgs },
|
|
4708
4775
|
...(ask.stay ? { stay: ask.stay } : {}),
|
|
4709
4776
|
...(today ? { today } : {}),
|
|
4777
|
+
...degraded.structured,
|
|
4710
4778
|
},
|
|
4711
|
-
text: `${total} ${branded(deps.vocab, n)} in ${facets.cities.length} cities across ${countries.length} ${countries.length === 1 ? 'country' : 'countries'}, to choose from by region, country and city - ${regions.map((r) => `${r.name}: ${ctx.noCards ? everyWithCities(r.countries) : every(r.countries)}`).join('; ')}. A city or a country lists its ${n}. ${forPlans}`,
|
|
4779
|
+
text: `${total} ${branded(deps.vocab, n)} in ${facets.cities.length} cities across ${countries.length} ${countries.length === 1 ? 'country' : 'countries'}, to choose from by region, country and city - ${regions.map((r) => `${r.name}: ${ctx.noCards ? everyWithCities(r.countries) : every(r.countries)}`).join('; ')}. A city or a country lists its ${n}. ${degraded.said ? `${degraded.said} ` : ''}${forPlans}`,
|
|
4712
4780
|
};
|
|
4713
4781
|
}
|
|
4714
4782
|
if (hotels.length === 0) {
|
|
4783
|
+
const degraded = degradedOf(deps, answer);
|
|
4715
4784
|
const nearest = (answer.nearest ?? []).map((h) => ({
|
|
4716
4785
|
...h,
|
|
4717
4786
|
summary: hotelText('description', h.name, h.summary, DESCRIPTION_MAX).text,
|
|
@@ -4759,6 +4828,8 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4759
4828
|
...(nearest.length ? { nearest, overBudget: answer.overBudget } : {}),
|
|
4760
4829
|
...(ask.stay ? { stay: ask.stay } : {}),
|
|
4761
4830
|
...(widened?.found ? { widened } : {}),
|
|
4831
|
+
// Nothing found while a group did not answer is not "none here".
|
|
4832
|
+
...degraded.structured,
|
|
4762
4833
|
// Why it is empty, in the words the model is told, so the card says
|
|
4763
4834
|
// the same thing rather than guessing at it.
|
|
4764
4835
|
why,
|
|
@@ -4776,6 +4847,7 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4776
4847
|
text: [
|
|
4777
4848
|
widened?.found ? `Nothing matched ${widened.from}, so this looked in ${widened.to}.` : '',
|
|
4778
4849
|
why,
|
|
4850
|
+
degraded.said,
|
|
4779
4851
|
]
|
|
4780
4852
|
.filter(Boolean)
|
|
4781
4853
|
.join(' '),
|
|
@@ -4851,6 +4923,7 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4851
4923
|
priceNotes.push(notSold);
|
|
4852
4924
|
// Every one by name and city, and that there are no others - or, told
|
|
4853
4925
|
// only "2 hotels", the model asked for the list again to learn which.
|
|
4926
|
+
const degraded = degradedOf(deps, answer);
|
|
4854
4927
|
const inAll = homeList
|
|
4855
4928
|
? `This connector has ${total} ${branded(deps.vocab, deps.vocab.nounPlural)} in all, and this answer lists every one: ${hotels
|
|
4856
4929
|
.map((h) => `${hotelName(h.name)}${h.city ? ` in ${h.city}` : ''}`)
|
|
@@ -4903,6 +4976,8 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4903
4976
|
...(answer.overBudget ? { overBudget: answer.overBudget } : {}),
|
|
4904
4977
|
...(widened?.found ? { widened } : {}),
|
|
4905
4978
|
...(answer.currencies.length > 1 ? { currencies: answer.currencies } : {}),
|
|
4979
|
+
// A group that did not answer, in both: the card draws a line from it.
|
|
4980
|
+
...degraded.structured,
|
|
4906
4981
|
// In both, like a plan's: a host with no card may hand its model this
|
|
4907
4982
|
// rather than the text.
|
|
4908
4983
|
...(ctx.noCards ? { notDrawn: LIST_NOT_DRAWN } : {}),
|
|
@@ -4920,6 +4995,7 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
4920
4995
|
: '',
|
|
4921
4996
|
...priceNotes,
|
|
4922
4997
|
widened?.found ? `Nothing matched ${widened.from}, so this is ${widened.to}.` : '',
|
|
4998
|
+
degraded.said,
|
|
4923
4999
|
ctx.noCards && hotels.length
|
|
4924
5000
|
? `\n${LIST_NOT_DRAWN}\n${hotels.map(listedInWords).join('\n')}\n`
|
|
4925
5001
|
: '',
|
|
@@ -5120,6 +5196,7 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
5120
5196
|
/** For each name that fits more than one, which ones - see `namesLike`. */
|
|
5121
5197
|
const candidates = [];
|
|
5122
5198
|
let total = 0;
|
|
5199
|
+
let degradedFound = {};
|
|
5123
5200
|
if (named.length) {
|
|
5124
5201
|
for (const ref of named) {
|
|
5125
5202
|
const found = await deps.backend.getHotel(ref);
|
|
@@ -5139,7 +5216,9 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
5139
5216
|
const found = await deps.backend.searchHotels({ city, limit: LOOK_UP_MAX }, who);
|
|
5140
5217
|
ids.push(...found.hotels.map((h) => h.id));
|
|
5141
5218
|
total = found.total;
|
|
5219
|
+
degradedFound = found;
|
|
5142
5220
|
}
|
|
5221
|
+
const degraded = degradedOf(deps, degradedFound);
|
|
5143
5222
|
const unique = [...new Set(ids)];
|
|
5144
5223
|
// A name that fits more than one is said with the ones it fits; the rest are not found.
|
|
5145
5224
|
const notFound = dropped.filter((d) => !candidates.some((c) => c.for === d));
|
|
@@ -5151,9 +5230,10 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
5151
5230
|
...common(deps, key),
|
|
5152
5231
|
...(dropped.length ? { dropped } : {}),
|
|
5153
5232
|
...(candidates.length ? { candidates } : {}),
|
|
5233
|
+
...degraded.structured,
|
|
5154
5234
|
},
|
|
5155
5235
|
text: city
|
|
5156
|
-
? `No ${branded(deps.vocab, deps.vocab.nounPlural)} in "${city}". ${t.listHotels} with no place shows the places there are.`
|
|
5236
|
+
? `No ${branded(deps.vocab, deps.vocab.nounPlural)} in "${city}". ${degraded.said ? `${degraded.said} ` : ''}${t.listHotels} with no place shows the places there are.`
|
|
5157
5237
|
: named.length
|
|
5158
5238
|
? [
|
|
5159
5239
|
notFound.length
|
|
@@ -5222,9 +5302,11 @@ const answerTool = async (deps, name, rawArgs, ctx) => {
|
|
|
5222
5302
|
total,
|
|
5223
5303
|
...(dropped.length ? { dropped } : {}),
|
|
5224
5304
|
...(candidates.length ? { candidates } : {}),
|
|
5305
|
+
...degraded.structured,
|
|
5225
5306
|
},
|
|
5226
5307
|
text: [
|
|
5227
5308
|
`Read ${read.length}${total > read.length ? ` of ${total}` : ''} ${read.length === 1 ? deps.vocab.noun : deps.vocab.nounPlural}. Nothing was shown to the guest.`,
|
|
5309
|
+
degraded.said,
|
|
5228
5310
|
...blocks,
|
|
5229
5311
|
notFound.length ? `Not found: ${notFound.map((d) => `"${d}"`).join(', ')}.` : '',
|
|
5230
5312
|
...fitsMany,
|