@edv4h/usketch-plugin-map 0.8.0 → 0.10.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.
Files changed (51) hide show
  1. package/dist/autotile.d.ts +4 -0
  2. package/dist/autotile.d.ts.map +1 -1
  3. package/dist/autotile.js +7 -3
  4. package/dist/autotile.js.map +1 -1
  5. package/dist/base/base-layer.d.ts.map +1 -1
  6. package/dist/base/base-layer.js +6 -12
  7. package/dist/base/base-layer.js.map +1 -1
  8. package/dist/base/base-map-shape.d.ts +3 -2
  9. package/dist/base/base-map-shape.d.ts.map +1 -1
  10. package/dist/base/base-map-shape.js.map +1 -1
  11. package/dist/base/base-ops.d.ts +6 -8
  12. package/dist/base/base-ops.d.ts.map +1 -1
  13. package/dist/base/base-ops.js +15 -63
  14. package/dist/base/base-ops.js.map +1 -1
  15. package/dist/base/territory.d.ts.map +1 -1
  16. package/dist/base/territory.js +11 -17
  17. package/dist/base/territory.js.map +1 -1
  18. package/dist/generate.d.ts.map +1 -1
  19. package/dist/generate.js +6 -4
  20. package/dist/generate.js.map +1 -1
  21. package/dist/icon-render.d.ts +10 -0
  22. package/dist/icon-render.d.ts.map +1 -0
  23. package/dist/icon-render.js +26 -0
  24. package/dist/icon-render.js.map +1 -0
  25. package/dist/index.d.ts +2 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +5 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/map-icon-layer.d.ts +9 -0
  30. package/dist/map-icon-layer.d.ts.map +1 -0
  31. package/dist/map-icon-layer.js +55 -0
  32. package/dist/map-icon-layer.js.map +1 -0
  33. package/dist/map-service.d.ts +28 -0
  34. package/dist/map-service.d.ts.map +1 -0
  35. package/dist/map-service.js +31 -0
  36. package/dist/map-service.js.map +1 -0
  37. package/dist/map-tool.d.ts.map +1 -1
  38. package/dist/map-tool.js +89 -54
  39. package/dist/map-tool.js.map +1 -1
  40. package/dist/plugin.d.ts.map +1 -1
  41. package/dist/plugin.js +23 -3
  42. package/dist/plugin.js.map +1 -1
  43. package/dist/tilemap-shape.d.ts +15 -3
  44. package/dist/tilemap-shape.d.ts.map +1 -1
  45. package/dist/tilemap-shape.js +40 -14
  46. package/dist/tilemap-shape.js.map +1 -1
  47. package/package.json +3 -3
  48. package/dist/map-icon-shape.d.ts +0 -17
  49. package/dist/map-icon-shape.d.ts.map +0 -1
  50. package/dist/map-icon-shape.js +0 -106
  51. package/dist/map-icon-shape.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { BoundingBox, ShapeData, ShapeDefinition } from "@edv4h/usketch-shared";
2
- import { type Cells } from "./autotile.js";
2
+ import { type Cells, type IconCells } from "./autotile.js";
3
3
  import type { BaseGenParams } from "./base-terrain.js";
4
4
  export declare const TILEMAP_TYPE = "tilemap";
5
5
  export declare const DEFAULT_TILE = 40;
@@ -28,8 +28,22 @@ export interface TileMapShapeData extends ShapeData {
28
28
  * older seeded shape means v1 (see `resolveBaseGen`). Paired with `baseSeed`.
29
29
  */
30
30
  baseGen?: BaseGenParams;
31
+ /**
32
+ * World-layer icons as GRID DATA: `cellKey("c,r") → iconKey` (one icon per
33
+ * cell). Like `cells`, this lives on the substrate shape — so placed icons
34
+ * are part of the protected world layer: the generic Select tool can't grab
35
+ * them (they aren't shapes), while the Map tool (stamp / eraser) edits them
36
+ * directly. Persists + syncs + undoes through the shape store. Sparse.
37
+ */
38
+ icons?: IconCells;
31
39
  }
32
40
  export declare function isTileMap(shape: ShapeData): shape is TileMapShapeData;
41
+ /**
42
+ * Bounds patch keeping x/y/width/height in sync with BOTH painted cells and placed
43
+ * icons — an icon-only cell outside the painted area still counts, so the box
44
+ * encloses everything the tilemap owns.
45
+ */
46
+ export declare function tilemapBounds(cells: Cells, icons: IconCells | undefined, tile: number): BoundingBox;
33
47
  /**
34
48
  * The tilemap that owns the infinite-terrain seed, chosen **deterministically**
35
49
  * (lowest `id`) so every synced client resolves the same seed even if several
@@ -47,7 +61,5 @@ export declare function seededTilemap(shapes: Iterable<ShapeData>): TileMapShape
47
61
  export declare function lowestTilemap(shapes: Iterable<ShapeData>): TileMapShapeData | null;
48
62
  /** Create a new empty tilemap (locked substrate). */
49
63
  export declare function makeTileMap(tile: number): TileMapShapeData;
50
- /** Bounds patch to keep x/y/width/height in sync with the painted cells. */
51
- export declare function boundsPatch(cells: Cells, tile: number): BoundingBox;
52
64
  export declare function createTileMapShapeDefinition(tile?: number): ShapeDefinition;
53
65
  //# sourceMappingURL=tilemap-shape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tilemap-shape.d.ts","sourceRoot":"","sources":["../src/tilemap-shape.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAE,KAAK,KAAK,EAAsC,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAClD,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,gBAAgB,CAErE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAgBlF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAIlF;AAED,qDAAqD;AACrD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAe1D;AAED,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAEnE;AAED,wBAAgB,4BAA4B,CAAC,IAAI,GAAE,MAAqB,GAAG,eAAe,CA8CzF"}
1
+ {"version":3,"file":"tilemap-shape.d.ts","sourceRoot":"","sources":["../src/tilemap-shape.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAE,KAAK,KAAK,EAAW,KAAK,SAAS,EAA4B,MAAM,eAAe,CAAC;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,eAAO,MAAM,YAAY,YAAY,CAAC;AACtC,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAClD,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,gBAAgB,CAErE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,SAAS,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GACV,WAAW,CAGb;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAgBlF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAIlF;AAED,qDAAqD;AACrD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAgB1D;AAED,wBAAgB,4BAA4B,CAAC,IAAI,GAAE,MAAqB,GAAG,eAAe,CA+DzF"}
@@ -1,11 +1,20 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { generateId } from "@edv4h/usketch-shared";
3
- import { cellKey, cellsBounds, parseCellKey } from "./autotile.js";
3
+ import { cellKey, keysBounds, parseCellKey } from "./autotile.js";
4
4
  export const TILEMAP_TYPE = "tilemap";
5
5
  export const DEFAULT_TILE = 40;
6
6
  export function isTileMap(shape) {
7
7
  return shape.type === TILEMAP_TYPE;
8
8
  }
9
+ /**
10
+ * Bounds patch keeping x/y/width/height in sync with BOTH painted cells and placed
11
+ * icons — an icon-only cell outside the painted area still counts, so the box
12
+ * encloses everything the tilemap owns.
13
+ */
14
+ export function tilemapBounds(cells, icons, tile) {
15
+ const keys = icons ? [...Object.keys(cells), ...Object.keys(icons)] : Object.keys(cells);
16
+ return keysBounds(keys, tile);
17
+ }
9
18
  /**
10
19
  * The tilemap that owns the infinite-terrain seed, chosen **deterministically**
11
20
  * (lowest `id`) so every synced client resolves the same seed even if several
@@ -54,14 +63,11 @@ export function makeTileMap(tile) {
54
63
  style: { fill: "transparent", stroke: "transparent", strokeWidth: 0, opacity: 1 },
55
64
  tile,
56
65
  cells: {},
66
+ icons: {},
57
67
  handPaint: {},
58
68
  locked: true,
59
69
  };
60
70
  }
61
- /** Bounds patch to keep x/y/width/height in sync with the painted cells. */
62
- export function boundsPatch(cells, tile) {
63
- return cellsBounds(cells, tile);
64
- }
65
71
  export function createTileMapShapeDefinition(tile = DEFAULT_TILE) {
66
72
  return {
67
73
  // Drawing is done by the MapLayer; the shape itself renders nothing.
@@ -69,7 +75,7 @@ export function createTileMapShapeDefinition(tile = DEFAULT_TILE) {
69
75
  renderTarget: "svg",
70
76
  getBounds: (data) => {
71
77
  const d = data;
72
- return cellsBounds(d.cells ?? {}, d.tile ?? tile);
78
+ return tilemapBounds(d.cells ?? {}, d.icons, d.tile ?? tile);
73
79
  },
74
80
  // Never selectable via pointer — it is a substrate, not an object.
75
81
  hitTest: () => false,
@@ -79,8 +85,10 @@ export function createTileMapShapeDefinition(tile = DEFAULT_TILE) {
79
85
  ...makeTileMap(tile),
80
86
  id: params.id,
81
87
  }),
82
- // Locked, so user-move is not expected; support it anyway by shifting cells
83
- // on whole-tile deltas (keeps the grid aligned).
88
+ // Locked, so user-move is not expected; support it anyway by shifting every
89
+ // grid (cells / icons / handPaint) by the same whole-tile delta so they stay
90
+ // aligned — handPaint keys mirror `cells` and territory expansion keys off it,
91
+ // so it must move too.
84
92
  move: (data, dx, dy) => {
85
93
  const d = data;
86
94
  const t = d.tile ?? tile;
@@ -88,12 +96,25 @@ export function createTileMapShapeDefinition(tile = DEFAULT_TILE) {
88
96
  const dr = Math.round(dy / t);
89
97
  if (dc === 0 && dr === 0)
90
98
  return {};
91
- const next = {};
92
- for (const [key, terrain] of Object.entries(d.cells)) {
99
+ const shift = (key) => {
93
100
  const [c, r] = parseCellKey(key);
94
- next[cellKey(c + dc, r + dr)] = terrain;
95
- }
96
- return { cells: next, ...cellsBounds(next, t) };
101
+ return cellKey(c + dc, r + dr);
102
+ };
103
+ const next = {};
104
+ for (const [key, terrain] of Object.entries(d.cells))
105
+ next[shift(key)] = terrain;
106
+ const nextIcons = {};
107
+ for (const [key, iconKey] of Object.entries(d.icons ?? {}))
108
+ nextIcons[shift(key)] = iconKey;
109
+ const nextHandPaint = {};
110
+ for (const key of Object.keys(d.handPaint ?? {}))
111
+ nextHandPaint[shift(key)] = true;
112
+ return {
113
+ cells: next,
114
+ icons: nextIcons,
115
+ handPaint: nextHandPaint,
116
+ ...tilemapBounds(next, nextIcons, t),
117
+ };
97
118
  },
98
119
  serializeForAi: (data) => {
99
120
  const d = data;
@@ -101,12 +122,17 @@ export function createTileMapShapeDefinition(tile = DEFAULT_TILE) {
101
122
  return {
102
123
  kind: "tilemap",
103
124
  tileCount: Object.keys(d.cells ?? {}).length,
125
+ iconCount: Object.keys(d.icons ?? {}).length,
104
126
  terrains: [...used],
105
127
  };
106
128
  },
107
129
  debugFields: (data) => {
108
130
  const d = data;
109
- return { tile: d.tile, cellCount: Object.keys(d.cells ?? {}).length };
131
+ return {
132
+ tile: d.tile,
133
+ cellCount: Object.keys(d.cells ?? {}).length,
134
+ iconCount: Object.keys(d.icons ?? {}).length,
135
+ };
110
136
  },
111
137
  };
112
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tilemap-shape.js","sourceRoot":"","sources":["../src/tilemap-shape.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tilemap-shape.js","sourceRoot":"","sources":["../src/tilemap-shape.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edv4h/usketch-plugin-map",
3
- "version": "0.8.0",
3
+ "version": "0.10.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -12,8 +12,8 @@
12
12
  }
13
13
  },
14
14
  "dependencies": {
15
- "@edv4h/usketch-shared": "4.10.0",
16
- "@edv4h/usketch-store": "3.5.2"
15
+ "@edv4h/usketch-shared": "4.11.0",
16
+ "@edv4h/usketch-store": "3.5.3"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "react": ">=19"
@@ -1,17 +0,0 @@
1
- import type { ShapeData, ShapeDefinition } from "@edv4h/usketch-shared";
2
- import { type IconCategory } from "./icons.js";
3
- export declare const MAP_ICON_TYPE = "map-icon";
4
- export declare const DEFAULT_ICON_SIZE = 48;
5
- export interface MapIconShapeData extends ShapeData {
6
- type: "map-icon";
7
- meta: {
8
- iconKey: string;
9
- category: IconCategory;
10
- /** Set when this icon is a base "beacon" (see setBeacon). The base's radius
11
- * lives on the base registry, not here. */
12
- baseId?: string;
13
- };
14
- }
15
- export declare function makeMapIcon(iconKey: string, category: IconCategory, x: number, y: number, size?: number): MapIconShapeData;
16
- export declare const mapIconShapeDefinition: ShapeDefinition;
17
- //# sourceMappingURL=map-icon-shape.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"map-icon-shape.d.ts","sourceRoot":"","sources":["../src/map-icon-shape.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAIX,SAAS,EACT,eAAe,EACf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAM7D,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAClD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,YAAY,CAAC;QACvB;oDAC4C;QAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACF;AAED,wBAAgB,WAAW,CAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,YAAY,EACtB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,SAAoB,GACtB,gBAAgB,CAWlB;AA6ED,eAAO,MAAM,sBAAsB,EAAE,eAsBpC,CAAC"}
@@ -1,106 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { generateId, withRotation } from "@edv4h/usketch-shared";
3
- import { ICONS_BY_KEY } from "./icons.js";
4
- import { WOBBLE_FILTER_ID } from "./map-layer.js";
5
- import { terrainCssVars } from "./palette.js";
6
- import { useRenderConfig } from "./render-config.js";
7
- import { renderSvgNodes } from "./svg-nodes.js";
8
- export const MAP_ICON_TYPE = "map-icon";
9
- export const DEFAULT_ICON_SIZE = 48;
10
- export function makeMapIcon(iconKey, category, x, y, size = DEFAULT_ICON_SIZE) {
11
- return {
12
- id: generateId(),
13
- type: "map-icon",
14
- x: Math.round(x - size / 2),
15
- y: Math.round(y - size / 2),
16
- width: size,
17
- height: size,
18
- style: { fill: "transparent", stroke: "transparent", strokeWidth: 0, opacity: 1 },
19
- meta: { iconKey, category },
20
- };
21
- }
22
- function parseViewBox(vb) {
23
- const p = vb.split(/[\s,]+/).map(Number);
24
- return [p[0] || 0, p[1] || 0, p[2] || 48, p[3] || 48];
25
- }
26
- function MapIconBody({ data }) {
27
- const cfg = useRenderConfig();
28
- const icon = ICONS_BY_KEY.get(data.meta?.iconKey ?? "");
29
- if (!icon)
30
- return _jsx("g", {});
31
- const [vx, vy, vw, vh] = parseViewBox(icon.viewBox);
32
- const sx = data.width / vw;
33
- const sy = data.height / vh;
34
- const cssVars = terrainCssVars(cfg.colorMode, cfg.strokeScale);
35
- return (_jsx("g", { style: cssVars, filter: cfg.lineStyle === "wobble" ? `url(#${WOBBLE_FILTER_ID})` : undefined, children: _jsx("g", { transform: `translate(${data.x} ${data.y}) scale(${sx} ${sy}) translate(${-vx} ${-vy})`, children: renderSvgNodes(icon.nodes, `icon-${icon.key}`) }) }));
36
- }
37
- function baseHitTest(data, point) {
38
- return (point.x >= data.x &&
39
- point.x <= data.x + data.width &&
40
- point.y >= data.y &&
41
- point.y <= data.y + data.height);
42
- }
43
- function resize(data, handle, delta) {
44
- let { x, y, width, height } = data;
45
- switch (handle) {
46
- case "se":
47
- width += delta.x;
48
- height += delta.y;
49
- break;
50
- case "nw":
51
- x += delta.x;
52
- y += delta.y;
53
- width -= delta.x;
54
- height -= delta.y;
55
- break;
56
- case "ne":
57
- y += delta.y;
58
- width += delta.x;
59
- height -= delta.y;
60
- break;
61
- case "sw":
62
- x += delta.x;
63
- width -= delta.x;
64
- height += delta.y;
65
- break;
66
- case "e":
67
- width += delta.x;
68
- break;
69
- case "w":
70
- x += delta.x;
71
- width -= delta.x;
72
- break;
73
- case "n":
74
- y += delta.y;
75
- height -= delta.y;
76
- break;
77
- case "s":
78
- height += delta.y;
79
- break;
80
- }
81
- return { ...data, x, y, width: Math.max(16, width), height: Math.max(16, height) };
82
- }
83
- export const mapIconShapeDefinition = {
84
- render: (data) => _jsx(MapIconBody, { data: data }),
85
- renderTarget: "svg",
86
- getBounds: (data) => ({
87
- x: data.x,
88
- y: data.y,
89
- width: data.width,
90
- height: data.height,
91
- }),
92
- hitTest: withRotation(baseHitTest),
93
- resize,
94
- minSize: { width: 16, height: 16 },
95
- createDefault: (params) => makeMapIcon("town", "landmark", params.x, params.y),
96
- serializeForAi: (data) => {
97
- const d = data;
98
- const icon = ICONS_BY_KEY.get(d.meta?.iconKey ?? "");
99
- return { kind: "map-icon", icon: d.meta?.iconKey, text: icon?.en };
100
- },
101
- debugFields: (data) => {
102
- const d = data;
103
- return { iconKey: d.meta?.iconKey, category: d.meta?.category };
104
- },
105
- };
106
- //# sourceMappingURL=map-icon-shape.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"map-icon-shape.js","sourceRoot":"","sources":["../src/map-icon-shape.tsx"],"names":[],"mappings":"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"}