{"version":3,"file":"CodeEditor_1.BhhZc3dc.mjs","names":[],"sources":["https:/framerusercontent.com/modules/CZIu9CHkkWZAcMc0jd8d/6YElT5xyHe76QINoU9hw/CodeEditor_1.js"],"sourcesContent":["// Simple code editor with scroll, syntax highlighting, indentation, line numbers, custom scrollbars, copy button, and fully editable Night Owl theme colors\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";const defaultCode=`function helloWorld() {\n    console.log('Hello, world!');\n}`;function getNightOwlColors(props){return{background:props.nightOwlBackground,text:props.nightOwlText,comment:props.nightOwlComment,string:props.nightOwlString,keyword:props.nightOwlKeyword,number:props.nightOwlNumber,function:props.nightOwlFunction,variable:props.nightOwlVariable,property:props.nightOwlProperty,tag:props.nightOwlTag,punctuation:props.nightOwlPunctuation};}function highlightCode(code,language,themeColors){const t=themeColors;if(language===\"javascript\"){return code.replace(/(\\/\\/.*)/g,`<span style=\"color:${t.comment}\">$1</span>`)// comments\n.replace(/(\"[^\"]*\"|'[^']*')/g,`<span style=\"color:${t.string}\">$1</span>`)// strings\n.replace(/\\b(function|return|const|let|var|if|else|for|while|switch|case|break|continue|new|throw|catch|try|typeof|class|extends|import|from|export|default|async|await|static|public|private|protected|constructor|super|this)\\b/g,`<span style=\"color:${t.keyword}\">$1</span>`)// keywords\n.replace(/\\b([0-9]+)\\b/g,`<span style=\"color:${t.number}\">$1</span>`)// numbers\n;}if(language===\"json\"){// Single-pass tokenizer for JSON (handles invalid JSON and comments)\nfunction tokenizeJSON(line){const tokens=[];let i=0;while(i<line.length){// Comments\nif(line.slice(i).startsWith(\"//\")){tokens.push(`<span style=\"color:${t.comment}\">${line.slice(i).replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}</span>`);break;}if(line.slice(i).startsWith(\"/*\")){const end=line.indexOf(\"*/\",i+2);const comment=end!==-1?line.slice(i,end+2):line.slice(i);tokens.push(`<span style=\"color:${t.comment}\">${comment.replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}</span>`);i+=comment.length;continue;}// Whitespace\nif(/\\s/.test(line[i])){let ws=\"\";while(i<line.length&&/\\s/.test(line[i])){ws+=line[i++];}tokens.push(ws);continue;}// Property name (\"key\":)\nif(line[i]==='\"'){let end=i+1;while(end<line.length&&(line[end]!=='\"'||line[end-1]===\"\\\\\"))end++;if(end<line.length)end++;let prop=line.slice(i,end);let after=line.slice(end).match(/^\\s*:/);if(after){tokens.push(`<span style=\"color:${t.property}\">${prop}</span>`);tokens.push(after[0]);i=end+after[0].length;continue;}else{// String value\ntokens.push(`<span style=\"color:${t.string}\">${prop}</span>`);i=end;continue;}}// Numbers\nconst numMatch=line.slice(i).match(/^-?\\d+(?:\\.\\d+)?(?:[eE][+-]?\\d+)?/);if(numMatch){tokens.push(`<span style=\"color:${t.number}\">${numMatch[0]}</span>`);i+=numMatch[0].length;continue;}// Booleans/null\nconst boolMatch=line.slice(i).match(/^(true|false|null)/);if(boolMatch){tokens.push(`<span style=\"color:${t.keyword}\">${boolMatch[0]}</span>`);i+=boolMatch[0].length;continue;}// Punctuation\nif(/[{}\\[\\],:]/.test(line[i])){tokens.push(`<span style=\"color:${t.punctuation}\">${line[i]}</span>`);i++;continue;}// Anything else\ntokens.push(line[i]);i++;}return tokens.join(\"\");}return tokenizeJSON(code);}return code;}/**\n * CodeEditor\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CodeEditor(props){const{code=defaultCode,language=\"javascript\",borderRadius=8,borderColor=\"#222222\",shadowColor=\"#222222\",copyButtonBackground=\"#fff8\",copyButtonHoverBackground=\"#f0f0f0\",copyButtonTextColor=\"#5c6166\",copyButtonIconColor=\"#5c6166\",copyButtonFont={fontSize:14,fontWeight:500,letterSpacing:0},font={fontSize:15,fontWeight:400,fontFamily:\"monospace\",lineHeight:\"1.5em\",letterSpacing:0},style}=props;// Theme colors\nconst themeColors=getNightOwlColors(props);const bg=themeColors.background;const fg=themeColors.text;// Prepare code lines\nconst lines=code.split(\"\\n\");// Copy to clipboard\nconst[copied,setCopied]=useState(false);function handleCopy(){if(typeof window!==\"undefined\"&&navigator.clipboard){navigator.clipboard.writeText(code);setCopied(true);setTimeout(()=>setCopied(false),1200);}}return /*#__PURE__*/_jsxs(\"div\",{style:{...style,background:bg,color:fg,borderRadius,fontFamily:font.fontFamily,fontSize:font.fontSize,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,fontWeight:font.fontWeight,fontStyle:font.fontStyle,padding:0,overflow:\"auto\",width:\"100%\",height:\"100%\",boxSizing:\"border-box\",minWidth:0,minHeight:0,display:\"flex\",scrollbarWidth:\"none\",msOverflowStyle:\"none\",position:\"relative\",border:`4px solid ${borderColor}`,boxShadow:`0 4px 0 0 ${shadowColor}`},\"aria-label\":\"Code editor\",role:\"region\",children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .framer-code-scrollbar::-webkit-scrollbar {\n                    width: 8px;\n                    height: 8px;\n                    background: transparent;\n                }\n                .framer-code-scrollbar::-webkit-scrollbar-thumb {\n                    background: #4441;\n                    border-radius: 6px;\n                }\n                .framer-code-scrollbar::-webkit-scrollbar-track {\n                    background: transparent;\n                }\n                .framer-code-scrollbar {\n                    scrollbar-width: thin;\n                    scrollbar-color: #4441 transparent;\n                }\n            `}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-code-scrollbar\",style:{padding:16,overflowY:\"auto\",overflowX:\"auto\",whiteSpace:\"pre\",tabSize:4,minWidth:0,minHeight:0,width:\"100%\",maxHeight:\"100%\",boxSizing:\"border-box\"},children:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\"},children:lines.map((line,idx)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"flex-start\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:36,minWidth:36,textAlign:\"right\",color:themeColors.comment,userSelect:\"none\",paddingRight:12,fontFamily:font.fontFamily,fontSize:font.fontSize,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,fontWeight:font.fontWeight,fontStyle:font.fontStyle},\"aria-hidden\":\"true\",children:idx+1}),/*#__PURE__*/_jsx(\"code\",{style:{display:\"block\",width:\"100%\",minWidth:0,boxSizing:\"border-box\",margin:0,padding:0,color:fg,background:\"none\",fontFamily:font.fontFamily,fontSize:font.fontSize,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,fontWeight:font.fontWeight,fontStyle:font.fontStyle},dangerouslySetInnerHTML:{__html:highlightCode(line.replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\"),language,themeColors)}})]},idx))})}),/*#__PURE__*/_jsxs(\"button\",{onClick:handleCopy,\"aria-label\":\"Copy code\",style:{position:\"absolute\",top:10,right:10,zIndex:10,background:copyButtonBackground,border:\"none\",borderRadius:9999,padding:\"6px 14px 6px 8px\",cursor:\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",transition:\"background 0.15s, color 0.15s\",color:copyButtonTextColor,fontFamily:copyButtonFont.fontFamily,fontSize:copyButtonFont.fontSize,fontWeight:copyButtonFont.fontWeight,fontStyle:copyButtonFont.fontStyle,letterSpacing:copyButtonFont.letterSpacing},onMouseOver:e=>{e.currentTarget.style.background=copyButtonHoverBackground;},onMouseOut:e=>{e.currentTarget.style.background=copyButtonBackground;},children:[copied?/*#__PURE__*/_jsx(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{marginRight:6},children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 11l4 4 6-8\",stroke:copyButtonIconColor,strokeWidth:\"2.2\",fill:\"none\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})}):/*#__PURE__*/_jsxs(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{marginRight:6},children:[/*#__PURE__*/_jsx(\"rect\",{x:\"5\",y:\"5\",width:\"10\",height:\"12\",rx:\"2\",stroke:copyButtonIconColor,strokeWidth:\"1.5\",fill:\"none\"}),/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"3\",width:\"10\",height:\"12\",rx:\"2\",stroke:copyButtonIconColor,strokeWidth:\"1\",fill:\"none\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:copyButtonFont.fontFamily,fontWeight:copyButtonFont.fontWeight,fontSize:copyButtonFont.fontSize,letterSpacing:copyButtonFont.letterSpacing,fontStyle:copyButtonFont.fontStyle,color:copyButtonTextColor},children:copied?\"Copied\":\"Copy\"})]})]});}addPropertyControls(CodeEditor,{code:{type:ControlType.String,title:\"Code\",defaultValue:defaultCode,displayTextArea:true},language:{type:ControlType.Enum,title:\"Language\",options:[\"javascript\",\"json\"],optionTitles:[\"JavaScript\",\"JSON\"],defaultValue:\"javascript\",displaySegmentedControl:true},nightOwlBackground:{type:ControlType.Color,title:\"Background\",defaultValue:\"#011627\"},nightOwlText:{type:ControlType.Color,title:\"Text\",defaultValue:\"#d6deeb\"},nightOwlComment:{type:ControlType.Color,title:\"Comment\",defaultValue:\"#637777\"},nightOwlString:{type:ControlType.Color,title:\"String\",defaultValue:\"#ecc48d\"},nightOwlKeyword:{type:ControlType.Color,title:\"Keyword\",defaultValue:\"#c792ea\"},nightOwlNumber:{type:ControlType.Color,title:\"Number\",defaultValue:\"#f78c6c\"},nightOwlFunction:{type:ControlType.Color,title:\"Function\",defaultValue:\"#82aaff\"},nightOwlVariable:{type:ControlType.Color,title:\"Variable\",defaultValue:\"#addb67\"},nightOwlProperty:{type:ControlType.Color,title:\"Property\",defaultValue:\"#7fdbca\"},nightOwlTag:{type:ControlType.Color,title:\"Tag\",defaultValue:\"#7fdbca\"},nightOwlPunctuation:{type:ControlType.Color,title:\"Punctuation\",defaultValue:\"#c792ea\"},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:8,min:0,max:64},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"#222222\"},shadowColor:{type:ControlType.Color,title:\"Shadow Color\",defaultValue:\"#222222\"},copyButtonBackground:{type:ControlType.Color,title:\"Copy Btn BG\",defaultValue:\"#fff8\"},copyButtonHoverBackground:{type:ControlType.Color,title:\"Copy Btn Hover BG\",defaultValue:\"#f0f0f0\"},copyButtonTextColor:{type:ControlType.Color,title:\"Copy Btn Text\",defaultValue:\"#5c6166\"},copyButtonIconColor:{type:ControlType.Color,title:\"Copy Btn Icon\",defaultValue:\"#5c6166\"},copyButtonFont:{type:ControlType.Font,title:\"Copy Btn Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,fontWeight:500,letterSpacing:0}},font:{type:ControlType.Font,title:\"Editor Font\",controls:\"extended\",defaultFontType:\"monospace\",defaultValue:{fontSize:15,fontWeight:400,lineHeight:\"1.5em\",letterSpacing:0}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CodeEditor\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CodeEditor_1.map"],"mappings":"gUAGG,SAAS,EAAkB,EAAM,CAAC,MAAM,CAAC,WAAW,EAAM,mBAAmB,KAAK,EAAM,aAAa,QAAQ,EAAM,gBAAgB,OAAO,EAAM,eAAe,QAAQ,EAAM,gBAAgB,OAAO,EAAM,eAAe,SAAS,EAAM,iBAAiB,SAAS,EAAM,iBAAiB,SAAS,EAAM,iBAAiB,IAAI,EAAM,YAAY,YAAY,EAAM,mBAAoB,CAAE,UAAS,EAAc,EAAK,EAAS,EAAY,CAAC,IAAM,EAAE,EAAY,GAAG,IAAW,aAAc,MAAO,GAAK,QAAQ,aAAa,qBAAqB,EAAE,QAAQ,aAAa,CACxiB,QAAQ,sBAAsB,qBAAqB,EAAE,OAAO,aAAa,CACzE,QAAQ,4NAA4N,qBAAqB,EAAE,QAAQ,aAAa,CAChR,QAAQ,iBAAiB,qBAAqB,EAAE,OAAO,aAAa,CACnE,GAAG,IAAW,OAAO,CACvB,SAAS,EAAa,EAAK,CAAC,IAAM,EAAO,CAAE,EAAK,EAAE,EAAE,KAAM,EAAE,EAAK,QAAO,CACxE,GAAG,EAAK,MAAM,EAAE,CAAC,WAAW,KAAK,CAAC,CAAC,EAAO,MAAM,qBAAqB,EAAE,QAAQ,IAAI,EAAK,MAAM,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,SAAS,CAAC,KAAO,IAAG,EAAK,MAAM,EAAE,CAAC,WAAW,KAAK,CAAC,CAAC,IAAM,EAAI,EAAK,QAAQ,KAAK,EAAE,EAAE,CAAO,EAAQ,IAAM,GAAuB,EAAK,MAAM,EAAE,CAAjC,EAAK,MAAM,EAAE,EAAI,EAAE,CAA2H,AAA5G,EAAO,MAAM,qBAAqB,EAAE,QAAQ,IAAI,EAAQ,QAAQ,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,SAAS,CAAC,GAAG,EAAQ,OAAO,QAAU,CACja,GAAG,KAAK,KAAK,EAAK,GAAG,CAAC,CAAC,IAAI,EAAG,GAAG,KAAM,EAAE,EAAK,QAAQ,KAAK,KAAK,EAAK,GAAG,EAAE,GAAI,EAAK,KAAM,EAAO,KAAK,EAAG,CAAC,QAAU,CACnH,GAAG,EAAK,KAAK,IAAI,CAAC,IAAI,EAAI,EAAE,EAAE,KAAM,EAAI,EAAK,SAAS,EAAK,KAAO,KAAK,EAAK,EAAI,KAAK,OAAM,IAAM,AAAG,EAAI,EAAK,QAAO,IAAM,IAAI,EAAK,EAAK,MAAM,EAAE,EAAI,CAAK,EAAM,EAAK,MAAM,EAAI,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAM,CAAuF,AAAtF,EAAO,MAAM,qBAAqB,EAAE,SAAS,IAAI,EAAK,SAAS,CAAC,EAAO,KAAK,EAAM,GAAG,CAAC,EAAE,EAAI,EAAM,GAAG,OAAO,QAAU,KAAI,CACpQ,AAA9D,EAAO,MAAM,qBAAqB,EAAE,OAAO,IAAI,EAAK,SAAS,CAAC,EAAE,EAAI,QAAU,CAAC,CAC/E,IAAM,EAAS,EAAK,MAAM,EAAE,CAAC,MAAM,oCAAoC,CAAC,GAAG,EAAS,CAAsE,AAArE,EAAO,MAAM,qBAAqB,EAAE,OAAO,IAAI,EAAS,GAAG,SAAS,CAAC,GAAG,EAAS,GAAG,OAAO,QAAU,CAC1L,IAAM,EAAU,EAAK,MAAM,EAAE,CAAC,MAAM,qBAAqB,CAAC,GAAG,EAAU,CAAwE,AAAvE,EAAO,MAAM,qBAAqB,EAAE,QAAQ,IAAI,EAAU,GAAG,SAAS,CAAC,GAAG,EAAU,GAAG,OAAO,QAAU,CAChL,GAAG,aAAa,KAAK,EAAK,GAAG,CAAC,CAAuE,AAAtE,EAAO,MAAM,qBAAqB,EAAE,YAAY,IAAI,EAAK,GAAG,SAAS,CAAC,IAAI,QAAU,CAC9F,AAArB,EAAO,KAAK,EAAK,GAAG,CAAC,GAAK,OAAO,GAAO,KAAK,GAAG,AAAE,OAAO,GAAa,EAAK,AAAE,QAAO,CAAM,CAKvF,SAAwB,EAAW,EAAM,CAAC,GAAK,CAAC,OAAK,EAAY,WAAS,aAAa,eAAa,EAAE,cAAY,UAAU,cAAY,UAAU,uBAAqB,QAAQ,4BAA0B,UAAU,sBAAoB,UAAU,sBAAoB,UAAU,iBAAe,CAAC,SAAS,GAAG,WAAW,IAAI,cAAc,CAAE,EAAC,OAAK,CAAC,SAAS,GAAG,WAAW,IAAI,WAAW,YAAY,WAAW,QAAQ,cAAc,CAAE,EAAC,QAAM,CAAC,EAC3a,EAAY,EAAkB,EAAM,CAAO,EAAG,EAAY,WAAiB,EAAG,EAAY,KAC1F,EAAM,EAAK,MAAM;EAAK,CACvB,CAAC,EAAO,EAAU,CAAC,GAAS,EAAM,CAAC,SAAS,GAAY,CAAC,AAAU,YAAsB,EAAU,YAAW,EAAU,UAAU,UAAU,EAAK,CAAC,GAAU,EAAK,CAAC,WAAW,IAAI,GAAU,EAAM,CAAC,KAAK,CAAG,OAAoB,GAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAM,WAAW,EAAG,MAAM,EAAG,eAAa,WAAW,EAAK,WAAW,SAAS,EAAK,SAAS,WAAW,EAAK,WAAW,cAAc,EAAK,cAAc,WAAW,EAAK,WAAW,UAAU,EAAK,UAAU,QAAQ,EAAE,SAAS,OAAO,MAAM,OAAO,OAAO,OAAO,UAAU,aAAa,SAAS,EAAE,UAAU,EAAE,QAAQ,OAAO,eAAe,OAAO,gBAAgB,OAAO,SAAS,WAAW,QAAQ,YAAY,IAAc,WAAW,YAAY,GAAc,EAAC,aAAa,cAAc,KAAK,SAAS,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAA;;;;;;;;;;;;;;;;;aAiBjwB,EAAC,CAAc,EAAK,MAAM,CAAC,UAAU,wBAAwB,MAAM,CAAC,QAAQ,GAAG,UAAU,OAAO,UAAU,OAAO,WAAW,MAAM,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,OAAO,UAAU,OAAO,UAAU,YAAa,EAAC,SAAsB,EAAK,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,cAAc,QAAS,EAAC,SAAS,EAAM,IAAI,CAAC,EAAK,IAAmB,EAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,OAAO,WAAW,YAAa,EAAC,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,GAAG,UAAU,QAAQ,MAAM,EAAY,QAAQ,WAAW,OAAO,aAAa,GAAG,WAAW,EAAK,WAAW,SAAS,EAAK,SAAS,WAAW,EAAK,WAAW,cAAc,EAAK,cAAc,WAAW,EAAK,WAAW,UAAU,EAAK,SAAU,EAAC,cAAc,OAAO,SAAS,EAAI,CAAE,EAAC,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,QAAQ,MAAM,OAAO,SAAS,EAAE,UAAU,aAAa,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAG,WAAW,OAAO,WAAW,EAAK,WAAW,SAAS,EAAK,SAAS,WAAW,EAAK,WAAW,cAAc,EAAK,cAAc,WAAW,EAAK,WAAW,UAAU,EAAK,SAAU,EAAC,wBAAwB,CAAC,OAAO,EAAc,EAAK,QAAQ,KAAK,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAS,EAAY,AAAC,CAAC,EAAC,AAAC,CAAC,EAAC,EAAI,CAAC,AAAC,EAAC,AAAC,EAAC,CAAc,EAAM,SAAS,CAAC,QAAQ,EAAW,aAAa,YAAY,MAAM,CAAC,SAAS,WAAW,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,EAAqB,OAAO,OAAO,aAAa,KAAK,QAAQ,mBAAmB,OAAO,UAAU,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAS,WAAW,gCAAgC,MAAM,EAAoB,WAAW,EAAe,WAAW,SAAS,EAAe,SAAS,WAAW,EAAe,WAAW,UAAU,EAAe,UAAU,cAAc,EAAe,aAAc,EAAC,YAAY,GAAG,CAAC,EAAE,cAAc,MAAM,WAAW,CAA2B,EAAC,WAAW,GAAG,CAAC,EAAE,cAAc,MAAM,WAAW,CAAsB,EAAC,SAAS,CAAC,EAAoB,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,YAAY,CAAE,EAAC,SAAsB,EAAK,OAAO,CAAC,EAAE,gBAAgB,OAAO,EAAoB,YAAY,MAAM,KAAK,OAAO,cAAc,QAAQ,eAAe,OAAQ,EAAC,AAAC,EAAC,CAAc,EAAM,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,MAAM,6BAA6B,MAAM,CAAC,YAAY,CAAE,EAAC,SAAS,CAAc,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,KAAK,OAAO,KAAK,GAAG,IAAI,OAAO,EAAoB,YAAY,MAAM,KAAK,MAAO,EAAC,CAAc,EAAK,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,MAAM,KAAK,OAAO,KAAK,GAAG,IAAI,OAAO,EAAoB,YAAY,IAAI,KAAK,MAAO,EAAC,AAAC,CAAC,EAAC,CAAc,EAAK,OAAO,CAAC,MAAM,CAAC,WAAW,EAAe,WAAW,WAAW,EAAe,WAAW,SAAS,EAAe,SAAS,cAAc,EAAe,cAAc,UAAU,EAAe,UAAU,MAAM,CAAoB,EAAC,SAAS,EAAO,SAAS,MAAO,EAAC,AAAC,CAAC,EAAC,AAAC,CAAC,EAAC,AAAE,gBAAA,IAxCh2F,GAAyD,IAAoD,IAA4B,CAAM,EAAA;;GAwCitF,EAAoB,EAAW,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,EAAY,iBAAgB,CAAK,EAAC,SAAS,CAAC,KAAK,EAAY,KAAK,MAAM,WAAW,QAAQ,CAAC,aAAa,MAAO,EAAC,aAAa,CAAC,aAAa,MAAO,EAAC,aAAa,aAAa,yBAAwB,CAAK,EAAC,mBAAmB,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,SAAU,EAAC,aAAa,CAAC,KAAK,EAAY,MAAM,MAAM,OAAO,aAAa,SAAU,EAAC,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,SAAU,EAAC,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,aAAa,SAAU,EAAC,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,SAAU,EAAC,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,aAAa,SAAU,EAAC,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,SAAU,EAAC,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,SAAU,EAAC,iBAAiB,CAAC,KAAK,EAAY,MAAM,MAAM,WAAW,aAAa,SAAU,EAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,MAAM,aAAa,SAAU,EAAC,oBAAoB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,SAAU,EAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,EAAE,IAAI,EAAG,EAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,SAAU,EAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,SAAU,EAAC,qBAAqB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,OAAQ,EAAC,0BAA0B,CAAC,KAAK,EAAY,MAAM,MAAM,oBAAoB,aAAa,SAAU,EAAC,oBAAoB,CAAC,KAAK,EAAY,MAAM,MAAM,gBAAgB,aAAa,SAAU,EAAC,oBAAoB,CAAC,KAAK,EAAY,MAAM,MAAM,gBAAgB,aAAa,SAAU,EAAC,eAAe,CAAC,KAAK,EAAY,KAAK,MAAM,gBAAgB,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,WAAW,IAAI,cAAc,CAAE,CAAC,EAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,cAAc,SAAS,WAAW,gBAAgB,YAAY,aAAa,CAAC,SAAS,GAAG,WAAW,IAAI,WAAW,QAAQ,cAAc,CAAE,CAAC,CAAC,EAAC"}