Object.getOwnPropertyNames(Object.prototype).sort().join("\0");Object.getOwnPropertyNames(Object.prototype).sort().join("\0");const y=-1,b=-2,p=-3,I=-4,N=-5,g=-6;function O(c){return E(JSON.parse(c))}function E(c){if(typeof c=="number")return a(c,!0);if(!Array.isArray(c)||c.length===0)throw new Error("Invalid input");const u=c,r=Array(u.length);function a(e,i=!1){if(e===y)return;if(e===p)return NaN;if(e===I)return 1/0;if(e===N)return-1/0;if(e===g)return-0;if(i)throw new Error("Invalid input");if(e in r)return r[e];const t=u[e];if(!t||typeof t!="object")r[e]=t;else if(Array.isArray(t))if(typeof t[0]=="string")switch(t[0]){case"Date":r[e]=new Date(t[1]);break;case"Set":const o=new Set;r[e]=o;for(let n=1;n<t.length;n+=1)o.add(a(t[n]));break;case"Map":const s=new Map;r[e]=s;for(let n=1;n<t.length;n+=2)s.set(a(t[n]),a(t[n+1]));break;case"RegExp":r[e]=new RegExp(t[1],t[2]);break;case"Object":r[e]=Object(t[1]);break;case"BigInt":r[e]=BigInt(t[1]);break;case"null":const l=Object.create(null);r[e]=l;for(let n=1;n<t.length;n+=2)l[t[n]]=a(t[n+1]);break}else{const f=new Array(t.length);r[e]=f;for(let o=0;o<t.length;o+=1){const s=t[o];s!==b&&(f[o]=a(s))}}else{const f={};r[e]=f;for(const o in t){const s=t[o];f[o]=a(s)}}return r[e]}return a(0)}export{O as p,E as u};
