| 1599 | `||$==="\r"||$===""||$==="|"||$==="&"||$===";"||$==="("||$===")"||$==="<"||$===">"||$==='"'||$==="'"||$==="$"||$==="`"||$==="{"||$==="}"||$==="["||$==="]")break;J8(q.L)}if(q.L.b===K)return null;let z=q.src.slice(_,q.L.i),Y=/^-?\d+$/.test(z)?"number":"word";return h8(q,Y,K,q.L.b,[])}function x3z(q){let K=BY(q.L);if(u8(q.L)!=="{")return null;let _=q.L.b;J8(q.L);let z=q.L.b,Y=q.L.b;while(xj(u8(q.L))||cv(u8(q.L)))J8(q.L);let $=q.L.b;if($===Y||u8(q.L)!=="."||u8(q.L,1)!==".")return r5(q.L,K),null;let A=q.L.b;J8(q.L),J8(q.L);let O=q.L.b,w=q.L.b;while(xj(u8(q.L))||cv(u8(q.L)))J8(q.L);let j=q.L.b;if(j===w||u8(q.L)!=="}")return r5(q.L,K),null;let H=q.L.b;J8(q.L);let J=q.L.b,M=tO6(q,Y,$),X=tO6(q,w,j),P=/^\d+$/.test(M),W=/^\d+$/.test(X);if(P!==W)return r5(q.L,K),null;if(!P&&(M.length!==1||X.length!==1))return r5(q.L,K),null;let D=P?"number":"word",f=W?"number":"word";return h8(q,"brace_expression",_,J,[h8(q,"{",_,z,[]),h8(q,D,Y,$,[]),h8(q,"..",A,O,[]),h8(q,f,w,j,[]),h8(q,"}",H,J,[])])}function I3z(q){if(u8(q.L)!=="{")return null;let K=q.L.b;J8(q.L);let _=q.L.b,z=[h8(q,"word",K,_,[])];while(q.L.i<q.L.len){let Y=u8(q.L);if(Y==="}"||Y===` |
| 1602 | `){O(),J8(q.L),$=q.L.b,A=q.L.i;continue}if(j==="$"){let H=u8(q.L,1);if(H==="("||H==="{"||cv(H)||vV6.has(H)||xj(H)){O();let J=Sr(q);if(J)Y.push(J);$=q.L.b,A=q.L.i;continue}if(H!=='"'&&H!==""){O();let J=q.L.b;J8(q.L),Y.push(h8(q,"$",J,q.L.b,[])),$=q.L.b,A=q.L.i;continue}}if(j==="`"){O();let H=Dm1(q);if(H)Y.push(H);$=q.L.b,A=q.L.i;continue}J8(q.L)}O();let w;if(u8(q.L)==='"'){let j=q.L.b;J8(q.L),w=h8(q,'"',j,q.L.b,[])}else w=h8(q,'"',q.L.b,q.L.b,[]);return Y.push(w),h8(q,"string",K,w.endIndex,Y)}function Sr(q){let K=u8(q.L,1),_=q.L.b;if(K==="("&&u8(q.L,2)==="("){J8(q.L),J8(q.L),J8(q.L);let A=h8(q,"$((",_,q.L.b,[]),O=Yo6(q,"))","var");mq(q.L);let w;if(u8(q.L)===")"&&u8(q.L,1)===")"){let j=q.L.b;J8(q.L),J8(q.L),w=h8(q,"))",j,q.L.b,[])}else w=h8(q,"))",q.L.b,q.L.b,[]);return h8(q,"arithmetic_expansion",_,w.endIndex,[A,...O,w])}if(K==="["){J8(q.L),J8(q.L);let A=h8(q,"$[",_,q.L.b,[]),O=Yo6(q,"]","var");mq(q.L);let w;if(u8(q.L)==="]"){let j=q.L.b;J8(q.L),w=h8(q,"]",j,q.L.b,[])}else w=h8(q,"]",q.L.b,q.L.b,[]);return h8(q,"arithmetic_expansion",_,w.endIndex,[A,...O,w])}if(K==="("){J8(q.L),J8(q.L);let A=h8(q,"$(",_,q.L.b,[]),O=Qv(q,")");mq(q.L);let w;if(u8(q.L)===")"){let j=q.L.b;J8(q.L),w=h8(q,")",j,q.L.b,[])}else w=h8(q,")",q.L.b,q.L.b,[]);if(O.length===1&&O[0].type==="redirected_statement"&&O[0].children.length===1&&O[0].children[0].type==="file_redirect")O=O[0].children;return h8(q,"command_substitution",_,w.endIndex,[A,...O,w])}if(K==="{"){J8(q.L),J8(q.L);let A=h8(q,"${",_,q.L.b,[]),O=u3z(q),w;if(u8(q.L)==="}"){let j=q.L.b;J8(q.L),w=h8(q,"}",j,q.L.b,[])}else w=h8(q,"}",q.L.b,q.L.b,[]);return h8(q,"expansion",_,w.endIndex,[A,...O,w])}J8(q.L);let z=q.L.b,Y=h8(q,"$",_,z,[]),$=u8(q.L);if($==="_"&&!MU(u8(q.L,1))){let A=q.L.b;J8(q.L);let O=h8(q,"special_variable_name",A,q.L.b,[]);return h8(q,"simple_expansion",_,q.L.b,[Y,O])}if(cv($)){let A=q.L.b;while(MU(u8(q.L)))J8(q.L);let O=h8(q,"variable_name",A,q.L.b,[]);return h8(q,"simple_expansion",_,q.L.b,[Y,O])}if(xj($)){let A=q.L.b;J8(q.L);let O=h8(q,"variable_name",A,q.L.b,[]);return h8(q,"simple_expansion",_,q.L.b,[Y,O])}if(vV6.has($)){let A=q.L.b;J8(q.L);let O=h8(q,"special_variable_name",A,q.L.b,[]);return h8(q,"simple_expansion",_,q.L.b,[Y,O])}return Y}function u3z(q){let K=[];mq(q.L);{let $=u8(q.L),A=u8(q.L,1);if($==="#"&&A==="!"&&u8(q.L,2)==="}")return J8(q.L),J8(q.L),K;if($==="!"&&A==="#"){let O=2;if(u8(q.L,O)==="#")O++;if(u8(q.L,O)===" ")O++;if(u8(q.L,O)==="}"){while(O-- >0)J8(q.L);return K}}}if(u8(q.L)==="#"){let $=q.L.b;J8(q.L),K.push(h8(q,"#",$,q.L.b,[]))}let _=u8(q.L);if((_==="!"||_==="="||_==="~")&&(cv(u8(q.L,1))||xj(u8(q.L,1)))){let $=q.L.b;J8(q.L),K.push(h8(q,_,$,q.L.b,[]))}if(mq(q.L),cv(u8(q.L))){let $=q.L.b;while(MU(u8(q.L)))J8(q.L);K.push(h8(q,"variable_name",$,q.L.b,[]))}else if(xj(u8(q.L))){let $=q.L.b;while(xj(u8(q.L)))J8(q.L);K.push(h8(q,"variable_name",$,q.L.b,[]))}else if(vV6.has(u8(q.L))){let $=q.L.b;J8(q.L),K.push(h8(q,"special_variable_name",$,q.L.b,[]))}if(u8(q.L)==="["){let $=K[K.length-1],A=q.L.b;J8(q.L);let O=h8(q,"[",A,q.L.b,[]),w=R3z(q);mq(q.L);let j=q.L.b;if(u8(q.L)==="]")J8(q.L);let H=h8(q,"]",j,q.L.b,[]);if($){let J=w?[$,O,w,H]:[$,O,H];K[K.length-1]=h8(q,"subscript",$.startIndex,q.L.b,J)}}mq(q.L);let z=u8(q.L);if((z==="*"||z==="@")&&u8(q.L,1)==="}"){let $=q.L.b;return J8(q.L),K.push(h8(q,z,$,q.L.b,[])),K}if(z==="@"&&cv(u8(q.L,1))){let $=q.L.b;J8(q.L),K.push(h8(q,"@",$,q.L.b,[]));while(MU(u8(q.L)))J8(q.L);return K}let Y=u8(q.L);if(Y===":"){let $=u8(q.L,1);if($===` |