@antseed/gateway-console 0.0.0-stage → 0.1.1

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 (534) hide show
  1. package/LICENSE +674 -0
  2. package/dist/assets/Activity-aMw4GLn_.js +1 -0
  3. package/dist/assets/Arc-VDBY7LNS-BChRXCXW.js +1 -0
  4. package/dist/assets/Audit-CCre2vZ2.js +1 -0
  5. package/dist/assets/Brave-BRAKJXDS-mq-Xo37j.js +1 -0
  6. package/dist/assets/Browser-76IHF3Y2-BMhRaC5Z.js +1 -0
  7. package/dist/assets/ChainGate-rOjMTVIg.js +1 -0
  8. package/dist/assets/ChannelClose-DkQxS0-Z.js +1 -0
  9. package/dist/assets/Charts-NmIMcccv.js +1 -0
  10. package/dist/assets/Chrome-65Q5P54Y-DR9MQEVr.js +1 -0
  11. package/dist/assets/ConnectWallet-QN7kfDQq.js +1 -0
  12. package/dist/assets/DataTable-D2QIQ-gI.js +1 -0
  13. package/dist/assets/Disclosure-h1MJg5Wn.js +1 -0
  14. package/dist/assets/Edge-XSPUTORV-DEoZslQE.js +1 -0
  15. package/dist/assets/Firefox-AAHGJQIP-Bp_Hm04m.js +1 -0
  16. package/dist/assets/KeyHolder-DUhCBfBH.js +1 -0
  17. package/dist/assets/Keys-DIlH-qns.js +1 -0
  18. package/dist/assets/Linux-OO4TNCLJ-B0aw93n9.js +1 -0
  19. package/dist/assets/Logs-BPrDGUHL.js +1 -0
  20. package/dist/assets/Macos-MW4AE7LN-Vvm8Drw3.js +1 -0
  21. package/dist/assets/Members-Cud9TWBJ.js +1 -0
  22. package/dist/assets/Migrate-DEIQ12oJ.js +1 -0
  23. package/dist/assets/Models-DXI7RYae.js +1 -0
  24. package/dist/assets/Opera-KQZLSACL-Cwv5MDFy.js +1 -0
  25. package/dist/assets/OperatorActions-BC74iRfA.js +1 -0
  26. package/dist/assets/OperatorGateAlert-CIQwPW1h.js +1 -0
  27. package/dist/assets/Overview-ipvNEEut.js +1 -0
  28. package/dist/assets/PolicyEditor-CRhTwGq0.js +1 -0
  29. package/dist/assets/PolicyField-0xAOIP4-.js +1 -0
  30. package/dist/assets/Presets-DrJ48O3s.js +4 -0
  31. package/dist/assets/Providers-CcIj0C5E.js +1 -0
  32. package/dist/assets/RequestLog-CBZWWnHo.js +1 -0
  33. package/dist/assets/Rewards-CUru480X.js +2 -0
  34. package/dist/assets/RewardsClaim-BjwCidx5.js +1 -0
  35. package/dist/assets/Routing-BO7JFJGH.js +1 -0
  36. package/dist/assets/Safari-ZPL37GXR-C4Ggg6rz.js +1 -0
  37. package/dist/assets/Segmented-BJmgB5-Y.js +1 -0
  38. package/dist/assets/SelectField-D_BPTzpT.js +1 -0
  39. package/dist/assets/Settings-qFQk36WV.js +7 -0
  40. package/dist/assets/Switch-JCyfy3G5.js +1 -0
  41. package/dist/assets/Tabs-CGI9v1OW.js +1 -0
  42. package/dist/assets/TextAreaField-4JuDDT4k.js +1 -0
  43. package/dist/assets/UsageByModel-jvNkVE4M.js +1 -0
  44. package/dist/assets/Wallet-tlCKFe2Q.js +9 -0
  45. package/dist/assets/WalletConfirm-Dz6gVYW9.js +1 -0
  46. package/dist/assets/WalletFunding-NSKzSiY5.js +1 -0
  47. package/dist/assets/WalletSignIn-Bs_yxjak.js +1 -0
  48. package/dist/assets/Windows-PPTHQER6-BlyV2p7Y.js +1 -0
  49. package/dist/assets/Workspaces-C79eSjJK.js +1 -0
  50. package/dist/assets/abap-BdImnpbu.js +1 -0
  51. package/dist/assets/actionscript-3-B3316cI-.js +1 -0
  52. package/dist/assets/ada-BIOnG6TC.js +1 -0
  53. package/dist/assets/add-CxYxphqt.js +15 -0
  54. package/dist/assets/ahk-BrbAagtO.js +1 -0
  55. package/dist/assets/ahk2-8Zs4aa1G.js +1 -0
  56. package/dist/assets/all-wallets-BSHfFrwc.js +6 -0
  57. package/dist/assets/andromeeda-C4gqWexZ.js +1 -0
  58. package/dist/assets/angular-html-D_SYSyRt.js +1 -0
  59. package/dist/assets/angular-ts-DGq0tZX5.js +1 -0
  60. package/dist/assets/ant-icon-zZhiTevn.svg +25 -0
  61. package/dist/assets/ants-B38m9Phv.js +1 -0
  62. package/dist/assets/antseed-mark-3TDLhfuw.svg +21 -0
  63. package/dist/assets/apache-Pmp26Uib.js +1 -0
  64. package/dist/assets/apechain-SX5YFU6N-q5qBv-mp.js +1 -0
  65. package/dist/assets/apex-DhZFqWV2.js +1 -0
  66. package/dist/assets/apl-ChzvTHjC.js +1 -0
  67. package/dist/assets/app-store-DzDsfjeG.js +17 -0
  68. package/dist/assets/apple-N_ET94Rt.js +18 -0
  69. package/dist/assets/applescript-Co6uUVPk.js +1 -0
  70. package/dist/assets/ar_AR-44JUQ6EW-BMX-am0v.js +1487 -0
  71. package/dist/assets/ara-BRHolxvo.js +1 -0
  72. package/dist/assets/arbitrum-WURIBY6W-CqVkHBr5.js +1 -0
  73. package/dist/assets/arrow-bottom-U6RBQjWC.js +8 -0
  74. package/dist/assets/arrow-bottom-circle-tDeqZ1Ky.js +11 -0
  75. package/dist/assets/arrow-left-BShNPqIx.js +8 -0
  76. package/dist/assets/arrow-right-CNSfQOzD.js +8 -0
  77. package/dist/assets/arrow-top-DV_peLyo.js +8 -0
  78. package/dist/assets/asciidoc-CSVQ5wI8.js +1 -0
  79. package/dist/assets/asm-D_Q5rh1f.js +1 -0
  80. package/dist/assets/assets-Q6ZU7ZJ5-P8HioiAD.js +1 -0
  81. package/dist/assets/astro-DTjqU0_L.js +1 -0
  82. package/dist/assets/aurora-x-D-2ljcwZ.js +1 -0
  83. package/dist/assets/avalanche-KOMJD3XY-Dsn_JPR4.js +1 -0
  84. package/dist/assets/awk-DMzUqQB5.js +1 -0
  85. package/dist/assets/ayu-dark-DYE7WIF3.js +1 -0
  86. package/dist/assets/ayu-light-BA47KaF1.js +1 -0
  87. package/dist/assets/ayu-mirage-32ctXXKs.js +1 -0
  88. package/dist/assets/ballerina-BFfxhgS-.js +1 -0
  89. package/dist/assets/bank-CBIxfTrG.js +14 -0
  90. package/dist/assets/base-OAXLRA4F-CoYTVIiL.js +1 -0
  91. package/dist/assets/baseAccount-44UITRK7-CsjdbWCf.js +1 -0
  92. package/dist/assets/basic-N6vekuGx.js +2128 -0
  93. package/dist/assets/bat-CickPsom.js +1 -0
  94. package/dist/assets/beancount-BgSHGh8x.js +1 -0
  95. package/dist/assets/berachain-NJECWIVC-DumxnFvf.js +1 -0
  96. package/dist/assets/berry-uYugtg8r.js +1 -0
  97. package/dist/assets/bibtex-CHM0blh-.js +1 -0
  98. package/dist/assets/bicep-Bmn6On1c.js +1 -0
  99. package/dist/assets/bird2-Bx8U0n9b.js +1 -0
  100. package/dist/assets/blade-k33SngOZ.js +1 -0
  101. package/dist/assets/blast-V555OVXZ-BbhJh1tj.js +1 -0
  102. package/dist/assets/browser-CSb6b6iQ.js +14 -0
  103. package/dist/assets/bsc-N647EYR2-B2nLKXWV.js +1 -0
  104. package/dist/assets/bsl-DlhNcFeZ.js +1 -0
  105. package/dist/assets/c-BIGW1oBm.js +1 -0
  106. package/dist/assets/c3-Dp5svz6Z.js +1 -0
  107. package/dist/assets/cadence-Bv_4Rxtq.js +1 -0
  108. package/dist/assets/cairo-KRGpt6FW.js +1 -0
  109. package/dist/assets/card-DrFIu-YX.js +14 -0
  110. package/dist/assets/catppuccin-frappe-CZL1YF0i.js +1 -0
  111. package/dist/assets/catppuccin-latte-DH-8KZSZ.js +1 -0
  112. package/dist/assets/catppuccin-macchiato-B7yYVSCf.js +1 -0
  113. package/dist/assets/catppuccin-mocha-Ct7hS0mc.js +1 -0
  114. package/dist/assets/ccip-kqAjTfpP.js +1 -0
  115. package/dist/assets/celo-GEP4TUHG-CenIBYLU.js +1 -0
  116. package/dist/assets/chapel-DTp_pixX.js +1 -0
  117. package/dist/assets/checkmark-CjzmzCYU.js +11 -0
  118. package/dist/assets/checkmark-bold-B66sPzPs.js +8 -0
  119. package/dist/assets/chevron-bottom--JM7vIl_.js +8 -0
  120. package/dist/assets/chevron-left-CPo0GZiC.js +8 -0
  121. package/dist/assets/chevron-right-BgXTpiHp.js +8 -0
  122. package/dist/assets/chevron-top-BDxNAlrf.js +8 -0
  123. package/dist/assets/chrome-store-BCPQdBXr.js +61 -0
  124. package/dist/assets/clarity-Dn5IMItf.js +1 -0
  125. package/dist/assets/clock-B7Udw_0s.js +8 -0
  126. package/dist/assets/clojure-P80f7IUj.js +1 -0
  127. package/dist/assets/close-ClhMnzas.js +8 -0
  128. package/dist/assets/clsx-B-dksMZM.js +1 -0
  129. package/dist/assets/cmake-D1j8_8rp.js +1 -0
  130. package/dist/assets/cobol-BBKr1ja6.js +1 -0
  131. package/dist/assets/codeowners-Bp6g37R7.js +1 -0
  132. package/dist/assets/codeql-DsOJ9woJ.js +1 -0
  133. package/dist/assets/coffee-Ch7k5sss.js +1 -0
  134. package/dist/assets/coinPlaceholder-Bsvaf8UD.js +8 -0
  135. package/dist/assets/common-lisp-Cg-RD9OK.js +1 -0
  136. package/dist/assets/compass-CtgRkLwG.js +8 -0
  137. package/dist/assets/connect-UA7M4XW6-IY3X6Bmr.js +1 -0
  138. package/dist/assets/copy-Cju_aL0g.js +15 -0
  139. package/dist/assets/coq-BqXF5kFF.js +1 -0
  140. package/dist/assets/core-Dv4ivRNs.js +908 -0
  141. package/dist/assets/cpp-BMRokrvK.js +1 -0
  142. package/dist/assets/create-FASO7PVG-D_rvSpre.js +1 -0
  143. package/dist/assets/cronos-HJPAQTAE-BEOvlOC4.js +1 -0
  144. package/dist/assets/crystal-LUwhHfY5.js +1 -0
  145. package/dist/assets/csharp-B_TYUkTI.js +1 -0
  146. package/dist/assets/css-Z72CF80r.js +1 -0
  147. package/dist/assets/csv-fuZLfV_i.js +1 -0
  148. package/dist/assets/cue-D82EKSYY.js +1 -0
  149. package/dist/assets/cursor-D3NwpSI9.js +3 -0
  150. package/dist/assets/cursor-transparent-A0O6SzCH.js +12 -0
  151. package/dist/assets/cypher-COkxafJQ.js +1 -0
  152. package/dist/assets/d-85-TOEBH.js +1 -0
  153. package/dist/assets/dark-plus-C3mMm8J8.js +1 -0
  154. package/dist/assets/dart-CtKP3W-j.js +1 -0
  155. package/dist/assets/dates-Pi3-Ywng.js +1 -0
  156. package/dist/assets/dax-CEL-wOlO.js +1 -0
  157. package/dist/assets/de_DE-PYAO5YD6-BWlqPWgO.js +1487 -0
  158. package/dist/assets/degen-FQQ4XGHB-CeHTs88l.js +1 -0
  159. package/dist/assets/desktop-BmXAJ9_W.js +1 -0
  160. package/dist/assets/desktop-CuYleYi9.js +9 -0
  161. package/dist/assets/diff-D97Zzqfu.js +1 -0
  162. package/dist/assets/dijkstra-COg3n3zL.js +1 -0
  163. package/dist/assets/disconnect-UdfoNj_d.js +8 -0
  164. package/dist/assets/discord-CBP0IyFM.js +17 -0
  165. package/dist/assets/docker-BcOcwvcX.js +1 -0
  166. package/dist/assets/dotenv-De0Btta0.js +1 -0
  167. package/dist/assets/dracula-BzJJZx-M.js +1 -0
  168. package/dist/assets/dracula-soft-BXkSAIEj.js +1 -0
  169. package/dist/assets/dream-maker-BtqSS_iP.js +1 -0
  170. package/dist/assets/edge-CJaD-t2L.js +1 -0
  171. package/dist/assets/elixir-DkJLSxtU.js +1 -0
  172. package/dist/assets/elm-DbKCFpqz.js +1 -0
  173. package/dist/assets/emacs-lisp-DaIrSCgJ.js +1 -0
  174. package/dist/assets/en_US-Y4ZOVFV4-3vDquI1C.js +1651 -0
  175. package/dist/assets/en_US-Y4ZOVFV4-CcVPgXVa.css +1 -0
  176. package/dist/assets/erb-CSMaCouu.js +1 -0
  177. package/dist/assets/erlang-DsQrWhSR.js +1 -0
  178. package/dist/assets/es_419-HRGOJ6VT-D-qzxUM-.js +1487 -0
  179. package/dist/assets/ethereum-RGGVA4PY-SWGOlkuk.js +1 -0
  180. package/dist/assets/etherscan-PHAlrHol.js +6 -0
  181. package/dist/assets/events-DQ172AOg.js +1 -0
  182. package/dist/assets/everforest-dark-BgDCqdQA.js +1 -0
  183. package/dist/assets/everforest-light-C8M2exoo.js +1 -0
  184. package/dist/assets/exclamation-triangle-udtYedHZ.js +4 -0
  185. package/dist/assets/extension-BSfnWZTn.js +8 -0
  186. package/dist/assets/external-link-BhINeBf6.js +8 -0
  187. package/dist/assets/facebook-DPMSywQV.js +26 -0
  188. package/dist/assets/farcaster-BgZocY3-.js +12 -0
  189. package/dist/assets/fennel-BYunw83y.js +1 -0
  190. package/dist/assets/filters-H_ETj-7w.js +8 -0
  191. package/dist/assets/fish-BvzEVeQv.js +1 -0
  192. package/dist/assets/flow-5FQJFCTK-CUie2reO.js +1 -0
  193. package/dist/assets/fluent-C4IJs8-o.js +1 -0
  194. package/dist/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
  195. package/dist/assets/fortran-free-form-BxgE0vQu.js +1 -0
  196. package/dist/assets/fr_FR-IGGVC6RM-D8LpUM75.js +1487 -0
  197. package/dist/assets/fsharp-CXgrBDvD.js +1 -0
  198. package/dist/assets/gdresource-TyuKm33G.js +1 -0
  199. package/dist/assets/gdscript-DqcFQ5yU.js +1 -0
  200. package/dist/assets/gdshader-DkwncUOv.js +1 -0
  201. package/dist/assets/genie-D0YGMca9.js +1 -0
  202. package/dist/assets/gherkin-DyxjwDmM.js +1 -0
  203. package/dist/assets/git-commit-F4YmCXRG.js +1 -0
  204. package/dist/assets/git-rebase-r7XF79zn.js +1 -0
  205. package/dist/assets/github-Dnt_pb3p.js +18 -0
  206. package/dist/assets/github-dark-DHJKELXO.js +1 -0
  207. package/dist/assets/github-dark-default-Cuk6v7N8.js +1 -0
  208. package/dist/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
  209. package/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
  210. package/dist/assets/github-light-DAi9KRSo.js +1 -0
  211. package/dist/assets/github-light-default-D7oLnXFd.js +1 -0
  212. package/dist/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
  213. package/dist/assets/gleam-BspZqrRM.js +1 -0
  214. package/dist/assets/glimmer-js-Drrc9bTt.js +1 -0
  215. package/dist/assets/glimmer-ts-zeybXsvi.js +1 -0
  216. package/dist/assets/glsl-DplSGwfg.js +1 -0
  217. package/dist/assets/gn-8iBmfbXw.js +1 -0
  218. package/dist/assets/gnosis-37ZC4RBL-B137OtHZ.js +1 -0
  219. package/dist/assets/gnuplot-DdkO51Og.js +1 -0
  220. package/dist/assets/go-C27-OAKa.js +1 -0
  221. package/dist/assets/google-Mu_8pwD-.js +18 -0
  222. package/dist/assets/graphql-ChdNCCLP.js +1 -0
  223. package/dist/assets/gravity-J5YQHTYH-Bj6B0uod.js +1 -0
  224. package/dist/assets/groovy-gcz8RCvz.js +1 -0
  225. package/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
  226. package/dist/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
  227. package/dist/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
  228. package/dist/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
  229. package/dist/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
  230. package/dist/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
  231. package/dist/assets/hack-Ck6-gGSS.js +1 -0
  232. package/dist/assets/haml-GN_XdMnF.js +1 -0
  233. package/dist/assets/handlebars-DPT5vKgj.js +1 -0
  234. package/dist/assets/hardhat-TX56IT5N-CV1FY-wE.js +1 -0
  235. package/dist/assets/haskell-Df6bDoY_.js +1 -0
  236. package/dist/assets/haxe-CfZj7gIn.js +1 -0
  237. package/dist/assets/hcl-BWvSN4gD.js +1 -0
  238. package/dist/assets/help-circle-DRVJ-8K8.js +12 -0
  239. package/dist/assets/hi_IN-XSKAA3MF-C3QUpWyP.js +1487 -0
  240. package/dist/assets/highlighted-body-KQOG7T2V-ClwcaYX1.js +1 -0
  241. package/dist/assets/hjson-D5-asLiD.js +1 -0
  242. package/dist/assets/hlsl-D3lLCCz7.js +1 -0
  243. package/dist/assets/horizon-BUw7H-hv.js +1 -0
  244. package/dist/assets/horizon-bright-CUuTKBJd.js +1 -0
  245. package/dist/assets/houston-DnULxvSX.js +1 -0
  246. package/dist/assets/html-BlS82ilI.js +1 -0
  247. package/dist/assets/html-derivative-DZhk3IEZ.js +1 -0
  248. package/dist/assets/http-jrhK8wxY.js +1 -0
  249. package/dist/assets/hurl-irOxFIW8.js +1 -0
  250. package/dist/assets/hxml-2-FPmUDs.js +1 -0
  251. package/dist/assets/hy-DFXneXwc.js +1 -0
  252. package/dist/assets/hyperevm-VKPAA4SA-CHwraEsx.js +1 -0
  253. package/dist/assets/id-DXjcfKMm.js +12 -0
  254. package/dist/assets/id_ID-KUOB4UAL-K9y-nRWm.js +1487 -0
  255. package/dist/assets/image-Bhqm-9NV.js +4 -0
  256. package/dist/assets/imba-DGztddWO.js +1 -0
  257. package/dist/assets/index-BrcuwiCz.js +47 -0
  258. package/dist/assets/index-BwpQbdIU.js +1 -0
  259. package/dist/assets/index-C21bvTBH.js +91 -0
  260. package/dist/assets/index-C9wUwD4n.js +395 -0
  261. package/dist/assets/index-CR02SnS1.js +1 -0
  262. package/dist/assets/index-DNA9wtqn.js +16 -0
  263. package/dist/assets/index-DqHGr8d4.js +1 -0
  264. package/dist/assets/index-U4U6E7fq.css +1 -0
  265. package/dist/assets/index-kzlEvkEN.js +1 -0
  266. package/dist/assets/index.es-DX2eegnP.js +39 -0
  267. package/dist/assets/info-BaRtFUwf.js +3 -0
  268. package/dist/assets/info-circle-Bsl8G0Ii.js +12 -0
  269. package/dist/assets/ini-BEwlwnbL.js +1 -0
  270. package/dist/assets/ink-FZMYZWHG-62p-5IK5.js +1 -0
  271. package/dist/assets/ja_JP-4WRQ63RX-Ct5pF4ug.js +1487 -0
  272. package/dist/assets/java-CylS5w8V.js +1 -0
  273. package/dist/assets/javascript-wDzz0qaB.js +1 -0
  274. package/dist/assets/jinja-DFQZVq3b.js +1 -0
  275. package/dist/assets/jison-wvAkD_A8.js +1 -0
  276. package/dist/assets/json-Cp-IABpG.js +1 -0
  277. package/dist/assets/json5-C9tS-k6U.js +1 -0
  278. package/dist/assets/jsonc-Des-eS-w.js +1 -0
  279. package/dist/assets/jsonl-DcaNXYhu.js +1 -0
  280. package/dist/assets/jsonnet-DFQXde-d.js +1 -0
  281. package/dist/assets/jssm-C2t-YnRu.js +1 -0
  282. package/dist/assets/jsx-g9-lgVsj.js +1 -0
  283. package/dist/assets/julia-Cu79e8SL.js +1 -0
  284. package/dist/assets/just-CMxyWJJc.js +1 -0
  285. package/dist/assets/kaia-65D2U3PU-JmuLQ4gC.js +1 -0
  286. package/dist/assets/kanagawa-dragon-BuwD2xS4.js +1 -0
  287. package/dist/assets/kanagawa-lotus-C3DzagqV.js +1 -0
  288. package/dist/assets/kanagawa-wave-DFGoQZhC.js +1 -0
  289. package/dist/assets/kdl-DV7GczEv.js +1 -0
  290. package/dist/assets/ko_KR-I2K7AIEP-B5gw8Mwb.js +1487 -0
  291. package/dist/assets/kotlin-BdnUsdx6.js +1 -0
  292. package/dist/assets/kusto-wEQ09or8.js +1 -0
  293. package/dist/assets/laserwave-DUszq2jm.js +1 -0
  294. package/dist/assets/latex-DJVikpzR.js +1 -0
  295. package/dist/assets/lean-BZvkOJ9d.js +1 -0
  296. package/dist/assets/less-B1dDrJ26.js +1 -0
  297. package/dist/assets/light-plus-B7mTdjB0.js +1 -0
  298. package/dist/assets/lightbulb-BlV4kI0m.js +3 -0
  299. package/dist/assets/limits-D_C7APR_.js +1 -0
  300. package/dist/assets/linea-QRMVQ5DY-DuI3vv0d.js +1 -0
  301. package/dist/assets/liquid-B-duXHXw.js +1 -0
  302. package/dist/assets/llvm-BZoOZj88.js +1 -0
  303. package/dist/assets/log-2UxHyX5q.js +1 -0
  304. package/dist/assets/login-UP3DZBGS-Db_wM5oQ.js +1 -0
  305. package/dist/assets/logo-BtOb2qkB.js +1 -0
  306. package/dist/assets/lua-BaeVxFsk.js +1 -0
  307. package/dist/assets/luau-nOZpfvQi.js +1 -0
  308. package/dist/assets/mail-BPcY_N8f.js +8 -0
  309. package/dist/assets/make-CHLpvVh8.js +1 -0
  310. package/dist/assets/manta-SI27YFEJ-CpVOKa06.js +1 -0
  311. package/dist/assets/mantle-CKIUT334-DR2WgqzU.js +1 -0
  312. package/dist/assets/markdown-Cvjx9yec.js +1 -0
  313. package/dist/assets/marko-BYgDmDgU.js +1 -0
  314. package/dist/assets/material-theme-D5KoaKCx.js +1 -0
  315. package/dist/assets/material-theme-darker-BfHTSMKl.js +1 -0
  316. package/dist/assets/material-theme-lighter-B0m2ddpp.js +1 -0
  317. package/dist/assets/material-theme-ocean-CyktbL80.js +1 -0
  318. package/dist/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
  319. package/dist/assets/matlab-D7o27uSR.js +1 -0
  320. package/dist/assets/mdc-DF4WjDMn.js +1 -0
  321. package/dist/assets/mdx-Cmh6b_Ma.js +1 -0
  322. package/dist/assets/mermaid-CQcHuHx7.js +1 -0
  323. package/dist/assets/mermaid-MCJ5UELQ-BFJCTi2D.css +1 -0
  324. package/dist/assets/mermaid-MCJ5UELQ-DAirhLo4.js +793 -0
  325. package/dist/assets/metaMaskWallet-SITXT2FV-BlemcphV.js +1 -0
  326. package/dist/assets/metamask-sdk-B0WxSi8v.js +542 -0
  327. package/dist/assets/min-dark-CafNBF8u.js +1 -0
  328. package/dist/assets/min-light-CTRr51gU.js +1 -0
  329. package/dist/assets/mipsasm-CKIfxQSi.js +1 -0
  330. package/dist/assets/mobile-9_L4G6Kz.js +9 -0
  331. package/dist/assets/models-BpLCh6Fr.js +1 -0
  332. package/dist/assets/mojo-DJz3ZmWd.js +1 -0
  333. package/dist/assets/monad-4KWC6TSS-DVXSkpiz.js +1 -0
  334. package/dist/assets/monokai-CR4piiQ-.js +1 -0
  335. package/dist/assets/moonbit-Bag4Rp_g.js +1 -0
  336. package/dist/assets/more-BMrrxkhZ.js +11 -0
  337. package/dist/assets/move-el3G9tDJ.js +1 -0
  338. package/dist/assets/ms_MY-6VZW6Q3Z-BtFD07hR.js +1487 -0
  339. package/dist/assets/narrat-DRg8JJMk.js +1 -0
  340. package/dist/assets/network-placeholder-CYXkxcyL.js +14 -0
  341. package/dist/assets/nextflow-BCxp2Aob.js +1 -0
  342. package/dist/assets/nextflow-groovy-CedDknKX.js +1 -0
  343. package/dist/assets/nftPlaceholder-CfIu_Ovu.js +8 -0
  344. package/dist/assets/nginx-BpAMiNFr.js +1 -0
  345. package/dist/assets/night-owl-C39BiMTA.js +1 -0
  346. package/dist/assets/night-owl-light-CMTm3GFP.js +1 -0
  347. package/dist/assets/nim-nV83PyhX.js +1 -0
  348. package/dist/assets/nix-CwoSXNpI.js +1 -0
  349. package/dist/assets/nord-Ddv68eIx.js +1 -0
  350. package/dist/assets/nsis-BlV79W_Q.js +1 -0
  351. package/dist/assets/nushell-BXD5iret.js +1 -0
  352. package/dist/assets/objective-c-DXmwc3jG.js +1 -0
  353. package/dist/assets/objective-cpp-CLxacb5B.js +1 -0
  354. package/dist/assets/ocaml-C0hk2d4L.js +1 -0
  355. package/dist/assets/odin-BBf5iR-q.js +1 -0
  356. package/dist/assets/off-BpqSEfQB.js +8 -0
  357. package/dist/assets/one-dark-pro-CxGP3dtY.js +1 -0
  358. package/dist/assets/one-light-C3Wv6jpd.js +1 -0
  359. package/dist/assets/openscad-C4EeE6gA.js +1 -0
  360. package/dist/assets/optimism-HAF2GUT7-ec6Nqxs9.js +1 -0
  361. package/dist/assets/org-6a7ccXN_.js +1 -0
  362. package/dist/assets/pascal-D93ZcfNL.js +1 -0
  363. package/dist/assets/perl-5klg-GXX.js +1 -0
  364. package/dist/assets/php-DoruYMF0.js +1 -0
  365. package/dist/assets/pkl-u5AG7uiY.js +1 -0
  366. package/dist/assets/plastic-3e1v2bzS.js +1 -0
  367. package/dist/assets/play-store-BKqBXU1V.js +32 -0
  368. package/dist/assets/plsql-ChMvpjG-.js +1 -0
  369. package/dist/assets/plus-CSgT3KZh.js +13 -0
  370. package/dist/assets/po-BTJTHyun.js +1 -0
  371. package/dist/assets/poimandres-CS3Unz2-.js +1 -0
  372. package/dist/assets/polar-C0HS_06l.js +1 -0
  373. package/dist/assets/polygon-WW6ZI7PM-DXlmm4L1.js +1 -0
  374. package/dist/assets/postcss-CXtECtnM.js +1 -0
  375. package/dist/assets/powerquery-CEu0bR-o.js +1 -0
  376. package/dist/assets/powershell-Dd0kTxKP.js +1 -0
  377. package/dist/assets/prisma-Vru482bI.js +1 -0
  378. package/dist/assets/prolog-CbFg5uaA.js +1 -0
  379. package/dist/assets/proto-C7zT0LnQ.js +1 -0
  380. package/dist/assets/pt_BR-N3XOZ4SV-CvVpfsHb.js +1487 -0
  381. package/dist/assets/pug-BtYPkAgq.js +1 -0
  382. package/dist/assets/puppet-BMWR74SV.js +1 -0
  383. package/dist/assets/purescript-CklMAg4u.js +1 -0
  384. package/dist/assets/python-B6aJPvgy.js +1 -0
  385. package/dist/assets/qml-3beO22l8.js +1 -0
  386. package/dist/assets/qmldir-C8lEn-DE.js +1 -0
  387. package/dist/assets/qr-code-edbLJ8Gf.js +6 -0
  388. package/dist/assets/qss-IeuSbFQv.js +1 -0
  389. package/dist/assets/r-Cf5RLm7j.js +1 -0
  390. package/dist/assets/racket-BqYA7rlc.js +1 -0
  391. package/dist/assets/rainbowWallet-O26YNBMX-DUhYus-9.js +1 -0
  392. package/dist/assets/raku-DXvB9xmW.js +1 -0
  393. package/dist/assets/razor-CyjPwjZj.js +1 -0
  394. package/dist/assets/rbs-CpoqiR4B.js +1 -0
  395. package/dist/assets/recycle-horizontal-CuX0JB4-.js +9 -0
  396. package/dist/assets/red-DMbB5_pp.js +1 -0
  397. package/dist/assets/refresh-Dq45LHYF.js +8 -0
  398. package/dist/assets/refresh-S4T5V5GX-CwqIaaxK.js +1 -0
  399. package/dist/assets/reg-C-SQnVFl.js +1 -0
  400. package/dist/assets/regexp-CDVJQ6XC.js +1 -0
  401. package/dist/assets/rel-C3B-1QV4.js +1 -0
  402. package/dist/assets/reown-logo-CRobwYXY.js +12 -0
  403. package/dist/assets/riscv-BM1_JUlF.js +1 -0
  404. package/dist/assets/ron-D8l8udqQ.js +1 -0
  405. package/dist/assets/ronin-EMCPYXZT-N-QBHZdV.js +1 -0
  406. package/dist/assets/rose-pine-5qJOZa0Y.js +1 -0
  407. package/dist/assets/rose-pine-dawn-zx0QlTCp.js +1 -0
  408. package/dist/assets/rose-pine-moon-C9pEdX9L.js +1 -0
  409. package/dist/assets/rosmsg-BJDFO7_C.js +1 -0
  410. package/dist/assets/roving-DkptacxO.js +1 -0
  411. package/dist/assets/rst-CVOjT0e7.js +1 -0
  412. package/dist/assets/ru_RU-IITAPRET-DOj6Jzj7.js +1487 -0
  413. package/dist/assets/ruby-C8rp0wew.js +1 -0
  414. package/dist/assets/rust-DPvrY3IQ.js +1 -0
  415. package/dist/assets/safeWallet-5MNKTR5Z-D-5imDLD.js +1 -0
  416. package/dist/assets/sanko-RHQYXGM5-OX010CbN.js +1 -0
  417. package/dist/assets/sas-BGn39htG.js +1 -0
  418. package/dist/assets/sass-Cj5Yp3dK.js +1 -0
  419. package/dist/assets/scala-CqE71os6.js +1 -0
  420. package/dist/assets/scan-4UYSQ56Q-CjMz6-XC.js +1 -0
  421. package/dist/assets/scheme-C98Dy4si.js +1 -0
  422. package/dist/assets/scroll-5OBGQVOV-DJFECiai.js +1 -0
  423. package/dist/assets/scss-Cw6XMfVs.js +1 -0
  424. package/dist/assets/sdbl-DVxCFoDh.js +1 -0
  425. package/dist/assets/search-gYoog0zk.js +8 -0
  426. package/dist/assets/secp256k1-Cb4vPU9D.js +1 -0
  427. package/dist/assets/secp256k1-uRM0t8uf.js +1 -0
  428. package/dist/assets/send-Pm4IO0Hs.js +15 -0
  429. package/dist/assets/shaderlab-Dg9Lc6iA.js +1 -0
  430. package/dist/assets/shellscript-Yzrsuije.js +1 -0
  431. package/dist/assets/shellsession-BADoaaVG.js +1 -0
  432. package/dist/assets/sign-A7IJEUT5-CGsRnPrd.js +1 -0
  433. package/dist/assets/slack-dark-BthQWCQV.js +1 -0
  434. package/dist/assets/slack-ochin-DqwNpetd.js +1 -0
  435. package/dist/assets/smalltalk-BOQMe2GC.js +1 -0
  436. package/dist/assets/smithy-cds9vsN8.js +1 -0
  437. package/dist/assets/snazzy-light-Bw305WKR.js +1 -0
  438. package/dist/assets/solarized-dark-UcubFVte.js +1 -0
  439. package/dist/assets/solarized-light-DCG28T6R.js +1 -0
  440. package/dist/assets/solidity-DijEV5ha.js +1 -0
  441. package/dist/assets/soy-zscZBeg6.js +1 -0
  442. package/dist/assets/sparql-rVzFXLq3.js +1 -0
  443. package/dist/assets/splunk-BtCnVYZw.js +1 -0
  444. package/dist/assets/sql-DkvoVjww.js +1 -0
  445. package/dist/assets/ssh-config-_ykCGR6B.js +1 -0
  446. package/dist/assets/stata-DACIj5bg.js +1 -0
  447. package/dist/assets/stylus-BEDo0Tqx.js +1 -0
  448. package/dist/assets/superposition-HG6MMR2Y-bRkgatRO.js +1 -0
  449. package/dist/assets/surrealql-Cjom0U5J.js +1 -0
  450. package/dist/assets/svelte-D84K1R2Q.js +1 -0
  451. package/dist/assets/swapHorizontal-DhCZ210V.js +8 -0
  452. package/dist/assets/swapHorizontalBold-DHO5cxVU.js +8 -0
  453. package/dist/assets/swapHorizontalMedium-VGtbzLgi.js +16 -0
  454. package/dist/assets/swapHorizontalRoundedBold-6HTAC2Np.js +8 -0
  455. package/dist/assets/swapVertical-Dg6bMEa-.js +8 -0
  456. package/dist/assets/swift-C2oV4EkX.js +1 -0
  457. package/dist/assets/synthwave-84-CbfX1IO0.js +1 -0
  458. package/dist/assets/system-verilog-0hqHdDBg.js +1 -0
  459. package/dist/assets/systemd-4A_iFExJ.js +1 -0
  460. package/dist/assets/talonscript-CkByrt1z.js +1 -0
  461. package/dist/assets/tasl-QIJgUcNo.js +1 -0
  462. package/dist/assets/tcl-dwOrl1Do.js +1 -0
  463. package/dist/assets/telegram-CHXgC-Jw.js +16 -0
  464. package/dist/assets/templ-Vpw5XpSW.js +1 -0
  465. package/dist/assets/terraform-BETggiCN.js +1 -0
  466. package/dist/assets/tex-D96PA37w.js +1 -0
  467. package/dist/assets/th_TH-3ZQCKCQE-BcHUN2Q4.js +1487 -0
  468. package/dist/assets/three-dots-MixBEg-b.js +5 -0
  469. package/dist/assets/tokyo-night-hegEt444.js +1 -0
  470. package/dist/assets/toml-vGWfd6FD.js +1 -0
  471. package/dist/assets/tr_TR-QUPUGMUF-CwpF6ZFn.js +1487 -0
  472. package/dist/assets/ts-tags-Ls60c9xG.js +1 -0
  473. package/dist/assets/tsv-B_m7g4N7.js +1 -0
  474. package/dist/assets/tsx-COt5Ahok.js +1 -0
  475. package/dist/assets/turtle-BsS91CYL.js +1 -0
  476. package/dist/assets/twig-D9-LOF2p.js +1 -0
  477. package/dist/assets/twitch-CWrx7ZD7.js +18 -0
  478. package/dist/assets/twitterIcon-Vrp2iWQv.js +6 -0
  479. package/dist/assets/typescript-BPQ3VLAy.js +1 -0
  480. package/dist/assets/typespec-ClX509-Q.js +1 -0
  481. package/dist/assets/typst-DamkJZ1Q.js +1 -0
  482. package/dist/assets/uk_UA-SSN6SV5E-IlYYyRC6.js +1487 -0
  483. package/dist/assets/unichain-C5BWO2ZY-BfguYsnu.js +1 -0
  484. package/dist/assets/usage-MPZYg7D2.js +1 -0
  485. package/dist/assets/useInfiniteQuery-Bpu8bc5A.js +1 -0
  486. package/dist/assets/useTx-Cp52G7Yo.js +1 -0
  487. package/dist/assets/v-BGw2Nkan.js +1 -0
  488. package/dist/assets/vala-CsfeWuGM.js +1 -0
  489. package/dist/assets/vb-Cu-pLBUe.js +1 -0
  490. package/dist/assets/verify-Cv1Ie02p.js +8 -0
  491. package/dist/assets/verify-filled-D4Of1TFY.js +8 -0
  492. package/dist/assets/verilog-nZwndyjY.js +1 -0
  493. package/dist/assets/vesper-DRje8inN.js +1 -0
  494. package/dist/assets/vhdl-CeAyd5Ju.js +1 -0
  495. package/dist/assets/vi_VN-7BUVRNYY-CZ9S75qZ.js +1487 -0
  496. package/dist/assets/viml-CJc9bBzg.js +1 -0
  497. package/dist/assets/vitesse-black-Bkuqu6BP.js +1 -0
  498. package/dist/assets/vitesse-dark-D0r3Knsf.js +1 -0
  499. package/dist/assets/vitesse-light-CVO1_9PV.js +1 -0
  500. package/dist/assets/vue-DSqPwMUe.js +1 -0
  501. package/dist/assets/vue-html-AaS7Mt5G.js +1 -0
  502. package/dist/assets/vue-vine-C0RcJ6UU.js +1 -0
  503. package/dist/assets/vyper-CDx5xZoG.js +1 -0
  504. package/dist/assets/w3m-modal-B8kvY5hN.js +642 -0
  505. package/dist/assets/wallet-placeholder-C-l2svWA.js +14 -0
  506. package/dist/assets/wallet-uxpqh3A6.js +8 -0
  507. package/dist/assets/walletConnectWallet-YHWKVTDY-D3lyiczV.js +1 -0
  508. package/dist/assets/walletconnect-0CplSxZT.js +30 -0
  509. package/dist/assets/warning-circle-gLBXgr6A.js +12 -0
  510. package/dist/assets/wasm-CG6Dc4jp.js +1 -0
  511. package/dist/assets/wasm-MzD3tlZU.js +1 -0
  512. package/dist/assets/wenyan-BV7otONQ.js +1 -0
  513. package/dist/assets/wgsl-Dx-B1_4e.js +1 -0
  514. package/dist/assets/wikitext-BhOHFoWU.js +1 -0
  515. package/dist/assets/wit-5i3qLPDT.js +1 -0
  516. package/dist/assets/wolfram-lXgVvXCa.js +1 -0
  517. package/dist/assets/x-C17dW4I6.js +12 -0
  518. package/dist/assets/xdc-KJ3TDBYO-DNV6zchh.js +1 -0
  519. package/dist/assets/xml-sdJ4AIDG.js +1 -0
  520. package/dist/assets/xsl-CtQFsRM5.js +1 -0
  521. package/dist/assets/yaml-Buea-lGh.js +1 -0
  522. package/dist/assets/zenscript-DVFEvuxE.js +1 -0
  523. package/dist/assets/zetachain-TLDS5IPW-Udhyw16T.js +1 -0
  524. package/dist/assets/zh_CN-HJBN674C-Baf0GEeT.js +1487 -0
  525. package/dist/assets/zh_HK-JW3WLRKE-VztJKXL5.js +1487 -0
  526. package/dist/assets/zh_TW-VNNRNXY7-aWfg7Qp4.js +1487 -0
  527. package/dist/assets/zig-VOosw3JB.js +1 -0
  528. package/dist/assets/zksync-DH7HK5U4-Dt4usFw6.js +1 -0
  529. package/dist/assets/zora-FYL5H3IO-iB4wygST.js +1 -0
  530. package/dist/index.html +16 -0
  531. package/index.d.ts +2 -0
  532. package/index.js +4 -0
  533. package/package.json +55 -3
  534. package/README.md +0 -3
@@ -0,0 +1 @@
1
+ const e=Object.freeze(JSON.parse(`{"displayName":"Fortran (Free Form)","fileTypes":["f90","F90","f95","F95","f03","F03","f08","F08","f18","F18","fpp","FPP",".pf",".PF"],"firstLineMatch":"(?i)-\\\\*- mode: fortran free -\\\\*-","injections":{"source.fortran.free - ( string | comment | meta.preprocessor )":{"patterns":[{"include":"#line-continuation-operator"},{"include":"#preprocessor"}]},"string.quoted.double.fortran":{"patterns":[{"include":"#string-line-continuation-operator"}]},"string.quoted.single.fortran":{"patterns":[{"include":"#string-line-continuation-operator"}]}},"name":"fortran-free-form","patterns":[{"include":"#preprocessor"},{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#include-statement"},{"include":"#import-statement"},{"include":"#block-data-definition"},{"include":"#function-definition"},{"include":"#module-definition"},{"include":"#program-definition"},{"include":"#submodule-definition"},{"include":"#subroutine-definition"},{"include":"#procedure-definition"},{"include":"#derived-type-definition"},{"include":"#enum-block-construct"},{"include":"#interface-block-constructs"},{"include":"#procedure-specification-statement"},{"include":"#type-specification-statements"},{"include":"#specification-statements"},{"include":"#control-constructs"},{"include":"#control-statements"},{"include":"#execution-statements"},{"include":"#intrinsic-functions"},{"include":"#variable"}],"repository":{"IO-item-list":{"begin":"(?i)(?=\\\\s*[\\"'0-9a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!);])","patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#brackets"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#variable"}]},"IO-keywords":{"begin":"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.read.fortran"},"2":{"name":"keyword.control.generic-spec.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"captures":{"1":{"name":"keyword.control.generic-spec.formatted.fortran"},"2":{"name":"keyword.control.generic-spec.unformatted.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(?:(formatted)|(unformatted))\\\\b"},{"include":"#invalid-word"}]},"IO-statements":{"patterns":[{"begin":"(?i)\\\\b(format)(?=\\\\s*[!\\\\&(])","beginCaptures":{"1":{"name":"keyword.control.format.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.IO.fortran","patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"include":"#format-parentheses"}]},{"begin":"(?i)\\\\b(?:(backspace)|(close)|(endfile)|(inquire)|(open)|(read)|(rewind)|(write))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.close.fortran"},"3":{"name":"keyword.control.endfile.fortran"},"4":{"name":"keyword.control.inquire.fortran"},"5":{"name":"keyword.control.open.fortran"},"6":{"name":"keyword.control.read.fortran"},"7":{"name":"keyword.control.rewind.fortran"},"8":{"name":"keyword.control.write.fortran"},"9":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.IO.fortran","patterns":[{"include":"#parentheses-dummy-variables"},{"include":"#IO-item-list"}]},{"captures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.endfile.fortran"},"3":{"name":"keyword.control.format.fortran"},"4":{"name":"keyword.control.print.fortran"},"5":{"name":"keyword.control.read.fortran"},"6":{"name":"keyword.control.rewind.fortran"}},"match":"(?i)\\\\b(?:(backspace)|(endfile)|(format)|(print)|(read)|(rewind))\\\\b"},{"begin":"(?i)\\\\b(?:(flush)|(wait))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.flush.fortran"},"2":{"name":"keyword.control.wait.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"keyword.control.flush.fortran"}},"match":"(?i)\\\\b(flush)\\\\b"}]},"abstract-attribute":{"captures":{"1":{"name":"storage.modifier.fortran.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(abstract)\\\\b"},"abstract-interface-block-construct":{"begin":"(?i)\\\\b(abstract)\\\\s+(interface)\\\\b","beginCaptures":{"1":{"name":"keyword.other.attribute.fortran.modern"},"2":{"name":"keyword.control.interface.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran.modern"}},"name":"meta.interface.abstract.fortran","patterns":[{"include":"$base"}]},"access-attribute":{"patterns":[{"include":"#private-attribute"},{"include":"#public-attribute"}]},"allocatable-attribute":{"captures":{"1":{"name":"storage.modifier.allocatable.fortran"}},"match":"(?i)\\\\s*\\\\b(allocatable)\\\\b"},"allocate-statement":{"begin":"(?i)\\\\b(allocate)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.allocate.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.allocate.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"arithmetic-operators":{"captures":{"1":{"name":"keyword.operator.subtraction.fortran"},"2":{"name":"keyword.operator.addition.fortran"},"3":{"name":"keyword.operator.division.fortran"},"4":{"name":"keyword.operator.power.fortran"},"5":{"name":"keyword.operator.multiplication.fortran"}},"match":"(-)|(\\\\+)|/(?![/=\\\\\\\\])|(\\\\*\\\\*)|(\\\\*)"},"array-constructor":{"begin":"(?<!\\\\n)(?=\\\\s*(\\\\[|\\\\(/))","end":"(?<!\\\\G)","name":"meta.contructor.array","patterns":[{"include":"#brackets"},{"begin":"\\\\s*(\\\\(/)","beginCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"end":"(/\\\\))","endCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]}]},"assign-statement":{"patterns":[{"begin":"(?i)\\\\b(assign)\\\\b","beginCaptures":{"1":{"name":"keyword.control.assign.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.assign.fortran","patterns":[{"captures":{"1":{"name":"keyword.control.to.fortran"}},"match":"(?i)\\\\s*\\\\b(to)\\\\b"},{"include":"$base"}]}]},"assignment-keyword":{"begin":"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.assignment.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#assignment-operator"},{"include":"#invalid-word"}]},"assignment-operator":{"match":"(?<![/<=>])(=)(?![=>])","name":"keyword.operator.assignment.fortran"},"associate-construct":{"begin":"(?i)\\\\b(associate)\\\\b(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.associate.fortran","end":"(?i)\\\\b(end\\\\s*associate)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"asynchronous-attribute":{"captures":{"1":{"name":"storage.modifier.asynchronous.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(asynchronous)\\\\b"},"attribute-specification-statement":{"begin":"(?i)(?=\\\\b(?:allocatable|asynchronous|contiguous|external|intrinsic|optional|parameter|pointer|private|protected|public|save|target|value|volatile)\\\\b|(bind|dimension|intent)\\\\s*\\\\(|(codimension)\\\\s*\\\\[)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#asynchronous-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#external-attribute"},{"include":"#intent-attribute"},{"include":"#intrinsic-attribute"},{"include":"#language-binding-attribute"},{"include":"#optional-attribute"},{"include":"#parameter-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#target-attribute"},{"include":"#value-attribute"},{"include":"#volatile-attribute"},{"begin":"(?=\\\\s*::)","contentName":"meta.attribute-list.normal.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"include":"#invalid-word"}]},{"include":"#name-list"}]},"block-construct":{"begin":"(?i)\\\\b(block)\\\\b(?!\\\\s*\\\\bdata\\\\b)","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.block.fortran","end":"(?i)\\\\b(end\\\\s*block)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"block-data-definition":{"begin":"(?i)\\\\b(block\\\\s*data)\\\\b(?:\\\\s+([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*block\\\\s*data)(?:\\\\s+(\\\\2))?|(end))\\\\b(?:\\\\s*(\\\\S((?!\\\\n).)*))?","endCaptures":{"1":{"name":"keyword.control.end-block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"},"3":{"name":"keyword.control.end-block-data.fortran"},"4":{"name":"invalid.error.block-data-definition.fortran"}},"name":"meta.block-data.fortran","patterns":[{"include":"$base"}]},"brackets":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"call-statement":{"patterns":[{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b(call)\\\\b","beginCaptures":{"1":{"name":"keyword.control.call.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.call.fortran","patterns":[{"begin":"(?i)(?=\\\\s*[a-z]\\\\w*\\\\s*%)","end":"(?=[\\\\n!;])","patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"captures":{"1":{"name":"variable.other.fortran"},"2":{"name":"keyword.accessor.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)\\\\s*(%)"},{"captures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)"},{"include":"#parentheses-dummy-variables"}]},{"include":"#intrinsic-subroutines"},{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b(?=\\\\s*[\\\\n!;])"},{"include":"$base"}]}]},"character-type":{"patterns":[{"begin":"(?i)\\\\b(character)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"keyword.operator.multiplication.fortran"},"3":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(character)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"codimension-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(codimension)(?=\\\\s*\\\\[)","beginCaptures":{"1":{"name":"storage.modifier.codimension.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#brackets"}]},"comments":{"begin":"!","end":"(?=\\\\n)","name":"comment.line.fortran"},"common-statement":{"begin":"(?i)\\\\b(common)\\\\b","beginCaptures":{"1":{"name":"keyword.control.common.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"concurrent-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(concurrent)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},"constants":{"patterns":[{"include":"#logical-constant"},{"include":"#numeric-constant"},{"include":"#string-constant"}]},"contiguous-attribute":{"captures":{"1":{"name":"storage.modifier.contigous.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(contiguous)\\\\b"},"continue-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(continue)\\\\b","beginCaptures":{"1":{"name":"keyword.control.continue.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.continue.fortran","patterns":[{"include":"#invalid-character"}]}]},"control-constructs":{"patterns":[{"include":"#named-control-constructs"},{"include":"#unnamed-control-constructs"}]},"control-statements":{"patterns":[{"include":"#assign-statement"},{"include":"#call-statement"},{"include":"#continue-statement"},{"include":"#cycle-statement"},{"include":"#entry-statement"},{"include":"#error-stop-statement"},{"include":"#exit-statement"},{"include":"#goto-statement"},{"include":"#pause-statement"},{"include":"#return-statement"},{"include":"#stop-statement"},{"include":"#where-statement"},{"include":"#image-control-statement"}]},"cpp-numeric-constant":{"captures":{"0":{"patterns":[{"begin":"(?=.)","beginCaptures":{},"end":"$","endCaptures":{},"patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.cpp"},"2":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"constant.numeric.hexadecimal.cpp"},"5":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"6":{"name":"punctuation.separator.constant.numeric.cpp"},"7":{"name":"keyword.other.unit.exponent.hexadecimal.cpp"},"8":{"name":"keyword.operator.plus.exponent.hexadecimal.cpp"},"9":{"name":"keyword.operator.minus.exponent.hexadecimal.cpp"},"10":{"name":"constant.numeric.exponent.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"11":{"name":"keyword.other.unit.suffix.floating-point.cpp"},"12":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?((?<=\\\\h)\\\\.|\\\\.(?=\\\\h))(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$"},{"captures":{"1":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"2":{"name":"punctuation.separator.constant.numeric.cpp"},"3":{"name":"constant.numeric.decimal.point.cpp"},"4":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"5":{"name":"punctuation.separator.constant.numeric.cpp"},"6":{"name":"keyword.other.unit.exponent.decimal.cpp"},"7":{"name":"keyword.operator.plus.exponent.decimal.cpp"},"8":{"name":"keyword.operator.minus.exponent.decimal.cpp"},"9":{"name":"constant.numeric.exponent.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"10":{"name":"keyword.other.unit.suffix.floating-point.cpp"},"11":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?((?<=[0-9])\\\\.|\\\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.binary.cpp"},"2":{"name":"constant.numeric.binary.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.suffix.integer.cpp"},"5":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Bb])([01](?:[01]|((?<=\\\\h)'(?=\\\\h)))*)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.octal.cpp"},"2":{"name":"constant.numeric.octal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.suffix.integer.cpp"},"5":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0)((?:[0-7]|((?<=\\\\h)'(?=\\\\h)))+)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.cpp"},"2":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.exponent.hexadecimal.cpp"},"5":{"name":"keyword.operator.plus.exponent.hexadecimal.cpp"},"6":{"name":"keyword.operator.minus.exponent.hexadecimal.cpp"},"7":{"name":"constant.numeric.exponent.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"8":{"name":"keyword.other.unit.suffix.integer.cpp"},"9":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$"},{"captures":{"1":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"2":{"name":"punctuation.separator.constant.numeric.cpp"},"3":{"name":"keyword.other.unit.exponent.decimal.cpp"},"4":{"name":"keyword.operator.plus.exponent.decimal.cpp"},"5":{"name":"keyword.operator.minus.exponent.decimal.cpp"},"6":{"name":"constant.numeric.exponent.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"7":{"name":"keyword.other.unit.suffix.integer.cpp"},"8":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$"},{"match":"(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])+","name":"invalid.illegal.constant.numeric.cpp"}]}]}},"match":"(?<!\\\\w)\\\\.?\\\\d(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])*"},"critical-construct":{"begin":"(?i)\\\\b(critical)\\\\b","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.critical.fortran","end":"(?i)\\\\b(end\\\\s*critical)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"cycle-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(cycle)\\\\b","beginCaptures":{"1":{"name":"keyword.control.cycle.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.fortran","patterns":[]}]},"data-statement":{"begin":"(?i)\\\\b(data)\\\\b","beginCaptures":{"1":{"name":"keyword.control.data.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"deallocate-statement":{"begin":"(?i)\\\\b(deallocate)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.deallocate.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.deallocate.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"deferred-attribute":{"captures":{"1":{"name":"storage.modifier.deferred.fortran"}},"match":"(?i)\\\\s*\\\\b(deferred)\\\\b"},"derived-type":{"begin":"(?i)\\\\b(?:(class)|(type))\\\\s*(\\\\()\\\\s*(([a-z]\\\\w*)|\\\\*)","beginCaptures":{"1":{"name":"storage.type.class.fortran"},"2":{"name":"storage.type.type.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"entity.name.type.fortran"}},"contentName":"meta.type-spec.fortran","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.specification.type.derived.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"derived-type-component-attribute-specification":{"begin":"(?i)(?=\\\\s*\\\\b(?:private|sequence)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#sequence-attribute"},{"include":"#invalid-character"}]},"derived-type-component-parameter-specification":{"captures":{"1":{"name":"storage.type.integer.fortran"},"2":{"name":"punctuation.comma.fortran"},"3":{"name":"keyword.other.attribute.derived-type.parameter.fortran"},"4":{"name":"keyword.operator.double-colon.fortran"},"5":{"name":"entity.name.derived-type.parameter.fortran"}},"match":"(?i)\\\\b(integer)\\\\s*(,)\\\\s*(kind|len)\\\\s*(?:(::)\\\\s*([a-z]\\\\w*)?)?\\\\s*(?=[\\\\n!;])"},"derived-type-component-procedure-specification":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-component-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#pass-attribute"},{"include":"#nopass-attribute"},{"include":"#invalid-word"},{"include":"#pointer-attribute"}]}]},{"include":"#procedure-name-list"}]},"derived-type-component-type-specification":{"begin":"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type)\\\\b(?![^\\\\n!\\"':;]*\\\\bfunction\\\\b))","end":"(?=[\\\\n!;])","name":"meta.specification.derived-type.fortran","patterns":[{"include":"#types"},{"include":"#line-continuation-operator"},{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.derived-type-component-type.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#pointer-attribute"},{"include":"#invalid-word"}]}]},{"include":"#name-list"}]},"derived-type-contains-attribute-specification":{"begin":"(?i)(?=\\\\bprivate\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#invalid-character"}]},"derived-type-contains-final-procedure-specification":{"begin":"(?i)\\\\b(final)\\\\b","beginCaptures":{"1":{"name":"storage.type.final-procedure.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.specification.procedure.final.fortran","patterns":[{"begin":"(?=\\\\s*(::))","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"name":"meta.attribute-list.derived-type-contains-final-procedure.fortran","patterns":[{"include":"#invalid-word"}]},{"include":"#procedure-name"}]},"derived-type-contains-generic-procedure-specification":{"begin":"(?i)\\\\b(generic)\\\\b","beginCaptures":{"1":{"name":"storage.type.procedure.generic.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.specification.procedure.generic.fortran","patterns":[{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-contains-generic-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"include":"#IO-keywords"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#procedure-name"},{"include":"#pointer-operators"}]}]},"derived-type-contains-procedure-specification":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-contains-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","name":"meta.something.fortran","patterns":[{"include":"#access-attribute"},{"include":"#deferred-attribute"},{"include":"#non-overridable-attribute"},{"include":"#nopass-attribute"},{"include":"#pass-attribute"},{"include":"#invalid-word"}]}]},{"include":"#procedure-name-list"}]},"derived-type-definition":{"begin":"(?i)\\\\b(type)\\\\b(?!\\\\s*(\\\\(|is\\\\b|=))","beginCaptures":{"1":{"name":"keyword.control.type.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.derived-type.definition.fortran","patterns":[{"begin":"\\\\G(?=\\\\s*(,|::))","contentName":"meta.attribute-list.derived-type.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#abstract-attribute"},{"include":"#language-binding-attribute"},{"include":"#extends-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.type.fortran"}},"end":"(?i)(?:^|(?<=;))\\\\s*(end\\\\s*type)(?:\\\\s+(?:(\\\\1)|(\\\\w+)))?\\\\b","endCaptures":{"1":{"name":"keyword.control.endtype.fortran"},"2":{"name":"entity.name.type.fortran"},"3":{"name":"invalid.error.derived-type.fortran"}},"patterns":[{"include":"#dummy-variable-list"},{"include":"#comments"},{"begin":"(?i)^(?!\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)","end":"(?i)^(?=\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)","name":"meta.block.specification.derived-type.fortran","patterns":[{"include":"#comments"},{"include":"#derived-type-component-attribute-specification"},{"include":"#derived-type-component-parameter-specification"},{"include":"#derived-type-component-procedure-specification"},{"include":"#derived-type-component-type-specification"}]},{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end\\\\s*type\\\\b)","name":"meta.block.contains.fortran","patterns":[{"include":"#comments"},{"include":"#derived-type-contains-attribute-specification"},{"include":"#derived-type-contains-final-procedure-specification"},{"include":"#derived-type-contains-generic-procedure-specification"},{"include":"#derived-type-contains-procedure-specification"}]}]}]},"derived-type-operators":{"captures":{"1":{"name":"keyword.other.selector.fortran"}},"match":"\\\\s*(%)"},"dimension-attribute":{"begin":"(?i)\\\\s*\\\\b(dimension)(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.modifier.dimension.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#parentheses-dummy-variables"}]},"do-construct":{"patterns":[{"captures":{"1":{"name":"keyword.control.enddo.fortran"}},"match":"(?i)\\\\b(end\\\\s*do)\\\\b"},{"begin":"(?i)\\\\b(do)\\\\s+(\\\\d{1,5})","beginCaptures":{"1":{"name":"keyword.control.do.fortran"},"2":{"name":"constant.numeric.fortran"}},"end":"(?i)(?:^|(?<=;))(?=\\\\s*\\\\b\\\\2\\\\b)","name":"meta.do.labeled.fortran","patterns":[{"begin":"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#concurrent-attribute"},{"include":"#while-attribute"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"(?i)\\\\b(do)\\\\b","beginCaptures":{"1":{"name":"keyword.control.do.fortran"}},"end":"(?i)\\\\b(?:(continue)|(end\\\\s*do))\\\\b","endCaptures":{"1":{"name":"keyword.control.continue.fortran"},"2":{"name":"keyword.control.enddo.fortran"}},"name":"meta.block.do.unlabeled.fortran","patterns":[{"begin":"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.loop-control.fortran","patterns":[{"include":"#concurrent-attribute"},{"include":"#while-attribute"},{"include":"$base"}]},{"begin":"(?i)(?!\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)","end":"(?i)(?=\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)","patterns":[{"include":"$base"}]}]}]},"dummy-variable":{"captures":{"1":{"name":"variable.parameter.fortran"}},"match":"(?i)(?:^|(?<=[\\\\&(,]))\\\\s*([a-z]\\\\w*)"},"dummy-variable-list":{"begin":"\\\\G\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.fortran"}},"end":"\\\\)|(?=\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.fortran"}},"name":"meta.dummy-variable-list","patterns":[{"include":"#dummy-variable"}]},"elemental-attribute":{"captures":{"1":{"name":"storage.modifier.elemental.fortran"}},"match":"(?i)\\\\s*\\\\b(elemental)\\\\b"},"entry-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(entry)\\\\b","beginCaptures":{"1":{"name":"keyword.control.entry.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.entry.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.entry.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#dummy-variable-list"},{"include":"#result-statement"},{"include":"#language-binding-attribute"}]}]}]},"enum-block-construct":{"begin":"(?i)\\\\b(enum)\\\\b","beginCaptures":{"1":{"name":"keyword.control.enum.fortran"}},"end":"(?i)\\\\b(end\\\\s*enum)\\\\b","endCaptures":{"1":{"name":"keyword.control.end-enum.fortran"}},"name":"meta.enum.fortran","patterns":[{"begin":"\\\\G\\\\s*(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#language-binding-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)(?!\\\\s*\\\\b(end\\\\s*enum)\\\\b)","end":"(?i)(?=\\\\b(end\\\\s*enum)\\\\b)","name":"meta.block.specification.enum.fortran","patterns":[{"include":"#comments"},{"begin":"(?i)\\\\b(enumerator)\\\\b","beginCaptures":{"1":{"name":"keyword.other.enumerator.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.enumerator-specification.fortran","patterns":[{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.enum.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"include":"#invalid-word"}]},{"include":"#comments"},{"include":"#name-list"}]}]}]},"equivalence-statement":{"begin":"(?i)\\\\b(equivalence)\\\\b","beginCaptures":{"1":{"name":"keyword.control.common.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"\\\\G|(,)","beginCaptures":{"1":{"name":"puntuation.comma.fortran"}},"end":"(?=[\\\\n!,;])","patterns":[{"include":"#parentheses-dummy-variables"}]}]},"error-stop-statement":{"begin":"(?i)\\\\s*\\\\b(error\\\\s+stop)\\\\b","beginCaptures":{"1":{"name":"keyword.control.errorstop.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.errorstop.fortran","patterns":[{"include":"#constants"},{"include":"#string-operators"},{"include":"#variable"},{"include":"#invalid-character"}]},"event-statement":{"begin":"(?i)\\\\b(event (?:post|wait))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.event.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.event.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"execution-statements":{"patterns":[{"include":"#allocate-statement"},{"include":"#deallocate-statement"},{"include":"#IO-statements"},{"include":"#nullify-statement"}]},"exit-statement":{"begin":"(?i)\\\\s*\\\\b(exit)\\\\b","beginCaptures":{"1":{"name":"keyword.control.exit.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.exit.fortran","patterns":[]},"explicit-interface-block-construct":{"begin":"(?i)\\\\b(interface)\\\\b(?=\\\\s*[\\\\n!;])","beginCaptures":{"1":{"name":"keyword.control.interface.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran.modern"}},"name":"meta.interface.explicit.fortran","patterns":[{"include":"$base"}]},"extends-attribute":{"begin":"(?i)\\\\s*\\\\b(extends)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.extends.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[{"match":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","name":"entity.name.type.fortran"}]},"external-attribute":{"captures":{"1":{"name":"storage.modifier.external.fortran"}},"match":"(?i)\\\\s*\\\\b(external)\\\\b"},"fail-image-statement":{"captures":{"1":{"name":"keyword.control.fail-image.fortran"}},"match":"\\\\b(fail image)\\\\b","name":"meta.statement.fail-image.fortran"},"forall-construct":{"applyEndPatternLast":1,"begin":"(?i)\\\\b(forall)\\\\b","beginCaptures":{"1":{"name":"keyword.control.forall.fortran"}},"end":"(?<!\\\\G)","patterns":[{"begin":"(?i)\\\\G(?!\\\\s*[\\\\n!;])","end":"(?<!\\\\G)","name":"meta.loop-control.fortran","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},{"begin":"(?<=\\\\))(?=\\\\s*[\\\\n!;])","end":"(?i)\\\\b(end\\\\s*forall)\\\\b","endCaptures":{"1":{"name":"keyword.control.endforall.fortran"}},"name":"meta.block.forall.fortran","patterns":[{"include":"$base"}]},{"begin":"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])","end":"\\\\n","name":"meta.statement.control.forall.fortran","patterns":[{"include":"$base"}]}]},"form-team-statement":{"begin":"(?i)\\\\b(form team)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.form-team.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.form-team.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"format-descriptor":{"begin":"\\\\(/","beginCaptures":{"0":{"name":"punctuation.bracket.left.fortran"}},"contentName":"meta.format-descriptor.fortran","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.bracket.right.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"format-descriptors":{"patterns":[{"captures":{"1":{"name":"keyword.other.format-descriptor.fortran"}},"match":"(?i)(?:\\\\b|(?<=\\\\d)|(?<=P))(EN|ES|EX|DT|DC|DP|RC|RD|RN|RP|RU|RZ|BN|BZ|SP|SS|TL|TR|[ABD-GILOPQSTXZ])(?=$|[^A-Z_a-z]|[D-G](?i))"},{"match":"/","name":"keyword.operator.format.newline.fortran"},{"match":":","name":"keyword.operator.format.separator.fortran"},{"match":"[$\\\\\\\\]","name":"keyword.other.format-descriptor.nonstandard.fortran"},{"match":"(?i)(?:\\\\b|(?<=\\\\d))\\\\d+H","name":"keyword.other.format-descriptor.legacy.fortran"}]},"format-parentheses":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"match":"(?:\\\\b|[-+])\\\\d+(?=[A-Za-z])","name":"constant.numeric.fortran"},{"include":"#format-descriptors"},{"include":"#format-parentheses"},{"include":"#parentheses-common"}]},"function-definition":{"begin":"(?i)(?=([^\\\\n!\\"':;](?!\\\\bend)(?!\\\\bsubroutine\\\\b))*\\\\bfunction\\\\b)","end":"(?=[\\\\n!;])","name":"meta.function.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bfunction\\\\b))","end":"(?i)(?=\\\\bfunction\\\\b)","name":"meta.attribute-list.function.fortran","patterns":[{"include":"#elemental-attribute"},{"include":"#module-attribute"},{"include":"#pure-attribute"},{"include":"#recursive-attribute"},{"include":"#types"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\b(function)\\\\b","beginCaptures":{"1":{"name":"keyword.other.function.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*function)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endfunction.fortran"},"2":{"name":"entity.name.function.fortran"},"3":{"name":"keyword.other.endfunction.fortran"},"4":{"name":"invalid.error.function.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.function.first-line.fortran","patterns":[{"include":"#dummy-variable-list"},{"include":"#result-statement"},{"include":"#language-binding-attribute"}]},{"begin":"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","name":"meta.block.specification.function.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]}]},"generic-interface-block-construct":{"begin":"(?i)\\\\b(interface)\\\\b","beginCaptures":{"1":{"name":"keyword.control.interface.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.interface.generic.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()\\\\s*(?:(=)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.assignment.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"keyword.operator.assignment.fortran"},"4":{"name":"invalid.error.generic-interface.fortran"},"5":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.assignment.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.operator.assignment.fortran"},"5":{"name":"invalid.error.generic-interface-end.fortran"},"6":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(operator)\\\\s*(\\\\()\\\\s*(?:(\\\\.[a-z]+\\\\.|==|/=|>=|[<>]|<=|[-+/]|//|\\\\*\\\\*?)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.operator.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"keyword.operator.fortran"},"4":{"name":"invalid.error.generic-interface-block-op.fortran"},"5":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.operator.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.operator.fortran"},"5":{"name":"invalid.error.generic-interface-block-op-end.fortran"},"6":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()\\\\s*(?:(formatted)|(unformatted)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.read.fortran"},"2":{"name":"keyword.other.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.other.formatted.fortran"},"5":{"name":"keyword.other.unformatted.fortran"},"6":{"name":"invalid.error.generic-interface-block.fortran"},"7":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(?:(\\\\2)|(\\\\3))\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\4)|(\\\\5)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.read.fortran"},"3":{"name":"keyword.other.write.fortran"},"4":{"name":"punctuation.parentheses.left.fortran"},"5":{"name":"keyword.other.formatted.fortran"},"6":{"name":"keyword.other.unformatted.fortran"},"7":{"name":"invalid.error.generic-interface-block-end.fortran"},"8":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b)?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"entity.name.function.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]}]},"goto-statement":{"begin":"(?i)\\\\s*\\\\b(go\\\\s*to)\\\\b","beginCaptures":{"1":{"name":"keyword.control.goto.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.goto.fortran","patterns":[{"include":"$base"}]},"if-construct":{"patterns":[{"begin":"(?i)\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#logical-control-expression"},{"begin":"(?i)\\\\s*\\\\b(then)\\\\b","beginCaptures":{"1":{"name":"keyword.control.then.fortran"}},"contentName":"meta.block.if.fortran","end":"(?i)\\\\b(end\\\\s*if)\\\\b","endCaptures":{"1":{"name":"keyword.control.endif.fortran"}},"patterns":[{"begin":"(?i)\\\\b(else\\\\s*if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.elseif.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"captures":{"1":{"name":"keyword.control.then.fortran"},"2":{"name":"meta.label.elseif.fortran"}},"match":"(?i)\\\\b(then)\\\\b(\\\\s*[a-z]\\\\w*)?"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.else.fortran"}},"end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"begin":"(?!(\\\\s*([\\\\n!;])))","end":"\\\\s*(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"meta.label.else.fortran"},"2":{"name":"invalid.error.label.else.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)?\\\\s*\\\\b(\\\\w*)\\\\b"},{"include":"#invalid-word"}]},{"begin":"(?i)(?!\\\\b(end\\\\s*if)\\\\b)","end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"include":"$base"}]}]},{"include":"$base"}]},{"begin":"(?i)(?=\\\\s*[a-z])","end":"(?=[\\\\n!;])","name":"meta.statement.control.if.fortran","patterns":[{"include":"$base"}]}]}]},"image-control-statement":{"patterns":[{"include":"#sync-all-statement"},{"include":"#sync-statement"},{"include":"#event-statement"},{"include":"#form-team-statement"},{"include":"#fail-image-statement"}]},"implicit-statement":{"begin":"(?i)\\\\b(implicit)\\\\b","beginCaptures":{"1":{"name":"keyword.other.implicit.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.implicit.fortran","patterns":[{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\s*\\\\b(none)\\\\b"},{"include":"$base"}]},"import-statement":{"begin":"(?i)\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.include.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*(?:(::)|(?=[a-z]))","beginCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#name-list"}]},{"begin":"\\\\G\\\\s*(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.other.all.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(all)\\\\b"},{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(none)\\\\b"},{"begin":"(?i)\\\\G\\\\s*\\\\b(only)\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.other.only.fortran"},"2":{"name":"keyword.other.colon.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#name-list"}]},{"include":"#invalid-word"}]}]},"include-statement":{"begin":"(?i)\\\\b(include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.include.fortran","patterns":[{"include":"#string-constant"},{"include":"#invalid-character"}]},"intent-attribute":{"begin":"(?i)\\\\s*\\\\b(intent)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.intent.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))|(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[{"captures":{"1":{"name":"storage.modifier.intent.in-out.fortran"},"2":{"name":"storage.modifier.intent.in.fortran"},"3":{"name":"storage.modifier.intent.out.fortran"}},"match":"(?i)\\\\b(?:(in\\\\s*out)|(in)|(out))\\\\b"},{"include":"#invalid-word"}]},"interface-block-constructs":{"patterns":[{"include":"#abstract-interface-block-construct"},{"include":"#explicit-interface-block-construct"},{"include":"#generic-interface-block-construct"}]},"interface-procedure-statement":{"begin":"(?i)(?=[^\\\\n!\\"';]*\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.procedure.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bprocedure\\\\b))","end":"(?i)(?=\\\\bprocedure\\\\b)","name":"meta.attribute-list.interface.fortran","patterns":[{"include":"#module-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"match":"\\\\G\\\\s*(::)"},{"include":"#procedure-name-list"}]}]},"intrinsic-attribute":{"captures":{"1":{"name":"storage.modifier.intrinsic.fortran"}},"match":"(?i)\\\\s*\\\\b(intrinsic)\\\\b"},"intrinsic-functions":{"patterns":[{"begin":"(?i)\\\\b(acosh|asinh|atanh|bge|bgt|ble|blt|dshiftl|dshiftr|findloc|hypot|iall|iany|image_index|iparity|is_contiguous|lcobound|leadz|mask[lr]|merge_bits|norm2|num_images|parity|popcnt|poppar|shift[alr]|storage_size|this_image|trailz|ucobound)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(bessel_[jy][01n]|erf(c(_scaled)?)?|gamma|log_gamma)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(command_argument_count|extends_type_of|is_iostat_end|is_iostat_eor|new_line|same_type_as|selected_char_kind)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(ieee_(class|copy_sign|is_(finite|nan|negative|normal)|logb|next_after|rem|rint|scalb|selected_real_kind|support_(datatype|denormal|divide|inf|io|nan|rounding|sqrt|standard|underflow_control)|unordered|value))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(ieee_support_(flag|halting))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(c_(associated|funloc|loc|sizeof))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(compiler_(options|version))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(null)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(achar|adjustl|adjustr|all|allocated|associated|any|bit_size|btest|ceiling|count|cshift|digits|dot_product|eoshift|epsilon|exponent|floor|fraction|huge|iachar|iand|ibclr|ibits|ibset|ieor|ior|ishftc?|kind|lbound|len_trim|logical|matmul|maxexponent|maxloc|maxval|merge|minexponent|minloc|minval|modulo|nearest|not|pack|precision|present|product|radix|range|repeat|reshape|rrspacing|scale|scan|selected_(int|real)_kind|set_exponent|shape|size|spacing|spread|sum|tiny|transfer|transpose|trim|ubound|unpack|verify)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b([cdi]?abs|acos|[ad]int|[ad]nint|aimag|amax[01]|amin[01]|d?asin|d?atan|d?atan2|char|conjg|[cd]?cos|d?cosh|cmplx|dble|i?dim|dmax1|dmin1|dprod|[cd]?exp|float|ichar|idint|ifix|index|int|len|lge|lgt|lle|llt|[acd]?log|[ad]?log10|max[01]?|min[01]?|[ad]?mod|(id)?nint|real|[di]?sign|[cd]?sin|d?sinh|sngl|[cd]?sqrt|d?tan|d?tanh)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]}]},"intrinsic-subroutines":{"patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(date_and_time|mvbits|random_number|random_seed|system_clock)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(cpu_time)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(rounding|underflow)_mode)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(flag|halting_mode|status))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(c_f_(p(?:|rocp)ointer))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(execute_command_line|get_command|get_command_argument|get_environment_variable|move_alloc)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]}]},"invalid-character":{"match":"(?i)[^\\\\n!;\\\\s]+","name":"invalid.error.character.fortran"},"invalid-word":{"match":"(?i)\\\\b\\\\w+\\\\b","name":"invalid.error.word.fortran"},"language-binding-attribute":{"begin":"(?i)\\\\s*\\\\b(bind)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.bind.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[{"match":"(?i)\\\\b(c)\\\\b","name":"variable.parameter.fortran"},{"include":"#dummy-variable"},{"include":"$base"}]},"line-continuation-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"match":"(?:^|(?<=;))\\\\s*(&)"},{"begin":"\\\\s*(&)","beginCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"contentName":"meta.line-continuation.fortran","end":"(?i)^(?:\\\\s*(&))?","endCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"patterns":[{"include":"#comments"},{"match":"\\\\S[^!]*","name":"invalid.error.line-cont.fortran"}]}]},"logical-constant":{"captures":{"1":{"name":"constant.language.logical.false.fortran"},"2":{"name":"constant.language.logical.true.fortran"}},"match":"(?i)\\\\s*(?:(\\\\.false\\\\.)|(\\\\.true\\\\.))"},"logical-control-expression":{"begin":"\\\\G(?=\\\\s*\\\\()","end":"(?<!\\\\G)","name":"meta.expression.control.logical.fortran","patterns":[{"include":"#parentheses"}]},"logical-operators":{"patterns":[{"match":"(?i)(\\\\s*\\\\.(and|eqv??|le|lt|ge|gt|ne|neqv|not|or)\\\\.)","name":"keyword.logical.fortran"},{"match":"(==|/=|>=|(?<!=)>|<=?)","name":"keyword.logical.fortran.modern"}]},"logical-type":{"patterns":[{"begin":"(?i)\\\\b(logical)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.logical.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"keyword.operator.multiplication.fortran"},"3":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(logical)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"module-attribute":{"captures":{"1":{"name":"storage.modifier.module.fortran"}},"match":"(?i)\\\\s*\\\\b(module)\\\\b(?=\\\\s*(?:[\\\\n!;]|[^\\\\n!\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b))"},"module-definition":{"begin":"(?i)(?=\\\\b(module)\\\\b)(?![^\\\\n!\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.module.fortran","patterns":[{"captures":{"1":{"name":"keyword.other.program.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(module)\\\\b"},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.class.module.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*module)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endmodule.fortran"},"2":{"name":"entity.name.class.module.fortran"},"3":{"name":"keyword.other.endmodule.fortran"},"4":{"name":"invalid.error.module-definition.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))","name":"meta.block.specification.module.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"name-list":{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!);])","patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#brackets"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#variable"}]},"named-control-constructs":{"applyEndPatternLast":1,"begin":"(?i)([a-z]\\\\w*)\\\\s*(:)(?=\\\\s*(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)","contentName":"meta.named-construct.fortran.modern","end":"(?i)(?!\\\\s*\\\\b(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)(?:\\\\b(\\\\1)\\\\b)?([^\\\\n!;\\\\s]*?)?(?=\\\\s*[\\\\n!;])","endCaptures":{"1":{"name":"meta.label.end.name.fortran"},"2":{"name":"invalid.error.named-control-constructs.fortran.modern"}},"patterns":[{"include":"#unnamed-control-constructs"}]},"namelist-statement":{"begin":"(?i)\\\\b(namelist)\\\\b","beginCaptures":{"1":{"name":"keyword.control.namelist.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"non-intrinsic-attribute":{"captures":{"1":{"name":"storage.modifier.non-intrinsic.fortran"}},"match":"(?i)\\\\s*\\\\b(non_intrinsic)\\\\b"},"non-overridable-attribute":{"captures":{"1":{"name":"storage.modifier.non-overridable.fortran"}},"match":"(?i)\\\\s*\\\\b(non_overridable)\\\\b"},"nopass-attribute":{"captures":{"1":{"name":"storage.modifier.nopass.fortran"}},"match":"(?i)\\\\s*\\\\b(nopass)\\\\b"},"nullify-statement":{"begin":"(?i)\\\\b(nullify)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.nullify.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.nullify.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"numeric-constant":{"match":"(?i)[-+]?(\\\\b\\\\d+\\\\.?\\\\d*|\\\\.\\\\d+)(_\\\\w+|d[-+]?\\\\d+|e[-+]?\\\\d+(_\\\\w+)?)?(?![_a-z])","name":"constant.numeric.fortran"},"numeric-type":{"patterns":[{"begin":"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.complex.fortran"},"2":{"name":"storage.type.double.fortran"},"3":{"name":"storage.type.doublecomplex.fortran"},"4":{"name":"storage.type.integer.fortran"},"5":{"name":"storage.type.real.fortran"},"6":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.complex.fortran"},"2":{"name":"storage.type.double.fortran"},"3":{"name":"storage.type.doublecomplex.fortran"},"4":{"name":"storage.type.integer.fortran"},"5":{"name":"storage.type.real.fortran"},"6":{"name":"storage.type.dimension.fortran"},"7":{"name":"keyword.operator.multiplication.fortran"},"8":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real)|(dimension))\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"operator-keyword":{"begin":"(?i)\\\\s*\\\\b(operator)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.operator.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#arithmetic-operators"},{"include":"#logical-operators"},{"include":"#user-defined-operators"},{"include":"#invalid-word"}]},"operators":{"patterns":[{"include":"#arithmetic-operators"},{"include":"#assignment-operator"},{"include":"#derived-type-operators"},{"include":"#logical-operators"},{"include":"#pointer-operators"},{"include":"#string-operators"},{"include":"#user-defined-operators"}]},"optional-attribute":{"captures":{"1":{"name":"storage.modifier.optional.fortran"}},"match":"(?i)\\\\s*\\\\b(optional)\\\\b"},"parameter-attribute":{"captures":{"1":{"name":"storage.modifier.parameter.fortran"}},"match":"(?i)\\\\s*\\\\b(parameter)\\\\b"},"parentheses":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#parentheses-common"}]},"parentheses-common":{"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"parentheses-dummy-variables":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#procedure-call-dummy-variable"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#parentheses-common"}]},"pass-attribute":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(pass)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.pass.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[]},{"captures":{"1":{"name":"storage.modifier.pass.fortran"}},"match":"(?i)\\\\s*\\\\b(pass)\\\\b"}]},"pause-statement":{"begin":"(?i)\\\\s*\\\\b(pause)\\\\b","beginCaptures":{"1":{"name":"keyword.control.pause.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.pause.fortran","patterns":[{"include":"#constants"},{"include":"#invalid-character"}]},"pointer-attribute":{"captures":{"1":{"name":"storage.modifier.pointer.fortran"}},"match":"(?i)\\\\s*\\\\b(pointer)\\\\b"},"pointer-operators":{"match":"(=>)","name":"keyword.other.point.fortran"},"preprocessor":{"begin":"^\\\\s*(#:?)","beginCaptures":{"1":{"name":"keyword.control.preprocessor.indicator.fortran"}},"end":"\\\\n","name":"meta.preprocessor","patterns":[{"include":"#preprocessor-if-construct"},{"include":"#preprocessor-statements"}]},"preprocessor-arithmetic-operators":{"captures":{"1":{"name":"keyword.operator.subtraction.fortran"},"2":{"name":"keyword.operator.addition.fortran"},"3":{"name":"keyword.operator.division.fortran"},"4":{"name":"keyword.operator.multiplication.fortran"}},"match":"(-)|(\\\\+)|(/)|(\\\\*)"},"preprocessor-assignment-operator":{"match":"(?<!=)(=)(?!=)","name":"keyword.operator.assignment.preprocessor.fortran"},"preprocessor-comments":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.preprocessor"},"preprocessor-constants":{"patterns":[{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-string-constant"}]},"preprocessor-define-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(define)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.define.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.macro.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-constants"},{"include":"#preprocessor-line-continuation-operator"}]},"preprocessor-defined-function":{"captures":{"1":{"name":"keyword.control.preprocessor.defined.fortran"}},"match":"(?i)\\\\b(defined)\\\\b"},"preprocessor-error-statement":{"begin":"(?i)\\\\G\\\\s*(error)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.error.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.macro.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"},{"include":"#preprocessor-line-continuation-operator"}]},"preprocessor-if-construct":{"patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.if.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.conditional.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-defined-function"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ifdef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.ifdef.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ifndef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.ifndef.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.else.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(elif)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.elif.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-defined-function"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(endif)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.endif.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"}]}]},"preprocessor-include-statement":{"begin":"(?i)\\\\G\\\\s*(include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.include.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.include.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.other.lt-gt.include.preprocessor.fortran"},{"include":"#line-continuation-operator"}]},"preprocessor-line-continuation-operator":{"begin":"\\\\s*(\\\\\\\\)","beginCaptures":{"1":{"name":"constant.character.escape.line-continuation.preprocessor.fortran"}},"end":"(?i)^"},"preprocessor-logical-operators":{"captures":{"1":{"name":"keyword.operator.logical.preprocessor.and.fortran"},"2":{"name":"keyword.operator.logical.preprocessor.equals.fortran"},"3":{"name":"keyword.operator.logical.preprocessor.not_equals.fortran"},"4":{"name":"keyword.operator.logical.preprocessor.or.fortran"},"5":{"name":"keyword.operator.logical.preprocessor.less_eq.fortran"},"6":{"name":"keyword.operator.logical.preprocessor.more_eq.fortran"},"7":{"name":"keyword.operator.logical.preprocessor.less.fortran"},"8":{"name":"keyword.operator.logical.preprocessor.more.fortran"},"9":{"name":"keyword.operator.logical.preprocessor.complementary.fortran"},"10":{"name":"keyword.operator.logical.preprocessor.xor.fortran"},"11":{"name":"keyword.operator.logical.preprocessor.bitand.fortran"},"12":{"name":"keyword.operator.logical.preprocessor.not.fortran"},"13":{"name":"keyword.operator.logical.preprocessor.bitor.fortran"}},"match":"(&&)|(==)|(!=)|(\\\\|\\\\|)|(<=)|(>=)|(<)|(>)|(~)|(\\\\^)|(&)|(!)|(\\\\|)","name":"keyword.operator.logical.preprocessor.fortran"},"preprocessor-operators":{"patterns":[{"include":"#preprocessor-line-continuation-operator"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"}]},"preprocessor-pragma-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(pragma)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.pragma.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.pragma.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"}]},"preprocessor-statements":{"patterns":[{"include":"#preprocessor-define-statement"},{"include":"#preprocessor-error-statement"},{"include":"#preprocessor-include-statement"},{"include":"#preprocessor-preprocessor-pragma-statement"},{"include":"#preprocessor-undefine-statement"}]},"preprocessor-string-constant":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.double.include.preprocessor.fortran"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.single.include.preprocessor.fortran"}]},"preprocessor-undefine-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(undef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.undef.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-line-continuation-operator"}]},"private-attribute":{"captures":{"1":{"name":"storage.modifier.private.fortran"}},"match":"(?i)\\\\s*\\\\b(private)\\\\b"},"procedure-call-dummy-variable":{"match":"(?i)\\\\s*([a-z]\\\\w*)(?=\\\\s*=)(?!\\\\s*==)","name":"variable.parameter.dummy-variable.fortran.modern"},"procedure-definition":{"begin":"(?i)(?=[^\\\\n!\\"';]*\\\\bmodule\\\\s+procedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.procedure.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b(module\\\\s+procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.procedure.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*procedure)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endprocedure.fortran"},"2":{"name":"entity.name.function.procedure.fortran"},"3":{"name":"keyword.other.endprocedure.fortran"},"4":{"name":"invalid.error.procedure-definition.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.first-line.fortran","patterns":[{"include":"#invalid-character"}]},{"begin":"(?i)(?!\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))","end":"(?i)(?=\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))","name":"meta.block.specification.procedure.fortran","patterns":[{"include":"$self"}]},{"begin":"(?i)\\\\s*(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*procedure\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$self"}]}]}]}]},"procedure-name":{"captures":{"1":{"name":"entity.name.function.procedure.fortran"}},"match":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b"},"procedure-name-list":{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"begin":"(?!\\\\s*\\\\n)","end":"(,)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.comma.fortran"}},"patterns":[{"include":"#procedure-name"},{"include":"#pointer-operators"}]}]},"procedure-specification-statement":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#intent-attribute"},{"include":"#optional-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#invalid-word"}]}]},{"include":"#procedure-name-list"}]},"procedure-type":{"patterns":[{"begin":"(?i)\\\\b(procedure)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.procedure.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#types"},{"include":"#procedure-name"}]},{"captures":{"1":{"name":"storage.type.procedure.fortran"}},"match":"(?i)\\\\b(procedure)\\\\b"}]},"program-definition":{"begin":"(?i)(?=\\\\b(program)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.program.fortran","patterns":[{"captures":{"1":{"name":"keyword.control.program.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(program)\\\\b"},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.program.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*program)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.control.endprogram.fortran"},"2":{"name":"entity.name.program.fortran"},"3":{"name":"keyword.control.endprogram.fortran"},"4":{"name":"invalid.error.program-definition.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))","name":"meta.block.specification.program.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"protected-attribute":{"captures":{"1":{"name":"storage.modifier.protected.fortran"}},"match":"(?i)\\\\s*\\\\b(protected)\\\\b"},"public-attribute":{"captures":{"1":{"name":"storage.modifier.public.fortran"}},"match":"(?i)\\\\s*\\\\b(public)\\\\b"},"pure-attribute":{"captures":{"1":{"name":"storage.modifier.impure.fortran"},"2":{"name":"storage.modifier.pure.fortran"}},"match":"(?i)\\\\s*\\\\b(?:(impure)|(pure))\\\\b"},"recursive-attribute":{"captures":{"1":{"name":"storage.modifier.non_recursive.fortran"},"2":{"name":"storage.modifier.recursive.fortran"}},"match":"(?i)\\\\s*\\\\b(?:(non_recursive)|(recursive))\\\\b"},"result-statement":{"begin":"(?i)\\\\s*\\\\b(result)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.result.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#dummy-variable"}]},"return-statement":{"begin":"(?i)\\\\s*\\\\b(return)\\\\b","beginCaptures":{"1":{"name":"keyword.control.return.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.return.fortran","patterns":[{"include":"#invalid-character"}]},"save-attribute":{"captures":{"1":{"name":"storage.modifier.save.fortran"}},"match":"(?i)\\\\s*\\\\b(save)\\\\b"},"select-case-construct":{"begin":"(?i)\\\\b(select\\\\s*case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectcase.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.case.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-rank-construct":{"begin":"(?i)\\\\b(select\\\\s*rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectrank.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.rank.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.rank.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-type-construct":{"begin":"(?i)\\\\b(select\\\\s*type)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selecttype.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.type.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(?:(class)|(type))\\\\b","beginCaptures":{"1":{"name":"keyword.control.class.fortran"},"2":{"name":"keyword.control.type.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"captures":{"1":{"name":"keyword.control.is.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(is)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"sequence-attribute":{"captures":{"1":{"name":"storage.modifier.sequence.fortran"}},"match":"(?i)\\\\s*\\\\b(sequence)\\\\b"},"specification-statements":{"patterns":[{"include":"#attribute-specification-statement"},{"include":"#common-statement"},{"include":"#data-statement"},{"include":"#equivalence-statement"},{"include":"#implicit-statement"},{"include":"#namelist-statement"},{"include":"#use-statement"}]},"stop-statement":{"begin":"(?i)\\\\s*\\\\b(stop)\\\\b(?:\\\\s*\\\\b([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.stop.fortran"},"2":{"name":"meta.label.stop.stop"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.stop.fortran","patterns":[{"include":"#constants"},{"include":"#string-operators"},{"include":"#invalid-character"}]},"string-constant":{"patterns":[{"applyEndPatternLast":1,"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.single.fortran","patterns":[{"match":"''","name":"constant.character.escape.apostrophe.fortran"}]},{"applyEndPatternLast":1,"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.double.fortran","patterns":[{"match":"\\"\\"","name":"constant.character.escape.quote.fortran"}]}]},"string-line-continuation-operator":{"begin":"(&)(?=\\\\s*\\\\n)","beginCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"end":"(?i)^(?:(?=\\\\s*[^!\\\\&\\\\s])|\\\\s*(&))","endCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"patterns":[{"include":"#comments"},{"match":"\\\\S.*","name":"invalid.error.string-line-cont.fortran"}]},"string-operators":{"match":"(//)","name":"keyword.other.concatination.fortran"},"submodule-definition":{"begin":"(?i)(?=\\\\b(submodule)\\\\s*\\\\()","end":"(?=[\\\\n!;])","name":"meta.submodule.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(submodule)\\\\s*(\\\\()\\\\s*(\\\\w+)","beginCaptures":{"1":{"name":"keyword.other.submodule.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"entity.name.class.submodule.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[]},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.module.submodule.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*submodule)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endsubmodule.fortran"},"2":{"name":"entity.name.module.submodule.fortran"},"3":{"name":"keyword.other.endsubmodule.fortran"},"4":{"name":"invalid.error.submodule.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))","name":"meta.block.specification.submodule.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"subroutine-definition":{"begin":"(?i)(?=([^\\\\n!\\"':;](?!\\\\bend))*\\\\bsubroutine\\\\b)","end":"(?=[\\\\n!;])","name":"meta.subroutine.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bsubroutine\\\\b))","end":"(?i)(?=\\\\bsubroutine\\\\b)","name":"meta.attribute-list.subroutine.fortran","patterns":[{"include":"#elemental-attribute"},{"include":"#module-attribute"},{"include":"#pure-attribute"},{"include":"#recursive-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(subroutine)\\\\b","beginCaptures":{"1":{"name":"keyword.other.subroutine.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*subroutine)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endsubroutine.fortran"},"2":{"name":"entity.name.function.subroutine.fortran"},"3":{"name":"keyword.other.endsubroutine.fortran"},"4":{"name":"invalid.error.subroutine.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.first-line.fortran","patterns":[{"include":"#dummy-variable-list"},{"include":"#language-binding-attribute"}]},{"begin":"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","name":"meta.block.specification.subroutine.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]}]},"sync-all-statement":{"begin":"(?i)\\\\b(sync (?:all|memory))(\\\\s*(?=\\\\())?","beginCaptures":{"1":{"name":"keyword.control.sync-all-memory.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.sync-all-memory.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"sync-statement":{"begin":"(?i)\\\\b(sync (?:images|team))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.sync-images-team.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.sync-images-team.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"target-attribute":{"captures":{"1":{"name":"storage.modifier.target.fortran"}},"match":"(?i)\\\\s*\\\\b(target)\\\\b"},"type-specification-statements":{"begin":"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type|dimension)\\\\b(?![^\\\\n!\\"':;]*\\\\bfunction\\\\b))","end":"(?=[\\\\n!);])","name":"meta.specification.type.fortran","patterns":[{"include":"#types"},{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.type-specification-statements.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#asynchronous-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#external-attribute"},{"include":"#intent-attribute"},{"include":"#intrinsic-attribute"},{"include":"#language-binding-attribute"},{"include":"#optional-attribute"},{"include":"#parameter-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#target-attribute"},{"include":"#value-attribute"},{"include":"#volatile-attribute"},{"include":"#invalid-word"}]}]},{"include":"#name-list"}]},"types":{"patterns":[{"include":"#character-type"},{"include":"#derived-type"},{"include":"#logical-type"},{"include":"#numeric-type"}]},"unnamed-control-constructs":{"patterns":[{"include":"#associate-construct"},{"include":"#block-construct"},{"include":"#critical-construct"},{"include":"#do-construct"},{"include":"#forall-construct"},{"include":"#if-construct"},{"include":"#select-case-construct"},{"include":"#select-type-construct"},{"include":"#select-rank-construct"},{"include":"#where-construct"}]},"use-statement":{"begin":"(?i)\\\\b(use)\\\\b","beginCaptures":{"1":{"name":"keyword.control.use.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.use.fortran","patterns":[{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.namelist.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#intrinsic-attribute"},{"include":"#non-intrinsic-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.class.module.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!;])","patterns":[{"begin":"(?i)\\\\s*\\\\b(only\\\\s*:)","beginCaptures":{"1":{"name":"keyword.control.only.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#operator-keyword"},{"include":"$base"}]},{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"include":"#operator-keyword"},{"include":"$base"}]}]}]}]},"user-defined-operators":{"captures":{"1":{"name":"keyword.operator.user-defined.fortran"}},"match":"(?i)\\\\s*(\\\\.[a-z]+\\\\.)"},"value-attribute":{"captures":{"1":{"name":"storage.modifier.value.fortran"}},"match":"(?i)\\\\s*\\\\b(value)\\\\b"},"variable":{"applyEndPatternLast":1,"begin":"(?i)\\\\b(?=[a-z])","end":"(?<!\\\\G)","name":"meta.parameter.fortran","patterns":[{"include":"#brackets"},{"include":"#derived-type-operators"},{"include":"#parentheses-dummy-variables"},{"include":"#word"}]},"volatile-attribute":{"captures":{"1":{"name":"storage.modifier.volatile.fortran"}},"match":"(?i)\\\\s*\\\\b(volatile)\\\\b"},"where-construct":{"patterns":[{"applyEndPatternLast":1,"begin":"(?i)\\\\b(where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.where.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#logical-control-expression"},{"begin":"(?<=\\\\))(?=\\\\s*[\\\\n!;])","end":"(?i)\\\\b(end\\\\s*where)\\\\b","endCaptures":{"1":{"name":"keyword.control.endwhere.fortran"}},"name":"meta.block.where.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b(else\\\\s*where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.elsewhere.fortran"}},"end":"\\\\s*(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"captures":{"1":{"name":"meta.label.elsewhere.fortran"}},"match":"(?i)(\\\\s*[a-z]\\\\w*)?"},{"include":"#invalid-word"}]},{"include":"$base"}]},{"begin":"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])","end":"\\\\n","name":"meta.statement.control.where.fortran","patterns":[{"include":"$base"}]}]}]},"while-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},"word":{"patterns":[{"match":"(?i)(?:\\\\G|(?<=%))\\\\s*\\\\b([a-z]\\\\w*)\\\\b"}]}},"scopeName":"source.fortran.free","aliases":["f90","f95","f03","f08","f18"]}`)),n=[e];export{n as default};