gemi 0.4.119 → 0.4.121
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.
- package/dist/app/index.js +2 -2
- package/dist/app/index.js.map +2 -2
- package/dist/broadcasting/index.js +1 -1
- package/dist/chunk-001ftwam.js +4 -0
- package/dist/chunk-001ftwam.js.map +10 -0
- package/dist/chunk-01td3x3h.js +4 -0
- package/dist/chunk-01td3x3h.js.map +10 -0
- package/dist/chunk-029k2gah.js +4 -0
- package/dist/chunk-029k2gah.js.map +10 -0
- package/dist/chunk-0662pv0m.js +4 -0
- package/dist/{chunk-a67a5vtk.js.map → chunk-0662pv0m.js.map} +2 -2
- package/dist/chunk-0cax9v4f.js +4 -0
- package/dist/chunk-0cax9v4f.js.map +10 -0
- package/dist/chunk-0d9amhty.js +4 -0
- package/dist/chunk-0d9amhty.js.map +10 -0
- package/dist/chunk-0e502hy4.js +4 -0
- package/dist/chunk-0e502hy4.js.map +10 -0
- package/dist/chunk-0gqrxkhr.js +4 -0
- package/dist/chunk-0gqrxkhr.js.map +10 -0
- package/dist/chunk-0kk73bxd.js +4 -0
- package/dist/chunk-0kk73bxd.js.map +10 -0
- package/dist/{chunk-x8wrqc4y.js → chunk-0nvzdwwv.js} +2 -2
- package/dist/{chunk-x8wrqc4y.js.map → chunk-0nvzdwwv.js.map} +1 -1
- package/dist/chunk-0t4b19w0.js +5 -0
- package/dist/chunk-0t4b19w0.js.map +10 -0
- package/dist/chunk-0xq80cr7.js +4 -0
- package/dist/chunk-0xq80cr7.js.map +10 -0
- package/dist/chunk-0zp3sbms.js +4 -0
- package/dist/chunk-0zp3sbms.js.map +10 -0
- package/dist/chunk-10897e1t.js +5 -0
- package/dist/chunk-10897e1t.js.map +10 -0
- package/dist/chunk-147gjb8j.js +4 -0
- package/dist/chunk-147gjb8j.js.map +10 -0
- package/dist/chunk-165evrks.js +4 -0
- package/dist/chunk-165evrks.js.map +10 -0
- package/dist/chunk-16pqbv30.js +4 -0
- package/dist/chunk-16pqbv30.js.map +10 -0
- package/dist/chunk-18akssnh.js +4 -0
- package/dist/chunk-18akssnh.js.map +10 -0
- package/dist/chunk-1d07epxn.js +4 -0
- package/dist/chunk-1d07epxn.js.map +10 -0
- package/dist/chunk-1d3brmyr.js +4 -0
- package/dist/{chunk-ef6dgp5k.js.map → chunk-1d3brmyr.js.map} +6 -6
- package/dist/chunk-1fenkptw.js +4 -0
- package/dist/chunk-1fenkptw.js.map +10 -0
- package/dist/chunk-1fpyfztm.js +4 -0
- package/dist/chunk-1fpyfztm.js.map +10 -0
- package/dist/chunk-1jr2awdv.js +4 -0
- package/dist/chunk-1jr2awdv.js.map +10 -0
- package/dist/chunk-1pjd7z7e.js +5 -0
- package/dist/chunk-1pjd7z7e.js.map +11 -0
- package/dist/chunk-1vxhaep8.js +4 -0
- package/dist/chunk-1vxhaep8.js.map +10 -0
- package/dist/chunk-1zje855e.js +4 -0
- package/dist/chunk-1zje855e.js.map +10 -0
- package/dist/chunk-2a6xtt8w.js +4 -0
- package/dist/chunk-2a6xtt8w.js.map +10 -0
- package/dist/chunk-2nbxbgja.js +4 -0
- package/dist/chunk-2nbxbgja.js.map +10 -0
- package/dist/chunk-2qek6vwk.js +5 -0
- package/dist/chunk-2qek6vwk.js.map +10 -0
- package/dist/chunk-2qs5hcvw.js +4 -0
- package/dist/chunk-2qs5hcvw.js.map +15 -0
- package/dist/chunk-2rpt28ng.js +4 -0
- package/dist/chunk-2rpt28ng.js.map +10 -0
- package/dist/chunk-2zbw9b4r.js +4 -0
- package/dist/chunk-2zbw9b4r.js.map +10 -0
- package/dist/chunk-3evg8b1k.js +4 -0
- package/dist/chunk-3evg8b1k.js.map +10 -0
- package/dist/chunk-3vasf2wf.js +4 -0
- package/dist/chunk-3vasf2wf.js.map +10 -0
- package/dist/chunk-3zmgkx0w.js +4 -0
- package/dist/chunk-3zmgkx0w.js.map +10 -0
- package/dist/chunk-44g267q3.js +77 -0
- package/dist/chunk-44g267q3.js.map +22 -0
- package/dist/chunk-4b5zjps1.js +4 -0
- package/dist/chunk-4b5zjps1.js.map +10 -0
- package/dist/chunk-4f60mvxv.js +4 -0
- package/dist/chunk-4f60mvxv.js.map +10 -0
- package/dist/chunk-4gam76xs.js +4 -0
- package/dist/chunk-4gam76xs.js.map +10 -0
- package/dist/chunk-4jzv24rt.js +4 -0
- package/dist/chunk-4jzv24rt.js.map +10 -0
- package/dist/chunk-4np6kjty.js +4 -0
- package/dist/chunk-4np6kjty.js.map +10 -0
- package/dist/chunk-4psr7qf1.js +4 -0
- package/dist/chunk-4psr7qf1.js.map +10 -0
- package/dist/chunk-4s350vgd.js +4 -0
- package/dist/chunk-4s350vgd.js.map +10 -0
- package/dist/chunk-4txy30je.js +4 -0
- package/dist/chunk-4txy30je.js.map +10 -0
- package/dist/chunk-4zq5qst4.js +4 -0
- package/dist/chunk-4zq5qst4.js.map +10 -0
- package/dist/chunk-54a103ah.js +4 -0
- package/dist/chunk-54a103ah.js.map +10 -0
- package/dist/chunk-58jyqcxt.js +4 -0
- package/dist/chunk-58jyqcxt.js.map +10 -0
- package/dist/chunk-59a4qnm6.js +4 -0
- package/dist/chunk-59a4qnm6.js.map +10 -0
- package/dist/chunk-5crks4mc.js +4 -0
- package/dist/chunk-5crks4mc.js.map +10 -0
- package/dist/chunk-5fs16qc2.js +4 -0
- package/dist/chunk-5fs16qc2.js.map +10 -0
- package/dist/chunk-5nb5v649.js +4 -0
- package/dist/chunk-5nb5v649.js.map +10 -0
- package/dist/chunk-5psj5g03.js +4 -0
- package/dist/chunk-5psj5g03.js.map +10 -0
- package/dist/chunk-5qa0wvgg.js +4 -0
- package/dist/chunk-5qa0wvgg.js.map +10 -0
- package/dist/chunk-5t6fd3qq.js +4 -0
- package/dist/chunk-5t6fd3qq.js.map +12 -0
- package/dist/chunk-5whsf328.js +4 -0
- package/dist/chunk-5whsf328.js.map +10 -0
- package/dist/chunk-612vvdg0.js +5 -0
- package/dist/chunk-612vvdg0.js.map +10 -0
- package/dist/chunk-61fr8e09.js +5 -0
- package/dist/chunk-61fr8e09.js.map +10 -0
- package/dist/chunk-629qemrx.js +4 -0
- package/dist/chunk-629qemrx.js.map +10 -0
- package/dist/chunk-65kp9t0w.js +4 -0
- package/dist/chunk-65kp9t0w.js.map +10 -0
- package/dist/chunk-66f14pqy.js +4 -0
- package/dist/chunk-66f14pqy.js.map +10 -0
- package/dist/chunk-69bs53j4.js +4 -0
- package/dist/chunk-69bs53j4.js.map +10 -0
- package/dist/chunk-6a16vs8y.js +4 -0
- package/dist/chunk-6a16vs8y.js.map +10 -0
- package/dist/chunk-6ant7bcg.js +5 -0
- package/dist/chunk-6ant7bcg.js.map +10 -0
- package/dist/chunk-6fvkzn8b.js +4 -0
- package/dist/chunk-6fvkzn8b.js.map +10 -0
- package/dist/chunk-6fvtad65.js +4 -0
- package/dist/chunk-6fvtad65.js.map +10 -0
- package/dist/chunk-6m11rfdt.js +4 -0
- package/dist/chunk-6m11rfdt.js.map +10 -0
- package/dist/chunk-6p5ty79g.js +4 -0
- package/dist/chunk-6p5ty79g.js.map +10 -0
- package/dist/chunk-6vzzwyt5.js +4 -0
- package/dist/chunk-6vzzwyt5.js.map +10 -0
- package/dist/chunk-6zfyy2sq.js +5 -0
- package/dist/chunk-6zfyy2sq.js.map +10 -0
- package/dist/chunk-73mtep9k.js +5 -0
- package/dist/chunk-73mtep9k.js.map +10 -0
- package/dist/chunk-76cxqdm5.js +4 -0
- package/dist/chunk-76cxqdm5.js.map +10 -0
- package/dist/chunk-76q7gcr7.js +4 -0
- package/dist/chunk-76q7gcr7.js.map +10 -0
- package/dist/chunk-77hx7jrk.js +4 -0
- package/dist/chunk-77hx7jrk.js.map +10 -0
- package/dist/chunk-7e7xv67y.js +4 -0
- package/dist/chunk-7e7xv67y.js.map +10 -0
- package/dist/chunk-7sj61wa1.js +4 -0
- package/dist/chunk-7sj61wa1.js.map +10 -0
- package/dist/chunk-7w7gd3mf.js +4 -0
- package/dist/chunk-7w7gd3mf.js.map +10 -0
- package/dist/chunk-7y71tyb6.js +4 -0
- package/dist/chunk-7y71tyb6.js.map +10 -0
- package/dist/chunk-7yw671gx.js +5 -0
- package/dist/chunk-7yw671gx.js.map +10 -0
- package/dist/chunk-81zgg7ah.js +4 -0
- package/dist/chunk-81zgg7ah.js.map +10 -0
- package/dist/chunk-82sj7aem.js +5 -0
- package/dist/chunk-82sj7aem.js.map +10 -0
- package/dist/chunk-83ngngpn.js +4 -0
- package/dist/chunk-83ngngpn.js.map +10 -0
- package/dist/chunk-88h3dfxg.js +4 -0
- package/dist/chunk-88h3dfxg.js.map +10 -0
- package/dist/chunk-88pbkfa6.js +4 -0
- package/dist/chunk-88pbkfa6.js.map +10 -0
- package/dist/chunk-8dj48k3f.js +4 -0
- package/dist/chunk-8dj48k3f.js.map +10 -0
- package/dist/chunk-8mmnj32j.js +4 -0
- package/dist/chunk-8mmnj32j.js.map +10 -0
- package/dist/chunk-8qf94hzv.js +4 -0
- package/dist/chunk-8qf94hzv.js.map +10 -0
- package/dist/chunk-8w9c6mxe.js +3 -0
- package/dist/chunk-8w9c6mxe.js.map +17 -0
- package/dist/chunk-93mkmwaj.js +4 -0
- package/dist/chunk-93mkmwaj.js.map +10 -0
- package/dist/chunk-96m5669w.js +4 -0
- package/dist/chunk-96m5669w.js.map +10 -0
- package/dist/chunk-9717ybek.js +4 -0
- package/dist/chunk-9717ybek.js.map +10 -0
- package/dist/chunk-997k48kg.js +4 -0
- package/dist/chunk-997k48kg.js.map +10 -0
- package/dist/chunk-9abm0pr9.js +4 -0
- package/dist/chunk-9abm0pr9.js.map +10 -0
- package/dist/chunk-9dz8xyy1.js +3 -0
- package/dist/{chunk-p9gc7ke6.js.map → chunk-9dz8xyy1.js.map} +4 -4
- package/dist/chunk-9f1r7zrg.js +4 -0
- package/dist/chunk-9f1r7zrg.js.map +10 -0
- package/dist/chunk-9fj0c4p1.js +4 -0
- package/dist/chunk-9fj0c4p1.js.map +10 -0
- package/dist/chunk-9mv0k6t0.js +4 -0
- package/dist/chunk-9mv0k6t0.js.map +11 -0
- package/dist/chunk-9q75e96q.js +4 -0
- package/dist/chunk-9q75e96q.js.map +10 -0
- package/dist/chunk-9s0w0gjc.js +4 -0
- package/dist/chunk-9s0w0gjc.js.map +10 -0
- package/dist/chunk-9seafyf3.js +4 -0
- package/dist/chunk-9seafyf3.js.map +10 -0
- package/dist/chunk-9tpfth1g.js +5 -0
- package/dist/chunk-9tpfth1g.js.map +10 -0
- package/dist/chunk-9vm0ck1e.js +4 -0
- package/dist/{chunk-kmfnx43s.js.map → chunk-9vm0ck1e.js.map} +2 -2
- package/dist/chunk-aanamgj7.js +4 -0
- package/dist/chunk-aanamgj7.js.map +10 -0
- package/dist/chunk-acfp8fm2.js +5 -0
- package/dist/chunk-acfp8fm2.js.map +10 -0
- package/dist/chunk-agf0k1k9.js +4 -0
- package/dist/chunk-agf0k1k9.js.map +10 -0
- package/dist/chunk-ajft9tzm.js +5 -0
- package/dist/chunk-ajft9tzm.js.map +10 -0
- package/dist/chunk-apgh9fht.js +4 -0
- package/dist/chunk-apgh9fht.js.map +10 -0
- package/dist/chunk-aq7h2jz2.js +4 -0
- package/dist/chunk-aq7h2jz2.js.map +10 -0
- package/dist/chunk-atx3b9qj.js +4 -0
- package/dist/chunk-atx3b9qj.js.map +10 -0
- package/dist/chunk-axa5gvjg.js +4 -0
- package/dist/chunk-axa5gvjg.js.map +10 -0
- package/dist/chunk-b44x5gst.js +4 -0
- package/dist/chunk-b44x5gst.js.map +10 -0
- package/dist/chunk-b7ap0z6v.js +4 -0
- package/dist/chunk-b7ap0z6v.js.map +10 -0
- package/dist/{chunk-35bsy26w.js → chunk-bajafpzj.js} +2 -2
- package/dist/{chunk-35bsy26w.js.map → chunk-bajafpzj.js.map} +1 -1
- package/dist/chunk-baxfcaes.js +5 -0
- package/dist/chunk-baxfcaes.js.map +10 -0
- package/dist/chunk-bbrwkw5y.js +4 -0
- package/dist/chunk-bbrwkw5y.js.map +13 -0
- package/dist/chunk-befwbt0h.js +5 -0
- package/dist/chunk-befwbt0h.js.map +14 -0
- package/dist/chunk-bej163fy.js +4 -0
- package/dist/chunk-bej163fy.js.map +10 -0
- package/dist/chunk-bfrzstr0.js +4 -0
- package/dist/chunk-bfrzstr0.js.map +10 -0
- package/dist/chunk-bgf2a50m.js +4 -0
- package/dist/chunk-bgf2a50m.js.map +10 -0
- package/dist/chunk-bk649aen.js +4 -0
- package/dist/chunk-bk649aen.js.map +10 -0
- package/dist/chunk-brsavvrn.js +4 -0
- package/dist/chunk-brsavvrn.js.map +10 -0
- package/dist/chunk-bwgwxgw8.js +4 -0
- package/dist/chunk-bwgwxgw8.js.map +10 -0
- package/dist/chunk-c7qx33ys.js +4 -0
- package/dist/chunk-c7qx33ys.js.map +10 -0
- package/dist/chunk-cb616xw5.js +4 -0
- package/dist/{chunk-ktwy9nyn.js.map → chunk-cb616xw5.js.map} +1 -1
- package/dist/chunk-ce7rcdsg.js +4 -0
- package/dist/chunk-ce7rcdsg.js.map +10 -0
- package/dist/chunk-ce89kst6.js +4 -0
- package/dist/chunk-ce89kst6.js.map +10 -0
- package/dist/chunk-cefrz6wd.js +4 -0
- package/dist/chunk-cefrz6wd.js.map +10 -0
- package/dist/chunk-cgfc4w0w.js +4 -0
- package/dist/chunk-cgfc4w0w.js.map +10 -0
- package/dist/chunk-chabgvmr.js +4 -0
- package/dist/chunk-chabgvmr.js.map +10 -0
- package/dist/chunk-cjsmqv12.js +4 -0
- package/dist/chunk-cjsmqv12.js.map +10 -0
- package/dist/chunk-d12swf8t.js +4 -0
- package/dist/chunk-d12swf8t.js.map +10 -0
- package/dist/chunk-d1vf91bx.js +5 -0
- package/dist/chunk-d1vf91bx.js.map +10 -0
- package/dist/chunk-d3vvh6x2.js +4 -0
- package/dist/chunk-d3vvh6x2.js.map +13 -0
- package/dist/chunk-d7zvjgvr.js +4 -0
- package/dist/{chunk-1gjhrqfe.js.map → chunk-d7zvjgvr.js.map} +5 -5
- package/dist/chunk-d87mx4t6.js +4 -0
- package/dist/chunk-d87mx4t6.js.map +13 -0
- package/dist/chunk-d8nm5ddh.js +7 -0
- package/dist/chunk-d8nm5ddh.js.map +65 -0
- package/dist/chunk-dgpcg2dh.js +5 -0
- package/dist/chunk-dgpcg2dh.js.map +10 -0
- package/dist/chunk-dhfkqc5x.js +4 -0
- package/dist/chunk-dhfkqc5x.js.map +10 -0
- package/dist/chunk-e5n4eyrc.js +4 -0
- package/dist/chunk-e5n4eyrc.js.map +10 -0
- package/dist/chunk-ec6tgefk.js +5 -0
- package/dist/chunk-ec6tgefk.js.map +10 -0
- package/dist/chunk-eddsdprs.js +5 -0
- package/dist/chunk-eddsdprs.js.map +10 -0
- package/dist/chunk-efkfryw1.js +4 -0
- package/dist/chunk-efkfryw1.js.map +10 -0
- package/dist/chunk-enbw3h06.js +4 -0
- package/dist/chunk-enbw3h06.js.map +10 -0
- package/dist/chunk-eqne9ppg.js +5 -0
- package/dist/chunk-eqne9ppg.js.map +10 -0
- package/dist/chunk-etcm6fh1.js +4 -0
- package/dist/chunk-etcm6fh1.js.map +10 -0
- package/dist/chunk-evmtw59h.js +4 -0
- package/dist/chunk-evmtw59h.js.map +10 -0
- package/dist/chunk-eytgtgtj.js +4 -0
- package/dist/chunk-eytgtgtj.js.map +10 -0
- package/dist/chunk-eza2c3t1.js +4 -0
- package/dist/chunk-eza2c3t1.js.map +10 -0
- package/dist/chunk-f08ksmq5.js +4 -0
- package/dist/chunk-f08ksmq5.js.map +10 -0
- package/dist/chunk-f48vajs9.js +4 -0
- package/dist/chunk-f48vajs9.js.map +10 -0
- package/dist/chunk-f6ypbp8s.js +4 -0
- package/dist/chunk-f6ypbp8s.js.map +10 -0
- package/dist/chunk-f867b961.js +4 -0
- package/dist/chunk-f867b961.js.map +10 -0
- package/dist/chunk-f9q2xx8j.js +4 -0
- package/dist/chunk-f9q2xx8j.js.map +10 -0
- package/dist/chunk-fb3xpd5h.js +4 -0
- package/dist/chunk-fb3xpd5h.js.map +10 -0
- package/dist/chunk-fc95wase.js +4 -0
- package/dist/chunk-fc95wase.js.map +10 -0
- package/dist/chunk-fqqhza9s.js +4 -0
- package/dist/chunk-fqqhza9s.js.map +10 -0
- package/dist/chunk-g28v2sg8.js +4 -0
- package/dist/chunk-g28v2sg8.js.map +10 -0
- package/dist/chunk-g3nnqcbw.js +5 -0
- package/dist/chunk-g3nnqcbw.js.map +10 -0
- package/dist/chunk-g5b9r81v.js +5 -0
- package/dist/chunk-g5b9r81v.js.map +10 -0
- package/dist/chunk-gj0zbz3g.js +4 -0
- package/dist/chunk-gj0zbz3g.js.map +10 -0
- package/dist/chunk-gn1cd35p.js +4 -0
- package/dist/chunk-gn1cd35p.js.map +10 -0
- package/dist/chunk-gprayftg.js +4 -0
- package/dist/chunk-gprayftg.js.map +10 -0
- package/dist/chunk-gr995e76.js +5 -0
- package/dist/chunk-gr995e76.js.map +10 -0
- package/dist/chunk-grva5cgq.js +4 -0
- package/dist/chunk-grva5cgq.js.map +10 -0
- package/dist/chunk-gtvgm63z.js +4 -0
- package/dist/chunk-gtvgm63z.js.map +10 -0
- package/dist/chunk-gwf5xs7m.js +18 -0
- package/dist/{chunk-qf6zg7nd.js.map → chunk-gwf5xs7m.js.map} +15 -34
- package/dist/chunk-gwnr2ycm.js +5 -0
- package/dist/chunk-gwnr2ycm.js.map +10 -0
- package/dist/chunk-gyxgxwcc.js +4 -0
- package/dist/chunk-gyxgxwcc.js.map +10 -0
- package/dist/chunk-h25tw54p.js +4 -0
- package/dist/chunk-h25tw54p.js.map +10 -0
- package/dist/chunk-h3tskj7j.js +4 -0
- package/dist/chunk-h3tskj7j.js.map +10 -0
- package/dist/chunk-hh62xvjr.js +4 -0
- package/dist/chunk-hh62xvjr.js.map +10 -0
- package/dist/chunk-hk1q1ep4.js +4 -0
- package/dist/chunk-hk1q1ep4.js.map +10 -0
- package/dist/chunk-hqhrt4re.js +5 -0
- package/dist/chunk-hqhrt4re.js.map +10 -0
- package/dist/chunk-hvk0d1ww.js +4 -0
- package/dist/chunk-hvk0d1ww.js.map +10 -0
- package/dist/chunk-j19xcy0f.js +4 -0
- package/dist/chunk-j19xcy0f.js.map +10 -0
- package/dist/chunk-j20akbzn.js +4 -0
- package/dist/chunk-j20akbzn.js.map +10 -0
- package/dist/chunk-j4xa9v2b.js +4 -0
- package/dist/chunk-j4xa9v2b.js.map +10 -0
- package/dist/chunk-jaywwzjq.js +4 -0
- package/dist/chunk-jaywwzjq.js.map +10 -0
- package/dist/chunk-jc7ftaka.js +4 -0
- package/dist/{chunk-ckds5kj4.js.map → chunk-jc7ftaka.js.map} +2 -2
- package/dist/chunk-jcs320db.js +4 -0
- package/dist/chunk-jcs320db.js.map +10 -0
- package/dist/chunk-jd1v2z6g.js +4 -0
- package/dist/chunk-jd1v2z6g.js.map +10 -0
- package/dist/chunk-jfrvg24q.js +4 -0
- package/dist/chunk-jfrvg24q.js.map +10 -0
- package/dist/chunk-jhxnydm7.js +5 -0
- package/dist/chunk-jhxnydm7.js.map +10 -0
- package/dist/chunk-jjt3mqyj.js +4 -0
- package/dist/chunk-jjt3mqyj.js.map +10 -0
- package/dist/chunk-jmv6j1ma.js +4 -0
- package/dist/chunk-jmv6j1ma.js.map +10 -0
- package/dist/chunk-jrg0k6fy.js +4 -0
- package/dist/chunk-jrg0k6fy.js.map +10 -0
- package/dist/chunk-k1gr1y2n.js +4 -0
- package/dist/chunk-k1gr1y2n.js.map +10 -0
- package/dist/chunk-k5903r56.js +4 -0
- package/dist/chunk-k5903r56.js.map +10 -0
- package/dist/chunk-k7er8zn9.js +5 -0
- package/dist/chunk-k7er8zn9.js.map +10 -0
- package/dist/chunk-k7seyqnj.js +5 -0
- package/dist/chunk-k7seyqnj.js.map +10 -0
- package/dist/chunk-keqxzdm8.js +4 -0
- package/dist/chunk-keqxzdm8.js.map +10 -0
- package/dist/chunk-kj73phvd.js +4 -0
- package/dist/chunk-kj73phvd.js.map +10 -0
- package/dist/chunk-kttqecab.js +4 -0
- package/dist/chunk-kttqecab.js.map +20 -0
- package/dist/chunk-kv6jab20.js +4 -0
- package/dist/chunk-kv6jab20.js.map +10 -0
- package/dist/chunk-m10rw8zf.js +4 -0
- package/dist/chunk-m10rw8zf.js.map +10 -0
- package/dist/chunk-m3x7ehjz.js +4 -0
- package/dist/chunk-m3x7ehjz.js.map +10 -0
- package/dist/chunk-m4ywwfhj.js +4 -0
- package/dist/chunk-m4ywwfhj.js.map +10 -0
- package/dist/chunk-m9xdm31a.js +5 -0
- package/dist/chunk-m9xdm31a.js.map +10 -0
- package/dist/chunk-mb5me03r.js +4 -0
- package/dist/chunk-mb5me03r.js.map +10 -0
- package/dist/chunk-mbhvesxn.js +4 -0
- package/dist/chunk-mbhvesxn.js.map +10 -0
- package/dist/chunk-md05dm8y.js +4 -0
- package/dist/{chunk-wfc30gdx.js.map → chunk-md05dm8y.js.map} +2 -2
- package/dist/chunk-mdwc3caf.js +4 -0
- package/dist/{chunk-en5bya0k.js.map → chunk-mdwc3caf.js.map} +2 -2
- package/dist/chunk-mq4xa8g0.js +4 -0
- package/dist/chunk-mq4xa8g0.js.map +10 -0
- package/dist/chunk-msarsnba.js +4 -0
- package/dist/chunk-msarsnba.js.map +10 -0
- package/dist/chunk-mtt5kfk0.js +4 -0
- package/dist/chunk-mtt5kfk0.js.map +10 -0
- package/dist/chunk-mtvvnps3.js +4 -0
- package/dist/chunk-mtvvnps3.js.map +10 -0
- package/dist/chunk-mww3xsh5.js +4 -0
- package/dist/chunk-mww3xsh5.js.map +10 -0
- package/dist/chunk-n0yg50tm.js +4 -0
- package/dist/chunk-n0yg50tm.js.map +10 -0
- package/dist/chunk-n15vbtzw.js +4 -0
- package/dist/chunk-n15vbtzw.js.map +10 -0
- package/dist/chunk-n1x0b75g.js +4 -0
- package/dist/chunk-n1x0b75g.js.map +10 -0
- package/dist/chunk-n6eekz6f.js +4 -0
- package/dist/chunk-n6eekz6f.js.map +10 -0
- package/dist/chunk-ng4pttb5.js +4 -0
- package/dist/chunk-ng4pttb5.js.map +10 -0
- package/dist/chunk-ngpkbmcy.js +4 -0
- package/dist/chunk-ngpkbmcy.js.map +10 -0
- package/dist/chunk-np64fgdg.js +4 -0
- package/dist/chunk-np64fgdg.js.map +10 -0
- package/dist/chunk-nshtq1ys.js +4 -0
- package/dist/chunk-nshtq1ys.js.map +10 -0
- package/dist/chunk-p2a7zrdj.js +4 -0
- package/dist/chunk-p2a7zrdj.js.map +10 -0
- package/dist/chunk-p7r1931r.js +4 -0
- package/dist/{chunk-hjr9ztvj.js.map → chunk-p7r1931r.js.map} +2 -2
- package/dist/chunk-pb70nyeg.js +4 -0
- package/dist/chunk-pb70nyeg.js.map +10 -0
- package/dist/chunk-pbgrf052.js +8 -0
- package/dist/chunk-pbgrf052.js.map +53 -0
- package/dist/chunk-pebk5hpa.js +4 -0
- package/dist/chunk-pebk5hpa.js.map +10 -0
- package/dist/chunk-pmtd0cc3.js +4 -0
- package/dist/chunk-pmtd0cc3.js.map +10 -0
- package/dist/chunk-q0fe3c44.js +4 -0
- package/dist/chunk-q0fe3c44.js.map +10 -0
- package/dist/chunk-q2btpck1.js +4 -0
- package/dist/chunk-q2btpck1.js.map +10 -0
- package/dist/chunk-q656e0z8.js +4 -0
- package/dist/chunk-q656e0z8.js.map +10 -0
- package/dist/chunk-q9q0m0fk.js +4 -0
- package/dist/chunk-q9q0m0fk.js.map +10 -0
- package/dist/chunk-qepjnnqp.js +4 -0
- package/dist/chunk-qepjnnqp.js.map +10 -0
- package/dist/chunk-qhxd2v41.js +4 -0
- package/dist/chunk-qhxd2v41.js.map +10 -0
- package/dist/chunk-qjepp6dz.js +4 -0
- package/dist/chunk-qjepp6dz.js.map +10 -0
- package/dist/chunk-r015e873.js +4 -0
- package/dist/chunk-r015e873.js.map +10 -0
- package/dist/chunk-r2wpm2d7.js +4 -0
- package/dist/chunk-r2wpm2d7.js.map +10 -0
- package/dist/chunk-r70xpzx4.js +4 -0
- package/dist/chunk-r70xpzx4.js.map +10 -0
- package/dist/chunk-r7qn7nya.js +4 -0
- package/dist/chunk-r7qn7nya.js.map +10 -0
- package/dist/chunk-r9fb428b.js +4 -0
- package/dist/chunk-r9fb428b.js.map +10 -0
- package/dist/chunk-raq3khzd.js +4 -0
- package/dist/chunk-raq3khzd.js.map +10 -0
- package/dist/chunk-rf60qjxw.js +5 -0
- package/dist/chunk-rf60qjxw.js.map +14 -0
- package/dist/chunk-rjjjt0eg.js +8 -0
- package/dist/{chunk-h1xm4rnm.js.map → chunk-rjjjt0eg.js.map} +2 -2
- package/dist/chunk-rjzrfj86.js +4 -0
- package/dist/chunk-rjzrfj86.js.map +10 -0
- package/dist/chunk-rm3pct07.js +4 -0
- package/dist/chunk-rm3pct07.js.map +10 -0
- package/dist/chunk-rmhs40sh.js +4 -0
- package/dist/chunk-rmhs40sh.js.map +10 -0
- package/dist/chunk-rqrezesz.js +4 -0
- package/dist/chunk-rqrezesz.js.map +10 -0
- package/dist/chunk-s0b5gyec.js +5 -0
- package/dist/chunk-s0b5gyec.js.map +10 -0
- package/dist/chunk-s0g6kddk.js +4 -0
- package/dist/chunk-s0g6kddk.js.map +10 -0
- package/dist/chunk-s4twrhpt.js +4 -0
- package/dist/chunk-s4twrhpt.js.map +10 -0
- package/dist/chunk-s5q7xgm7.js +4 -0
- package/dist/chunk-s5q7xgm7.js.map +10 -0
- package/dist/chunk-s6337cg6.js +4 -0
- package/dist/chunk-s6337cg6.js.map +10 -0
- package/dist/chunk-sarcnr78.js +5 -0
- package/dist/chunk-sarcnr78.js.map +10 -0
- package/dist/chunk-sgqzh2eh.js +4 -0
- package/dist/chunk-sgqzh2eh.js.map +10 -0
- package/dist/chunk-sh7q9p7c.js +4 -0
- package/dist/chunk-sh7q9p7c.js.map +10 -0
- package/dist/chunk-shvm8xpf.js +4 -0
- package/dist/chunk-shvm8xpf.js.map +10 -0
- package/dist/chunk-sm4gyh1f.js +4 -0
- package/dist/{chunk-dtkvdcf6.js.map → chunk-sm4gyh1f.js.map} +3 -7
- package/dist/chunk-sqdy9tjw.js +4 -0
- package/dist/chunk-sqdy9tjw.js.map +10 -0
- package/dist/chunk-stfzvxzh.js +5 -0
- package/dist/chunk-stfzvxzh.js.map +25 -0
- package/dist/chunk-sxt20n19.js +4 -0
- package/dist/chunk-sxt20n19.js.map +10 -0
- package/dist/chunk-t1mdzmvf.js +4 -0
- package/dist/{chunk-55xdqqbt.js.map → chunk-t1mdzmvf.js.map} +3 -14
- package/dist/chunk-t24w0gem.js +4 -0
- package/dist/chunk-t24w0gem.js.map +10 -0
- package/dist/chunk-t8pfwzwx.js +4 -0
- package/dist/chunk-t8pfwzwx.js.map +10 -0
- package/dist/chunk-t9fpc42w.js +4 -0
- package/dist/chunk-t9fpc42w.js.map +10 -0
- package/dist/chunk-ta1fz9d1.js +5 -0
- package/dist/chunk-ta1fz9d1.js.map +10 -0
- package/dist/chunk-thdwxt6w.js +4 -0
- package/dist/chunk-thdwxt6w.js.map +10 -0
- package/dist/chunk-tkgk80b9.js +4 -0
- package/dist/chunk-tkgk80b9.js.map +10 -0
- package/dist/chunk-twf1wr4h.js +4 -0
- package/dist/chunk-twf1wr4h.js.map +10 -0
- package/dist/chunk-v9kg2vy4.js +4 -0
- package/dist/{chunk-arbx49j6.js.map → chunk-v9kg2vy4.js.map} +5 -5
- package/dist/chunk-veamz5d0.js +4 -0
- package/dist/chunk-veamz5d0.js.map +10 -0
- package/dist/chunk-vf6yxr0r.js +4 -0
- package/dist/chunk-vf6yxr0r.js.map +10 -0
- package/dist/chunk-vh816yqy.js +4 -0
- package/dist/chunk-vh816yqy.js.map +10 -0
- package/dist/chunk-vnxja8xq.js +4 -0
- package/dist/chunk-vnxja8xq.js.map +10 -0
- package/dist/chunk-vpgsy207.js +4 -0
- package/dist/chunk-vpgsy207.js.map +10 -0
- package/dist/chunk-vqnvrsnc.js +4 -0
- package/dist/chunk-vqnvrsnc.js.map +10 -0
- package/dist/chunk-vx2ep3d6.js +5 -0
- package/dist/chunk-vx2ep3d6.js.map +10 -0
- package/dist/chunk-vybrcp16.js +4 -0
- package/dist/chunk-vybrcp16.js.map +10 -0
- package/dist/chunk-w100wbf2.js +11 -0
- package/dist/{chunk-r3qdswng.js.map → chunk-w100wbf2.js.map} +5 -5
- package/dist/chunk-w1d1dmx3.js +4 -0
- package/dist/chunk-w1d1dmx3.js.map +10 -0
- package/dist/chunk-w1nwkvbe.js +4 -0
- package/dist/chunk-w1nwkvbe.js.map +10 -0
- package/dist/chunk-w1zabjwt.js +4 -0
- package/dist/chunk-w1zabjwt.js.map +10 -0
- package/dist/chunk-w4hqdtab.js +4 -0
- package/dist/chunk-w4hqdtab.js.map +10 -0
- package/dist/chunk-w5tgtsfr.js +4 -0
- package/dist/chunk-w5tgtsfr.js.map +10 -0
- package/dist/chunk-w7ezjfcb.js +4 -0
- package/dist/chunk-w7ezjfcb.js.map +10 -0
- package/dist/chunk-w7mjxa9e.js +4 -0
- package/dist/chunk-w7mjxa9e.js.map +10 -0
- package/dist/chunk-w9h179q6.js +5 -0
- package/dist/chunk-w9h179q6.js.map +10 -0
- package/dist/chunk-wb75jnfp.js +4 -0
- package/dist/chunk-wb75jnfp.js.map +10 -0
- package/dist/chunk-wd9hmfa8.js +4 -0
- package/dist/chunk-wd9hmfa8.js.map +10 -0
- package/dist/chunk-wqmd1wv4.js +4 -0
- package/dist/chunk-wqmd1wv4.js.map +10 -0
- package/dist/chunk-wrz50ar3.js +4 -0
- package/dist/chunk-wrz50ar3.js.map +48 -0
- package/dist/chunk-wxgcwv7j.js +4 -0
- package/dist/chunk-wxgcwv7j.js.map +11 -0
- package/dist/chunk-wxw4254w.js +4 -0
- package/dist/{chunk-2n21sn7a.js.map → chunk-wxw4254w.js.map} +3 -4
- package/dist/chunk-wyc2ab1h.js +4 -0
- package/dist/chunk-wyc2ab1h.js.map +10 -0
- package/dist/chunk-wzbs51e4.js +4 -0
- package/dist/chunk-wzbs51e4.js.map +10 -0
- package/dist/chunk-x6248vkg.js +5 -0
- package/dist/chunk-x6248vkg.js.map +10 -0
- package/dist/{chunk-td079vg9.js → chunk-xajvm5dg.js} +3 -3
- package/dist/{chunk-td079vg9.js.map → chunk-xajvm5dg.js.map} +1 -1
- package/dist/chunk-xrteffkv.js +4 -0
- package/dist/chunk-xrteffkv.js.map +10 -0
- package/dist/chunk-xtc3sb35.js +5 -0
- package/dist/chunk-xtc3sb35.js.map +10 -0
- package/dist/chunk-xvfygk82.js +4 -0
- package/dist/{chunk-enc2835j.js.map → chunk-xvfygk82.js.map} +2 -2
- package/dist/chunk-xyagccth.js +4 -0
- package/dist/chunk-xyagccth.js.map +10 -0
- package/dist/chunk-y0msdehj.js +4 -0
- package/dist/chunk-y0msdehj.js.map +21 -0
- package/dist/chunk-y2zzprr2.js +4 -0
- package/dist/chunk-y2zzprr2.js.map +10 -0
- package/dist/chunk-y425gbw0.js +4 -0
- package/dist/{chunk-11by8vja.js.map → chunk-y425gbw0.js.map} +5 -5
- package/dist/chunk-y7q3vx60.js +4 -0
- package/dist/chunk-y7q3vx60.js.map +10 -0
- package/dist/chunk-y8vm6nhq.js +4 -0
- package/dist/chunk-y8vm6nhq.js.map +10 -0
- package/dist/chunk-ym3p77cw.js +4 -0
- package/dist/chunk-ym3p77cw.js.map +10 -0
- package/dist/chunk-yqq2hs5v.js +4 -0
- package/dist/chunk-yqq2hs5v.js.map +10 -0
- package/dist/chunk-ys2w3w3h.js +4 -0
- package/dist/chunk-ys2w3w3h.js.map +10 -0
- package/dist/chunk-yx2dstze.js +4 -0
- package/dist/chunk-yx2dstze.js.map +10 -0
- package/dist/chunk-yxb1tm10.js +5 -0
- package/dist/chunk-yxb1tm10.js.map +10 -0
- package/dist/chunk-yxngksdn.js +4 -0
- package/dist/chunk-yxngksdn.js.map +10 -0
- package/dist/chunk-yzf50f27.js +4 -0
- package/dist/chunk-yzf50f27.js.map +10 -0
- package/dist/chunk-z2536ve8.js +4 -0
- package/dist/chunk-z2536ve8.js.map +14 -0
- package/dist/chunk-z6d8dyj4.js +4 -0
- package/dist/{chunk-b6w0fgxz.js.map → chunk-z6d8dyj4.js.map} +2 -2
- package/dist/chunk-z73h9wcv.js +4 -0
- package/dist/chunk-z73h9wcv.js.map +10 -0
- package/dist/chunk-z744x29v.js +5 -0
- package/dist/chunk-z744x29v.js.map +10 -0
- package/dist/chunk-zajtvy67.js +4 -0
- package/dist/chunk-zajtvy67.js.map +10 -0
- package/dist/chunk-zgcwtt7q.js +4 -0
- package/dist/chunk-zgcwtt7q.js.map +10 -0
- package/dist/chunk-zt083h6w.js +4 -0
- package/dist/chunk-zt083h6w.js.map +10 -0
- package/dist/email/index.js +2 -2
- package/dist/email/index.js.map +26 -5
- package/dist/facades/index.js +2 -2
- package/dist/facades/index.js.map +2 -2
- package/dist/http/ApiRouter.d.ts +5 -0
- package/dist/http/ApiRouter.d.ts.map +1 -1
- package/dist/http/Controller.d.ts +0 -1
- package/dist/http/Controller.d.ts.map +1 -1
- package/dist/http/ViewRouter.d.ts.map +1 -1
- package/dist/http/index.js +2 -2
- package/dist/http/index.js.map +5 -5
- package/dist/kernel/index.js +2 -2
- package/dist/kernel/index.js.map +2 -2
- package/dist/server/index.js +2 -2
- package/dist/server/index.js.map +2 -2
- package/dist/services/index.js +2 -11
- package/dist/services/index.js.map +28 -15
- package/dist/vite/{index-Bu4AXBt9.mjs → index-C9AWJ7QP.mjs} +1 -1
- package/dist/vite/index.mjs +1 -1
- package/dist/vite/{typescript-D69Uqrn5.mjs → typescript-CKrglZ4F.mjs} +56 -48
- package/package.json +2 -2
- package/dist/chunk-11by8vja.js +0 -4
- package/dist/chunk-1gjhrqfe.js +0 -4
- package/dist/chunk-2n21sn7a.js +0 -4
- package/dist/chunk-55xdqqbt.js +0 -4
- package/dist/chunk-6vp2svxg.js +0 -4
- package/dist/chunk-6vp2svxg.js.map +0 -13
- package/dist/chunk-a67a5vtk.js +0 -4
- package/dist/chunk-arbx49j6.js +0 -4
- package/dist/chunk-b6w0fgxz.js +0 -4
- package/dist/chunk-ckds5kj4.js +0 -4
- package/dist/chunk-dtkvdcf6.js +0 -4
- package/dist/chunk-ef6dgp5k.js +0 -4
- package/dist/chunk-en5bya0k.js +0 -4
- package/dist/chunk-enc2835j.js +0 -4
- package/dist/chunk-gsrxf3xp.js +0 -5
- package/dist/chunk-gsrxf3xp.js.map +0 -64
- package/dist/chunk-h1xm4rnm.js +0 -8
- package/dist/chunk-hjr9ztvj.js +0 -4
- package/dist/chunk-kmfnx43s.js +0 -4
- package/dist/chunk-ktwy9nyn.js +0 -4
- package/dist/chunk-n7j3s0s0.js +0 -3
- package/dist/chunk-n7j3s0s0.js.map +0 -15
- package/dist/chunk-p9gc7ke6.js +0 -3
- package/dist/chunk-qf6zg7nd.js +0 -20
- package/dist/chunk-r3qdswng.js +0 -11
- package/dist/chunk-t3g9fdba.js +0 -5
- package/dist/chunk-t3g9fdba.js.map +0 -54
- package/dist/chunk-wfc30gdx.js +0 -4
- package/dist/chunk-z4ha0p3z.js +0 -4
- package/dist/chunk-z4ha0p3z.js.map +0 -10
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import"./chunk-xajvm5dg.js";var 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*[a-z0-9\\\"'])\",\"comment\":\"Name list.\",\"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\"}},\"comment\":\"IO generic specification.\",\"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(?:(backspace)|(close)|(endfile)|(format)|(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.format.fortran\"},\"5\":{\"name\":\"keyword.control.inquire.fortran\"},\"6\":{\"name\":\"keyword.control.open.fortran\"},\"7\":{\"name\":\"keyword.control.read.fortran\"},\"8\":{\"name\":\"keyword.control.rewind.fortran\"},\"9\":{\"name\":\"keyword.control.write.fortran\"},\"10\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.flush.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"match\":\"(?i)\\\\b(flush)\\\\b\"}]},\"abstract-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.fortran.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"match\":\"(-)|(\\\\+)|\\\\/(?!\\\\/|=|\\\\\\\\)|(\\\\*\\\\*)|(\\\\*)\"},\"array-constructor\":{\"begin\":\"(?=\\\\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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Assignment generic specification.\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#assignment-operator\"},{\"include\":\"#invalid-word\"}]},\"assignment-operator\":{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"match\":\"(?<!\\\\/|=|<|>)(=)(?!=|>)\",\"name\":\"keyword.operator.assignment.fortran\"},\"associate-construct\":{\"begin\":\"(?i)\\\\b(associate)\\\\b(?=\\\\s*\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.associate.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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*::)\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2008 standard.\",\"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\":[{\"begin\":\"(?i)\\\\s*\\\\b(call)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.call.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.control.call.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*([a-z]\\\\w*)(%)([a-z]\\\\w*)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.fortran\"},\"2\":{\"name\":\"keyword.accessor.fortran\"},\"3\":{\"name\":\"entity.name.function.subroutine.fortran\"}},\"comment\":\"type-bound subroutines\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"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\"}},\"comment\":\"User defined subroutine.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"}},\"comment\":\"User defined subroutine.\",\"match\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b(?=\\\\s*[;!\\\\n])\"},{\"include\":\"$base\"}]}]},\"character-type\":{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2008 standard.\",\"match\":\"(?i)\\\\G\\\\s*\\\\b(contiguous)\\\\b\"},\"continue-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(continue)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.continue.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\":{\"comment\":\"Statements controlling the flow of the program\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"11\":{\"name\":\"keyword.other.unit.suffix.floating-point.cpp\"},\"12\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"(\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=[0-9a-fA-F])\\\\.|\\\\.(?=[0-9a-fA-F])))([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([pP])((?:\\\\+)?)((?:-)?)(\\\\d(?:\\\\d|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\w))?((?:\\\\w(?<![0-9a-fA-FpP])\\\\w*)?$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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[xXbB])(\\\\d(?:\\\\d|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?((?:(?<=\\\\d)\\\\.|\\\\.(?=\\\\d)))(\\\\d(?:\\\\d|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)?(?:(?<!')([eE])((?:\\\\+)?)((?:-)?)(\\\\d(?:\\\\d|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?([lLfF](?!\\\\w))?((?:\\\\w(?<![0-9eE])\\\\w*)?$)\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.binary.cpp\"},\"2\":{\"name\":\"constant.numeric.binary.cpp\",\"patterns\":[{\"match\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(\\\\G0[bB])([01](?:[01]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\w))?((?:\\\\w(?<!\\\\d)\\\\w*)?$)\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.octal.cpp\"},\"2\":{\"name\":\"constant.numeric.octal.cpp\",\"patterns\":[{\"match\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(\\\\G0)((?:[0-7]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))+)((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\w))?((?:\\\\w(?<!\\\\d)\\\\w*)?$)\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.unit.hexadecimal.cpp\"},\"2\":{\"name\":\"constant.numeric.hexadecimal.cpp\",\"patterns\":[{\"match\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"name\":\"punctuation.separator.constant.numeric.cpp\"}]},\"8\":{\"name\":\"keyword.other.unit.suffix.integer.cpp\"},\"9\":{\"name\":\"keyword.other.unit.user-defined.cpp\"}},\"match\":\"(\\\\G0[xX])([0-9a-fA-F](?:[0-9a-fA-F]|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([pP])((?:\\\\+)?)((?:-)?)(\\\\d(?:\\\\d|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\w))?((?:\\\\w(?<![0-9a-fA-FpP])\\\\w*)?$)\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.cpp\",\"patterns\":[{\"match\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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\":\"(?<=[0-9a-fA-F])'(?=[0-9a-fA-F])\",\"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[xXbB])(\\\\d(?:\\\\d|((?<=[0-9a-fA-F])'(?=[0-9a-fA-F])))*)(?:(?<!')([eE])((?:\\\\+)?)((?:-)?)(\\\\d(?:\\\\d|(?<=[0-9a-fA-F])'(?=[0-9a-fA-F]))*))?((?:[uU]|(?:[uU]ll?)|(?:[uU]LL?)|(?:ll?[uU]?)|(?:LL?[uU]?)|[fF])(?!\\\\w))?((?:\\\\w(?<![0-9eE])\\\\w*)?$)\"},{\"match\":\"(?:(?:[0-9a-zA-Z_\\\\.]|')|(?<=[eEpP])[+-])+\",\"name\":\"invalid.illegal.constant.numeric.cpp\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:(?:[0-9a-zA-Z_\\\\.]|')|(?<=[eEpP])[+-])*\"},\"critical-construct\":{\"begin\":\"(?i)\\\\b(critical)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.associate.fortran\"}},\"comment\":\"Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"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)\",\"comment\":\"Introduced in the Fortran 1995 standard.\",\"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\"}},\"comment\":\"Derived type parameter.\",\"match\":\"(?i)\\\\b(integer)\\\\s*(,)\\\\s*(kind|len)\\\\s*(?:(::)\\\\s*([a-z]\\\\w*)?)?\\\\s*(?=[;!\\\\n])\"},\"derived-type-component-procedure-specification\":{\"begin\":\"(?i)(?=\\\\b(?:procedure)\\\\b)\",\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"comment\":\"Attribute list.\",\"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))\",\"comment\":\"Introduced in the Fortran 1995 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.derived-type.fortran\",\"patterns\":[{\"include\":\"#types\"},{\"include\":\"#line-continuation-operator\"},{\"begin\":\"(?=\\\\s*(,|::))\",\"comment\":\"Attribute list.\",\"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)(?=\\\\b(?:private)\\\\b)\",\"comment\":\"Introduced in the Fortran 1995 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.procedure.final.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(::))\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.procedure.generic.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"comment\":\"Attribute list.\",\"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])\",\"comment\":\"Name list.\",\"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)(?=\\\\b(?:procedure)\\\\b)\",\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"comment\":\"Attribute list.\",\"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*(,|::))\",\"comment\":\"Attribute list.\",\"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)\",\"comment\":\"Derived type specification block.\",\"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\"}},\"comment\":\"Derived type contains block.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"match\":\"\\\\s*(\\\\%)\"},\"dimension-attribute\":{\"begin\":\"(?i)\\\\s*\\\\b(dimension)(?=\\\\s*\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.dimension.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"end\":\"(?i)(?:^|(?<=;))(?=\\\\s*\\\\b\\\\2\\\\b)\",\"name\":\"meta.do.labeled.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[;!\\\\n]))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.comma.fortran\"}},\"comment\":\"Loop control.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"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\"}},\"comment\":\"Loop control.\",\"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)\",\"comment\":\"Loop body.\",\"end\":\"(?i)(?=\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)\",\"patterns\":[{\"include\":\"$base\"}]}]}]},\"dummy-variable\":{\"captures\":{\"1\":{\"name\":\"variable.parameter.fortran\"}},\"comment\":\"dummy variable\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(?i)\\\\s*\\\\b(elemental)\\\\b\"},\"entry-statement\":{\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(entry)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.entry.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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*(,|::))\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2008 standard.\",\"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|event wait)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.event.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Introduced in the Fortran 2018 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"match\":\"(?i)\\\\s*\\\\b(external)\\\\b\"},\"fail-image-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.fail-image.fortran\"}},\"comment\":\"Introduced in the Fortran 2018 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"end\":\"(?<!\\\\G)\",\"patterns\":[{\"begin\":\"(?i)\\\\G(?!\\\\s*[;!\\\\n])\",\"comment\":\"Loop control.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2018 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.form-team.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"function-definition\":{\"begin\":\"(?i)(?=([^:'\\\";!\\\\n](?!\\\\bend)(?!\\\\bsubroutine\\\\b))*\\\\bfunction\\\\b)\",\"comment\":\"Function program unit. Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.function.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bfunction\\\\b))\",\"comment\":\"Function attribute list.\",\"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\"}},\"comment\":\"Captures the function keyword\",\"end\":\"(?=[;!\\\\n])\",\"patterns\":[{\"begin\":\"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.fortran\"}},\"comment\":\"Function body.\",\"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])\",\"comment\":\"Rest of the first line in function construct.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.function.first-line.fortran\",\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#result-statement\"},{\"include\":\"#language-binding-attribute\"}]},{\"begin\":\"(?i)(?!\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*function\\\\b))\",\"comment\":\"Specification and execution block.\",\"end\":\"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*function\\\\b))\",\"name\":\"meta.block.specification.function.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"comment\":\"Contains block.\",\"end\":\"(?i)(?=(?:end\\\\s*[;!\\\\n]|end\\\\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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Assignment generic interface.\",\"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\"}},\"comment\":\"Operator generic interface.\",\"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\"}},\"comment\":\"Read/Write generic interface.\",\"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\"}},\"comment\":\"Generic interface.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"else if statement\",\"end\":\"(?=[;!\\\\n])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.then.fortran\"},\"2\":{\"name\":\"meta.label.elseif.fortran\"}},\"comment\":\"capture the label if present\",\"match\":\"(?i)\\\\b(then)\\\\b(\\\\s*[a-z]\\\\w*)?\"},{\"include\":\"#invalid-word\"}]},{\"begin\":\"(?i)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.else.fortran\"}},\"comment\":\"else block\",\"end\":\"(?i)(?=\\\\b(end\\\\s*if)\\\\b)\",\"patterns\":[{\"begin\":\"(?!(\\\\s*(;|!|\\\\n)))\",\"comment\":\"rest of else line\",\"end\":\"(?=[;!\\\\n])\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"meta.label.else.fortran\"},\"2\":{\"name\":\"invalid.error.label.else.fortran\"}},\"comment\":\"capture the label if present\",\"match\":\"\\\\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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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)\",\"comment\":\"Introduced in the Fortran 1990 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.procedure.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bprocedure\\\\b))\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Procedure statement.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Intrinsic functions introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Functions accessable through the intrinsic FORTRAN_SPECIAL_FUNCTIONS module. Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Intrinsic functions introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Functions accessable through the intrinsic IEEE_ARITHMETIC module. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Functions accessable through the intrinsic IEEE_EXCEPTIONS module. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Functions accessable through the intrinsic ISO_C_BINDING module. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Functions accessable through the intrinsic ISO_FORTRAN_ENV module. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Intrinsic functions introduced in the Fortran 1995 standard.\",\"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\"}},\"comment\":\"Intrinsic functions introduced in the Fortran 1990 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\b([icd]?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\"}},\"comment\":\"Intrinsic functions introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Intrinsic subroutines introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Intrinsic subroutines introduced in the Fortran 1995 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ieee_(get|set)_(rounding|underflow)_mode)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Subroutines accessable through the intrinsic IEEE_ARITHMETIC module. Introduced in the Fortran 2003 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(ieee_(get|set)_(flag|halting_mode|status))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Subroutines accessable through the intrinsic IEEE_EXCEPTIONS module. Introduced in the Fortran 2003 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},{\"begin\":\"(?i)\\\\G\\\\s*\\\\b(c_f_(pointer|procpointer))\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.subroutine.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Subroutines accessable through the intrinsic ISO_C_BINDING module. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Intrinsic subroutines introduced in the Fortran 2008 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]}]},\"invalid-character\":{\"match\":\"(?i)[^\\\\s;!\\\\n]+\",\"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\"}},\"comment\":\"Introduced in Fortran 2003 standard.\",\"end\":\"(?:\\\\)|(?=\\\\n))\",\"patterns\":[{\"match\":\"(?i)\\\\b(c)\\\\b\",\"name\":\"variable.parameter.fortran\"},{\"include\":\"#dummy-variable\"},{\"include\":\"$base\"}]},\"line-continuation-operator\":{\"comment\":\"Operator that allows a line to be continued on the next line.\",\"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\"}},\"comment\":\"Logical constants\",\"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\":[{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"match\":\"(?i)(\\\\s*\\\\.(and|eq|eqv|le|lt|ge|gt|ne|neqv|not|or)\\\\.)\",\"name\":\"keyword.logical.fortran\"},{\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(==|\\\\/=|>=|(?<!=)>|<=|<)\",\"name\":\"keyword.logical.fortran.modern\"}]},\"logical-type\":{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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)\",\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Module body.\",\"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\",\"comment\":\"Module specification block.\",\"end\":\"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*module\\\\b))\",\"name\":\"meta.block.specification.module.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"comment\":\"Module contains block.\",\"end\":\"(?i)(?=\\\\s*(?:end\\\\s*[;!\\\\n]|end\\\\s*module\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"name-list\":{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"comment\":\"Name list.\",\"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)\",\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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)?([^\\\\s;!\\\\n]*?)?(?=\\\\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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"end\":\"(?=[;!\\\\n])\",\"patterns\":[{\"include\":\"$base\"}]},\"non-intrinsic-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non-intrinsic.fortran\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(?i)\\\\s*\\\\b(non_intrinsic)\\\\b\"},\"non-overridable-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non-overridable.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"match\":\"(?i)\\\\s*\\\\b(non_overridable)\\\\b\"},\"nopass-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.nopass.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"end\":\"(?<!\\\\G)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parentheses.right.fortran\"}},\"name\":\"meta.statement.nullify.fortran\",\"patterns\":[{\"include\":\"#parentheses-dummy-variables\"}]},\"numeric-constant\":{\"comment\":\"Numeric constants\",\"match\":\"(?i)[+\\\\-]?(\\\\b\\\\d+\\\\.?\\\\d*|\\\\.\\\\d+)(_\\\\w+|d[+\\\\-]?\\\\d+|e[+\\\\-]?\\\\d+(_\\\\w+)?)?(?![a-z_])\",\"name\":\"constant.numeric.fortran\"},\"numeric-type\":{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Operator generic specification.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(?i)\\\\s*\\\\b(optional)\\\\b\"},\"parameter-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.parameter.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"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\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#operators\"},{\"include\":\"#array-constructor\"},{\"include\":\"#parentheses\"},{\"include\":\"#intrinsic-functions\"},{\"include\":\"#variable\"}]},\"pass-attribute\":{\"comment\":\"Introduced in the Fortran 2003 standard.\",\"patterns\":[{\"begin\":\"(?i)\\\\s*\\\\b(pass)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.pass.fortran\"}},\"comment\":\"Pass attribute with argument.\",\"end\":\"\\\\)|(?=\\\\n)\",\"patterns\":[]},{\"captures\":{\"1\":{\"name\":\"storage.modifier.pass.fortran\"}},\"comment\":\"Pass attribute without argument.\",\"match\":\"(?i)\\\\s*\\\\b(pass)\\\\b\"}]},\"pause-statement\":{\"begin\":\"(?i)\\\\s*\\\\b(pause)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.pause.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.control.pause.fortran\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#invalid-character\"}]},\"pointer-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.pointer.fortran\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(?i)\\\\s*\\\\b(pointer)\\\\b\"},\"pointer-operators\":{\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"division regex is different than in main fortran\",\"match\":\"(-)|(\\\\+)|(\\\\/)|(\\\\*)\"},\"preprocessor-assignment-operator\":{\"comment\":\"assignments with = are not allowed\",\"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\"}},\"comment\":\"and:&&, bitand:&, or:||, bitor:|, not eq:!=, not:!, xor:^, compl:~\",\"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\"}},\"comment\":\"Double quote string\",\"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\"}},\"comment\":\"Single quote string\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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)\",\"comment\":\"Procedure program unit. Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Procedure body.\",\"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])\",\"comment\":\"Rest of the first line in procedure construct - should be empty.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.first-line.fortran\",\"patterns\":[{\"include\":\"#invalid-character\"}]},{\"begin\":\"(?i)(?!\\\\s*(?:contains\\\\b|end\\\\s*[;!\\\\n]|end\\\\s*procedure\\\\b))\",\"comment\":\"Specification and execution block.\",\"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\"}},\"comment\":\"Contains block.\",\"end\":\"(?i)(?=\\\\s*(?:end\\\\s*[;!\\\\n]|end\\\\s*procedure\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$self\"}]}]}]}]},\"procedure-name\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.procedure.fortran\"}},\"comment\":\"Procedure name.\",\"match\":\"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b\"},\"procedure-name-list\":{\"begin\":\"(?i)(?=\\\\s*[a-z])\",\"comment\":\"Name list.\",\"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)(?=\\\\b(?:procedure)\\\\b)\",\"comment\":\"Introduced in the Fortran 2003 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.specification.procedure.fortran\",\"patterns\":[{\"include\":\"#procedure-type\"},{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"comment\":\"Attribute list.\",\"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\":{\"comment\":\"Introduced in the Fortran ???? standard.\",\"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)\",\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Program body.\",\"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\",\"comment\":\"Program specification block.\",\"end\":\"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*program\\\\b))\",\"name\":\"meta.block.specification.program.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"comment\":\"Program contains block.\",\"end\":\"(?i)(?=(?:end\\\\s*[;!\\\\n]|end\\\\s*program\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"protected-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.protected.fortran\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"match\":\"(?i)\\\\s*\\\\b(protected)\\\\b\"},\"public-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.public.fortran\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"match\":\"(?i)\\\\s*\\\\b(public)\\\\b\"},\"pure-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.impure.fortran\"},\"2\":{\"name\":\"storage.modifier.pure.fortran\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"match\":\"(?i)\\\\s*\\\\b(?:(impure)|(pure))\\\\b\"},\"recursive-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.non_recursive.fortran\"},\"2\":{\"name\":\"storage.modifier.recursive.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.control.return.fortran\",\"patterns\":[{\"include\":\"#invalid-character\"}]},\"save-attribute\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.save.fortran\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"match\":\"(?i)\\\\s*\\\\b(save)\\\\b\"},\"select-case-construct\":{\"begin\":\"(?i)\\\\b(select\\\\s*case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.selectcase.fortran\"}},\"comment\":\"Select case construct. Introduced in the Fortran 1990 standard.\",\"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\"}},\"comment\":\"Select rank construct. Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Select type construct. Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 20?? standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.control.stop.fortran\",\"patterns\":[{\"include\":\"#constants\"},{\"include\":\"#string-operators\"},{\"include\":\"#invalid-character\"}]},\"string-constant\":{\"comment\":\"Introduced in the Fortran 1977 standard.\",\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.fortran\"}},\"comment\":\"String\",\"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\"}},\"comment\":\"String\",\"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\"}},\"comment\":\"Operator that allows a line to be continued on the next line.\",\"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\":{\"comment\":\"Introduced in the Fortran 19?? standard.\",\"match\":\"(\\\\/\\\\/)\",\"name\":\"keyword.other.concatination.fortran\"},\"submodule-definition\":{\"begin\":\"(?i)(?=\\\\b(submodule)\\\\s*\\\\()\",\"comment\":\"Introduced in the Fortran 2008 standard.\",\"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\"}},\"comment\":\"Submodule body.\",\"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\",\"comment\":\"Submodule specification block.\",\"end\":\"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*submodule\\\\b))\",\"name\":\"meta.block.specification.submodule.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"comment\":\"Submodule contains block.\",\"end\":\"(?i)(?=\\\\s*(?:end\\\\s*[;!\\\\n]|end\\\\s*submodule\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]},\"subroutine-definition\":{\"begin\":\"(?i)(?=([^:'\\\";!\\\\n](?!\\\\bend))*\\\\bsubroutine\\\\b)\",\"comment\":\"Subroutine program unit. Introduced in the Fortran 1977 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.subroutine.fortran\",\"patterns\":[{\"begin\":\"(?i)(?=\\\\G\\\\s*(?!\\\\bsubroutine\\\\b))\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Subroutine body.\",\"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])\",\"comment\":\"Rest of the first line in subroutine construct.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.first-line.fortran\",\"patterns\":[{\"include\":\"#dummy-variable-list\"},{\"include\":\"#language-binding-attribute\"}]},{\"begin\":\"(?i)(?!\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))\",\"comment\":\"Specification and execution block.\",\"end\":\"(?i)(?=\\\\b(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))\",\"name\":\"meta.block.specification.subroutine.fortran\",\"patterns\":[{\"begin\":\"(?i)\\\\b(contains)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.contains.fortran\"}},\"comment\":\"Contains block.\",\"end\":\"(?i)(?=(?:end\\\\s*[;!\\\\n]|end\\\\s*subroutine\\\\b))\",\"name\":\"meta.block.contains.fortran\",\"patterns\":[{\"include\":\"$base\"}]},{\"include\":\"$base\"}]}]}]}]},\"sync-all-statement\":{\"begin\":\"(?i)\\\\b(sync all|sync memory)(\\\\s*(?=\\\\())?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.sync-all-memory.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Introduced in the Fortran 2018 standard.\",\"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|sync team)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.sync-images-team.fortran\"},\"2\":{\"name\":\"punctuation.parentheses.left.fortran\"}},\"comment\":\"Introduced in the Fortran 2018 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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))\",\"comment\":\"Supported types for function and escape :: if function is used as a variable name (which is bad practice).\",\"end\":\"(?=[);!\\\\n])\",\"name\":\"meta.specification.type.fortran\",\"patterns\":[{\"include\":\"#types\"},{\"begin\":\"(?=\\\\s*(,|::))\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"end\":\"(?=[;!\\\\n])\",\"name\":\"meta.statement.use.fortran\",\"patterns\":[{\"begin\":\"(?=\\\\s*(,|::|\\\\())\",\"comment\":\"Attribute list.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"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\"}},\"comment\":\"Introduced in the Fortran 2003 standard.\",\"match\":\"(?i)\\\\s*\\\\b(volatile)\\\\b\"},\"where-construct\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?i)\\\\b(where)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.where.fortran\"}},\"comment\":\"Introduced in the Fortran 1990 standard.\",\"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\":\"(?=[;!\\\\n])\",\"patterns\":[{\"include\":\"#parentheses\"},{\"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\"}},\"comment\":\"Introduced in the Fortran 1995 standard.\",\"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};
|
|
3
|
+
export{n as N};
|
|
4
|
+
|
|
5
|
+
//# debugId=DAC66A4C74C2C09064756E2164756E21
|