@antdv-next/x 0.2.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/dist/attachments/index.d.ts +0 -4
  2. package/dist/attachments/index.js +0 -5
  3. package/dist/index.esm.js +4 -32
  4. package/dist/index.umd.js +4 -32
  5. package/dist/mermaid/Mermaid.d.ts +1 -1
  6. package/dist/mermaid/Mermaid.js +1 -0
  7. package/dist/package.js +1 -1
  8. package/dist/prompts/Prompts.d.ts +1 -10
  9. package/dist/prompts/Prompts.js +1 -7
  10. package/dist/prompts/interface.d.ts +0 -1
  11. package/dist/sources/Sources.d.ts +0 -9
  12. package/dist/sources/Sources.js +0 -5
  13. package/dist/sources/interface.d.ts +0 -1
  14. package/dist/suggestion/Suggestion.d.ts +0 -18
  15. package/dist/suggestion/Suggestion.js +1 -14
  16. package/dist/suggestion/interface.d.ts +0 -2
  17. package/dist-browser/Serializer-y_SfSPKv.js +262 -0
  18. package/dist-browser/_basePickBy-Cy7KVmkk.js +166 -0
  19. package/dist-browser/_baseUniq-Ch3HuHeT.js +682 -0
  20. package/dist-browser/arc-caEkbRYF.js +80 -0
  21. package/dist-browser/architecture-PBZL5I3N-DHfBr78A.js +3 -0
  22. package/dist-browser/architectureDiagram-2XIMDMQ5-D3IYLROv.js +4045 -0
  23. package/dist-browser/array-CWNufkl9.js +6 -0
  24. package/dist-browser/bash-CXEwhtGQ.js +3 -0
  25. package/dist-browser/blockDiagram-WCTKOSBZ-nXanZ0sc.js +3025 -0
  26. package/dist-browser/c4Diagram-IC4MRINW-C-gVp6th.js +2964 -0
  27. package/dist-browser/channel-DoEe9DF9.js +5 -0
  28. package/dist-browser/chunk-4BX2VUAB-fLFD6XW0.js +8 -0
  29. package/dist-browser/chunk-55IACEB6-OtyKJzCH.js +8 -0
  30. package/dist-browser/chunk-7E7YKBS2-C1dd36rm.js +23 -0
  31. package/dist-browser/chunk-7R4GIKGN-DuTRhdsf.js +2596 -0
  32. package/dist-browser/chunk-C72U2L5F-ClmZGhFC.js +23 -0
  33. package/dist-browser/chunk-EGIJ26TM-Bar_u1MN.js +23 -0
  34. package/dist-browser/chunk-FMBD7UC4-C_uJ_JJA.js +5 -0
  35. package/dist-browser/chunk-GEFDOKGD-P7WhyrTU.js +1121 -0
  36. package/dist-browser/chunk-GLR3WWYH-BvazRgdo.js +41 -0
  37. package/dist-browser/chunk-HHEYEP7N-rv5s5WD4.js +9 -0
  38. package/dist-browser/chunk-JSJVCQXG-89HUGe9V.js +60 -0
  39. package/dist-browser/chunk-KX2RTZJC-pMHnNRQg.js +25 -0
  40. package/dist-browser/chunk-KYZI473N-DJmSs1gK.js +3434 -0
  41. package/dist-browser/chunk-L3YUKLVL-Ck54qytQ.js +23 -0
  42. package/dist-browser/chunk-MX3YWQON-MkpK3uBD.js +80 -0
  43. package/dist-browser/chunk-NQ4KR5QH-DGshodQv.js +2002 -0
  44. package/dist-browser/chunk-O4XLMI2P-e-ZzDQwg.js +511 -0
  45. package/dist-browser/chunk-OZEHJAEY-DULNd43V.js +64 -0
  46. package/dist-browser/chunk-PQ6SQG4A-CQ9Csv7s.js +67 -0
  47. package/dist-browser/chunk-PU5JKC2W-DkEFvrjH.js +1885 -0
  48. package/dist-browser/chunk-QZHKN3VN-qww1plfw.js +15 -0
  49. package/dist-browser/chunk-R5LLSJPH-BERXSDGJ.js +35 -0
  50. package/dist-browser/chunk-WL4C6EOR-C-d8WPS7.js +3194 -0
  51. package/dist-browser/chunk-WQLz0Won.js +20 -0
  52. package/dist-browser/chunk-XIRO2GV7-CFHofxVB.js +30 -0
  53. package/dist-browser/chunk-XPW4576I-DgvoNZkW.js +1146 -0
  54. package/dist-browser/chunk-XZSTWKYB-k8_EXrSa.js +15797 -0
  55. package/dist-browser/chunk-YBOYWFTD-BUW4AzEX.js +32 -0
  56. package/dist-browser/classDiagram-VBA2DB6C-DWTAs0Zm.js +29 -0
  57. package/dist-browser/classDiagram-v2-RAHNMMFH-CoxCdmrt.js +29 -0
  58. package/dist-browser/clone-BXDbKCDu.js +8 -0
  59. package/dist-browser/cose-bilkent-S5V4N54A-CnrS2OC1.js +2250 -0
  60. package/dist-browser/css-D9vrnIUE.js +2 -0
  61. package/dist-browser/css-Dh17kjFY.js +3 -0
  62. package/dist-browser/cytoscape.esm-BY3wHcbp.js +18100 -0
  63. package/dist-browser/dagre-BJOzGlhW.js +1483 -0
  64. package/dist-browser/dagre-KLK3FWXG-CFC0naVr.js +294 -0
  65. package/dist-browser/defaultLocale-BaPFSbai.js +201 -0
  66. package/dist-browser/diagram-E7M64L7V-DxuJj8ZG.js +527 -0
  67. package/dist-browser/diagram-IFDJBPK2-BOpPZ6pu.js +213 -0
  68. package/dist-browser/diagram-P4PSJMXO--ChDmcya.js +133 -0
  69. package/dist-browser/diff-BSu5dsa2.js +3 -0
  70. package/dist-browser/dist-DltyvPj3.js +50 -0
  71. package/dist-browser/erDiagram-INFDFZHY-BA3m-v87.js +1666 -0
  72. package/dist-browser/flowDiagram-PKNHOUZH-BCq6k3kr.js +4161 -0
  73. package/dist-browser/ganttDiagram-A5KZAMGK-DdMePS21.js +3075 -0
  74. package/dist-browser/gitGraph-HDMCJU4V-DbzpICZW.js +3 -0
  75. package/dist-browser/gitGraphDiagram-K3NZZRJ6-CLbRwChG.js +625 -0
  76. package/dist-browser/graphlib-C7ysKz4u.js +225 -0
  77. package/dist-browser/html-BmZO1Eoo.js +10 -0
  78. package/dist-browser/html-DnTYsv5k.js +2 -0
  79. package/dist-browser/index.es.js +56149 -0
  80. package/dist-browser/index.umd.js +3281 -0
  81. package/dist-browser/info-3K5VOQVL-CpUiQuel.js +3 -0
  82. package/dist-browser/infoDiagram-LFFYTUFH-DQAZ-vFk.js +19 -0
  83. package/dist-browser/init-PAs0hR-b.js +15 -0
  84. package/dist-browser/isArrayLikeObject-y3HlYDaX.js +578 -0
  85. package/dist-browser/isEmpty-2JxdWtc-.js +35 -0
  86. package/dist-browser/ishikawaDiagram-PHBUUO56-B0r2IgGz.js +717 -0
  87. package/dist-browser/javascript-BXHK_bZ2.js +3 -0
  88. package/dist-browser/javascript-NV_FQBab.js +2 -0
  89. package/dist-browser/journeyDiagram-4ABVD52K-DnMUhOvg.js +883 -0
  90. package/dist-browser/json-C8Y9C4Ne.js +2 -0
  91. package/dist-browser/json-DZ_9-j3Q.js +3 -0
  92. package/dist-browser/jsx-CxlNNvOI.js +3 -0
  93. package/dist-browser/kanban-definition-K7BYSVSG-Da5Y-nJy.js +971 -0
  94. package/dist-browser/katex-b-xdokOf.js +22000 -0
  95. package/dist-browser/line-h2iCTGsE.js +34 -0
  96. package/dist-browser/linear-Bv7XrZCH.js +289 -0
  97. package/dist-browser/markdown-BKwT7HWz.js +3 -0
  98. package/dist-browser/math-DPzKeDKn.js +10 -0
  99. package/dist-browser/mermaid-C1RUu_Iw.js +3 -0
  100. package/dist-browser/mermaid-parser.core-kTgpNO7M.js +59 -0
  101. package/dist-browser/mermaid.core-DRuUNxpC.js +680 -0
  102. package/dist-browser/mindmap-definition-YRQLILUH-CYeqnCde.js +964 -0
  103. package/dist-browser/ordinal-D8PKtxfM.js +65 -0
  104. package/dist-browser/packet-RMMSAZCW-UTFQ0FQx.js +3 -0
  105. package/dist-browser/path-DZ-6AyWK.js +85 -0
  106. package/dist-browser/pie-UPGHQEXC-CarAcBSi.js +3 -0
  107. package/dist-browser/pieDiagram-SKSYHLDU-DAsfTGvY.js +165 -0
  108. package/dist-browser/python-BQM8giqx.js +3 -0
  109. package/dist-browser/quadrantDiagram-337W2JSQ-CZLbmQS4.js +1974 -0
  110. package/dist-browser/radar-KQ55EAFF-NXK5PC9R.js +3 -0
  111. package/dist-browser/requirementDiagram-Z7DCOOCP-Cb_Ygnfe.js +2201 -0
  112. package/dist-browser/rough.esm-C_hJ3ICT.js +1352 -0
  113. package/dist-browser/sankeyDiagram-WA2Y5GQK-DBe5YfW4.js +920 -0
  114. package/dist-browser/sequenceDiagram-2WXFIKYE-C_KUoojT.js +4109 -0
  115. package/dist-browser/src-BukXhifV.js +2146 -0
  116. package/dist-browser/stateDiagram-RAJIS63D-boG6DyfW.js +217 -0
  117. package/dist-browser/stateDiagram-v2-FVOUBMTO-DHCajhrN.js +27 -0
  118. package/dist-browser/timeline-definition-YZTLITO2-pFt6rZ6S.js +830 -0
  119. package/dist-browser/treemap-KZPCXAKY-Cj9QakFB.js +3 -0
  120. package/dist-browser/tsx-DIYEV_g7.js +3 -0
  121. package/dist-browser/typescript-B6MWEsBH.js +3 -0
  122. package/dist-browser/typescript-CR48gG1F.js +2 -0
  123. package/dist-browser/vennDiagram-LZ73GAT5-VaCO6k4H.js +1858 -0
  124. package/dist-browser/vue-BJ0ov2CZ.js +21 -0
  125. package/dist-browser/vue-html-D0gyDbfn.js +5 -0
  126. package/dist-browser/xychartDiagram-JWTSCODW-xS5ybemA.js +2041 -0
  127. package/dist-browser/yaml-Y0CqUPTQ.js +3 -0
  128. package/package.json +15 -3
@@ -0,0 +1,65 @@
1
+ import { t as e } from "./init-PAs0hR-b.js";
2
+ //#region ../../node_modules/internmap/src/index.js
3
+ var t = class extends Map {
4
+ constructor(e, t = a) {
5
+ if (super(), Object.defineProperties(this, {
6
+ _intern: { value: /* @__PURE__ */ new Map() },
7
+ _key: { value: t }
8
+ }), e != null) for (let [t, n] of e) this.set(t, n);
9
+ }
10
+ get(e) {
11
+ return super.get(n(this, e));
12
+ }
13
+ has(e) {
14
+ return super.has(n(this, e));
15
+ }
16
+ set(e, t) {
17
+ return super.set(r(this, e), t);
18
+ }
19
+ delete(e) {
20
+ return super.delete(i(this, e));
21
+ }
22
+ };
23
+ function n({ _intern: e, _key: t }, n) {
24
+ let r = t(n);
25
+ return e.has(r) ? e.get(r) : n;
26
+ }
27
+ function r({ _intern: e, _key: t }, n) {
28
+ let r = t(n);
29
+ return e.has(r) ? e.get(r) : (e.set(r, n), n);
30
+ }
31
+ function i({ _intern: e, _key: t }, n) {
32
+ let r = t(n);
33
+ return e.has(r) && (n = e.get(r), e.delete(r)), n;
34
+ }
35
+ function a(e) {
36
+ return typeof e == "object" && e ? e.valueOf() : e;
37
+ }
38
+ //#endregion
39
+ //#region ../../node_modules/d3-scale/src/ordinal.js
40
+ var o = Symbol("implicit");
41
+ function s() {
42
+ var n = new t(), r = [], i = [], a = o;
43
+ function c(e) {
44
+ let t = n.get(e);
45
+ if (t === void 0) {
46
+ if (a !== o) return a;
47
+ n.set(e, t = r.push(e) - 1);
48
+ }
49
+ return i[t % i.length];
50
+ }
51
+ return c.domain = function(e) {
52
+ if (!arguments.length) return r.slice();
53
+ r = [], n = new t();
54
+ for (let t of e) n.has(t) || n.set(t, r.push(t) - 1);
55
+ return c;
56
+ }, c.range = function(e) {
57
+ return arguments.length ? (i = Array.from(e), c) : i.slice();
58
+ }, c.unknown = function(e) {
59
+ return arguments.length ? (a = e, c) : a;
60
+ }, c.copy = function() {
61
+ return s(r, i).unknown(a);
62
+ }, e.apply(c, arguments), c;
63
+ }
64
+ //#endregion
65
+ export { s as t };
@@ -0,0 +1,3 @@
1
+ import "./chunk-XZSTWKYB-k8_EXrSa.js";
2
+ import { n as e } from "./chunk-C72U2L5F-ClmZGhFC.js";
3
+ export { e as createPacketServices };
@@ -0,0 +1,85 @@
1
+ //#region ../../node_modules/d3-path/src/path.js
2
+ var e = Math.PI, t = 2 * e, n = 1e-6, r = t - n;
3
+ function i(e) {
4
+ this._ += e[0];
5
+ for (let t = 1, n = e.length; t < n; ++t) this._ += arguments[t] + e[t];
6
+ }
7
+ function a(e) {
8
+ let t = Math.floor(e);
9
+ if (!(t >= 0)) throw Error(`invalid digits: ${e}`);
10
+ if (t > 15) return i;
11
+ let n = 10 ** t;
12
+ return function(e) {
13
+ this._ += e[0];
14
+ for (let t = 1, r = e.length; t < r; ++t) this._ += Math.round(arguments[t] * n) / n + e[t];
15
+ };
16
+ }
17
+ var o = class {
18
+ constructor(e) {
19
+ this._x0 = this._y0 = this._x1 = this._y1 = null, this._ = "", this._append = e == null ? i : a(e);
20
+ }
21
+ moveTo(e, t) {
22
+ this._append`M${this._x0 = this._x1 = +e},${this._y0 = this._y1 = +t}`;
23
+ }
24
+ closePath() {
25
+ this._x1 !== null && (this._x1 = this._x0, this._y1 = this._y0, this._append`Z`);
26
+ }
27
+ lineTo(e, t) {
28
+ this._append`L${this._x1 = +e},${this._y1 = +t}`;
29
+ }
30
+ quadraticCurveTo(e, t, n, r) {
31
+ this._append`Q${+e},${+t},${this._x1 = +n},${this._y1 = +r}`;
32
+ }
33
+ bezierCurveTo(e, t, n, r, i, a) {
34
+ this._append`C${+e},${+t},${+n},${+r},${this._x1 = +i},${this._y1 = +a}`;
35
+ }
36
+ arcTo(t, r, i, a, o) {
37
+ if (t = +t, r = +r, i = +i, a = +a, o = +o, o < 0) throw Error(`negative radius: ${o}`);
38
+ let s = this._x1, c = this._y1, l = i - t, u = a - r, d = s - t, f = c - r, p = d * d + f * f;
39
+ if (this._x1 === null) this._append`M${this._x1 = t},${this._y1 = r}`;
40
+ else if (p > n) if (!(Math.abs(f * l - u * d) > n) || !o) this._append`L${this._x1 = t},${this._y1 = r}`;
41
+ else {
42
+ let m = i - s, h = a - c, g = l * l + u * u, _ = m * m + h * h, v = Math.sqrt(g), y = Math.sqrt(p), b = o * Math.tan((e - Math.acos((g + p - _) / (2 * v * y))) / 2), x = b / y, S = b / v;
43
+ Math.abs(x - 1) > n && this._append`L${t + x * d},${r + x * f}`, this._append`A${o},${o},0,0,${+(f * m > d * h)},${this._x1 = t + S * l},${this._y1 = r + S * u}`;
44
+ }
45
+ }
46
+ arc(i, a, o, s, c, l) {
47
+ if (i = +i, a = +a, o = +o, l = !!l, o < 0) throw Error(`negative radius: ${o}`);
48
+ let u = o * Math.cos(s), d = o * Math.sin(s), f = i + u, p = a + d, m = 1 ^ l, h = l ? s - c : c - s;
49
+ this._x1 === null ? this._append`M${f},${p}` : (Math.abs(this._x1 - f) > n || Math.abs(this._y1 - p) > n) && this._append`L${f},${p}`, o && (h < 0 && (h = h % t + t), h > r ? this._append`A${o},${o},0,1,${m},${i - u},${a - d}A${o},${o},0,1,${m},${this._x1 = f},${this._y1 = p}` : h > n && this._append`A${o},${o},0,${+(h >= e)},${m},${this._x1 = i + o * Math.cos(c)},${this._y1 = a + o * Math.sin(c)}`);
50
+ }
51
+ rect(e, t, n, r) {
52
+ this._append`M${this._x0 = this._x1 = +e},${this._y0 = this._y1 = +t}h${n = +n}v${+r}h${-n}Z`;
53
+ }
54
+ toString() {
55
+ return this._;
56
+ }
57
+ };
58
+ function s() {
59
+ return new o();
60
+ }
61
+ s.prototype = o.prototype;
62
+ //#endregion
63
+ //#region ../../node_modules/d3-shape/src/constant.js
64
+ function c(e) {
65
+ return function() {
66
+ return e;
67
+ };
68
+ }
69
+ //#endregion
70
+ //#region ../../node_modules/d3-shape/src/path.js
71
+ function l(e) {
72
+ let t = 3;
73
+ return e.digits = function(n) {
74
+ if (!arguments.length) return t;
75
+ if (n == null) t = null;
76
+ else {
77
+ let e = Math.floor(n);
78
+ if (!(e >= 0)) throw RangeError(`invalid digits: ${n}`);
79
+ t = e;
80
+ }
81
+ return e;
82
+ }, () => new o(t);
83
+ }
84
+ //#endregion
85
+ export { c as n, l as t };
@@ -0,0 +1,3 @@
1
+ import "./chunk-XZSTWKYB-k8_EXrSa.js";
2
+ import { n as e } from "./chunk-XIRO2GV7-CFHofxVB.js";
3
+ export { e as createPieServices };
@@ -0,0 +1,165 @@
1
+ import { g as e, h as t } from "./src-BukXhifV.js";
2
+ import { f as n, r } from "./chunk-GEFDOKGD-P7WhyrTU.js";
3
+ import { B as i, C as a, V as o, W as s, _ as c, a as l, b as u, c as d, d as f, v as p } from "./chunk-7R4GIKGN-DuTRhdsf.js";
4
+ import { t as m } from "./ordinal-D8PKtxfM.js";
5
+ import { n as h } from "./path-DZ-6AyWK.js";
6
+ import { p as g } from "./math-DPzKeDKn.js";
7
+ import { t as _ } from "./arc-caEkbRYF.js";
8
+ import { t as v } from "./array-CWNufkl9.js";
9
+ import { t as y } from "./chunk-HHEYEP7N-rv5s5WD4.js";
10
+ import { t as b } from "./chunk-4BX2VUAB-fLFD6XW0.js";
11
+ import { t as x } from "./mermaid-parser.core-kTgpNO7M.js";
12
+ //#region ../../node_modules/d3-shape/src/descending.js
13
+ function S(e, t) {
14
+ return t < e ? -1 : t > e ? 1 : t >= e ? 0 : NaN;
15
+ }
16
+ //#endregion
17
+ //#region ../../node_modules/d3-shape/src/identity.js
18
+ function C(e) {
19
+ return e;
20
+ }
21
+ //#endregion
22
+ //#region ../../node_modules/d3-shape/src/pie.js
23
+ function w() {
24
+ var e = C, t = S, n = null, r = h(0), i = h(g), a = h(0);
25
+ function o(o) {
26
+ var s, c = (o = v(o)).length, l, u, d = 0, f = Array(c), p = Array(c), m = +r.apply(this, arguments), h = Math.min(g, Math.max(-g, i.apply(this, arguments) - m)), _, y = Math.min(Math.abs(h) / c, a.apply(this, arguments)), b = y * (h < 0 ? -1 : 1), x;
27
+ for (s = 0; s < c; ++s) (x = p[f[s] = s] = +e(o[s], s, o)) > 0 && (d += x);
28
+ for (t == null ? n != null && f.sort(function(e, t) {
29
+ return n(o[e], o[t]);
30
+ }) : f.sort(function(e, n) {
31
+ return t(p[e], p[n]);
32
+ }), s = 0, u = d ? (h - c * b) / d : 0; s < c; ++s, m = _) l = f[s], x = p[l], _ = m + (x > 0 ? x * u : 0) + b, p[l] = {
33
+ data: o[l],
34
+ index: s,
35
+ value: x,
36
+ startAngle: m,
37
+ endAngle: _,
38
+ padAngle: y
39
+ };
40
+ return p;
41
+ }
42
+ return o.value = function(t) {
43
+ return arguments.length ? (e = typeof t == "function" ? t : h(+t), o) : e;
44
+ }, o.sortValues = function(e) {
45
+ return arguments.length ? (t = e, n = null, o) : t;
46
+ }, o.sort = function(e) {
47
+ return arguments.length ? (n = e, t = null, o) : n;
48
+ }, o.startAngle = function(e) {
49
+ return arguments.length ? (r = typeof e == "function" ? e : h(+e), o) : r;
50
+ }, o.endAngle = function(e) {
51
+ return arguments.length ? (i = typeof e == "function" ? e : h(+e), o) : i;
52
+ }, o.padAngle = function(e) {
53
+ return arguments.length ? (a = typeof e == "function" ? e : h(+e), o) : a;
54
+ }, o;
55
+ }
56
+ //#endregion
57
+ //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-SKSYHLDU.mjs
58
+ var T = f.pie, E = {
59
+ sections: /* @__PURE__ */ new Map(),
60
+ showData: !1,
61
+ config: T
62
+ }, D = E.sections, O = E.showData, k = structuredClone(T), A = {
63
+ getConfig: /* @__PURE__ */ t(() => structuredClone(k), "getConfig"),
64
+ clear: /* @__PURE__ */ t(() => {
65
+ D = /* @__PURE__ */ new Map(), O = E.showData, l();
66
+ }, "clear"),
67
+ setDiagramTitle: s,
68
+ getDiagramTitle: a,
69
+ setAccTitle: o,
70
+ getAccTitle: p,
71
+ setAccDescription: i,
72
+ getAccDescription: c,
73
+ addSection: /* @__PURE__ */ t(({ label: t, value: n }) => {
74
+ if (n < 0) throw Error(`"${t}" has invalid value: ${n}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);
75
+ D.has(t) || (D.set(t, n), e.debug(`added new section: ${t}, with value: ${n}`));
76
+ }, "addSection"),
77
+ getSections: /* @__PURE__ */ t(() => D, "getSections"),
78
+ setShowData: /* @__PURE__ */ t((e) => {
79
+ O = e;
80
+ }, "setShowData"),
81
+ getShowData: /* @__PURE__ */ t(() => O, "getShowData")
82
+ }, j = /* @__PURE__ */ t((e, t) => {
83
+ b(e, t), t.setShowData(e.showData), e.sections.map(t.addSection);
84
+ }, "populateDb"), M = { parse: /* @__PURE__ */ t(async (t) => {
85
+ let n = await x("pie", t);
86
+ e.debug(n), j(n, A);
87
+ }, "parse") }, N = /* @__PURE__ */ t((e) => `
88
+ .pieCircle{
89
+ stroke: ${e.pieStrokeColor};
90
+ stroke-width : ${e.pieStrokeWidth};
91
+ opacity : ${e.pieOpacity};
92
+ }
93
+ .pieOuterCircle{
94
+ stroke: ${e.pieOuterStrokeColor};
95
+ stroke-width: ${e.pieOuterStrokeWidth};
96
+ fill: none;
97
+ }
98
+ .pieTitleText {
99
+ text-anchor: middle;
100
+ font-size: ${e.pieTitleTextSize};
101
+ fill: ${e.pieTitleTextColor};
102
+ font-family: ${e.fontFamily};
103
+ }
104
+ .slice {
105
+ font-family: ${e.fontFamily};
106
+ fill: ${e.pieSectionTextColor};
107
+ font-size:${e.pieSectionTextSize};
108
+ // fill: white;
109
+ }
110
+ .legend text {
111
+ fill: ${e.pieLegendTextColor};
112
+ font-family: ${e.fontFamily};
113
+ font-size: ${e.pieLegendTextSize};
114
+ }
115
+ `, "getStyles"), P = /* @__PURE__ */ t((e) => {
116
+ let t = [...e.values()].reduce((e, t) => e + t, 0), n = [...e.entries()].map(([e, t]) => ({
117
+ label: e,
118
+ value: t
119
+ })).filter((e) => e.value / t * 100 >= 1).sort((e, t) => t.value - e.value);
120
+ return w().value((e) => e.value)(n);
121
+ }, "createPieArcs"), F = {
122
+ parser: M,
123
+ db: A,
124
+ renderer: { draw: /* @__PURE__ */ t((t, i, a, o) => {
125
+ e.debug("rendering pie chart\n" + t);
126
+ let s = o.db, c = u(), l = r(s.getConfig(), c.pie), f = y(i), p = f.append("g");
127
+ p.attr("transform", "translate(225,225)");
128
+ let { themeVariables: h } = c, [g] = n(h.pieOuterStrokeWidth);
129
+ g ??= 2;
130
+ let v = l.textPosition, b = _().innerRadius(0).outerRadius(185), x = _().innerRadius(185 * v).outerRadius(185 * v);
131
+ p.append("circle").attr("cx", 0).attr("cy", 0).attr("r", 185 + g / 2).attr("class", "pieOuterCircle");
132
+ let S = s.getSections(), C = P(S), w = [
133
+ h.pie1,
134
+ h.pie2,
135
+ h.pie3,
136
+ h.pie4,
137
+ h.pie5,
138
+ h.pie6,
139
+ h.pie7,
140
+ h.pie8,
141
+ h.pie9,
142
+ h.pie10,
143
+ h.pie11,
144
+ h.pie12
145
+ ], T = 0;
146
+ S.forEach((e) => {
147
+ T += e;
148
+ });
149
+ let E = C.filter((e) => (e.data.value / T * 100).toFixed(0) !== "0"), D = m(w);
150
+ p.selectAll("mySlices").data(E).enter().append("path").attr("d", b).attr("fill", (e) => D(e.data.label)).attr("class", "pieCircle"), p.selectAll("mySlices").data(E).enter().append("text").text((e) => (e.data.value / T * 100).toFixed(0) + "%").attr("transform", (e) => "translate(" + x.centroid(e) + ")").style("text-anchor", "middle").attr("class", "slice"), p.append("text").text(s.getDiagramTitle()).attr("x", 0).attr("y", -400 / 2).attr("class", "pieTitleText");
151
+ let O = [...S.entries()].map(([e, t]) => ({
152
+ label: e,
153
+ value: t
154
+ })), k = p.selectAll(".legend").data(O).enter().append("g").attr("class", "legend").attr("transform", (e, t) => {
155
+ let n = 22 * O.length / 2;
156
+ return "translate(216," + (t * 22 - n) + ")";
157
+ });
158
+ k.append("rect").attr("width", 18).attr("height", 18).style("fill", (e) => D(e.label)).style("stroke", (e) => D(e.label)), k.append("text").attr("x", 22).attr("y", 14).text((e) => s.getShowData() ? `${e.label} [${e.value}]` : e.label);
159
+ let A = 512 + Math.max(...k.selectAll("text").nodes().map((e) => e?.getBoundingClientRect().width ?? 0));
160
+ f.attr("viewBox", `0 0 ${A} 450`), d(f, 450, A, l.useMaxWidth);
161
+ }, "draw") },
162
+ styles: N
163
+ };
164
+ //#endregion
165
+ export { F as diagram };
@@ -0,0 +1,3 @@
1
+ var e = [Object.freeze(JSON.parse("{\"displayName\":\"Python\",\"name\":\"python\",\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#expression\"}],\"repository\":{\"annotated-parameter\":{\"begin\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.function.language.python\"},\"2\":{\"name\":\"punctuation.separator.annotation.python\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.python\"}},\"patterns\":[{\"include\":\"#expression\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.python\"}]},\"assignment-operator\":{\"match\":\"<<=|>>=|//=|\\\\*\\\\*=|\\\\+=|-=|/=|@=|\\\\*=|%=|~=|\\\\^=|&=|\\\\|=|=(?!=)\",\"name\":\"keyword.operator.assignment.python\"},\"backticks\":{\"begin\":\"`\",\"end\":\"`|(?<!\\\\\\\\)(\\\\n)\",\"name\":\"invalid.deprecated.backtick.python\",\"patterns\":[{\"include\":\"#expression\"}]},\"builtin-callables\":{\"patterns\":[{\"include\":\"#illegal-names\"},{\"include\":\"#illegal-object-name\"},{\"include\":\"#builtin-exceptions\"},{\"include\":\"#builtin-functions\"},{\"include\":\"#builtin-types\"}]},\"builtin-exceptions\":{\"match\":\"(?<!\\\\.)\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\b\",\"name\":\"support.type.exception.python\"},\"builtin-functions\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\b\",\"name\":\"support.function.builtin.python\"},{\"match\":\"(?<!\\\\.)\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\b\",\"name\":\"variable.legacy.builtin.python\"}]},\"builtin-possible-callables\":{\"patterns\":[{\"include\":\"#builtin-callables\"},{\"include\":\"#magic-names\"}]},\"builtin-types\":{\"match\":\"(?<!\\\\.)\\\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\b\",\"name\":\"support.type.python\"},\"call-wrapper-inheritance\":{\"begin\":\"\\\\b(?=([_[:alpha:]]\\\\w*)\\\\s*(\\\\())\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"}},\"name\":\"meta.function-call.python\",\"patterns\":[{\"include\":\"#inheritance-name\"},{\"include\":\"#function-arguments\"}]},\"class-declaration\":{\"patterns\":[{\"begin\":\"\\\\s*(class)\\\\s+(?=[_[:alpha:]]\\\\w*\\\\s*([(:]))\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.class.python\"}},\"end\":\"(:)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.class.begin.python\"}},\"name\":\"meta.class.python\",\"patterns\":[{\"include\":\"#class-name\"},{\"include\":\"#class-inheritance\"}]}]},\"class-inheritance\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.inheritance.begin.python\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.inheritance.end.python\"}},\"name\":\"meta.class.inheritance.python\",\"patterns\":[{\"match\":\"(\\\\*\\\\*?)\",\"name\":\"keyword.operator.unpacking.arguments.python\"},{\"match\":\",\",\"name\":\"punctuation.separator.inheritance.python\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.python\"},{\"match\":\"\\\\bmetaclass\\\\b\",\"name\":\"support.type.metaclass.python\"},{\"include\":\"#illegal-names\"},{\"include\":\"#class-kwarg\"},{\"include\":\"#call-wrapper-inheritance\"},{\"include\":\"#expression-base\"},{\"include\":\"#member-access-class\"},{\"include\":\"#inheritance-identifier\"}]},\"class-kwarg\":{\"captures\":{\"1\":{\"name\":\"entity.other.inherited-class.python variable.parameter.class.python\"},\"2\":{\"name\":\"keyword.operator.assignment.python\"}},\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\s*(=)(?!=)\"},\"class-name\":{\"patterns\":[{\"include\":\"#illegal-object-name\"},{\"include\":\"#builtin-possible-callables\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\",\"name\":\"entity.name.type.class.python\"}]},\"codetags\":{\"captures\":{\"1\":{\"name\":\"keyword.codetag.notation.python\"}},\"match\":\"\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\b\"},\"comments\":{\"patterns\":[{\"begin\":\"#\\\\s*(type:)\\\\s*+(?!$|#)\",\"beginCaptures\":{\"0\":{\"name\":\"meta.typehint.comment.python\"},\"1\":{\"name\":\"comment.typehint.directive.notation.python\"}},\"contentName\":\"meta.typehint.comment.python\",\"end\":\"$|(?=#)\",\"name\":\"comment.line.number-sign.python\",\"patterns\":[{\"match\":\"\\\\Gignore(?=\\\\s*(?:$|#))\",\"name\":\"comment.typehint.ignore.notation.python\"},{\"match\":\"(?<!\\\\.)\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\b\",\"name\":\"comment.typehint.type.notation.python\"},{\"match\":\"([]()*,.=\\\\[]|(->))\",\"name\":\"comment.typehint.punctuation.notation.python\"},{\"match\":\"([_[:alpha:]]\\\\w*)\",\"name\":\"comment.typehint.variable.notation.python\"}]},{\"include\":\"#comments-base\"}]},\"comments-base\":{\"begin\":\"(#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.python\"}},\"end\":\"$()\",\"name\":\"comment.line.number-sign.python\",\"patterns\":[{\"include\":\"#codetags\"}]},\"comments-string-double-three\":{\"begin\":\"(#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.python\"}},\"end\":\"($|(?=\\\"\\\"\\\"))\",\"name\":\"comment.line.number-sign.python\",\"patterns\":[{\"include\":\"#codetags\"}]},\"comments-string-single-three\":{\"begin\":\"(#)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.python\"}},\"end\":\"($|(?='''))\",\"name\":\"comment.line.number-sign.python\",\"patterns\":[{\"include\":\"#codetags\"}]},\"curly-braces\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.begin.python\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.end.python\"}},\"patterns\":[{\"match\":\":\",\"name\":\"punctuation.separator.dict.python\"},{\"include\":\"#expression\"}]},\"decorator\":{\"begin\":\"^\\\\s*((@))\\\\s*(?=[_[:alpha:]]\\\\w*)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.decorator.python\"},\"2\":{\"name\":\"punctuation.definition.decorator.python\"}},\"end\":\"(\\\\))(.*?)(?=\\\\s*(?:#|$))|(?=[\\\\n#])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"},\"2\":{\"name\":\"invalid.illegal.decorator.python\"}},\"name\":\"meta.function.decorator.python\",\"patterns\":[{\"include\":\"#decorator-name\"},{\"include\":\"#function-arguments\"}]},\"decorator-name\":{\"patterns\":[{\"include\":\"#builtin-callables\"},{\"include\":\"#illegal-object-name\"},{\"captures\":{\"2\":{\"name\":\"punctuation.separator.period.python\"}},\"match\":\"([_[:alpha:]]\\\\w*)|(\\\\.)\",\"name\":\"entity.name.function.decorator.python\"},{\"include\":\"#line-continuation\"},{\"captures\":{\"1\":{\"name\":\"invalid.illegal.decorator.python\"}},\"match\":\"\\\\s*([^#(.\\\\\\\\_[:alpha:]\\\\s].*?)(?=#|$)\",\"name\":\"invalid.illegal.decorator.python\"}]},\"docstring\":{\"patterns\":[{\"begin\":\"('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\1)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"}},\"name\":\"string.quoted.docstring.multi.python\",\"patterns\":[{\"include\":\"#docstring-prompt\"},{\"include\":\"#codetags\"},{\"include\":\"#docstring-guts-unicode\"}]},{\"begin\":\"([Rr])('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"}},\"name\":\"string.quoted.docstring.raw.multi.python\",\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#docstring-prompt\"},{\"include\":\"#codetags\"}]},{\"begin\":\"([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\1)|(\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.docstring.single.python\",\"patterns\":[{\"include\":\"#codetags\"},{\"include\":\"#docstring-guts-unicode\"}]},{\"begin\":\"([Rr])([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)|(\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.docstring.raw.single.python\",\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#codetags\"}]}]},\"docstring-guts-unicode\":{\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#escape-sequence\"},{\"include\":\"#string-line-continuation\"}]},\"docstring-prompt\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.python\"}},\"match\":\"(?:^|\\\\G)\\\\s*((?:>>>|\\\\.\\\\.\\\\.)\\\\s)(?=\\\\s*\\\\S)\"},\"docstring-statement\":{\"begin\":\"^(?=\\\\s*[Rr]?('''|\\\"\\\"\\\"|[\\\"']))\",\"end\":\"((?<=\\\\1)|^)(?!\\\\s*[Rr]?('''|\\\"\\\"\\\"|[\\\"']))\",\"patterns\":[{\"include\":\"#docstring\"}]},\"double-one-regexp-character-set\":{\"patterns\":[{\"match\":\"\\\\[\\\\^?](?!.*?])\"},{\"begin\":\"(\\\\[)(\\\\^)?(])?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.character.set.begin.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"keyword.operator.negation.regexp\"},\"3\":{\"name\":\"constant.character.set.regexp\"}},\"end\":\"(]|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.character.set.end.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.character.set.regexp\",\"patterns\":[{\"include\":\"#regexp-charecter-set-escapes\"},{\"match\":\"\\\\N\",\"name\":\"constant.character.set.regexp\"}]}]},\"double-one-regexp-comments\":{\"begin\":\"\\\\(\\\\?#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.comment.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.comment.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"comment.regexp\",\"patterns\":[{\"include\":\"#codetags\"}]},\"double-one-regexp-conditional\":{\"begin\":\"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+\\\\p{alnum}+)?|\\\\d+)\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.conditional.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-expression\":{\"patterns\":[{\"include\":\"#regexp-base-expression\"},{\"include\":\"#double-one-regexp-character-set\"},{\"include\":\"#double-one-regexp-comments\"},{\"include\":\"#regexp-flags\"},{\"include\":\"#double-one-regexp-named-group\"},{\"include\":\"#regexp-backreference\"},{\"include\":\"#double-one-regexp-lookahead\"},{\"include\":\"#double-one-regexp-lookahead-negative\"},{\"include\":\"#double-one-regexp-lookbehind\"},{\"include\":\"#double-one-regexp-lookbehind-negative\"},{\"include\":\"#double-one-regexp-conditional\"},{\"include\":\"#double-one-regexp-parentheses-non-capturing\"},{\"include\":\"#double-one-regexp-parentheses\"}]},\"double-one-regexp-lookahead\":{\"begin\":\"(\\\\()\\\\?=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-lookahead-negative\":{\"begin\":\"(\\\\()\\\\?!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-lookbehind\":{\"begin\":\"(\\\\()\\\\?<=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-lookbehind-negative\":{\"begin\":\"(\\\\()\\\\?<!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-named-group\":{\"begin\":\"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+\\\\p{alnum}+)?>)\",\"beginCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\"},\"2\":{\"name\":\"entity.name.tag.named.group.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.named.regexp\",\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-parentheses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-one-regexp-parentheses-non-capturing\":{\"begin\":\"\\\\(\\\\?:\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"double-three-regexp-character-set\":{\"patterns\":[{\"match\":\"\\\\[\\\\^?](?!.*?])\"},{\"begin\":\"(\\\\[)(\\\\^)?(])?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.character.set.begin.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"keyword.operator.negation.regexp\"},\"3\":{\"name\":\"constant.character.set.regexp\"}},\"end\":\"(]|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.character.set.end.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.character.set.regexp\",\"patterns\":[{\"include\":\"#regexp-charecter-set-escapes\"},{\"match\":\"\\\\N\",\"name\":\"constant.character.set.regexp\"}]}]},\"double-three-regexp-comments\":{\"begin\":\"\\\\(\\\\?#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.comment.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.comment.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"comment.regexp\",\"patterns\":[{\"include\":\"#codetags\"}]},\"double-three-regexp-conditional\":{\"begin\":\"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+\\\\p{alnum}+)?|\\\\d+)\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.conditional.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-expression\":{\"patterns\":[{\"include\":\"#regexp-base-expression\"},{\"include\":\"#double-three-regexp-character-set\"},{\"include\":\"#double-three-regexp-comments\"},{\"include\":\"#regexp-flags\"},{\"include\":\"#double-three-regexp-named-group\"},{\"include\":\"#regexp-backreference\"},{\"include\":\"#double-three-regexp-lookahead\"},{\"include\":\"#double-three-regexp-lookahead-negative\"},{\"include\":\"#double-three-regexp-lookbehind\"},{\"include\":\"#double-three-regexp-lookbehind-negative\"},{\"include\":\"#double-three-regexp-conditional\"},{\"include\":\"#double-three-regexp-parentheses-non-capturing\"},{\"include\":\"#double-three-regexp-parentheses\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-lookahead\":{\"begin\":\"(\\\\()\\\\?=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-lookahead-negative\":{\"begin\":\"(\\\\()\\\\?!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-lookbehind\":{\"begin\":\"(\\\\()\\\\?<=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-lookbehind-negative\":{\"begin\":\"(\\\\()\\\\?<!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-named-group\":{\"begin\":\"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+\\\\p{alnum}+)?>)\",\"beginCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\"},\"2\":{\"name\":\"entity.name.tag.named.group.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.named.regexp\",\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-parentheses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"double-three-regexp-parentheses-non-capturing\":{\"begin\":\"\\\\(\\\\?:\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\"}},\"end\":\"(\\\\)|(?=\\\"\\\"\\\"))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#double-three-regexp-expression\"},{\"include\":\"#comments-string-double-three\"}]},\"ellipsis\":{\"match\":\"\\\\.\\\\.\\\\.\",\"name\":\"constant.other.ellipsis.python\"},\"escape-sequence\":{\"match\":\"\\\\\\\\(x\\\\h{2}|[0-7]{1,3}|[\\\"'\\\\\\\\abfnrtv])\",\"name\":\"constant.character.escape.python\"},\"escape-sequence-unicode\":{\"patterns\":[{\"match\":\"\\\\\\\\(u\\\\h{4}|U\\\\h{8}|N\\\\{[\\\\w\\\\s]+?})\",\"name\":\"constant.character.escape.python\"}]},\"expression\":{\"patterns\":[{\"include\":\"#expression-base\"},{\"include\":\"#member-access\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\"}]},\"expression-bare\":{\"patterns\":[{\"include\":\"#backticks\"},{\"include\":\"#illegal-anno\"},{\"include\":\"#literal\"},{\"include\":\"#regexp\"},{\"include\":\"#string\"},{\"include\":\"#lambda\"},{\"include\":\"#generator\"},{\"include\":\"#illegal-operator\"},{\"include\":\"#operator\"},{\"include\":\"#curly-braces\"},{\"include\":\"#item-access\"},{\"include\":\"#list\"},{\"include\":\"#odd-function-call\"},{\"include\":\"#round-braces\"},{\"include\":\"#function-call\"},{\"include\":\"#builtin-functions\"},{\"include\":\"#builtin-types\"},{\"include\":\"#builtin-exceptions\"},{\"include\":\"#magic-names\"},{\"include\":\"#special-names\"},{\"include\":\"#illegal-names\"},{\"include\":\"#special-variables\"},{\"include\":\"#ellipsis\"},{\"include\":\"#punctuation\"},{\"include\":\"#line-continuation\"}]},\"expression-base\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#expression-bare\"},{\"include\":\"#line-continuation\"}]},\"f-expression\":{\"patterns\":[{\"include\":\"#expression-bare\"},{\"include\":\"#member-access\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\"}]},\"fregexp-base-expression\":{\"patterns\":[{\"include\":\"#fregexp-quantifier\"},{\"include\":\"#fstring-formatting-braces\"},{\"match\":\"\\\\{.*?}\"},{\"include\":\"#regexp-base-common\"}]},\"fregexp-quantifier\":{\"match\":\"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)}}\",\"name\":\"keyword.operator.quantifier.regexp\"},\"fstring-fnorm-quoted-multi-line\":{\"begin\":\"\\\\b([Ff])([BUbu])?('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.interpolated.python string.quoted.multi.python storage.type.string.python\"},\"2\":{\"name\":\"invalid.illegal.prefix.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python\"}},\"end\":\"(\\\\3)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-guts\"},{\"include\":\"#fstring-illegal-multi-brace\"},{\"include\":\"#fstring-multi-brace\"},{\"include\":\"#fstring-multi-core\"}]},\"fstring-fnorm-quoted-single-line\":{\"begin\":\"\\\\b([Ff])([BUbu])?(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"string.interpolated.python string.quoted.single.python storage.type.string.python\"},\"2\":{\"name\":\"invalid.illegal.prefix.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python\"}},\"end\":\"(\\\\3)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-guts\"},{\"include\":\"#fstring-illegal-single-brace\"},{\"include\":\"#fstring-single-brace\"},{\"include\":\"#fstring-single-core\"}]},\"fstring-formatting\":{\"patterns\":[{\"include\":\"#fstring-formatting-braces\"},{\"include\":\"#fstring-formatting-singe-brace\"}]},\"fstring-formatting-braces\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"},\"2\":{\"name\":\"invalid.illegal.brace.python\"},\"3\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"match\":\"(\\\\{)(\\\\s*?)(})\"},{\"match\":\"(\\\\{\\\\{|}})\",\"name\":\"constant.character.escape.python\"}]},\"fstring-formatting-singe-brace\":{\"match\":\"(}(?!}))\",\"name\":\"invalid.illegal.brace.python\"},\"fstring-guts\":{\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#escape-sequence\"},{\"include\":\"#string-line-continuation\"},{\"include\":\"#fstring-formatting\"}]},\"fstring-illegal-multi-brace\":{\"patterns\":[{\"include\":\"#impossible\"}]},\"fstring-illegal-single-brace\":{\"begin\":\"(\\\\{)(?=[^\\\\n}]*$\\\\n?)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"end\":\"(})|(?=\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"patterns\":[{\"include\":\"#fstring-terminator-single\"},{\"include\":\"#f-expression\"}]},\"fstring-multi-brace\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"patterns\":[{\"include\":\"#fstring-terminator-multi\"},{\"include\":\"#f-expression\"}]},\"fstring-multi-core\":{\"match\":\"(.+?)($(\\\\n?)|(?=[\\\\\\\\{}]|'''|\\\"\\\"\\\"))|\\\\n\",\"name\":\"string.interpolated.python string.quoted.multi.python\"},\"fstring-normf-quoted-multi-line\":{\"begin\":\"\\\\b([BUbu])([Ff])('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.prefix.python\"},\"2\":{\"name\":\"string.interpolated.python string.quoted.multi.python storage.type.string.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python string.quoted.multi.python\"}},\"end\":\"(\\\\3)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-guts\"},{\"include\":\"#fstring-illegal-multi-brace\"},{\"include\":\"#fstring-multi-brace\"},{\"include\":\"#fstring-multi-core\"}]},\"fstring-normf-quoted-single-line\":{\"begin\":\"\\\\b([BUbu])([Ff])(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.prefix.python\"},\"2\":{\"name\":\"string.interpolated.python string.quoted.single.python storage.type.string.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python string.quoted.single.python\"}},\"end\":\"(\\\\3)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-guts\"},{\"include\":\"#fstring-illegal-single-brace\"},{\"include\":\"#fstring-single-brace\"},{\"include\":\"#fstring-single-core\"}]},\"fstring-raw-guts\":{\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#fstring-formatting\"}]},\"fstring-raw-multi-core\":{\"match\":\"(.+?)($(\\\\n?)|(?=[\\\\\\\\{}]|'''|\\\"\\\"\\\"))|\\\\n\",\"name\":\"string.interpolated.python string.quoted.raw.multi.python\"},\"fstring-raw-quoted-multi-line\":{\"begin\":\"\\\\b([Rr][Ff]|[Ff][Rr])('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python string.quoted.raw.multi.python\"}},\"end\":\"(\\\\2)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-raw-guts\"},{\"include\":\"#fstring-illegal-multi-brace\"},{\"include\":\"#fstring-multi-brace\"},{\"include\":\"#fstring-raw-multi-core\"}]},\"fstring-raw-quoted-single-line\":{\"begin\":\"\\\\b([Rr][Ff]|[Ff][Rr])(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"string.interpolated.python string.quoted.raw.single.python storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python string.quoted.raw.single.python\"}},\"end\":\"(\\\\2)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.fstring.python\",\"patterns\":[{\"include\":\"#fstring-raw-guts\"},{\"include\":\"#fstring-illegal-single-brace\"},{\"include\":\"#fstring-single-brace\"},{\"include\":\"#fstring-raw-single-core\"}]},\"fstring-raw-single-core\":{\"match\":\"(.+?)($(\\\\n?)|(?=[\\\\\\\\{}]|([\\\"'])|((?<!\\\\\\\\)\\\\n)))|\\\\n\",\"name\":\"string.interpolated.python string.quoted.raw.single.python\"},\"fstring-single-brace\":{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"end\":\"(})|(?=\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"patterns\":[{\"include\":\"#fstring-terminator-single\"},{\"include\":\"#f-expression\"}]},\"fstring-single-core\":{\"match\":\"(.+?)($(\\\\n?)|(?=[\\\\\\\\{}]|([\\\"'])|((?<!\\\\\\\\)\\\\n)))|\\\\n\",\"name\":\"string.interpolated.python string.quoted.single.python\"},\"fstring-terminator-multi\":{\"patterns\":[{\"match\":\"(=(![ars])?)(?=})\",\"name\":\"storage.type.format.python\"},{\"match\":\"(=?![ars])(?=})\",\"name\":\"storage.type.format.python\"},{\"captures\":{\"1\":{\"name\":\"storage.type.format.python\"},\"2\":{\"name\":\"storage.type.format.python\"}},\"match\":\"(=?(?:![ars])?)(:\\\\w?[<=>^]?[- +]?#?\\\\d*,?(\\\\.\\\\d+)?[%EFGXb-gnosx]?)(?=})\"},{\"include\":\"#fstring-terminator-multi-tail\"}]},\"fstring-terminator-multi-tail\":{\"begin\":\"(=?(?:![ars])?)(:)(?=.*?\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.format.python\"},\"2\":{\"name\":\"storage.type.format.python\"}},\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#fstring-illegal-multi-brace\"},{\"include\":\"#fstring-multi-brace\"},{\"match\":\"([%EFGXb-gnosx])(?=})\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\.\\\\d+)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(,)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\d+)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(#)\",\"name\":\"storage.type.format.python\"},{\"match\":\"([- +])\",\"name\":\"storage.type.format.python\"},{\"match\":\"([<=>^])\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\w)\",\"name\":\"storage.type.format.python\"}]},\"fstring-terminator-single\":{\"patterns\":[{\"match\":\"(=(![ars])?)(?=})\",\"name\":\"storage.type.format.python\"},{\"match\":\"(=?![ars])(?=})\",\"name\":\"storage.type.format.python\"},{\"captures\":{\"1\":{\"name\":\"storage.type.format.python\"},\"2\":{\"name\":\"storage.type.format.python\"}},\"match\":\"(=?(?:![ars])?)(:\\\\w?[<=>^]?[- +]?#?\\\\d*,?(\\\\.\\\\d+)?[%EFGXb-gnosx]?)(?=})\"},{\"include\":\"#fstring-terminator-single-tail\"}]},\"fstring-terminator-single-tail\":{\"begin\":\"(=?(?:![ars])?)(:)(?=.*?\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.format.python\"},\"2\":{\"name\":\"storage.type.format.python\"}},\"end\":\"(?=})|(?=\\\\n)\",\"patterns\":[{\"include\":\"#fstring-illegal-single-brace\"},{\"include\":\"#fstring-single-brace\"},{\"match\":\"([%EFGXb-gnosx])(?=})\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\.\\\\d+)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(,)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\d+)\",\"name\":\"storage.type.format.python\"},{\"match\":\"(#)\",\"name\":\"storage.type.format.python\"},{\"match\":\"([- +])\",\"name\":\"storage.type.format.python\"},{\"match\":\"([<=>^])\",\"name\":\"storage.type.format.python\"},{\"match\":\"(\\\\w)\",\"name\":\"storage.type.format.python\"}]},\"function-arguments\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.begin.python\"}},\"contentName\":\"meta.function-call.arguments.python\",\"end\":\"(?=\\\\))(?!\\\\)\\\\s*\\\\()\",\"patterns\":[{\"match\":\"(,)\",\"name\":\"punctuation.separator.arguments.python\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.unpacking.arguments.python\"}},\"match\":\"(?:(?<=[(,])|^)\\\\s*(\\\\*{1,2})\"},{\"include\":\"#lambda-incomplete\"},{\"include\":\"#illegal-names\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function-call.python\"},\"2\":{\"name\":\"keyword.operator.assignment.python\"}},\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\s*(=)(?!=)\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.python\"},{\"include\":\"#expression\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"},\"2\":{\"name\":\"punctuation.definition.arguments.begin.python\"}},\"match\":\"\\\\s*(\\\\))\\\\s*(\\\\()\"}]},\"function-call\":{\"begin\":\"\\\\b(?=([_[:alpha:]]\\\\w*)\\\\s*(\\\\())\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"}},\"name\":\"meta.function-call.python\",\"patterns\":[{\"include\":\"#special-variables\"},{\"include\":\"#function-name\"},{\"include\":\"#function-arguments\"}]},\"function-declaration\":{\"begin\":\"\\\\s*(?:\\\\b(async)\\\\s+)?\\\\b(def)\\\\s+(?=[_[:alpha:]]\\\\p{word}*\\\\s*\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.async.python\"},\"2\":{\"name\":\"storage.type.function.python\"}},\"end\":\"(:|(?=[\\\\n\\\"#']))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.python\"}},\"name\":\"meta.function.python\",\"patterns\":[{\"include\":\"#function-def-name\"},{\"include\":\"#parameters\"},{\"include\":\"#line-continuation\"},{\"include\":\"#return-annotation\"}]},\"function-def-name\":{\"patterns\":[{\"include\":\"#illegal-object-name\"},{\"include\":\"#builtin-possible-callables\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\",\"name\":\"entity.name.function.python\"}]},\"function-name\":{\"patterns\":[{\"include\":\"#builtin-possible-callables\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\",\"name\":\"meta.function-call.generic.python\"}]},\"generator\":{\"begin\":\"\\\\bfor\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.flow.python\"}},\"end\":\"\\\\bin\\\\b\",\"endCaptures\":{\"0\":{\"name\":\"keyword.control.flow.python\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"illegal-anno\":{\"match\":\"->\",\"name\":\"invalid.illegal.annotation.python\"},\"illegal-names\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.python\"},\"2\":{\"name\":\"keyword.control.import.python\"}},\"match\":\"\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\.)lambda|lambda(?=\\\\s*[.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\b\"},\"illegal-object-name\":{\"match\":\"\\\\b(True|False|None)\\\\b\",\"name\":\"keyword.illegal.name.python\"},\"illegal-operator\":{\"patterns\":[{\"match\":\"&&|\\\\|\\\\||--|\\\\+\\\\+\",\"name\":\"invalid.illegal.operator.python\"},{\"match\":\"[$?]\",\"name\":\"invalid.illegal.operator.python\"},{\"match\":\"!\\\\b\",\"name\":\"invalid.illegal.operator.python\"}]},\"import\":{\"patterns\":[{\"begin\":\"\\\\b(?<!\\\\.)(from)\\\\b(?=.+import)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.python\"}},\"end\":\"$|(?=import)\",\"patterns\":[{\"match\":\"\\\\.+\",\"name\":\"punctuation.separator.period.python\"},{\"include\":\"#expression\"}]},{\"begin\":\"\\\\b(?<!\\\\.)(import)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.python\"}},\"end\":\"$\",\"patterns\":[{\"match\":\"\\\\b(?<!\\\\.)as\\\\b\",\"name\":\"keyword.control.import.python\"},{\"include\":\"#expression\"}]}]},\"impossible\":{\"match\":\"$.^\"},\"inheritance-identifier\":{\"captures\":{\"1\":{\"name\":\"entity.other.inherited-class.python\"}},\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\"},\"inheritance-name\":{\"patterns\":[{\"include\":\"#lambda-incomplete\"},{\"include\":\"#builtin-possible-callables\"},{\"include\":\"#inheritance-identifier\"}]},\"item-access\":{\"patterns\":[{\"begin\":\"\\\\b(?=[_[:alpha:]]\\\\w*\\\\s*\\\\[)\",\"end\":\"(])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"}},\"name\":\"meta.item-access.python\",\"patterns\":[{\"include\":\"#item-name\"},{\"include\":\"#item-index\"},{\"include\":\"#expression\"}]}]},\"item-index\":{\"begin\":\"(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.begin.python\"}},\"contentName\":\"meta.item-access.arguments.python\",\"end\":\"(?=])\",\"patterns\":[{\"match\":\":\",\"name\":\"punctuation.separator.slice.python\"},{\"include\":\"#expression\"}]},\"item-name\":{\"patterns\":[{\"include\":\"#special-variables\"},{\"include\":\"#builtin-functions\"},{\"include\":\"#special-names\"},{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\",\"name\":\"meta.indexed-name.python\"}]},\"lambda\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.python\"}},\"match\":\"((?<=\\\\.)lambda|lambda(?=\\\\s*[.=]))\"},{\"captures\":{\"1\":{\"name\":\"storage.type.function.lambda.python\"}},\"match\":\"\\\\b(lambda)\\\\s*?(?=[\\\\n,]|$)\"},{\"begin\":\"\\\\b(lambda)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.function.lambda.python\"}},\"contentName\":\"meta.function.lambda.parameters.python\",\"end\":\"(:)|(\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.lambda.begin.python\"}},\"name\":\"meta.lambda-function.python\",\"patterns\":[{\"match\":\"/\",\"name\":\"keyword.operator.positional.parameter.python\"},{\"match\":\"(\\\\*\\\\*?)\",\"name\":\"keyword.operator.unpacking.parameter.python\"},{\"include\":\"#lambda-nested-incomplete\"},{\"include\":\"#illegal-names\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.language.python\"},\"2\":{\"name\":\"punctuation.separator.parameters.python\"}},\"match\":\"([_[:alpha:]]\\\\w*)\\\\s*(?:(,)|(?=:|$))\"},{\"include\":\"#comments\"},{\"include\":\"#backticks\"},{\"include\":\"#illegal-anno\"},{\"include\":\"#lambda-parameter-with-default\"},{\"include\":\"#line-continuation\"},{\"include\":\"#illegal-operator\"}]}]},\"lambda-incomplete\":{\"match\":\"\\\\blambda(?=\\\\s*[),])\",\"name\":\"storage.type.function.lambda.python\"},\"lambda-nested-incomplete\":{\"match\":\"\\\\blambda(?=\\\\s*[),:])\",\"name\":\"storage.type.function.lambda.python\"},\"lambda-parameter-with-default\":{\"begin\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.function.language.python\"},\"2\":{\"name\":\"keyword.operator.python\"}},\"end\":\"(,)|(?=:|$)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.python\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"line-continuation\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.python\"},\"2\":{\"name\":\"invalid.illegal.line.continuation.python\"}},\"match\":\"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)\"},{\"begin\":\"(\\\\\\\\)\\\\s*$\\\\n?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.python\"}},\"end\":\"(?=^\\\\s*$)|(?!(\\\\s*[Rr]?('''|\\\"\\\"\\\"|[\\\"']))|\\\\G()$)\",\"patterns\":[{\"include\":\"#regexp\"},{\"include\":\"#string\"}]}]},\"list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.begin.python\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.end.python\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"literal\":{\"patterns\":[{\"match\":\"\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\b\",\"name\":\"constant.language.python\"},{\"include\":\"#number\"}]},\"loose-default\":{\"begin\":\"(=)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.python\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.python\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"magic-function-names\":{\"captures\":{\"1\":{\"name\":\"support.function.magic.python\"}},\"match\":\"\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|get??|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|len??|long|lshift|lt|missing|mod|mul|neg??|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\b\"},\"magic-names\":{\"patterns\":[{\"include\":\"#magic-function-names\"},{\"include\":\"#magic-variable-names\"}]},\"magic-variable-names\":{\"captures\":{\"1\":{\"name\":\"support.variable.magic.python\"}},\"match\":\"\\\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\b\"},\"member-access\":{\"begin\":\"(\\\\.)\\\\s*(?!\\\\.)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.period.python\"}},\"end\":\"(?<=\\\\S)(?=\\\\W)|(^|(?<=\\\\s))(?=[^\\\\\\\\\\\\w\\\\s])|$\",\"name\":\"meta.member.access.python\",\"patterns\":[{\"include\":\"#function-call\"},{\"include\":\"#member-access-base\"},{\"include\":\"#member-access-attribute\"}]},\"member-access-attribute\":{\"match\":\"\\\\b([_[:alpha:]]\\\\w*)\\\\b\",\"name\":\"meta.attribute.python\"},\"member-access-base\":{\"patterns\":[{\"include\":\"#magic-names\"},{\"include\":\"#illegal-names\"},{\"include\":\"#illegal-object-name\"},{\"include\":\"#special-names\"},{\"include\":\"#line-continuation\"},{\"include\":\"#item-access\"}]},\"member-access-class\":{\"begin\":\"(\\\\.)\\\\s*(?!\\\\.)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.period.python\"}},\"end\":\"(?<=\\\\S)(?=\\\\W)|$\",\"name\":\"meta.member.access.python\",\"patterns\":[{\"include\":\"#call-wrapper-inheritance\"},{\"include\":\"#member-access-base\"},{\"include\":\"#inheritance-identifier\"}]},\"number\":{\"name\":\"constant.numeric.python\",\"patterns\":[{\"include\":\"#number-float\"},{\"include\":\"#number-dec\"},{\"include\":\"#number-hex\"},{\"include\":\"#number-oct\"},{\"include\":\"#number-bin\"},{\"include\":\"#number-long\"},{\"match\":\"\\\\b[0-9]+\\\\w+\",\"name\":\"invalid.illegal.name.python\"}]},\"number-bin\":{\"captures\":{\"1\":{\"name\":\"storage.type.number.python\"}},\"match\":\"(?<![.\\\\w])(0[Bb])(_?[01])+\\\\b\",\"name\":\"constant.numeric.bin.python\"},\"number-dec\":{\"captures\":{\"1\":{\"name\":\"storage.type.imaginary.number.python\"},\"2\":{\"name\":\"invalid.illegal.dec.python\"}},\"match\":\"(?<![.\\\\w])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([Jj])|0([0-9]+)(?![.Ee]))\\\\b\",\"name\":\"constant.numeric.dec.python\"},\"number-float\":{\"captures\":{\"1\":{\"name\":\"storage.type.imaginary.number.python\"}},\"match\":\"(?<!\\\\w)(?:(?:\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\\\.)(?:[Ee][-+]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*[Ee][-+]?[0-9](?:_?[0-9])*)([Jj])?\\\\b\",\"name\":\"constant.numeric.float.python\"},\"number-hex\":{\"captures\":{\"1\":{\"name\":\"storage.type.number.python\"}},\"match\":\"(?<![.\\\\w])(0[Xx])(_?\\\\h)+\\\\b\",\"name\":\"constant.numeric.hex.python\"},\"number-long\":{\"captures\":{\"2\":{\"name\":\"storage.type.number.python\"}},\"match\":\"(?<![.\\\\w])([1-9][0-9]*|0)([Ll])\\\\b\",\"name\":\"constant.numeric.bin.python\"},\"number-oct\":{\"captures\":{\"1\":{\"name\":\"storage.type.number.python\"}},\"match\":\"(?<![.\\\\w])(0[Oo])(_?[0-7])+\\\\b\",\"name\":\"constant.numeric.oct.python\"},\"odd-function-call\":{\"begin\":\"(?<=[])])\\\\s*(?=\\\\()\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.python\"}},\"patterns\":[{\"include\":\"#function-arguments\"}]},\"operator\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.python\"},\"2\":{\"name\":\"keyword.control.flow.python\"},\"3\":{\"name\":\"keyword.operator.bitwise.python\"},\"4\":{\"name\":\"keyword.operator.arithmetic.python\"},\"5\":{\"name\":\"keyword.operator.comparison.python\"},\"6\":{\"name\":\"keyword.operator.assignment.python\"}},\"match\":\"\\\\b(?<!\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|yield(?:\\\\s+from)?))(?!\\\\s*:)\\\\b|(<<|>>|[\\\\&^|~])|(\\\\*\\\\*|[-%*+]|//|[/@])|(!=|==|>=|<=|[<>])|(:=)\"},\"parameter-special\":{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.language.python\"},\"2\":{\"name\":\"variable.parameter.function.language.special.self.python\"},\"3\":{\"name\":\"variable.parameter.function.language.special.cls.python\"},\"4\":{\"name\":\"punctuation.separator.parameters.python\"}},\"match\":\"\\\\b((self)|(cls))\\\\b\\\\s*(?:(,)|(?=\\\\)))\"},\"parameters\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.python\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.python\"}},\"name\":\"meta.function.parameters.python\",\"patterns\":[{\"match\":\"/\",\"name\":\"keyword.operator.positional.parameter.python\"},{\"match\":\"(\\\\*\\\\*?)\",\"name\":\"keyword.operator.unpacking.parameter.python\"},{\"include\":\"#lambda-incomplete\"},{\"include\":\"#illegal-names\"},{\"include\":\"#illegal-object-name\"},{\"include\":\"#parameter-special\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.language.python\"},\"2\":{\"name\":\"punctuation.separator.parameters.python\"}},\"match\":\"([_[:alpha:]]\\\\w*)\\\\s*(?:(,)|(?=[\\\\n#)=]))\"},{\"include\":\"#comments\"},{\"include\":\"#loose-default\"},{\"include\":\"#annotated-parameter\"}]},\"punctuation\":{\"patterns\":[{\"match\":\":\",\"name\":\"punctuation.separator.colon.python\"},{\"match\":\",\",\"name\":\"punctuation.separator.element.python\"}]},\"regexp\":{\"patterns\":[{\"include\":\"#regexp-single-three-line\"},{\"include\":\"#regexp-double-three-line\"},{\"include\":\"#regexp-single-one-line\"},{\"include\":\"#regexp-double-one-line\"}]},\"regexp-backreference\":{\"captures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp\"},\"2\":{\"name\":\"entity.name.tag.named.backreference.regexp\"},\"3\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp\"}},\"match\":\"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+\\\\p{alnum}+)?)(\\\\))\",\"name\":\"meta.backreference.named.regexp\"},\"regexp-backreference-number\":{\"captures\":{\"1\":{\"name\":\"entity.name.tag.backreference.regexp\"}},\"match\":\"(\\\\\\\\[1-9]\\\\d?)\",\"name\":\"meta.backreference.regexp\"},\"regexp-base-common\":{\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"support.other.match.any.regexp\"},{\"match\":\"\\\\^\",\"name\":\"support.other.match.begin.regexp\"},{\"match\":\"\\\\$\",\"name\":\"support.other.match.end.regexp\"},{\"match\":\"[*+?]\\\\??\",\"name\":\"keyword.operator.quantifier.regexp\"},{\"match\":\"\\\\|\",\"name\":\"keyword.operator.disjunction.regexp\"},{\"include\":\"#regexp-escape-sequence\"}]},\"regexp-base-expression\":{\"patterns\":[{\"include\":\"#regexp-quantifier\"},{\"include\":\"#regexp-base-common\"}]},\"regexp-charecter-set-escapes\":{\"patterns\":[{\"match\":\"\\\\\\\\[\\\\\\\\abfnrtv]\",\"name\":\"constant.character.escape.regexp\"},{\"include\":\"#regexp-escape-special\"},{\"match\":\"\\\\\\\\([0-7]{1,3})\",\"name\":\"constant.character.escape.regexp\"},{\"include\":\"#regexp-escape-character\"},{\"include\":\"#regexp-escape-unicode\"},{\"include\":\"#regexp-escape-catchall\"}]},\"regexp-double-one-line\":{\"begin\":\"\\\\b(([Uu]r)|([Bb]r)|(r[Bb]?))(\\\")\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"storage.type.string.python\"},\"5\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\")|(?<!\\\\\\\\)(\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.regexp.quoted.single.python\",\"patterns\":[{\"include\":\"#double-one-regexp-expression\"}]},\"regexp-double-three-line\":{\"begin\":\"\\\\b(([Uu]r)|([Bb]r)|(r[Bb]?))(\\\"\\\"\\\")\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"storage.type.string.python\"},\"5\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\"\\\"\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.regexp.quoted.multi.python\",\"patterns\":[{\"include\":\"#double-three-regexp-expression\"}]},\"regexp-escape-catchall\":{\"match\":\"\\\\\\\\(.|\\\\n)\",\"name\":\"constant.character.escape.regexp\"},\"regexp-escape-character\":{\"match\":\"\\\\\\\\(x\\\\h{2}|0[0-7]{1,2}|[0-7]{3})\",\"name\":\"constant.character.escape.regexp\"},\"regexp-escape-sequence\":{\"patterns\":[{\"include\":\"#regexp-escape-special\"},{\"include\":\"#regexp-escape-character\"},{\"include\":\"#regexp-escape-unicode\"},{\"include\":\"#regexp-backreference-number\"},{\"include\":\"#regexp-escape-catchall\"}]},\"regexp-escape-special\":{\"match\":\"\\\\\\\\([ABDSWZbdsw])\",\"name\":\"support.other.escape.special.regexp\"},\"regexp-escape-unicode\":{\"match\":\"\\\\\\\\(u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.unicode.regexp\"},\"regexp-flags\":{\"match\":\"\\\\(\\\\?[Laimsux]+\\\\)\",\"name\":\"storage.modifier.flag.regexp\"},\"regexp-quantifier\":{\"match\":\"\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)}\",\"name\":\"keyword.operator.quantifier.regexp\"},\"regexp-single-one-line\":{\"begin\":\"\\\\b(([Uu]r)|([Bb]r)|(r[Bb]?))(')\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"storage.type.string.python\"},\"5\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(')|(?<!\\\\\\\\)(\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.regexp.quoted.single.python\",\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"regexp-single-three-line\":{\"begin\":\"\\\\b(([Uu]r)|([Bb]r)|(r[Bb]?))(''')\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"storage.type.string.python\"},\"5\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(''')\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.regexp.quoted.multi.python\",\"patterns\":[{\"include\":\"#single-three-regexp-expression\"}]},\"return-annotation\":{\"begin\":\"(->)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.annotation.result.python\"}},\"end\":\"(?=:)\",\"patterns\":[{\"include\":\"#expression\"}]},\"round-braces\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.begin.python\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.end.python\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"semicolon\":{\"patterns\":[{\"match\":\";$\",\"name\":\"invalid.deprecated.semicolon.python\"}]},\"single-one-regexp-character-set\":{\"patterns\":[{\"match\":\"\\\\[\\\\^?](?!.*?])\"},{\"begin\":\"(\\\\[)(\\\\^)?(])?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.character.set.begin.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"keyword.operator.negation.regexp\"},\"3\":{\"name\":\"constant.character.set.regexp\"}},\"end\":\"(]|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.character.set.end.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.character.set.regexp\",\"patterns\":[{\"include\":\"#regexp-charecter-set-escapes\"},{\"match\":\"\\\\N\",\"name\":\"constant.character.set.regexp\"}]}]},\"single-one-regexp-comments\":{\"begin\":\"\\\\(\\\\?#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.comment.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.comment.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"comment.regexp\",\"patterns\":[{\"include\":\"#codetags\"}]},\"single-one-regexp-conditional\":{\"begin\":\"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+\\\\p{alnum}+)?|\\\\d+)\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.conditional.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-expression\":{\"patterns\":[{\"include\":\"#regexp-base-expression\"},{\"include\":\"#single-one-regexp-character-set\"},{\"include\":\"#single-one-regexp-comments\"},{\"include\":\"#regexp-flags\"},{\"include\":\"#single-one-regexp-named-group\"},{\"include\":\"#regexp-backreference\"},{\"include\":\"#single-one-regexp-lookahead\"},{\"include\":\"#single-one-regexp-lookahead-negative\"},{\"include\":\"#single-one-regexp-lookbehind\"},{\"include\":\"#single-one-regexp-lookbehind-negative\"},{\"include\":\"#single-one-regexp-conditional\"},{\"include\":\"#single-one-regexp-parentheses-non-capturing\"},{\"include\":\"#single-one-regexp-parentheses\"}]},\"single-one-regexp-lookahead\":{\"begin\":\"(\\\\()\\\\?=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-lookahead-negative\":{\"begin\":\"(\\\\()\\\\?!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-lookbehind\":{\"begin\":\"(\\\\()\\\\?<=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-lookbehind-negative\":{\"begin\":\"(\\\\()\\\\?<!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-named-group\":{\"begin\":\"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+\\\\p{alnum}+)?>)\",\"beginCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\"},\"2\":{\"name\":\"entity.name.tag.named.group.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.named.regexp\",\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-parentheses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-one-regexp-parentheses-non-capturing\":{\"begin\":\"\\\\(\\\\?:\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\"}},\"end\":\"(\\\\)|(?='))|((?=(?<!\\\\\\\\)\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-one-regexp-expression\"}]},\"single-three-regexp-character-set\":{\"patterns\":[{\"match\":\"\\\\[\\\\^?](?!.*?])\"},{\"begin\":\"(\\\\[)(\\\\^)?(])?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.character.set.begin.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"keyword.operator.negation.regexp\"},\"3\":{\"name\":\"constant.character.set.regexp\"}},\"end\":\"(]|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.character.set.end.regexp constant.other.set.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.character.set.regexp\",\"patterns\":[{\"include\":\"#regexp-charecter-set-escapes\"},{\"match\":\"\\\\N\",\"name\":\"constant.character.set.regexp\"}]}]},\"single-three-regexp-comments\":{\"begin\":\"\\\\(\\\\?#\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.comment.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.comment.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"comment.regexp\",\"patterns\":[{\"include\":\"#codetags\"}]},\"single-three-regexp-conditional\":{\"begin\":\"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+\\\\p{alnum}+)?|\\\\d+)\\\\)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.conditional.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.conditional.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-expression\":{\"patterns\":[{\"include\":\"#regexp-base-expression\"},{\"include\":\"#single-three-regexp-character-set\"},{\"include\":\"#single-three-regexp-comments\"},{\"include\":\"#regexp-flags\"},{\"include\":\"#single-three-regexp-named-group\"},{\"include\":\"#regexp-backreference\"},{\"include\":\"#single-three-regexp-lookahead\"},{\"include\":\"#single-three-regexp-lookahead-negative\"},{\"include\":\"#single-three-regexp-lookbehind\"},{\"include\":\"#single-three-regexp-lookbehind-negative\"},{\"include\":\"#single-three-regexp-conditional\"},{\"include\":\"#single-three-regexp-parentheses-non-capturing\"},{\"include\":\"#single-three-regexp-parentheses\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-lookahead\":{\"begin\":\"(\\\\()\\\\?=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-lookahead-negative\":{\"begin\":\"(\\\\()\\\\?!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookahead.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookahead.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-lookbehind\":{\"begin\":\"(\\\\()\\\\?<=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-lookbehind-negative\":{\"begin\":\"(\\\\()\\\\?<!\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.lookbehind.negative.regexp\"},\"1\":{\"name\":\"punctuation.parenthesis.lookbehind.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-named-group\":{\"begin\":\"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+\\\\p{alnum}+)?>)\",\"beginCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp\"},\"2\":{\"name\":\"entity.name.tag.named.group.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"meta.named.regexp\",\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-parentheses\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"single-three-regexp-parentheses-non-capturing\":{\"begin\":\"\\\\(\\\\?:\",\"beginCaptures\":{\"0\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp\"}},\"end\":\"(\\\\)|(?='''))\",\"endCaptures\":{\"1\":{\"name\":\"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"patterns\":[{\"include\":\"#single-three-regexp-expression\"},{\"include\":\"#comments-string-single-three\"}]},\"special-names\":{\"match\":\"\\\\b(_*\\\\p{upper}[_\\\\d]*\\\\p{upper})[[:upper:]\\\\d]*(_\\\\w*)?\\\\b\",\"name\":\"constant.other.caps.python\"},\"special-variables\":{\"captures\":{\"1\":{\"name\":\"variable.language.special.self.python\"},\"2\":{\"name\":\"variable.language.special.cls.python\"}},\"match\":\"\\\\b(?<!\\\\.)(?:(self)|(cls))\\\\b\"},\"statement\":{\"patterns\":[{\"include\":\"#import\"},{\"include\":\"#class-declaration\"},{\"include\":\"#function-declaration\"},{\"include\":\"#generator\"},{\"include\":\"#statement-keyword\"},{\"include\":\"#assignment-operator\"},{\"include\":\"#decorator\"},{\"include\":\"#docstring-statement\"},{\"include\":\"#semicolon\"}]},\"statement-keyword\":{\"patterns\":[{\"match\":\"\\\\b((async\\\\s+)?\\\\s*def)\\\\b\",\"name\":\"storage.type.function.python\"},{\"match\":\"\\\\b(?<!\\\\.)as\\\\b(?=.*[:\\\\\\\\])\",\"name\":\"keyword.control.flow.python\"},{\"match\":\"\\\\b(?<!\\\\.)as\\\\b\",\"name\":\"keyword.control.import.python\"},{\"match\":\"\\\\b(?<!\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\b\",\"name\":\"keyword.control.flow.python\"},{\"match\":\"\\\\b(?<!\\\\.)(global|nonlocal)\\\\b\",\"name\":\"storage.modifier.declaration.python\"},{\"match\":\"\\\\b(?<!\\\\.)(class)\\\\b\",\"name\":\"storage.type.class.python\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.python\"}},\"match\":\"^\\\\s*(case|match)(?=\\\\s*([-\\\"#'(+:\\\\[{\\\\w\\\\d]|$))\\\\b\"}]},\"string\":{\"patterns\":[{\"include\":\"#string-quoted-multi-line\"},{\"include\":\"#string-quoted-single-line\"},{\"include\":\"#string-bin-quoted-multi-line\"},{\"include\":\"#string-bin-quoted-single-line\"},{\"include\":\"#string-raw-quoted-multi-line\"},{\"include\":\"#string-raw-quoted-single-line\"},{\"include\":\"#string-raw-bin-quoted-multi-line\"},{\"include\":\"#string-raw-bin-quoted-single-line\"},{\"include\":\"#fstring-fnorm-quoted-multi-line\"},{\"include\":\"#fstring-fnorm-quoted-single-line\"},{\"include\":\"#fstring-normf-quoted-multi-line\"},{\"include\":\"#fstring-normf-quoted-single-line\"},{\"include\":\"#fstring-raw-quoted-multi-line\"},{\"include\":\"#fstring-raw-quoted-single-line\"}]},\"string-bin-quoted-multi-line\":{\"begin\":\"\\\\b([Bb])('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.binary.multi.python\",\"patterns\":[{\"include\":\"#string-entity\"}]},\"string-bin-quoted-single-line\":{\"begin\":\"\\\\b([Bb])(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.binary.single.python\",\"patterns\":[{\"include\":\"#string-entity\"}]},\"string-brace-formatting\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"},\"3\":{\"name\":\"storage.type.format.python\"},\"4\":{\"name\":\"storage.type.format.python\"}},\"match\":\"(\\\\{\\\\{|}}|\\\\{\\\\w*(\\\\.[_[:alpha:]]\\\\w*|\\\\[[^]\\\"']+])*(![ars])?(:\\\\w?[<=>^]?[- +]?#?\\\\d*,?(\\\\.\\\\d+)?[%EFGXb-gnosx]?)?})\",\"name\":\"meta.format.brace.python\"},{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"},\"3\":{\"name\":\"storage.type.format.python\"},\"4\":{\"name\":\"storage.type.format.python\"}},\"match\":\"(\\\\{\\\\w*(\\\\.[_[:alpha:]]\\\\w*|\\\\[[^]\\\"']+])*(![ars])?(:)[^\\\\n\\\"'{}]*(?:\\\\{[^\\\\n\\\"'}]*?}[^\\\\n\\\"'{}]*)*})\",\"name\":\"meta.format.brace.python\"}]},\"string-consume-escape\":{\"match\":\"\\\\\\\\[\\\\n\\\"'\\\\\\\\]\"},\"string-entity\":{\"patterns\":[{\"include\":\"#escape-sequence\"},{\"include\":\"#string-line-continuation\"},{\"include\":\"#string-formatting\"}]},\"string-formatting\":{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.python\"}},\"match\":\"(%(\\\\([\\\\w\\\\s]*\\\\))?[- #+0]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([Lhl])?[%EFGXa-giorsux])\",\"name\":\"meta.format.percent.python\"},\"string-line-continuation\":{\"match\":\"\\\\\\\\$\",\"name\":\"constant.language.python\"},\"string-multi-bad-brace1-formatting-raw\":{\"begin\":\"(?=\\\\{%(.*?(?!'''|\\\"\\\"\\\"))%})\",\"end\":\"(?='''|\\\"\\\"\\\")\",\"patterns\":[{\"include\":\"#string-consume-escape\"}]},\"string-multi-bad-brace1-formatting-unicode\":{\"begin\":\"(?=\\\\{%(.*?(?!'''|\\\"\\\"\\\"))%})\",\"end\":\"(?='''|\\\"\\\"\\\")\",\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#escape-sequence\"},{\"include\":\"#string-line-continuation\"}]},\"string-multi-bad-brace2-formatting-raw\":{\"begin\":\"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\\"\\\"\\\")[^!.:\\\\[}\\\\w]).*?(?!'''|\\\"\\\"\\\")})\",\"end\":\"(?='''|\\\"\\\"\\\")\",\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#string-formatting\"}]},\"string-multi-bad-brace2-formatting-unicode\":{\"begin\":\"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\\"\\\"\\\")[^!.:\\\\[}\\\\w]).*?(?!'''|\\\"\\\"\\\")})\",\"end\":\"(?='''|\\\"\\\"\\\")\",\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#string-entity\"}]},\"string-quoted-multi-line\":{\"begin\":\"(?:\\\\b([Rr])(?=[Uu]))?([Uu])?('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.prefix.python\"},\"2\":{\"name\":\"storage.type.string.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\3)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.multi.python\",\"patterns\":[{\"include\":\"#string-multi-bad-brace1-formatting-unicode\"},{\"include\":\"#string-multi-bad-brace2-formatting-unicode\"},{\"include\":\"#string-unicode-guts\"}]},\"string-quoted-single-line\":{\"begin\":\"(?:\\\\b([Rr])(?=[Uu]))?([Uu])?(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"invalid.illegal.prefix.python\"},\"2\":{\"name\":\"storage.type.string.python\"},\"3\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\3)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.single.python\",\"patterns\":[{\"include\":\"#string-single-bad-brace1-formatting-unicode\"},{\"include\":\"#string-single-bad-brace2-formatting-unicode\"},{\"include\":\"#string-unicode-guts\"}]},\"string-raw-bin-guts\":{\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#string-formatting\"}]},\"string-raw-bin-quoted-multi-line\":{\"begin\":\"\\\\b(R[Bb]|[Bb]R)('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.raw.binary.multi.python\",\"patterns\":[{\"include\":\"#string-raw-bin-guts\"}]},\"string-raw-bin-quoted-single-line\":{\"begin\":\"\\\\b(R[Bb]|[Bb]R)(([\\\"']))\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.string.python\"},\"2\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\2)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.raw.binary.single.python\",\"patterns\":[{\"include\":\"#string-raw-bin-guts\"}]},\"string-raw-guts\":{\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#string-formatting\"},{\"include\":\"#string-brace-formatting\"}]},\"string-raw-quoted-multi-line\":{\"begin\":\"\\\\b(([Uu]R)|(R))('''|\\\"\\\"\\\")\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\4)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.raw.multi.python\",\"patterns\":[{\"include\":\"#string-multi-bad-brace1-formatting-raw\"},{\"include\":\"#string-multi-bad-brace2-formatting-raw\"},{\"include\":\"#string-raw-guts\"}]},\"string-raw-quoted-single-line\":{\"begin\":\"\\\\b(([Uu]R)|(R))(([\\\"']))\",\"beginCaptures\":{\"2\":{\"name\":\"invalid.deprecated.prefix.python\"},\"3\":{\"name\":\"storage.type.string.python\"},\"4\":{\"name\":\"punctuation.definition.string.begin.python\"}},\"end\":\"(\\\\4)|((?<!\\\\\\\\)\\\\n)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.python\"},\"2\":{\"name\":\"invalid.illegal.newline.python\"}},\"name\":\"string.quoted.raw.single.python\",\"patterns\":[{\"include\":\"#string-single-bad-brace1-formatting-raw\"},{\"include\":\"#string-single-bad-brace2-formatting-raw\"},{\"include\":\"#string-raw-guts\"}]},\"string-single-bad-brace1-formatting-raw\":{\"begin\":\"(?=\\\\{%(.*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n)))%})\",\"end\":\"(?=([\\\"'])|((?<!\\\\\\\\)\\\\n))\",\"patterns\":[{\"include\":\"#string-consume-escape\"}]},\"string-single-bad-brace1-formatting-unicode\":{\"begin\":\"(?=\\\\{%(.*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n)))%})\",\"end\":\"(?=([\\\"'])|((?<!\\\\\\\\)\\\\n))\",\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#escape-sequence\"},{\"include\":\"#string-line-continuation\"}]},\"string-single-bad-brace2-formatting-raw\":{\"begin\":\"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n))[^!.:\\\\[}\\\\w]).*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n))})\",\"end\":\"(?=([\\\"'])|((?<!\\\\\\\\)\\\\n))\",\"patterns\":[{\"include\":\"#string-consume-escape\"},{\"include\":\"#string-formatting\"}]},\"string-single-bad-brace2-formatting-unicode\":{\"begin\":\"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n))[^!.:\\\\[}\\\\w]).*?(?!([\\\"'])|((?<!\\\\\\\\)\\\\n))})\",\"end\":\"(?=([\\\"'])|((?<!\\\\\\\\)\\\\n))\",\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#string-entity\"}]},\"string-unicode-guts\":{\"patterns\":[{\"include\":\"#escape-sequence-unicode\"},{\"include\":\"#string-entity\"},{\"include\":\"#string-brace-formatting\"}]}},\"scopeName\":\"source.python\",\"aliases\":[\"py\"]}"))];
2
+ //#endregion
3
+ export { e as default };