Skip to content

[DevTools Console] Avoid editor freeze after pasting large JSON#251173

Merged
kapral18 merged 4 commits intoelastic:mainfrom
kapral18:kg/devtools-console-editor-perf
Feb 19, 2026
Merged

[DevTools Console] Avoid editor freeze after pasting large JSON#251173
kapral18 merged 4 commits intoelastic:mainfrom
kapral18:kg/devtools-console-editor-perf

Conversation

@kapral18
Copy link
Contributor

@kapral18 kapral18 commented Feb 1, 2026

Closes #251172

Summary

This PR fixes a DevTools Console editor freeze that occurs after pasting very large request payloads (notably JSON containing huge string fields) by removing expensive, full-buffer operations from keystroke-time paths and by preventing a super-linear ES|QL context scan from running on large inputs.

DEMO (Before / After)

Screen.Recording.2026-02-01.at.16.35.mp4

Change 1: Console completion avoids full-buffer reads (kbn-monaco Console language)

What changed

  • The Console completion provider no longer calls model.getValue() to compute textBeforeCursor.
  • ES|QL context detection is only attempted when the cursor is within a POST /_query (or POST _query/async) request.
  • When it is a _query request, the provider reads only the relevant slice via model.getValueInRange() (from the request line to the cursor).
  • For all other requests (or when no request line is found within a bounded lookback), completion delegates to the existing actions provider.

Why

  • model.getValue() materializes the entire document string, which becomes prohibitively expensive after users paste very large payloads; doing that on completion triggers (often on every keystroke) is enough to stall the UI.
  • ES|QL completion only makes sense for _query requests; scoping the work avoids paying the cost for non-ES|QL traffic.

Why this approach

  • We preserve existing completion behavior by delegating to the actions provider, but avoid the pathological cost by restricting work to a small, semantically relevant window.

Change 2: ES|QL quote/query detection is linear-time (checkForTripleQuotesAndEsqlQuery)

What changed

  • checkForTripleQuotesAndEsqlQuery was rewritten to scan the text once and avoid repeated substring+regex work inside the main loop.

Why

  • The previous approach could become super-linear on adversarial inputs (many quotes / many potential toggles), which is exactly what large JSON payloads tend to contain.
  • In the worst case, this turns “type one character” into “do a huge amount of CPU work”, producing the freeze.

Why this approach

  • A single forward scan preserves semantics while making the runtime scale predictably with input size.

Change 3: Monaco onChange no longer calls editor.getValue() per keystroke (shared-ux React Monaco editor)

What changed

  • The onDidChangeModelContent handler computes the next value by applying event.changes to a shadow string (lastKnownValueRef) instead of calling editor.getValue().
  • Controlled-mode syncing (useLayoutEffect) first compares the incoming value against the shadow value to avoid unnecessary full-buffer reads.

Why

  • editor.getValue() materializes the full buffer; doing it on every keystroke creates a hard O(N) cost per change, which is visible (and can be catastrophic) for large models.
  • Applying incremental changes keeps the per-keystroke cost proportional to the change set, not the document size.

Why this approach

  • Monaco already provides the exact edit deltas (IModelContentChangedEvent.changes). Applying those deltas is the cheapest way to keep React state in sync without forcing full-buffer reads.

Tests (what they cover and why)

  • language.test.ts: exercises the completion provider branching/delegation so we don’t regress behavior while tightening when/what we read from the model.
  • autocomplete_utils.test.ts: focused behavioral coverage for ES|QL context detection edge cases (the perf-worker regression test was removed to keep the suite deterministic and low-maintenance).
  • editor.test.tsx: verifies the incremental onChange value computation (including multi-change ordering) and controlled sync behavior.

Test plan

  • node scripts/jest.js src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts --config src/platform/packages/shared/kbn-monaco/jest.config.js
  • node scripts/jest.js src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx --config src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js

Manual UI verification (DevTools Console)

  • Open DevTools -> Console.
  • Open the sanitized reproduction payload gist (https://gist.github.com/kapral18/9e461b55238c15d949669dd62a851676) and paste the payload into the editor.
  • Click at the very end of the pasted content and type a few characters.
  • Verify the editor remains responsive (no multi-second freeze / hang), and typed characters appear immediately.
  • Optional: place the cursor inside a """ ... """ block and type to ensure autocomplete remains responsive.

Assisted by Cursor CLI using GPT-5.2-High model

@kapral18 kapral18 requested review from a team as code owners February 1, 2026 11:35
@kapral18 kapral18 added bug Fixes for quality problems that affect the customer experience backport:all-open Backport to all branches that could still receive a release release_note:skip Skip the PR/issue when compiling release notes Feature:Console Dev Tools Console Feature labels Feb 1, 2026
@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch 4 times, most recently from 6e79624 to 3e3e699 Compare February 1, 2026 18:50
Copy link
Contributor

@ElenaStoeva ElenaStoeva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this @kapral18! I tested locally and it works well but I'd recommend that it's tested by at least one more person from @elastic/kibana-management just to make sure no regressions are introduced.

Regarding the code changes, I left some comments. My main suggestion is about readability - the logic is quite complex so it would be helpful to document every helper/utility so that a reader can understand what the overall logic is doing without having to go deep into the implementation details. Also, it would be nice to add unit tests for all of the new helpers introduced in autocomplete_utils.ts.

@kapral18 kapral18 marked this pull request as draft February 2, 2026 13:01
@kapral18
Copy link
Contributor Author

kapral18 commented Feb 2, 2026

Thanks for working on this @kapral18! I tested locally and it works well but I'd recommend that it's tested by at least one more person from @elastic/kibana-management just to make sure no regressions are introduced.

Regarding the code changes, I left some comments. My main suggestion is about readability - the logic is quite complex so it would be helpful to document every helper/utility so that a reader can understand what the overall logic is doing without having to go deep into the implementation details. Also, it would be nice to add unit tests for all of the new helpers introduced in autocomplete_utils.ts.

sorry this was to be marked as draft as I already had a lot of changes done but not pushed even before your review. But I appreciate you taking the time and apologies. I will still address the comments and I appreciate the good feedback.

@kapral18
Copy link
Contributor Author

kapral18 commented Feb 3, 2026

Also, it would be nice to add unit tests for all of the new helpers introduced in autocomplete_utils.ts.

@ElenaStoeva I added better coverage to utils without exposing every single little tool as most of the tools are private and are not supposed to be depended as public api of this file.

@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch from fedda18 to 76f54ea Compare February 3, 2026 14:22
@kapral18 kapral18 marked this pull request as ready for review February 3, 2026 15:10
@kapral18 kapral18 requested a review from ElenaStoeva February 3, 2026 15:11
@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch from 76f54ea to e80a0e7 Compare February 3, 2026 23:15
Copy link
Contributor

@ElenaStoeva ElenaStoeva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing my feedback - it is much easier to read and understand now!

There are some helpers which are not trivial and I still think they would benefit from some unit tests - for example, isQueryValueStartAtQuote and scanRequestLineFrom. I understand we don't want to expose these but we could export them from their file, and then add index.ts in utils/ that only exports checkForTripleQuotesAndEsqlQuery - would that make sense?

Also, I noticed we removed the test with a very large string in a request - could we add a functional test that tests a request which would cause the crash before the fix is added? We have a similar test here.

});
});

it('does not treat longer words as request methods (e.g. POSTER)', () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: This looks like a duplicate test (very similar to the previous one) - why do we need it?

Copy link
Contributor Author

@kapral18 kapral18 Feb 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was models way to cover minimal invariant surface GET-GETS POST-POSTER, which is not wrong. Because each test catches a separate invariant. But can be optimized.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@kapral18
Copy link
Contributor Author

kapral18 commented Feb 5, 2026

There are some helpers which are not trivial and I still think they would benefit from some unit tests - for example, isQueryValueStartAtQuote and scanRequestLineFrom. I understand we don't want to expose these but we could export them from their file, and then add index.ts in utils/ that only exports checkForTripleQuotesAndEsqlQuery - would that make sense?

@ElenaStoeva

Even if we don’t re-export from utils/index.ts, they’re still available via deep imports and that effectively turns them into part of the module surface area. Instead we already have them covered via the public API checkForTripleQuotesAndEsqlQuery in ways that specifically exercise those helper behaviors:
• scanRequestLineFrom: covered by the “insideEsqlQuery=true” cases across request-line variants (case-insensitive post, querystring suffixes, /async, indentation, multi-request buffers).
• isQueryValueStartAtQuote: covered by cases like whitespace around the colon and near-miss keys (e.g. "queryx" not matching).

@kapral18 kapral18 requested a review from ElenaStoeva February 5, 2026 02:32
@kapral18
Copy link
Contributor Author

kapral18 commented Feb 5, 2026

Also, I noticed we removed the test with a very large string in a request - could we add a functional test that tests a request which would cause the crash before the fix is added? We have a similar test here.

@ElenaStoeva

I added the functional test

@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch from f917fc6 to c83b12e Compare February 6, 2026 08:26
Copy link
Contributor

@eokoneyo eokoneyo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look good, tested locally for ESQL in discover, thanks for adding tests for this also, left some nits comments I think we should adddress

if (value === editor.current.getValue()) {
// In controlled mode, `value` changes on every keystroke. Avoid calling `editor.getValue()`
// (which materializes the full model) by comparing against our shadow copy first.
if (typeof value !== 'string' || value === lastKnownValueRef.current) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious did you stumble on a scenario where value was not a string??

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a string specifically, but undefined — when the consumer uses the editor in uncontrolled mode (value={undefined}), the typeof guard short-circuits the effect so we don't try to push undefined into the model. I also added value ?? defaultValue in initMonaco (line 256) and a test for this path. Wdyt

Copy link
Contributor

@ElenaStoeva ElenaStoeva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Latest lgtm, thanks!

@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch from c83b12e to 49ed95d Compare February 7, 2026 00:51
@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch 2 times, most recently from d99befb to c87e7d0 Compare February 18, 2026 11:17
@kapral18 kapral18 requested a review from eokoneyo February 18, 2026 11:18
@kapral18 kapral18 force-pushed the kg/devtools-console-editor-perf branch from 166f5f9 to e338550 Compare February 18, 2026 12:50
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 23, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
@kapral18
Copy link
Contributor Author

💚 All backports created successfully

Status Branch Result
9.3
9.2
8.19

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
@kibanamachine
Copy link
Contributor

Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync.
cc: @kapral18

kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
Co-authored-by: Cursor <cursoragent@cursor.com>
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
Co-authored-by: Cursor <cursoragent@cursor.com>
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 24, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 25, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
@kibanamachine
Copy link
Contributor

Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync.
cc: @kapral18

kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 25, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

### Manual UI verification (DevTools Console)
- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)

# Conflicts:
#	src/platform/packages/shared/kbn-monaco/src/languages/console/language.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
#	src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.ts
#	src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
kapral18 added a commit that referenced this pull request Feb 26, 2026
…#251173) (#254617)

# Backport

This will backport the following commits from `main` to `9.3`:
- [[DevTools Console] Avoid editor freeze after pasting large JSON
(#251173)](#251173)

<!--- Backport version: 10.2.0 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

Co-authored-by: Cursor <cursoragent@cursor.com>
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 26, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
Co-authored-by: Cursor <cursoragent@cursor.com>
kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 26, 2026
…tic#251173)

Closes elastic#251172

## Summary
This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

## DEMO (Before / After)

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

## Change 1: Console completion avoids full-buffer reads (`kbn-monaco`
Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

## Change 2: ES|QL quote/query detection is linear-time
(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

## Change 3: Monaco `onChange` no longer calls `editor.getValue()` per
keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

## Tests (what they cover and why)
- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

## Test plan
- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

Co-authored-by: Cursor <cursoragent@cursor.com>
@kibanamachine
Copy link
Contributor

Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync.
cc: @kapral18

kapral18 added a commit to kapral18/kibana that referenced this pull request Feb 26, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

Co-authored-by: Cursor <cursoragent@cursor.com>
kapral18 added a commit that referenced this pull request Feb 27, 2026
…#251173) (#254618)

# Backport

This will backport the following commits from `main` to `9.2`:
- [[DevTools Console] Avoid editor freeze after pasting large JSON
(#251173)](#251173)

<!--- Backport version: 10.2.0 -->

## CI / Scout note (9.2 Streams)
This backport branch was repeatedly failing `streams_app` Scout tests on
9.2 due to a pre-existing Playwright/Monaco `CodeEditor` interaction
where bulk input (notably `.fill()`) can leave the editor content
truncated/garbled. Downstream, the Streams condition syntax editor
silently ignores invalid JSON, so conditions/previews never apply.

To stabilize CI **test-side only** (no product behavior changes):
- Ensure Streams Scout page objects don't reach into private fields
(fixes TypeScript typecheck)
- Updated the Streams Scout page object to stabilize the custom samples
Monaco editor input by targeting Monaco's textarea (with retries + JSON
validation, plus a fallback to slow typing).
- Updated the routing preview specs to avoid editing JSON directly in
the Monaco syntax editor on 9.2 (flaky under automation), while still
keeping meaningful coverage by:
  - asserting the preview updates correctly when conditions change
- asserting the syntax editor reflects the current condition when
toggled on

### Follow-ups
-
[#255025](#255025)
(Streams UX: preserve invalid JSON + show validation; avoid silent
discard on apply)
-
[#255029](#255029)
(Shared UX `@kbn/code-editor`: improve Monaco/Playwright bulk input
reliability)

### Test plan
- `node scripts/scout.js run-tests --arch stateful --domain classic
--testFiles
x-pack/platform/plugins/shared/streams_app/test/scout/ui/tests/data_management/data_processing/data_sources_management.spec.ts,x-pack/platform/plugins/shared/streams_app/test/scout/ui/tests/data_management/data_routing/routing_data_preview.spec.ts`

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
@kibanamachine
Copy link
Contributor

Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync.
cc: @kapral18

kapral18 added a commit to kapral18/kibana that referenced this pull request Mar 2, 2026
…tic#251173)

Closes elastic#251172

This PR fixes a DevTools Console editor freeze that occurs after pasting
very large request payloads (notably JSON containing huge string fields)
by removing expensive, full-buffer operations from keystroke-time paths
and by preventing a super-linear ES|QL context scan from running on
large inputs.

https://github.com/user-attachments/assets/54b90fdb-f0b0-4de0-ae53-6fa4a12a98d9

Console language)
**What changed**
- The Console completion provider no longer calls `model.getValue()` to
compute `textBeforeCursor`.
- ES|QL context detection is only attempted when the cursor is within a
`POST /_query` (or `POST _query/async`) request.
- When it *is* a `_query` request, the provider reads only the relevant
slice via `model.getValueInRange()` (from the request line to the
cursor).
- For all other requests (or when no request line is found within a
bounded lookback), completion delegates to the existing actions
provider.

**Why**
- `model.getValue()` materializes the entire document string, which
becomes prohibitively expensive after users paste very large payloads;
doing that on completion triggers (often on every keystroke) is enough
to stall the UI.
- ES|QL completion only makes sense for `_query` requests; scoping the
work avoids paying the cost for non-ES|QL traffic.

**Why this approach**
- We preserve existing completion behavior by delegating to the actions
provider, but avoid the pathological cost by restricting work to a
small, semantically relevant window.

(`checkForTripleQuotesAndEsqlQuery`)
**What changed**
- `checkForTripleQuotesAndEsqlQuery` was rewritten to scan the text once
and avoid repeated substring+regex work inside the main loop.

**Why**
- The previous approach could become super-linear on adversarial inputs
(many quotes / many potential toggles), which is exactly what large JSON
payloads tend to contain.
- In the worst case, this turns “type one character” into “do a huge
amount of CPU work”, producing the freeze.

**Why this approach**
- A single forward scan preserves semantics while making the runtime
scale predictably with input size.

keystroke (`shared-ux` React Monaco editor)
**What changed**
- The `onDidChangeModelContent` handler computes the next value by
applying `event.changes` to a shadow string (`lastKnownValueRef`)
instead of calling `editor.getValue()`.
- Controlled-mode syncing (`useLayoutEffect`) first compares the
incoming `value` against the shadow value to avoid unnecessary
full-buffer reads.

**Why**
- `editor.getValue()` materializes the full buffer; doing it on every
keystroke creates a hard O(N) cost per change, which is visible (and can
be catastrophic) for large models.
- Applying incremental changes keeps the per-keystroke cost proportional
to the change set, not the document size.

**Why this approach**
- Monaco already provides the exact edit deltas
(`IModelContentChangedEvent.changes`). Applying those deltas is the
cheapest way to keep React state in sync without forcing full-buffer
reads.

- **`language.test.ts`**: exercises the completion provider
branching/delegation so we don’t regress behavior while tightening
when/what we read from the model.
- **`autocomplete_utils.test.ts`**: focused behavioral coverage for
ES|QL context detection edge cases (the perf-worker regression test was
removed to keep the suite deterministic and low-maintenance).
- **`editor.test.tsx`**: verifies the incremental `onChange` value
computation (including multi-change ordering) and controlled sync
behavior.

- `node scripts/jest.js
src/platform/packages/shared/kbn-monaco/src/languages/console/language.test.ts
src/platform/packages/shared/kbn-monaco/src/languages/console/utils/autocomplete_utils.test.ts
--config src/platform/packages/shared/kbn-monaco/jest.config.js`
- `node scripts/jest.js
src/platform/packages/shared/shared-ux/code_editor/impl/react_monaco_editor/editor.test.tsx
--config
src/platform/packages/shared/shared-ux/code_editor/impl/jest.config.js`

- Open `DevTools -> Console`.
- Expand the `<details>` block below and paste the payload into the
editor.
- Click at the very end of the pasted content and type a few characters.
- Verify the editor remains responsive (no multi-second freeze / hang),
and typed characters appear immediately.
- Optional: place the cursor inside a `""" ... """` block and type to
ensure autocomplete remains responsive.

<details>
<summary>Sanitized reproduction payload (paste into DevTools
Console)</summary>

```http
POST _ingest/pipeline/_simulate
{
  "docs": [
    {
      "_source": {
        "@timestamp": "xQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS",
        "eventData": {
          "__original": "5\"wYxQ9mP7vK\"2Zt\"R4nL1aB8c\"D\"6eF3gH\"0\"jS5wYxQ9\"mP\"7vK2ZtR4n\"L1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8c\"D6eF3gH\"0jS5wYxQ9m\"P7vK2ZtR4\"nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Z\"tR4nL1\"aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2Zt\"R4nL1a\"B8cD6eF\"3gH0j\"S5wYxQ9\"m\"P7vK2ZtR4nL1aB8c\"D6\"eF3gH\"0jS5w\"YxQ9mP7v\"K2Z\"tR4\"n\"L1aB8\"c\"D6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B8cD\"6eF3gH0jS5\"wYxQ9mP\"7vK2ZtR4nL\"1aB8cD6\"eF3g\"H0jS5\"wYxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3g\"H\"0jS5wYx\"Q9mP7v\"K2ZtR4n\"L1aB8c\"D6eF3gH\"0\"jS5wYxQ9mP7vK2Z\"t\"R4nL1aB8cD\"6eF3gH\"0jS5wYxQ9mP7v\"K2ZtR4n\"L1aB\"8\"cD6eF\"3\"gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8cD\"6\"eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"n\"L1aB8cD6e\"F3g\"H0jS5wYxQ9mP7vK2ZtR\"4nL1aB8cD\"6eF3gH0jS\"5w\"YxQ9mP7v\"K2ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wY\"xQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4n\"L1aB8\"cD6eF\"3gH\"0jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB8\"cD6eF\"3gH0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1a\"B8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP\"7vK2Z\"tR4nL\"1aB\"8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4nL\"1aB8c\"D6eF3\"gH0\"jS5wYx\"Q9mP7\"vK2ZtR\"4nL1aB8cD\"6\"eF3gH0jS5wYxQ\"9\"mP7vK2ZtR\"4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9mP7v\"K2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Z\"tR4nL\"1aB8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1\"aB8cD\"6eF3gH\"0jS5wY\"xQ9mP7\"vK2ZtR4nL\"1aB8c\"D6eF3gH\"0jS\"5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4\"nL\\1a\\\"\\B8cD6\"e\"F3gH\"0jS\"5wYxQ9mP7\"vK2Zt\"R4nL1aB8c\"D6eF3\"gH0jS5wYxQ\"9mP7vK2\"ZtR4nL1aB8\"cD6eF3g\"H0jS\"5wYxQ\"9mP7\"v\"K2ZtR4nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1aB\"8cD6eF3\"g\"H0jS5wYxQ9mP7vK\"2\"ZtR4nL1aB8\"cD6eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL1\"a\"B8cD6e\"F\"3gH0jS5w\"Y\"xQ9mP7vK2ZtR4nL1aB8c\"D\"6eF3gH0jS5\"w\"YxQ9mP7vK2ZtR\"4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7vK2Zt\"R4nL1aB8c\"D6eF3gH0j\"S5\"wYxQ9mP7\"vK2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5w\"YxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Zt\"R4nL1\"aB8cD\"6eF\"3gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4nL1\"aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS\"5wY\"xQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5w\"YxQ9m\"P7vK2Z\"tR4nL1aB8\"c\"D6eF3gH0jS5wY\"x\"Q9mP7vK2Z\"tR\"4nL1aB8c\"D6eF3\"gH0jS5wYxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3\"gH0jS\"5wYxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7v\"K2Z\"tR4\"nL1aB\"8cD6eF\"3gH0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5wYxQ9m\"P7v\"K2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B\"8cD6eF\"3\"gH0j\"S5w\"YxQ9mP7vK\"2ZtR4\"nL1aB8cD6\"eF3gH0j\"S5wYxQ9mP7\"vK2ZtR4\"nL1aB8cD6e\"F3gH0jS\"5wYx\"Q9mP7\"vK2Z\"t\"R4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR4nL1a\"B8cD6eF\"3gH0jS5wYx\"Q9mP7vK\"2\"ZtR4nL1aB8cD6eF\"3\"gH0jS5wYxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5w\"Y\"xQ9mP\"7\"vK2ZtR4n\"L\"1aB8cD6eF3gH0jS5wYxQ\"9\"mP7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7v\"K2ZtR4nL1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2Zt\"R4\"nL1aB8cD\"6eF3g\"H0jS5wYxQ9mP7vK\"2Zt\"R4n\"L1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5wY\"xQ9\"mP7vK\"2ZtR4\"nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS5\"wYxQ9\"mP7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0j\"S5w\"YxQ9m\"P7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8\"cD6\"eF3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4n\"L1aB8\"cD6eF3\"gH0jS5wYx\"Q\"9mP7vK2ZtR4nL\"1\"aB8cD6eF3\"gH\"0jS5wYxQ\"9mP7v\"K2ZtR4nL1aB8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9m\"P7vK2\"ZtR4n\"L1a\"B8cD6\"eF3gH\"0jS5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0j\"S5wYx\"Q9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR\"4nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP\"7vK2ZtR\"4nL\"1aB8cD6eF\"3gH\"0\"jS5wYx\"Q\"9mP7\"vK2\"ZtR4nL1aB\"8cD6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4n\"L1aB8cD6\"eF3gH0jS5w\"YxQ9mP7\"vK2Z\"tR4nL\"1aB8\"c\"D6eF3gH0jS5wYxQ9mP7vK2ZtR\"4\"nL1aB8c\"D6eF3gH0\"jS5wYxQ\"9mP7vK2\"ZtR4nL1\"a\"B8cD6eF3gH0jS5w\"Y\"xQ9mP7vK2Z\"tR4nL1\"aB8cD6eF3gH0j\"S5wYxQ9m\"P7vK\"2\"ZtR4n\"L\"1aB8cD6e\"F\"3gH0jS5wYxQ9mP7vK2Zt\"R\"4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"m\"P7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7vK2Zt\"R4nL1aB8c\"D6\"eF3gH0jS\"5wYxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6e\"F3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF\"3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR\"4nL1a\"B8cD6\"eF3\"gH0jS\"5wYxQ\"9mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH\"0jS\"5wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8cD\"6eF3g\"H0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8cD6eF3gH0jS5w\"YxQ\"9mP\"7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2ZtR\"4nL1a\"B8cD6eF\"3gH\"0jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1a\"B8cD6\"eF3gH\"0jS\"5wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD6\"eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F\"3gH0jS5wY\"xQ\"9mP7vK2Z\"tR4nL\"1aB8cD6eF3gH0\"jS5\"wYx\"Q9mP7\"vK2Zt\"R4nL1\"aB8\"cD6eF\"3gH0j\"S5wYx\"Q9m\"P7vK2\"ZtR4n\"L1aB8cD\"6eF\"3gH0j\"S5wYx\"Q9mP7v\"K2Z\"tR4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5\"wYx\"Q9m\"P7vK2\"ZtR4nL\"1aB8cD\"6eF3gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1\"aB8\"cD6eF3gH0j\"S5w\"YxQ\"9mP7vK\"2ZtR4nL1aB8cD\"6eF3gH0\"jS5\"wYxQ9mP7v\"K2ZtR4n\"L1\"aB8cD6e\"F3gH\"0jS5wYxQ9\"m\"P7vK2ZtR4nL\"1\"aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4\"nL1aB\"8cD\"6eF3g\"H0j\"S5wYxQ9\"mP7v\"K2ZtR4nL\"1aB8c\"D6eF3gH0jS\"5wY\"xQ9mP7vK2Z\"tR4n\"L1aB8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9m\"P7v\"K2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5\"wYxQ9mP\"7\"vK2ZtR4nL1aB8cD6\"e\"F3gH0jS5wYxQ9mP7\"vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5\"wYxQ\"9mP7v\"K2ZtR\"4nL\"1aB8\"cD6eF\"3gH0j\"S5w\"YxQ9\"mP7vK\"2ZtR4\"nL1\"aB8c\"D6eF3\"gH0jS5\"wYxQ9mP7vK2ZtR4\"nL1a\"B8cD6eF3gH\"0jS5wY\"xQ9mP7vK2\"Z\"tR4nL1\"a\"B8cD6eF3\"gH\"0jS5wYxQ9\"mP7vK2Z\"tR4nL1a\"B8cD6eF3gH\"0jS5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS\"5wYxQ9m\"P7vK2Zt\"R4nL1\"aB8cD6eF\"3gH0j\"S5wYxQ9\"mP7vK2\"ZtR4nL1\"aB8cD6\"eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL\"1aB8c\"D6eF3\"gH0jS5wY\"xQ9\"mP7\"v\"K2ZtR4\"n\"L1aB\"8cD\"6eF3gH0jS\"5wYxQ\"9mP7vK2Zt\"R4nL1a\"B8cD6eF3gH\"0jS5wYxQ\"9mP7vK2ZtR\"4nL1aB8c\"D6eF\"3gH0j\"S5wY\"x\"Q9mP7vK2Zt\"R\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9\"mP7vK2Zt\"R4nL1aB\"8\"cD6eF3gH0jS5wYx\"Q\"9mP7vK2ZtR\"4nL1aB\"8cD6eF3gH0jS5\"wYxQ9mP7\"vK2Z\"t\"R4nL1a\"B\"8cD6eF3g\"H\"0jS5wYxQ9mP7vK2ZtR4n\"L\"1aB8cD6eF3\"g\"H0jS5wYxQ9mP7\"v\"K2ZtR4nL1\"aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3\"gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8c\"D6e\"F3g\"H0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5wY\"xQ9mP\"7vK2Z\"tR4\"nL1aB\"8cD6e\"F3gH0\"jS5\"wYxQ9\"mP7vK\"2ZtR4nL\"1aB\"8cD6eF\"3gH0j\"S5wYxQ\"9mP\"7vK2Zt\"R4nL1\"aB8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2\"ZtR\"4nL1a\"B8cD6\"eF3\"gH0j\"S5wYx\"Q9mP7\"vK2\"ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS\"5wYxQ\"9mP7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB8\"cD6eF\"3gH0jS5\"wYx\"Q9mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF3g\"H0jS5\"wYxQ9m\"P7vK2ZtR4\"n\"L1aB8cD6eF3gH\"0\"jS5wYxQ9m\"P7\"vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5w\"YxQ\"9mP\"7vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH0\"jS5wY\"xQ9mP\"7vK\"2ZtR4\"nL1aB\"8cD6e\"F3g\"H0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL1\"aB8cD\"6eF3g\"H0j\"S5wYx\"Q9mP7\"vK2ZtR4\"nL1\"aB8cD\"6eF3g\"H0jS5w\"YxQ\"9mP7v\"K2ZtR\"4nL1aB\"8cD\"6eF3g\"H0jS5\"wYxQ9\"mP7\"vK2\"ZtR4n\"L1aB8c\"D6eF3g\"H0jS5wY\"xQ9mP7vK2\"ZtR4nL\"1aB8cD6\"eF3\"gH0jS5wYxQ\"9mP\"7vK\"2ZtR4n\"L1aB8cD6eF3gH\"0jS5wYxQ\"9mP\"7vK2ZtR4n\"L1aB8cD\"6e\"F3gH0jS\"5wYx\"Q9mP7vK2Z\"t\"R4nL1aB8cD6\"e\"F3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB\"8c\"D6eF3\"gH0\"jS5wY\"xQ9\"mP7vK2Z\"tR4n\"L1aB8cD6\"eF3gH\"0jS5wYxQ9m\"P7v\"K2ZtR4nL1a\"B8cD\"6eF3gH0jS5wYxQ9m\"P7v\"K2Z\"tR4n\"L1aB8\"cD6eF\"3gH\"0jS5\"wYxQ9\"mP7vK\"2Zt\"R4nL\"1aB8c\"D6eF3\"gH0\"jS5w\"YxQ9m\"P7vK2\"ZtR\"4nL1\"aB8cD\"6eF3g\"H0j\"S5wY\"xQ9mP\"7vK2Z\"tR4\"nL1a\"B8cD6\"eF3gH\"0jS\"5wYx\"Q9mP7\"vK2Zt\"R4n\"L1aB\"8cD6e\"F3gH0\"jS5wYxQ\"9mP\"7vK2ZtR\"4\"nL1aB8cD6eF3gH0j\"S\"5wYxQ9mP7vK2ZtR4\"nL1\"aB8\"cD6e\"F3gH0\"jS5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB\"8cD\"6eF3\"gH0jS\"5wYxQ\"9mP\"7vK2\"ZtR4n\"L1aB8\"cD6\"eF3g\"H0jS5\"wYxQ9\"mP7\"vK2Z\"tR4nL\"1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF\"3gH0jS5wYx\"Q9mP7v\"K2ZtR4nL1\"a\"B8cD6eF3gH0jS\"5wY\"xQ9mP7vK2\"Z\"tR4nL1aB8cD6e\"F3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL1\"aB8\"cD6eF3gH0\"j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6e\"F\"3gH0jS5wYxQ9mP7\"vK2\"ZtR4nL1aB\"8\"cD6eF3gH\"0jS\"5wYxQ9\"mP7vK2ZtR\"4nL1aB8cD\"6eF\"3gH0jS\"5w\"YxQ9\"mP7vK2ZtR4n\"L1aB8cD6eF3g\"H0jS5wYxQ\"9mP7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS5wY\"x\"Q9mP7vK2ZtR4nL1aB8\"c\"D6eF3g\"H0jS5wYxQ9\"mP7vK\"2ZtR4nL1aB8\"cD6eF3gH0jS5wYxQ9m\"P7vK2ZtR4\"nL1aB8cD6\"eF3gH0jS5wYx\"Q9mP7vK2ZtR\"4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3gH0jS5\"wYxQ9mP7v\"K2ZtR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR4nL1a\"B8cD6eF3g\"H0jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL1\"a\"B8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP7vK2Zt\"R4n\"L1aB8cD6eF3\"gH0\"jS5wYxQ\"9mP\"7vK2ZtR4n\"L1a\"B8cD6eF3\"gH0\"jS5wYxQ9m\"P7vK2\"ZtR4nL1aB\"8\"cD6eF\"3\"gH0jS5w\"YxQ9mP7v\"K2ZtR4nL1\"aB8cD6\"eF3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8cD6eF3gH\"0jS\"5wYxQ9mP7vK\"2ZtR\"4nL1aB8\"cD6eF3gH0j\"S5wYxQ9mP\"7vK2ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ9m\"P7vK2ZtR4\"n\"L1aB8c\"D\"6eF3gH0\"jS5wYxQ9\"mP7vK2ZtR\"4nL1aB\"8cD6eF3g\"H0j\"S5wYxQ9mP\"7vK\"2ZtR4nL1aB8cD6e\"F3g\"H0jS5wYxQ9m\"P7v\"K2ZtR4n\"L1aB8cD6\"eF3gH0jS5\"wYxQ9m\"P7vK2ZtR\"4nL\"1aB8cD6eF\"3gH0j\"S5wYxQ9mP\"7\"vK2ZtR\"4\"nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wYxQ9mP7v\"K2Z\"tR4nL1aB8cD\"6eF\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9mP\"7vK2ZtR4n\"L\"1aB8cD6\"e\"F3gH0jS\"5wY\"xQ9mP7vK2\"ZtR\"4nL1aB8c\"D6e\"F3gH0jS5w\"YxQ\"9mP7vK2ZtR4nL1a\"B8c\"D6eF3gH0jS5\"wYx\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4nL\"1aB8cD6eF\"3\"gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8cD6eF3g\"H0j\"S5wYxQ9mP7v\"K2Z\"tR4nL1a\"B8c\"D6eF3gH0j\"S5w\"YxQ9mP7v\"K2Z\"tR4nL1aB8\"cD6eF\"3gH0jS5wY\"x\"Q9mP7vK\"2\"ZtR4nL1\"aB8\"cD6eF3gH0\"jS5\"wYxQ9mP7\"vK2\"ZtR4nL1aB\"8cD\"6eF3gH0jS5wYxQ9\"mP7\"vK2ZtR4nL1a\"B8c\"D6eF3gH\"0jS\"5wYxQ9mP7\"vK2\"ZtR4nL1a\"B8c\"D6eF3gH0j\"S5wYx\"Q9mP7vK2Z\"t\"R4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6e\"F\"3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD\"6eF\"3gH0jS5wY\"xQ9\"mP7vK2ZtR4nL1aB\"8cD\"6eF3gH0jS5w\"YxQ\"9mP7vK2\"ZtR\"4nL1aB8cD\"6eF\"3gH0jS5w\"YxQ\"9mP7vK2Zt\"R4nL1\"aB8cD6eF3\"g\"H0jS5w\"Y\"xQ9mP7v\"K2ZtR4nL\"1aB8cD6eF\"3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8c\"D6eF3gH0jS5wYxQ\"9mP\"7vK2ZtR4nL1\"aB8\"cD6eF3g\"H0jS5wYx\"Q9mP7vK2Z\"tR4nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7\"vK2ZtR4nL\"1a\"B8cD6eF3gH0\"jS5w\"YxQ9mP7vK\"2\"ZtR4nL\"1\"aB8cD6e\"F3g\"H0jS5wYxQ\"9mP\"7vK2ZtR4\"nL1\"aB8cD6eF3\"gH0\"jS5wYxQ9mP7vK2Z\"tR4\"nL1aB8cD6eF\"3gH\"0jS5wYx\"Q9m\"P7vK2ZtR4\"nL1\"aB8cD6eF\"3gH\"0jS5wYxQ9\"mP7vK\"2ZtR4nL1a\"B\"8cD6eF\"3\"gH0jS5w\"YxQ\"9mP7vK2Zt\"R4n\"L1aB8cD6\"eF3\"gH0jS5wYx\"Q9m\"P7vK2ZtR4nL1aB8\"cD6\"eF3gH0jS5wY\"xQ9\"mP7vK2Z\"tR4\"nL1aB8cD6\"eF3\"gH0jS5wY\"xQ9\"mP7vK2ZtR\"4nL1a\"B8cD6eF3g\"H\"0jS5wY\"x\"Q9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5\"wYx\"Q9mP7vK2Z\"tR4\"nL1aB8cD6eF3gH0\"jS5\"wYxQ9mP7vK2\"ZtR\"4nL1aB8\"cD6\"eF3gH0jS5\"wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD\"6eF3g\"H0jS5wYxQ\"9\"mP7vK2Z\"t\"R4nL1aB\"8cD\"6eF3gH0jS\"5wY\"xQ9mP7vK\"2Zt\"R4nL1aB8c\"D6e\"F3gH0jS5wYxQ9mP\"7vK\"2ZtR4nL1aB8\"cD6\"eF3gH0j\"S5w\"YxQ9mP7vK\"2Zt\"R4nL1aB8\"cD6\"eF3gH0jS5\"wYxQ9\"mP7vK2ZtR\"4\"nL1aB8cD6\"e\"F3gH0jS\"5wYxQ9mP\"7vK2ZtR4n\"L1aB8c\"D6eF3gH0\"jS5\"wYxQ9mP7v\"K2Z\"tR4nL1aB8cD6eF3\"gH0\"jS5wYxQ9mP7\"vK2\"ZtR4nL1\"aB8cD6eF\"3gH0jS5wY\"xQ9mP7\"vK2ZtR4n\"L1a\"B8cD6eF3g\"H0j\"S5wYxQ9mP\"7v\"K2ZtR4nL1aB8c\"D6eF\"3gH0jS5wY\"x\"Q9mP7\"v\"K2ZtR4n\"L1aB8cD6eF\"3gH0jS5wY\"xQ9mP7v\"K2ZtR4nL\"1aB\"8cD6eF3gH\"0jS\"5wYxQ9mP7vK2ZtR\"4nL\"1aB8cD6eF3g\"H0jS5\"wYxQ9mP\"7vK2ZtR4n\"L1aB8cD6e\"F3gH0jS\"5wYxQ9mP\"7vK\"2ZtR4nL1a\"B8cD6\"eF3gH0jS5wY\"xQ9mP\"7vK2ZtR4nL1aB8\"cD\"6eF3g\"H0jS5\"wYxQ9mP7vK2\"ZtR4n\"L1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2\"Zt\"R4nL1\"aB8cD6e\"F3gH0j\"S5wYx\"Q9mP7vK2\"ZtR\"4nL1aB8cD6eF\"3gH0\"jS5wYxQ9\"mP\"7vK2ZtR4\"nL1aB\"8cD6eF3gH0jS\"5wY\"xQ9\"mP7v\"K2ZtR\"4nL1a\"B8c\"D6eF\"3gH0j\"S5wYx\"Q9m\"P7vK\"2ZtR4\"nL1aB8c\"D6e\"F3gH\"0jS5w\"YxQ9mP\"7vK\"2Zt\"R4nL1\"aB8cD\"6eF3gH0\"jS5w\"YxQ9mP7v\"K2Z\"tR4nL1aB\"8cD\"6eF3gH0jS\"5wYx"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "Q9mP7vK2ZtR4nL1aB8cD6",
          "moduleId": "eF3gH0jS5wY"
        },
        "customerInfo": {
          "customerId": "xQ9mP7vK2Zt",
          "deviceId": "R4nL1aB8cD6eF3gH0jS5w",
          "lineId": "YxQ9mP7vK2ZtR4",
          "publicIp": "nL1aB8cD6eF3"
        }
      }
    },
    {
      "_index": "gH0jS5wYxQ9mP7vK2Zt",
      "_source": {
        "kafka": {
          "eventId": "R4nL1aB8cD6e",
          "moduleId": "F3gH0jS5w"
        },
        "customerInfo": {
          "customerId": "YxQ9mP7vK2Z",
          "deviceId": "tR4nL1aB8cD6eF3gH0jS5",
          "lineId": "wYxQ9mP7vK2ZtR",
          "publicIp": "4nL1aB8cD6eF"
        },
        "eventData": {
          "__original": "3\"gH0jS5w\"Yx\"Q9m\"P\"7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5\"w\"YxQ9mP7\"vK2\"ZtR4nL1aB8cD6e\"F3g\"H0jS5wYx\"Q9m\"P7vK2\"Z\"tR4nL1aB 8cD6eF 3g H0jS5wYx\"Q\"9mP7vK2ZtR4nL1aB8c\"D6eF3\"gH0jS5wY\"xQ9mP7\"vK2ZtR\"4nL1aB8\"cD6eF3gH0jS5wYxQ9mP7vK\"2ZtR\"4nL1aB8cD6eF3gH0j\"S5wYxQ9\"mP7vK2ZtR4n\"L1aB8cD\"6eF3gH\"0\"jS5wYxQ\"9\"mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0\"j\"S5wYxQ9\"m\"P7vK2ZtR4nL1\"a\"B8cD6eF3g\"H\"0jS5wYxQ9mP7\"v\"K2ZtR4n\"L\"1aB8cD6eF3gH0\"jS5w\"YxQ9mP7vK2ZtR4nL1aB\"8cD6e\"F3gH0jS5wYx\"Q9mP7\"vK2ZtR4nL1\"aB8cD6"
        }
      }
    },
    {
      "_source": {
        "eventData": {
          "__original": "e\"F3gH0jS\"5w\"YxQ\"9\"mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYx\"Q\"9mP7vK2\"ZtR\"4nL1aB8cD6eF3g\"H0j\"S5wYxQ9m\"P7v\"K2ZtR\"4\"nL1aB8cD 6eF3gH 0j S5wYxQ9mP7v K\"2\"ZtR4nL1aB8cD6eF3gH\"0jS5w\"YxQ9mP7v\"K2ZtR4\"nL1aB8\"cD6eF3g\"H0jS5wYxQ9mP7vK2ZtR4nL\"1aB8\"cD6eF3gH0jS5wYxQ9\"mP7vK2Z\"tR4nL1aB8cD\"6eF3gH0\"jS5wYx\"Q\"9mP7vK2\"Z\"tR4nL1aB8cD6\"eF3g\"H0jS5wYxQ\"9\"mP7vK2ZtR4nL\"1\"aB8cD6eF3gH0\"j\"S5wYxQ9mP\"7\"vK2ZtR4nL1aB\"8\"cD6eF3gH0jS5w\"Y\"xQ9mP7vK2ZtR4\"nL1\"aB8cD6eF3gH0jS5wYxQ\"9mP7\"vK2ZtR4nL1a\"B8cD\"6eF3gH0jS5wY\"xQ\"9mP7vK2Z\"t\"R4n\"L\"1aB8cD6eF3gH0jS\"5wYxQ9mP\"7vK2ZtR4nL1aB8c\"D6eF3gH\"0jS5wYx\"Q9\"mP7vK2Zt\"R\"4nL1a\"B8c\"D6eF3gH0jS\"5wYxQ9m"
        },
        "customerInfo": {
          "customerId": "P7vK2ZtR4nL",
          "deviceId": "1aB8cD6eF3gH0jS5wYxQ9",
          "lineId": "mP7vK2ZtR4nL1a",
          "publicIp": "B8cD6eF3gH0j"
        },
        "kafka": {
          "eventId": "S5wYxQ9mP7vK",
          "moduleId": "2ZtR4nL1a"
        }
      }
    },
    {
      "_source": {
        "@timestamp": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
        "eventData": {
          "__original": "L\"1aB8cD6eF3gH0jS5w\"YxQ9m\"P7vK2ZtR4nL1aB8cD6e\"F3gH0jS\"5wYxQ9mP7vK2ZtR4n\"L1aB8\"cD6eF3gH0jS5wYxQ9mP\"7vK2Zt\"R4nL1aB8\"cD6eF"
        },
        "ingest_lag_in_seconds": 1,
        "kafka": {
          "eventId": "3gH0jS5w",
          "moduleId": "YxQ9mP7vK"
        },
        "@Version": "2",
        "customerInfo": {
          "customerId": "ZtR4nL1aB8c",
          "deviceId": "D6eF3gH0jS5wYxQ9mP7vK",
          "lineId": "2ZtR4nL1aB8cD6",
          "publicIp": "eF3gH0jS5wYx"
        }
      }
    }
  ],
  "pipeline": {
    "processors": [
      {
        "rename": {
          "field": "Q9mP7vK2ZtR4nL1aB8cD",
          "target_field": "6eF3gH0jS5wYxQ"
        }
      },
      {
        "lowercase": {
          "field": "9mP7vK2ZtR4nL1",
          "target_field": "aB8cD6eF3gH",
          "ignore_missing": true
        }
      },
      {
        "set": {
          "field": "0jS5wYxQ9mP7",
          "copy_from": "vK2ZtR4nL1aB8",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "cD6eF3gH0",
          "copy_from": "jS5wYxQ9mP7vK2ZtR4nL1",
          "ignore_empty_value": true
        }
      },
      {
        "script": {
          "source": """
                aB8 cD6eF3gH0j S 5wYxQ9mP7vK2ZtR4
                nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP""",
          "if": "7vK2ZtR4nL1aB8cD 6e F3gH 0j S5wYxQ9mP7vK2ZtR4nL 1a B8cD"
        }
      },
      {
        "script": {
          "description": "6eF3gH0 jS5wYxQ9 mP 7vK2ZtR4nL1 aB8cD6e F3gH 0jS",
          "source": "5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "if": "S5wYxQ9mP7vK2ZtR4nL1aB8cD6 eF 3gH0 jS 5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 gH0jS5wYxQ 9mP7vK2"
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6e",
          "copy_from": "F3gH0jS5wYxQ9mP7vK2",
          "ignore_empty_value": true
        }
      },
      {
        "set": {
          "field": "ZtR4nL1aB8cD6",
          "copy_from": "eF3gH0jS5wYxQ9mP7vK2Zt",
          "ignore_empty_value": true
        }
      },
      {
        "rename": {
          "field": "R4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2Zt",
          "ignore_missing": true
        }
      },
      {
        "script": {
          "source": """
                R4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0 jS5wYxQ9mP7v
            """,
          "if": "K2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2Zt R4 nL1a"
        }
      },
      {
        "rename": {
          "field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "target_field": "eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF",
          "target_field": "3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3",
          "target_field": "gH0jS5wYxQ9mP7vK2ZtR4nL1aB8cD6",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "eF3gH0jS5wYxQ9mP7v",
          "target_field": "K2ZtR4nL1aB8cD6eF3gH0jS5w",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3g",
          "target_field": "H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a",
          "target_field": "B8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4n",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "L1aB8cD6eF3gH0jS5wYxQ9mP7vK",
          "target_field": "2ZtR4nL1aB8cD6eF3gH0jS5wYxQ9",
          "ignore_missing": true
        }
      },
      {
        "rename": {
          "field": "mP7vK2ZtR4nL1aB8cD6eF3gH0jS5w",
          "target_field": "YxQ9mP7vK2ZtR4nL1aB8cD6eF3gH0j",
          "ignore_missing": true
        }
      },
      {
      "script": {
        "description": "S5wYxQ9mP 7vK2ZtR 4nL1aB8 cD6eF 3gH 0jS5wYx Q9mP7vK 2ZtR",
        "lang": "4nL1aB8c",
        "source": """
            D6 eF3gH0jS5wYxQ9mP7vK2ZtR4nL 1a B8cD6 e
                F3g H0j S 5wYxQ9mP7vK2ZtR4nL1aB8cD6
                eF3gH0jS5w Y xQ9mP7vK2Z tR 4nL1 a B8c D 6eF3gH0jS5w

                YxQ9mP7vK2ZtR4n L 1
                aB8c D6eF3gH0jS5wYxQ9mP7vK
                2ZtR 4nL1aB8cD6eF3gH0jS5wY
                xQ9mP 7vK2ZtR4nL1aB8cD6eF3g
                H0

                jS 5wY xQ9mP7vK2ZtR4n L1 a B8cD6 eF3g H 0j S
                5wYxQ9mP 7 vK2ZtR4n L1 aB8c D 6eF 3 gH0jS5wYx
                Q9mP7vK2ZtR4 n L
                1aB8cD6e F3gH0jS5wYxQ9mP7vK2 Z tR4nL
                1a
            B

            8c D6 eF3gH0 jS5wYxQ
            9m P7vK2ZtR4nL1aB8cD6eF3gH0 jS 5wYxQ 9
                mP7 vK2 Z tR4nL1aB8cD6eF3gH0jS5wY
                xQ9mP7vK2ZtR4nL1a B 8
                cD6eF3gH 0jS5wYxQ9m
                P7vK2Zt R4nL1aB8c
                D6eF3gH0j S5wYxQ9m P7vK2ZtR4nL1aB8
                cD6eF3g H
                    0jS5wYxQ 9mP7vK2Zt R 4nL1aB8cD6eF3g
                    H0jS5w YxQ9mP7vK2ZtR4nL1a B 8cD6eF3gH0jS5w Y xQ9mP7vK2
                Z
                tR
            4

            nL 1a B8c D6eF3gH 0jS5wYxQ9m P7vK2Z
            tR 4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK 2Z tR4nL 1
                aB8 cD6eF 3g H0jS5wYxQ9mP7vK2ZtR4nL1aB8cD 6
                eF 3gH0jS5wYxQ9mP7 vK 2ZtR4nL1aB8c D
                    6eF3gH0jS5w Y x
                    Q9mP7vK2 ZtR4nL1aB8cD6 eF 3g H 0jS5wYxQ9mP7v K2 ZtR
                    4nL1aB8 cD6eF3gH0jS5wY
                    xQ
                    9mP7vK2ZtR 4 nL1aB8cD6 eF3gH0jS5wYxQ9
                    mP7vK2ZtR4nL1aB 8 cD6eF3gH0 jS5wYxQ9mP7vK2
                    ZtR4nL1aB8cD6eF3gH0jS5wYxQ9mP7vK2ZtR4nL1a
                    B8cD6e
                F
                3
            g
            H0 jS5wYxQ9mP7vK2ZtR4nL1aB8cD6e F3 gH0jS 5
                wYx Q9m P 7vK2ZtR4nL1aB8cD6eF3gH0jS5w
                YxQ9mP7vK2Z t R4nL1aB8cD6 eF 3gH0 j S5w Y xQ9mP7vK2ZtR

                4nL1aB8cD6eF3g H 0jS5wYxQ9
                mP7vK2ZtR4nL1aB8cD6 e F
                    3gH0jS5wYxQ9 mP7vK2ZtR4
                    nL1aB8cD6eF3g H0jS5wYxQ9m
                    P7vK2ZtR4nL1aB8 cD6eF3gH0jS5w
                    YxQ9mP7vK2ZtR4nL1aB8 cD6eF3gH0jS5wYxQ
                9m

                P7 vK2ZtR4nL 1aB8c D6eF 3gH 0jS5wY xQ9mP7vK2ZtR
                4n L1aB8cD6eF 3 gH 0
                    jS5wYxQ9mP7vK2ZtR4nL1aB8cD6eF3 g H0jS5wYxQ9mP7vK2Zt R 4nL1aB8cD6
                e
            F

        """
      }
    },
      {
        "uri_parts": {
          "field": "3gH0jS5wYxQ9",
          "ignore_missing": true,
          "ignore_failure": true
        }
      },
      {
        "append": {
          "field": "mP7vK2ZtR4n",
          "value": [
            "L1aB8cD6eF3gH",
            "0jS5wYxQ9mP7vK2ZtR",
            "4nL1aB8cD6eF3",
            "gH0jS5wYxQ9mP7vK2",
            "ZtR4nL1aB8cD6"
          ],
          "allow_duplicates": false
        }
      },
      {
        "script": {
          "description": "eF3gH0 jS5w YxQ9mP",
          "source": """
                7vK2ZtR 4nL1aB8cD6e F3 g
                H0 jS 5w YxQ9 mP 7 vK 2Zt R
                    4nL1aB 8cD6e
                F 3gH0 jS 5w YxQ9mP7vK2 ZtR4 n
                    L1aB8c D6eF3gH0jS5wYxQ9mP7vK2 Zt R4nL1aB8c
                    D6eF3g H0jS5wY xQ9mP7vK2 Zt R4n
                L 1aB8 cD 6e F3gH0jS5wY xQ9mP 7
                    vK2ZtR4 nL1aB8cD6eF3g H0 jS5wYxQ9m
                    P7vK2Z tR4nL1aB 8cD6eF3gH 0j S5w
                Y
                xQ9mP7 vK2ZtR
                4
                nL1aB8cD6e
        """
        }
      },
      {
        "remove": {
          "field": [
            "F3gH"
          ],
          "ignore_missing": true
        }
      }
    ]
  }
}
```

</details>

Assisted by Cursor CLI using GPT-5.2-High model

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
(cherry picked from commit 4fa1505)
Co-authored-by: Cursor <cursoragent@cursor.com>
@kibanamachine
Copy link
Contributor

Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync.
cc: @kapral18

kapral18 added a commit that referenced this pull request Mar 3, 2026
#251173) (#254741)

# Backport

This will backport the following commits from `main` to `8.19`:
- [[DevTools Console] Avoid editor freeze after pasting large JSON
(#251173)](#251173)

<!--- Backport version: 10.2.0 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
@kibanamachine kibanamachine removed the backport missing Added to PRs automatically when the are determined to be missing a backport. label Mar 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:all-open Backport to all branches that could still receive a release bug Fixes for quality problems that affect the customer experience Feature:Console Dev Tools Console Feature release_note:skip Skip the PR/issue when compiling release notes v9.4.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[DevTools Console] Avoid editor freeze after pasting large JSON

5 participants