@forgeax/view 0.2.1-beta-20260924075842

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 (585) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +742 -0
  3. package/dist/modules/backend.mjs +54 -0
  4. package/dist/modules/backend.mjs.map +7 -0
  5. package/dist/modules/browser.mjs +180 -0
  6. package/dist/modules/browser.mjs.map +7 -0
  7. package/dist/modules/carrier-contract.mjs +38 -0
  8. package/dist/modules/carrier-contract.mjs.map +7 -0
  9. package/dist/modules/carrier.mjs +13 -0
  10. package/dist/modules/carrier.mjs.map +7 -0
  11. package/dist/modules/chunks/chunk-2ASWB6IX.mjs +225 -0
  12. package/dist/modules/chunks/chunk-2ASWB6IX.mjs.map +7 -0
  13. package/dist/modules/chunks/chunk-2IJKOG2F.mjs +801 -0
  14. package/dist/modules/chunks/chunk-2IJKOG2F.mjs.map +7 -0
  15. package/dist/modules/chunks/chunk-2K3BBJ5S.mjs +9 -0
  16. package/dist/modules/chunks/chunk-2K3BBJ5S.mjs.map +7 -0
  17. package/dist/modules/chunks/chunk-32GD5LL6.mjs +482 -0
  18. package/dist/modules/chunks/chunk-32GD5LL6.mjs.map +7 -0
  19. package/dist/modules/chunks/chunk-3B4KFAEC.mjs +10 -0
  20. package/dist/modules/chunks/chunk-3B4KFAEC.mjs.map +7 -0
  21. package/dist/modules/chunks/chunk-46O5WX43.mjs +25 -0
  22. package/dist/modules/chunks/chunk-46O5WX43.mjs.map +7 -0
  23. package/dist/modules/chunks/chunk-47J5JXAB.mjs +237 -0
  24. package/dist/modules/chunks/chunk-47J5JXAB.mjs.map +7 -0
  25. package/dist/modules/chunks/chunk-4BXQOUDQ.mjs +17 -0
  26. package/dist/modules/chunks/chunk-4BXQOUDQ.mjs.map +7 -0
  27. package/dist/modules/chunks/chunk-4GQWYU2V.mjs +126 -0
  28. package/dist/modules/chunks/chunk-4GQWYU2V.mjs.map +7 -0
  29. package/dist/modules/chunks/chunk-4N5X2PRQ.mjs +48 -0
  30. package/dist/modules/chunks/chunk-4N5X2PRQ.mjs.map +7 -0
  31. package/dist/modules/chunks/chunk-4WXD2KYX.mjs +56 -0
  32. package/dist/modules/chunks/chunk-4WXD2KYX.mjs.map +7 -0
  33. package/dist/modules/chunks/chunk-6ZWWVAZK.mjs +468 -0
  34. package/dist/modules/chunks/chunk-6ZWWVAZK.mjs.map +7 -0
  35. package/dist/modules/chunks/chunk-73UZNRHN.mjs +296 -0
  36. package/dist/modules/chunks/chunk-73UZNRHN.mjs.map +7 -0
  37. package/dist/modules/chunks/chunk-7ITLCRND.mjs +10 -0
  38. package/dist/modules/chunks/chunk-7ITLCRND.mjs.map +7 -0
  39. package/dist/modules/chunks/chunk-7TGVWKH7.mjs +59 -0
  40. package/dist/modules/chunks/chunk-7TGVWKH7.mjs.map +7 -0
  41. package/dist/modules/chunks/chunk-7URFF53W.mjs +42 -0
  42. package/dist/modules/chunks/chunk-7URFF53W.mjs.map +7 -0
  43. package/dist/modules/chunks/chunk-7YSDRIFN.mjs +14 -0
  44. package/dist/modules/chunks/chunk-7YSDRIFN.mjs.map +7 -0
  45. package/dist/modules/chunks/chunk-AAFVCQPK.mjs +52 -0
  46. package/dist/modules/chunks/chunk-AAFVCQPK.mjs.map +7 -0
  47. package/dist/modules/chunks/chunk-AEK7ZESQ.mjs +18 -0
  48. package/dist/modules/chunks/chunk-AEK7ZESQ.mjs.map +7 -0
  49. package/dist/modules/chunks/chunk-AL6ZWIEU.mjs +42 -0
  50. package/dist/modules/chunks/chunk-AL6ZWIEU.mjs.map +7 -0
  51. package/dist/modules/chunks/chunk-ALT7XVMQ.mjs +73 -0
  52. package/dist/modules/chunks/chunk-ALT7XVMQ.mjs.map +7 -0
  53. package/dist/modules/chunks/chunk-ASI2HBE6.mjs +116 -0
  54. package/dist/modules/chunks/chunk-ASI2HBE6.mjs.map +7 -0
  55. package/dist/modules/chunks/chunk-ATWGCH7I.mjs +174 -0
  56. package/dist/modules/chunks/chunk-ATWGCH7I.mjs.map +7 -0
  57. package/dist/modules/chunks/chunk-C45U6IIY.mjs +692 -0
  58. package/dist/modules/chunks/chunk-C45U6IIY.mjs.map +7 -0
  59. package/dist/modules/chunks/chunk-C7R3YRA7.mjs +98 -0
  60. package/dist/modules/chunks/chunk-C7R3YRA7.mjs.map +7 -0
  61. package/dist/modules/chunks/chunk-CRMICXKN.mjs +87 -0
  62. package/dist/modules/chunks/chunk-CRMICXKN.mjs.map +7 -0
  63. package/dist/modules/chunks/chunk-CUH2G6UF.mjs +81 -0
  64. package/dist/modules/chunks/chunk-CUH2G6UF.mjs.map +7 -0
  65. package/dist/modules/chunks/chunk-D7GWRZLL.mjs +77 -0
  66. package/dist/modules/chunks/chunk-D7GWRZLL.mjs.map +7 -0
  67. package/dist/modules/chunks/chunk-DBWUIBE3.mjs +10 -0
  68. package/dist/modules/chunks/chunk-DBWUIBE3.mjs.map +7 -0
  69. package/dist/modules/chunks/chunk-DQWVWWUU.mjs +77 -0
  70. package/dist/modules/chunks/chunk-DQWVWWUU.mjs.map +7 -0
  71. package/dist/modules/chunks/chunk-DZZ2WFEU.mjs +122 -0
  72. package/dist/modules/chunks/chunk-DZZ2WFEU.mjs.map +7 -0
  73. package/dist/modules/chunks/chunk-E4UIAN26.mjs +58 -0
  74. package/dist/modules/chunks/chunk-E4UIAN26.mjs.map +7 -0
  75. package/dist/modules/chunks/chunk-EJGBVKFE.mjs +77 -0
  76. package/dist/modules/chunks/chunk-EJGBVKFE.mjs.map +7 -0
  77. package/dist/modules/chunks/chunk-EPSTTHWV.mjs +173 -0
  78. package/dist/modules/chunks/chunk-EPSTTHWV.mjs.map +7 -0
  79. package/dist/modules/chunks/chunk-ER7T6QJ3.mjs +64 -0
  80. package/dist/modules/chunks/chunk-ER7T6QJ3.mjs.map +7 -0
  81. package/dist/modules/chunks/chunk-FD4BAJ6K.mjs +389 -0
  82. package/dist/modules/chunks/chunk-FD4BAJ6K.mjs.map +7 -0
  83. package/dist/modules/chunks/chunk-FJM6WWIY.mjs +80 -0
  84. package/dist/modules/chunks/chunk-FJM6WWIY.mjs.map +7 -0
  85. package/dist/modules/chunks/chunk-FKCQYDLX.mjs +162 -0
  86. package/dist/modules/chunks/chunk-FKCQYDLX.mjs.map +7 -0
  87. package/dist/modules/chunks/chunk-FLGC65SR.mjs +10 -0
  88. package/dist/modules/chunks/chunk-FLGC65SR.mjs.map +7 -0
  89. package/dist/modules/chunks/chunk-FMCACPX5.mjs +289 -0
  90. package/dist/modules/chunks/chunk-FMCACPX5.mjs.map +7 -0
  91. package/dist/modules/chunks/chunk-FOBRLUQV.mjs +51 -0
  92. package/dist/modules/chunks/chunk-FOBRLUQV.mjs.map +7 -0
  93. package/dist/modules/chunks/chunk-FV3DSKZB.mjs +33 -0
  94. package/dist/modules/chunks/chunk-FV3DSKZB.mjs.map +7 -0
  95. package/dist/modules/chunks/chunk-G7BAFAGO.mjs +98 -0
  96. package/dist/modules/chunks/chunk-G7BAFAGO.mjs.map +7 -0
  97. package/dist/modules/chunks/chunk-GQBZMCTK.mjs +145 -0
  98. package/dist/modules/chunks/chunk-GQBZMCTK.mjs.map +7 -0
  99. package/dist/modules/chunks/chunk-GYWIY7AL.mjs +131 -0
  100. package/dist/modules/chunks/chunk-GYWIY7AL.mjs.map +7 -0
  101. package/dist/modules/chunks/chunk-H3KNBALD.mjs +256 -0
  102. package/dist/modules/chunks/chunk-H3KNBALD.mjs.map +7 -0
  103. package/dist/modules/chunks/chunk-H3M22JDL.mjs +144 -0
  104. package/dist/modules/chunks/chunk-H3M22JDL.mjs.map +7 -0
  105. package/dist/modules/chunks/chunk-HES3DNTM.mjs +40 -0
  106. package/dist/modules/chunks/chunk-HES3DNTM.mjs.map +7 -0
  107. package/dist/modules/chunks/chunk-I5BFP7SS.mjs +2392 -0
  108. package/dist/modules/chunks/chunk-I5BFP7SS.mjs.map +7 -0
  109. package/dist/modules/chunks/chunk-IGRMZYRD.mjs +15 -0
  110. package/dist/modules/chunks/chunk-IGRMZYRD.mjs.map +7 -0
  111. package/dist/modules/chunks/chunk-IKNGC766.mjs +321 -0
  112. package/dist/modules/chunks/chunk-IKNGC766.mjs.map +7 -0
  113. package/dist/modules/chunks/chunk-IVHNYKZB.mjs +35 -0
  114. package/dist/modules/chunks/chunk-IVHNYKZB.mjs.map +7 -0
  115. package/dist/modules/chunks/chunk-JHOURMYW.mjs +101 -0
  116. package/dist/modules/chunks/chunk-JHOURMYW.mjs.map +7 -0
  117. package/dist/modules/chunks/chunk-JURXMRFA.mjs +282 -0
  118. package/dist/modules/chunks/chunk-JURXMRFA.mjs.map +7 -0
  119. package/dist/modules/chunks/chunk-JWZIREC3.mjs +18 -0
  120. package/dist/modules/chunks/chunk-JWZIREC3.mjs.map +7 -0
  121. package/dist/modules/chunks/chunk-KHRTIZ56.mjs +1400 -0
  122. package/dist/modules/chunks/chunk-KHRTIZ56.mjs.map +7 -0
  123. package/dist/modules/chunks/chunk-KLJZZ23J.mjs +102 -0
  124. package/dist/modules/chunks/chunk-KLJZZ23J.mjs.map +7 -0
  125. package/dist/modules/chunks/chunk-KNBAYU5I.mjs +49 -0
  126. package/dist/modules/chunks/chunk-KNBAYU5I.mjs.map +7 -0
  127. package/dist/modules/chunks/chunk-KSZNCFU4.mjs +125 -0
  128. package/dist/modules/chunks/chunk-KSZNCFU4.mjs.map +7 -0
  129. package/dist/modules/chunks/chunk-L45W6KM6.mjs +158 -0
  130. package/dist/modules/chunks/chunk-L45W6KM6.mjs.map +7 -0
  131. package/dist/modules/chunks/chunk-LERMYZRC.mjs +239 -0
  132. package/dist/modules/chunks/chunk-LERMYZRC.mjs.map +7 -0
  133. package/dist/modules/chunks/chunk-LKJCXYSJ.mjs +91 -0
  134. package/dist/modules/chunks/chunk-LKJCXYSJ.mjs.map +7 -0
  135. package/dist/modules/chunks/chunk-MBS3EICT.mjs +25 -0
  136. package/dist/modules/chunks/chunk-MBS3EICT.mjs.map +7 -0
  137. package/dist/modules/chunks/chunk-MUOQZPVH.mjs +609 -0
  138. package/dist/modules/chunks/chunk-MUOQZPVH.mjs.map +7 -0
  139. package/dist/modules/chunks/chunk-MVEPGFSB.mjs +1 -0
  140. package/dist/modules/chunks/chunk-MVEPGFSB.mjs.map +7 -0
  141. package/dist/modules/chunks/chunk-NBJKLWJ5.mjs +42 -0
  142. package/dist/modules/chunks/chunk-NBJKLWJ5.mjs.map +7 -0
  143. package/dist/modules/chunks/chunk-NBLGKTEM.mjs +86 -0
  144. package/dist/modules/chunks/chunk-NBLGKTEM.mjs.map +7 -0
  145. package/dist/modules/chunks/chunk-NI7CS3I2.mjs +110 -0
  146. package/dist/modules/chunks/chunk-NI7CS3I2.mjs.map +7 -0
  147. package/dist/modules/chunks/chunk-NJH2OJFC.mjs +2113 -0
  148. package/dist/modules/chunks/chunk-NJH2OJFC.mjs.map +7 -0
  149. package/dist/modules/chunks/chunk-OBK4LIJB.mjs +20 -0
  150. package/dist/modules/chunks/chunk-OBK4LIJB.mjs.map +7 -0
  151. package/dist/modules/chunks/chunk-PEUT3FW7.mjs +1 -0
  152. package/dist/modules/chunks/chunk-PEUT3FW7.mjs.map +7 -0
  153. package/dist/modules/chunks/chunk-PRZOWPDN.mjs +66 -0
  154. package/dist/modules/chunks/chunk-PRZOWPDN.mjs.map +7 -0
  155. package/dist/modules/chunks/chunk-Q4RXBGQS.mjs +55 -0
  156. package/dist/modules/chunks/chunk-Q4RXBGQS.mjs.map +7 -0
  157. package/dist/modules/chunks/chunk-QBHBKOIL.mjs +55 -0
  158. package/dist/modules/chunks/chunk-QBHBKOIL.mjs.map +7 -0
  159. package/dist/modules/chunks/chunk-QD6CCRMG.mjs +20 -0
  160. package/dist/modules/chunks/chunk-QD6CCRMG.mjs.map +7 -0
  161. package/dist/modules/chunks/chunk-QF4V23GW.mjs +39 -0
  162. package/dist/modules/chunks/chunk-QF4V23GW.mjs.map +7 -0
  163. package/dist/modules/chunks/chunk-QK6W7MJO.mjs +42 -0
  164. package/dist/modules/chunks/chunk-QK6W7MJO.mjs.map +7 -0
  165. package/dist/modules/chunks/chunk-QL7V6DK7.mjs +34 -0
  166. package/dist/modules/chunks/chunk-QL7V6DK7.mjs.map +7 -0
  167. package/dist/modules/chunks/chunk-QLBQQKRI.mjs +25 -0
  168. package/dist/modules/chunks/chunk-QLBQQKRI.mjs.map +7 -0
  169. package/dist/modules/chunks/chunk-QLZQGZDC.mjs +418 -0
  170. package/dist/modules/chunks/chunk-QLZQGZDC.mjs.map +7 -0
  171. package/dist/modules/chunks/chunk-QSKQZGK7.mjs +1625 -0
  172. package/dist/modules/chunks/chunk-QSKQZGK7.mjs.map +7 -0
  173. package/dist/modules/chunks/chunk-QURKBAG4.mjs +25 -0
  174. package/dist/modules/chunks/chunk-QURKBAG4.mjs.map +7 -0
  175. package/dist/modules/chunks/chunk-R274XBEH.mjs +53 -0
  176. package/dist/modules/chunks/chunk-R274XBEH.mjs.map +7 -0
  177. package/dist/modules/chunks/chunk-R4I4JEY5.mjs +77 -0
  178. package/dist/modules/chunks/chunk-R4I4JEY5.mjs.map +7 -0
  179. package/dist/modules/chunks/chunk-RR6L6VVR.mjs +9 -0
  180. package/dist/modules/chunks/chunk-RR6L6VVR.mjs.map +7 -0
  181. package/dist/modules/chunks/chunk-RXF7SBBZ.mjs +125 -0
  182. package/dist/modules/chunks/chunk-RXF7SBBZ.mjs.map +7 -0
  183. package/dist/modules/chunks/chunk-SR66S6EJ.mjs +138 -0
  184. package/dist/modules/chunks/chunk-SR66S6EJ.mjs.map +7 -0
  185. package/dist/modules/chunks/chunk-SSQMQJ52.mjs +27 -0
  186. package/dist/modules/chunks/chunk-SSQMQJ52.mjs.map +7 -0
  187. package/dist/modules/chunks/chunk-TP26TASL.mjs +20 -0
  188. package/dist/modules/chunks/chunk-TP26TASL.mjs.map +7 -0
  189. package/dist/modules/chunks/chunk-TSAEK5P3.mjs +50 -0
  190. package/dist/modules/chunks/chunk-TSAEK5P3.mjs.map +7 -0
  191. package/dist/modules/chunks/chunk-UAY27HT3.mjs +68 -0
  192. package/dist/modules/chunks/chunk-UAY27HT3.mjs.map +7 -0
  193. package/dist/modules/chunks/chunk-UDLIWGWS.mjs +103 -0
  194. package/dist/modules/chunks/chunk-UDLIWGWS.mjs.map +7 -0
  195. package/dist/modules/chunks/chunk-UDVQHPWV.mjs +89 -0
  196. package/dist/modules/chunks/chunk-UDVQHPWV.mjs.map +7 -0
  197. package/dist/modules/chunks/chunk-UM23W3G7.mjs +237 -0
  198. package/dist/modules/chunks/chunk-UM23W3G7.mjs.map +7 -0
  199. package/dist/modules/chunks/chunk-VDZJWEAA.mjs +214 -0
  200. package/dist/modules/chunks/chunk-VDZJWEAA.mjs.map +7 -0
  201. package/dist/modules/chunks/chunk-VIGOJWSO.mjs +42 -0
  202. package/dist/modules/chunks/chunk-VIGOJWSO.mjs.map +7 -0
  203. package/dist/modules/chunks/chunk-VY3S5BWI.mjs +284 -0
  204. package/dist/modules/chunks/chunk-VY3S5BWI.mjs.map +7 -0
  205. package/dist/modules/chunks/chunk-VZXGRZYU.mjs +47 -0
  206. package/dist/modules/chunks/chunk-VZXGRZYU.mjs.map +7 -0
  207. package/dist/modules/chunks/chunk-W5DMQZB5.mjs +42 -0
  208. package/dist/modules/chunks/chunk-W5DMQZB5.mjs.map +7 -0
  209. package/dist/modules/chunks/chunk-WOMHSTVZ.mjs +918 -0
  210. package/dist/modules/chunks/chunk-WOMHSTVZ.mjs.map +7 -0
  211. package/dist/modules/chunks/chunk-XFQT7XCG.mjs +42 -0
  212. package/dist/modules/chunks/chunk-XFQT7XCG.mjs.map +7 -0
  213. package/dist/modules/chunks/chunk-XJZEVRYX.mjs +98 -0
  214. package/dist/modules/chunks/chunk-XJZEVRYX.mjs.map +7 -0
  215. package/dist/modules/chunks/chunk-XUYFV23R.mjs +317 -0
  216. package/dist/modules/chunks/chunk-XUYFV23R.mjs.map +7 -0
  217. package/dist/modules/chunks/chunk-Y5HXCPPQ.mjs +58 -0
  218. package/dist/modules/chunks/chunk-Y5HXCPPQ.mjs.map +7 -0
  219. package/dist/modules/chunks/chunk-YTHGRKGI.mjs +147 -0
  220. package/dist/modules/chunks/chunk-YTHGRKGI.mjs.map +7 -0
  221. package/dist/modules/chunks/chunk-YVQSDKAO.mjs +341 -0
  222. package/dist/modules/chunks/chunk-YVQSDKAO.mjs.map +7 -0
  223. package/dist/modules/chunks/chunk-YYXQDUVT.mjs +123 -0
  224. package/dist/modules/chunks/chunk-YYXQDUVT.mjs.map +7 -0
  225. package/dist/modules/chunks/chunk-ZFXZ2NUI.mjs +142 -0
  226. package/dist/modules/chunks/chunk-ZFXZ2NUI.mjs.map +7 -0
  227. package/dist/modules/chunks/chunk-ZLNWF4ET.mjs +9 -0
  228. package/dist/modules/chunks/chunk-ZLNWF4ET.mjs.map +7 -0
  229. package/dist/modules/chunks/chunk-ZLU5QW2O.mjs +9 -0
  230. package/dist/modules/chunks/chunk-ZLU5QW2O.mjs.map +7 -0
  231. package/dist/modules/chunks/chunk-ZNZPYE2V.mjs +28 -0
  232. package/dist/modules/chunks/chunk-ZNZPYE2V.mjs.map +7 -0
  233. package/dist/modules/chunks/core-564N45MO.mjs +7480 -0
  234. package/dist/modules/chunks/core-564N45MO.mjs.map +7 -0
  235. package/dist/modules/chunks/css-BKH4SVJG.mjs +8 -0
  236. package/dist/modules/chunks/css-BKH4SVJG.mjs.map +7 -0
  237. package/dist/modules/chunks/engine-javascript-PDVIGNGR.mjs +3241 -0
  238. package/dist/modules/chunks/engine-javascript-PDVIGNGR.mjs.map +7 -0
  239. package/dist/modules/chunks/github-dark-default-6HVTHEWF.mjs +8 -0
  240. package/dist/modules/chunks/github-dark-default-6HVTHEWF.mjs.map +7 -0
  241. package/dist/modules/chunks/github-light-default-LAXRA6XL.mjs +8 -0
  242. package/dist/modules/chunks/github-light-default-LAXRA6XL.mjs.map +7 -0
  243. package/dist/modules/chunks/glsl-UC3YWUD2.mjs +18 -0
  244. package/dist/modules/chunks/glsl-UC3YWUD2.mjs.map +7 -0
  245. package/dist/modules/chunks/html-FRVIUV63.mjs +19 -0
  246. package/dist/modules/chunks/html-FRVIUV63.mjs.map +7 -0
  247. package/dist/modules/chunks/javascript-LN3OC7S2.mjs +8 -0
  248. package/dist/modules/chunks/javascript-LN3OC7S2.mjs.map +7 -0
  249. package/dist/modules/chunks/json-5CUGWTOP.mjs +11 -0
  250. package/dist/modules/chunks/json-5CUGWTOP.mjs.map +7 -0
  251. package/dist/modules/chunks/json5-YZQI5VNO.mjs +11 -0
  252. package/dist/modules/chunks/json5-YZQI5VNO.mjs.map +7 -0
  253. package/dist/modules/chunks/jsonc-SWID6VOZ.mjs +11 -0
  254. package/dist/modules/chunks/jsonc-SWID6VOZ.mjs.map +7 -0
  255. package/dist/modules/chunks/jsx-A7RDCLJO.mjs +11 -0
  256. package/dist/modules/chunks/jsx-A7RDCLJO.mjs.map +7 -0
  257. package/dist/modules/chunks/markdown-QTCU5KP5.mjs +11 -0
  258. package/dist/modules/chunks/markdown-QTCU5KP5.mjs.map +7 -0
  259. package/dist/modules/chunks/python-LAZONBIB.mjs +11 -0
  260. package/dist/modules/chunks/python-LAZONBIB.mjs.map +7 -0
  261. package/dist/modules/chunks/rust-XWTPJFJO.mjs +11 -0
  262. package/dist/modules/chunks/rust-XWTPJFJO.mjs.map +7 -0
  263. package/dist/modules/chunks/scss-CFXRHUUW.mjs +15 -0
  264. package/dist/modules/chunks/scss-CFXRHUUW.mjs.map +7 -0
  265. package/dist/modules/chunks/shellscript-OHO3LCVU.mjs +11 -0
  266. package/dist/modules/chunks/shellscript-OHO3LCVU.mjs.map +7 -0
  267. package/dist/modules/chunks/toml-IOHFZJ5B.mjs +11 -0
  268. package/dist/modules/chunks/toml-IOHFZJ5B.mjs.map +7 -0
  269. package/dist/modules/chunks/tsx-2E6WNX2E.mjs +11 -0
  270. package/dist/modules/chunks/tsx-2E6WNX2E.mjs.map +7 -0
  271. package/dist/modules/chunks/typescript-PBKAS54P.mjs +11 -0
  272. package/dist/modules/chunks/typescript-PBKAS54P.mjs.map +7 -0
  273. package/dist/modules/chunks/wgsl-PS6QPRLZ.mjs +11 -0
  274. package/dist/modules/chunks/wgsl-PS6QPRLZ.mjs.map +7 -0
  275. package/dist/modules/chunks/xml-JECR2ACB.mjs +18 -0
  276. package/dist/modules/chunks/xml-JECR2ACB.mjs.map +7 -0
  277. package/dist/modules/chunks/yaml-P2SV4LOE.mjs +11 -0
  278. package/dist/modules/chunks/yaml-P2SV4LOE.mjs.map +7 -0
  279. package/dist/modules/cli-contributions.mjs +32 -0
  280. package/dist/modules/cli-contributions.mjs.map +7 -0
  281. package/dist/modules/cli.mjs +14 -0
  282. package/dist/modules/cli.mjs.map +7 -0
  283. package/dist/modules/command-executor.mjs +65 -0
  284. package/dist/modules/command-executor.mjs.map +7 -0
  285. package/dist/modules/commands.mjs +10 -0
  286. package/dist/modules/commands.mjs.map +7 -0
  287. package/dist/modules/embedded.mjs +18608 -0
  288. package/dist/modules/embedded.mjs.map +7 -0
  289. package/dist/modules/extension-bridge.mjs +18 -0
  290. package/dist/modules/extension-bridge.mjs.map +7 -0
  291. package/dist/modules/frontend-root.mjs +61 -0
  292. package/dist/modules/frontend-root.mjs.map +7 -0
  293. package/dist/modules/index.mjs +784 -0
  294. package/dist/modules/index.mjs.map +7 -0
  295. package/dist/modules/page.mjs +45 -0
  296. package/dist/modules/page.mjs.map +7 -0
  297. package/dist/modules/pages/scene.mjs +18 -0
  298. package/dist/modules/pages/scene.mjs.map +7 -0
  299. package/dist/modules/plugin.mjs +56 -0
  300. package/dist/modules/plugin.mjs.map +7 -0
  301. package/dist/modules/plugins/asset/frontend.mjs +23 -0
  302. package/dist/modules/plugins/asset/frontend.mjs.map +7 -0
  303. package/dist/modules/plugins/asset/i18n.mjs +15 -0
  304. package/dist/modules/plugins/asset/i18n.mjs.map +7 -0
  305. package/dist/modules/plugins/asset/identity.mjs +42 -0
  306. package/dist/modules/plugins/asset/identity.mjs.map +7 -0
  307. package/dist/modules/plugins/asset/schema.mjs +10 -0
  308. package/dist/modules/plugins/asset/schema.mjs.map +7 -0
  309. package/dist/modules/plugins/asset/ui.mjs +16 -0
  310. package/dist/modules/plugins/asset/ui.mjs.map +7 -0
  311. package/dist/modules/plugins/content-browser/frontend.mjs +17 -0
  312. package/dist/modules/plugins/content-browser/frontend.mjs.map +7 -0
  313. package/dist/modules/plugins/content-browser/i18n.mjs +15 -0
  314. package/dist/modules/plugins/content-browser/i18n.mjs.map +7 -0
  315. package/dist/modules/plugins/content-browser/identity.mjs +22 -0
  316. package/dist/modules/plugins/content-browser/identity.mjs.map +7 -0
  317. package/dist/modules/plugins/content-browser/schema.mjs +12 -0
  318. package/dist/modules/plugins/content-browser/schema.mjs.map +7 -0
  319. package/dist/modules/plugins/content-browser/ui.mjs +15 -0
  320. package/dist/modules/plugins/content-browser/ui.mjs.map +7 -0
  321. package/dist/modules/plugins/display/api.mjs +10 -0
  322. package/dist/modules/plugins/display/api.mjs.map +7 -0
  323. package/dist/modules/plugins/display/backend.mjs +16 -0
  324. package/dist/modules/plugins/display/backend.mjs.map +7 -0
  325. package/dist/modules/plugins/display/carrier-contract.mjs +38 -0
  326. package/dist/modules/plugins/display/carrier-contract.mjs.map +7 -0
  327. package/dist/modules/plugins/display/carrier.mjs +13 -0
  328. package/dist/modules/plugins/display/carrier.mjs.map +7 -0
  329. package/dist/modules/plugins/display/effects.mjs +8 -0
  330. package/dist/modules/plugins/display/effects.mjs.map +7 -0
  331. package/dist/modules/plugins/display/frontend.mjs +14 -0
  332. package/dist/modules/plugins/display/frontend.mjs.map +7 -0
  333. package/dist/modules/plugins/display/i18n.mjs +58 -0
  334. package/dist/modules/plugins/display/i18n.mjs.map +7 -0
  335. package/dist/modules/plugins/display/identity.mjs +30 -0
  336. package/dist/modules/plugins/display/identity.mjs.map +7 -0
  337. package/dist/modules/plugins/display/page-broker.mjs +12 -0
  338. package/dist/modules/plugins/display/page-broker.mjs.map +7 -0
  339. package/dist/modules/plugins/display/schema.mjs +40 -0
  340. package/dist/modules/plugins/display/schema.mjs.map +7 -0
  341. package/dist/modules/plugins/display/ui.mjs +9 -0
  342. package/dist/modules/plugins/display/ui.mjs.map +7 -0
  343. package/dist/modules/plugins/inspector/frontend.mjs +17 -0
  344. package/dist/modules/plugins/inspector/frontend.mjs.map +7 -0
  345. package/dist/modules/plugins/inspector/i18n.mjs +15 -0
  346. package/dist/modules/plugins/inspector/i18n.mjs.map +7 -0
  347. package/dist/modules/plugins/inspector/identity.mjs +22 -0
  348. package/dist/modules/plugins/inspector/identity.mjs.map +7 -0
  349. package/dist/modules/plugins/inspector/schema.mjs +12 -0
  350. package/dist/modules/plugins/inspector/schema.mjs.map +7 -0
  351. package/dist/modules/plugins/inspector/ui.mjs +16 -0
  352. package/dist/modules/plugins/inspector/ui.mjs.map +7 -0
  353. package/dist/modules/plugins/material/frontend.mjs +25 -0
  354. package/dist/modules/plugins/material/frontend.mjs.map +7 -0
  355. package/dist/modules/plugins/material/i18n.mjs +15 -0
  356. package/dist/modules/plugins/material/i18n.mjs.map +7 -0
  357. package/dist/modules/plugins/material/identity.mjs +60 -0
  358. package/dist/modules/plugins/material/identity.mjs.map +7 -0
  359. package/dist/modules/plugins/material/schema.mjs +47 -0
  360. package/dist/modules/plugins/material/schema.mjs.map +7 -0
  361. package/dist/modules/plugins/material/ui.mjs +28 -0
  362. package/dist/modules/plugins/material/ui.mjs.map +7 -0
  363. package/dist/modules/plugins/mesh/frontend.mjs +23 -0
  364. package/dist/modules/plugins/mesh/frontend.mjs.map +7 -0
  365. package/dist/modules/plugins/mesh/i18n.mjs +15 -0
  366. package/dist/modules/plugins/mesh/i18n.mjs.map +7 -0
  367. package/dist/modules/plugins/mesh/identity.mjs +54 -0
  368. package/dist/modules/plugins/mesh/identity.mjs.map +7 -0
  369. package/dist/modules/plugins/mesh/schema.mjs +10 -0
  370. package/dist/modules/plugins/mesh/schema.mjs.map +7 -0
  371. package/dist/modules/plugins/mesh/ui.mjs +26 -0
  372. package/dist/modules/plugins/mesh/ui.mjs.map +7 -0
  373. package/dist/modules/plugins/plugins/api.mjs +11 -0
  374. package/dist/modules/plugins/plugins/api.mjs.map +7 -0
  375. package/dist/modules/plugins/plugins/backend.mjs +21 -0
  376. package/dist/modules/plugins/plugins/backend.mjs.map +7 -0
  377. package/dist/modules/plugins/plugins/cli.mjs +12 -0
  378. package/dist/modules/plugins/plugins/cli.mjs.map +7 -0
  379. package/dist/modules/plugins/plugins/frontend.mjs +17 -0
  380. package/dist/modules/plugins/plugins/frontend.mjs.map +7 -0
  381. package/dist/modules/plugins/plugins/i18n.mjs +15 -0
  382. package/dist/modules/plugins/plugins/i18n.mjs.map +7 -0
  383. package/dist/modules/plugins/plugins/identity.mjs +26 -0
  384. package/dist/modules/plugins/plugins/identity.mjs.map +7 -0
  385. package/dist/modules/plugins/plugins/runtime.mjs +50 -0
  386. package/dist/modules/plugins/plugins/runtime.mjs.map +7 -0
  387. package/dist/modules/plugins/plugins/schema.mjs +12 -0
  388. package/dist/modules/plugins/plugins/schema.mjs.map +7 -0
  389. package/dist/modules/plugins/plugins/ui/panel.mjs +14 -0
  390. package/dist/modules/plugins/plugins/ui/panel.mjs.map +7 -0
  391. package/dist/modules/plugins/plugins/ui.mjs +15 -0
  392. package/dist/modules/plugins/plugins/ui.mjs.map +7 -0
  393. package/dist/modules/plugins/scene/frontend.mjs +18 -0
  394. package/dist/modules/plugins/scene/frontend.mjs.map +7 -0
  395. package/dist/modules/plugins/scene/identity.mjs +14 -0
  396. package/dist/modules/plugins/scene/identity.mjs.map +7 -0
  397. package/dist/modules/plugins/scene-tree/frontend.mjs +17 -0
  398. package/dist/modules/plugins/scene-tree/frontend.mjs.map +7 -0
  399. package/dist/modules/plugins/scene-tree/i18n.mjs +15 -0
  400. package/dist/modules/plugins/scene-tree/i18n.mjs.map +7 -0
  401. package/dist/modules/plugins/scene-tree/identity.mjs +22 -0
  402. package/dist/modules/plugins/scene-tree/identity.mjs.map +7 -0
  403. package/dist/modules/plugins/scene-tree/schema.mjs +12 -0
  404. package/dist/modules/plugins/scene-tree/schema.mjs.map +7 -0
  405. package/dist/modules/plugins/scene-tree/ui.mjs +16 -0
  406. package/dist/modules/plugins/scene-tree/ui.mjs.map +7 -0
  407. package/dist/modules/plugins/texture/frontend.mjs +23 -0
  408. package/dist/modules/plugins/texture/frontend.mjs.map +7 -0
  409. package/dist/modules/plugins/texture/i18n.mjs +15 -0
  410. package/dist/modules/plugins/texture/i18n.mjs.map +7 -0
  411. package/dist/modules/plugins/texture/identity.mjs +54 -0
  412. package/dist/modules/plugins/texture/identity.mjs.map +7 -0
  413. package/dist/modules/plugins/texture/schema.mjs +10 -0
  414. package/dist/modules/plugins/texture/schema.mjs.map +7 -0
  415. package/dist/modules/plugins/texture/ui.mjs +26 -0
  416. package/dist/modules/plugins/texture/ui.mjs.map +7 -0
  417. package/dist/modules/plugins/viewport/frontend.mjs +27 -0
  418. package/dist/modules/plugins/viewport/frontend.mjs.map +7 -0
  419. package/dist/modules/plugins/viewport/identity.mjs +28 -0
  420. package/dist/modules/plugins/viewport/identity.mjs.map +7 -0
  421. package/dist/modules/plugins/viewport/presentation-identity.mjs +10 -0
  422. package/dist/modules/plugins/viewport/presentation-identity.mjs.map +7 -0
  423. package/dist/modules/plugins/viewport/presentation.mjs +18 -0
  424. package/dist/modules/plugins/viewport/presentation.mjs.map +7 -0
  425. package/dist/modules/plugins/viewport/schema.mjs +18 -0
  426. package/dist/modules/plugins/viewport/schema.mjs.map +7 -0
  427. package/dist/modules/plugins/viewport/workspace-shell.mjs +29 -0
  428. package/dist/modules/plugins/viewport/workspace-shell.mjs.map +7 -0
  429. package/dist/modules/shell/contract.mjs +10 -0
  430. package/dist/modules/shell/contract.mjs.map +7 -0
  431. package/dist/modules/shell/frontend.mjs +14 -0
  432. package/dist/modules/shell/frontend.mjs.map +7 -0
  433. package/dist/modules/shell/layout-zones.mjs +20 -0
  434. package/dist/modules/shell/layout-zones.mjs.map +7 -0
  435. package/dist/modules/start-cli.mjs +57 -0
  436. package/dist/modules/start-cli.mjs.map +7 -0
  437. package/dist/modules/start.mjs +18 -0
  438. package/dist/modules/start.mjs.map +7 -0
  439. package/dist/modules/viewer/catalog/backend.mjs +47 -0
  440. package/dist/modules/viewer/catalog/backend.mjs.map +7 -0
  441. package/dist/modules/viewer/catalog/frontend.mjs +55 -0
  442. package/dist/modules/viewer/catalog/frontend.mjs.map +7 -0
  443. package/dist/modules/viewer/catalog/shared.mjs +43 -0
  444. package/dist/modules/viewer/catalog/shared.mjs.map +7 -0
  445. package/dist/modules/viewer/catalog.mjs +85 -0
  446. package/dist/modules/viewer/catalog.mjs.map +7 -0
  447. package/dist/modules/viewer/cli.mjs +23 -0
  448. package/dist/modules/viewer/cli.mjs.map +7 -0
  449. package/dist/modules/viewer-host/frontend.mjs +65 -0
  450. package/dist/modules/viewer-host/frontend.mjs.map +7 -0
  451. package/dist/modules/viewer-host/page-registry.mjs +27 -0
  452. package/dist/modules/viewer-host/page-registry.mjs.map +7 -0
  453. package/dist/modules/viewer-host/slot-registry.mjs +8 -0
  454. package/dist/modules/viewer-host/slot-registry.mjs.map +7 -0
  455. package/dist/modules/viewer-host.mjs +43 -0
  456. package/dist/modules/viewer-host.mjs.map +7 -0
  457. package/dist/modules/viewer.mjs +85 -0
  458. package/dist/modules/viewer.mjs.map +7 -0
  459. package/dist/modules/workspace/adopt-surface.mjs +16 -0
  460. package/dist/modules/workspace/adopt-surface.mjs.map +7 -0
  461. package/dist/modules/workspace/api.mjs +8 -0
  462. package/dist/modules/workspace/api.mjs.map +7 -0
  463. package/dist/modules/workspace/backend.mjs +23 -0
  464. package/dist/modules/workspace/backend.mjs.map +7 -0
  465. package/dist/modules/workspace/broker.mjs +16 -0
  466. package/dist/modules/workspace/broker.mjs.map +7 -0
  467. package/dist/modules/workspace/cli.mjs +9 -0
  468. package/dist/modules/workspace/cli.mjs.map +7 -0
  469. package/dist/modules/workspace/client.mjs +15 -0
  470. package/dist/modules/workspace/client.mjs.map +7 -0
  471. package/dist/modules/workspace/command-error.mjs +16 -0
  472. package/dist/modules/workspace/command-error.mjs.map +7 -0
  473. package/dist/modules/workspace/contract.mjs +71 -0
  474. package/dist/modules/workspace/contract.mjs.map +7 -0
  475. package/dist/modules/workspace/demo-client.mjs +127 -0
  476. package/dist/modules/workspace/demo-client.mjs.map +7 -0
  477. package/dist/modules/workspace/engine-adapter.mjs +16 -0
  478. package/dist/modules/workspace/engine-adapter.mjs.map +7 -0
  479. package/dist/modules/workspace/engine-presentation.mjs +10 -0
  480. package/dist/modules/workspace/engine-presentation.mjs.map +7 -0
  481. package/dist/modules/workspace/extension-bridge.mjs +18 -0
  482. package/dist/modules/workspace/extension-bridge.mjs.map +7 -0
  483. package/dist/modules/workspace/frontend-plugin.mjs +18 -0
  484. package/dist/modules/workspace/frontend-plugin.mjs.map +7 -0
  485. package/dist/modules/workspace/frontend.mjs +29 -0
  486. package/dist/modules/workspace/frontend.mjs.map +7 -0
  487. package/dist/modules/workspace/id.mjs +8 -0
  488. package/dist/modules/workspace/id.mjs.map +7 -0
  489. package/dist/modules/workspace/inspection-presentation.mjs +12 -0
  490. package/dist/modules/workspace/inspection-presentation.mjs.map +7 -0
  491. package/dist/modules/workspace/locale-bridge.mjs +14 -0
  492. package/dist/modules/workspace/locale-bridge.mjs.map +7 -0
  493. package/dist/modules/workspace/page-title.mjs +13 -0
  494. package/dist/modules/workspace/page-title.mjs.map +7 -0
  495. package/dist/modules/workspace/presentation.mjs +18 -0
  496. package/dist/modules/workspace/presentation.mjs.map +7 -0
  497. package/dist/modules/workspace/preview-surface.mjs +17 -0
  498. package/dist/modules/workspace/preview-surface.mjs.map +7 -0
  499. package/dist/modules/workspace/project-session.mjs +18 -0
  500. package/dist/modules/workspace/project-session.mjs.map +7 -0
  501. package/dist/modules/workspace/render-resize-sync.mjs +12 -0
  502. package/dist/modules/workspace/render-resize-sync.mjs.map +7 -0
  503. package/dist/modules/workspace/resident.mjs +16 -0
  504. package/dist/modules/workspace/resident.mjs.map +7 -0
  505. package/dist/modules/workspace/resource-open.mjs +34 -0
  506. package/dist/modules/workspace/resource-open.mjs.map +7 -0
  507. package/dist/modules/workspace/resource-page.mjs +27 -0
  508. package/dist/modules/workspace/resource-page.mjs.map +7 -0
  509. package/dist/modules/workspace/tool-runtime.mjs +14 -0
  510. package/dist/modules/workspace/tool-runtime.mjs.map +7 -0
  511. package/dist/modules/workspace/view-trace.mjs +60 -0
  512. package/dist/modules/workspace/view-trace.mjs.map +7 -0
  513. package/dist/modules/workspace/workspace-client-connection.mjs +22 -0
  514. package/dist/modules/workspace/workspace-client-connection.mjs.map +7 -0
  515. package/dist/modules/workspace/workspace-recovery.mjs +35 -0
  516. package/dist/modules/workspace/workspace-recovery.mjs.map +7 -0
  517. package/dist/modules/workspace/workspace-state.mjs +12 -0
  518. package/dist/modules/workspace/workspace-state.mjs.map +7 -0
  519. package/dist/modules/workspace-frontend.mjs +17 -0
  520. package/dist/modules/workspace-frontend.mjs.map +7 -0
  521. package/dist/viewer/assets/chunk-CilyBKbf.js +1 -0
  522. package/dist/viewer/assets/core-DSQma37-.js +13 -0
  523. package/dist/viewer/assets/core-DSQma37-.js.map +1 -0
  524. package/dist/viewer/assets/css-Bq1BXecw.js +2 -0
  525. package/dist/viewer/assets/css-Bq1BXecw.js.map +1 -0
  526. package/dist/viewer/assets/css-CWQWazmX.js +1 -0
  527. package/dist/viewer/assets/embedded-D4ZDx--W.js +2 -0
  528. package/dist/viewer/assets/embedded-D4ZDx--W.js.map +1 -0
  529. package/dist/viewer/assets/engine-javascript-BvokIV9O.js +142 -0
  530. package/dist/viewer/assets/engine-javascript-BvokIV9O.js.map +1 -0
  531. package/dist/viewer/assets/github-dark-default-DaDlj-WZ.js +2 -0
  532. package/dist/viewer/assets/github-dark-default-DaDlj-WZ.js.map +1 -0
  533. package/dist/viewer/assets/github-light-default-BqhWxAZd.js +2 -0
  534. package/dist/viewer/assets/github-light-default-BqhWxAZd.js.map +1 -0
  535. package/dist/viewer/assets/glsl-BJgVnv11.js +2 -0
  536. package/dist/viewer/assets/glsl-BJgVnv11.js.map +1 -0
  537. package/dist/viewer/assets/html-AaaHGGyt.js +2 -0
  538. package/dist/viewer/assets/html-AaaHGGyt.js.map +1 -0
  539. package/dist/viewer/assets/javascript-BX9W64FE.js +1 -0
  540. package/dist/viewer/assets/javascript-DQODvD07.js +2 -0
  541. package/dist/viewer/assets/javascript-DQODvD07.js.map +1 -0
  542. package/dist/viewer/assets/json-CpcIDpT7.js +2 -0
  543. package/dist/viewer/assets/json-CpcIDpT7.js.map +1 -0
  544. package/dist/viewer/assets/json5-Czq4A7dk.js +2 -0
  545. package/dist/viewer/assets/json5-Czq4A7dk.js.map +1 -0
  546. package/dist/viewer/assets/jsonc-BXDfCMmu.js +2 -0
  547. package/dist/viewer/assets/jsonc-BXDfCMmu.js.map +1 -0
  548. package/dist/viewer/assets/jsx-DAWscEnf.js +2 -0
  549. package/dist/viewer/assets/jsx-DAWscEnf.js.map +1 -0
  550. package/dist/viewer/assets/main-C-2CHTN_.js +15 -0
  551. package/dist/viewer/assets/main-C-2CHTN_.js.map +1 -0
  552. package/dist/viewer/assets/markdown-Cx1FMNw-.js +2 -0
  553. package/dist/viewer/assets/markdown-Cx1FMNw-.js.map +1 -0
  554. package/dist/viewer/assets/panels-entry-Ddhfjgf0.js +46 -0
  555. package/dist/viewer/assets/panels-entry-Ddhfjgf0.js.map +1 -0
  556. package/dist/viewer/assets/python-CYPKjWV9.js +2 -0
  557. package/dist/viewer/assets/python-CYPKjWV9.js.map +1 -0
  558. package/dist/viewer/assets/rust-0e5cNx_V.js +2 -0
  559. package/dist/viewer/assets/rust-0e5cNx_V.js.map +1 -0
  560. package/dist/viewer/assets/scss-B-aKzLbT.js +2 -0
  561. package/dist/viewer/assets/scss-B-aKzLbT.js.map +1 -0
  562. package/dist/viewer/assets/shellscript-CpXD-pSm.js +2 -0
  563. package/dist/viewer/assets/shellscript-CpXD-pSm.js.map +1 -0
  564. package/dist/viewer/assets/style-ClttNKZk.css +2 -0
  565. package/dist/viewer/assets/styles-BXozhwiU.js +11 -0
  566. package/dist/viewer/assets/styles-BXozhwiU.js.map +1 -0
  567. package/dist/viewer/assets/toml-GmchYTXa.js +2 -0
  568. package/dist/viewer/assets/toml-GmchYTXa.js.map +1 -0
  569. package/dist/viewer/assets/tsx-Crj1Bi53.js +2 -0
  570. package/dist/viewer/assets/tsx-Crj1Bi53.js.map +1 -0
  571. package/dist/viewer/assets/typescript-xi0cSHCO.js +2 -0
  572. package/dist/viewer/assets/typescript-xi0cSHCO.js.map +1 -0
  573. package/dist/viewer/assets/wgsl-BoEPRo9U.js +2 -0
  574. package/dist/viewer/assets/wgsl-BoEPRo9U.js.map +1 -0
  575. package/dist/viewer/assets/xml-B8JqQrMD.js +2 -0
  576. package/dist/viewer/assets/xml-B8JqQrMD.js.map +1 -0
  577. package/dist/viewer/assets/yaml-DsIB85X9.js +2 -0
  578. package/dist/viewer/assets/yaml-DsIB85X9.js.map +1 -0
  579. package/dist/viewer/index.html +15 -0
  580. package/dist/viewer/panels.js +1 -0
  581. package/host.pack.json +13 -0
  582. package/package.json +174 -0
  583. package/skills/forgeax-view-cli/SKILL.md +74 -0
  584. package/skills/forgeax-view-start/SKILL.md +202 -0
  585. package/skills/forgeax-view-start/scripts/start-view.mjs +202 -0
@@ -0,0 +1,2 @@
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"]}`))];export{e as default};
2
+ //# sourceMappingURL=python-CYPKjWV9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-CYPKjWV9.js","names":[],"sources":["../../../node_modules/.pnpm/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/python.mjs"],"sourcesContent":["const lang = 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\\\"]}\"))\n\nexport default [\nlang\n]\n"],"x_google_ignoreList":[0],"mappings":"AAEA,IAAA,EAAe,CAFF,OAAO,OAAO,KAAK,MAAM,iwoEAAyw2E,CAG/y2E,CACC"}