@dylanpiercey/work 0.0.17 → 0.0.18

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 (153) hide show
  1. package/dist/index.mjs +64 -65
  2. package/dist/public/assets/{_C_EVf05b2.js → _-y9kulTm2.js} +2 -2
  3. package/dist/public/assets/{_C_EVf05b2.js.map → _-y9kulTm2.js.map} +1 -1
  4. package/dist/public/assets/{_DVtaLlbK.js → _09UGbqbe.js} +2 -2
  5. package/dist/public/assets/{_DVtaLlbK.js.map → _09UGbqbe.js.map} +1 -1
  6. package/dist/public/assets/{_BE8iKV08.js → _5pITs-eB.js} +2 -2
  7. package/dist/public/assets/{_BE8iKV08.js.map → _5pITs-eB.js.map} +1 -1
  8. package/dist/public/assets/{_CC_qtocy.js → _8KGTgk4a.js} +2 -2
  9. package/dist/public/assets/{_CC_qtocy.js.map → _8KGTgk4a.js.map} +1 -1
  10. package/dist/public/assets/{_r0GB6pn62.js → _B3RjA95S2.js} +2 -2
  11. package/dist/public/assets/{_r0GB6pn62.js.map → _B3RjA95S2.js.map} +1 -1
  12. package/dist/public/assets/{_BsSgt5g8.js → _B67sYaTh.js} +2 -2
  13. package/dist/public/assets/{_BsSgt5g8.js.map → _B67sYaTh.js.map} +1 -1
  14. package/dist/public/assets/{_BukWjONF2.js → _BBpMSlj_2.js} +2 -2
  15. package/dist/public/assets/{_BukWjONF2.js.map → _BBpMSlj_2.js.map} +1 -1
  16. package/dist/public/assets/{_Cl5FveY62.js → _BCJFFYkY2.js} +2 -2
  17. package/dist/public/assets/{_Cl5FveY62.js.map → _BCJFFYkY2.js.map} +1 -1
  18. package/dist/public/assets/{_Ck7VzOst2.js → _BJQAFH5m2.js} +2 -2
  19. package/dist/public/assets/{_Ck7VzOst2.js.map → _BJQAFH5m2.js.map} +1 -1
  20. package/dist/public/assets/{_DWkwrAyW2.js → _BK1rXqZY2.js} +2 -2
  21. package/dist/public/assets/{_DWkwrAyW2.js.map → _BK1rXqZY2.js.map} +1 -1
  22. package/dist/public/assets/{_D5ocKRBu.js → _BLCmmW1D.js} +2 -2
  23. package/dist/public/assets/{_D5ocKRBu.js.map → _BLCmmW1D.js.map} +1 -1
  24. package/dist/public/assets/{_DmToauyp2.js → _BLtaIsON2.js} +2 -2
  25. package/dist/public/assets/{_DmToauyp2.js.map → _BLtaIsON2.js.map} +1 -1
  26. package/dist/public/assets/{_BBBdWdzg2.js → _BRXIjM2U2.js} +2 -2
  27. package/dist/public/assets/{_BBBdWdzg2.js.map → _BRXIjM2U2.js.map} +1 -1
  28. package/dist/public/assets/{_oGKQuGVb.js → _BUyxdAoO.js} +2 -2
  29. package/dist/public/assets/{_oGKQuGVb.js.map → _BUyxdAoO.js.map} +1 -1
  30. package/dist/public/assets/{_DFH1wKd9.js → _BWIqed3r.js} +2 -2
  31. package/dist/public/assets/{_DFH1wKd9.js.map → _BWIqed3r.js.map} +1 -1
  32. package/dist/public/assets/{_0YbQ9lhB.js → _BZ-hSpp-.js} +2 -2
  33. package/dist/public/assets/{_0YbQ9lhB.js.map → _BZ-hSpp-.js.map} +1 -1
  34. package/dist/public/assets/{_BI7Ima3h.js → _BZ__x_xD.js} +2 -2
  35. package/dist/public/assets/{_BI7Ima3h.js.map → _BZ__x_xD.js.map} +1 -1
  36. package/dist/public/assets/{_DA25EXVK2.js → _BkP94cES2.js} +2 -2
  37. package/dist/public/assets/{_DA25EXVK2.js.map → _BkP94cES2.js.map} +1 -1
  38. package/dist/public/assets/{_BdrJZHTS.js → _Bpen4kph.js} +2 -2
  39. package/dist/public/assets/{_BdrJZHTS.js.map → _Bpen4kph.js.map} +1 -1
  40. package/dist/public/assets/{_DwMqTHPw.js → _Bu4ATEWu.js} +2 -2
  41. package/dist/public/assets/{_DwMqTHPw.js.map → _Bu4ATEWu.js.map} +1 -1
  42. package/dist/public/assets/{_BFlVRFkJ.js → _ByGoCdzl.js} +2 -2
  43. package/dist/public/assets/{_BFlVRFkJ.js.map → _ByGoCdzl.js.map} +1 -1
  44. package/dist/public/assets/{_Djm9Zgp7.js → _C11BpdOf.js} +2 -2
  45. package/dist/public/assets/{_Djm9Zgp7.js.map → _C11BpdOf.js.map} +1 -1
  46. package/dist/public/assets/{_mBGgONFr.js → _C46jYJRW.js} +2 -2
  47. package/dist/public/assets/{_mBGgONFr.js.map → _C46jYJRW.js.map} +1 -1
  48. package/dist/public/assets/{_BgIa0lZI.js → _C50Bb9xS.js} +2 -2
  49. package/dist/public/assets/{_BgIa0lZI.js.map → _C50Bb9xS.js.map} +1 -1
  50. package/dist/public/assets/{_DrQlDZ8F.js → _CAT-e2QL.js} +2 -2
  51. package/dist/public/assets/{_DrQlDZ8F.js.map → _CAT-e2QL.js.map} +1 -1
  52. package/dist/public/assets/{_DFc6F1lr.js → _CC-j3k6M.js} +2 -2
  53. package/dist/public/assets/{_DFc6F1lr.js.map → _CC-j3k6M.js.map} +1 -1
  54. package/dist/public/assets/{_Dcae1nSG.js → _CCOY7Mzw.js} +2 -2
  55. package/dist/public/assets/{_Dcae1nSG.js.map → _CCOY7Mzw.js.map} +1 -1
  56. package/dist/public/assets/{_x0PbwyNo.js → _CDkLozzf.js} +2 -2
  57. package/dist/public/assets/{_x0PbwyNo.js.map → _CDkLozzf.js.map} +1 -1
  58. package/dist/public/assets/{_sNHMjK082.js → _CEpH5m1M2.js} +2 -2
  59. package/dist/public/assets/{_sNHMjK082.js.map → _CEpH5m1M2.js.map} +1 -1
  60. package/dist/public/assets/{_Mg3RDbDs.js → _CLHoxMEK.js} +2 -2
  61. package/dist/public/assets/{_Mg3RDbDs.js.map → _CLHoxMEK.js.map} +1 -1
  62. package/dist/public/assets/{_d5dGxQZq2.js → _CMPgfitX2.js} +2 -2
  63. package/dist/public/assets/{_d5dGxQZq2.js.map → _CMPgfitX2.js.map} +1 -1
  64. package/dist/public/assets/{_0bG1aK77.js → _CNv-Oo1i.js} +2 -2
  65. package/dist/public/assets/{_0bG1aK77.js.map → _CNv-Oo1i.js.map} +1 -1
  66. package/dist/public/assets/{_DQkIt1KO2.js → _COqOvD8r2.js} +2 -2
  67. package/dist/public/assets/{_DQkIt1KO2.js.map → _COqOvD8r2.js.map} +1 -1
  68. package/dist/public/assets/{_oNFVEWan2.js → _CaOOa7SQ2.js} +2 -2
  69. package/dist/public/assets/{_oNFVEWan2.js.map → _CaOOa7SQ2.js.map} +1 -1
  70. package/dist/public/assets/{_DLgN00mB.js → _Cc4hFu76.js} +2 -2
  71. package/dist/public/assets/{_DLgN00mB.js.map → _Cc4hFu76.js.map} +1 -1
  72. package/dist/public/assets/{_COWEx7NM.js → _CdXiOM4b.js} +2 -2
  73. package/dist/public/assets/{_COWEx7NM.js.map → _CdXiOM4b.js.map} +1 -1
  74. package/dist/public/assets/{_CxDqQj2A2.js → _Ce4ncwLA2.js} +2 -2
  75. package/dist/public/assets/{_CxDqQj2A2.js.map → _Ce4ncwLA2.js.map} +1 -1
  76. package/dist/public/assets/{_BGr_FRIk.js → _Cevj0Mmw.js} +2 -2
  77. package/dist/public/assets/{_BGr_FRIk.js.map → _Cevj0Mmw.js.map} +1 -1
  78. package/dist/public/assets/{_CPksOQgT.js → _CmvbMi4x.js} +2 -2
  79. package/dist/public/assets/{_CPksOQgT.js.map → _CmvbMi4x.js.map} +1 -1
  80. package/dist/public/assets/{_CkVWvLCr2.js → _CoF5nWq02.js} +2 -2
  81. package/dist/public/assets/{_CkVWvLCr2.js.map → _CoF5nWq02.js.map} +1 -1
  82. package/dist/public/assets/{_Baqo9pBh.js → _CrJ9Ko13.js} +2 -2
  83. package/dist/public/assets/{_Baqo9pBh.js.map → _CrJ9Ko13.js.map} +1 -1
  84. package/dist/public/assets/{_Bb2gNY6h2.js → _Cy-GwoDV2.js} +2 -2
  85. package/dist/public/assets/{_Bb2gNY6h2.js.map → _Cy-GwoDV2.js.map} +1 -1
  86. package/dist/public/assets/{_DYsg2tzg.js → _CylUZ4ox.js} +2 -2
  87. package/dist/public/assets/{_DYsg2tzg.js.map → _CylUZ4ox.js.map} +1 -1
  88. package/dist/public/assets/{_5vsh_Hg3.js → _D0wRtMZ7.js} +2 -2
  89. package/dist/public/assets/{_5vsh_Hg3.js.map → _D0wRtMZ7.js.map} +1 -1
  90. package/dist/public/assets/{_DMGeafER.js → _D1g8yfY_.js} +2 -2
  91. package/dist/public/assets/{_DMGeafER.js.map → _D1g8yfY_.js.map} +1 -1
  92. package/dist/public/assets/{_BUEHXwiO.js → _D3M90Nuy.js} +2 -2
  93. package/dist/public/assets/{_BUEHXwiO.js.map → _D3M90Nuy.js.map} +1 -1
  94. package/dist/public/assets/{_Czf6k1Yd.js → _D4dnSbs9.js} +2 -2
  95. package/dist/public/assets/{_Czf6k1Yd.js.map → _D4dnSbs9.js.map} +1 -1
  96. package/dist/public/assets/{_B-zJ-YZT2.js → _D714w-yv2.js} +2 -2
  97. package/dist/public/assets/{_B-zJ-YZT2.js.map → _D714w-yv2.js.map} +1 -1
  98. package/dist/public/assets/{_Cew7dVtt.js → _D8qhq4R9.js} +2 -2
  99. package/dist/public/assets/{_Cew7dVtt.js.map → _D8qhq4R9.js.map} +1 -1
  100. package/dist/public/assets/{_UqC2jA3U.js → _D9PpwVxg.js} +2 -2
  101. package/dist/public/assets/{_UqC2jA3U.js.map → _D9PpwVxg.js.map} +1 -1
  102. package/dist/public/assets/{_BoTktEeq.js → _DCF6n82O.js} +2 -2
  103. package/dist/public/assets/{_BoTktEeq.js.map → _DCF6n82O.js.map} +1 -1
  104. package/dist/public/assets/{_Cnhc7Js1.js → _DCYW4ec9.js} +2 -2
  105. package/dist/public/assets/{_Cnhc7Js1.js.map → _DCYW4ec9.js.map} +1 -1
  106. package/dist/public/assets/{_C0qYIyti.js → _DIQt9GI5.js} +2 -2
  107. package/dist/public/assets/{_C0qYIyti.js.map → _DIQt9GI5.js.map} +1 -1
  108. package/dist/public/assets/{_BqsUzBKr2.js → _DK4AwxNY2.js} +2 -2
  109. package/dist/public/assets/{_BqsUzBKr2.js.map → _DK4AwxNY2.js.map} +1 -1
  110. package/dist/public/assets/{_Cz8uRhe52.js → _DK83DE0Y2.js} +2 -2
  111. package/dist/public/assets/{_Cz8uRhe52.js.map → _DK83DE0Y2.js.map} +1 -1
  112. package/dist/public/assets/{_DmXaISw3.js → _DNzvi45g.js} +2 -2
  113. package/dist/public/assets/{_DmXaISw3.js.map → _DNzvi45g.js.map} +1 -1
  114. package/dist/public/assets/{_D5wuGtc_.js → _DVlQ9TJ1.js} +2 -2
  115. package/dist/public/assets/{_D5wuGtc_.js.map → _DVlQ9TJ1.js.map} +1 -1
  116. package/dist/public/assets/{_DfWLxYyO2.js → _DbwVuiCb2.js} +2 -2
  117. package/dist/public/assets/{_DfWLxYyO2.js.map → _DbwVuiCb2.js.map} +1 -1
  118. package/dist/public/assets/{_DwJ83m-7.js → _De9KPS5Q.js} +2 -2
  119. package/dist/public/assets/{_DwJ83m-7.js.map → _De9KPS5Q.js.map} +1 -1
  120. package/dist/public/assets/{_DGsyC13R.js → _DeYNOTTM.js} +2 -2
  121. package/dist/public/assets/{_DGsyC13R.js.map → _DeYNOTTM.js.map} +1 -1
  122. package/dist/public/assets/{_Bo64MkMt.js → _DhR2bAEg.js} +2 -2
  123. package/dist/public/assets/{_Bo64MkMt.js.map → _DhR2bAEg.js.map} +1 -1
  124. package/dist/public/assets/{_YVF6OncQ2.js → _Di1u4_E92.js} +2 -2
  125. package/dist/public/assets/{_YVF6OncQ2.js.map → _Di1u4_E92.js.map} +1 -1
  126. package/dist/public/assets/{_DZymgQpM2.js → _DiIPM4ZR2.js} +2 -2
  127. package/dist/public/assets/{_DZymgQpM2.js.map → _DiIPM4ZR2.js.map} +1 -1
  128. package/dist/public/assets/{_e6FKxjly2.js → _DqqTIO4X2.js} +2 -2
  129. package/dist/public/assets/{_e6FKxjly2.js.map → _DqqTIO4X2.js.map} +1 -1
  130. package/dist/public/assets/{_BIQIKt-r.js → _DrneSE0O.js} +2 -2
  131. package/dist/public/assets/{_BIQIKt-r.js.map → _DrneSE0O.js.map} +1 -1
  132. package/dist/public/assets/{_BmWpLiDV.js → _DxRN-75-.js} +2 -2
  133. package/dist/public/assets/{_BmWpLiDV.js.map → _DxRN-75-.js.map} +1 -1
  134. package/dist/public/assets/{_KnIynIbq.js → _DxsG51lC.js} +2 -2
  135. package/dist/public/assets/{_KnIynIbq.js.map → _DxsG51lC.js.map} +1 -1
  136. package/dist/public/assets/{_BCC4FPDq.js → _DyeFgeps.js} +2 -2
  137. package/dist/public/assets/{_BCC4FPDq.js.map → _DyeFgeps.js.map} +1 -1
  138. package/dist/public/assets/{_x8cEmRs12.js → _GNnGtE502.js} +2 -2
  139. package/dist/public/assets/{_x8cEmRs12.js.map → _GNnGtE502.js.map} +1 -1
  140. package/dist/public/assets/{_DQkb_hVD.js → _RhvBw5HZ.js} +2 -2
  141. package/dist/public/assets/{_DQkb_hVD.js.map → _RhvBw5HZ.js.map} +1 -1
  142. package/dist/public/assets/{_C1C3LE2N.js → _TJASwUTM.js} +2 -2
  143. package/dist/public/assets/{_C1C3LE2N.js.map → _TJASwUTM.js.map} +1 -1
  144. package/dist/public/assets/{_DVu9kSZ8.js → _Y34jUHbQ.js} +2 -2
  145. package/dist/public/assets/{_DVu9kSZ8.js.map → _Y34jUHbQ.js.map} +1 -1
  146. package/dist/public/assets/{_CqPWyhZs.js → _ipzY5Dao.js} +2 -2
  147. package/dist/public/assets/{_CqPWyhZs.js.map → _ipzY5Dao.js.map} +1 -1
  148. package/dist/public/assets/{_CVsnji6i.js → _pycVA1dr.js} +2 -2
  149. package/dist/public/assets/{_CVsnji6i.js.map → _pycVA1dr.js.map} +1 -1
  150. package/dist/public/assets/{index-DncBoamz.js → index-B9tvi1r1.js} +17 -17
  151. package/dist/public/assets/index-B9tvi1r1.js.map +1 -0
  152. package/package.json +1 -1
  153. package/dist/public/assets/index-DncBoamz.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"_UqC2jA3U.js","names":["html","sql","css","c","javascript","shellscript"],"sources":["../../../node_modules/.pnpm/@shikijs+langs@4.4.2/node_modules/@shikijs/langs/dist/crystal.mjs"],"sourcesContent":["import html from './html.mjs'\nimport sql from './sql.mjs'\nimport css from './css.mjs'\nimport c from './c.mjs'\nimport javascript from './javascript.mjs'\nimport shellscript from './shellscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Crystal\\\",\\\"fileTypes\\\":[\\\"cr\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\bcrystal\\\",\\\"foldingStartMarker\\\":\\\"(?:^(\\\\\\\\s*+(annotation|module|class|struct|union|enum|def(?!.*\\\\\\\\bend\\\\\\\\s*$)|unless|if|case|begin|for|while|until|^=begin|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^\\\\\\\"#'])*(\\\\\\\\s(do|begin|case)|(?<!\\\\\\\\$)[-%\\\\\\\\&*+/<=>^|~]\\\\\\\\s*+(if|unless)))\\\\\\\\b(?![^;]*+;.*?\\\\\\\\bend\\\\\\\\b)|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^\\\\\\\"#'])*(\\\\\\\\{(?![^}]*+})|\\\\\\\\[(?![^]]*+]))).*|#.*?\\\\\\\\(fold\\\\\\\\)\\\\\\\\s*+)$\\\",\\\"foldingStopMarker\\\":\\\"((^|;)\\\\\\\\s*+end\\\\\\\\s*+(#.*)?$|(^|;)\\\\\\\\s*+end\\\\\\\\..*$|^\\\\\\\\s*+[]}],?\\\\\\\\s*+(#.*)?$|#.*?\\\\\\\\(end\\\\\\\\)\\\\\\\\s*+$|^=end)\\\",\\\"name\\\":\\\"crystal\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"10\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(abstract)?\\\\\\\\s*(class|struct|union|annotation|enum)\\\\\\\\s+(([.:A-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(\\\\\\\\(([,.0-:A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\s]+)\\\\\\\\))?(\\\\\\\\s*(<)\\\\\\\\s*[.:A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(\\\\\\\\(([.0-:A-Z_a-z]+\\\\\\\\s,)\\\\\\\\))?)?)|((<<)\\\\\\\\s*[.0-:A-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]+))\\\",\\\"name\\\":\\\"meta.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+(([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))*[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*)\\\",\\\"name\\\":\\\"meta.module.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.lib.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(lib)\\\\\\\\s+(([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))*[A-Z]\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.lib.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.type.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.lib.type.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.lib.type.value.crystal\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(type)\\\\\\\\s+([A-Z]\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*(.+)\\\",\\\"name\\\":\\\"meta.lib.type.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(fun|begin|case|class|else|elsif|end|ensure|enum|for|if|macro|module|rescue|struct|then|union|unless|until|when|while)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abstract|alias|asm|break|extend|in|include|next|of|private|protected|struct|return|select|super|with|yield)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.primary.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(describe|context|it|expect_raises)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bdo\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.control.start-block.crystal\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\{)(\\\\\\\\s+)\\\",\\\"name\\\":\\\"meta.syntax.crystal.start-block\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(pointerof|typeof|sizeof|instance_sizeof|offsetof|previous_def|forall|out|uninitialized)\\\\\\\\b(?![!:?])|\\\\\\\\.(is_a\\\\\\\\?|nil\\\\\\\\?|responds_to\\\\\\\\?|as\\\\\\\\?|as\\\\\\\\x08)\\\",\\\"name\\\":\\\"keyword.control.pseudo-method.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"constant.language.nil.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"constant.language.boolean.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__(DIR|FILE|LINE|END_LINE)__)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"variable.language.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"variable.language.self.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(((class_)?((getter|property)\\\\\\\\b[!?]?|setter\\\\\\\\b))|(def_(clone|equals|equals_and_hash|hash)|delegate|forward_missing_to)\\\\\\\\b)(?![!:?])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(require)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.special-method.crystal\\\"}},\\\"end\\\":\\\"$|(?=#)\\\",\\\"name\\\":\\\"meta.require.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@)[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!=?]?\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@@)[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!=?]?\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(?!%[Qiqrwx]?[(<\\\\\\\\[{|])%([A-Z_a-z]\\\\\\\\w*\\\\\\\\.)*[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.fresh.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([!\\\\\\\\&'+@`]|\\\\\\\\d+|[\\\\\\\"$*,./:-?\\\\\\\\\\\\\\\\_~]|-[0FIadilpv])\\\",\\\"name\\\":\\\"variable.other.readwrite.global.pre-defined.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(ENV)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"meta.environment-variable.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*\\\",\\\"name\\\":\\\"support.class.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abort|at_exit|caller|exit|gets|loop|main|pp??|printf??|puts|raise|rand|read_line|sleep|spawn|sprintf|system|debugger|record|spawn)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z_]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.crystal\\\"},{\\\"begin\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\s+((?>[A-Z_a-z]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[A-Z_a-z]\\\\\\\\w*(?>[!?]|=(?!>))?|\\\\\\\\^|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|\\\\\\\\[]=?))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"name\\\":\\\"meta.function.method.with-arguments.crystal\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?![),\\\\\\\\s])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\)\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.hashkey.parameter.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.hashkey.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.crystal\\\"}},\\\"match\\\":\\\"\\\\\\\\G([\\\\\\\\&*]?)(?:([A-Z_a-z]\\\\\\\\w*(:))|([A-Z_a-z]\\\\\\\\w*))\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"}},\\\"match\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\b(\\\\\\\\s+((?>[A-Z_a-z]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[A-Z_a-z]\\\\\\\\w*(?>[!?]|=(?!>))?|\\\\\\\\^|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|\\\\\\\\[]=?)))?\\\",\\\"name\\\":\\\"meta.function.method.without-arguments.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*\\\\\\\\.[0-9][0-9_]*([Ee][-+]?[0-9_]+)?(f(?:32|64))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?[Ee][-+]?[0-9_]+(f(?:32|64))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?([Ee][-+]?[0-9_]+)?(f(?:32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?!0[0-9])[0-9][0-9_]*([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0x[_\\\\\\\\h]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0o[0-7_]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0b[01_]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.crystal\\\"},{\\\"begin\\\":\\\":'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.crystal\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\":\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.single.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%x<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?:^|(?<=[\\\\\\\\&(,:;=>?\\\\\\\\[|~]|[;\\\\\\\\s]if\\\\\\\\s|[;\\\\\\\\s]elsif\\\\\\\\s|[;\\\\\\\\s]while\\\\\\\\s|[;\\\\\\\\s]unless\\\\\\\\s|[;\\\\\\\\s]when\\\\\\\\s|[;\\\\\\\\s]assert_match\\\\\\\\s|[;\\\\\\\\s]or\\\\\\\\s|[;\\\\\\\\s]and\\\\\\\\s|[;\\\\\\\\s]not\\\\\\\\s|[.\\\\\\\\s]index\\\\\\\\s|[.\\\\\\\\s]scan\\\\\\\\s|[.\\\\\\\\s]sub\\\\\\\\s|[.\\\\\\\\s]sub!\\\\\\\\s|[.\\\\\\\\s]gsub\\\\\\\\s|[.\\\\\\\\s]gsub!\\\\\\\\s|[.\\\\\\\\s]match\\\\\\\\s)|(?<=^(?:when|if|elsif|while|unless)\\\\\\\\s))\\\\\\\\s*((/))(?![*+?{}])\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.classic.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.crystal\\\"}},\\\"contentName\\\":\\\"string.regexp.classic.crystal\\\",\\\"end\\\":\\\"((/[imsx]*))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"][imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},{\\\"begin\\\":\\\"%r<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%Q?<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.crystal.mod\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%Q\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[)\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%[iqw]<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[>\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[]\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\}]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"match\\\":\\\"(?<!:)(:)(?>[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(?>[!?]|=(?![=>]))?|===?|>[=>]?|<[<=]?|<=>|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|@@?[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"match\\\":\\\"(?>[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!?]?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal.19syntax\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"match\\\":\\\"(?:^[\\\\\\\\t ]+)?(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"},{\\\"match\\\":\\\"(?<!}})\\\\\\\\b_(\\\\\\\\w+[!?]?)\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"comment.unused.crystal\\\"},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)HTML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.html.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.html.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)SQL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.sql.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.sql.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CSS)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.css.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.css.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CPP)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.c++.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.cplusplus.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c++\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)C)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.c.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.c.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)J(?:S|AVASCRIPT))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.js.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)JQUERY)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.js.jquery.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.jquery.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js.jquery\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)SH(?:|ELL))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.shell.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.shell.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.shell\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CRYSTAL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.crystal.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.crystal.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.crystal\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-'(\\\\\\\\w+)')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-(\\\\\\\\w+)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{\\\\\\\\s??|[^0-9A-Z_a-z]do|^do|[^0-9A-Z_a-z]do\\\\\\\\s|^do\\\\\\\\s)(\\\\\\\\|)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.crystal\\\"},{\\\"match\\\":\\\"[A-Z_a-z][0-9A-Z_a-z]*\\\",\\\"name\\\":\\\"variable.other.block.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}]},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.key-value\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"match\\\":\\\"<<=|%=|&{1,2}=|\\\\\\\\*=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|\\\\\\\\^=|\\\\\\\\|{1,2}=|<<\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"match\\\":\\\"<=>|<(?![<=])|>(?![<=>])|<=|>=|===?|=~|!=|!~|(?<=[\\\\\\\\t ])\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.comparison.crystal\\\"},{\\\"match\\\":\\\"(?<=^|[\\\\\\\\t ])!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.logical.crystal\\\"},{\\\"match\\\":\\\"(\\\\\\\\{%|%}|\\\\\\\\{\\\\\\\\{|}})\\\",\\\"name\\\":\\\"keyword.operator.macro.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"}},\\\"match\\\":\\\"(&\\\\\\\\.)\\\\\\\\s*(?![A-Z])\\\"},{\\\"match\\\":\\\"([%\\\\\\\\&]|\\\\\\\\*\\\\\\\\*|[-*+/])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.crystal\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.crystal\\\"},{\\\"match\\\":\\\"[|~]|>>\\\",\\\"name\\\":\\\"keyword.operator.other.crystal\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.other.crystal\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.statement.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\.|::\\\",\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"},{\\\"match\\\":\\\"[{}]\\\",\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"},{\\\"match\\\":\\\"[]\\\\\\\\[]\\\",\\\"name\\\":\\\"punctuation.section.array.crystal\\\"},{\\\"match\\\":\\\"[()]\\\",\\\"name\\\":\\\"punctuation.section.function.crystal\\\"},{\\\"begin\\\":\\\"(?=[!0-9?A-Z_a-z]+\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function-call.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([!0-9?A-Z_a-z]+)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.crystal\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"((?<=\\\\\\\\W)\\\\\\\\b|^)\\\\\\\\w+\\\\\\\\b(?=\\\\\\\\s*([]$)-/=^}]|<\\\\\\\\s|<<[.|\\\\\\\\s]))\\\",\\\"name\\\":\\\"variable.other.crystal\\\"}],\\\"repository\\\":{\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{1,3}|x\\\\\\\\h{2}|u\\\\\\\\h{4}|u\\\\\\\\{[ \\\\\\\\h]+}|.)\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"^<<-?\\\\\\\\w+\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"interpolated_crystal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.crystal\\\"}},\\\"contentName\\\":\\\"source.crystal\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.crystal\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.crystal\\\"}},\\\"name\\\":\\\"meta.embedded.line.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"$self\\\"}],\\\"repository\\\":{\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@@)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#\\\\\\\\$)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"}]},\\\"nest_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_brackets\\\"}]},\\\"nest_brackets_i\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},\\\"nest_brackets_r\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},\\\"nest_curly\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"nest_curly_i\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},\\\"nest_curly_r\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},\\\"nest_ltgt\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_ltgt\\\"}]},\\\"nest_ltgt_i\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},\\\"nest_ltgt_r\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},\\\"nest_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_parens\\\"}]},\\\"nest_parens_i\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},\\\"nest_parens_r\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},\\\"regex_sub\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"string.regexp.character-class.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.group.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"match\\\":\\\"(?<=^|\\\\\\\\s)(#)\\\\\\\\s[-\\\\\\\\t !,.0-9?A-Za-z[^\\\\\\\\x00-\\\\\\\\x7F]]*$\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"}]}},\\\"scopeName\\\":\\\"source.crystal\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"sql\\\",\\\"css\\\",\\\"c\\\",\\\"javascript\\\",\\\"shellscript\\\"]}\"))\n\nexport default [\n...html,\n...sql,\n...css,\n...c,\n...javascript,\n...shellscript,\nlang\n]\n"],"x_google_ignoreList":[0],"mappings":"+MAOA,IAAM,EAAO,OAAO,OAAO,KAAK,MAAM,054BAAy9+B,CAAC,EAEhg/B,EAAe,CACf,GAAGA,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,CACA"}
1
+ {"version":3,"file":"_D9PpwVxg.js","names":["html","sql","css","c","javascript","shellscript"],"sources":["../../../node_modules/.pnpm/@shikijs+langs@4.4.2/node_modules/@shikijs/langs/dist/crystal.mjs"],"sourcesContent":["import html from './html.mjs'\nimport sql from './sql.mjs'\nimport css from './css.mjs'\nimport c from './c.mjs'\nimport javascript from './javascript.mjs'\nimport shellscript from './shellscript.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Crystal\\\",\\\"fileTypes\\\":[\\\"cr\\\"],\\\"firstLineMatch\\\":\\\"^#!/.*\\\\\\\\bcrystal\\\",\\\"foldingStartMarker\\\":\\\"(?:^(\\\\\\\\s*+(annotation|module|class|struct|union|enum|def(?!.*\\\\\\\\bend\\\\\\\\s*$)|unless|if|case|begin|for|while|until|^=begin|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^\\\\\\\"#'])*(\\\\\\\\s(do|begin|case)|(?<!\\\\\\\\$)[-%\\\\\\\\&*+/<=>^|~]\\\\\\\\s*+(if|unless)))\\\\\\\\b(?![^;]*+;.*?\\\\\\\\bend\\\\\\\\b)|(\\\\\\\"(\\\\\\\\\\\\\\\\.|[^\\\\\\\"])*+\\\\\\\"|'(\\\\\\\\\\\\\\\\.|[^'])*+'|[^\\\\\\\"#'])*(\\\\\\\\{(?![^}]*+})|\\\\\\\\[(?![^]]*+]))).*|#.*?\\\\\\\\(fold\\\\\\\\)\\\\\\\\s*+)$\\\",\\\"foldingStopMarker\\\":\\\"((^|;)\\\\\\\\s*+end\\\\\\\\s*+(#.*)?$|(^|;)\\\\\\\\s*+end\\\\\\\\..*$|^\\\\\\\\s*+[]}],?\\\\\\\\s*+(#.*)?$|#.*?\\\\\\\\(end\\\\\\\\)\\\\\\\\s*+$|^=end)\\\",\\\"name\\\":\\\"crystal\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.class.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.type.class.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"9\\\":{\\\"name\\\":\\\"punctuation.separator.crystal\\\"},\\\"10\\\":{\\\"name\\\":\\\"support.class.other.type-param.crystal\\\"},\\\"11\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(abstract)?\\\\\\\\s*(class|struct|union|annotation|enum)\\\\\\\\s+(([.:A-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(\\\\\\\\(([,.0-:A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\s]+)\\\\\\\\))?(\\\\\\\\s*(<)\\\\\\\\s*[.:A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][.:\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(\\\\\\\\(([.0-:A-Z_a-z]+\\\\\\\\s,)\\\\\\\\))?)?)|((<<)\\\\\\\\s*[.0-:A-Z_\\\\\\\\x{80}-\\\\\\\\x{10FFFF}]+))\\\",\\\"name\\\":\\\"meta.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.module.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.module.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.module.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(module)\\\\\\\\s+(([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))?([A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(::))*[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*)\\\",\\\"name\\\":\\\"meta.module.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.lib.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.first.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.second.crystal\\\"},\\\"6\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"},\\\"7\\\":{\\\"name\\\":\\\"entity.other.inherited-class.lib.third.crystal\\\"},\\\"8\\\":{\\\"name\\\":\\\"punctuation.separator.inheritance.crystal\\\"}},\\\"match\\\":\\\"^\\\\\\\\s*(lib)\\\\\\\\s+(([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))?([A-Z]\\\\\\\\w*(::))*[A-Z]\\\\\\\\w*)\\\",\\\"name\\\":\\\"meta.lib.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.lib.type.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.lib.type.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.lib.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"entity.name.lib.type.value.crystal\\\"}},\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(type)\\\\\\\\s+([A-Z]\\\\\\\\w+)\\\\\\\\s*(=)\\\\\\\\s*(.+)\\\",\\\"name\\\":\\\"meta.lib.type.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(fun|begin|case|class|else|elsif|end|ensure|enum|for|if|macro|module|rescue|struct|then|union|unless|until|when|while)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abstract|alias|asm|break|extend|in|include|next|of|private|protected|struct|return|select|super|with|yield)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.primary.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(describe|context|it|expect_raises)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"keyword.control.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\bdo\\\\\\\\b\\\\\\\\s*\\\",\\\"name\\\":\\\"keyword.control.start-block.crystal\\\"},{\\\"match\\\":\\\"(?<=\\\\\\\\{)(\\\\\\\\s+)\\\",\\\"name\\\":\\\"meta.syntax.crystal.start-block\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(pointerof|typeof|sizeof|instance_sizeof|offsetof|previous_def|forall|out|uninitialized)\\\\\\\\b(?![!:?])|\\\\\\\\.(is_a\\\\\\\\?|nil\\\\\\\\?|responds_to\\\\\\\\?|as\\\\\\\\?|as\\\\\\\\x08)\\\",\\\"name\\\":\\\"keyword.control.pseudo-method.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\bnil\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"constant.language.nil.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"constant.language.boolean.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(__(DIR|FILE|LINE|END_LINE)__)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"variable.language.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(self)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"variable.language.self.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(((class_)?((getter|property)\\\\\\\\b[!?]?|setter\\\\\\\\b))|(def_(clone|equals|equals_and_hash|hash)|delegate|forward_missing_to)\\\\\\\\b)(?![!:?])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(require)\\\\\\\\b\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.special-method.crystal\\\"}},\\\"end\\\":\\\"$|(?=#)\\\",\\\"name\\\":\\\"meta.require.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@)[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!=?]?\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(@@)[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!=?]?\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(?!%[Qiqrwx]?[(<\\\\\\\\[{|])%([A-Z_a-z]\\\\\\\\w*\\\\\\\\.)*[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.fresh.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\$)([!\\\\\\\\&'+@`]|\\\\\\\\d+|[\\\\\\\"$*,./:-?\\\\\\\\\\\\\\\\_~]|-[0FIadilpv])\\\",\\\"name\\\":\\\"variable.other.readwrite.global.pre-defined.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(ENV)\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.constant.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"meta.environment-variable.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"\\\\\\\\b[A-Z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*\\\",\\\"name\\\":\\\"support.class.crystal\\\"},{\\\"match\\\":\\\"(?<!\\\\\\\\.)\\\\\\\\b(abort|at_exit|caller|exit|gets|loop|main|pp??|printf??|puts|raise|rand|read_line|sleep|spawn|sprintf|system|debugger|record|spawn)\\\\\\\\b(?![!:?])\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[A-Z_]+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.constant.crystal\\\"},{\\\"begin\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\s+((?>[A-Z_a-z]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[A-Z_a-z]\\\\\\\\w*(?>[!?]|=(?!>))?|\\\\\\\\^|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|\\\\\\\\[]=?))\\\\\\\\s*(\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.crystal\\\"}},\\\"name\\\":\\\"meta.function.method.with-arguments.crystal\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?![),\\\\\\\\s])\\\",\\\"end\\\":\\\"(?=,|\\\\\\\\)\\\\\\\\s*)\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.variable.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.other.symbol.hashkey.parameter.function.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.constant.hashkey.crystal\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.crystal\\\"}},\\\"match\\\":\\\"\\\\\\\\G([\\\\\\\\&*]?)(?:([A-Z_a-z]\\\\\\\\w*(:))|([A-Z_a-z]\\\\\\\\w*))\\\"},{\\\"include\\\":\\\"$self\\\"}]}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.def.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.crystal\\\"}},\\\"match\\\":\\\"(?=def\\\\\\\\b)(?<=^|\\\\\\\\s)(def)\\\\\\\\b(\\\\\\\\s+((?>[A-Z_a-z]\\\\\\\\w*(?>\\\\\\\\.|::))?(?>[A-Z_a-z]\\\\\\\\w*(?>[!?]|=(?!>))?|\\\\\\\\^|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|\\\\\\\\[]=?)))?\\\",\\\"name\\\":\\\"meta.function.method.without-arguments.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*\\\\\\\\.[0-9][0-9_]*([Ee][-+]?[0-9_]+)?(f(?:32|64))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?[Ee][-+]?[0-9_]+(f(?:32|64))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9][0-9_]*(\\\\\\\\.[0-9][0-9_]*)?([Ee][-+]?[0-9_]+)?(f(?:32|64))\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.float.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?!0[0-9])[0-9][0-9_]*([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.decimal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0x[_\\\\\\\\h]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.hexadecimal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0o[0-7_]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.octal.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\b0b[01_]+([iu](8|16|32|64|128))?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.integer.binary.crystal\\\"},{\\\"begin\\\":\\\":'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.begin.crystal\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\":\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.symbol.end.crystal\\\"}},\\\"name\\\":\\\"constant.other.symbol.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"match\\\":\\\"(?<!\\\\\\\\()/=\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.single.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\['\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"`\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"`\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%x<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%x\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.interpolated.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?:^|(?<=[\\\\\\\\&(,:;=>?\\\\\\\\[|~]|[;\\\\\\\\s]if\\\\\\\\s|[;\\\\\\\\s]elsif\\\\\\\\s|[;\\\\\\\\s]while\\\\\\\\s|[;\\\\\\\\s]unless\\\\\\\\s|[;\\\\\\\\s]when\\\\\\\\s|[;\\\\\\\\s]assert_match\\\\\\\\s|[;\\\\\\\\s]or\\\\\\\\s|[;\\\\\\\\s]and\\\\\\\\s|[;\\\\\\\\s]not\\\\\\\\s|[.\\\\\\\\s]index\\\\\\\\s|[.\\\\\\\\s]scan\\\\\\\\s|[.\\\\\\\\s]sub\\\\\\\\s|[.\\\\\\\\s]sub!\\\\\\\\s|[.\\\\\\\\s]gsub\\\\\\\\s|[.\\\\\\\\s]gsub!\\\\\\\\s|[.\\\\\\\\s]match\\\\\\\\s)|(?<=^(?:when|if|elsif|while|unless)\\\\\\\\s))\\\\\\\\s*((/))(?![*+?{}])\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"string.regexp.classic.crystal\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.definition.string.crystal\\\"}},\\\"contentName\\\":\\\"string.regexp.classic.crystal\\\",\\\"end\\\":\\\"((/[imsx]*))\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"][imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},{\\\"begin\\\":\\\"%r<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},{\\\"begin\\\":\\\"%r\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|[imsx]*\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.regexp.mod-r.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},{\\\"begin\\\":\\\"%Q?<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},{\\\"begin\\\":\\\"%Q?\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.double.crystal.mod\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},{\\\"begin\\\":\\\"%Q\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.upper.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[)\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_parens\\\"}]},{\\\"begin\\\":\\\"%[iqw]<\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[>\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_ltgt\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[]\\\\\\\\\\\\\\\\]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_brackets\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\[\\\\\\\\\\\\\\\\}]\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},{\\\"include\\\":\\\"#nest_curly\\\"}]},{\\\"begin\\\":\\\"%[iqw]\\\\\\\\|\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\|\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.quoted.other.literal.lower.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"match\\\":\\\"(?<!:)(:)(?>[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*(?>[!?]|=(?![=>]))?|===?|>[=>]?|<[<=]?|<=>|[%\\\\\\\\&/`|]|\\\\\\\\*\\\\\\\\*?|=?~|[-+]@?|\\\\\\\\[][=?]?|@@?[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.constant.crystal\\\"}},\\\"match\\\":\\\"(?>[A-Z_a-z\\\\\\\\x{80}-\\\\\\\\x{10FFFF}][\\\\\\\\x{80}-\\\\\\\\x{10FFFF}\\\\\\\\w]*[!?]?)(:)(?!:)\\\",\\\"name\\\":\\\"constant.other.symbol.crystal.19syntax\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"match\\\":\\\"(?:^[\\\\\\\\t ]+)?(#).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"},{\\\"match\\\":\\\"(?<!}})\\\\\\\\b_(\\\\\\\\w+[!?]?)\\\\\\\\b(?!\\\\\\\\()\\\",\\\"name\\\":\\\"comment.unused.crystal\\\"},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)HTML)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.html.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.html.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)SQL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.sql.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.sql.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.sql\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CSS)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.css.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.css.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.css\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CPP)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.c++.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.cplusplus.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c++\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)C)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.c.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.c.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.c\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)J(?:S|AVASCRIPT))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.js.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)JQUERY)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.js.jquery.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.js.jquery.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.js.jquery\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)SH(?:|ELL))\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.shell.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.shell.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.shell\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-('?)((?:[_\\\\\\\\w]+_|)CRYSTAL)\\\\\\\\b\\\\\\\\1)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"contentName\\\":\\\"text.crystal.embedded.crystal\\\",\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\2\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.embedded.crystal.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"source.crystal\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-'(\\\\\\\\w+)')\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?><<-(\\\\\\\\w+)\\\\\\\\b)\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\s*\\\\\\\\1\\\\\\\\b\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.crystal\\\"}},\\\"name\\\":\\\"string.unquoted.heredoc.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#heredoc\\\"},{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"(?<=\\\\\\\\{\\\\\\\\s??|[^0-9A-Z_a-z]do|^do|[^0-9A-Z_a-z]do\\\\\\\\s|^do\\\\\\\\s)(\\\\\\\\|)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}},\\\"end\\\":\\\"(?<!\\\\\\\\|)(\\\\\\\\|)(?!\\\\\\\\|)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.crystal\\\"},{\\\"match\\\":\\\"[A-Z_a-z][0-9A-Z_a-z]*\\\",\\\"name\\\":\\\"variable.other.block.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.variable.crystal\\\"}]},{\\\"match\\\":\\\"=>\\\",\\\"name\\\":\\\"punctuation.separator.key-value\\\"},{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"support.function.kernel.crystal\\\"},{\\\"match\\\":\\\"<<=|%=|&{1,2}=|\\\\\\\\*=|\\\\\\\\*\\\\\\\\*=|\\\\\\\\+=|-=|\\\\\\\\^=|\\\\\\\\|{1,2}=|<<\\\",\\\"name\\\":\\\"keyword.operator.assignment.augmented.crystal\\\"},{\\\"match\\\":\\\"<=>|<(?![<=])|>(?![<=>])|<=|>=|===?|=~|!=|!~|(?<=[\\\\\\\\t ])\\\\\\\\?\\\",\\\"name\\\":\\\"keyword.operator.comparison.crystal\\\"},{\\\"match\\\":\\\"(?<=^|[\\\\\\\\t ])!|&&|\\\\\\\\|\\\\\\\\||\\\\\\\\^\\\",\\\"name\\\":\\\"keyword.operator.logical.crystal\\\"},{\\\"match\\\":\\\"(\\\\\\\\{%|%}|\\\\\\\\{\\\\\\\\{|}})\\\",\\\"name\\\":\\\"keyword.operator.macro.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"}},\\\"match\\\":\\\"(&\\\\\\\\.)\\\\\\\\s*(?![A-Z])\\\"},{\\\"match\\\":\\\"([%\\\\\\\\&]|\\\\\\\\*\\\\\\\\*|[-*+/])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.crystal\\\"},{\\\"match\\\":\\\"=\\\",\\\"name\\\":\\\"keyword.operator.assignment.crystal\\\"},{\\\"match\\\":\\\"[|~]|>>\\\",\\\"name\\\":\\\"keyword.operator.other.crystal\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"punctuation.separator.other.crystal\\\"},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.separator.statement.crystal\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.object.crystal\\\"},{\\\"match\\\":\\\"\\\\\\\\.|::\\\",\\\"name\\\":\\\"punctuation.separator.method.crystal\\\"},{\\\"match\\\":\\\"[{}]\\\",\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"},{\\\"match\\\":\\\"[]\\\\\\\\[]\\\",\\\"name\\\":\\\"punctuation.section.array.crystal\\\"},{\\\"match\\\":\\\"[()]\\\",\\\"name\\\":\\\"punctuation.section.function.crystal\\\"},{\\\"begin\\\":\\\"(?=[!0-9?A-Z_a-z]+\\\\\\\\()\\\",\\\"end\\\":\\\"(?<=\\\\\\\\))\\\",\\\"name\\\":\\\"meta.function-call.crystal\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([!0-9?A-Z_a-z]+)(?=\\\\\\\\()\\\",\\\"name\\\":\\\"entity.name.function.crystal\\\"},{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\"((?<=\\\\\\\\W)\\\\\\\\b|^)\\\\\\\\w+\\\\\\\\b(?=\\\\\\\\s*([]$)-/=^}]|<\\\\\\\\s|<<[.|\\\\\\\\s]))\\\",\\\"name\\\":\\\"variable.other.crystal\\\"}],\\\"repository\\\":{\\\"escaped_char\\\":{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[0-7]{1,3}|x\\\\\\\\h{2}|u\\\\\\\\h{4}|u\\\\\\\\{[ \\\\\\\\h]+}|.)\\\",\\\"name\\\":\\\"constant.character.escape.crystal\\\"},\\\"heredoc\\\":{\\\"begin\\\":\\\"^<<-?\\\\\\\\w+\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},\\\"interpolated_crystal\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.begin.crystal\\\"}},\\\"contentName\\\":\\\"source.crystal\\\",\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.embedded.end.crystal\\\"},\\\"1\\\":{\\\"name\\\":\\\"source.crystal\\\"}},\\\"name\\\":\\\"meta.embedded.line.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"},{\\\"include\\\":\\\"$self\\\"}],\\\"repository\\\":{\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}}},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.instance.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#@@)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.class.crystal\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.variable.crystal\\\"}},\\\"match\\\":\\\"(#\\\\\\\\$)[A-Z_a-z]\\\\\\\\w*\\\",\\\"name\\\":\\\"variable.other.readwrite.global.crystal\\\"}]},\\\"nest_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_brackets\\\"}]},\\\"nest_brackets_i\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_brackets_i\\\"}]},\\\"nest_brackets_r\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_brackets_r\\\"}]},\\\"nest_curly\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly\\\"}]},\\\"nest_curly_and_self\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_curly_and_self\\\"}]},{\\\"include\\\":\\\"$self\\\"}]},\\\"nest_curly_i\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_curly_i\\\"}]},\\\"nest_curly_r\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_curly_r\\\"}]},\\\"nest_ltgt\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_ltgt\\\"}]},\\\"nest_ltgt_i\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_ltgt_i\\\"}]},\\\"nest_ltgt_r\\\":{\\\"begin\\\":\\\"<\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\">\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_ltgt_r\\\"}]},\\\"nest_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#nest_parens\\\"}]},\\\"nest_parens_i\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"include\\\":\\\"#nest_parens_i\\\"}]},\\\"nest_parens_r\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.section.scope.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"},{\\\"include\\\":\\\"#nest_parens_r\\\"}]},\\\"regex_sub\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#interpolated_crystal\\\"},{\\\"include\\\":\\\"#escaped_char\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.arbitrary-repetition.crystal\\\"}},\\\"match\\\":\\\"(\\\\\\\\{)\\\\\\\\d+(,\\\\\\\\d+)?(})\\\",\\\"name\\\":\\\"string.regexp.arbitrary-repetition.crystal\\\"},{\\\"begin\\\":\\\"\\\\\\\\[(?:\\\\\\\\^?])?\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.character-class.crystal\\\"}},\\\"end\\\":\\\"]\\\",\\\"name\\\":\\\"string.regexp.character-class.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#escaped_char\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.group.crystal\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"string.regexp.group.crystal\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#regex_sub\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.crystal\\\"}},\\\"match\\\":\\\"(?<=^|\\\\\\\\s)(#)\\\\\\\\s[-\\\\\\\\t !,.0-9?A-Za-z[^\\\\\\\\x00-\\\\\\\\x7F]]*$\\\",\\\"name\\\":\\\"comment.line.number-sign.crystal\\\"}]}},\\\"scopeName\\\":\\\"source.crystal\\\",\\\"embeddedLangs\\\":[\\\"html\\\",\\\"sql\\\",\\\"css\\\",\\\"c\\\",\\\"javascript\\\",\\\"shellscript\\\"]}\"))\n\nexport default [\n...html,\n...sql,\n...css,\n...c,\n...javascript,\n...shellscript,\nlang\n]\n"],"x_google_ignoreList":[0],"mappings":"+MAOA,IAAM,EAAO,OAAO,OAAO,KAAK,MAAM,054BAAy9+B,CAAC,EAEhg/B,EAAe,CACf,GAAGA,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,CACA"}