@storm-software/cloudflare-tools 0.70.2 → 0.70.4

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 CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  # Changelog for Storm Ops - Cloudflare Tools
4
4
 
5
+ ## [0.70.3](https://github.com/storm-software/storm-ops/releases/tag/cloudflare-tools%400.70.3) (2025-10-17)
6
+
7
+ ### Miscellaneous
8
+
9
+ - **monorepo:** Update workspace package links
10
+ ([0f754388d](https://github.com/storm-software/storm-ops/commit/0f754388d))
11
+
12
+ ## [0.70.2](https://github.com/storm-software/storm-ops/releases/tag/cloudflare-tools%400.70.2) (2025-10-14)
13
+
14
+ ### Miscellaneous
15
+
16
+ - **monorepo:** Update workspace package link
17
+ ([1666003a2](https://github.com/storm-software/storm-ops/commit/1666003a2))
18
+
5
19
  ## [0.70.1](https://github.com/storm-software/storm-ops/releases/tag/cloudflare-tools%400.70.1) (2025-10-14)
6
20
 
7
21
  ### Miscellaneous
package/README.md CHANGED
@@ -21,7 +21,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
21
21
 
22
22
  <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
23
23
 
24
- [![Version](https://img.shields.io/badge/version-0.70.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
24
+ [![Version](https://img.shields.io/badge/version-0.70.2-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://prettier.io/)&nbsp;[![Nx](https://img.shields.io/badge/Nx-17.0.2-lightgrey?style=for-the-badge&logo=nx&logoWidth=20&&color=1fb2a6)](http://nx.dev/)&nbsp;[![NextJs](https://img.shields.io/badge/Next.js-14.0.2-lightgrey?style=for-the-badge&logo=nextdotjs&logoWidth=20&color=1fb2a6)](https://nextjs.org/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;[![documented with Fumadocs](https://img.shields.io/badge/documented_with-fumadocs-success.svg?style=for-the-badge&logo=readthedocs&color=1fb2a6)](https://fumadocs.vercel.app/)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/storm-ops/cr.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
25
25
 
26
26
  <!-- prettier-ignore-start -->
27
27
  <!-- markdownlint-disable -->
@@ -40,6 +40,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
40
40
 
41
41
  <!-- START doctoc -->
42
42
  <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
43
+
43
44
  ## Table of Contents
44
45
 
45
46
  - [Storm Cloudflare Tools](#storm-cloudflare-tools)
@@ -9,7 +9,7 @@ var __commonJS = (cb, mod) => function __require2() {
9
9
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
10
10
  };
11
11
 
12
- // ../../node_modules/.pnpm/tsup@8.4.0_patch_hash=751a554d775c3572381af4e7e5fa22eeda6dd6856012fb1cf521d6806eb2dc74__52044149eda0b9174979e7a83c82c57c/node_modules/tsup/assets/esm_shims.js
12
+ // ../../node_modules/.pnpm/tsup@8.4.0_patch_hash=751a554d775c3572381af4e7e5fa22eeda6dd6856012fb1cf521d6806eb2dc74__43ed2c06b3c48dede842704f70ee7c36/node_modules/tsup/assets/esm_shims.js
13
13
  import { fileURLToPath } from "url";
14
14
  import path from "path";
15
15
  var getFilename = () => fileURLToPath(import.meta.url);
@@ -7,7 +7,7 @@ var require_package = _chunkMCKGQKYUjs.__commonJS.call(void 0, {
7
7
  "package.json"(exports, module) {
8
8
  module.exports = {
9
9
  name: "@storm-software/cloudflare-tools",
10
- version: "0.70.1",
10
+ version: "0.70.3",
11
11
  description: "A Nx plugin package that contains various executors, generators, and utilities that assist in managing Cloudflare services.",
12
12
  repository: {
13
13
  type: "github",
@@ -176,7 +176,7 @@ var require_package = _chunkMCKGQKYUjs.__commonJS.call(void 0, {
176
176
  nx: "catalog:",
177
177
  tsup: "catalog:",
178
178
  untyped: "catalog:",
179
- wrangler: "^4.42.2"
179
+ wrangler: "^4.43.0"
180
180
  },
181
181
  publishConfig: {
182
182
  access: "public"
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  __commonJS
3
- } from "./chunk-F7QGSBUC.mjs";
3
+ } from "./chunk-CHZREGBQ.mjs";
4
4
 
5
5
  // package.json
6
6
  var require_package = __commonJS({
7
7
  "package.json"(exports, module) {
8
8
  module.exports = {
9
9
  name: "@storm-software/cloudflare-tools",
10
- version: "0.70.1",
10
+ version: "0.70.3",
11
11
  description: "A Nx plugin package that contains various executors, generators, and utilities that assist in managing Cloudflare services.",
12
12
  repository: {
13
13
  type: "github",
@@ -176,7 +176,7 @@ var require_package = __commonJS({
176
176
  nx: "catalog:",
177
177
  tsup: "catalog:",
178
178
  untyped: "catalog:",
179
- wrangler: "^4.42.2"
179
+ wrangler: "^4.43.0"
180
180
  },
181
181
  publishConfig: {
182
182
  access: "public"
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-PH3DHY4Q.mjs";
4
4
  import {
5
5
  __require
6
- } from "./chunk-F7QGSBUC.mjs";
6
+ } from "./chunk-CHZREGBQ.mjs";
7
7
 
8
8
  // src/executors/cloudflare-publish/executor.ts
9
9
  import { joinPathFragments } from "@nx/devkit";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generator_default
3
- } from "./chunk-Z7MTXY5P.mjs";
3
+ } from "./chunk-K6NJJ77M.mjs";
4
4
  import {
5
5
  findWorkspaceRoot,
6
6
  getConfig
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-V44DYGWX.mjs";
16
16
  import {
17
17
  __dirname
18
- } from "./chunk-F7QGSBUC.mjs";
18
+ } from "./chunk-CHZREGBQ.mjs";
19
19
 
20
20
  // src/generators/worker/generator.ts
21
21
  import {
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
- var _chunkC4E3LQLVjs = require('./chunk-C4E3LQLV.js');
3
+ var _chunkJRZPZXHCjs = require('./chunk-JRZPZXHC.js');
4
4
 
5
5
 
6
6
 
@@ -66,7 +66,7 @@ ${Object.keys(process.env).map((key) => ` - ${key}=${JSON.stringify(process.env[
66
66
  const options = await normalizeOptions(tree, schema, config);
67
67
  const tasks = [];
68
68
  tasks.push(
69
- await _chunkC4E3LQLVjs.generator_default.call(void 0, tree, {
69
+ await _chunkJRZPZXHCjs.generator_default.call(void 0, tree, {
70
70
  ...options,
71
71
  skipFormat: true
72
72
  })
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-V44DYGWX.mjs";
24
24
  import {
25
25
  __dirname
26
- } from "./chunk-F7QGSBUC.mjs";
26
+ } from "./chunk-CHZREGBQ.mjs";
27
27
 
28
28
  // ../config-tools/src/utilities/apply-workspace-tokens.ts
29
29
  var applyWorkspaceBaseTokens = async (option, tokenParams) => {
@@ -1,9 +1,9 @@
1
1
  import "./chunk-YSCEY447.mjs";
2
- import "./chunk-SICYJW7Y.mjs";
3
- import "./chunk-DJIZDTWN.mjs";
2
+ import "./chunk-OX3ROVWN.mjs";
3
+ import "./chunk-ZF3L66B2.mjs";
4
4
  import "./chunk-3ND7IFGL.mjs";
5
5
  import "./chunk-IANDAPQS.mjs";
6
6
  import "./chunk-PH3DHY4Q.mjs";
7
7
  import "./chunk-RSNYZTUY.mjs";
8
8
  import "./chunk-V44DYGWX.mjs";
9
- import "./chunk-F7QGSBUC.mjs";
9
+ import "./chunk-CHZREGBQ.mjs";
@@ -2,11 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkSKYPG7HAjs = require('./chunk-SKYPG7HA.js');
5
+ var _chunkVQ23T5NDjs = require('./chunk-VQ23T5ND.js');
6
6
 
7
7
 
8
8
 
9
- var _chunkC4E3LQLVjs = require('./chunk-C4E3LQLV.js');
9
+ var _chunkJRZPZXHCjs = require('./chunk-JRZPZXHC.js');
10
10
  require('./chunk-DTVTFZ3M.js');
11
11
  require('./chunk-2CDSXWFA.js');
12
12
  require('./chunk-MCKGQKYU.js');
@@ -15,4 +15,4 @@ require('./chunk-MCKGQKYU.js');
15
15
 
16
16
 
17
17
 
18
- exports.applicationGenerator = _chunkSKYPG7HAjs.applicationGenerator; exports.applicationSchematic = _chunkSKYPG7HAjs.applicationSchematic; exports.initGenerator = _chunkC4E3LQLVjs.initGenerator; exports.initSchematic = _chunkC4E3LQLVjs.initSchematic;
18
+ exports.applicationGenerator = _chunkVQ23T5NDjs.applicationGenerator; exports.applicationSchematic = _chunkVQ23T5NDjs.applicationSchematic; exports.initGenerator = _chunkJRZPZXHCjs.initGenerator; exports.initSchematic = _chunkJRZPZXHCjs.initSchematic;
@@ -2,14 +2,14 @@ import "./chunk-3J7KBHMJ.mjs";
2
2
  import {
3
3
  applicationGenerator,
4
4
  applicationSchematic
5
- } from "./chunk-Y3MLQFMC.mjs";
5
+ } from "./chunk-Q6W3IIKU.mjs";
6
6
  import {
7
7
  initGenerator,
8
8
  initSchematic
9
- } from "./chunk-Z7MTXY5P.mjs";
9
+ } from "./chunk-K6NJJ77M.mjs";
10
10
  import "./chunk-RSNYZTUY.mjs";
11
11
  import "./chunk-V44DYGWX.mjs";
12
- import "./chunk-F7QGSBUC.mjs";
12
+ import "./chunk-CHZREGBQ.mjs";
13
13
  export {
14
14
  applicationGenerator,
15
15
  applicationSchematic,
package/dist/index.js CHANGED
@@ -3,11 +3,11 @@ require('./chunk-DHBG5ASJ.js');
3
3
 
4
4
 
5
5
 
6
- var _chunkSKYPG7HAjs = require('./chunk-SKYPG7HA.js');
6
+ var _chunkVQ23T5NDjs = require('./chunk-VQ23T5ND.js');
7
7
 
8
8
 
9
9
 
10
- var _chunkC4E3LQLVjs = require('./chunk-C4E3LQLV.js');
10
+ var _chunkJRZPZXHCjs = require('./chunk-JRZPZXHC.js');
11
11
  require('./chunk-CVGPWUNP.js');
12
12
  require('./chunk-IRORGRVZ.js');
13
13
  require('./chunk-SYNYHK4S.js');
@@ -163,4 +163,4 @@ function createPackageJson(projectJsonPath, workspaceRoot) {
163
163
 
164
164
 
165
165
 
166
- exports.applicationGenerator = _chunkSKYPG7HAjs.applicationGenerator; exports.applicationSchematic = _chunkSKYPG7HAjs.applicationSchematic; exports.createNodesV2 = createNodesV2; exports.getInternalDependencies = _chunkNCQM44P3js.getInternalDependencies; exports.initGenerator = _chunkC4E3LQLVjs.initGenerator; exports.initSchematic = _chunkC4E3LQLVjs.initSchematic; exports.name = name; exports.r2UploadFile = _chunkNCQM44P3js.r2UploadFile;
166
+ exports.applicationGenerator = _chunkVQ23T5NDjs.applicationGenerator; exports.applicationSchematic = _chunkVQ23T5NDjs.applicationSchematic; exports.createNodesV2 = createNodesV2; exports.getInternalDependencies = _chunkNCQM44P3js.getInternalDependencies; exports.initGenerator = _chunkJRZPZXHCjs.initGenerator; exports.initSchematic = _chunkJRZPZXHCjs.initSchematic; exports.name = name; exports.r2UploadFile = _chunkNCQM44P3js.r2UploadFile;
package/dist/index.mjs CHANGED
@@ -3,14 +3,14 @@ import "./chunk-3J7KBHMJ.mjs";
3
3
  import {
4
4
  applicationGenerator,
5
5
  applicationSchematic
6
- } from "./chunk-Y3MLQFMC.mjs";
6
+ } from "./chunk-Q6W3IIKU.mjs";
7
7
  import {
8
8
  initGenerator,
9
9
  initSchematic
10
- } from "./chunk-Z7MTXY5P.mjs";
10
+ } from "./chunk-K6NJJ77M.mjs";
11
11
  import "./chunk-7Z5PILRU.mjs";
12
- import "./chunk-SICYJW7Y.mjs";
13
- import "./chunk-DJIZDTWN.mjs";
12
+ import "./chunk-OX3ROVWN.mjs";
13
+ import "./chunk-ZF3L66B2.mjs";
14
14
  import "./chunk-3ND7IFGL.mjs";
15
15
  import {
16
16
  getInternalDependencies,
@@ -22,7 +22,7 @@ import {
22
22
  } from "./chunk-PH3DHY4Q.mjs";
23
23
  import "./chunk-RSNYZTUY.mjs";
24
24
  import "./chunk-V44DYGWX.mjs";
25
- import "./chunk-F7QGSBUC.mjs";
25
+ import "./chunk-CHZREGBQ.mjs";
26
26
 
27
27
  // src/plugins/index.ts
28
28
  import {
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  runExecutor
3
- } from "../../../chunk-SICYJW7Y.mjs";
4
- import "../../../chunk-DJIZDTWN.mjs";
3
+ } from "../../../chunk-OX3ROVWN.mjs";
4
+ import "../../../chunk-ZF3L66B2.mjs";
5
5
  import "../../../chunk-PH3DHY4Q.mjs";
6
6
  import "../../../chunk-RSNYZTUY.mjs";
7
7
  import "../../../chunk-V44DYGWX.mjs";
8
- import "../../../chunk-F7QGSBUC.mjs";
8
+ import "../../../chunk-CHZREGBQ.mjs";
9
9
  export {
10
10
  runExecutor as default
11
11
  };
@@ -5,7 +5,7 @@ import "../../../chunk-IANDAPQS.mjs";
5
5
  import "../../../chunk-PH3DHY4Q.mjs";
6
6
  import "../../../chunk-RSNYZTUY.mjs";
7
7
  import "../../../chunk-V44DYGWX.mjs";
8
- import "../../../chunk-F7QGSBUC.mjs";
8
+ import "../../../chunk-CHZREGBQ.mjs";
9
9
  export {
10
10
  runExecutor as default
11
11
  };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  withRunExecutor
3
- } from "../../../chunk-DJIZDTWN.mjs";
3
+ } from "../../../chunk-ZF3L66B2.mjs";
4
4
  import {
5
5
  createCliOptions
6
6
  } from "../../../chunk-PH3DHY4Q.mjs";
@@ -8,7 +8,7 @@ import "../../../chunk-RSNYZTUY.mjs";
8
8
  import "../../../chunk-V44DYGWX.mjs";
9
9
  import {
10
10
  __require
11
- } from "../../../chunk-F7QGSBUC.mjs";
11
+ } from "../../../chunk-CHZREGBQ.mjs";
12
12
 
13
13
  // src/executors/serve/executor.ts
14
14
  import { createAsyncIterable } from "@nx/devkit/src/utils/async-iterable";
@@ -2,10 +2,10 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkC4E3LQLVjs = require('../../../chunk-C4E3LQLV.js');
5
+ var _chunkJRZPZXHCjs = require('../../../chunk-JRZPZXHC.js');
6
6
  require('../../../chunk-MCKGQKYU.js');
7
7
 
8
8
 
9
9
 
10
10
 
11
- exports.default = _chunkC4E3LQLVjs.generator_default; exports.initGenerator = _chunkC4E3LQLVjs.initGenerator; exports.initSchematic = _chunkC4E3LQLVjs.initSchematic;
11
+ exports.default = _chunkJRZPZXHCjs.generator_default; exports.initGenerator = _chunkJRZPZXHCjs.initGenerator; exports.initSchematic = _chunkJRZPZXHCjs.initSchematic;
@@ -2,8 +2,8 @@ import {
2
2
  generator_default,
3
3
  initGenerator,
4
4
  initSchematic
5
- } from "../../../chunk-Z7MTXY5P.mjs";
6
- import "../../../chunk-F7QGSBUC.mjs";
5
+ } from "../../../chunk-K6NJJ77M.mjs";
6
+ import "../../../chunk-CHZREGBQ.mjs";
7
7
  export {
8
8
  generator_default as default,
9
9
  initGenerator,
@@ -2,8 +2,8 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkSKYPG7HAjs = require('../../../chunk-SKYPG7HA.js');
6
- require('../../../chunk-C4E3LQLV.js');
5
+ var _chunkVQ23T5NDjs = require('../../../chunk-VQ23T5ND.js');
6
+ require('../../../chunk-JRZPZXHC.js');
7
7
  require('../../../chunk-DTVTFZ3M.js');
8
8
  require('../../../chunk-2CDSXWFA.js');
9
9
  require('../../../chunk-MCKGQKYU.js');
@@ -11,4 +11,4 @@ require('../../../chunk-MCKGQKYU.js');
11
11
 
12
12
 
13
13
 
14
- exports.applicationGenerator = _chunkSKYPG7HAjs.applicationGenerator; exports.applicationSchematic = _chunkSKYPG7HAjs.applicationSchematic; exports.default = _chunkSKYPG7HAjs.generator_default;
14
+ exports.applicationGenerator = _chunkVQ23T5NDjs.applicationGenerator; exports.applicationSchematic = _chunkVQ23T5NDjs.applicationSchematic; exports.default = _chunkVQ23T5NDjs.generator_default;
@@ -2,11 +2,11 @@ import {
2
2
  applicationGenerator,
3
3
  applicationSchematic,
4
4
  generator_default
5
- } from "../../../chunk-Y3MLQFMC.mjs";
6
- import "../../../chunk-Z7MTXY5P.mjs";
5
+ } from "../../../chunk-Q6W3IIKU.mjs";
6
+ import "../../../chunk-K6NJJ77M.mjs";
7
7
  import "../../../chunk-RSNYZTUY.mjs";
8
8
  import "../../../chunk-V44DYGWX.mjs";
9
- import "../../../chunk-F7QGSBUC.mjs";
9
+ import "../../../chunk-CHZREGBQ.mjs";
10
10
  export {
11
11
  applicationGenerator,
12
12
  applicationSchematic,
@@ -4,7 +4,7 @@ import {
4
4
  r2UploadFile
5
5
  } from "../../chunk-IANDAPQS.mjs";
6
6
  import "../../chunk-V44DYGWX.mjs";
7
- import "../../chunk-F7QGSBUC.mjs";
7
+ import "../../chunk-CHZREGBQ.mjs";
8
8
  export {
9
9
  getInternalDependencies,
10
10
  r2UploadFile
@@ -3,7 +3,7 @@ import {
3
3
  r2UploadFile
4
4
  } from "../../chunk-IANDAPQS.mjs";
5
5
  import "../../chunk-V44DYGWX.mjs";
6
- import "../../chunk-F7QGSBUC.mjs";
6
+ import "../../chunk-CHZREGBQ.mjs";
7
7
  export {
8
8
  getInternalDependencies,
9
9
  r2UploadFile
@@ -1,4 +1,4 @@
1
- import "./chunk-F7QGSBUC.mjs";
1
+ import "./chunk-CHZREGBQ.mjs";
2
2
 
3
3
  // tsup.config.ts
4
4
  import { defineConfig } from "tsup";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/cloudflare-tools",
3
- "version": "0.70.2",
3
+ "version": "0.70.4",
4
4
  "description": "A Nx plugin package that contains various executors, generators, and utilities that assist in managing Cloudflare services.",
5
5
  "repository": {
6
6
  "type": "github",
@@ -145,10 +145,10 @@
145
145
  "nx": "^21.4.1",
146
146
  "tsup": "8.4.0",
147
147
  "untyped": "^1.5.2",
148
- "wrangler": "^4.42.2"
148
+ "wrangler": "^4.43.0"
149
149
  },
150
150
  "publishConfig": { "access": "public" },
151
151
  "executors": "./executors.json",
152
152
  "generators": "./generators.json",
153
- "gitHead": "c64cc32a7697d826c8039a1d5f4742d01d59a592"
153
+ "gitHead": "a2b228be07baf2c5466cc28c506b87b56aca667f"
154
154
  }