const nativeSplit=String.prototype.split;const compliantExecNpcg=void 0===/()??/.exec('')[1];String.prototype.split=function(a,b){let c=this;if(Object.prototype.toString.call(a)!=='[object RegExp]')return nativeSplit.call(c,a,b);let d;let e;let f;let g;const h=[];const i=(a.ignoreCase?'i':'')+(a.multiline?'m':'')+(a.extended?'x':'')+(a.sticky?'y':'');let j=0;for(a=new RegExp(a.source,`${i}g`),c+='',compliantExecNpcg||(d=new RegExp(`^${a.source}$(?!\\s)`,i)),b=void 0===b?-1>>>0:b>>>0;(e=a.exec(c))&&(f=e.index+e[0].length,!(f>j&&(h.push(c.slice(j,e.index)),!compliantExecNpcg&&e.length>1&&e[0].replace(d,function(){for(let a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(e[a]=void 0);}),e.length>1&&e.index<c.length&&Array.prototype.push.apply(h,e.slice(1)),g=e[0].length,j=f,h.length>=b)));)a.lastIndex===e.index&&a.lastIndex++;return j===c.length?(g||!a.test(''))&&h.push(''):h.push(c.slice(j)),h.length>b?h.slice(0,b):h}