lightfold
Version:
lightweight scaffolding and archiving utility CLI.
1 lines • 194 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).csso={})}(this,(function(e){"use strict";function t(e){return{prev:null,next:null,data:e}}function n(e,t,n){var r;return null!==a?(r=a,a=a.cursor,r.prev=t,r.next=n,r.cursor=e.cursor):r={prev:t,next:n,cursor:e.cursor},e.cursor=r,r}function r(e){var t=e.cursor;e.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=a,a=t}var a=null,i=function(){this.cursor=null,this.head=null,this.tail=null};i.createItem=t,i.prototype.createItem=t,i.prototype.updateCursors=function(e,t,n,r){for(var a=this.cursor;null!==a;)a.prev===e&&(a.prev=t),a.next===n&&(a.next=r),a=a.cursor},i.prototype.getSize=function(){for(var e=0,t=this.head;t;)e++,t=t.next;return e},i.prototype.fromArray=function(e){var n=null;this.head=null;for(var r=0;r<e.length;r++){var a=t(e[r]);null!==n?n.next=a:this.head=a,a.prev=n,n=a}return this.tail=n,this},i.prototype.toArray=function(){for(var e=this.head,t=[];e;)t.push(e.data),e=e.next;return t},i.prototype.toJSON=i.prototype.toArray,i.prototype.isEmpty=function(){return null===this.head},i.prototype.first=function(){return this.head&&this.head.data},i.prototype.last=function(){return this.tail&&this.tail.data},i.prototype.each=function(e,t){var a;void 0===t&&(t=this);for(var i=n(this,null,this.head);null!==i.next;)a=i.next,i.next=a.next,e.call(t,a.data,a,this);r(this)},i.prototype.forEach=i.prototype.each,i.prototype.eachRight=function(e,t){var a;void 0===t&&(t=this);for(var i=n(this,this.tail,null);null!==i.prev;)a=i.prev,i.prev=a.prev,e.call(t,a.data,a,this);r(this)},i.prototype.forEachRight=i.prototype.eachRight,i.prototype.nextUntil=function(e,t,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=n(this,null,e);null!==o.next&&(i=o.next,o.next=i.next,!t.call(a,i.data,i,this)););r(this)}},i.prototype.prevUntil=function(e,t,a){if(null!==e){var i;void 0===a&&(a=this);for(var o=n(this,e,null);null!==o.prev&&(i=o.prev,o.prev=i.prev,!t.call(a,i.data,i,this)););r(this)}},i.prototype.some=function(e,t){var n=this.head;for(void 0===t&&(t=this);null!==n;){if(e.call(t,n.data,n,this))return!0;n=n.next}return!1},i.prototype.map=function(e,t){var n=new i,r=this.head;for(void 0===t&&(t=this);null!==r;)n.appendData(e.call(t,r.data,r,this)),r=r.next;return n},i.prototype.filter=function(e,t){var n=new i,r=this.head;for(void 0===t&&(t=this);null!==r;)e.call(t,r.data,r,this)&&n.appendData(r.data),r=r.next;return n},i.prototype.clear=function(){this.head=null,this.tail=null},i.prototype.copy=function(){for(var e=new i,n=this.head;null!==n;)e.insert(t(n.data)),n=n.next;return e},i.prototype.prepend=function(e){return this.updateCursors(null,e,this.head,e),null!==this.head?(this.head.prev=e,e.next=this.head):this.tail=e,this.head=e,this},i.prototype.prependData=function(e){return this.prepend(t(e))},i.prototype.append=function(e){return this.insert(e)},i.prototype.appendData=function(e){return this.insert(t(e))},i.prototype.insert=function(e,t){if(null!=t)if(this.updateCursors(t.prev,e,t,e),null===t.prev){if(this.head!==t)throw new Error("before doesn't belong to list");this.head=e,t.prev=e,e.next=t,this.updateCursors(null,e)}else t.prev.next=e,e.prev=t.prev,t.prev=e,e.next=t;else this.updateCursors(this.tail,e,null,e),null!==this.tail?(this.tail.next=e,e.prev=this.tail):this.head=e,this.tail=e;return this},i.prototype.insertData=function(e,n){return this.insert(t(e),n)},i.prototype.remove=function(e){if(this.updateCursors(e,e.prev,e,e.next),null!==e.prev)e.prev.next=e.next;else{if(this.head!==e)throw new Error("item doesn't belong to list");this.head=e.next}if(null!==e.next)e.next.prev=e.prev;else{if(this.tail!==e)throw new Error("item doesn't belong to list");this.tail=e.prev}return e.prev=null,e.next=null,e},i.prototype.push=function(e){this.insert(t(e))},i.prototype.pop=function(){if(null!==this.tail)return this.remove(this.tail)},i.prototype.unshift=function(e){this.prepend(t(e))},i.prototype.shift=function(){if(null!==this.head)return this.remove(this.head)},i.prototype.prependList=function(e){return this.insertList(e,this.head)},i.prototype.appendList=function(e){return this.insertList(e)},i.prototype.insertList=function(e,t){return null===e.head||(null!=t?(this.updateCursors(t.prev,e.tail,t,e.head),null!==t.prev?(t.prev.next=e.head,e.head.prev=t.prev):this.head=e.head,t.prev=e.tail,e.tail.next=t):(this.updateCursors(this.tail,e.tail,null,e.head),null!==this.tail?(this.tail.next=e.head,e.head.prev=this.tail):this.head=e.head,this.tail=e.tail),e.head=null,e.tail=null),this},i.prototype.replace=function(e,t){"head"in t?this.insertList(t,e):this.insert(t,e),this.remove(e)};var o=i,s=function(e,t){var n=Object.create(SyntaxError.prototype),r=new Error;return n.name=e,n.message=t,Object.defineProperty(n,"stack",{get:function(){return(r.stack||"").replace(/^(.+\n){1,3}/,e+": "+t+"\n")}}),n};function l(e,t){function n(e,t){return r.slice(e,t).map((function(t,n){for(var r=String(e+n+1);r.length<l;)r=" "+r;return r+" |"+t})).join("\n")}var r=e.source.split(/\r\n?|\n|\f/),a=e.line,i=e.column,o=Math.max(1,a-t)-1,s=Math.min(a+t,r.length+1),l=Math.max(4,String(s).length)+1,c=0;(i+=(" ".length-1)*(r[a-1].substr(0,i-1).match(/\t/g)||[]).length)>100&&(c=i-60+3,i=58);for(var u=o;u<=s;u++)u>=0&&u<r.length&&(r[u]=r[u].replace(/\t/g," "),r[u]=(c>0&&r[u].length>c?"…":"")+r[u].substr(c,98)+(r[u].length>c+100-1?"…":""));return[n(o,a),new Array(i+l+2).join("-")+"^",n(a,s)].filter(Boolean).join("\n")}var c=function(e,t,n,r,a){var i=s("SyntaxError",e);return i.source=t,i.offset=n,i.line=r,i.column=a,i.sourceFragment=function(e){return l(i,isNaN(e)?0:e)},Object.defineProperty(i,"formattedMessage",{get:function(){return"Parse error: "+i.message+"\n"+l(i,2)}}),i.parseError={offset:n,line:r,column:a},i},u={EOF:0,Ident:1,Function:2,AtKeyword:3,Hash:4,String:5,BadString:6,Url:7,BadUrl:8,Delim:9,Number:10,Percentage:11,Dimension:12,WhiteSpace:13,CDO:14,CDC:15,Colon:16,Semicolon:17,Comma:18,LeftSquareBracket:19,RightSquareBracket:20,LeftParenthesis:21,RightParenthesis:22,LeftCurlyBracket:23,RightCurlyBracket:24,Comment:25},h=Object.keys(u).reduce((function(e,t){return e[u[t]]=t,e}),{}),d={TYPE:u,NAME:h};function p(e){return e>=48&&e<=57}function f(e){return e>=65&&e<=90}function m(e){return e>=97&&e<=122}function g(e){return f(e)||m(e)}function b(e){return e>=128}function y(e){return g(e)||b(e)||95===e}function k(e){return e>=0&&e<=8||11===e||e>=14&&e<=31||127===e}function v(e){return 10===e||13===e||12===e}function w(e){return v(e)||32===e||9===e}function x(e,t){return 92===e&&(!v(t)&&0!==t)}var S=new Array(128);A.Eof=128,A.WhiteSpace=130,A.Digit=131,A.NameStart=132,A.NonPrintable=133;for(var C=0;C<S.length;C++)switch(!0){case w(C):S[C]=A.WhiteSpace;break;case p(C):S[C]=A.Digit;break;case y(C):S[C]=A.NameStart;break;case k(C):S[C]=A.NonPrintable;break;default:S[C]=C||A.Eof}function A(e){return e<128?S[e]:A.NameStart}var z={isDigit:p,isHexDigit:function(e){return p(e)||e>=65&&e<=70||e>=97&&e<=102},isUppercaseLetter:f,isLowercaseLetter:m,isLetter:g,isNonAscii:b,isNameStart:y,isName:function(e){return y(e)||p(e)||45===e},isNonPrintable:k,isNewline:v,isWhiteSpace:w,isValidEscape:x,isIdentifierStart:function(e,t,n){return 45===e?y(t)||45===t||x(t,n):!!y(e)||92===e&&x(e,t)},isNumberStart:function(e,t,n){return 43===e||45===e?p(t)?2:46===t&&p(n)?3:0:46===e?p(t)?2:0:p(e)?1:0},isBOM:function(e){return 65279===e||65534===e?1:0},charCodeCategory:A},P=z.isDigit,L=z.isHexDigit,T=z.isUppercaseLetter,E=z.isName,O=z.isWhiteSpace,D=z.isValidEscape;function R(e,t){return t<e.length?e.charCodeAt(t):0}function I(e,t,n){return 13===n&&10===R(e,t+1)?2:1}function M(e,t,n){var r=e.charCodeAt(t);return T(r)&&(r|=32),r===n}function N(e,t){for(;t<e.length&&P(e.charCodeAt(t));t++);return t}function B(e,t){if(L(R(e,(t+=2)-1))){for(var n=Math.min(e.length,t+5);t<n&&L(R(e,t));t++);var r=R(e,t);O(r)&&(t+=I(e,t,r))}return t}var j={consumeEscaped:B,consumeName:function(e,t){for(;t<e.length;t++){var n=e.charCodeAt(t);if(!E(n)){if(!D(n,R(e,t+1)))break;t=B(e,t)-1}}return t},consumeNumber:function(e,t){var n=e.charCodeAt(t);if(43!==n&&45!==n||(n=e.charCodeAt(t+=1)),P(n)&&(t=N(e,t+1),n=e.charCodeAt(t)),46===n&&P(e.charCodeAt(t+1))&&(n=e.charCodeAt(t+=2),t=N(e,t)),M(e,t,101)){var r=0;45!==(n=e.charCodeAt(t+1))&&43!==n||(r=1,n=e.charCodeAt(t+2)),P(n)&&(t=N(e,t+1+r+1))}return t},consumeBadUrlRemnants:function(e,t){for(;t<e.length;t++){var n=e.charCodeAt(t);if(41===n){t++;break}D(n,R(e,t+1))&&(t=B(e,t))}return t},cmpChar:M,cmpStr:function(e,t,n,r){if(n-t!==r.length)return!1;if(t<0||n>e.length)return!1;for(var a=t;a<n;a++){var i=e.charCodeAt(a),o=r.charCodeAt(a-t);if(T(i)&&(i|=32),i!==o)return!1}return!0},getNewlineLength:I,findWhiteSpaceStart:function(e,t){for(;t>=0&&O(e.charCodeAt(t));t--);return t+1},findWhiteSpaceEnd:function(e,t){for(;t<e.length&&O(e.charCodeAt(t));t++);return t}},_=d.TYPE,q=d.NAME,W=j.cmpStr,F=_.EOF,U=_.WhiteSpace,Y=_.Comment,H=function(){this.offsetAndType=null,this.balance=null,this.reset()};H.prototype={reset:function(){this.eof=!1,this.tokenIndex=-1,this.tokenType=0,this.tokenStart=this.firstCharOffset,this.tokenEnd=this.firstCharOffset},lookupType:function(e){return(e+=this.tokenIndex)<this.tokenCount?this.offsetAndType[e]>>24:F},lookupOffset:function(e){return(e+=this.tokenIndex)<this.tokenCount?16777215&this.offsetAndType[e-1]:this.source.length},lookupValue:function(e,t){return(e+=this.tokenIndex)<this.tokenCount&&W(this.source,16777215&this.offsetAndType[e-1],16777215&this.offsetAndType[e],t)},getTokenStart:function(e){return e===this.tokenIndex?this.tokenStart:e>0?e<this.tokenCount?16777215&this.offsetAndType[e-1]:16777215&this.offsetAndType[this.tokenCount]:this.firstCharOffset},getRawLength:function(e,t){var n,r=e,a=16777215&this.offsetAndType[Math.max(r-1,0)];e:for(;r<this.tokenCount&&!((n=this.balance[r])<e);r++)switch(t(this.offsetAndType[r]>>24,this.source,a)){case 1:break e;case 2:r++;break e;default:a=16777215&this.offsetAndType[r],this.balance[n]===r&&(r=n)}return r-this.tokenIndex},isBalanceEdge:function(e){return this.balance[this.tokenIndex]<e},isDelim:function(e,t){return t?this.lookupType(t)===_.Delim&&this.source.charCodeAt(this.lookupOffset(t))===e:this.tokenType===_.Delim&&this.source.charCodeAt(this.tokenStart)===e},getTokenValue:function(){return this.source.substring(this.tokenStart,this.tokenEnd)},getTokenLength:function(){return this.tokenEnd-this.tokenStart},substrToCursor:function(e){return this.source.substring(e,this.tokenStart)},skipWS:function(){for(var e=this.tokenIndex,t=0;e<this.tokenCount&&this.offsetAndType[e]>>24===U;e++,t++);t>0&&this.skip(t)},skipSC:function(){for(;this.tokenType===U||this.tokenType===Y;)this.next()},skip:function(e){var t=this.tokenIndex+e;t<this.tokenCount?(this.tokenIndex=t,this.tokenStart=16777215&this.offsetAndType[t-1],t=this.offsetAndType[t],this.tokenType=t>>24,this.tokenEnd=16777215&t):(this.tokenIndex=this.tokenCount,this.next())},next:function(){var e=this.tokenIndex+1;e<this.tokenCount?(this.tokenIndex=e,this.tokenStart=this.tokenEnd,e=this.offsetAndType[e],this.tokenType=e>>24,this.tokenEnd=16777215&e):(this.tokenIndex=this.tokenCount,this.eof=!0,this.tokenType=F,this.tokenStart=this.tokenEnd=this.source.length)},dump:function(){var e=this.firstCharOffset;return Array.prototype.slice.call(this.offsetAndType,0,this.tokenCount).map((function(t,n){var r=e,a=16777215&t;return e=a,{idx:n,type:q[t>>24],chunk:this.source.substring(r,a),balance:this.balance[n]}}),this)}};var V=H;function K(e){return e}function G(e,t,n,r){var a,i;switch(e.type){case"Group":a=function(e,t,n,r){var a=" "===e.combinator||r?e.combinator:" "+e.combinator+" ",i=e.terms.map((function(e){return G(e,t,n,r)})).join(a);return(e.explicit||n)&&(i=(r||","===i[0]?"[":"[ ")+i+(r?"]":" ]")),i}(e,t,n,r)+(e.disallowEmpty?"!":"");break;case"Multiplier":return G(e.term,t,n,r)+t(0===(i=e).min&&0===i.max?"*":0===i.min&&1===i.max?"?":1===i.min&&0===i.max?i.comma?"#":"+":1===i.min&&1===i.max?"":(i.comma?"#":"")+(i.min===i.max?"{"+i.min+"}":"{"+i.min+","+(0!==i.max?i.max:"")+"}"),e);case"Type":a="<"+e.name+(e.opts?t(function(e){switch(e.type){case"Range":return" ["+(null===e.min?"-∞":e.min)+","+(null===e.max?"∞":e.max)+"]";default:throw new Error("Unknown node type `"+e.type+"`")}}(e.opts),e.opts):"")+">";break;case"Property":a="<'"+e.name+"'>";break;case"Keyword":a=e.name;break;case"AtKeyword":a="@"+e.name;break;case"Function":a=e.name+"(";break;case"String":case"Token":a=e.value;break;case"Comma":a=",";break;default:throw new Error("Unknown node type `"+e.type+"`")}return t(a,e)}var $=function(e,t){var n=K,r=!1,a=!1;return"function"==typeof t?n=t:t&&(r=Boolean(t.forceBraces),a=Boolean(t.compact),"function"==typeof t.decorate&&(n=t.decorate)),G(e,n,r,a)};function Q(e,t){var n=e&&e.loc&&e.loc[t];return n?{offset:n.offset,line:n.line,column:n.column}:null}var X=function(e,t){var n=s("SyntaxReferenceError",e+(t?" `"+t+"`":""));return n.reference=t,n},Z=function(e,t,n,r){var a=s("SyntaxMatchError",e),i=function(e){for(var t=e.tokens,n=e.longestMatch,r=n<t.length?t[n].node:null,a=-1,i=0,o="",s=0;s<t.length;s++)s===n&&(a=o.length),null!==r&&t[s].node===r&&(s<=n?i++:i=0),o+=t[s].value;return{node:r,css:o,mismatchOffset:-1===a?o.length:a,last:null===r||i>1}}(r),o=i.mismatchOffset||0,l=i.node||n,c=Q(l,"end"),u=i.last?c:Q(l,"start"),h=i.css;return a.rawMessage=e,a.syntax=t?$(t):"<generic>",a.css=h,a.mismatchOffset=o,a.loc={source:l&&l.loc&&l.loc.source||"<unknown>",start:u,end:c},a.line=u?u.line:void 0,a.column=u?u.column:void 0,a.offset=u?u.offset:void 0,a.message=e+"\n syntax: "+a.syntax+"\n value: "+(a.css||"<empty string>")+"\n --------"+new Array(a.mismatchOffset+1).join("-")+"^",a},J=Object.prototype.hasOwnProperty,ee=Object.create(null),te=Object.create(null);function ne(e,t){return t=t||0,e.length-t>=2&&45===e.charCodeAt(t)&&45===e.charCodeAt(t+1)}function re(e,t){if(t=t||0,e.length-t>=3&&45===e.charCodeAt(t)&&45!==e.charCodeAt(t+1)){var n=e.indexOf("-",t+2);if(-1!==n)return e.substring(t,n+1)}return""}var ae={keyword:function(e){if(J.call(ee,e))return ee[e];var t=e.toLowerCase();if(J.call(ee,t))return ee[e]=ee[t];var n=ne(t,0),r=n?"":re(t,0);return ee[e]=Object.freeze({basename:t.substr(r.length),name:t,vendor:r,prefix:r,custom:n})},property:function(e){if(J.call(te,e))return te[e];var t=e,n=e[0];"/"===n?n="/"===e[1]?"//":"/":"_"!==n&&"*"!==n&&"$"!==n&&"#"!==n&&"+"!==n&&"&"!==n&&(n="");var r=ne(t,n.length);if(!r&&(t=t.toLowerCase(),J.call(te,t)))return te[e]=te[t];var a=r?"":re(t,n.length),i=t.substr(0,n.length+a.length);return te[e]=Object.freeze({basename:t.substr(i.length),name:t.substr(n.length),hack:n,vendor:a,prefix:i,custom:r})},isCustomProperty:ne,vendorPrefix:re},ie="undefined"!=typeof Uint32Array?Uint32Array:Array,oe=function(e,t){return null===e||e.length<t?new ie(Math.max(t+1024,16384)):e},se=d.TYPE,le=z.isNewline,ce=z.isName,ue=z.isValidEscape,he=z.isNumberStart,de=z.isIdentifierStart,pe=z.charCodeCategory,fe=z.isBOM,me=j.cmpStr,ge=j.getNewlineLength,be=j.findWhiteSpaceEnd,ye=j.consumeEscaped,ke=j.consumeName,ve=j.consumeNumber,we=j.consumeBadUrlRemnants;function xe(e,t){function n(t){return t<o?e.charCodeAt(t):0}function r(){return h=ve(e,h),de(n(h),n(h+1),n(h+2))?(g=se.Dimension,void(h=ke(e,h))):37===n(h)?(g=se.Percentage,void h++):void(g=se.Number)}function a(){const t=h;return h=ke(e,h),me(e,t,h,"url")&&40===n(h)?34===n(h=be(e,h+1))||39===n(h)?(g=se.Function,void(h=t+4)):void function(){for(g=se.Url,h=be(e,h);h<e.length;h++){var t=e.charCodeAt(h);switch(pe(t)){case 41:return void h++;case pe.Eof:return;case pe.WhiteSpace:return 41===n(h=be(e,h))||h>=e.length?void(h<e.length&&h++):(h=we(e,h),void(g=se.BadUrl));case 34:case 39:case 40:case pe.NonPrintable:return h=we(e,h),void(g=se.BadUrl);case 92:if(ue(t,n(h+1))){h=ye(e,h)-1;break}return h=we(e,h),void(g=se.BadUrl)}}}():40===n(h)?(g=se.Function,void h++):void(g=se.Ident)}function i(t){for(t||(t=n(h++)),g=se.String;h<e.length;h++){var r=e.charCodeAt(h);switch(pe(r)){case t:return void h++;case pe.Eof:return;case pe.WhiteSpace:if(le(r))return h+=ge(e,h,r),void(g=se.BadString);break;case 92:if(h===e.length-1)break;var a=n(h+1);le(a)?h+=ge(e,h+1,a):ue(r,a)&&(h=ye(e,h)-1)}}}t||(t=new V);for(var o=(e=String(e||"")).length,s=oe(t.offsetAndType,o+1),l=oe(t.balance,o+1),c=0,u=fe(n(0)),h=u,d=0,p=0,f=0;h<o;){var m=e.charCodeAt(h),g=0;switch(l[c]=o,pe(m)){case pe.WhiteSpace:g=se.WhiteSpace,h=be(e,h+1);break;case 34:i();break;case 35:ce(n(h+1))||ue(n(h+1),n(h+2))?(g=se.Hash,h=ke(e,h+1)):(g=se.Delim,h++);break;case 39:i();break;case 40:g=se.LeftParenthesis,h++;break;case 41:g=se.RightParenthesis,h++;break;case 43:he(m,n(h+1),n(h+2))?r():(g=se.Delim,h++);break;case 44:g=se.Comma,h++;break;case 45:he(m,n(h+1),n(h+2))?r():45===n(h+1)&&62===n(h+2)?(g=se.CDC,h+=3):de(m,n(h+1),n(h+2))?a():(g=se.Delim,h++);break;case 46:he(m,n(h+1),n(h+2))?r():(g=se.Delim,h++);break;case 47:42===n(h+1)?(g=se.Comment,1===(h=e.indexOf("*/",h+2)+2)&&(h=e.length)):(g=se.Delim,h++);break;case 58:g=se.Colon,h++;break;case 59:g=se.Semicolon,h++;break;case 60:33===n(h+1)&&45===n(h+2)&&45===n(h+3)?(g=se.CDO,h+=4):(g=se.Delim,h++);break;case 64:de(n(h+1),n(h+2),n(h+3))?(g=se.AtKeyword,h=ke(e,h+1)):(g=se.Delim,h++);break;case 91:g=se.LeftSquareBracket,h++;break;case 92:ue(m,n(h+1))?a():(g=se.Delim,h++);break;case 93:g=se.RightSquareBracket,h++;break;case 123:g=se.LeftCurlyBracket,h++;break;case 125:g=se.RightCurlyBracket,h++;break;case pe.Digit:r();break;case pe.NameStart:a();break;case pe.Eof:break;default:g=se.Delim,h++}switch(g){case d:for(d=(p=l[f=16777215&p])>>24,l[c]=f,l[f++]=c;f<c;f++)l[f]===o&&(l[f]=c);break;case se.LeftParenthesis:case se.Function:l[c]=p,p=(d=se.RightParenthesis)<<24|c;break;case se.LeftSquareBracket:l[c]=p,p=(d=se.RightSquareBracket)<<24|c;break;case se.LeftCurlyBracket:l[c]=p,p=(d=se.RightCurlyBracket)<<24|c}s[c++]=g<<24|h}for(s[c]=se.EOF<<24|h,l[c]=o,l[o]=o;0!==p;)p=l[f=16777215&p],l[f]=o;return t.source=e,t.firstCharOffset=u,t.offsetAndType=s,t.tokenCount=c,t.balance=l,t.reset(),t.next(),t}Object.keys(d).forEach((function(e){xe[e]=d[e]})),Object.keys(z).forEach((function(e){xe[e]=z[e]})),Object.keys(j).forEach((function(e){xe[e]=j[e]}));var Se=xe,Ce=Se.isDigit,Ae=Se.cmpChar,ze=Se.TYPE,Pe=ze.Delim,Le=ze.WhiteSpace,Te=ze.Comment,Ee=ze.Ident,Oe=ze.Number,De=ze.Dimension;function Re(e,t){return null!==e&&e.type===Pe&&e.value.charCodeAt(0)===t}function Ie(e,t,n){for(;null!==e&&(e.type===Le||e.type===Te);)e=n(++t);return t}function Me(e,t,n,r){if(!e)return 0;var a=e.value.charCodeAt(t);if(43===a||45===a){if(n)return 0;t++}for(;t<e.value.length;t++)if(!Ce(e.value.charCodeAt(t)))return 0;return r+1}function Ne(e,t,n){var r=!1,a=Ie(e,t,n);if(null===(e=n(a)))return t;if(e.type!==Oe){if(!Re(e,43)&&!Re(e,45))return t;if(r=!0,a=Ie(n(++a),a,n),null===(e=n(a))&&e.type!==Oe)return 0}if(!r){var i=e.value.charCodeAt(0);if(43!==i&&45!==i)return 0}return Me(e,r?0:1,r,a)}var Be=Se.isHexDigit,je=Se.cmpChar,_e=Se.TYPE,qe=_e.Ident,We=_e.Delim,Fe=_e.Number,Ue=_e.Dimension;function Ye(e,t){return null!==e&&e.type===We&&e.value.charCodeAt(0)===t}function He(e,t){return e.value.charCodeAt(0)===t}function Ve(e,t,n){for(var r=t,a=0;r<e.value.length;r++){var i=e.value.charCodeAt(r);if(45===i&&n&&0!==a)return Ve(e,t+a+1,!1)>0?6:0;if(!Be(i))return 0;if(++a>6)return 0}return a}function Ke(e,t,n){if(!e)return 0;for(;Ye(n(t),63);){if(++e>6)return 0;t++}return t}var Ge=Se.isIdentifierStart,$e=Se.isHexDigit,Qe=Se.isDigit,Xe=Se.cmpStr,Ze=Se.consumeNumber,Je=Se.TYPE,et=["unset","initial","inherit"],tt=["calc(","-moz-calc(","-webkit-calc("];function nt(e,t){return t<e.length?e.charCodeAt(t):0}function rt(e,t){return Xe(e,0,e.length,t)}function at(e,t){for(var n=0;n<t.length;n++)if(rt(e,t[n]))return!0;return!1}function it(e,t){return t===e.length-2&&(92===e.charCodeAt(t)&&Qe(e.charCodeAt(t+1)))}function ot(e,t,n){if(e&&"Range"===e.type){var r=Number(void 0!==n&&n!==t.length?t.substr(0,n):t);if(isNaN(r))return!0;if(null!==e.min&&r<e.min)return!0;if(null!==e.max&&r>e.max)return!0}return!1}function st(e,t){var n=e.index,r=0;do{if(r++,e.balance<=n)break}while(e=t(r));return r}function lt(e){return function(t,n,r){return null===t?0:t.type===Je.Function&&at(t.value,tt)?st(t,n):e(t,n,r)}}function ct(e){return function(t){return null===t||t.type!==e?0:1}}function ut(e){return function(t,n,r){if(null===t||t.type!==Je.Dimension)return 0;var a=Ze(t.value,0);if(null!==e){var i=t.value.indexOf("\\",a),o=-1!==i&&it(t.value,i)?t.value.substring(a,i):t.value.substr(a);if(!1===e.hasOwnProperty(o.toLowerCase()))return 0}return ot(r,t.value,a)?0:1}}function ht(e){return"function"!=typeof e&&(e=function(){return 0}),function(t,n,r){return null!==t&&t.type===Je.Number&&0===Number(t.value)?1:e(t,n,r)}}var dt,pt={"ident-token":ct(Je.Ident),"function-token":ct(Je.Function),"at-keyword-token":ct(Je.AtKeyword),"hash-token":ct(Je.Hash),"string-token":ct(Je.String),"bad-string-token":ct(Je.BadString),"url-token":ct(Je.Url),"bad-url-token":ct(Je.BadUrl),"delim-token":ct(Je.Delim),"number-token":ct(Je.Number),"percentage-token":ct(Je.Percentage),"dimension-token":ct(Je.Dimension),"whitespace-token":ct(Je.WhiteSpace),"CDO-token":ct(Je.CDO),"CDC-token":ct(Je.CDC),"colon-token":ct(Je.Colon),"semicolon-token":ct(Je.Semicolon),"comma-token":ct(Je.Comma),"[-token":ct(Je.LeftSquareBracket),"]-token":ct(Je.RightSquareBracket),"(-token":ct(Je.LeftParenthesis),")-token":ct(Je.RightParenthesis),"{-token":ct(Je.LeftCurlyBracket),"}-token":ct(Je.RightCurlyBracket),string:ct(Je.String),ident:ct(Je.Ident),"custom-ident":function(e){if(null===e||e.type!==Je.Ident)return 0;var t=e.value.toLowerCase();return at(t,et)||rt(t,"default")?0:1},"custom-property-name":function(e){return null===e||e.type!==Je.Ident||45!==nt(e.value,0)||45!==nt(e.value,1)?0:1},"hex-color":function(e){if(null===e||e.type!==Je.Hash)return 0;var t=e.value.length;if(4!==t&&5!==t&&7!==t&&9!==t)return 0;for(var n=1;n<t;n++)if(!$e(e.value.charCodeAt(n)))return 0;return 1},"id-selector":function(e){return null===e||e.type!==Je.Hash?0:Ge(nt(e.value,1),nt(e.value,2),nt(e.value,3))?1:0},"an-plus-b":function(e,t){var n=0;if(!e)return 0;if(e.type===Oe)return Me(e,0,!1,n);if(e.type===Ee&&45===e.value.charCodeAt(0)){if(!Ae(e.value,1,110))return 0;switch(e.value.length){case 2:return Ne(t(++n),n,t);case 3:return 45!==e.value.charCodeAt(2)?0:(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n));default:return 45!==e.value.charCodeAt(2)?0:Me(e,3,!0,n)}}else if(e.type===Ee||Re(e,43)&&t(n+1).type===Ee){if(e.type!==Ee&&(e=t(++n)),null===e||!Ae(e.value,0,110))return 0;switch(e.value.length){case 1:return Ne(t(++n),n,t);case 2:return 45!==e.value.charCodeAt(1)?0:(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n));default:return 45!==e.value.charCodeAt(1)?0:Me(e,2,!0,n)}}else if(e.type===De){for(var r=e.value.charCodeAt(0),a=43===r||45===r?1:0,i=a;i<e.value.length&&Ce(e.value.charCodeAt(i));i++);return i===a?0:Ae(e.value,i,110)?i+1===e.value.length?Ne(t(++n),n,t):45!==e.value.charCodeAt(i+1)?0:i+2===e.value.length?(n=Ie(t(++n),n,t),Me(e=t(n),0,!0,n)):Me(e,i+2,!0,n):0}return 0},urange:function(e,t){var n=0;if(null===e||e.type!==qe||!je(e.value,0,117))return 0;if(null===(e=t(++n)))return 0;if(Ye(e,43))return null===(e=t(++n))?0:e.type===qe?Ke(Ve(e,0,!0),++n,t):Ye(e,63)?Ke(1,++n,t):0;if(e.type===Fe){if(!He(e,43))return 0;var r=Ve(e,1,!0);return 0===r?0:null===(e=t(++n))?n:e.type===Ue||e.type===Fe?He(e,45)&&Ve(e,1,!1)?n+1:0:Ke(r,n,t)}return e.type===Ue&&He(e,43)?Ke(Ve(e,1,!0),++n,t):0},"declaration-value":function(e,t){if(!e)return 0;var n=0,r=0,a=e.index;e:do{switch(e.type){case Je.BadString:case Je.BadUrl:break e;case Je.RightCurlyBracket:case Je.RightParenthesis:case Je.RightSquareBracket:if(e.balance>e.index||e.balance<a)break e;r--;break;case Je.Semicolon:if(0===r)break e;break;case Je.Delim:if("!"===e.value&&0===r)break e;break;case Je.Function:case Je.LeftParenthesis:case Je.LeftSquareBracket:case Je.LeftCurlyBracket:r++}if(n++,e.balance<=a)break}while(e=t(n));return n},"any-value":function(e,t){if(!e)return 0;var n=e.index,r=0;e:do{switch(e.type){case Je.BadString:case Je.BadUrl:break e;case Je.RightCurlyBracket:case Je.RightParenthesis:case Je.RightSquareBracket:if(e.balance>e.index||e.balance<n)break e}if(r++,e.balance<=n)break}while(e=t(r));return r},dimension:lt(ut(null)),angle:lt(ut({deg:!0,grad:!0,rad:!0,turn:!0})),decibel:lt(ut({db:!0})),frequency:lt(ut({hz:!0,khz:!0})),flex:lt(ut({fr:!0})),length:lt(ht(ut({px:!0,mm:!0,cm:!0,in:!0,pt:!0,pc:!0,q:!0,em:!0,ex:!0,ch:!0,rem:!0,vh:!0,vw:!0,vmin:!0,vmax:!0,vm:!0}))),resolution:lt(ut({dpi:!0,dpcm:!0,dppx:!0,x:!0})),semitones:lt(ut({st:!0})),time:lt(ut({s:!0,ms:!0})),percentage:lt((function(e,t,n){return null===e||e.type!==Je.Percentage||ot(n,e.value,e.value.length-1)?0:1})),zero:ht(),number:lt((function(e,t,n){if(null===e)return 0;var r=Ze(e.value,0);return r===e.value.length||it(e.value,r)?ot(n,e.value,r)?0:1:0})),integer:lt((function(e,t,n){if(null===e||e.type!==Je.Number)return 0;for(var r=43===e.value.charCodeAt(0)||45===e.value.charCodeAt(0)?1:0;r<e.value.length;r++)if(!Qe(e.value.charCodeAt(r)))return 0;return ot(n,e.value,r)?0:1})),"-ms-legacy-expression":(dt="expression",dt+="(",function(e,t){return null!==e&&rt(e.value,dt)?st(e,t):0})},ft=function(e,t,n){var r=s("SyntaxError",e);return r.input=t,r.offset=n,r.rawMessage=e,r.message=r.rawMessage+"\n "+r.input+"\n--"+new Array((r.offset||r.input.length)+1).join("-")+"^",r},mt=function(e){this.str=e,this.pos=0};mt.prototype={charCodeAt:function(e){return e<this.str.length?this.str.charCodeAt(e):0},charCode:function(){return this.charCodeAt(this.pos)},nextCharCode:function(){return this.charCodeAt(this.pos+1)},nextNonWsCode:function(e){return this.charCodeAt(this.findWsEnd(e))},findWsEnd:function(e){for(;e<this.str.length;e++){var t=this.str.charCodeAt(e);if(13!==t&&10!==t&&12!==t&&32!==t&&9!==t)break}return e},substringToPos:function(e){return this.str.substring(this.pos,this.pos=e)},eat:function(e){this.charCode()!==e&&this.error("Expect `"+String.fromCharCode(e)+"`"),this.pos++},peek:function(){return this.pos<this.str.length?this.str.charAt(this.pos++):""},error:function(e){throw new ft(e,this.str,this.pos)}};var gt=mt,bt=function(e){for(var t="function"==typeof Uint32Array?new Uint32Array(128):new Array(128),n=0;n<128;n++)t[n]=e(String.fromCharCode(n))?1:0;return t}((function(e){return/[a-zA-Z0-9\-]/.test(e)})),yt={" ":1,"&&":2,"||":3,"|":4};function kt(e){return e.substringToPos(e.findWsEnd(e.pos))}function vt(e){for(var t=e.pos;t<e.str.length;t++){var n=e.str.charCodeAt(t);if(n>=128||0===bt[n])break}return e.pos===t&&e.error("Expect a keyword"),e.substringToPos(t)}function wt(e){for(var t=e.pos;t<e.str.length;t++){var n=e.str.charCodeAt(t);if(n<48||n>57)break}return e.pos===t&&e.error("Expect a number"),e.substringToPos(t)}function xt(e){var t=e.str.indexOf("'",e.pos+1);return-1===t&&(e.pos=e.str.length,e.error("Expect an apostrophe")),e.substringToPos(t+1)}function St(e){var t,n=null;return e.eat(123),t=wt(e),44===e.charCode()?(e.pos++,125!==e.charCode()&&(n=wt(e))):n=t,e.eat(125),{min:Number(t),max:n?Number(n):0}}function Ct(e,t){var n=function(e){var t=null,n=!1;switch(e.charCode()){case 42:e.pos++,t={min:0,max:0};break;case 43:e.pos++,t={min:1,max:0};break;case 63:e.pos++,t={min:0,max:1};break;case 35:e.pos++,n=!0,t=123===e.charCode()?St(e):{min:1,max:0};break;case 123:t=St(e);break;default:return null}return{type:"Multiplier",comma:n,min:t.min,max:t.max,term:null}}(e);return null!==n?(n.term=t,n):t}function At(e){var t=e.peek();return""===t?null:{type:"Token",value:t}}function zt(e){var t,n=null;return e.eat(60),t=vt(e),40===e.charCode()&&41===e.nextCharCode()&&(e.pos+=2,t+="()"),91===e.charCodeAt(e.findWsEnd(e.pos))&&(kt(e),n=function(e){var t=null,n=null,r=1;return e.eat(91),45===e.charCode()&&(e.peek(),r=-1),-1==r&&8734===e.charCode()?e.peek():t=r*Number(wt(e)),kt(e),e.eat(44),kt(e),8734===e.charCode()?e.peek():(r=1,45===e.charCode()&&(e.peek(),r=-1),n=r*Number(wt(e))),e.eat(93),null===t&&null===n?null:{type:"Range",min:t,max:n}}(e)),e.eat(62),Ct(e,{type:"Type",name:t,opts:n})}function Pt(e,t){function n(e,t){return{type:"Group",terms:e,combinator:t,disallowEmpty:!1,explicit:!1}}for(t=Object.keys(t).sort((function(e,t){return yt[e]-yt[t]}));t.length>0;){for(var r=t.shift(),a=0,i=0;a<e.length;a++){var o=e[a];"Combinator"===o.type&&(o.value===r?(-1===i&&(i=a-1),e.splice(a,1),a--):(-1!==i&&a-i>1&&(e.splice(i,a-i,n(e.slice(i,a),r)),a=i+1),i=-1))}-1!==i&&t.length&&e.splice(i,a-i,n(e.slice(i,a),r))}return r}function Lt(e){for(var t,n=[],r={},a=null,i=e.pos;t=Tt(e);)"Spaces"!==t.type&&("Combinator"===t.type?(null!==a&&"Combinator"!==a.type||(e.pos=i,e.error("Unexpected combinator")),r[t.value]=!0):null!==a&&"Combinator"!==a.type&&(r[" "]=!0,n.push({type:"Combinator",value:" "})),n.push(t),a=t,i=e.pos);return null!==a&&"Combinator"===a.type&&(e.pos-=i,e.error("Unexpected combinator")),{type:"Group",terms:n,combinator:Pt(n,r)||" ",disallowEmpty:!1,explicit:!1}}function Tt(e){var t=e.charCode();if(t<128&&1===bt[t])return function(e){var t;return t=vt(e),40===e.charCode()?(e.pos++,{type:"Function",name:t}):Ct(e,{type:"Keyword",name:t})}(e);switch(t){case 93:break;case 91:return Ct(e,function(e){var t;return e.eat(91),t=Lt(e),e.eat(93),t.explicit=!0,33===e.charCode()&&(e.pos++,t.disallowEmpty=!0),t}(e));case 60:return 39===e.nextCharCode()?function(e){var t;return e.eat(60),e.eat(39),t=vt(e),e.eat(39),e.eat(62),Ct(e,{type:"Property",name:t})}(e):zt(e);case 124:return{type:"Combinator",value:e.substringToPos(124===e.nextCharCode()?e.pos+2:e.pos+1)};case 38:return e.pos++,e.eat(38),{type:"Combinator",value:"&&"};case 44:return e.pos++,{type:"Comma"};case 39:return Ct(e,{type:"String",value:xt(e)});case 32:case 9:case 10:case 13:case 12:return{type:"Spaces",value:kt(e)};case 64:return(t=e.nextCharCode())<128&&1===bt[t]?(e.pos++,{type:"AtKeyword",name:vt(e)}):At(e);case 42:case 43:case 63:case 35:case 33:break;case 123:if((t=e.nextCharCode())<48||t>57)return At(e);break;default:return At(e)}}function Et(e){var t=new gt(e),n=Lt(t);return t.pos!==e.length&&t.error("Unexpected input"),1===n.terms.length&&"Group"===n.terms[0].type&&(n=n.terms[0]),n}Et("[a&&<b>#|<'c'>*||e() f{2} /,(% g#{1,2} h{2,})]!");var Ot=Et,Dt=function(){};function Rt(e){return"function"==typeof e?e:Dt}var It=function(e,t,n){var r=Dt,a=Dt;if("function"==typeof t?r=t:t&&(r=Rt(t.enter),a=Rt(t.leave)),r===Dt&&a===Dt)throw new Error("Neither `enter` nor `leave` walker handler is set or both aren't a function");!function e(t){switch(r.call(n,t),t.type){case"Group":t.terms.forEach(e);break;case"Multiplier":e(t.term);break;case"Type":case"Property":case"Keyword":case"AtKeyword":case"Function":case"String":case"Token":case"Comma":break;default:throw new Error("Unknown type: "+t.type)}a.call(n,t)}(e)},Mt=new V,Nt={decorator:function(e){var t=null,n={len:0,node:null},r=[n],a="";return{children:e.children,node:function(n){var r=t;t=n,e.node.call(this,n),t=r},chunk:function(e){a+=e,n.node!==t?r.push({len:e.length,node:t}):n.len+=e.length},result:function(){return Bt(a,r)}}}};function Bt(e,t){var n=[],r=0,a=0,i=t?t[a].node:null;for(Se(e,Mt);!Mt.eof;){if(t)for(;a<t.length&&r+t[a].len<=Mt.tokenStart;)r+=t[a++].len,i=t[a].node;n.push({type:Mt.tokenType,value:Mt.getTokenValue(),index:Mt.tokenIndex,balance:Mt.balance[Mt.tokenIndex],node:i}),Mt.next()}return n}var jt={type:"Match"},_t={type:"Mismatch"},qt={type:"DisallowEmpty"};function Wt(e,t,n){return t===jt&&n===_t||e===jt&&t===jt&&n===jt?e:("If"===e.type&&e.else===_t&&t===jt&&(t=e.then,e=e.match),{type:"If",match:e,then:t,else:n})}function Ft(e){return e.length>2&&40===e.charCodeAt(e.length-2)&&41===e.charCodeAt(e.length-1)}function Ut(e){return"Keyword"===e.type||"AtKeyword"===e.type||"Function"===e.type||"Type"===e.type&&Ft(e.name)}function Yt(e){if("function"==typeof e)return{type:"Generic",fn:e};switch(e.type){case"Group":var t=function e(t,n,r){switch(t){case" ":for(var a=jt,i=n.length-1;i>=0;i--){a=Wt(l=n[i],a,_t)}return a;case"|":a=_t;var o=null;for(i=n.length-1;i>=0;i--){if(Ut(l=n[i])&&(null===o&&i>0&&Ut(n[i-1])&&(a=Wt({type:"Enum",map:o=Object.create(null)},jt,a)),null!==o)){var s=(Ft(l.name)?l.name.slice(0,-1):l.name).toLowerCase();if(s in o==!1){o[s]=l;continue}}o=null,a=Wt(l,jt,a)}return a;case"&&":if(n.length>5)return{type:"MatchOnce",terms:n,all:!0};for(a=_t,i=n.length-1;i>=0;i--){var l=n[i];c=n.length>1?e(t,n.filter((function(e){return e!==l})),!1):jt,a=Wt(l,c,a)}return a;case"||":if(n.length>5)return{type:"MatchOnce",terms:n,all:!1};for(a=r?jt:_t,i=n.length-1;i>=0;i--){var c;l=n[i];c=n.length>1?e(t,n.filter((function(e){return e!==l})),!0):jt,a=Wt(l,c,a)}return a}}(e.combinator,e.terms.map(Yt),!1);return e.disallowEmpty&&(t=Wt(t,qt,_t)),t;case"Multiplier":return function(e){var t=jt,n=Yt(e.term);if(0===e.max)n=Wt(n,qt,_t),(t=Wt(n,null,_t)).then=Wt(jt,jt,t),e.comma&&(t.then.else=Wt({type:"Comma",syntax:e},t,_t));else for(var r=e.min||1;r<=e.max;r++)e.comma&&t!==jt&&(t=Wt({type:"Comma",syntax:e},t,_t)),t=Wt(n,Wt(jt,jt,t),_t);if(0===e.min)t=Wt(jt,jt,t);else for(r=0;r<e.min-1;r++)e.comma&&t!==jt&&(t=Wt({type:"Comma",syntax:e},t,_t)),t=Wt(n,t,_t);return t}(e);case"Type":case"Property":return{type:e.type,name:e.name,syntax:e};case"Keyword":return{type:e.type,name:e.name.toLowerCase(),syntax:e};case"AtKeyword":return{type:e.type,name:"@"+e.name.toLowerCase(),syntax:e};case"Function":return{type:e.type,name:e.name.toLowerCase()+"(",syntax:e};case"String":return 3===e.value.length?{type:"Token",value:e.value.charAt(1),syntax:e}:{type:e.type,value:e.value.substr(1,e.value.length-2).replace(/\\'/g,"'"),syntax:e};case"Token":return{type:e.type,value:e.value,syntax:e};case"Comma":return{type:e.type,syntax:e};default:throw new Error("Unknown node type:",e.type)}}var Ht=jt,Vt=_t,Kt=qt,Gt=function(e,t){return"string"==typeof e&&(e=Ot(e)),{type:"MatchGraph",match:Yt(e),syntax:t||null,source:e}},$t=Object.prototype.hasOwnProperty,Qt=Ht,Xt=Vt,Zt=Kt,Jt=d.TYPE;function en(e){for(var t=null,n=null,r=e;null!==r;)n=r.prev,r.prev=t,t=r,r=n;return t}function tn(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++){var r=e.charCodeAt(n);if(r>=65&&r<=90&&(r|=32),r!==t.charCodeAt(n))return!1}return!0}function nn(e){return null===e||(e.type===Jt.Comma||e.type===Jt.Function||e.type===Jt.LeftParenthesis||e.type===Jt.LeftSquareBracket||e.type===Jt.LeftCurlyBracket||e.type===Jt.Delim)}function rn(e){return null===e||(e.type===Jt.RightParenthesis||e.type===Jt.RightSquareBracket||e.type===Jt.RightCurlyBracket||e.type===Jt.Delim)}function an(e,t,n){function r(){do{b++,g=b<e.length?e[b]:null}while(null!==g&&(g.type===Jt.WhiteSpace||g.type===Jt.Comment))}function a(t){var n=b+t;return n<e.length?e[n]:null}function i(e,t){return{nextState:e,matchStack:k,syntaxStack:u,thenStack:h,tokenIndex:b,prev:t}}function o(e){h={nextState:e,matchStack:k,syntaxStack:u,prev:h}}function s(e){d=i(e,d)}function l(){k={type:1,syntax:t.syntax,token:g,prev:k},r(),p=null,b>y&&(y=b)}function c(){k=2===k.type?k.prev:{type:3,syntax:u.syntax,token:k.token,prev:k},u=u.prev}var u=null,h=null,d=null,p=null,f=0,m=null,g=null,b=-1,y=0,k={type:0,syntax:null,token:null,prev:null};for(r();null===m&&++f<15e3;)switch(t.type){case"Match":if(null===h){if(null!==g&&(b!==e.length-1||"\\0"!==g.value&&"\\9"!==g.value)){t=Xt;break}m="Match";break}if((t=h.nextState)===Zt){if(h.matchStack===k){t=Xt;break}t=Qt}for(;h.syntaxStack!==u;)c();h=h.prev;break;case"Mismatch":if(null!==p&&!1!==p)(null===d||b>d.tokenIndex)&&(d=p,p=!1);else if(null===d){m="Mismatch";break}t=d.nextState,h=d.thenStack,u=d.syntaxStack,k=d.matchStack,b=d.tokenIndex,g=b<e.length?e[b]:null,d=d.prev;break;case"MatchGraph":t=t.match;break;case"If":t.else!==Xt&&s(t.else),t.then!==Qt&&o(t.then),t=t.match;break;case"MatchOnce":t={type:"MatchOnceBuffer",syntax:t,index:0,mask:0};break;case"MatchOnceBuffer":var v=t.syntax.terms;if(t.index===v.length){if(0===t.mask||t.syntax.all){t=Xt;break}t=Qt;break}if(t.mask===(1<<v.length)-1){t=Qt;break}for(;t.index<v.length;t.index++){var w=1<<t.index;if(0==(t.mask&w)){s(t),o({type:"AddMatchOnce",syntax:t.syntax,mask:t.mask|w}),t=v[t.index++];break}}break;case"AddMatchOnce":t={type:"MatchOnceBuffer",syntax:t.syntax,index:0,mask:t.mask};break;case"Enum":if(null!==g)if(-1!==(z=g.value.toLowerCase()).indexOf("\\")&&(z=z.replace(/\\[09].*$/,"")),$t.call(t.map,z)){t=t.map[z];break}t=Xt;break;case"Generic":var x=null!==u?u.opts:null,S=b+Math.floor(t.fn(g,a,x));if(!isNaN(S)&&S>b){for(;b<S;)l();t=Qt}else t=Xt;break;case"Type":case"Property":var C="Type"===t.type?"types":"properties",A=$t.call(n,C)?n[C][t.name]:null;if(!A||!A.match)throw new Error("Bad syntax reference: "+("Type"===t.type?"<"+t.name+">":"<'"+t.name+"'>"));if(!1!==p&&null!==g&&"Type"===t.type)if("custom-ident"===t.name&&g.type===Jt.Ident||"length"===t.name&&"0"===g.value){null===p&&(p=i(t,d)),t=Xt;break}u={syntax:t.syntax,opts:t.syntax.opts||null!==u&&u.opts||null,prev:u},k={type:2,syntax:t.syntax,token:k.token,prev:k},t=A.match;break;case"Keyword":var z=t.name;if(null!==g){var P=g.value;if(-1!==P.indexOf("\\")&&(P=P.replace(/\\[09].*$/,"")),tn(P,z)){l(),t=Qt;break}}t=Xt;break;case"AtKeyword":case"Function":if(null!==g&&tn(g.value,t.name)){l(),t=Qt;break}t=Xt;break;case"Token":if(null!==g&&g.value===t.value){l(),t=Qt;break}t=Xt;break;case"Comma":null!==g&&g.type===Jt.Comma?nn(k.token)?t=Xt:(l(),t=rn(g)?Xt:Qt):t=nn(k.token)||rn(g)?Qt:Xt;break;case"String":var L="";for(S=b;S<e.length&&L.length<t.value.length;S++)L+=e[S].value;if(tn(L,t.value)){for(;b<S;)l();t=Qt}else t=Xt;break;default:throw new Error("Unknown node type: "+t.type)}switch(f,m){case null:console.warn("[csstree-match] BREAK after 15000 iterations"),m="Maximum iteration number exceeded (please fill an issue on https://github.com/csstree/csstree/issues)",k=null;break;case"Match":for(;null!==u;)c();break;default:k=null}return{tokens:e,reason:m,iterations:f,match:k,longestMatch:y}}var on=function(e,t,n){var r=an(e,t,n||{});if(null===r.match)return r;var a=r.match,i=r.match={syntax:t.syntax||null,match:[]},o=[i];for(a=en(a).prev;null!==a;){switch(a.type){case 2:i.match.push(i={syntax:a.syntax,match:[]}),o.push(i);break;case 3:o.pop(),i=o[o.length-1];break;default:i.match.push({syntax:a.syntax||null,token:a.token.value,node:a.token.node})}a=a.prev}return r};function sn(e){function t(e){return null!==e&&("Type"===e.type||"Property"===e.type||"Keyword"===e.type)}var n=null;return null!==this.matched&&function r(a){if(Array.isArray(a.match)){for(var i=0;i<a.match.length;i++)if(r(a.match[i]))return t(a.syntax)&&n.unshift(a.syntax),!0}else if(a.node===e)return n=t(a.syntax)?[a.syntax]:[],!0;return!1}(this.matched),n}function ln(e,t,n){var r=sn.call(e,t);return null!==r&&r.some(n)}var cn={getTrace:sn,isType:function(e,t){return ln(this,e,(function(e){return"Type"===e.type&&e.name===t}))},isProperty:function(e,t){return ln(this,e,(function(e){return"Property"===e.type&&e.name===t}))},isKeyword:function(e){return ln(this,e,(function(e){return"Keyword"===e.type}))}};var un={matchFragments:function(e,t,n,r,a){var i=[];return null!==n.matched&&function n(s){if(null!==s.syntax&&s.syntax.type===r&&s.syntax.name===a){var l=function e(t){return"node"in t?t.node:e(t.match[0])}(s),c=function e(t){return"node"in t?t.node:e(t.match[t.match.length-1])}(s);e.syntax.walk(t,(function(e,t,n){if(e===l){var r=new o;do{if(r.appendData(t.data),t.data===c)break;t=t.next}while(null!==t);i.push({parent:n,nodes:r})}}))}Array.isArray(s.match)&&s.match.forEach(n)}(n.matched),i}},hn=Object.prototype.hasOwnProperty;function dn(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e&&e>=0}function pn(e){return Boolean(e)&&dn(e.offset)&&dn(e.line)&&dn(e.column)}function fn(e,t){return function(n,r){if(!n||n.constructor!==Object)return r(n,"Type of node should be an Object");for(var a in n){var i=!0;if(!1!==hn.call(n,a)){if("type"===a)n.type!==e&&r(n,"Wrong node type `"+n.type+"`, expected `"+e+"`");else if("loc"===a){if(null===n.loc)continue;if(n.loc&&n.loc.constructor===Object)if("string"!=typeof n.loc.source)a+=".source";else if(pn(n.loc.start)){if(pn(n.loc.end))continue;a+=".end"}else a+=".start";i=!1}else if(t.hasOwnProperty(a)){var s=0;for(i=!1;!i&&s<t[a].length;s++){var l=t[a][s];switch(l){case String:i="string"==typeof n[a];break;case Boolean:i="boolean"==typeof n[a];break;case null:i=null===n[a];break;default:"string"==typeof l?i=n[a]&&n[a].type===l:Array.isArray(l)&&(i=n[a]instanceof o)}}}else r(n,"Unknown field `"+a+"` for "+e+" node type");i||r(n,"Bad value for `"+e+"."+a+"`")}}for(var a in t)hn.call(t,a)&&!1===hn.call(n,a)&&r(n,"Field `"+e+"."+a+"` is missed")}}function mn(e,t){var n=t.structure,r={type:String,loc:!0},a={type:'"'+e+'"'};for(var i in n)if(!1!==hn.call(n,i)){for(var o=[],s=r[i]=Array.isArray(n[i])?n[i].slice():[n[i]],l=0;l<s.length;l++){var c=s[l];if(c===String||c===Boolean)o.push(c.name);else if(null===c)o.push("null");else if("string"==typeof c)o.push("<"+c+">");else{if(!Array.isArray(c))throw new Error("Wrong value `"+c+"` in `"+e+"."+i+"` structure definition");o.push("List")}}a[i]=o.join(" | ")}return{docs:a,check:fn(e,r)}}var gn=X,bn=Z,yn=Gt,kn=on,vn=function(e){var t={};if(e.node)for(var n in e.node)if(hn.call(e.node,n)){var r=e.node[n];if(!r.structure)throw new Error("Missed `structure` field in `"+n+"` node type definition");t[n]=mn(n,r)}return t},wn=yn("inherit | initial | unset"),xn=yn("inherit | initial | unset | <-ms-legacy-expression>");function Sn(e,t,n){var r={};for(var a in e)e[a].syntax&&(r[a]=n?e[a].syntax:$(e[a].syntax,{compact:t}));return r}function Cn(e,t,n){return{matched:e,iterations:n,error:t,getTrace:cn.getTrace,isType:cn.isType,isProperty:cn.isProperty,isKeyword:cn.isKeyword}}function An(e,t,n,r){var a,i=function(e,t){return"string"==typeof e?Bt(e,null):t.generate(e,Nt)}(n,e.syntax);return function(e){for(var t=0;t<e.length;t++)if("var("===e[t].value.toLowerCase())return!0;return!1}(i)?Cn(null,new Error("Matching for a tree with var() is not supported")):(r&&(a=kn(i,e.valueCommonSyntax,e)),r&&a.match||(a=kn(i,t.match,e)).match?Cn(a.match,null,a.iterations):Cn(null,new bn(a.reason,t.syntax,n,a),a.iterations))}var zn=function(e,t,n){if(this.valueCommonSyntax=wn,this.syntax=t,this.generic=!1,this.atrules={},this.properties={},this.types={},this.structure=n||vn(e),e){if(e.types)for(var r in e.types)this.addType_(r,e.types[r]);if(e.generic)for(var r in this.generic=!0,pt)this.addType_(r,pt[r]);if(e.atrules)for(var r in e.atrules)this.addAtrule_(r,e.atrules[r]);if(e.properties)for(var r in e.properties)this.addProperty_(r,e.properties[r])}};zn.prototype={structure:{},checkStructure:function(e){function t(e,t){r.push({node:e,message:t})}var n=this.structure,r=[];return this.syntax.walk(e,(function(e){n.hasOwnProperty(e.type)?n[e.type].check(e,t):t(e,"Unknown node type `"+e.type+"`")})),!!r.length&&r},createDescriptor:function(e,t,n){var r={type:t,name:n},a={type:t,name:n,syntax:null,match:null};return"function"==typeof e?a.match=yn(e,r):("string"==typeof e?Object.defineProperty(a,"syntax",{get:function(){return Object.defineProperty(a,"syntax",{value:Ot(e)}),a.syntax}}):a.syntax=e,Object.defineProperty(a,"match",{get:function(){return Object.defineProperty(a,"match",{value:yn(a.syntax,r)}),a.match}})),a},addAtrule_:function(e,t){this.atrules[e]={prelude:t.prelude?this.createDescriptor(t.prelude,"AtrulePrelude",e):null,descriptors:t.descriptors?Object.keys(t.descriptors).reduce((e,n)=>(e[n]=this.createDescriptor(t.descriptors[n],"AtruleDescriptor",n),e),{}):null}},addProperty_:function(e,t){this.properties[e]=this.createDescriptor(t,"Property",e)},addType_:function(e,t){this.types[e]=this.createDescriptor(t,"Type",e),t===pt["-ms-legacy-expression"]&&(this.valueCommonSyntax=xn)},matchAtrulePrelude:function(e,t){var n=ae.keyword(e),r=n.vendor?this.getAtrulePrelude(n.name)||this.getAtrulePrelude(n.basename):this.getAtrulePrelude(n.name);return r?An(this,r,t,!0):n.basename in this.atrules?Cn(null,new Error("At-rule `"+e+"` should not contain a prelude")):Cn(null,new gn("Unknown at-rule",e))},matchAtruleDescriptor:function(e,t,n){var r=ae.keyword(e),a=ae.keyword(t),i=r.vendor?this.atrules[r.name]||this.atrules[r.basename]:this.atrules[r.name];if(!i)return Cn(null,new gn("Unknown at-rule",e));if(!i.descriptors)return Cn(null,new Error("At-rule `"+e+"` has no known descriptors"));var o=a.vendor?i.descriptors[a.name]||i.descriptors[a.basename]:i.descriptors[a.name];return o?An(this,o,n,!0):Cn(null,new gn("Unknown at-rule descriptor",t))},matchDeclaration:function(e){return"Declaration"!==e.type?Cn(null,new Error("Not a Declaration node")):this.matchProperty(e.property,e.value)},matchProperty:function(e,t){var n=ae.property(e);if(n.custom)return Cn(null,new Error("Lexer matching doesn't applicable for custom properties"));var r=n.vendor?this.getProperty(n.name)||this.getProperty(n.basename):this.getProperty(n.name);return r?An(this,r,t,!0):Cn(null,new gn("Unknown property",e))},matchType:function(e,t){var n=this.getType(e);return n?An(this,n,t,!1):Cn(null,new gn("Unknown type",e))},match:function(e,t){return"string"==typeof e||e&&e.type?("string"!=typeof e&&e.match||(e=this.createDescriptor(e,"Type","anonymous")),An(this,e,t,!1)):Cn(null,new gn("Bad syntax"))},findValueFragments:function(e,t,n,r){return un.matchFragments(this,t,this.matchProperty(e,t),n,r)},findDeclarationValueFragments:function(e,t,n){return un.matchFragments(this,e.value,this.matchDeclaration(e),t,n)},findAllFragments:function(e,t,n){var r=[];return this.syntax.walk(e,{visit:"Declaration",enter:function(e){r.push.apply(r,this.findDeclarationValueFragments(e,t,n))}.bind(this)}),r},getAtrulePrelude:function(e){return this.atrules.hasOwnProperty(e)?this.atrules[e].prelude:null},getAtruleDescriptor:function(e,t){return this.atrules.hasOwnProperty(e)&&this.atrules.declarators&&this.atrules[e].declarators[t]||null},getProperty:function(e){return this.properties.hasOwnProperty(e)?this.properties[e]:null},getType:function(e){return this.types.hasOwnProperty(e)?this.types[e]:null},validate:function(){function e(r,a,i,o){if(i.hasOwnProperty(a))return i[a];i[a]=!1,null!==o.syntax&&It(o.syntax,(function(o){if("Type"===o.type||"Property"===o.type){var s="Type"===o.type?r.types:r.properties,l="Type"===o.type?t:n;s.hasOwnProperty(o.name)&&!e(r,o.name,l,s[o.name])||(i[a]=!0)}}),this)}var t={},n={};for(var r in this.types)e(this,r,t,this.types[r]);for(var r in this.properties)e(this,r,n,this.properties[r]);return t=Object.keys(t).filter((function(e){return t[e]})),n=Object.keys(n).filter((function(e){return n[e]})),t.length||n.length?{types:t,properties:n}:null},dump:function(e,t){return{generic:this.generic,types:Sn(this.types,!t,e),properties:Sn(this.properties,!t,e)}},toString:function(){return JSON.stringify(this.dump())}};var Pn=zn,Ln={SyntaxError:ft,parse:Ot,generate:$,walk:It},Tn=Se.isBOM;var En=function(){this.lines=null,this.columns=null,this.linesAndColumnsComputed=!1};En.prototype={setSource:function(e,t,n,r){this.source=e,this.startOffset=void 0===t?0:t,this.startLine=void 0===n?1:n,this.startColumn=void 0===r?1:r,this.linesAndColumnsComputed=!1},ensureLinesAndColumnsComputed:function(){this.linesAndColumnsComputed||(!function(e,t){for(var n=t.length,r=oe(e.lines,n),a=e.startLine,i=oe(e.columns,n),o=e.startColumn,s=t.length>0?Tn(t.charCodeAt(0)):0;s<n;s++){var l=t.charCodeAt(s);r[s]=a,i[s]=o++,10!==l&&13!==l&&12!==l||(13===l&&s+1<n&&10===t.charCodeAt(s+1)&&(r[++s]=a,i[s]=o),a++,o=1)}r[s]=a,i[s]=o,e.lines=r,e.columns=i}(this,this.source),this.linesAndColumnsComputed=!0)},getLocation:function(e,t){return this.ensureLinesAndColumnsComputed(),{source:t,offset:this.startOffset+e,line:this.lines[e],column:this.columns[e]}},getLocationRange:function(e,t,n){return this.ensureLinesAndColumnsComputed(),{source:n,start:{offset:this.startOffset+e,line:this.lines[e],column:this.columns[e]},end:{offset:this.startOffset+t,line:this.lines[t],column:this.columns[t]}}}};var On=En,Dn=Se.TYPE,Rn=Dn.WhiteSpace,In=Dn.Comment,Mn=function(e){var t=this.createList(),n=null,r={recognizer:e,space:null,ignoreWS:!1,ignoreWSAfter:!1};for(this.scanner.skipSC();!this.scanner.eof;){switch(this.scanner.tokenType){case In:this.scanner.next();continue;case Rn:r.ignoreWS?this.scanner.next():r.space=this.WhiteSpace();continue}if(void 0===(n=e.getNode.call(this,r)))break;null!==r.space&&(t.push(r.space),r.space=null),t.push(n),r.ignoreWSAfter?(r.ignoreWSAfter=!1,r.ignoreWS=!0):r.ignoreWS=!1}return t},Nn=j.findWhiteSpaceStart,Bn=function(){},jn=d.TYPE,_n=d.NAME,qn=jn.WhiteSpace,Wn=jn.Ident,Fn=jn.Function,Un=jn.Url,Yn=jn.Hash,Hn=jn.Percentage,Vn=jn.Number;function Kn(e){return function(){return this[e]()}}var Gn=function(e){var t={scanner:new V,locationMap:new On,filename:"<unknown>",needPositions:!1,onParseError:Bn,onParseErrorThrow:!1,parseAtrulePrelude:!0,parseRulePrelude:!0,parseValue:!0,parseCustomProperty:!1,readSequence:Mn,createList:function(){return new o},createSingleNodeList:function(e){return(new o).appendData(e)},getFirstListNode:function(e){return e&&e.first()},getLastListNode:function(e){return e.last()},parseWithFallback:function(e,t){var n=this.scanner.tokenIndex;try{return e.call(this)}catch(e){if(this.onParseErrorThrow)throw e;var r=t.call(this,n);return this.onParseErrorThrow=!0,this.onParseError(e,r),this.onParseErrorThrow=!1,r}},lookupNonWSType:function(e){do{var t=this.scanner.lookupType(e++);if(t!==qn)return t}while(0!==t);return 0},eat:function(e){if(this.scanner.tokenType!==e){var t=this.scanner.tokenStart,n=_n[e]+" is expected";switch(e){case Wn:this.scanner.tokenType===Fn||this.scanner.tokenType===Un?(t=this.scanner.tokenEnd-1,n="Identifier is expected but function found"):n="Identifier is expected";break;case Yn:this.scanner.isDelim(35)&&(this.scanner.next(),t++,n="Name is expected");break;case Hn:this.scanner.tokenType===Vn&&(t=this.scanner.tokenEnd,n="Percent sign is expected");break;default:this.scanner.source.