@dylanpiercey/work 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -0
- package/bin/work.mjs +236 -0
- package/dist/_B9zhiogp.js +1797 -0
- package/dist/_BMI-E3GI.js +44 -0
- package/dist/_BmSjjJ2E.js +43 -0
- package/dist/_DmVVbFOa.js +7641 -0
- package/dist/_JcAWG3K1.js +2422 -0
- package/dist/_xlrdOUsL.js +877 -0
- package/dist/index.mjs +21023 -0
- package/dist/public/apple-touch-icon.png +0 -0
- package/dist/public/assets/_0fSaH845.js +2 -0
- package/dist/public/assets/_0fSaH845.js.map +1 -0
- package/dist/public/assets/_1d3aXaVP.js +2 -0
- package/dist/public/assets/_1d3aXaVP.js.map +1 -0
- package/dist/public/assets/_2IIEA8gg.js +2 -0
- package/dist/public/assets/_2IIEA8gg.js.map +1 -0
- package/dist/public/assets/_2WURHcVF2.js +2 -0
- package/dist/public/assets/_2WURHcVF2.js.map +1 -0
- package/dist/public/assets/_2sfcym2Z.js +2 -0
- package/dist/public/assets/_2sfcym2Z.js.map +1 -0
- package/dist/public/assets/_4CJ0cIlV.js +2 -0
- package/dist/public/assets/_4CJ0cIlV.js.map +1 -0
- package/dist/public/assets/_4G7pJPwS2.js +2 -0
- package/dist/public/assets/_4G7pJPwS2.js.map +1 -0
- package/dist/public/assets/_4ZHwLPI52.js +2 -0
- package/dist/public/assets/_4ZHwLPI52.js.map +1 -0
- package/dist/public/assets/_5eyTD99u.js +2 -0
- package/dist/public/assets/_5eyTD99u.js.map +1 -0
- package/dist/public/assets/_7GGW24-e2.js +2 -0
- package/dist/public/assets/_7GGW24-e2.js.map +1 -0
- package/dist/public/assets/_8PwUyIlP2.js +2 -0
- package/dist/public/assets/_8PwUyIlP2.js.map +1 -0
- package/dist/public/assets/_9MfHhQsQ.js +2 -0
- package/dist/public/assets/_9MfHhQsQ.js.map +1 -0
- package/dist/public/assets/_B1RWQWA52.js +2 -0
- package/dist/public/assets/_B1RWQWA52.js.map +1 -0
- package/dist/public/assets/_B2OO5cIa2.js +2 -0
- package/dist/public/assets/_B2OO5cIa2.js.map +1 -0
- package/dist/public/assets/_B2gwz-sJ2.js +2 -0
- package/dist/public/assets/_B2gwz-sJ2.js.map +1 -0
- package/dist/public/assets/_B3-BJFgG2.js +2 -0
- package/dist/public/assets/_B3-BJFgG2.js.map +1 -0
- package/dist/public/assets/_B35FxJx-.js +2 -0
- package/dist/public/assets/_B35FxJx-.js.map +1 -0
- package/dist/public/assets/_B3gFvitq2.js +2 -0
- package/dist/public/assets/_B3gFvitq2.js.map +1 -0
- package/dist/public/assets/_B5W6OYN7.js +2 -0
- package/dist/public/assets/_B5W6OYN7.js.map +1 -0
- package/dist/public/assets/_B5_Aarum.js +2 -0
- package/dist/public/assets/_B5_Aarum.js.map +1 -0
- package/dist/public/assets/_B5eOa1yu.js +2 -0
- package/dist/public/assets/_B5eOa1yu.js.map +1 -0
- package/dist/public/assets/_B68TUdTA.js +2 -0
- package/dist/public/assets/_B68TUdTA.js.map +1 -0
- package/dist/public/assets/_B6D30XZt.js +2 -0
- package/dist/public/assets/_B6D30XZt.js.map +1 -0
- package/dist/public/assets/_B7U1oqTK.js +2 -0
- package/dist/public/assets/_B7U1oqTK.js.map +1 -0
- package/dist/public/assets/_B7ZEbQpA2.js +2 -0
- package/dist/public/assets/_B7ZEbQpA2.js.map +1 -0
- package/dist/public/assets/_BAWPOn9u.js +2 -0
- package/dist/public/assets/_BAWPOn9u.js.map +1 -0
- package/dist/public/assets/_BAd6mRrB.js +2 -0
- package/dist/public/assets/_BAd6mRrB.js.map +1 -0
- package/dist/public/assets/_BC2Px7Mm.js +2 -0
- package/dist/public/assets/_BC2Px7Mm.js.map +1 -0
- package/dist/public/assets/_BC_s9l72.js +2 -0
- package/dist/public/assets/_BC_s9l72.js.map +1 -0
- package/dist/public/assets/_BHWKrbxM.js +2 -0
- package/dist/public/assets/_BHWKrbxM.js.map +1 -0
- package/dist/public/assets/_BHpQb5nM.js +2 -0
- package/dist/public/assets/_BHpQb5nM.js.map +1 -0
- package/dist/public/assets/_BJitypiv.js +2 -0
- package/dist/public/assets/_BJitypiv.js.map +1 -0
- package/dist/public/assets/_BM315xPC.js +2 -0
- package/dist/public/assets/_BM315xPC.js.map +1 -0
- package/dist/public/assets/_BML5mF2J.js +2 -0
- package/dist/public/assets/_BML5mF2J.js.map +1 -0
- package/dist/public/assets/_BMqwQI7S.js +2 -0
- package/dist/public/assets/_BMqwQI7S.js.map +1 -0
- package/dist/public/assets/_BN8roHge.js +2 -0
- package/dist/public/assets/_BN8roHge.js.map +1 -0
- package/dist/public/assets/_BNLmms1o.js +2 -0
- package/dist/public/assets/_BNLmms1o.js.map +1 -0
- package/dist/public/assets/_BPjhmG05.js +2 -0
- package/dist/public/assets/_BPjhmG05.js.map +1 -0
- package/dist/public/assets/_BQwnQ1RS.js +2 -0
- package/dist/public/assets/_BQwnQ1RS.js.map +1 -0
- package/dist/public/assets/_BR5RXkoi.js +2 -0
- package/dist/public/assets/_BR5RXkoi.js.map +1 -0
- package/dist/public/assets/_BRdr0IET2.js +2 -0
- package/dist/public/assets/_BRdr0IET2.js.map +1 -0
- package/dist/public/assets/_BSMLrYjP.js +2 -0
- package/dist/public/assets/_BSMLrYjP.js.map +1 -0
- package/dist/public/assets/_BSWPekZh2.js +2 -0
- package/dist/public/assets/_BSWPekZh2.js.map +1 -0
- package/dist/public/assets/_BUDT5pXO2.js +2 -0
- package/dist/public/assets/_BUDT5pXO2.js.map +1 -0
- package/dist/public/assets/_BUR00bIu.js +2 -0
- package/dist/public/assets/_BUR00bIu.js.map +1 -0
- package/dist/public/assets/_BVOciON5.js +2 -0
- package/dist/public/assets/_BVOciON5.js.map +1 -0
- package/dist/public/assets/_BVqpJbzt.js +2 -0
- package/dist/public/assets/_BVqpJbzt.js.map +1 -0
- package/dist/public/assets/_BWXHIvNe2.js +2 -0
- package/dist/public/assets/_BWXHIvNe2.js.map +1 -0
- package/dist/public/assets/_BX8lD8tm2.js +2 -0
- package/dist/public/assets/_BX8lD8tm2.js.map +1 -0
- package/dist/public/assets/_BXViO-2h.js +2 -0
- package/dist/public/assets/_BXViO-2h.js.map +1 -0
- package/dist/public/assets/_BXeXVLqQ.js +2 -0
- package/dist/public/assets/_BXeXVLqQ.js.map +1 -0
- package/dist/public/assets/_BYOwaDjH.js +2 -0
- package/dist/public/assets/_BYOwaDjH.js.map +1 -0
- package/dist/public/assets/_BYnGhZoM.js +2 -0
- package/dist/public/assets/_BYnGhZoM.js.map +1 -0
- package/dist/public/assets/_BZCL-v6S2.js +2 -0
- package/dist/public/assets/_BZCL-v6S2.js.map +1 -0
- package/dist/public/assets/_B_bV9PQ92.js +2 -0
- package/dist/public/assets/_B_bV9PQ92.js.map +1 -0
- package/dist/public/assets/_B_tTalzw.js +2 -0
- package/dist/public/assets/_B_tTalzw.js.map +1 -0
- package/dist/public/assets/_BaHq4SXp.js +2 -0
- package/dist/public/assets/_BaHq4SXp.js.map +1 -0
- package/dist/public/assets/_BaS-oxxd2.js +2 -0
- package/dist/public/assets/_BaS-oxxd2.js.map +1 -0
- package/dist/public/assets/_Bc3YyYrH2.js +2 -0
- package/dist/public/assets/_Bc3YyYrH2.js.map +1 -0
- package/dist/public/assets/_BdRaM05m2.js +2 -0
- package/dist/public/assets/_BdRaM05m2.js.map +1 -0
- package/dist/public/assets/_BdplqJrr.js +2 -0
- package/dist/public/assets/_BdplqJrr.js.map +1 -0
- package/dist/public/assets/_BeD6FBFk.js +2 -0
- package/dist/public/assets/_BeD6FBFk.js.map +1 -0
- package/dist/public/assets/_BewZWKdk2.js +2 -0
- package/dist/public/assets/_BewZWKdk2.js.map +1 -0
- package/dist/public/assets/_BgfXC-Er.js +2 -0
- package/dist/public/assets/_BgfXC-Er.js.map +1 -0
- package/dist/public/assets/_Bh7aXd4k.js +2 -0
- package/dist/public/assets/_Bh7aXd4k.js.map +1 -0
- package/dist/public/assets/_BiFt_7mu2.js +2 -0
- package/dist/public/assets/_BiFt_7mu2.js.map +1 -0
- package/dist/public/assets/_BiJDBrnU2.js +2 -0
- package/dist/public/assets/_BiJDBrnU2.js.map +1 -0
- package/dist/public/assets/_Bj61d0ZC2.js +2 -0
- package/dist/public/assets/_Bj61d0ZC2.js.map +1 -0
- package/dist/public/assets/_Bj7E1mRn.js +2 -0
- package/dist/public/assets/_Bj7E1mRn.js.map +1 -0
- package/dist/public/assets/_BjSbUqbC.js +2 -0
- package/dist/public/assets/_BjSbUqbC.js.map +1 -0
- package/dist/public/assets/_Bkw-3BvZ.js +2 -0
- package/dist/public/assets/_Bkw-3BvZ.js.map +1 -0
- package/dist/public/assets/_BkyTk9wS.js +2 -0
- package/dist/public/assets/_BkyTk9wS.js.map +1 -0
- package/dist/public/assets/_Bm2Q91Ye.js +2 -0
- package/dist/public/assets/_Bm2Q91Ye.js.map +1 -0
- package/dist/public/assets/_Bm3Qr25_2.js +2 -0
- package/dist/public/assets/_Bm3Qr25_2.js.map +1 -0
- package/dist/public/assets/_BmuOG9ZW.js +2 -0
- package/dist/public/assets/_BmuOG9ZW.js.map +1 -0
- package/dist/public/assets/_BnjxR4X6.js +2 -0
- package/dist/public/assets/_BnjxR4X6.js.map +1 -0
- package/dist/public/assets/_BnlCZFoB2.js +2 -0
- package/dist/public/assets/_BnlCZFoB2.js.map +1 -0
- package/dist/public/assets/_Bozd7klA.js +2 -0
- package/dist/public/assets/_Bozd7klA.js.map +1 -0
- package/dist/public/assets/_BqS6dk9f2.js +2 -0
- package/dist/public/assets/_BqS6dk9f2.js.map +1 -0
- package/dist/public/assets/_Bqwy1Gya.js +2 -0
- package/dist/public/assets/_Bqwy1Gya.js.map +1 -0
- package/dist/public/assets/_BroJfC0k2.js +2 -0
- package/dist/public/assets/_BroJfC0k2.js.map +1 -0
- package/dist/public/assets/_BsKzXJz42.js +2 -0
- package/dist/public/assets/_BsKzXJz42.js.map +1 -0
- package/dist/public/assets/_BsSzOQcm2.js +2 -0
- package/dist/public/assets/_BsSzOQcm2.js.map +1 -0
- package/dist/public/assets/_BtDbiS_P.js +2 -0
- package/dist/public/assets/_BtDbiS_P.js.map +1 -0
- package/dist/public/assets/_Bvq9DfCD.js +2 -0
- package/dist/public/assets/_Bvq9DfCD.js.map +1 -0
- package/dist/public/assets/_Bx1FflLF.js +2 -0
- package/dist/public/assets/_Bx1FflLF.js.map +1 -0
- package/dist/public/assets/_BxMlprV5.js +2 -0
- package/dist/public/assets/_BxMlprV5.js.map +1 -0
- package/dist/public/assets/_BxpfTIzt.js +2 -0
- package/dist/public/assets/_BxpfTIzt.js.map +1 -0
- package/dist/public/assets/_ByJddavk.js +2 -0
- package/dist/public/assets/_ByJddavk.js.map +1 -0
- package/dist/public/assets/_ByQdrI9o.js +2 -0
- package/dist/public/assets/_ByQdrI9o.js.map +1 -0
- package/dist/public/assets/_ByWQv1Qj2.js +2 -0
- package/dist/public/assets/_ByWQv1Qj2.js.map +1 -0
- package/dist/public/assets/_C-LZuMrd.js +2 -0
- package/dist/public/assets/_C-LZuMrd.js.map +1 -0
- package/dist/public/assets/_C03EYrpw.js +2 -0
- package/dist/public/assets/_C03EYrpw.js.map +1 -0
- package/dist/public/assets/_C0MpOrj4.js +2 -0
- package/dist/public/assets/_C0MpOrj4.js.map +1 -0
- package/dist/public/assets/_C0YiOr0H.js +2 -0
- package/dist/public/assets/_C0YiOr0H.js.map +1 -0
- package/dist/public/assets/_C1IUL_tW2.js +2 -0
- package/dist/public/assets/_C1IUL_tW2.js.map +1 -0
- package/dist/public/assets/_C2pBCSgt.js +2 -0
- package/dist/public/assets/_C2pBCSgt.js.map +1 -0
- package/dist/public/assets/_C3h-C4tm.js +2 -0
- package/dist/public/assets/_C3h-C4tm.js.map +1 -0
- package/dist/public/assets/_C5qYipkI.js +2 -0
- package/dist/public/assets/_C5qYipkI.js.map +1 -0
- package/dist/public/assets/_C7Dq7tkg.js +2 -0
- package/dist/public/assets/_C7Dq7tkg.js.map +1 -0
- package/dist/public/assets/_C7UOKdEL2.js +2 -0
- package/dist/public/assets/_C7UOKdEL2.js.map +1 -0
- package/dist/public/assets/_C7mF5XQf.js +2 -0
- package/dist/public/assets/_C7mF5XQf.js.map +1 -0
- package/dist/public/assets/_C820rvS2.js +2 -0
- package/dist/public/assets/_C820rvS2.js.map +1 -0
- package/dist/public/assets/_C8oCnwJJ2.js +2 -0
- package/dist/public/assets/_C8oCnwJJ2.js.map +1 -0
- package/dist/public/assets/_C8pVoKbM2.js +2 -0
- package/dist/public/assets/_C8pVoKbM2.js.map +1 -0
- package/dist/public/assets/_C8r90Shi2.js +2 -0
- package/dist/public/assets/_C8r90Shi2.js.map +1 -0
- package/dist/public/assets/_C9Q5zVZY.js +2 -0
- package/dist/public/assets/_C9Q5zVZY.js.map +1 -0
- package/dist/public/assets/_C9nuUTWB.js +2 -0
- package/dist/public/assets/_C9nuUTWB.js.map +1 -0
- package/dist/public/assets/_CA9gdOdF.js +2 -0
- package/dist/public/assets/_CA9gdOdF.js.map +1 -0
- package/dist/public/assets/_CA_30FGA2.js +2 -0
- package/dist/public/assets/_CA_30FGA2.js.map +1 -0
- package/dist/public/assets/_CAekHB0j.js +2 -0
- package/dist/public/assets/_CAekHB0j.js.map +1 -0
- package/dist/public/assets/_CAySWx-v2.js +2 -0
- package/dist/public/assets/_CAySWx-v2.js.map +1 -0
- package/dist/public/assets/_CBce3t8t2.js +2 -0
- package/dist/public/assets/_CBce3t8t2.js.map +1 -0
- package/dist/public/assets/_CCSX75yM2.js +2 -0
- package/dist/public/assets/_CCSX75yM2.js.map +1 -0
- package/dist/public/assets/_CCn79oCD.js +2 -0
- package/dist/public/assets/_CCn79oCD.js.map +1 -0
- package/dist/public/assets/_CDeNXAV0.js +2 -0
- package/dist/public/assets/_CDeNXAV0.js.map +1 -0
- package/dist/public/assets/_CDv2pdJW.js +2 -0
- package/dist/public/assets/_CDv2pdJW.js.map +1 -0
- package/dist/public/assets/_CE9AQfxI.js +2 -0
- package/dist/public/assets/_CE9AQfxI.js.map +1 -0
- package/dist/public/assets/_CE9ld1lL.js +2 -0
- package/dist/public/assets/_CE9ld1lL.js.map +1 -0
- package/dist/public/assets/_CEbqgOJL.js +2 -0
- package/dist/public/assets/_CEbqgOJL.js.map +1 -0
- package/dist/public/assets/_CFuIV2fl.js +2 -0
- package/dist/public/assets/_CFuIV2fl.js.map +1 -0
- package/dist/public/assets/_CHQ94UKr.js +2 -0
- package/dist/public/assets/_CHQ94UKr.js.map +1 -0
- package/dist/public/assets/_CJTPZ8u_.js +2 -0
- package/dist/public/assets/_CJTPZ8u_.js.map +1 -0
- package/dist/public/assets/_CKONSnHR2.js +2 -0
- package/dist/public/assets/_CKONSnHR2.js.map +1 -0
- package/dist/public/assets/_CL7CweMx.js +2 -0
- package/dist/public/assets/_CL7CweMx.js.map +1 -0
- package/dist/public/assets/_CLvhMVsD.js +2 -0
- package/dist/public/assets/_CLvhMVsD.js.map +1 -0
- package/dist/public/assets/_CLwyXe_n2.js +2 -0
- package/dist/public/assets/_CLwyXe_n2.js.map +1 -0
- package/dist/public/assets/_CMLA9XwU2.js +2 -0
- package/dist/public/assets/_CMLA9XwU2.js.map +1 -0
- package/dist/public/assets/_CNp9jCcm.js +2 -0
- package/dist/public/assets/_CNp9jCcm.js.map +1 -0
- package/dist/public/assets/_CPPmWfSs.js +2 -0
- package/dist/public/assets/_CPPmWfSs.js.map +1 -0
- package/dist/public/assets/_CQ2zXKGN2.js +2 -0
- package/dist/public/assets/_CQ2zXKGN2.js.map +1 -0
- package/dist/public/assets/_CQJs3lWb.js +2 -0
- package/dist/public/assets/_CQJs3lWb.js.map +1 -0
- package/dist/public/assets/_CRGYupPL.js +2 -0
- package/dist/public/assets/_CRGYupPL.js.map +1 -0
- package/dist/public/assets/_CSRkHgEL2.js +2 -0
- package/dist/public/assets/_CSRkHgEL2.js.map +1 -0
- package/dist/public/assets/_CUHmPFLl2.js +2 -0
- package/dist/public/assets/_CUHmPFLl2.js.map +1 -0
- package/dist/public/assets/_CV2tkWYe2.js +2 -0
- package/dist/public/assets/_CV2tkWYe2.js.map +1 -0
- package/dist/public/assets/_CY8IvGdO2.js +2 -0
- package/dist/public/assets/_CY8IvGdO2.js.map +1 -0
- package/dist/public/assets/_CYIUgYqB2.js +2 -0
- package/dist/public/assets/_CYIUgYqB2.js.map +1 -0
- package/dist/public/assets/_CYNrtFtB.js +2 -0
- package/dist/public/assets/_CYNrtFtB.js.map +1 -0
- package/dist/public/assets/_CYpm1nAK.js +2 -0
- package/dist/public/assets/_CYpm1nAK.js.map +1 -0
- package/dist/public/assets/_CZbG8q4J2.js +2 -0
- package/dist/public/assets/_CZbG8q4J2.js.map +1 -0
- package/dist/public/assets/_CZd0xW_V2.js +2 -0
- package/dist/public/assets/_CZd0xW_V2.js.map +1 -0
- package/dist/public/assets/_C_8bwKvT.js +2 -0
- package/dist/public/assets/_C_8bwKvT.js.map +1 -0
- package/dist/public/assets/_CacY0gHj2.js +2 -0
- package/dist/public/assets/_CacY0gHj2.js.map +1 -0
- package/dist/public/assets/_Cadu5wg_2.js +2 -0
- package/dist/public/assets/_Cadu5wg_2.js.map +1 -0
- package/dist/public/assets/_Cb4Vim4T2.js +2 -0
- package/dist/public/assets/_Cb4Vim4T2.js.map +1 -0
- package/dist/public/assets/_CcUt-GD82.js +2 -0
- package/dist/public/assets/_CcUt-GD82.js.map +1 -0
- package/dist/public/assets/_CcmNWLt02.js +2 -0
- package/dist/public/assets/_CcmNWLt02.js.map +1 -0
- package/dist/public/assets/_CewbzKMR.js +2 -0
- package/dist/public/assets/_CewbzKMR.js.map +1 -0
- package/dist/public/assets/_Cfkwpbl82.js +2 -0
- package/dist/public/assets/_Cfkwpbl82.js.map +1 -0
- package/dist/public/assets/_CgoNMtux2.js +2 -0
- package/dist/public/assets/_CgoNMtux2.js.map +1 -0
- package/dist/public/assets/_Ci_nEsc72.js +2 -0
- package/dist/public/assets/_Ci_nEsc72.js.map +1 -0
- package/dist/public/assets/_CjNLYCLg2.js +2 -0
- package/dist/public/assets/_CjNLYCLg2.js.map +1 -0
- package/dist/public/assets/_Ckw8ddFX.js +2 -0
- package/dist/public/assets/_Ckw8ddFX.js.map +1 -0
- package/dist/public/assets/_ClCAoQg62.js +2 -0
- package/dist/public/assets/_ClCAoQg62.js.map +1 -0
- package/dist/public/assets/_ClFFjSW22.js +2 -0
- package/dist/public/assets/_ClFFjSW22.js.map +1 -0
- package/dist/public/assets/_ClKdZ_lG.js +2 -0
- package/dist/public/assets/_ClKdZ_lG.js.map +1 -0
- package/dist/public/assets/_Clg0Yi872.js +2 -0
- package/dist/public/assets/_Clg0Yi872.js.map +1 -0
- package/dist/public/assets/_Cluzi2Zq.js +2 -0
- package/dist/public/assets/_Cluzi2Zq.js.map +1 -0
- package/dist/public/assets/_CmCQp5Yx.js +2 -0
- package/dist/public/assets/_CmCQp5Yx.js.map +1 -0
- package/dist/public/assets/_CmKGBNpS.js +2 -0
- package/dist/public/assets/_CmKGBNpS.js.map +1 -0
- package/dist/public/assets/_Cmm7eHzH.js +2 -0
- package/dist/public/assets/_Cmm7eHzH.js.map +1 -0
- package/dist/public/assets/_CnvKMtbv.js +2 -0
- package/dist/public/assets/_CnvKMtbv.js.map +1 -0
- package/dist/public/assets/_CoaEpmwp.js +2 -0
- package/dist/public/assets/_CoaEpmwp.js.map +1 -0
- package/dist/public/assets/_CohzipZa.js +2 -0
- package/dist/public/assets/_CohzipZa.js.map +1 -0
- package/dist/public/assets/_CpLgRqie.js +2 -0
- package/dist/public/assets/_CpLgRqie.js.map +1 -0
- package/dist/public/assets/_CpMGvmmC.js +2 -0
- package/dist/public/assets/_CpMGvmmC.js.map +1 -0
- package/dist/public/assets/_CpQYzh95.js +2 -0
- package/dist/public/assets/_CpQYzh95.js.map +1 -0
- package/dist/public/assets/_CpYNKFv52.js +2 -0
- package/dist/public/assets/_CpYNKFv52.js.map +1 -0
- package/dist/public/assets/_CpjhbsIL.js +2 -0
- package/dist/public/assets/_CpjhbsIL.js.map +1 -0
- package/dist/public/assets/_Cs2F2srj.js +2 -0
- package/dist/public/assets/_Cs2F2srj.js.map +1 -0
- package/dist/public/assets/_Cs6JJXT5.js +2 -0
- package/dist/public/assets/_Cs6JJXT5.js.map +1 -0
- package/dist/public/assets/_CsD5j6eV.js +2 -0
- package/dist/public/assets/_CsD5j6eV.js.map +1 -0
- package/dist/public/assets/_CsvMBhTu.js +2 -0
- package/dist/public/assets/_CsvMBhTu.js.map +1 -0
- package/dist/public/assets/_CswbzlgY.js +2 -0
- package/dist/public/assets/_CswbzlgY.js.map +1 -0
- package/dist/public/assets/_CtIoeUxU2.js +2 -0
- package/dist/public/assets/_CtIoeUxU2.js.map +1 -0
- package/dist/public/assets/_CtfBBspg2.js +2 -0
- package/dist/public/assets/_CtfBBspg2.js.map +1 -0
- package/dist/public/assets/_CtsyrtPq.js +2 -0
- package/dist/public/assets/_CtsyrtPq.js.map +1 -0
- package/dist/public/assets/_Cv5bFMCO.js +2 -0
- package/dist/public/assets/_Cv5bFMCO.js.map +1 -0
- package/dist/public/assets/_Cvrh5tZx2.js +2 -0
- package/dist/public/assets/_Cvrh5tZx2.js.map +1 -0
- package/dist/public/assets/_Cx8FnA3x.js +2 -0
- package/dist/public/assets/_Cx8FnA3x.js.map +1 -0
- package/dist/public/assets/_CxZEssPk2.js +2 -0
- package/dist/public/assets/_CxZEssPk2.js.map +1 -0
- package/dist/public/assets/_CyE5x4UV.js +2 -0
- package/dist/public/assets/_CyE5x4UV.js.map +1 -0
- package/dist/public/assets/_CyEgAFGc.js +2 -0
- package/dist/public/assets/_CyEgAFGc.js.map +1 -0
- package/dist/public/assets/_D-T_C697.js +2 -0
- package/dist/public/assets/_D-T_C697.js.map +1 -0
- package/dist/public/assets/_D-usSTwE2.js +2 -0
- package/dist/public/assets/_D-usSTwE2.js.map +1 -0
- package/dist/public/assets/_D0apG41V2.js +2 -0
- package/dist/public/assets/_D0apG41V2.js.map +1 -0
- package/dist/public/assets/_D1A_Heim2.js +2 -0
- package/dist/public/assets/_D1A_Heim2.js.map +1 -0
- package/dist/public/assets/_D271znPr.js +2 -0
- package/dist/public/assets/_D271znPr.js.map +1 -0
- package/dist/public/assets/_D4kbjPsP2.js +2 -0
- package/dist/public/assets/_D4kbjPsP2.js.map +1 -0
- package/dist/public/assets/_D7Lr4KcI2.js +2 -0
- package/dist/public/assets/_D7Lr4KcI2.js.map +1 -0
- package/dist/public/assets/_D7qyCx1q.js +2 -0
- package/dist/public/assets/_D7qyCx1q.js.map +1 -0
- package/dist/public/assets/_D80Fkn33.js +2 -0
- package/dist/public/assets/_D80Fkn33.js.map +1 -0
- package/dist/public/assets/_D81mTxaU2.js +2 -0
- package/dist/public/assets/_D81mTxaU2.js.map +1 -0
- package/dist/public/assets/_D8IpX4py2.js +2 -0
- package/dist/public/assets/_D8IpX4py2.js.map +1 -0
- package/dist/public/assets/_D8YarXPe.js +2 -0
- package/dist/public/assets/_D8YarXPe.js.map +1 -0
- package/dist/public/assets/_DB4EqR-F.js +2 -0
- package/dist/public/assets/_DB4EqR-F.js.map +1 -0
- package/dist/public/assets/_DBiDFlly.js +2 -0
- package/dist/public/assets/_DBiDFlly.js.map +1 -0
- package/dist/public/assets/_DBj4K9d_2.js +2 -0
- package/dist/public/assets/_DBj4K9d_2.js.map +1 -0
- package/dist/public/assets/_DCQb3MpD.js +2 -0
- package/dist/public/assets/_DCQb3MpD.js.map +1 -0
- package/dist/public/assets/_DDpmG2fV2.js +2 -0
- package/dist/public/assets/_DDpmG2fV2.js.map +1 -0
- package/dist/public/assets/_DExj1W_82.js +2 -0
- package/dist/public/assets/_DExj1W_82.js.map +1 -0
- package/dist/public/assets/_DGHpHOYJ2.js +2 -0
- package/dist/public/assets/_DGHpHOYJ2.js.map +1 -0
- package/dist/public/assets/_DHYfO66s2.js +2 -0
- package/dist/public/assets/_DHYfO66s2.js.map +1 -0
- package/dist/public/assets/_DHuY153x.js +2 -0
- package/dist/public/assets/_DHuY153x.js.map +1 -0
- package/dist/public/assets/_DI7wJmV3.js +2 -0
- package/dist/public/assets/_DI7wJmV3.js.map +1 -0
- package/dist/public/assets/_DI99ib-x2.js +2 -0
- package/dist/public/assets/_DI99ib-x2.js.map +1 -0
- package/dist/public/assets/_DJMQeKeT.js +2 -0
- package/dist/public/assets/_DJMQeKeT.js.map +1 -0
- package/dist/public/assets/_DKDBIGSx.js +2 -0
- package/dist/public/assets/_DKDBIGSx.js.map +1 -0
- package/dist/public/assets/_DKpUyyne2.js +2 -0
- package/dist/public/assets/_DKpUyyne2.js.map +1 -0
- package/dist/public/assets/_DLL8P-h_2.js +2 -0
- package/dist/public/assets/_DLL8P-h_2.js.map +1 -0
- package/dist/public/assets/_DLbMbJfH2.js +2 -0
- package/dist/public/assets/_DLbMbJfH2.js.map +1 -0
- package/dist/public/assets/_DMLJgrzU2.js +2 -0
- package/dist/public/assets/_DMLJgrzU2.js.map +1 -0
- package/dist/public/assets/_DMgNhnYS2.js +2 -0
- package/dist/public/assets/_DMgNhnYS2.js.map +1 -0
- package/dist/public/assets/_DMoTqEGO.js +2 -0
- package/dist/public/assets/_DMoTqEGO.js.map +1 -0
- package/dist/public/assets/_DNMTfnFr2.js +2 -0
- package/dist/public/assets/_DNMTfnFr2.js.map +1 -0
- package/dist/public/assets/_DO-qXg-I2.js +2 -0
- package/dist/public/assets/_DO-qXg-I2.js.map +1 -0
- package/dist/public/assets/_DOwzaHZ02.js +2 -0
- package/dist/public/assets/_DOwzaHZ02.js.map +1 -0
- package/dist/public/assets/_DQCgrYNe.js +2 -0
- package/dist/public/assets/_DQCgrYNe.js.map +1 -0
- package/dist/public/assets/_DQZ5AkYe.js +2 -0
- package/dist/public/assets/_DQZ5AkYe.js.map +1 -0
- package/dist/public/assets/_DQwYfKfQ2.js +2 -0
- package/dist/public/assets/_DQwYfKfQ2.js.map +1 -0
- package/dist/public/assets/_DQxkIbk2.js +2 -0
- package/dist/public/assets/_DQxkIbk2.js.map +1 -0
- package/dist/public/assets/_DRFjx7u42.js +2 -0
- package/dist/public/assets/_DRFjx7u42.js.map +1 -0
- package/dist/public/assets/_DSNQnXHK.js +2 -0
- package/dist/public/assets/_DSNQnXHK.js.map +1 -0
- package/dist/public/assets/_DVQuIRkW.js +2 -0
- package/dist/public/assets/_DVQuIRkW.js.map +1 -0
- package/dist/public/assets/_DVTAwKKz.js +2 -0
- package/dist/public/assets/_DVTAwKKz.js.map +1 -0
- package/dist/public/assets/_DW3nJb8Q.js +2 -0
- package/dist/public/assets/_DW3nJb8Q.js.map +1 -0
- package/dist/public/assets/_DWQbgPoS.js +2 -0
- package/dist/public/assets/_DWQbgPoS.js.map +1 -0
- package/dist/public/assets/_DX1BQOs82.js +2 -0
- package/dist/public/assets/_DX1BQOs82.js.map +1 -0
- package/dist/public/assets/_DXG-b-1a.js +2 -0
- package/dist/public/assets/_DXG-b-1a.js.map +1 -0
- package/dist/public/assets/_DXrisJhu.js +2 -0
- package/dist/public/assets/_DXrisJhu.js.map +1 -0
- package/dist/public/assets/_DXw9l8Rf.js +2 -0
- package/dist/public/assets/_DXw9l8Rf.js.map +1 -0
- package/dist/public/assets/_DYvRD3hg2.js +2 -0
- package/dist/public/assets/_DYvRD3hg2.js.map +1 -0
- package/dist/public/assets/_DZQUGsSH.js +2 -0
- package/dist/public/assets/_DZQUGsSH.js.map +1 -0
- package/dist/public/assets/_Db1ZVL_I.js +2 -0
- package/dist/public/assets/_Db1ZVL_I.js.map +1 -0
- package/dist/public/assets/_DcIDlBhZ.js +2 -0
- package/dist/public/assets/_DcIDlBhZ.js.map +1 -0
- package/dist/public/assets/_DdrHHSXu2.js +2 -0
- package/dist/public/assets/_DdrHHSXu2.js.map +1 -0
- package/dist/public/assets/_DdvCle-K2.js +2 -0
- package/dist/public/assets/_DdvCle-K2.js.map +1 -0
- package/dist/public/assets/_De_Heo4C.js +2 -0
- package/dist/public/assets/_De_Heo4C.js.map +1 -0
- package/dist/public/assets/_Df2xbC6M.js +2 -0
- package/dist/public/assets/_Df2xbC6M.js.map +1 -0
- package/dist/public/assets/_Dgaz7aur.js +2 -0
- package/dist/public/assets/_Dgaz7aur.js.map +1 -0
- package/dist/public/assets/_DgjMoLWr.js +2 -0
- package/dist/public/assets/_DgjMoLWr.js.map +1 -0
- package/dist/public/assets/_Dh228itO2.js +2 -0
- package/dist/public/assets/_Dh228itO2.js.map +1 -0
- package/dist/public/assets/_Dh5ihWbf.js +2 -0
- package/dist/public/assets/_Dh5ihWbf.js.map +1 -0
- package/dist/public/assets/_DhhofPvG.js +2 -0
- package/dist/public/assets/_DhhofPvG.js.map +1 -0
- package/dist/public/assets/_DhmEMT882.js +2 -0
- package/dist/public/assets/_DhmEMT882.js.map +1 -0
- package/dist/public/assets/_Dixweg8N.js +2 -0
- package/dist/public/assets/_Dixweg8N.js.map +1 -0
- package/dist/public/assets/_DjuaAJKi.js +2 -0
- package/dist/public/assets/_DjuaAJKi.js.map +1 -0
- package/dist/public/assets/_Dl-2e7rI2.js +2 -0
- package/dist/public/assets/_Dl-2e7rI2.js.map +1 -0
- package/dist/public/assets/_Dlh5hvp9.js +2 -0
- package/dist/public/assets/_Dlh5hvp9.js.map +1 -0
- package/dist/public/assets/_DluEY0Gj.js +2 -0
- package/dist/public/assets/_DluEY0Gj.js.map +1 -0
- package/dist/public/assets/_DmIc4jLQ.js +2 -0
- package/dist/public/assets/_DmIc4jLQ.js.map +1 -0
- package/dist/public/assets/_DnToyrRv2.js +2 -0
- package/dist/public/assets/_DnToyrRv2.js.map +1 -0
- package/dist/public/assets/_DqHOMS-s.js +2 -0
- package/dist/public/assets/_DqHOMS-s.js.map +1 -0
- package/dist/public/assets/_DqKBuwfJ2.js +2 -0
- package/dist/public/assets/_DqKBuwfJ2.js.map +1 -0
- package/dist/public/assets/_Dqh6l9VH.js +2 -0
- package/dist/public/assets/_Dqh6l9VH.js.map +1 -0
- package/dist/public/assets/_DqhwlshE2.js +2 -0
- package/dist/public/assets/_DqhwlshE2.js.map +1 -0
- package/dist/public/assets/_DsOwYco6.js +2 -0
- package/dist/public/assets/_DsOwYco6.js.map +1 -0
- package/dist/public/assets/_DsUTQ-LC2.js +2 -0
- package/dist/public/assets/_DsUTQ-LC2.js.map +1 -0
- package/dist/public/assets/_DswuEJGm2.js +2 -0
- package/dist/public/assets/_DswuEJGm2.js.map +1 -0
- package/dist/public/assets/_DtyUWVZz.js +2 -0
- package/dist/public/assets/_DtyUWVZz.js.map +1 -0
- package/dist/public/assets/_DuBRPxYg.js +2 -0
- package/dist/public/assets/_DuBRPxYg.js.map +1 -0
- package/dist/public/assets/_DuBYtv0r.js +2 -0
- package/dist/public/assets/_DuBYtv0r.js.map +1 -0
- package/dist/public/assets/_DvXPmvsu2.js +2 -0
- package/dist/public/assets/_DvXPmvsu2.js.map +1 -0
- package/dist/public/assets/_Dw6INy6H2.js +2 -0
- package/dist/public/assets/_Dw6INy6H2.js.map +1 -0
- package/dist/public/assets/_Dx-8-gkx.js +2 -0
- package/dist/public/assets/_Dx-8-gkx.js.map +1 -0
- package/dist/public/assets/_Dx2utMPo.js +2 -0
- package/dist/public/assets/_Dx2utMPo.js.map +1 -0
- package/dist/public/assets/_EUqPIrTm.js +2 -0
- package/dist/public/assets/_EUqPIrTm.js.map +1 -0
- package/dist/public/assets/_Fe1Jh2GI.js +2 -0
- package/dist/public/assets/_Fe1Jh2GI.js.map +1 -0
- package/dist/public/assets/_IvuFDN5E2.js +2 -0
- package/dist/public/assets/_IvuFDN5E2.js.map +1 -0
- package/dist/public/assets/_IyjqRm3v.js +2 -0
- package/dist/public/assets/_IyjqRm3v.js.map +1 -0
- package/dist/public/assets/_KFGFyKwG.js +2 -0
- package/dist/public/assets/_KFGFyKwG.js.map +1 -0
- package/dist/public/assets/_L8AbGenz.js +2 -0
- package/dist/public/assets/_L8AbGenz.js.map +1 -0
- package/dist/public/assets/_MrdJrrXF.js +2 -0
- package/dist/public/assets/_MrdJrrXF.js.map +1 -0
- package/dist/public/assets/_O90oeIOV2.js +2 -0
- package/dist/public/assets/_O90oeIOV2.js.map +1 -0
- package/dist/public/assets/_R8nAf1vR.js +2 -0
- package/dist/public/assets/_R8nAf1vR.js.map +1 -0
- package/dist/public/assets/_SCjQUq34.js +2 -0
- package/dist/public/assets/_SCjQUq34.js.map +1 -0
- package/dist/public/assets/_TlYgJqzm.js +2 -0
- package/dist/public/assets/_TlYgJqzm.js.map +1 -0
- package/dist/public/assets/_U0d_L8uA.js +2 -0
- package/dist/public/assets/_U0d_L8uA.js.map +1 -0
- package/dist/public/assets/_UdsmMDCL2.js +2 -0
- package/dist/public/assets/_UdsmMDCL2.js.map +1 -0
- package/dist/public/assets/_Uh3mh5XV2.js +2 -0
- package/dist/public/assets/_Uh3mh5XV2.js.map +1 -0
- package/dist/public/assets/_VUp2lXgN.js +2 -0
- package/dist/public/assets/_VUp2lXgN.js.map +1 -0
- package/dist/public/assets/_VXkXYg_d.js +2 -0
- package/dist/public/assets/_VXkXYg_d.js.map +1 -0
- package/dist/public/assets/_VbXTXTou2.js +2 -0
- package/dist/public/assets/_VbXTXTou2.js.map +1 -0
- package/dist/public/assets/__5a1GRtc.js +2 -0
- package/dist/public/assets/__5a1GRtc.js.map +1 -0
- package/dist/public/assets/__6rzW9BS.js +2 -0
- package/dist/public/assets/__6rzW9BS.js.map +1 -0
- package/dist/public/assets/__X_XdTYD.js +2 -0
- package/dist/public/assets/__X_XdTYD.js.map +1 -0
- package/dist/public/assets/_a4yckPl9.js +2 -0
- package/dist/public/assets/_a4yckPl9.js.map +1 -0
- package/dist/public/assets/_aMsaMD1D2.js +2 -0
- package/dist/public/assets/_aMsaMD1D2.js.map +1 -0
- package/dist/public/assets/_bTVj8UrX2.js +2 -0
- package/dist/public/assets/_bTVj8UrX2.js.map +1 -0
- package/dist/public/assets/_c_oH4hRZ.js +2 -0
- package/dist/public/assets/_c_oH4hRZ.js.map +1 -0
- package/dist/public/assets/_eJ-hLW7d2.js +2 -0
- package/dist/public/assets/_eJ-hLW7d2.js.map +1 -0
- package/dist/public/assets/_fvy_08gp2.js +2 -0
- package/dist/public/assets/_fvy_08gp2.js.map +1 -0
- package/dist/public/assets/_fwtXNY1n2.js +2 -0
- package/dist/public/assets/_fwtXNY1n2.js.map +1 -0
- package/dist/public/assets/_gzcpVVnB2.js +2 -0
- package/dist/public/assets/_gzcpVVnB2.js.map +1 -0
- package/dist/public/assets/_iUWkWK9o.js +2 -0
- package/dist/public/assets/_iUWkWK9o.js.map +1 -0
- package/dist/public/assets/_iXnhIJG72.js +2 -0
- package/dist/public/assets/_iXnhIJG72.js.map +1 -0
- package/dist/public/assets/_ilITqXS62.js +2 -0
- package/dist/public/assets/_ilITqXS62.js.map +1 -0
- package/dist/public/assets/_it7tAyoL2.js +2 -0
- package/dist/public/assets/_it7tAyoL2.js.map +1 -0
- package/dist/public/assets/_kIpfj7zU2.js +2 -0
- package/dist/public/assets/_kIpfj7zU2.js.map +1 -0
- package/dist/public/assets/_kZQmAZld.js +2 -0
- package/dist/public/assets/_kZQmAZld.js.map +1 -0
- package/dist/public/assets/_lWLdNTOI.js +2 -0
- package/dist/public/assets/_lWLdNTOI.js.map +1 -0
- package/dist/public/assets/_m5z1534W.js +2 -0
- package/dist/public/assets/_m5z1534W.js.map +1 -0
- package/dist/public/assets/_nFMaYfgc2.js +2 -0
- package/dist/public/assets/_nFMaYfgc2.js.map +1 -0
- package/dist/public/assets/_oM2G3aXe2.js +2 -0
- package/dist/public/assets/_oM2G3aXe2.js.map +1 -0
- package/dist/public/assets/_oeQT6MSM2.js +2 -0
- package/dist/public/assets/_oeQT6MSM2.js.map +1 -0
- package/dist/public/assets/_oqKa8noW.js +2 -0
- package/dist/public/assets/_oqKa8noW.js.map +1 -0
- package/dist/public/assets/_ot-7Btpt2.js +2 -0
- package/dist/public/assets/_ot-7Btpt2.js.map +1 -0
- package/dist/public/assets/_qD-0Kul2.js +2 -0
- package/dist/public/assets/_qD-0Kul2.js.map +1 -0
- package/dist/public/assets/_qdxAdBWQ2.js +2 -0
- package/dist/public/assets/_qdxAdBWQ2.js.map +1 -0
- package/dist/public/assets/_rLFTqkRN2.js +2 -0
- package/dist/public/assets/_rLFTqkRN2.js.map +1 -0
- package/dist/public/assets/_sB-x3p7T.js +2 -0
- package/dist/public/assets/_sB-x3p7T.js.map +1 -0
- package/dist/public/assets/_sltzmVWM2.js +2 -0
- package/dist/public/assets/_sltzmVWM2.js.map +1 -0
- package/dist/public/assets/_uh5ioxiV.js +2 -0
- package/dist/public/assets/_uh5ioxiV.js.map +1 -0
- package/dist/public/assets/_uhdI0v04.js +2 -0
- package/dist/public/assets/_uhdI0v04.js.map +1 -0
- package/dist/public/assets/_vGVdxbeo2.js +2 -0
- package/dist/public/assets/_vGVdxbeo2.js.map +1 -0
- package/dist/public/assets/_woXpYk--.js +2 -0
- package/dist/public/assets/_woXpYk--.js.map +1 -0
- package/dist/public/assets/_zf12oZj62.js +2 -0
- package/dist/public/assets/_zf12oZj62.js.map +1 -0
- package/dist/public/assets/index-KIy0rCx1.css +1 -0
- package/dist/public/assets/index-kv6gFctA.js +1612 -0
- package/dist/public/assets/index-kv6gFctA.js.map +1 -0
- package/dist/public/icon-192.png +0 -0
- package/dist/public/icon-512.png +0 -0
- package/dist/public/icon-maskable-512.png +0 -0
- package/dist/public/icon.svg +4 -0
- package/dist/public/manifest.webmanifest +35 -0
- package/dist/public/sw.js +48 -0
- package/install.sh +104 -0
- package/package.json +59 -0
- package/scripts/migrate.mjs +108 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_CYIUgYqB2.js","names":[],"sources":["../../../node_modules/.pnpm/@shikijs+langs@4.4.2/node_modules/@shikijs/langs/dist/bird2.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"BIRD2 Configuration\\\",\\\"fileTypes\\\":[\\\"conf\\\",\\\"bird\\\",\\\"bird2\\\",\\\"bird3\\\",\\\"bird.conf\\\",\\\"bird2.conf\\\",\\\"bird3.conf\\\"],\\\"foldingStartMarker\\\":\\\"\\\\\\\\{\\\\\\\\s*$\\\",\\\"foldingStopMarker\\\":\\\"^\\\\\\\\s*}\\\",\\\"name\\\":\\\"bird2\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#strings\\\"},{\\\"include\\\":\\\"#ip-addresses\\\"},{\\\"include\\\":\\\"#prefixes\\\"},{\\\"include\\\":\\\"#vpn-rd\\\"},{\\\"include\\\":\\\"#bytestrings\\\"},{\\\"include\\\":\\\"#bgp-paths\\\"},{\\\"include\\\":\\\"#print-statements\\\"},{\\\"include\\\":\\\"#template-definitions\\\"},{\\\"include\\\":\\\"#filter-definitions\\\"},{\\\"include\\\":\\\"#function-definitions\\\"},{\\\"include\\\":\\\"#protocol-definitions\\\"},{\\\"include\\\":\\\"#next-hop-statements\\\"},{\\\"include\\\":\\\"#neighbor-statements\\\"},{\\\"include\\\":\\\"#import-export-statements\\\"},{\\\"include\\\":\\\"#variable-declarations\\\"},{\\\"include\\\":\\\"#method-calls\\\"},{\\\"include\\\":\\\"#function-calls\\\"},{\\\"include\\\":\\\"#method-properties\\\"},{\\\"include\\\":\\\"#route-attributes\\\"},{\\\"include\\\":\\\"#data-types\\\"},{\\\"include\\\":\\\"#constants\\\"},{\\\"include\\\":\\\"#protocol-phrases\\\"},{\\\"include\\\":\\\"#structural-keywords\\\"},{\\\"include\\\":\\\"#functional-keywords\\\"},{\\\"include\\\":\\\"#semantic-modifiers\\\"},{\\\"include\\\":\\\"#builtin-functions\\\"},{\\\"include\\\":\\\"#filter-names\\\"},{\\\"include\\\":\\\"#user-variables\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#numbers\\\"},{\\\"include\\\":\\\"#symbols\\\"},{\\\"include\\\":\\\"#blocks\\\"}],\\\"repository\\\":{\\\"bgp-paths\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[=\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bgp-path.begin.bird\\\"}},\\\"end\\\":\\\"=]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.bgp-path.end.bird\\\"}},\\\"name\\\":\\\"meta.bgp-path.bird\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"[*+?]\\\",\\\"name\\\":\\\"keyword.operator.wildcard.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.asn.bird\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#symbols\\\"}]}]},\\\"blocks\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.begin.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.block.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.set.begin.bird\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.set.end.bird\\\"}},\\\"name\\\":\\\"meta.set.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tuple.begin.bird\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.tuple.end.bird\\\"}},\\\"name\\\":\\\"meta.tuple.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"match\\\":\\\";\\\",\\\"name\\\":\\\"punctuation.terminator.statement.bird\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.bird\\\"}]},\\\"builtin-functions\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:defined|unset|roa_check|aspa_check|aspa_check_downstream|aspa_check_upstream|from_hex|format|append|prepend|add|delete|empty|reset|bt_assert|bt_check_assign|bt_test_suite|bt_test_same)\\\\\\\\b\\\",\\\"name\\\":\\\"support.function.builtin.bird\\\"}]},\\\"bytestrings\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\bhex:\\\\\\\\h{2}(?:[-.:\\\\\\\\s]*\\\\\\\\h{2})*\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bytestring.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\h{2}[-.:\\\\\\\\s]*){15,}\\\\\\\\h{2}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bytestring.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\h{32,}\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.bytestring.bird\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.bird\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.number-sign.bird\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.begin.bird\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.end.bird\\\"}},\\\"name\\\":\\\"comment.block.bird\\\"}]},\\\"constants\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:on|off|yes|no|true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:empty|unknown|generic|rt|ro|one|ten)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.special.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bSCOPE_(?:HOST|LINK|SITE|ORGANIZATION|UNIVERSE|UNDEFINED)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.scope.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bRTS_(?:STATIC|INHERIT|DEVICE|STATIC_DEVICE|REDIRECT|RIP|OSPF|OSPF_IA|OSPF_EXT1|OSPF_EXT2|BGP|PIPE|BABEL|RPKI|L3VPN|AGGREGATED|BRIDGE|EVPN)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.source.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bRTD_(?:UNICAST|ROUTER|DEVICE|MULTIPATH|BLACKHOLE|UNREACHABLE|PROHIBIT)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.dest.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bROA_(?:UNKNOWN|INVALID|VALID)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.roa.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bASPA_(?:UNKNOWN|INVALID|VALID)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.aspa.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bORIGIN_(?:IGP|EGP|INCOMPLETE)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bgp-origin.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bRA_PREF_(?:LOW|MEDIUM|HIGH)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.ra-preference.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bAF_IPV[46]\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.address-family.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bKBR_SRC_(?:BIRD|LOCAL|STATIC|DYNAMIC)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bridge-source.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bNET_(?:IP4|IP6|IP6_SADR|VPN4|VPN6|ROA4|ROA6|FLOW4|FLOW6|MPLS|ETH|ASPA|EVPN|EVPN_EAD|EVPN_MAC|EVPN_IMET|EVPN_ES|NEIGHBOR)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.net-type.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bMPLS_POLICY_(?:NONE|STATIC|PREFIX|AGGREGATE|VRF)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.mpls.bird\\\"}]},\\\"data-types\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:(?:int|pair|quad|ip|prefix|mac|ec|lc|rd|enum)\\\\\\\\s+set|int|bool|ip|prefix|mac|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.type.bird\\\"}]},\\\"filter-definitions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(filter)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.filter.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.filter.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.filter-definition.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"filter-names\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z_a-z][0-9A-Z_a-z]*_filter\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.function.filter.bird\\\"}]},\\\"function-calls\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.bird\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.function-call.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"function-definitions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(function)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?=\\\\\\\\s*\\\\\\\\()\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.function.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.user-defined.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.function-definition.bird\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.bird\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.end.bird\\\"}},\\\"name\\\":\\\"meta.function-parameters.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-types\\\"},{\\\"include\\\":\\\"#symbols\\\"}]},{\\\"begin\\\":\\\"->\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"keyword.operator.return-type.bird\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\{)\\\",\\\"name\\\":\\\"meta.function-return-type.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#data-types\\\"}]},{\\\"include\\\":\\\"$self\\\"}]}]},\\\"functional-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:static|rip|ospf|bgp|babel|rpki|bfd|bmp|device|direct|kernel|pipe|perf|mrt|aggregator|l3vpn|radv|bridge|evpn)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.protocol-type.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:graceful|restart|preference|disabled|hold|keepalive|connect|retry|start|delay|error|wait|forget|scan|randomize|router|id)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.routing.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:interface|type|wired|wireless|tunnel|rxcost|limit|hello|update|interval|port|tx|class|dscp|priority|rx|buffer|length|check|link|rtt|cost|min|max|decay|send|timestamps)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.interface.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bpreferred\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.device.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:(?:refresh\\\\\\\\s+keep|retry\\\\\\\\s+keep|expire\\\\\\\\s+keep|transport\\\\\\\\s+tcp|transport\\\\\\\\s+ssh|authentication\\\\\\\\s+none|authentication\\\\\\\\s+md5|local\\\\\\\\s+address|ignore\\\\\\\\s+max\\\\\\\\s+length|min\\\\\\\\s+version|max\\\\\\\\s+version|bird\\\\\\\\s+private\\\\\\\\s+key|remote\\\\\\\\s+public\\\\\\\\s+key)|(?:refresh|retry|expire|transport|ssh|tcp|user|address|version|ignore|private|public|key))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.rpki.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:cmac\\\\\\\\s+aes128|authentication|none|mac|permissive|ao|password|keys??|secret|deprecated|preferred|generate|accept|from|to|algorithm|hmac|cmac|aes128|sha1|sha224|sha256|sha384|sha512|blake2s128|blake2s256|blake2b256|blake2b512)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.auth.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\btime\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.time.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:hostname|description|debug|log|syslog|stderr|udp|cli|bird|protocols|tables|channels|timeouts|passwords|bfd|confederation|cluster|stub|dead|neighbors|area|md5|multihop|passive|rfc1583compat|tick|ls|retransmit|transmit|ack|state|database|summary|external|nssa|translator|always|candidate|never|role|stability|election|action|warn|warning|auth|bug|fatal|info|trace|block|disable|keep|filtered|receive|modify|add|delete|withdraw|unreachable|blackhole|prohibit|unreach|igp_metric|localpref|med|origin|community|large_community|ext_community|as_path|prepend|weight|gateway|scope|onlink|recursive|multipath|igp|channel|sadr|src|learn|persist|via|ng|threads?|group|cork|threshold|settle|digest|fixed|ping|wakeup|scheduling|sockets|allocator|timers|mrtdump|timeformat|preexport|noexport|exported|stats|count|rpki|reload)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.config.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:flow4|flow6|dst|src|proto|header|dport|sport|icmp|code|tcp|flags|dscp|dont_fragment|is_fragment|first_fragment|last_fragment|fragment|label|offset)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.flowspec.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:ipv4-mpls|ipv6-mpls|ipv6-sadr|vpn4-mc|vpn4-mpls|vpn6-mc|vpn6-mpls|ipv4_mc|ipv6_mc|vpn4|vpn6|mpls|aspa|roa4|roa6|eth|evpn|neighbor|pri|sec)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.address.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:all|none)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.quick-declaration.bird\\\"}]},\\\"import-export-statements\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import-export.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.filter.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.filter.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(import)\\\\\\\\s+(filter)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\b\\\",\\\"name\\\":\\\"meta.import-statement.bird\\\"},{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\s+(filter)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import-export.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.filter.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.import-filter-inline.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(export)\\\\\\\\s+(where)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import-export.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.where.bird\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.bird\\\"}},\\\"name\\\":\\\"meta.export-where-clause.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(export\\\\\\\\s+in)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import-export.bird\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.bird\\\"}},\\\"name\\\":\\\"meta.export-prefilter-clause.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.import-export.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.filter.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.filter.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(export)\\\\\\\\s+(filter)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\b\\\",\\\"name\\\":\\\"meta.export-statement.bird\\\"}]},\\\"ip-addresses\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:[0-9]{1,3}\\\\\\\\.){3}[0-9]{1,3}(?:/[0-9]{1,2})?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ip.ipv4.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\h{0,4}:){2,7}\\\\\\\\h{0,4}(?:/[0-9]{1,3})?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ip.ipv6.bird\\\"},{\\\"match\\\":\\\"::(?:\\\\\\\\h{0,4}:){0,6}\\\\\\\\h{0,4}(?:/[0-9]{1,3})?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ip.ipv6.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:\\\\\\\\h{0,4}:){1,6}::(?:\\\\\\\\h{0,4}:){0,5}\\\\\\\\h{0,4}(?:/[0-9]{1,3})?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.ip.ipv6.bird\\\"}]},\\\"method-calls\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\.\\\\\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*\\\\\\\\(\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.method.bird\\\"}},\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"meta.method-call.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.other.property.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\",\\\"name\\\":\\\"meta.method-access.bird\\\"}]},\\\"method-properties\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<=\\\\\\\\.)\\\\\\\\s*(?:first|last|last_nonaggregated|len|asn|data1??|data2|is_v4|ip|src|dst|rd|maxlen|type|mask|min|max|mac|vlan_id|evpn_type|evpn_tag|evpn_esi|router_ip)\\\\\\\\b(?!\\\\\\\\s*\\\\\\\\()\\\",\\\"name\\\":\\\"support.variable.property.bird\\\"}]},\\\"neighbor-statements\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.local.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.symbol.local-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.control.port.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"constant.numeric.port.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"6\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(local)\\\\\\\\s+([.:\\\\\\\\h]+|[A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')(?:\\\\\\\\s+(port)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.local-as-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.local.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(local)\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.local-as-template-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.ip-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.interface-reference.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.single.interface.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.interface.bird\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.port.bird\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.port.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+([.:\\\\\\\\h]+)\\\\\\\\s*(%\\\\\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\\\\\s+(port)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-port-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.symbol.neighbor-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.interface-reference.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.single.interface.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.interface.bird\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"},\\\"8\\\":{\\\"name\\\":\\\"keyword.control.port.bird\\\"},\\\"9\\\":{\\\"name\\\":\\\"constant.numeric.port.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*(%\\\\\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?(?:\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*))?\\\\\\\\s+(port)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-port-symbolic-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.ip-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.interface-reference.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.single.interface.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.interface.bird\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+([.:\\\\\\\\h]+)\\\\\\\\s*(%\\\\\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.symbol.neighbor-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.interface-reference.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"string.quoted.single.interface.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"variable.other.interface.bird\\\"},\\\"6\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"7\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+('[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\\\\\b)[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*(%\\\\\\\\s*(?:'([-.0-:A-Z_a-z]+)'|([-.0-:A-Z_a-z]+)))?\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-symbolic-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.control.as.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.asn.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+(as)\\\\\\\\s+([0-9]+|[A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-template-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.symbol.neighbor-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+([.:\\\\\\\\h]+|(?:'[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\\\\\b)[A-Z_a-z][0-9A-Z_a-z]*))\\\\\\\\s+((?:in|ex)ternal)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-role-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.neighbor.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.symbol.neighbor-address.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(neighbor)\\\\\\\\s+([.:\\\\\\\\h]+|(?:'[-.0-:A-Z_a-z]+'|(?!(?:as|range)\\\\\\\\b)[A-Z_a-z][0-9A-Z_a-z]*))\\\\\\\\s+(onlink)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.neighbor-onlink-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.source.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"constant.numeric.ip-address.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(source address)\\\\\\\\s+([.:\\\\\\\\h]+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.source-address-statement.bird\\\"}]},\\\"next-hop-statements\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ip-version.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.ip-address.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(next hop)\\\\\\\\s+(ipv4)\\\\\\\\s+([.0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.next-hop-ipv4.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.ip-version.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"constant.numeric.ip-address.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(next hop)\\\\\\\\s+(ipv6)\\\\\\\\s+([:\\\\\\\\h]+)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.next-hop-ipv6.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(next hop)\\\\\\\\s+(self)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.next-hop-simple.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(next hop prefer)\\\\\\\\s+(global|local|native|ipv6)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.next-hop-prefer-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(next hop keep)(?:\\\\\\\\s+([ei]bgp))?\\\\\\\\b\\\",\\\"name\\\":\\\"meta.next-hop-keep-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(extended next hop)\\\\\\\\s+(o(?:n|ff))\\\\\\\\b\\\",\\\"name\\\":\\\"meta.extended-next-hop-statement.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.routing.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b(require extended next hop)\\\\\\\\s+(yes|no|on|off|true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"meta.require-extended-next-hop-statement.bird\\\"}]},\\\"numbers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b0x\\\\\\\\h+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.hex.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.bird\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.unit.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b[0-9]+\\\\\\\\s*([mu]??s)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.time.bird\\\"}]},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"==|!=|<=|>=|!~|[<=>~]\\\",\\\"name\\\":\\\"keyword.operator.comparison.bird\\\"},{\\\"match\\\":\\\"&&|\\\\\\\\|\\\\\\\\||!|->\\\",\\\"name\\\":\\\"keyword.operator.logical.bird\\\"},{\\\"match\\\":\\\"(?<!&)&(?!&)|(?<!\\\\\\\\|)\\\\\\\\|(?!\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.bitwise.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\+\\\\\\\\+\\\",\\\"name\\\":\\\"keyword.operator.concat.bird\\\"},{\\\"match\\\":\\\"[-%*+/]\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.range.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\.\\\",\\\"name\\\":\\\"keyword.operator.accessor.bird\\\"}]},\\\"prefixes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(?<![0-:A-Z_a-z])(?:(?:[0-9]{1,3}\\\\\\\\.){3}[0-9]{1,3}|(?:\\\\\\\\h{0,4}:){1,7}\\\\\\\\h{0,4})/[0-9]{1,3}(?:[-+]|\\\\\\\\{[0-9]+,[0-9]+})?(?![0-9A-Z_a-z])\\\",\\\"name\\\":\\\"constant.numeric.prefix.bird\\\"}]},\\\"print-statements\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(printn??)\\\\\\\\b\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.print.bird\\\"}},\\\"end\\\":\\\";\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.terminator.statement.bird\\\"}},\\\"name\\\":\\\"meta.print-statement.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"protocol-definitions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(protocol)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s+(from)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.protocol.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.template-reference.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.template.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.protocol-definition-with-template.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(protocol)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.protocol.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.protocol-definition-with-name.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(protocol)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.protocol.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.protocol-definition-anonymous.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"protocol-phrases\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:strict\\\\\\\\s+bind|zero\\\\\\\\s+udp6\\\\\\\\s+checksum\\\\\\\\s+rx|idle\\\\\\\\s+tx\\\\\\\\s+interval|min\\\\\\\\s+rx\\\\\\\\s+interval|min\\\\\\\\s+tx\\\\\\\\s+interval|accept\\\\\\\\s+ipv4|accept\\\\\\\\s+multihop|authentication\\\\\\\\s+meticulous\\\\\\\\s+keyed\\\\\\\\s+sha1|keyed\\\\\\\\s+md5|keyed\\\\\\\\s+sha1|meticulous\\\\\\\\s+keyed\\\\\\\\s+md5|meticulous\\\\\\\\s+keyed\\\\\\\\s+sha1|express\\\\\\\\s+thread\\\\\\\\s+group|multiplier|keyed|meticulous)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.bfd.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:hello\\\\\\\\s+interval|update\\\\\\\\s+interval|send\\\\\\\\s+timestamps|rtt\\\\\\\\s+(?:cost|min|max|decay)|next\\\\\\\\s+hop\\\\\\\\s+prefer\\\\\\\\s+ipv6|next\\\\\\\\s+hop\\\\\\\\s+prefer|next\\\\\\\\s+hop\\\\\\\\s+ipv4|next\\\\\\\\s+hop\\\\\\\\s+ipv6|authentication\\\\\\\\s+mac\\\\\\\\s+permissive|authentication\\\\\\\\s+mac|randomize\\\\\\\\s+router\\\\\\\\s+id|show\\\\\\\\s+babel\\\\\\\\s+interfaces|show\\\\\\\\s+babel\\\\\\\\s+neighbors|show\\\\\\\\s+babel\\\\\\\\s+entries|show\\\\\\\\s+babel\\\\\\\\s+routes|prefer|native)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.babel.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:ipv4\\\\\\\\s+multicast|ipv4\\\\\\\\s+mpls|ipv6\\\\\\\\s+multicast|ipv6\\\\\\\\s+mpls|vpn4\\\\\\\\s+multicast|vpn4\\\\\\\\s+mpls|vpn6\\\\\\\\s+multicast|vpn6\\\\\\\\s+mpls|rr\\\\\\\\s+cluster\\\\\\\\s+id|confederation\\\\\\\\s+member|hold\\\\\\\\s+time|min\\\\\\\\s+hold\\\\\\\\s+time|startup\\\\\\\\s+hold\\\\\\\\s+time|path\\\\\\\\s+metric|prefer\\\\\\\\s+older|connect\\\\\\\\s+delay\\\\\\\\s+time|connect\\\\\\\\s+retry\\\\\\\\s+time|keepalive\\\\\\\\s+time|min\\\\\\\\s+keepalive\\\\\\\\s+time|send\\\\\\\\s+hold\\\\\\\\s+time|error\\\\\\\\s+forget\\\\\\\\s+time|error\\\\\\\\s+wait\\\\\\\\s+time|min\\\\\\\\s+graceful\\\\\\\\s+restart\\\\\\\\s+time|max\\\\\\\\s+graceful\\\\\\\\s+restart\\\\\\\\s+time|long\\\\\\\\s+lived\\\\\\\\s+graceful\\\\\\\\s+restart\\\\\\\\s+aware|min\\\\\\\\s+long\\\\\\\\s+lived\\\\\\\\s+stale\\\\\\\\s+time|max\\\\\\\\s+long\\\\\\\\s+lived\\\\\\\\s+stale\\\\\\\\s+time|disable\\\\\\\\s+rx|send\\\\\\\\s+id|recv\\\\\\\\s+id|next\\\\\\\\s+hop\\\\\\\\s+self|next\\\\\\\\s+hop\\\\\\\\s+address|next\\\\\\\\s+hop\\\\\\\\s+ibgp|next\\\\\\\\s+hop\\\\\\\\s+ebgp|next\\\\\\\\s+hop\\\\\\\\s+prefer\\\\\\\\s+global|next\\\\\\\\s+hop\\\\\\\\s+prefer\\\\\\\\s+local|next\\\\\\\\s+hop\\\\\\\\s+keep|link\\\\\\\\s+local\\\\\\\\s+next\\\\\\\\s+hop\\\\\\\\s+format|import\\\\\\\\s+table|export\\\\\\\\s+table|base\\\\\\\\s+table|igp\\\\\\\\s+table|add\\\\\\\\s+paths\\\\\\\\s+rx|add\\\\\\\\s+paths\\\\\\\\s+tx|add\\\\\\\\s+paths|require\\\\\\\\s+add\\\\\\\\s+paths|gateway\\\\\\\\s+direct|aigp\\\\\\\\s+originate|long\\\\\\\\s+lived\\\\\\\\s+graceful\\\\\\\\s+restart|long\\\\\\\\s+lived\\\\\\\\s+stale\\\\\\\\s+time|dynamic\\\\\\\\s+name(?:\\\\\\\\s+digits)?|free\\\\\\\\s+bind|ttl\\\\\\\\s+security|multihop\\\\\\\\s+password|authentication\\\\\\\\s+ao|tx\\\\\\\\s+size\\\\\\\\s+warning|rr\\\\\\\\s+client|rs\\\\\\\\s+client|advertise\\\\\\\\s+hostname|interpret\\\\\\\\s+communities|deterministic\\\\\\\\s+med|default\\\\\\\\s+bgp_local_pref|default\\\\\\\\s+bgp_med|med\\\\\\\\s+metric|igp\\\\\\\\s+metric|missing\\\\\\\\s+lladdr|gateway\\\\\\\\s+address|forwarding\\\\\\\\s+addressed|gateway\\\\\\\\s+recursive|allow\\\\\\\\s+local\\\\\\\\s+as|allow\\\\\\\\s+bogus\\\\\\\\s+as|allow\\\\\\\\s+bgp_local_pref|allow\\\\\\\\s+bgp_med|allow\\\\\\\\s+as\\\\\\\\s+sets|enable\\\\\\\\s+route\\\\\\\\s+refresh|enable\\\\\\\\s+enhanced\\\\\\\\s+route\\\\\\\\s+refresh|require\\\\\\\\s+route\\\\\\\\s+refresh|require\\\\\\\\s+enhanced\\\\\\\\s+route\\\\\\\\s+refresh|enable\\\\\\\\s+as4|require\\\\\\\\s+as4|enable\\\\\\\\s+extended\\\\\\\\s+messages|require\\\\\\\\s+extended\\\\\\\\s+messages|require\\\\\\\\s+hostname|require\\\\\\\\s+graceful\\\\\\\\s+restart|require\\\\\\\\s+long\\\\\\\\s+lived\\\\\\\\s+graceful\\\\\\\\s+restart|require\\\\\\\\s+extended\\\\\\\\s+next\\\\\\\\s+hop|disable\\\\\\\\s+after\\\\\\\\s+error|disable\\\\\\\\s+after\\\\\\\\s+cease|prefix\\\\\\\\s+limit\\\\\\\\s+hit|administrative\\\\\\\\s+shutdown|peer\\\\\\\\s+deconfigured|administrative\\\\\\\\s+reset|connection\\\\\\\\s+rejected|configuration\\\\\\\\s+change|connection\\\\\\\\s+collision|out\\\\\\\\s+of\\\\\\\\s+resources|enforce\\\\\\\\s+first\\\\\\\\s+as|neighbor\\\\\\\\s+range|interface\\\\\\\\s+range|originate\\\\\\\\s+community|full\\\\\\\\s+route\\\\\\\\s+table|link\\\\\\\\s+local\\\\\\\\s+next\\\\\\\\s+hop\\\\\\\\s+format\\\\\\\\s+(?:native|single|double)|mandatory|secondary|validate|capabilities|primary|aigp|setkey|drop|single|double)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.bgp.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:local\\\\\\\\s+role|require\\\\\\\\s+roles)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.bgp-role.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:provider|customer|rs_server|rs_client)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.bgp-role.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:mpls\\\\\\\\s+domain|label\\\\\\\\s+range\\\\\\\\s+static|label\\\\\\\\s+range\\\\\\\\s+dynamic|label\\\\\\\\s+range|label\\\\\\\\s+policy|static\\\\\\\\s+label|dynamic\\\\\\\\s+label)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.mpls.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:recursive\\\\\\\\s+mpls|show\\\\\\\\s+static|igp\\\\\\\\s+table|check\\\\\\\\s+link)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.static.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:generate\\\\\\\\s+from|generate\\\\\\\\s+to|accept\\\\\\\\s+from|accept\\\\\\\\s+to)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.auth-window.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:import\\\\\\\\s+|export\\\\\\\\s+)limit\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.channel-limit.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\btx(?:\\\\\\\\s+class|\\\\\\\\s+dscp|\\\\\\\\s+priority)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.socket.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:rx\\\\\\\\s+buffer|tx\\\\\\\\s+length|check\\\\\\\\s+link)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.interface.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:debug\\\\\\\\s+latency\\\\\\\\s+limit|debug\\\\\\\\s+latency|debug\\\\\\\\s+show\\\\\\\\s+route|debug\\\\\\\\s+protocols|debug\\\\\\\\s+channels|debug\\\\\\\\s+tables|debug\\\\\\\\s+commands|debug\\\\\\\\s+all|debug\\\\\\\\s+(?:events|filters|interfaces|off|packets|routes|states)|watchdog\\\\\\\\s+warning|watchdog\\\\\\\\s+timeout|states|routes|filters|interfaces|events|packets|messages)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.diagnostics.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:min\\\\\\\\s+settle\\\\\\\\s+time|max\\\\\\\\s+settle\\\\\\\\s+time|gc\\\\\\\\s+threshold|gc\\\\\\\\s+period|export\\\\\\\\s+settle\\\\\\\\s+time|sorted|trie|roa)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.table.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:peer\\\\\\\\s+table|aggregate\\\\\\\\s+on|merge\\\\\\\\s+by)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.aggregator.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:merge\\\\\\\\s+paths\\\\\\\\s+limit|merge\\\\\\\\s+paths|kernel\\\\\\\\s+table|netlink\\\\\\\\s+rx\\\\\\\\s+buffer)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.kernel.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:route\\\\\\\\s+distinguisher|import\\\\\\\\s+target|export\\\\\\\\s+target|route\\\\\\\\s+target)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.l3vpn.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:encapsulation\\\\\\\\s+vxlan|vlan\\\\\\\\s+filtering|vlan\\\\\\\\s+range|vni|vid|bridge\\\\\\\\s+device|kbr\\\\\\\\s+source)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.evpn-bridge.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:tunnel\\\\\\\\s+device|router\\\\\\\\s+address|evpn\\\\\\\\s+(?:ead|mac|imet|es)|tag)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.evpn.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:monitoring\\\\\\\\s+rib\\\\\\\\s+in\\\\\\\\s+pre_policy|monitoring\\\\\\\\s+rib\\\\\\\\s+in\\\\\\\\s+post_policy|system\\\\\\\\s+description|system\\\\\\\\s+name|tx\\\\\\\\s+buffer\\\\\\\\s+limit|station\\\\\\\\s+address|station)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.bmp.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:solicited\\\\\\\\s+ra\\\\\\\\s+unicast|router\\\\\\\\s+discovery|min\\\\\\\\s+ra\\\\\\\\s+interval|max\\\\\\\\s+ra\\\\\\\\s+interval|min\\\\\\\\s+delay|link\\\\\\\\s+mtu|default\\\\\\\\s+lifetime|route\\\\\\\\s+lifetime|default\\\\\\\\s+preference|route\\\\\\\\s+preference|prefix\\\\\\\\s+linger\\\\\\\\s+time|route\\\\\\\\s+linger\\\\\\\\s+time|current\\\\\\\\s+hop\\\\\\\\s+limit|propagate\\\\\\\\s+routes|other\\\\\\\\s+config|reachable\\\\\\\\s+time|retrans\\\\\\\\s+timer|valid\\\\\\\\s+lifetime|preferred\\\\\\\\s+lifetime|lifetime\\\\\\\\s+mult|pd\\\\\\\\s+preferred|rdnss\\\\\\\\s+local|dnssl\\\\\\\\s+local|custom\\\\\\\\s+option\\\\\\\\s+type|custom\\\\\\\\s+option\\\\\\\\s+local|managed|trigger|sensitive|autonomous|skip|low|medium|high|rdnss|dnssl|domain|lifetime|value|ns)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.radv.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:rip\\\\\\\\s+ng|mode\\\\\\\\s+multicast|mode\\\\\\\\s+broadcast|version\\\\\\\\s+only|check\\\\\\\\s+zero|update\\\\\\\\s+time|timeout\\\\\\\\s+time|garbage\\\\\\\\s+time|retransmit\\\\\\\\s+time|split\\\\\\\\s+horizon|poison\\\\\\\\s+reverse|demand\\\\\\\\s+circuit|ecmp\\\\\\\\s+limit|ecmp\\\\\\\\s+weight|infinity|show\\\\\\\\s+rip\\\\\\\\s+interfaces|show\\\\\\\\s+rip\\\\\\\\s+neighbors|ttl\\\\\\\\s+security\\\\\\\\s+tx\\\\\\\\s+only|authentication\\\\\\\\s+plaintext|authentication\\\\\\\\s+cryptographic)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.rip.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:link\\\\\\\\s+lsa\\\\\\\\s+suppression|stub\\\\\\\\s+router|graceful\\\\\\\\s+restart\\\\\\\\s+aware|graceful\\\\\\\\s+restart\\\\\\\\s+time|ecmp\\\\\\\\s+limit|merge\\\\\\\\s+external|rfc5838|vpn\\\\\\\\s+pe|instance\\\\\\\\s+id|default\\\\\\\\s+nssa|default\\\\\\\\s+cost2?|stub\\\\\\\\s+cost|summary|networks|stubnet|hidden|translator\\\\\\\\s+stability|virtual\\\\\\\\s+link|transmit\\\\\\\\s+delay|dead\\\\\\\\s+count|poll|type\\\\\\\\s+bcast|type\\\\\\\\s+nbma|type\\\\\\\\s+pointopoint|type\\\\\\\\s+ptp|type\\\\\\\\s+ptmp|type\\\\\\\\s+pointomultipoint|eligible|real\\\\\\\\s+broadcast|ptp\\\\\\\\s+netmask|ptp\\\\\\\\s+address|strict\\\\\\\\s+nonbroadcast|rx\\\\\\\\s+buffer\\\\\\\\s+normal|rx\\\\\\\\s+buffer\\\\\\\\s+large|authentication\\\\\\\\s+simple|show\\\\\\\\s+ospf\\\\\\\\s+interface|show\\\\\\\\s+ospf\\\\\\\\s+neighbors|show\\\\\\\\s+ospf\\\\\\\\s+topology\\\\\\\\s+all|show\\\\\\\\s+ospf\\\\\\\\s+topology|show\\\\\\\\s+ospf\\\\\\\\s+state\\\\\\\\s+all|show\\\\\\\\s+ospf\\\\\\\\s+state|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+global|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+area|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+link|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+type|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+lsid|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+self|show\\\\\\\\s+ospf\\\\\\\\s+lsadb\\\\\\\\s+router|show\\\\\\\\s+ospf\\\\\\\\s+lsadb|show\\\\\\\\s+ospf|ospf\\\\\\\\s+v2|ospf\\\\\\\\s+v3|instance|tag|v2|v3)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.ospf.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:aspa\\\\\\\\s+providers|transit\\\\\\\\s+providers|route\\\\\\\\s+aspa)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.aspa.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:next\\\\\\\\s+header|icmp\\\\\\\\s+type|icmp\\\\\\\\s+code|tcp\\\\\\\\s+flags)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.flowspec.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:thread\\\\\\\\s+group|show\\\\\\\\s+threads\\\\\\\\s+all|show\\\\\\\\s+threads|cork\\\\\\\\s+threshold|route\\\\\\\\s+refresh\\\\\\\\s+export\\\\\\\\s+settle\\\\\\\\s+time|digest\\\\\\\\s+settle\\\\\\\\s+time|filter\\\\\\\\s+stacks|max\\\\\\\\s+generation)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.threading.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:always\\\\\\\\s+add\\\\\\\\s+path|filename)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.mrt.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:mode\\\\\\\\s+import|mode\\\\\\\\s+export|exp\\\\\\\\s+from|exp\\\\\\\\s+to|threshold\\\\\\\\s+min|threshold\\\\\\\\s+max|repeat)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.perf.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:router\\\\\\\\s+id\\\\\\\\s+from|graceful\\\\\\\\s+restart\\\\\\\\s+wait|vrf\\\\\\\\s+default|receive\\\\\\\\s+limit|import\\\\\\\\s+keep\\\\\\\\s+filtered|export\\\\\\\\s+in|rpki\\\\\\\\s+reload|mrtdump\\\\\\\\s+protocols)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.operations.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bshow(?:\\\\\\\\s+status|\\\\\\\\s+protocols\\\\\\\\s+all|\\\\\\\\s+protocols|\\\\\\\\s+interfaces\\\\\\\\s+summary|\\\\\\\\s+interfaces|\\\\\\\\s+symbols\\\\\\\\s+table|\\\\\\\\s+symbols\\\\\\\\s+filter|\\\\\\\\s+symbols\\\\\\\\s+function|\\\\\\\\s+symbols\\\\\\\\s+protocol|\\\\\\\\s+symbols\\\\\\\\s+template|\\\\\\\\s+symbols|\\\\\\\\s+route\\\\\\\\s+for|\\\\\\\\s+route\\\\\\\\s+in|\\\\\\\\s+route\\\\\\\\s+table|\\\\\\\\s+route\\\\\\\\s+filter|\\\\\\\\s+route\\\\\\\\s+where|\\\\\\\\s+route\\\\\\\\s+all|\\\\\\\\s+route\\\\\\\\s+primary|\\\\\\\\s+route\\\\\\\\s+filtered|\\\\\\\\s+route\\\\\\\\s+import|\\\\\\\\s+route\\\\\\\\s+export|\\\\\\\\s+route\\\\\\\\s+exported|\\\\\\\\s+route\\\\\\\\s+preexport|\\\\\\\\s+route\\\\\\\\s+noexport|\\\\\\\\s+route\\\\\\\\s+protocol|\\\\\\\\s+route\\\\\\\\s+stats|\\\\\\\\s+route\\\\\\\\s+count|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+address|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+direct|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+multihop|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+interface|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+dev|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+all|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+ipv4|\\\\\\\\s+bfd\\\\\\\\s+sessions\\\\\\\\s+ipv6|\\\\\\\\s+bfd\\\\\\\\s+sessions|\\\\\\\\s+mpls\\\\\\\\s+ranges|\\\\\\\\s+memory|\\\\\\\\s+route)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cli-show.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\breload(?:\\\\\\\\s+filters\\\\\\\\s+in|\\\\\\\\s+filters\\\\\\\\s+out|\\\\\\\\s+filters|\\\\\\\\s+bgp\\\\\\\\s+in|\\\\\\\\s+bgp\\\\\\\\s+out|\\\\\\\\s+bgp|\\\\\\\\s+in|\\\\\\\\s+out)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cli-reload.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\bpartial\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cli-reload-modifier.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:dump\\\\\\\\s+tables|dump\\\\\\\\s+attribute\\\\\\\\s+stats|dump\\\\\\\\s+ao\\\\\\\\s+keys|dump\\\\\\\\s+filter\\\\\\\\s+all|dump\\\\\\\\s+resources|dump\\\\\\\\s+sockets|dump\\\\\\\\s+events|dump\\\\\\\\s+interfaces|dump\\\\\\\\s+neighbors|dump\\\\\\\\s+attributes|dump\\\\\\\\s+routes|dump\\\\\\\\s+protocols|mrt\\\\\\\\s+dump\\\\\\\\s+table|mrt\\\\\\\\s+dump\\\\\\\\s+where|mrt\\\\\\\\s+dump\\\\\\\\s+to|mrt\\\\\\\\s+dump\\\\\\\\s+filter|mrt\\\\\\\\s+dump|timeformat\\\\\\\\s+route|timeformat\\\\\\\\s+protocol|timeformat\\\\\\\\s+base|timeformat\\\\\\\\s+log|timeformat\\\\\\\\s+iso|configure\\\\\\\\s+soft\\\\\\\\s+timeout|configure\\\\\\\\s+soft|configure\\\\\\\\s+timeout|configure\\\\\\\\s+confirm|configure\\\\\\\\s+undo|configure\\\\\\\\s+status|configure\\\\\\\\s+check|restrict|echo|enable|disable|restart|debug|mrtdump|quit|exit|help)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cli-dump.phrase.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:configure|down|graceful\\\\\\\\s+restart|timeformat\\\\\\\\s+(?:short|long|ms|us))\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.cli-control.phrase.bird\\\"}]},\\\"route-attributes\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:net|scope|preference|from|gw|proto|source|dest|ifname|ifindex|weight|gw_mpls|gw_mpls_stack|onlink|igp_metric|local_metric|nexthop|hostentry|flowspec_valid|aspa_providers|roa_aggregated|mpls_label|mpls_policy|mpls_class|bgp_path|bgp_origin|bgp_next_hop|bgp_med|bgp_local_pref|bgp_community|bgp_ext_community|bgp_large_community|bgp_originator_id|bgp_cluster_list|bgp_atomic_aggr|bgp_aggregator|bgp_aigp|bgp_pmsi_tunnel|bgp_otc|bgp_mpls_label_stack|bgp_mp_reach_nlri|bgp_mp_unreach_nlri|bgp_as4_path|bgp_as4_aggregator|bgp_unknown_0x\\\\\\\\h{2}|ospf_metric1|ospf_metric2|ospf_tag|ospf_router_id|rip_metric|rip_tag|rip_from|babel_metric|babel_router_id|babel_seqno|radv_preference|radv_lifetime|ra_preference|ra_lifetime|krt_source|krt_metric|krt_prefsrc|krt_realm|krt_scope|krt_mtu|krt_window|krt_rtt|krt_rttvar|krt_ssthresh|krt_sstresh|krt_cwnd|krt_advmss|krt_reordering|krt_hoplimit|krt_initcwnd|krt_rto_min|krt_initrwnd|krt_quickack|krt_congctl|krt_fastopen_no_cookie|krt_lock_mtu|krt_lock_window|krt_lock_rtt|krt_lock_rttvar|krt_lock_ssthresh|krt_lock_sstresh|krt_lock_cwnd|krt_lock_advmss|krt_lock_reordering|krt_lock_hoplimit|krt_lock_initcwnd|krt_lock_rto_min|krt_lock_initrwnd|krt_lock_quickack|krt_lock_congctl|krt_lock_fastopen_no_cookie|krt_feature_allfrag|krt_feature_ecn|kbr_source|iface_type|iface_bridge_vlan_filtering|iface_vxlan_id|iface_vxlan_learning|iface_vxlan_ip_addr|mypath|mylclist)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.route-attribute.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:proto_name|proto_protocol_name|proto_protocol_type|proto_main_table_id|proto_state|proto_last_modified|proto_info|proto_proto_id|ea_proto_channel_list|proto_channel_id|channel_in_keep|rtable|proto_bgp_rem_id|proto_bgp_rem_as|proto_bgp_loc_as|proto_bgp_rem_ip|bgp_afi|bgp_peer_type|bgp_extended_next_hop|bgp_add_path_rx|bgp_in_conn_local_open_msg|bgp_in_conn_remote_open_msg|bgp_out_conn_local_open_msg|bgp_out_conn_remote_open_msg|bgp_in_conn_state|bgp_out_conn_state|bgp_in_conn_sk|bgp_out_conn_sk|bgp_state_startup|bgp_close_bmp|bgp_as4_session|bgp_as4_in_conn|bgp_as4_out_conn)\\\\\\\\b\\\",\\\"name\\\":\\\"support.variable.runtime.bird\\\"}]},\\\"semantic-modifiers\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:self|on|off|remote|extended|native|ipv6|internal|external)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.semantic-modifier.bird\\\"}]},\\\"strings\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.bird\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.bird\\\"}},\\\"name\\\":\\\"string.quoted.double.bird\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.bird\\\"}]},{\\\"match\\\":\\\"'[-.0-:A-Z_a-z]+'\\\",\\\"name\\\":\\\"entity.name.symbol.quoted.bird\\\"}]},\\\"structural-keywords\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b(?:if|then|else|case|for|do|while|break|continue|return|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\belse\\\\\\\\s*:\\\",\\\"name\\\":\\\"keyword.control.case.else.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:accept|reject|error)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.flow.bird\\\"},{\\\"match\\\":\\\"\\\\\\\\b(?:protocol|table|define|include|attribute|eval|ipv6\\\\\\\\s+sadr|ipv4\\\\\\\\s+mpls|ipv6\\\\\\\\s+mpls|vpn4\\\\\\\\s+mpls|vpn6\\\\\\\\s+mpls|ipv4|ipv6|local|as|from|where|cost|limit|action)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.structure.bird\\\"}]},\\\"symbols\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z_a-z][0-9A-Z_a-z]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.bird\\\"}]},\\\"template-definitions\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\b(template)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s+(from)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.template.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.template.bird\\\"},\\\"4\\\":{\\\"name\\\":\\\"keyword.control.template-reference.bird\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.template.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.template-definition-with-from.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(template)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*|'[-.0-:A-Z_a-z]+')\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.template.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"},\\\"3\\\":{\\\"name\\\":\\\"entity.name.function.template.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.template-definition-with-name.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\b(template)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\\\\\s*\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.control.template.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.protocol.bird\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.block.end.bird\\\"}},\\\"name\\\":\\\"meta.template-definition-anonymous.bird\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"$self\\\"}]}]},\\\"user-variables\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b[A-Z][0-9A-Z_a-z]*\\\\\\\\b\\\",\\\"name\\\":\\\"variable.other.user-defined.bird\\\"}]},\\\"variable-declarations\\\":{\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.bird\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.other.declaration.bird\\\"}},\\\"match\\\":\\\"\\\\\\\\b((?:int|pair|quad|ip|prefix|mac|ec|lc|rd|enum)\\\\\\\\s+set|int|bool|ip|prefix|mac|rd|pair|quad|ec|lc|string|bytestring|bgpmask|bgppath|clist|eclist|lclist|set|enum|route)\\\\\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)(?:\\\\\\\\s*=|;)\\\",\\\"name\\\":\\\"meta.variable-declaration.bird\\\"}]},\\\"vpn-rd\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:[0-9]+:[0-9]+|[012]:[0-9]+:[0-9]+|(?:[0-9]{1,3}\\\\\\\\.){3}[0-9]{1,3}:[0-9]+)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.vpn-rd.bird\\\"}},\\\"scopeName\\\":\\\"source.bird2\\\",\\\"aliases\\\":[\\\"bird\\\"]}\"))\n\nexport default [\nlang\n]\n"],"x_google_ignoreList":[0],"mappings":"AAEA,IAAA,EAAe,CAFF,OAAO,OAAO,KAAK,MAAM,ytrCAA+vwC,CAGrywC,CACA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
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*[\\"'0-9a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!);])","patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#brackets"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#variable"}]},"IO-keywords":{"begin":"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.read.fortran"},"2":{"name":"keyword.control.generic-spec.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"captures":{"1":{"name":"keyword.control.generic-spec.formatted.fortran"},"2":{"name":"keyword.control.generic-spec.unformatted.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(?:(formatted)|(unformatted))\\\\b"},{"include":"#invalid-word"}]},"IO-statements":{"patterns":[{"begin":"(?i)\\\\b(format)(?=\\\\s*[!\\\\&(])","beginCaptures":{"1":{"name":"keyword.control.format.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.IO.fortran","patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"include":"#format-parentheses"}]},{"begin":"(?i)\\\\b(?:(backspace)|(close)|(endfile)|(inquire)|(open)|(read)|(rewind)|(write))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.close.fortran"},"3":{"name":"keyword.control.endfile.fortran"},"4":{"name":"keyword.control.inquire.fortran"},"5":{"name":"keyword.control.open.fortran"},"6":{"name":"keyword.control.read.fortran"},"7":{"name":"keyword.control.rewind.fortran"},"8":{"name":"keyword.control.write.fortran"},"9":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.IO.fortran","patterns":[{"include":"#parentheses-dummy-variables"},{"include":"#IO-item-list"}]},{"captures":{"1":{"name":"keyword.control.backspace.fortran"},"2":{"name":"keyword.control.endfile.fortran"},"3":{"name":"keyword.control.format.fortran"},"4":{"name":"keyword.control.print.fortran"},"5":{"name":"keyword.control.read.fortran"},"6":{"name":"keyword.control.rewind.fortran"}},"match":"(?i)\\\\b(?:(backspace)|(endfile)|(format)|(print)|(read)|(rewind))\\\\b"},{"begin":"(?i)\\\\b(?:(flush)|(wait))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.flush.fortran"},"2":{"name":"keyword.control.wait.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"keyword.control.flush.fortran"}},"match":"(?i)\\\\b(flush)\\\\b"}]},"abstract-attribute":{"captures":{"1":{"name":"storage.modifier.fortran.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(abstract)\\\\b"},"abstract-interface-block-construct":{"begin":"(?i)\\\\b(abstract)\\\\s+(interface)\\\\b","beginCaptures":{"1":{"name":"keyword.other.attribute.fortran.modern"},"2":{"name":"keyword.control.interface.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran.modern"}},"name":"meta.interface.abstract.fortran","patterns":[{"include":"$base"}]},"access-attribute":{"patterns":[{"include":"#private-attribute"},{"include":"#public-attribute"}]},"allocatable-attribute":{"captures":{"1":{"name":"storage.modifier.allocatable.fortran"}},"match":"(?i)\\\\s*\\\\b(allocatable)\\\\b"},"allocate-statement":{"begin":"(?i)\\\\b(allocate)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.allocate.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.allocate.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"arithmetic-operators":{"captures":{"1":{"name":"keyword.operator.subtraction.fortran"},"2":{"name":"keyword.operator.addition.fortran"},"3":{"name":"keyword.operator.division.fortran"},"4":{"name":"keyword.operator.power.fortran"},"5":{"name":"keyword.operator.multiplication.fortran"}},"match":"(-)|(\\\\+)|/(?![/=\\\\\\\\])|(\\\\*\\\\*)|(\\\\*)"},"array-constructor":{"begin":"(?<!\\\\n)(?=\\\\s*(\\\\[|\\\\(/))","end":"(?<!\\\\G)","name":"meta.contructor.array","patterns":[{"include":"#brackets"},{"begin":"\\\\s*(\\\\(/)","beginCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"end":"(/\\\\))","endCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]}]},"assign-statement":{"patterns":[{"begin":"(?i)\\\\b(assign)\\\\b","beginCaptures":{"1":{"name":"keyword.control.assign.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.assign.fortran","patterns":[{"captures":{"1":{"name":"keyword.control.to.fortran"}},"match":"(?i)\\\\s*\\\\b(to)\\\\b"},{"include":"$base"}]}]},"assignment-keyword":{"begin":"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.assignment.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#assignment-operator"},{"include":"#invalid-word"}]},"assignment-operator":{"match":"(?<![/<=>])(=)(?![=>])","name":"keyword.operator.assignment.fortran"},"associate-construct":{"begin":"(?i)\\\\b(associate)\\\\b(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.associate.fortran","end":"(?i)\\\\b(end\\\\s*associate)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"asynchronous-attribute":{"captures":{"1":{"name":"storage.modifier.asynchronous.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(asynchronous)\\\\b"},"attribute-specification-statement":{"begin":"(?i)(?=\\\\b(?:allocatable|asynchronous|contiguous|external|intrinsic|optional|parameter|pointer|private|protected|public|save|target|value|volatile)\\\\b|(bind|dimension|intent)\\\\s*\\\\(|(codimension)\\\\s*\\\\[)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#asynchronous-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#external-attribute"},{"include":"#intent-attribute"},{"include":"#intrinsic-attribute"},{"include":"#language-binding-attribute"},{"include":"#optional-attribute"},{"include":"#parameter-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#target-attribute"},{"include":"#value-attribute"},{"include":"#volatile-attribute"},{"begin":"(?=\\\\s*::)","contentName":"meta.attribute-list.normal.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"include":"#invalid-word"}]},{"include":"#name-list"}]},"block-construct":{"begin":"(?i)\\\\b(block)\\\\b(?!\\\\s*\\\\bdata\\\\b)","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.block.fortran","end":"(?i)\\\\b(end\\\\s*block)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"block-data-definition":{"begin":"(?i)\\\\b(block\\\\s*data)\\\\b(?:\\\\s+([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*block\\\\s*data)(?:\\\\s+(\\\\2))?|(end))\\\\b(?:\\\\s*(\\\\S((?!\\\\n).)*))?","endCaptures":{"1":{"name":"keyword.control.end-block-data.fortran"},"2":{"name":"entity.name.block-data.fortran"},"3":{"name":"keyword.control.end-block-data.fortran"},"4":{"name":"invalid.error.block-data-definition.fortran"}},"name":"meta.block-data.fortran","patterns":[{"include":"$base"}]},"brackets":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.bracket.left.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"call-statement":{"patterns":[{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b(call)\\\\b","beginCaptures":{"1":{"name":"keyword.control.call.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.call.fortran","patterns":[{"begin":"(?i)(?=\\\\s*[a-z]\\\\w*\\\\s*%)","end":"(?=[\\\\n!;])","patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"captures":{"1":{"name":"variable.other.fortran"},"2":{"name":"keyword.accessor.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)\\\\s*(%)"},{"captures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)"},{"include":"#parentheses-dummy-variables"}]},{"include":"#intrinsic-subroutines"},{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b(?=\\\\s*[\\\\n!;])"},{"include":"$base"}]}]},"character-type":{"patterns":[{"begin":"(?i)\\\\b(character)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"keyword.operator.multiplication.fortran"},"3":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(character)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"codimension-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(codimension)(?=\\\\s*\\\\[)","beginCaptures":{"1":{"name":"storage.modifier.codimension.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#brackets"}]},"comments":{"begin":"!","end":"(?=\\\\n)","name":"comment.line.fortran"},"common-statement":{"begin":"(?i)\\\\b(common)\\\\b","beginCaptures":{"1":{"name":"keyword.control.common.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"concurrent-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(concurrent)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},"constants":{"patterns":[{"include":"#logical-constant"},{"include":"#numeric-constant"},{"include":"#string-constant"}]},"contiguous-attribute":{"captures":{"1":{"name":"storage.modifier.contigous.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(contiguous)\\\\b"},"continue-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(continue)\\\\b","beginCaptures":{"1":{"name":"keyword.control.continue.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.continue.fortran","patterns":[{"include":"#invalid-character"}]}]},"control-constructs":{"patterns":[{"include":"#named-control-constructs"},{"include":"#unnamed-control-constructs"}]},"control-statements":{"patterns":[{"include":"#assign-statement"},{"include":"#call-statement"},{"include":"#continue-statement"},{"include":"#cycle-statement"},{"include":"#entry-statement"},{"include":"#error-stop-statement"},{"include":"#exit-statement"},{"include":"#goto-statement"},{"include":"#pause-statement"},{"include":"#return-statement"},{"include":"#stop-statement"},{"include":"#where-statement"},{"include":"#image-control-statement"}]},"cpp-numeric-constant":{"captures":{"0":{"patterns":[{"begin":"(?=.)","beginCaptures":{},"end":"$","endCaptures":{},"patterns":[{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.cpp"},"2":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"constant.numeric.hexadecimal.cpp"},"5":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"6":{"name":"punctuation.separator.constant.numeric.cpp"},"7":{"name":"keyword.other.unit.exponent.hexadecimal.cpp"},"8":{"name":"keyword.operator.plus.exponent.hexadecimal.cpp"},"9":{"name":"keyword.operator.minus.exponent.hexadecimal.cpp"},"10":{"name":"constant.numeric.exponent.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"11":{"name":"keyword.other.unit.suffix.floating-point.cpp"},"12":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?((?<=\\\\h)\\\\.|\\\\.(?=\\\\h))(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$"},{"captures":{"1":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"2":{"name":"punctuation.separator.constant.numeric.cpp"},"3":{"name":"constant.numeric.decimal.point.cpp"},"4":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"5":{"name":"punctuation.separator.constant.numeric.cpp"},"6":{"name":"keyword.other.unit.exponent.decimal.cpp"},"7":{"name":"keyword.operator.plus.exponent.decimal.cpp"},"8":{"name":"keyword.operator.minus.exponent.decimal.cpp"},"9":{"name":"constant.numeric.exponent.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"10":{"name":"keyword.other.unit.suffix.floating-point.cpp"},"11":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?((?<=[0-9])\\\\.|\\\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)?(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?([FLfl](?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.binary.cpp"},"2":{"name":"constant.numeric.binary.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.suffix.integer.cpp"},"5":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Bb])([01](?:[01]|((?<=\\\\h)'(?=\\\\h)))*)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.octal.cpp"},"2":{"name":"constant.numeric.octal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.suffix.integer.cpp"},"5":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0)((?:[0-7]|((?<=\\\\h)'(?=\\\\h)))+)((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9])\\\\w*)?)$"},{"captures":{"1":{"name":"keyword.other.unit.hexadecimal.cpp"},"2":{"name":"constant.numeric.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"3":{"name":"punctuation.separator.constant.numeric.cpp"},"4":{"name":"keyword.other.unit.exponent.hexadecimal.cpp"},"5":{"name":"keyword.operator.plus.exponent.hexadecimal.cpp"},"6":{"name":"keyword.operator.minus.exponent.hexadecimal.cpp"},"7":{"name":"constant.numeric.exponent.hexadecimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"8":{"name":"keyword.other.unit.suffix.integer.cpp"},"9":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Pp])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![Pp\\\\h])\\\\w*)?)$"},{"captures":{"1":{"name":"constant.numeric.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"2":{"name":"punctuation.separator.constant.numeric.cpp"},"3":{"name":"keyword.other.unit.exponent.decimal.cpp"},"4":{"name":"keyword.operator.plus.exponent.decimal.cpp"},"5":{"name":"keyword.operator.minus.exponent.decimal.cpp"},"6":{"name":"constant.numeric.exponent.decimal.cpp","patterns":[{"match":"(?<=\\\\h)'(?=\\\\h)","name":"punctuation.separator.constant.numeric.cpp"}]},"7":{"name":"keyword.other.unit.suffix.integer.cpp"},"8":{"name":"keyword.other.unit.user-defined.cpp"}},"match":"\\\\G(?=[.0-9])(?!0[BXbx])([0-9](?:[0-9]|((?<=\\\\h)'(?=\\\\h)))*)(?:(?<!')([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)'(?=\\\\h))*))?((?:[Uu]|[Uu]ll?|[Uu]LL?|ll?[Uu]?|LL?[Uu]?|[Ff])(?!\\\\w))?((?:\\\\w(?<![0-9Ee])\\\\w*)?)$"},{"match":"(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])+","name":"invalid.illegal.constant.numeric.cpp"}]}]}},"match":"(?<!\\\\w)\\\\.?\\\\d(?:['.0-9A-Z_a-z]|(?<=[EPep])[-+])*"},"critical-construct":{"begin":"(?i)\\\\b(critical)\\\\b","beginCaptures":{"1":{"name":"keyword.control.associate.fortran"}},"contentName":"meta.block.critical.fortran","end":"(?i)\\\\b(end\\\\s*critical)\\\\b","endCaptures":{"1":{"name":"keyword.control.endassociate.fortran"}},"patterns":[{"include":"$base"}]},"cycle-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(cycle)\\\\b","beginCaptures":{"1":{"name":"keyword.control.cycle.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.fortran","patterns":[]}]},"data-statement":{"begin":"(?i)\\\\b(data)\\\\b","beginCaptures":{"1":{"name":"keyword.control.data.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"deallocate-statement":{"begin":"(?i)\\\\b(deallocate)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.deallocate.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.deallocate.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"deferred-attribute":{"captures":{"1":{"name":"storage.modifier.deferred.fortran"}},"match":"(?i)\\\\s*\\\\b(deferred)\\\\b"},"derived-type":{"begin":"(?i)\\\\b(?:(class)|(type))\\\\s*(\\\\()\\\\s*(([a-z]\\\\w*)|\\\\*)","beginCaptures":{"1":{"name":"storage.type.class.fortran"},"2":{"name":"storage.type.type.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"entity.name.type.fortran"}},"contentName":"meta.type-spec.fortran","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.specification.type.derived.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"derived-type-component-attribute-specification":{"begin":"(?i)(?=\\\\s*\\\\b(?:private|sequence)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#sequence-attribute"},{"include":"#invalid-character"}]},"derived-type-component-parameter-specification":{"captures":{"1":{"name":"storage.type.integer.fortran"},"2":{"name":"punctuation.comma.fortran"},"3":{"name":"keyword.other.attribute.derived-type.parameter.fortran"},"4":{"name":"keyword.operator.double-colon.fortran"},"5":{"name":"entity.name.derived-type.parameter.fortran"}},"match":"(?i)\\\\b(integer)\\\\s*(,)\\\\s*(kind|len)\\\\s*(?:(::)\\\\s*([a-z]\\\\w*)?)?\\\\s*(?=[\\\\n!;])"},"derived-type-component-procedure-specification":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-component-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#pass-attribute"},{"include":"#nopass-attribute"},{"include":"#invalid-word"},{"include":"#pointer-attribute"}]}]},{"include":"#procedure-name-list"}]},"derived-type-component-type-specification":{"begin":"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type)\\\\b(?![^\\\\n!\\"':;]*\\\\bfunction\\\\b))","end":"(?=[\\\\n!;])","name":"meta.specification.derived-type.fortran","patterns":[{"include":"#types"},{"include":"#line-continuation-operator"},{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.derived-type-component-type.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#pointer-attribute"},{"include":"#invalid-word"}]}]},{"include":"#name-list"}]},"derived-type-contains-attribute-specification":{"begin":"(?i)(?=\\\\bprivate\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.attribute-specification.fortran","patterns":[{"include":"#access-attribute"},{"include":"#invalid-character"}]},"derived-type-contains-final-procedure-specification":{"begin":"(?i)\\\\b(final)\\\\b","beginCaptures":{"1":{"name":"storage.type.final-procedure.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.specification.procedure.final.fortran","patterns":[{"begin":"(?=\\\\s*(::))","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"name":"meta.attribute-list.derived-type-contains-final-procedure.fortran","patterns":[{"include":"#invalid-word"}]},{"include":"#procedure-name"}]},"derived-type-contains-generic-procedure-specification":{"begin":"(?i)\\\\b(generic)\\\\b","beginCaptures":{"1":{"name":"storage.type.procedure.generic.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.specification.procedure.generic.fortran","patterns":[{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-contains-generic-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"include":"#IO-keywords"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#procedure-name"},{"include":"#pointer-operators"}]}]},"derived-type-contains-procedure-specification":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.derived-type-contains-procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","name":"meta.something.fortran","patterns":[{"include":"#access-attribute"},{"include":"#deferred-attribute"},{"include":"#non-overridable-attribute"},{"include":"#nopass-attribute"},{"include":"#pass-attribute"},{"include":"#invalid-word"}]}]},{"include":"#procedure-name-list"}]},"derived-type-definition":{"begin":"(?i)\\\\b(type)\\\\b(?!\\\\s*(\\\\(|is\\\\b|=))","beginCaptures":{"1":{"name":"keyword.control.type.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.derived-type.definition.fortran","patterns":[{"begin":"\\\\G(?=\\\\s*(,|::))","contentName":"meta.attribute-list.derived-type.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#access-attribute"},{"include":"#abstract-attribute"},{"include":"#language-binding-attribute"},{"include":"#extends-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.type.fortran"}},"end":"(?i)(?:^|(?<=;))\\\\s*(end\\\\s*type)(?:\\\\s+(?:(\\\\1)|(\\\\w+)))?\\\\b","endCaptures":{"1":{"name":"keyword.control.endtype.fortran"},"2":{"name":"entity.name.type.fortran"},"3":{"name":"invalid.error.derived-type.fortran"}},"patterns":[{"include":"#dummy-variable-list"},{"include":"#comments"},{"begin":"(?i)^(?!\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)","end":"(?i)^(?=\\\\s*\\\\b(?:contains|end\\\\s*type)\\\\b)","name":"meta.block.specification.derived-type.fortran","patterns":[{"include":"#comments"},{"include":"#derived-type-component-attribute-specification"},{"include":"#derived-type-component-parameter-specification"},{"include":"#derived-type-component-procedure-specification"},{"include":"#derived-type-component-type-specification"}]},{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end\\\\s*type\\\\b)","name":"meta.block.contains.fortran","patterns":[{"include":"#comments"},{"include":"#derived-type-contains-attribute-specification"},{"include":"#derived-type-contains-final-procedure-specification"},{"include":"#derived-type-contains-generic-procedure-specification"},{"include":"#derived-type-contains-procedure-specification"}]}]}]},"derived-type-operators":{"captures":{"1":{"name":"keyword.other.selector.fortran"}},"match":"\\\\s*(%)"},"dimension-attribute":{"begin":"(?i)\\\\s*\\\\b(dimension)(?=\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.modifier.dimension.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#parentheses-dummy-variables"}]},"do-construct":{"patterns":[{"captures":{"1":{"name":"keyword.control.enddo.fortran"}},"match":"(?i)\\\\b(end\\\\s*do)\\\\b"},{"begin":"(?i)\\\\b(do)\\\\s+(\\\\d{1,5})","beginCaptures":{"1":{"name":"keyword.control.do.fortran"},"2":{"name":"constant.numeric.fortran"}},"end":"(?i)(?:^|(?<=;))(?=\\\\s*\\\\b\\\\2\\\\b)","name":"meta.do.labeled.fortran","patterns":[{"begin":"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#concurrent-attribute"},{"include":"#while-attribute"},{"include":"$base"}]},{"include":"$base"}]},{"begin":"(?i)\\\\b(do)\\\\b","beginCaptures":{"1":{"name":"keyword.control.do.fortran"}},"end":"(?i)\\\\b(?:(continue)|(end\\\\s*do))\\\\b","endCaptures":{"1":{"name":"keyword.control.continue.fortran"},"2":{"name":"keyword.control.enddo.fortran"}},"name":"meta.block.do.unlabeled.fortran","patterns":[{"begin":"(?i)\\\\G(?:\\\\s*(,)|(?!\\\\s*[\\\\n!;]))","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.loop-control.fortran","patterns":[{"include":"#concurrent-attribute"},{"include":"#while-attribute"},{"include":"$base"}]},{"begin":"(?i)(?!\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)","end":"(?i)(?=\\\\s*\\\\b(continue|end\\\\s*do)\\\\b)","patterns":[{"include":"$base"}]}]}]},"dummy-variable":{"captures":{"1":{"name":"variable.parameter.fortran"}},"match":"(?i)(?:^|(?<=[\\\\&(,]))\\\\s*([a-z]\\\\w*)"},"dummy-variable-list":{"begin":"\\\\G\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.fortran"}},"end":"\\\\)|(?=\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.fortran"}},"name":"meta.dummy-variable-list","patterns":[{"include":"#dummy-variable"}]},"elemental-attribute":{"captures":{"1":{"name":"storage.modifier.elemental.fortran"}},"match":"(?i)\\\\s*\\\\b(elemental)\\\\b"},"entry-statement":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(entry)\\\\b","beginCaptures":{"1":{"name":"keyword.control.entry.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.entry.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.entry.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#dummy-variable-list"},{"include":"#result-statement"},{"include":"#language-binding-attribute"}]}]}]},"enum-block-construct":{"begin":"(?i)\\\\b(enum)\\\\b","beginCaptures":{"1":{"name":"keyword.control.enum.fortran"}},"end":"(?i)\\\\b(end\\\\s*enum)\\\\b","endCaptures":{"1":{"name":"keyword.control.end-enum.fortran"}},"name":"meta.enum.fortran","patterns":[{"begin":"\\\\G\\\\s*(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#language-binding-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)(?!\\\\s*\\\\b(end\\\\s*enum)\\\\b)","end":"(?i)(?=\\\\b(end\\\\s*enum)\\\\b)","name":"meta.block.specification.enum.fortran","patterns":[{"include":"#comments"},{"begin":"(?i)\\\\b(enumerator)\\\\b","beginCaptures":{"1":{"name":"keyword.other.enumerator.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.enumerator-specification.fortran","patterns":[{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.enum.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"include":"#invalid-word"}]},{"include":"#comments"},{"include":"#name-list"}]}]}]},"equivalence-statement":{"begin":"(?i)\\\\b(equivalence)\\\\b","beginCaptures":{"1":{"name":"keyword.control.common.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"\\\\G|(,)","beginCaptures":{"1":{"name":"puntuation.comma.fortran"}},"end":"(?=[\\\\n!,;])","patterns":[{"include":"#parentheses-dummy-variables"}]}]},"error-stop-statement":{"begin":"(?i)\\\\s*\\\\b(error\\\\s+stop)\\\\b","beginCaptures":{"1":{"name":"keyword.control.errorstop.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.errorstop.fortran","patterns":[{"include":"#constants"},{"include":"#string-operators"},{"include":"#variable"},{"include":"#invalid-character"}]},"event-statement":{"begin":"(?i)\\\\b(event (?:post|wait))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.event.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.event.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"execution-statements":{"patterns":[{"include":"#allocate-statement"},{"include":"#deallocate-statement"},{"include":"#IO-statements"},{"include":"#nullify-statement"}]},"exit-statement":{"begin":"(?i)\\\\s*\\\\b(exit)\\\\b","beginCaptures":{"1":{"name":"keyword.control.exit.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.exit.fortran","patterns":[]},"explicit-interface-block-construct":{"begin":"(?i)\\\\b(interface)\\\\b(?=\\\\s*[\\\\n!;])","beginCaptures":{"1":{"name":"keyword.control.interface.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran.modern"}},"name":"meta.interface.explicit.fortran","patterns":[{"include":"$base"}]},"extends-attribute":{"begin":"(?i)\\\\s*\\\\b(extends)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.extends.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[{"match":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","name":"entity.name.type.fortran"}]},"external-attribute":{"captures":{"1":{"name":"storage.modifier.external.fortran"}},"match":"(?i)\\\\s*\\\\b(external)\\\\b"},"fail-image-statement":{"captures":{"1":{"name":"keyword.control.fail-image.fortran"}},"match":"\\\\b(fail image)\\\\b","name":"meta.statement.fail-image.fortran"},"forall-construct":{"applyEndPatternLast":1,"begin":"(?i)\\\\b(forall)\\\\b","beginCaptures":{"1":{"name":"keyword.control.forall.fortran"}},"end":"(?<!\\\\G)","patterns":[{"begin":"(?i)\\\\G(?!\\\\s*[\\\\n!;])","end":"(?<!\\\\G)","name":"meta.loop-control.fortran","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},{"begin":"(?<=\\\\))(?=\\\\s*[\\\\n!;])","end":"(?i)\\\\b(end\\\\s*forall)\\\\b","endCaptures":{"1":{"name":"keyword.control.endforall.fortran"}},"name":"meta.block.forall.fortran","patterns":[{"include":"$base"}]},{"begin":"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])","end":"\\\\n","name":"meta.statement.control.forall.fortran","patterns":[{"include":"$base"}]}]},"form-team-statement":{"begin":"(?i)\\\\b(form team)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.form-team.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.form-team.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"format-descriptor":{"begin":"\\\\(/","beginCaptures":{"0":{"name":"punctuation.bracket.left.fortran"}},"contentName":"meta.format-descriptor.fortran","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.bracket.right.fortran"}},"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#parentheses"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"format-descriptors":{"patterns":[{"captures":{"1":{"name":"keyword.other.format-descriptor.fortran"}},"match":"(?i)(?:\\\\b|(?<=\\\\d)|(?<=P))(EN|ES|EX|DT|DC|DP|RC|RD|RN|RP|RU|RZ|BN|BZ|SP|SS|TL|TR|[ABD-GILOPQSTXZ])(?=$|[^A-Z_a-z]|[D-G](?i))"},{"match":"/","name":"keyword.operator.format.newline.fortran"},{"match":":","name":"keyword.operator.format.separator.fortran"},{"match":"[$\\\\\\\\]","name":"keyword.other.format-descriptor.nonstandard.fortran"},{"match":"(?i)(?:\\\\b|(?<=\\\\d))\\\\d+H","name":"keyword.other.format-descriptor.legacy.fortran"}]},"format-parentheses":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#comments"},{"include":"#line-continuation-operator"},{"match":"(?:\\\\b|[-+])\\\\d+(?=[A-Za-z])","name":"constant.numeric.fortran"},{"include":"#format-descriptors"},{"include":"#format-parentheses"},{"include":"#parentheses-common"}]},"function-definition":{"begin":"(?i)(?=([^\\\\n!\\"':;](?!\\\\bend)(?!\\\\bsubroutine\\\\b))*\\\\bfunction\\\\b)","end":"(?=[\\\\n!;])","name":"meta.function.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bfunction\\\\b))","end":"(?i)(?=\\\\bfunction\\\\b)","name":"meta.attribute-list.function.fortran","patterns":[{"include":"#elemental-attribute"},{"include":"#module-attribute"},{"include":"#pure-attribute"},{"include":"#recursive-attribute"},{"include":"#types"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\b(function)\\\\b","beginCaptures":{"1":{"name":"keyword.other.function.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*function)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endfunction.fortran"},"2":{"name":"entity.name.function.fortran"},"3":{"name":"keyword.other.endfunction.fortran"},"4":{"name":"invalid.error.function.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.function.first-line.fortran","patterns":[{"include":"#dummy-variable-list"},{"include":"#result-statement"},{"include":"#language-binding-attribute"}]},{"begin":"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","name":"meta.block.specification.function.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*function\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]}]},"generic-interface-block-construct":{"begin":"(?i)\\\\b(interface)\\\\b","beginCaptures":{"1":{"name":"keyword.control.interface.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.interface.generic.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(assignment)\\\\s*(\\\\()\\\\s*(?:(=)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.assignment.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"keyword.operator.assignment.fortran"},"4":{"name":"invalid.error.generic-interface.fortran"},"5":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.assignment.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.operator.assignment.fortran"},"5":{"name":"invalid.error.generic-interface-end.fortran"},"6":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(operator)\\\\s*(\\\\()\\\\s*(?:(\\\\.[a-z]+\\\\.|==|/=|>=|[<>]|<=|[-+/]|//|\\\\*\\\\*?)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.operator.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"keyword.operator.fortran"},"4":{"name":"invalid.error.generic-interface-block-op.fortran"},"5":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\3)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.operator.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.operator.fortran"},"5":{"name":"invalid.error.generic-interface-block-op-end.fortran"},"6":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(?:(read)|(write))\\\\s*(\\\\()\\\\s*(?:(formatted)|(unformatted)|(\\\\S.*))\\\\s*(\\\\))","beginCaptures":{"1":{"name":"keyword.other.read.fortran"},"2":{"name":"keyword.other.write.fortran"},"3":{"name":"punctuation.parentheses.left.fortran"},"4":{"name":"keyword.other.formatted.fortran"},"5":{"name":"keyword.other.unformatted.fortran"},"6":{"name":"invalid.error.generic-interface-block.fortran"},"7":{"name":"punctuation.parentheses.right.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(?:(\\\\2)|(\\\\3))\\\\b\\\\s*(\\\\()\\\\s*(?:(\\\\4)|(\\\\5)|(\\\\S.*))\\\\s*(\\\\)))?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"keyword.other.read.fortran"},"3":{"name":"keyword.other.write.fortran"},"4":{"name":"punctuation.parentheses.left.fortran"},"5":{"name":"keyword.other.formatted.fortran"},"6":{"name":"keyword.other.unformatted.fortran"},"7":{"name":"invalid.error.generic-interface-block-end.fortran"},"8":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.fortran"}},"end":"(?i)\\\\b(end\\\\s*interface)\\\\b(?:\\\\s*\\\\b(\\\\1)\\\\b)?","endCaptures":{"1":{"name":"keyword.control.endinterface.fortran"},"2":{"name":"entity.name.function.fortran"}},"patterns":[{"include":"#interface-procedure-statement"},{"include":"$base"}]}]},"goto-statement":{"begin":"(?i)\\\\s*\\\\b(go\\\\s*to)\\\\b","beginCaptures":{"1":{"name":"keyword.control.goto.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.goto.fortran","patterns":[{"include":"$base"}]},"if-construct":{"patterns":[{"begin":"(?i)\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#logical-control-expression"},{"begin":"(?i)\\\\s*\\\\b(then)\\\\b","beginCaptures":{"1":{"name":"keyword.control.then.fortran"}},"contentName":"meta.block.if.fortran","end":"(?i)\\\\b(end\\\\s*if)\\\\b","endCaptures":{"1":{"name":"keyword.control.endif.fortran"}},"patterns":[{"begin":"(?i)\\\\b(else\\\\s*if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.elseif.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"captures":{"1":{"name":"keyword.control.then.fortran"},"2":{"name":"meta.label.elseif.fortran"}},"match":"(?i)\\\\b(then)\\\\b(\\\\s*[a-z]\\\\w*)?"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.else.fortran"}},"end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"begin":"(?!(\\\\s*([\\\\n!;])))","end":"\\\\s*(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"meta.label.else.fortran"},"2":{"name":"invalid.error.label.else.fortran"}},"match":"(?i)\\\\s*([a-z]\\\\w*)?\\\\s*\\\\b(\\\\w*)\\\\b"},{"include":"#invalid-word"}]},{"begin":"(?i)(?!\\\\b(end\\\\s*if)\\\\b)","end":"(?i)(?=\\\\b(end\\\\s*if)\\\\b)","patterns":[{"include":"$base"}]}]},{"include":"$base"}]},{"begin":"(?i)(?=\\\\s*[a-z])","end":"(?=[\\\\n!;])","name":"meta.statement.control.if.fortran","patterns":[{"include":"$base"}]}]}]},"image-control-statement":{"patterns":[{"include":"#sync-all-statement"},{"include":"#sync-statement"},{"include":"#event-statement"},{"include":"#form-team-statement"},{"include":"#fail-image-statement"}]},"implicit-statement":{"begin":"(?i)\\\\b(implicit)\\\\b","beginCaptures":{"1":{"name":"keyword.other.implicit.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.implicit.fortran","patterns":[{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\s*\\\\b(none)\\\\b"},{"include":"$base"}]},"import-statement":{"begin":"(?i)\\\\b(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.include.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*(?:(::)|(?=[a-z]))","beginCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#name-list"}]},{"begin":"\\\\G\\\\s*(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.other.all.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(all)\\\\b"},{"captures":{"1":{"name":"keyword.other.none.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(none)\\\\b"},{"begin":"(?i)\\\\G\\\\s*\\\\b(only)\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.other.only.fortran"},"2":{"name":"keyword.other.colon.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#name-list"}]},{"include":"#invalid-word"}]}]},"include-statement":{"begin":"(?i)\\\\b(include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.include.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.include.fortran","patterns":[{"include":"#string-constant"},{"include":"#invalid-character"}]},"intent-attribute":{"begin":"(?i)\\\\s*\\\\b(intent)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.intent.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))|(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[{"captures":{"1":{"name":"storage.modifier.intent.in-out.fortran"},"2":{"name":"storage.modifier.intent.in.fortran"},"3":{"name":"storage.modifier.intent.out.fortran"}},"match":"(?i)\\\\b(?:(in\\\\s*out)|(in)|(out))\\\\b"},{"include":"#invalid-word"}]},"interface-block-constructs":{"patterns":[{"include":"#abstract-interface-block-construct"},{"include":"#explicit-interface-block-construct"},{"include":"#generic-interface-block-construct"}]},"interface-procedure-statement":{"begin":"(?i)(?=[^\\\\n!\\"';]*\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.statement.procedure.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bprocedure\\\\b))","end":"(?i)(?=\\\\bprocedure\\\\b)","name":"meta.attribute-list.interface.fortran","patterns":[{"include":"#module-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"match":"\\\\G\\\\s*(::)"},{"include":"#procedure-name-list"}]}]},"intrinsic-attribute":{"captures":{"1":{"name":"storage.modifier.intrinsic.fortran"}},"match":"(?i)\\\\s*\\\\b(intrinsic)\\\\b"},"intrinsic-functions":{"patterns":[{"begin":"(?i)\\\\b(acosh|asinh|atanh|bge|bgt|ble|blt|dshiftl|dshiftr|findloc|hypot|iall|iany|image_index|iparity|is_contiguous|lcobound|leadz|mask[lr]|merge_bits|norm2|num_images|parity|popcnt|poppar|shift[alr]|storage_size|this_image|trailz|ucobound)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(bessel_[jy][01n]|erf(c(_scaled)?)?|gamma|log_gamma)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(command_argument_count|extends_type_of|is_iostat_end|is_iostat_eor|new_line|same_type_as|selected_char_kind)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(ieee_(class|copy_sign|is_(finite|nan|negative|normal)|logb|next_after|rem|rint|scalb|selected_real_kind|support_(datatype|denormal|divide|inf|io|nan|rounding|sqrt|standard|underflow_control)|unordered|value))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(ieee_support_(flag|halting))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(c_(associated|funloc|loc|sizeof))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(compiler_(options|version))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(null)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b(achar|adjustl|adjustr|all|allocated|associated|any|bit_size|btest|ceiling|count|cshift|digits|dot_product|eoshift|epsilon|exponent|floor|fraction|huge|iachar|iand|ibclr|ibits|ibset|ieor|ior|ishftc?|kind|lbound|len_trim|logical|matmul|maxexponent|maxloc|maxval|merge|minexponent|minloc|minval|modulo|nearest|not|pack|precision|present|product|radix|range|repeat|reshape|rrspacing|scale|scan|selected_(int|real)_kind|set_exponent|shape|size|spacing|spread|sum|tiny|transfer|transpose|trim|ubound|unpack|verify)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\b([cdi]?abs|acos|[ad]int|[ad]nint|aimag|amax[01]|amin[01]|d?asin|d?atan|d?atan2|char|conjg|[cd]?cos|d?cosh|cmplx|dble|i?dim|dmax1|dmin1|dprod|[cd]?exp|float|ichar|idint|ifix|index|int|len|lge|lgt|lle|llt|[acd]?log|[ad]?log10|max[01]?|min[01]?|[ad]?mod|(id)?nint|real|[di]?sign|[cd]?sin|d?sinh|sngl|[cd]?sqrt|d?tan|d?tanh)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"support.function.intrinsic.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]}]},"intrinsic-subroutines":{"patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(date_and_time|mvbits|random_number|random_seed|system_clock)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(cpu_time)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(rounding|underflow)_mode)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ieee_([gs]et)_(flag|halting_mode|status))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(c_f_(p(?:|rocp)ointer))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(execute_command_line|get_command|get_command_argument|get_environment_variable|move_alloc)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]}]},"invalid-character":{"match":"(?i)[^\\\\n!;\\\\s]+","name":"invalid.error.character.fortran"},"invalid-word":{"match":"(?i)\\\\b\\\\w+\\\\b","name":"invalid.error.word.fortran"},"language-binding-attribute":{"begin":"(?i)\\\\s*\\\\b(bind)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.bind.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[{"match":"(?i)\\\\b(c)\\\\b","name":"variable.parameter.fortran"},{"include":"#dummy-variable"},{"include":"$base"}]},"line-continuation-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"match":"(?:^|(?<=;))\\\\s*(&)"},{"begin":"\\\\s*(&)","beginCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"contentName":"meta.line-continuation.fortran","end":"(?i)^(?:\\\\s*(&))?","endCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"patterns":[{"include":"#comments"},{"match":"\\\\S[^!]*","name":"invalid.error.line-cont.fortran"}]}]},"logical-constant":{"captures":{"1":{"name":"constant.language.logical.false.fortran"},"2":{"name":"constant.language.logical.true.fortran"}},"match":"(?i)\\\\s*(?:(\\\\.false\\\\.)|(\\\\.true\\\\.))"},"logical-control-expression":{"begin":"\\\\G(?=\\\\s*\\\\()","end":"(?<!\\\\G)","name":"meta.expression.control.logical.fortran","patterns":[{"include":"#parentheses"}]},"logical-operators":{"patterns":[{"match":"(?i)(\\\\s*\\\\.(and|eqv??|le|lt|ge|gt|ne|neqv|not|or)\\\\.)","name":"keyword.logical.fortran"},{"match":"(==|/=|>=|(?<!=)>|<=?)","name":"keyword.logical.fortran.modern"}]},"logical-type":{"patterns":[{"begin":"(?i)\\\\b(logical)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.logical.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.character.fortran"},"2":{"name":"keyword.operator.multiplication.fortran"},"3":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(logical)\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"module-attribute":{"captures":{"1":{"name":"storage.modifier.module.fortran"}},"match":"(?i)\\\\s*\\\\b(module)\\\\b(?=\\\\s*(?:[\\\\n!;]|[^\\\\n!\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b))"},"module-definition":{"begin":"(?i)(?=\\\\b(module)\\\\b)(?![^\\\\n!\\"';]*\\\\b(?:function|procedure|subroutine)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.module.fortran","patterns":[{"captures":{"1":{"name":"keyword.other.program.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(module)\\\\b"},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.class.module.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*module)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endmodule.fortran"},"2":{"name":"entity.name.class.module.fortran"},"3":{"name":"keyword.other.endmodule.fortran"},"4":{"name":"invalid.error.module-definition.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))","name":"meta.block.specification.module.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*module\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"name-list":{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!);])","patterns":[{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#brackets"},{"include":"#assignment-keyword"},{"include":"#operator-keyword"},{"include":"#variable"}]},"named-control-constructs":{"applyEndPatternLast":1,"begin":"(?i)([a-z]\\\\w*)\\\\s*(:)(?=\\\\s*(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)","contentName":"meta.named-construct.fortran.modern","end":"(?i)(?!\\\\s*\\\\b(?:associate|block(?!\\\\s*data)|critical|do|forall|if|select\\\\s*case|select\\\\s*type|select\\\\s*rank|where)\\\\b)(?:\\\\b(\\\\1)\\\\b)?([^\\\\n!;\\\\s]*?)?(?=\\\\s*[\\\\n!;])","endCaptures":{"1":{"name":"meta.label.end.name.fortran"},"2":{"name":"invalid.error.named-control-constructs.fortran.modern"}},"patterns":[{"include":"#unnamed-control-constructs"}]},"namelist-statement":{"begin":"(?i)\\\\b(namelist)\\\\b","beginCaptures":{"1":{"name":"keyword.control.namelist.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"$base"}]},"non-intrinsic-attribute":{"captures":{"1":{"name":"storage.modifier.non-intrinsic.fortran"}},"match":"(?i)\\\\s*\\\\b(non_intrinsic)\\\\b"},"non-overridable-attribute":{"captures":{"1":{"name":"storage.modifier.non-overridable.fortran"}},"match":"(?i)\\\\s*\\\\b(non_overridable)\\\\b"},"nopass-attribute":{"captures":{"1":{"name":"storage.modifier.nopass.fortran"}},"match":"(?i)\\\\s*\\\\b(nopass)\\\\b"},"nullify-statement":{"begin":"(?i)\\\\b(nullify)\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.nullify.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.nullify.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"numeric-constant":{"match":"(?i)[-+]?(\\\\b\\\\d+\\\\.?\\\\d*|\\\\.\\\\d+)(_\\\\w+|d[-+]?\\\\d+|e[-+]?\\\\d+(_\\\\w+)?)?(?![_a-z])","name":"constant.numeric.fortran"},"numeric-type":{"patterns":[{"begin":"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.type.complex.fortran"},"2":{"name":"storage.type.double.fortran"},"3":{"name":"storage.type.doublecomplex.fortran"},"4":{"name":"storage.type.integer.fortran"},"5":{"name":"storage.type.real.fortran"},"6":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#parentheses-dummy-variables"}]},{"captures":{"1":{"name":"storage.type.complex.fortran"},"2":{"name":"storage.type.double.fortran"},"3":{"name":"storage.type.doublecomplex.fortran"},"4":{"name":"storage.type.integer.fortran"},"5":{"name":"storage.type.real.fortran"},"6":{"name":"storage.type.dimension.fortran"},"7":{"name":"keyword.operator.multiplication.fortran"},"8":{"name":"constant.numeric.fortran"}},"match":"(?i)\\\\b(?:(complex)|(double\\\\s*precision)|(double\\\\s*complex)|(integer)|(real)|(dimension))\\\\b(?:\\\\s*(\\\\*)\\\\s*(\\\\d*))?"}]},"operator-keyword":{"begin":"(?i)\\\\s*\\\\b(operator)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.generic-spec.operator.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#arithmetic-operators"},{"include":"#logical-operators"},{"include":"#user-defined-operators"},{"include":"#invalid-word"}]},"operators":{"patterns":[{"include":"#arithmetic-operators"},{"include":"#assignment-operator"},{"include":"#derived-type-operators"},{"include":"#logical-operators"},{"include":"#pointer-operators"},{"include":"#string-operators"},{"include":"#user-defined-operators"}]},"optional-attribute":{"captures":{"1":{"name":"storage.modifier.optional.fortran"}},"match":"(?i)\\\\s*\\\\b(optional)\\\\b"},"parameter-attribute":{"captures":{"1":{"name":"storage.modifier.parameter.fortran"}},"match":"(?i)\\\\s*\\\\b(parameter)\\\\b"},"parentheses":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#parentheses-common"}]},"parentheses-common":{"patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#intrinsic-functions"},{"include":"#variable"}]},"parentheses-dummy-variables":{"begin":"\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#procedure-call-dummy-variable"},{"include":"#array-constructor"},{"include":"#parentheses"},{"include":"#parentheses-common"}]},"pass-attribute":{"patterns":[{"begin":"(?i)\\\\s*\\\\b(pass)\\\\s*\\\\(","beginCaptures":{"1":{"name":"storage.modifier.pass.fortran"}},"end":"\\\\)|(?=\\\\n)","patterns":[]},{"captures":{"1":{"name":"storage.modifier.pass.fortran"}},"match":"(?i)\\\\s*\\\\b(pass)\\\\b"}]},"pause-statement":{"begin":"(?i)\\\\s*\\\\b(pause)\\\\b","beginCaptures":{"1":{"name":"keyword.control.pause.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.pause.fortran","patterns":[{"include":"#constants"},{"include":"#invalid-character"}]},"pointer-attribute":{"captures":{"1":{"name":"storage.modifier.pointer.fortran"}},"match":"(?i)\\\\s*\\\\b(pointer)\\\\b"},"pointer-operators":{"match":"(=>)","name":"keyword.other.point.fortran"},"preprocessor":{"begin":"^\\\\s*(#:?)","beginCaptures":{"1":{"name":"keyword.control.preprocessor.indicator.fortran"}},"end":"\\\\n","name":"meta.preprocessor","patterns":[{"include":"#preprocessor-if-construct"},{"include":"#preprocessor-statements"}]},"preprocessor-arithmetic-operators":{"captures":{"1":{"name":"keyword.operator.subtraction.fortran"},"2":{"name":"keyword.operator.addition.fortran"},"3":{"name":"keyword.operator.division.fortran"},"4":{"name":"keyword.operator.multiplication.fortran"}},"match":"(-)|(\\\\+)|(/)|(\\\\*)"},"preprocessor-assignment-operator":{"match":"(?<!=)(=)(?!=)","name":"keyword.operator.assignment.preprocessor.fortran"},"preprocessor-comments":{"begin":"/\\\\*","end":"\\\\*/","name":"comment.preprocessor"},"preprocessor-constants":{"patterns":[{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-string-constant"}]},"preprocessor-define-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(define)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.define.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.macro.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-constants"},{"include":"#preprocessor-line-continuation-operator"}]},"preprocessor-defined-function":{"captures":{"1":{"name":"keyword.control.preprocessor.defined.fortran"}},"match":"(?i)\\\\b(defined)\\\\b"},"preprocessor-error-statement":{"begin":"(?i)\\\\G\\\\s*(error)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.error.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.macro.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"},{"include":"#preprocessor-line-continuation-operator"}]},"preprocessor-if-construct":{"patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.if.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.conditional.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-defined-function"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ifdef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.ifdef.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(ifndef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.ifndef.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(else)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.else.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(elif)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.elif.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"},{"include":"#cpp-numeric-constant"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"},{"include":"#preprocessor-defined-function"},{"include":"#preprocessor-line-continuation-operator"}]},{"begin":"(?i)\\\\G\\\\s*\\\\b(endif)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.endif.fortran"}},"end":"(?=\\\\n)","patterns":[{"include":"#preprocessor-comments"}]}]},"preprocessor-include-statement":{"begin":"(?i)\\\\G\\\\s*(include)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.include.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.include.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.other.lt-gt.include.preprocessor.fortran"},{"include":"#line-continuation-operator"}]},"preprocessor-line-continuation-operator":{"begin":"\\\\s*(\\\\\\\\)","beginCaptures":{"1":{"name":"constant.character.escape.line-continuation.preprocessor.fortran"}},"end":"(?i)^"},"preprocessor-logical-operators":{"captures":{"1":{"name":"keyword.operator.logical.preprocessor.and.fortran"},"2":{"name":"keyword.operator.logical.preprocessor.equals.fortran"},"3":{"name":"keyword.operator.logical.preprocessor.not_equals.fortran"},"4":{"name":"keyword.operator.logical.preprocessor.or.fortran"},"5":{"name":"keyword.operator.logical.preprocessor.less_eq.fortran"},"6":{"name":"keyword.operator.logical.preprocessor.more_eq.fortran"},"7":{"name":"keyword.operator.logical.preprocessor.less.fortran"},"8":{"name":"keyword.operator.logical.preprocessor.more.fortran"},"9":{"name":"keyword.operator.logical.preprocessor.complementary.fortran"},"10":{"name":"keyword.operator.logical.preprocessor.xor.fortran"},"11":{"name":"keyword.operator.logical.preprocessor.bitand.fortran"},"12":{"name":"keyword.operator.logical.preprocessor.not.fortran"},"13":{"name":"keyword.operator.logical.preprocessor.bitor.fortran"}},"match":"(&&)|(==)|(!=)|(\\\\|\\\\|)|(<=)|(>=)|(<)|(>)|(~)|(\\\\^)|(&)|(!)|(\\\\|)","name":"keyword.operator.logical.preprocessor.fortran"},"preprocessor-operators":{"patterns":[{"include":"#preprocessor-line-continuation-operator"},{"include":"#preprocessor-logical-operators"},{"include":"#preprocessor-arithmetic-operators"}]},"preprocessor-pragma-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(pragma)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.pragma.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.pragma.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-string-constant"}]},"preprocessor-statements":{"patterns":[{"include":"#preprocessor-define-statement"},{"include":"#preprocessor-error-statement"},{"include":"#preprocessor-include-statement"},{"include":"#preprocessor-preprocessor-pragma-statement"},{"include":"#preprocessor-undefine-statement"}]},"preprocessor-string-constant":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.double.include.preprocessor.fortran"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.preprocessor.fortran"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.preprocessor.fortran"}},"name":"string.quoted.single.include.preprocessor.fortran"}]},"preprocessor-undefine-statement":{"begin":"(?i)\\\\G\\\\s*\\\\b(undef)\\\\b","beginCaptures":{"1":{"name":"keyword.control.preprocessor.undef.fortran"}},"end":"(?=\\\\n)","name":"meta.preprocessor.undef.fortran","patterns":[{"include":"#preprocessor-comments"},{"include":"#preprocessor-line-continuation-operator"}]},"private-attribute":{"captures":{"1":{"name":"storage.modifier.private.fortran"}},"match":"(?i)\\\\s*\\\\b(private)\\\\b"},"procedure-call-dummy-variable":{"match":"(?i)\\\\s*([a-z]\\\\w*)(?=\\\\s*=)(?!\\\\s*==)","name":"variable.parameter.dummy-variable.fortran.modern"},"procedure-definition":{"begin":"(?i)(?=[^\\\\n!\\"';]*\\\\bmodule\\\\s+procedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.procedure.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b(module\\\\s+procedure)\\\\b","beginCaptures":{"1":{"name":"keyword.other.procedure.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.procedure.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*procedure)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endprocedure.fortran"},"2":{"name":"entity.name.function.procedure.fortran"},"3":{"name":"keyword.other.endprocedure.fortran"},"4":{"name":"invalid.error.procedure-definition.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.first-line.fortran","patterns":[{"include":"#invalid-character"}]},{"begin":"(?i)(?!\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))","end":"(?i)(?=\\\\s*(?:contains\\\\b|end\\\\s*[\\\\n!;]|end\\\\s*procedure\\\\b))","name":"meta.block.specification.procedure.fortran","patterns":[{"include":"$self"}]},{"begin":"(?i)\\\\s*(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*procedure\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$self"}]}]}]}]},"procedure-name":{"captures":{"1":{"name":"entity.name.function.procedure.fortran"}},"match":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b"},"procedure-name-list":{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"begin":"(?!\\\\s*\\\\n)","end":"(,)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"punctuation.comma.fortran"}},"patterns":[{"include":"#procedure-name"},{"include":"#pointer-operators"}]}]},"procedure-specification-statement":{"begin":"(?i)(?=\\\\bprocedure\\\\b)","end":"(?=[\\\\n!;])","name":"meta.specification.procedure.fortran","patterns":[{"include":"#procedure-type"},{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.procedure.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#intent-attribute"},{"include":"#optional-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#invalid-word"}]}]},{"include":"#procedure-name-list"}]},"procedure-type":{"patterns":[{"begin":"(?i)\\\\b(procedure)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.type.procedure.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"contentName":"meta.type-spec.fortran","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#types"},{"include":"#procedure-name"}]},{"captures":{"1":{"name":"storage.type.procedure.fortran"}},"match":"(?i)\\\\b(procedure)\\\\b"}]},"program-definition":{"begin":"(?i)(?=\\\\b(program)\\\\b)","end":"(?=[\\\\n!;])","name":"meta.program.fortran","patterns":[{"captures":{"1":{"name":"keyword.control.program.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(program)\\\\b"},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.program.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*program)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.control.endprogram.fortran"},"2":{"name":"entity.name.program.fortran"},"3":{"name":"keyword.control.endprogram.fortran"},"4":{"name":"invalid.error.program-definition.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))","name":"meta.block.specification.program.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*program\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"protected-attribute":{"captures":{"1":{"name":"storage.modifier.protected.fortran"}},"match":"(?i)\\\\s*\\\\b(protected)\\\\b"},"public-attribute":{"captures":{"1":{"name":"storage.modifier.public.fortran"}},"match":"(?i)\\\\s*\\\\b(public)\\\\b"},"pure-attribute":{"captures":{"1":{"name":"storage.modifier.impure.fortran"},"2":{"name":"storage.modifier.pure.fortran"}},"match":"(?i)\\\\s*\\\\b(?:(impure)|(pure))\\\\b"},"recursive-attribute":{"captures":{"1":{"name":"storage.modifier.non_recursive.fortran"},"2":{"name":"storage.modifier.recursive.fortran"}},"match":"(?i)\\\\s*\\\\b(?:(non_recursive)|(recursive))\\\\b"},"result-statement":{"begin":"(?i)\\\\s*\\\\b(result)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.result.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"patterns":[{"include":"#dummy-variable"}]},"return-statement":{"begin":"(?i)\\\\s*\\\\b(return)\\\\b","beginCaptures":{"1":{"name":"keyword.control.return.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.return.fortran","patterns":[{"include":"#invalid-character"}]},"save-attribute":{"captures":{"1":{"name":"storage.modifier.save.fortran"}},"match":"(?i)\\\\s*\\\\b(save)\\\\b"},"select-case-construct":{"begin":"(?i)\\\\b(select\\\\s*case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectcase.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.case.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-rank-construct":{"begin":"(?i)\\\\b(select\\\\s*rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selectrank.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.rank.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(rank)\\\\b","beginCaptures":{"1":{"name":"keyword.control.rank.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"select-type-construct":{"begin":"(?i)\\\\b(select\\\\s*type)\\\\b","beginCaptures":{"1":{"name":"keyword.control.selecttype.fortran"}},"end":"(?i)\\\\b(end\\\\s*select)\\\\b","endCaptures":{"1":{"name":"keyword.control.endselect.fortran"}},"name":"meta.block.select.type.fortran","patterns":[{"include":"#parentheses"},{"begin":"(?i)\\\\b(?:(class)|(type))\\\\b","beginCaptures":{"1":{"name":"keyword.control.class.fortran"},"2":{"name":"keyword.control.type.fortran"}},"end":"(?i)(?=[\\\\n!;])","patterns":[{"captures":{"1":{"name":"keyword.control.default.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(default)\\\\b"},{"captures":{"1":{"name":"keyword.control.is.fortran"}},"match":"(?i)\\\\G\\\\s*\\\\b(is)\\\\b"},{"include":"#parentheses"},{"include":"#invalid-word"}]},{"include":"$base"}]},"sequence-attribute":{"captures":{"1":{"name":"storage.modifier.sequence.fortran"}},"match":"(?i)\\\\s*\\\\b(sequence)\\\\b"},"specification-statements":{"patterns":[{"include":"#attribute-specification-statement"},{"include":"#common-statement"},{"include":"#data-statement"},{"include":"#equivalence-statement"},{"include":"#implicit-statement"},{"include":"#namelist-statement"},{"include":"#use-statement"}]},"stop-statement":{"begin":"(?i)\\\\s*\\\\b(stop)\\\\b(?:\\\\s*\\\\b([a-z]\\\\w*)\\\\b)?","beginCaptures":{"1":{"name":"keyword.control.stop.fortran"},"2":{"name":"meta.label.stop.stop"}},"end":"(?=[\\\\n!;])","name":"meta.statement.control.stop.fortran","patterns":[{"include":"#constants"},{"include":"#string-operators"},{"include":"#invalid-character"}]},"string-constant":{"patterns":[{"applyEndPatternLast":1,"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.single.fortran","patterns":[{"match":"''","name":"constant.character.escape.apostrophe.fortran"}]},{"applyEndPatternLast":1,"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.fortran"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.fortran"}},"name":"string.quoted.double.fortran","patterns":[{"match":"\\"\\"","name":"constant.character.escape.quote.fortran"}]}]},"string-line-continuation-operator":{"begin":"(&)(?=\\\\s*\\\\n)","beginCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"end":"(?i)^(?:(?=\\\\s*[^!\\\\&\\\\s])|\\\\s*(&))","endCaptures":{"1":{"name":"keyword.operator.line-continuation.fortran"}},"patterns":[{"include":"#comments"},{"match":"\\\\S.*","name":"invalid.error.string-line-cont.fortran"}]},"string-operators":{"match":"(//)","name":"keyword.other.concatination.fortran"},"submodule-definition":{"begin":"(?i)(?=\\\\b(submodule)\\\\s*\\\\()","end":"(?=[\\\\n!;])","name":"meta.submodule.fortran","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b(submodule)\\\\s*(\\\\()\\\\s*(\\\\w+)","beginCaptures":{"1":{"name":"keyword.other.submodule.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"},"3":{"name":"entity.name.class.submodule.fortran"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.parentheses.left.fortran"}},"patterns":[]},{"applyEndPatternLast":1,"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.module.submodule.fortran"}},"end":"(?i)\\\\s*\\\\b(?:(end\\\\s*submodule)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endsubmodule.fortran"},"2":{"name":"entity.name.module.submodule.fortran"},"3":{"name":"keyword.other.endsubmodule.fortran"},"4":{"name":"invalid.error.submodule.fortran"}},"patterns":[{"begin":"\\\\G","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))","name":"meta.block.specification.submodule.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=\\\\s*end(?:\\\\s*[\\\\n!;]|\\\\s*submodule\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]},"subroutine-definition":{"begin":"(?i)(?=([^\\\\n!\\"':;](?!\\\\bend))*\\\\bsubroutine\\\\b)","end":"(?=[\\\\n!;])","name":"meta.subroutine.fortran","patterns":[{"begin":"(?i)(?=\\\\G\\\\s*(?!\\\\bsubroutine\\\\b))","end":"(?i)(?=\\\\bsubroutine\\\\b)","name":"meta.attribute-list.subroutine.fortran","patterns":[{"include":"#elemental-attribute"},{"include":"#module-attribute"},{"include":"#pure-attribute"},{"include":"#recursive-attribute"},{"include":"#invalid-word"}]},{"begin":"(?i)\\\\s*\\\\b(subroutine)\\\\b","beginCaptures":{"1":{"name":"keyword.other.subroutine.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(?i)\\\\G\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.function.subroutine.fortran"}},"end":"(?i)\\\\b(?:(end\\\\s*subroutine)(?:\\\\s+([_a-z]\\\\w*))?|(end))\\\\b\\\\s*([^\\\\n!;]+)?(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.other.endsubroutine.fortran"},"2":{"name":"entity.name.function.subroutine.fortran"},"3":{"name":"keyword.other.endsubroutine.fortran"},"4":{"name":"invalid.error.subroutine.fortran"}},"patterns":[{"begin":"\\\\G(?!\\\\s*[\\\\n!;])","end":"(?=[\\\\n!;])","name":"meta.first-line.fortran","patterns":[{"include":"#dummy-variable-list"},{"include":"#language-binding-attribute"}]},{"begin":"(?i)(?!\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","end":"(?i)(?=\\\\bend(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","name":"meta.block.specification.subroutine.fortran","patterns":[{"begin":"(?i)\\\\b(contains)\\\\b","beginCaptures":{"1":{"name":"keyword.control.contains.fortran"}},"end":"(?i)(?=end(?:\\\\s*[\\\\n!;]|\\\\s*subroutine\\\\b))","name":"meta.block.contains.fortran","patterns":[{"include":"$base"}]},{"include":"$base"}]}]}]}]},"sync-all-statement":{"begin":"(?i)\\\\b(sync (?:all|memory))(\\\\s*(?=\\\\())?","beginCaptures":{"1":{"name":"keyword.control.sync-all-memory.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.sync-all-memory.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"sync-statement":{"begin":"(?i)\\\\b(sync (?:images|team))\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.sync-images-team.fortran"},"2":{"name":"punctuation.parentheses.left.fortran"}},"end":"(?<!\\\\G)","endCaptures":{"1":{"name":"punctuation.parentheses.right.fortran"}},"name":"meta.statement.sync-images-team.fortran","patterns":[{"include":"#parentheses-dummy-variables"}]},"target-attribute":{"captures":{"1":{"name":"storage.modifier.target.fortran"}},"match":"(?i)\\\\s*\\\\b(target)\\\\b"},"type-specification-statements":{"begin":"(?i)(?=\\\\b(?:character|class|complex|double\\\\s*precision|double\\\\s*complex|integer|logical|real|type|dimension)\\\\b(?![^\\\\n!\\"':;]*\\\\bfunction\\\\b))","end":"(?=[\\\\n!);])","name":"meta.specification.type.fortran","patterns":[{"include":"#types"},{"begin":"(?=\\\\s*(,|::))","contentName":"meta.attribute-list.type-specification-statements.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)|^|(?<=&)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!\\\\&,;])","patterns":[{"include":"#access-attribute"},{"include":"#allocatable-attribute"},{"include":"#asynchronous-attribute"},{"include":"#codimension-attribute"},{"include":"#contiguous-attribute"},{"include":"#dimension-attribute"},{"include":"#external-attribute"},{"include":"#intent-attribute"},{"include":"#intrinsic-attribute"},{"include":"#language-binding-attribute"},{"include":"#optional-attribute"},{"include":"#parameter-attribute"},{"include":"#pointer-attribute"},{"include":"#protected-attribute"},{"include":"#save-attribute"},{"include":"#target-attribute"},{"include":"#value-attribute"},{"include":"#volatile-attribute"},{"include":"#invalid-word"}]}]},{"include":"#name-list"}]},"types":{"patterns":[{"include":"#character-type"},{"include":"#derived-type"},{"include":"#logical-type"},{"include":"#numeric-type"}]},"unnamed-control-constructs":{"patterns":[{"include":"#associate-construct"},{"include":"#block-construct"},{"include":"#critical-construct"},{"include":"#do-construct"},{"include":"#forall-construct"},{"include":"#if-construct"},{"include":"#select-case-construct"},{"include":"#select-type-construct"},{"include":"#select-rank-construct"},{"include":"#where-construct"}]},"use-statement":{"begin":"(?i)\\\\b(use)\\\\b","beginCaptures":{"1":{"name":"keyword.control.use.fortran"}},"end":"(?=[\\\\n!;])","name":"meta.statement.use.fortran","patterns":[{"begin":"(?=\\\\s*(,|::|\\\\())","contentName":"meta.attribute-list.namelist.fortran","end":"(::)|(?=[\\\\n!;])","endCaptures":{"1":{"name":"keyword.operator.double-colon.fortran"}},"patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!,;])","patterns":[{"include":"#intrinsic-attribute"},{"include":"#non-intrinsic-attribute"},{"include":"#invalid-word"}]}]},{"begin":"(?i)\\\\s*\\\\b([a-z]\\\\w*)\\\\b","beginCaptures":{"1":{"name":"entity.name.class.module.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"begin":"(,)","beginCaptures":{"1":{"name":"punctuation.comma.fortran"}},"end":"(?=::|[\\\\n!;])","patterns":[{"begin":"(?i)\\\\s*\\\\b(only\\\\s*:)","beginCaptures":{"1":{"name":"keyword.control.only.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#operator-keyword"},{"include":"$base"}]},{"begin":"(?i)(?=\\\\s*[a-z])","contentName":"meta.name-list.fortran","end":"(?=[\\\\n!;])","patterns":[{"include":"#operator-keyword"},{"include":"$base"}]}]}]}]},"user-defined-operators":{"captures":{"1":{"name":"keyword.operator.user-defined.fortran"}},"match":"(?i)\\\\s*(\\\\.[a-z]+\\\\.)"},"value-attribute":{"captures":{"1":{"name":"storage.modifier.value.fortran"}},"match":"(?i)\\\\s*\\\\b(value)\\\\b"},"variable":{"applyEndPatternLast":1,"begin":"(?i)\\\\b(?=[a-z])","end":"(?<!\\\\G)","name":"meta.parameter.fortran","patterns":[{"include":"#brackets"},{"include":"#derived-type-operators"},{"include":"#parentheses-dummy-variables"},{"include":"#word"}]},"volatile-attribute":{"captures":{"1":{"name":"storage.modifier.volatile.fortran"}},"match":"(?i)\\\\s*\\\\b(volatile)\\\\b"},"where-construct":{"patterns":[{"applyEndPatternLast":1,"begin":"(?i)\\\\b(where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.where.fortran"}},"end":"(?<!\\\\G)","patterns":[{"include":"#logical-control-expression"},{"begin":"(?<=\\\\))(?=\\\\s*[\\\\n!;])","end":"(?i)\\\\b(end\\\\s*where)\\\\b","endCaptures":{"1":{"name":"keyword.control.endwhere.fortran"}},"name":"meta.block.where.fortran","patterns":[{"begin":"(?i)\\\\s*\\\\b(else\\\\s*where)\\\\b","beginCaptures":{"1":{"name":"keyword.control.elsewhere.fortran"}},"end":"\\\\s*(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"captures":{"1":{"name":"meta.label.elsewhere.fortran"}},"match":"(?i)(\\\\s*[a-z]\\\\w*)?"},{"include":"#invalid-word"}]},{"include":"$base"}]},{"begin":"(?i)(?<=\\\\))(?!\\\\s*[\\\\n!;])","end":"\\\\n","name":"meta.statement.control.where.fortran","patterns":[{"include":"$base"}]}]}]},"while-attribute":{"begin":"(?i)\\\\G\\\\s*\\\\b(while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.fortran"}},"end":"(?=[\\\\n!;])","patterns":[{"include":"#parentheses"},{"include":"#invalid-word"}]},"word":{"patterns":[{"match":"(?i)(?:\\\\G|(?<=%))\\\\s*\\\\b([a-z]\\\\w*)\\\\b"}]}},"scopeName":"source.fortran.free","aliases":["f90","f95","f03","f08","f18"]}`))];export{e as default};
|
|
2
|
+
//# sourceMappingURL=_CYNrtFtB.js.map
|