@freereportjs/core 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,41 +1,41 @@
1
- "use strict";var FreeReport=(()=>{var Gn=Object.defineProperty;var Es=Object.getOwnPropertyDescriptor;var Ts=Object.getOwnPropertyNames;var Rs=Object.prototype.hasOwnProperty;var Ps=(e,t)=>{for(var n in t)Gn(e,n,{get:t[n],enumerable:!0})},js=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ts(t))!Rs.call(e,o)&&o!==n&&Gn(e,o,{get:()=>t[o],enumerable:!(r=Es(t,o))||r.enumerable});return e};var Cs=e=>js(Gn({},"__esModule",{value:!0}),e);var Za={};Ps(Za,{AgentError:()=>ot,FUNCTIONS:()=>mn,PAPER:()=>lt,agent:()=>st,applyEmboss:()=>bt,blankReport:()=>tn,canonicalText:()=>cr,canvasMeasurer:()=>Xn,checkExpression:()=>hn,compile:()=>We,contentWidth:()=>rt,createDesigner:()=>$s,createReport:()=>qn,createViewer:()=>zn,dataToCsv:()=>Pn,dataToXlsx:()=>Ft,defaultMeasurer:()=>Et,embossImage:()=>Rt,encodeCode128:()=>kn,encodeDataMatrix:()=>Sn,encodeEan13:()=>$n,encodePdf417:()=>Mn,encodeQr:()=>vn,ensureFonts:()=>at,estimateMeasurer:()=>_n,evaluate:()=>Ae,fingerprintPages:()=>jt,formatDate:()=>un,formatNumber:()=>or,formatValue:()=>je,getFont:()=>ht,interpolate:()=>Ye,koreanAmount:()=>Tt,koreanNumber:()=>fn,layoutReport:()=>At,loadFontBytes:()=>Dt,loadFonts:()=>zr,pageGeometry:()=>nt,pageToSvg:()=>tt,pagesToHwpx:()=>Cn,pagesToXlsx:()=>Lt,paramValues:()=>ft,printPages:()=>Bn,registerFont:()=>ln,renderPage:()=>ho,renderPdf:()=>Ms,renderXlsx:()=>Ss,resetMeasurer:()=>sn,rowsOf:()=>_e,saveFile:()=>Dr,setLicenseKey:()=>Qr,sha256Hex:()=>lr,ttfMeasurer:()=>qr,verifyLicense:()=>tr,version:()=>Ot,wrapText:()=>an,writePdf:()=>vt,writeXlsx:()=>Yt});var Ce=.35277777777777775,el=25.4/96,Wn="'Malgun Gothic', 'Apple SD Gothic Neo', 'Noto Sans KR', sans-serif",Ur=(e,t=e.size*(96/72))=>`${e.italic?"italic ":""}${e.bold?"bold ":""}${t}px ${Kn(e.family)}, ${Wn}`,Kn=e=>/^[\w-]+$/.test(e)?e:`'${e.replace(/'/g,"")}'`,As=e=>e>=4352&&e<=4447||e>=11904&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510,_n={width(e,t){let n=0;for(let r of e){let o=r.codePointAt(0);As(o)?n+=.92:r===" "?n+=.28:/[il.,:;'|!]/.test(r)?n+=.25:/[mwMW@]/.test(r)?n+=.82:/[A-Z]/.test(r)?n+=.64:n+=.53}return n*t.size*Ce*(t.bold?1.04:1)}};function Xn(){let e=null;try{e=typeof document!="undefined"?document.createElement("canvas").getContext("2d"):null}catch{e=null}if(!e)return _n;let t=e,n=new Map,r=100;return{width(o,s){let i=`${s.family}|${s.bold?1:0}|${s.italic?1:0}`,l=n.get(i);if(l||(l=new Map,n.set(i,l)),o.length>64)return t.font=Ur(s,r),t.measureText(o).width/r*s.size*Ce;let a=l.get(o);return a===void 0&&(t.font=Ur(s,r),a=t.measureText(o).width/r,l.size>2e4&&l.clear(),l.set(o,a)),a*s.size*Ce}}}var on=null;function Et(){return on!=null?on:on=Xn()}function sn(){on=null}var Ls=/^[)\]}.,:;!?%、。,.)」』】〕〉》’”]/;function an(e,t,n,r,o=0){var l;let s=[],i=a=>r.width(a,n)+o*[...a].length;for(let a of e.split(/\r?\n/)){if(a===""){s.push("");continue}if(i(a)<=t){s.push(a);continue}let u=(l=a.match(/[A-Za-z0-9À-ɏ_@#&*+=/\\'"`~^$€₩.,:;!?%()[\]{}<>|-]+|\s+|./gu))!=null?l:[],f="";for(let m of u){let y=f+m;if(i(y.trimEnd())<=t||f===""){if(f===""&&i(m)>t&&!/^\s+$/.test(m)){let x="";for(let d of m)x&&i(x+d)>t&&(s.push(x),x=""),x+=d;f=x}else f=y;continue}if(/^\s+$/.test(m)){s.push(f.trimEnd()),f="";continue}if(Ls.test(m)&&f.length>1){let x=[...f],d=x.pop();s.push(x.join("").trimEnd()),f=d+m;continue}s.push(f.trimEnd()),f=m}s.push(f.trimEnd())}return s}var Vn="https://cdn.jsdelivr.net/gh/fonts-archive",Wr=new Map,Kr=e=>e.toLowerCase().replace(/[\s'"_-]/g,"");function ln(e,t){Wr.set(Kr(e),t)}function ht(e){return Wr.get(Kr(e))}ln("Nanum Gothic",{css:"https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400;700&display=swap",normal:`${Vn}/NanumGothic/NanumGothic.ttf`,bold:`${Vn}/NanumGothic/NanumGothicBold.ttf`});ln("Nanum Myeongjo",{css:"https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700&display=swap",normal:`${Vn}/NanumMyeongjo/NanumMyeongjo.ttf`});function Yn(e){var r,o,s,i,l;let t=new Set(["Nanum Gothic"]);(r=e.font)!=null&&r.family&&t.add(e.font.family);for(let a of Object.values((o=e.styles)!=null?o:{}))a.fontFamily&&t.add(a.fontFamily);let n=[e.bands.title,e.bands.pageHeader,e.bands.columnHeader,e.bands.detail,e.bands.summary,e.bands.pageFooter,e.bands.noData,...((s=e.bands.groups)!=null?s:[]).flatMap(a=>[a.header,a.footer])];for(let a of n)for(let u of(i=a==null?void 0:a.elements)!=null?i:[])(l=u.style)!=null&&l.fontFamily&&t.add(u.style.fontFamily);return[...t]}var Gr=new Set;function Ht(e,t=document){var n;for(let r of e){let o=(n=ht(r))==null?void 0:n.css;if(!o||t===document&&Gr.has(o)||t.querySelector(`link[data-fr-font="${CSS.escape(o)}"]`))continue;let s=t.createElement("link");s.rel="stylesheet",s.href=o,s.dataset.frFont=o,t.head.appendChild(s),t===document&&Gr.add(o)}}async function at(e,t=4e3){if(typeof document=="undefined"||!document.fonts)return;let n=Yn(e);Ht(n);let r="\uAC00\uB098\uB2E4ABC123",o=n.flatMap(l=>[`400 12px '${l}'`,`700 12px '${l}'`].map(a=>document.fonts.load(a,r).catch(()=>[]))),s=n.map(l=>document.fonts.check(`12px '${l}'`,r)).join();await Promise.race([Promise.all(o),new Promise(l=>setTimeout(l,t))]);let i=n.map(l=>document.fonts.check(`12px '${l}'`,r)).join();s!==i&&sn()}function Jn(e){let t=new Set;for(let o of e)for(let s of o.items)s.kind==="text"&&t.add(s.font.family);let n={},r=ht("Nanum Gothic");n.default={normal:r.normal,bold:r.bold};for(let o of t){let s=ht(o);s!=null&&s.normal&&(n[o]={normal:s.normal,bold:s.bold})}return n}var Ot="0.8.0",_r="2026-10-15";var Fs={kty:"EC",crv:"P-256",x:"MiJXJR8TZJ_-0VKk0wIQ-5mzRsyQ6ruGsbcRRdw9jrw",y:"MTdklYSzCM2pganffz7PPMfxSclQkBLqU_9se_VDznM"},Zn="https://freereport.app/pricing/",Xr="https://freereport.app/api/usage",Ds="https://freereport.app/api/domain-status",Vr=e=>{let t=atob(e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4));return Uint8Array.from(t,n=>n.charCodeAt(0))};function er(e){let t=e.toLowerCase().replace(/^\[|\]$/g,"");return!t||t==="localhost"||t==="127.0.0.1"||t==="::1"||t==="0.0.0.0"||t.endsWith(".localhost")||t.endsWith(".test")||t.endsWith(".local")||/^(10\.\d+|192\.168|172\.(1[6-9]|2\d|3[01]))\.\d+\.\d+$/.test(t)}function Is(e,t){let n=e.toLowerCase().replace(/\.$/,"");return t.some(r=>{let o=r.toLowerCase().replace(/\.$/,""),s=o.startsWith("*."),i=s?o.slice(2):o;return i?n===i||n===`www.${i}`?!0:s&&n.endsWith(`.${i}`):!1})}var Bs=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`;async function tr(e,t,n={}){var i,l,a;let r=typeof e=="string"?e.trim().split("."):[];if(r.length!==3||r[0]!=="FR1")return{ok:!1,reason:"format"};let o;try{if(o=JSON.parse(new TextDecoder().decode(Vr(r[1]))),!Array.isArray(o.domains)||typeof o.expires!="string")return{ok:!1,reason:"format"}}catch{return{ok:!1,reason:"format"}}let s=typeof crypto!="undefined"?crypto.subtle:void 0;if(!s)return{ok:!1,reason:"unsupported",info:o};try{let u=await s.importKey("jwk",(i=n.publicKey)!=null?i:Fs,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]),f=new TextEncoder().encode(`${r[0]}.${r[1]}`);if(!await s.verify({name:"ECDSA",hash:"SHA-256"},u,Vr(r[2]),f))return{ok:!1,reason:"signature",info:o}}catch{return{ok:!1,reason:"signature",info:o}}return Bs((l=n.now)!=null?l:new Date)>o.expires?{ok:!1,reason:"expired",info:o}:Is(t,o.domains)?o.updates&&((a=n.released)!=null?a:_r)>o.updates?{ok:!1,reason:"updates",info:o}:{ok:!0,info:o}:{ok:!1,reason:"domain",info:o}}var Qn,Yr=new Map,qt=null;function Qr(e){Qn=e}var Jr={missing:`FreeReport is free for personal use. Company use needs a domain license (\u20A9500,000 per domain per year, or \u20A9900,000 perpetual): ${Zn}
2
- FreeReport\uB294 \uAC1C\uC778\uC5D0\uAC8C \uBB34\uB8CC\uC785\uB2C8\uB2E4. \uD68C\uC0AC\uC5D0\uC11C \uC4F0\uB824\uBA74 \uB3C4\uBA54\uC778 \uB77C\uC774\uC120\uC2A4(\uB3C4\uBA54\uC778\uB2F9 \uC5F0 50\uB9CC \uC6D0, \uC601\uAD6C 90\uB9CC \uC6D0)\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4: ${Zn}`,format:"FreeReport: the license key is not in the right format. / \uB77C\uC774\uC120\uC2A4 \uD0A4 \uD615\uC2DD\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",signature:"FreeReport: the license key could not be verified. / \uB77C\uC774\uC120\uC2A4 \uD0A4\uB97C \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",expired:"FreeReport: the license key has expired. / \uB77C\uC774\uC120\uC2A4 \uAE30\uAC04\uC774 \uB05D\uB0AC\uC2B5\uB2C8\uB2E4.",domain:"FreeReport: the license key is for a different domain. / \uB2E4\uB978 \uB3C4\uBA54\uC778\uC6A9 \uB77C\uC774\uC120\uC2A4 \uD0A4\uC785\uB2C8\uB2E4.",updates:"FreeReport: this version was released after the update period of your perpetual license. / \uC601\uAD6C \uB77C\uC774\uC120\uC2A4\uC758 \uC5C5\uB370\uC774\uD2B8 \uAE30\uAC04 \uB4A4\uC5D0 \uB098\uC628 \uBC84\uC804\uC785\uB2C8\uB2E4."};function Zr(e,t=typeof location!="undefined"?location.hostname:""){try{if(er(t)||typeof navigator=="undefined")return;let n=new Date().toISOString().slice(0,10),r=`${t}|${n}|${e.licensed?1:0}`,o=typeof localStorage!="undefined"?localStorage:null;if((o==null?void 0:o.getItem("freereport:usage"))===r)return;o==null||o.setItem("freereport:usage",r);let s=JSON.stringify({version:e.version,licensed:e.licensed,company:e.company,url:`${location.origin}${location.pathname}`});typeof navigator.sendBeacon=="function"?navigator.sendBeacon(Xr,s):typeof fetch=="function"&&fetch(Xr,{method:"POST",body:s,mode:"no-cors",keepalive:!0}).catch(()=>{})}catch{}}function nr(e=Qn,t=typeof location!="undefined"?location.hostname:""){if(er(t))return Promise.resolve(!0);let n=e!=null?e:Qn,r=`${n!=null?n:""}@${t}`,o=Yr.get(r);return o||(n?o=tr(n,t).then(s=>{if(Zr({version:Ot,licensed:s.ok,company:s.ok?s.info.company:void 0},t),s.ok||s.reason==="unsupported")return s.ok||s.reason==="unsupported";let i=s.info?` (${s.info.domains.join(", ")}, ${s.info.expires})`:"";return console.warn(`${Jr[s.reason]}${i}
3
- ${Zn}`),!1},()=>!1):(console.info(Jr.missing),Zr({version:Ot,licensed:!1},t),o=Promise.resolve(!1)),Yr.set(r,o),o)}function Ns(e=typeof location!="undefined"?location.hostname:""){var r;if(er(e)||typeof fetch!="function")return Promise.resolve(!1);if(qt)return qt;let t=new Date().toISOString().slice(0,10),n=null;try{n=typeof localStorage!="undefined"?localStorage:null;let o=JSON.parse((r=n==null?void 0:n.getItem("freereport:badge"))!=null?r:"null");if(o&&o.host===e&&o.day===t)return qt=Promise.resolve(o.show)}catch{}return qt=fetch(Ds,{mode:"cors",credentials:"omit"}).then(o=>o.ok?o.json():{badge:!1}).then(o=>{let s=o.badge===!0;try{n==null||n.setItem("freereport:badge",JSON.stringify({host:e,day:t,show:s}))}catch{}return s},()=>!1),qt}async function eo(e,t=typeof location!="undefined"?location.hostname:""){return await nr(e,t)?!1:Ns(t)}var Hs=["","\uC77C","\uC774","\uC0BC","\uC0AC","\uC624","\uC721","\uCE60","\uD314","\uAD6C"],Os=["","\uC2ED","\uBC31","\uCC9C"],to=["","\uB9CC","\uC5B5","\uC870","\uACBD"];function fn(e){if(!Number.isFinite(e))return"";let t=Math.floor(Math.abs(e));if(t===0)return"\uC601";let n=[];for(let r=0;t>0&&r<to.length;r++){let o=t%1e4;if(t=Math.floor(t/1e4),!o)continue;let s="",i=String(o).padStart(4,"0");for(let l=0;l<4;l++){let a=Number(i[l]);a&&(s+=Hs[a]+Os[3-l])}n.unshift(s+to[r])}return(e<0?"\uB9C8\uC774\uB108\uC2A4 ":"")+n.join("")}function Tt(e){return Number.isFinite(e)?`\uC77C\uAE08 ${fn(e).replace(/(^|[만억조경 ])([십백천])/g,"$1\uC77C$2")}\uC6D0\uC815`:""}var no=["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],qs=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],zs=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Us=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],gt=(e,t=2)=>String(e).padStart(t,"0"),cn=new Map,rr=e=>{let t=cn.get(e);return t===void 0&&(t=Gs(e),cn.size>500&&cn.clear(),cn.set(e,t)),t},Gs=e=>/(yy|M{1,4}|d{1,4}|H{1,2}|h{1,2}|m{2}|s{2})/.test(e.replace(/"[^"]*"|\[[^\]]*\]/g,""))&&!/[#0]/.test(e.replace(/"[^"]*"/g,"").replace(/(yy+|M+|d+|H+|h+|m+|s+)/g,""));function Ws(e){var t,n,r;if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e=="number"&&Number.isFinite(e))return new Date(e);if(typeof e=="string"&&e.trim()){let o=/^(\d{4})[-./](\d{1,2})[-./](\d{1,2})(?:[ T](\d{1,2}):(\d{2})(?::(\d{2}))?)?$/.exec(e.trim());if(o)return new Date(+o[1],+o[2]-1,+o[3],+((t=o[4])!=null?t:0),+((n=o[5])!=null?n:0),+((r=o[6])!=null?r:0));let s=new Date(e);return Number.isNaN(s.getTime())?null:s}return null}function un(e,t,n="ko"){let r=n.startsWith("ko");return t.replace(/"([^"]*)"|yyyy|yy|MMMM|MMM|MM|M|dddd|ddd|dd|d|HH|H|hh|h|mm|m|ss|s|a|tt/g,(o,s)=>{if(s!==void 0)return s;let i=e.getHours();switch(o){case"yyyy":return String(e.getFullYear());case"yy":return gt(e.getFullYear()%100);case"MMMM":return r?`${e.getMonth()+1}\uC6D4`:new Date(2e3,e.getMonth(),1).toLocaleString("en",{month:"long"});case"MMM":return r?`${e.getMonth()+1}\uC6D4`:Us[e.getMonth()];case"MM":return gt(e.getMonth()+1);case"M":return String(e.getMonth()+1);case"dddd":return r?`${no[e.getDay()]}\uC694\uC77C`:zs[e.getDay()];case"ddd":return r?no[e.getDay()]:qs[e.getDay()];case"dd":return gt(e.getDate());case"d":return String(e.getDate());case"HH":return gt(i);case"H":return String(i);case"hh":return gt(i%12||12);case"h":return String(i%12||12);case"mm":return gt(e.getMinutes());case"m":return String(e.getMinutes());case"ss":return gt(e.getSeconds());case"s":return String(e.getSeconds());case"a":case"tt":return r?i<12?"\uC624\uC804":"\uC624\uD6C4":i<12?"AM":"PM"}return o})}function Ks(e){let t=[],n="",r=!1;for(let o of e)o==='"'&&(r=!r),o===";"&&!r?(t.push(n),n=""):n+=o;return t.push(n),t}function or(e,t){var R,O;let n=Ks(t),r=n[0],o=e;e<0&&n[1]!==void 0?(r=n[1],o=-e):e===0&&n[2]!==void 0&&(r=n[2]);let s=/[#0][#0,]*(?:\.[#0]+)?|\.[#0]+/.exec(r.replace(/"[^"]*"/g,ue=>"\0".repeat(ue.length)));if(!s)return r.replace(/"/g,"");let i=s[0],l=r.slice(0,s.index).replace(/"/g,""),a=r.slice(s.index+i.length);(a.includes("%")||l.includes("%"))&&(o*=100);let f=0,m=i;for(;m.endsWith(",");)f++,m=m.slice(0,-1);o/=1e3**f;let[y,x=""]=m.split("."),d=((R=x.match(/0/g))!=null?R:[]).length,c=x.length,p=Math.min(c,20),E=Math.abs(o)<1e15?+`${Math.round(+`${Math.abs(o)}e${p}`)}e-${p}`:Math.abs(o),v=(Number.isFinite(E)?E:Math.abs(o)).toFixed(p);c>d&&(v=v.replace(new RegExp(`0{1,${c-d}}$`),"").replace(/\.$/,""));let[k,S]=v.split("."),j=((O=y.match(/0/g))!=null?O:[]).length;return k==="0"&&j===0&&(k=""),k=k.padStart(j,"0"),y.includes(",")&&(k=k.replace(/\B(?=(\d{3})+(?!\d))/g,",")),a=a.replace(/"/g,""),`${o<0&&n[1]===void 0&&Math.abs(o)>=.5*10**-c?"-":""}${l}${k}${S?`.${S}`:""}${a}`}function je(e,t,n="ko"){if(e==null)return"";let r=t==null?void 0:t.trim();if(r){if(r==="korean")return Tt(Number(e));if(r==="koreanNumber")return fn(Number(e));if(r==="bizNo")return String(e).replace(/\D/g,"").replace(/^(\d{3})(\d{2})(\d{5})$/,"$1-$2-$3");if(r==="upper")return String(e).toUpperCase();if(r==="lower")return String(e).toLowerCase();if(rr(r)){let s=Ws(e);if(s)return un(s,r,n)}let o=typeof e=="number"?e:typeof e=="string"&&e.trim()!==""?Number(e.replace(/,/g,"")):NaN;if(Number.isFinite(o))return or(o,r)}return e instanceof Date?un(e,"yyyy-MM-dd",n):typeof e=="number"?Number.isInteger(e)?String(e):String(Math.round(e*1e10)/1e10):typeof e=="boolean"?e?"true":"false":Array.isArray(e)?e.map(o=>je(o,t,n)).join(", "):typeof e=="object"?"":String(e)}var _s=["===","!==","==","!=","<=",">=","&&","||","??","<",">","+","-","*","/","%","!","?",":","(",")",",",".","[","]"];function Xs(e){var r;let t=[],n=0;for(;n<e.length;){let o=e[n];if(/\s/.test(o)){n++;continue}if(/[0-9]/.test(o)||o==="."&&/[0-9]/.test((r=e[n+1])!=null?r:"")){let i=/^(\d*\.?\d+(?:[eE][+-]?\d+)?)/.exec(e.slice(n));t.push({t:"num",v:Number(i[1])}),n+=i[1].length;continue}if(o==='"'||o==="'"){let i="";for(n++;n<e.length&&e[n]!==o;){if(e[n]==="\\"&&n+1<e.length){let l=e[++n];i+=l==="n"?`
4
- `:l==="t"?" ":l}else i+=e[n];n++}if(e[n]!==o)throw new SyntaxError("Unclosed string");n++,t.push({t:"str",v:i});continue}if(/[A-Za-z_$\u0080-￿]/.test(o)){let i=/^[A-Za-z_$\u0080-￿][\w$\u0080-￿]*/.exec(e.slice(n));t.push({t:"id",v:i[0]}),n+=i[0].length;continue}let s=_s.find(i=>e.startsWith(i,n));if(!s)throw new SyntaxError(`Unexpected "${o}"`);t.push({t:"op",v:s}),n+=s.length}return t.push({t:"end"}),t}var Ee=e=>{if(typeof e=="number")return e;if(typeof e=="string"){let t=Number(e.replace(/,/g,""));return Number.isFinite(t)?t:NaN}return typeof e=="boolean"?e?1:0:e instanceof Date?e.getTime():e==null?0:Number(e)},Ne=e=>{if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e=="number")return new Date(e);if(typeof e=="string"&&e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e),n=t?new Date(+t[1],+t[2]-1,+t[3]):new Date(e);return Number.isNaN(n.getTime())?null:n}return null},Vs=new Set(["__proto__","prototype","constructor"]);function ro(e,t){if(e==null)return;let n=String(t);if(!Vs.has(n)){if(typeof e=="string")return n==="length"?e.length:void 0;if(typeof e=="object")return Array.isArray(e)&&n==="length"?e.length:Object.prototype.hasOwnProperty.call(e,n)?e[n]:void 0}}function oo(e,t){var n,r;return t==="report"||t==="all"?e.allRows:t==="group"?(n=e.groupRows)!=null?n:e.allRows:t==="page"&&(r=e.pageRows)!=null?r:e.rows}function Ys(e,t,n){return n?t.map((r,o)=>n({...e,row:r,vars:{...e.vars,rowNum:o+1}})):t}var so={sum:e=>e.reduce((t,n)=>t+(Number.isFinite(Ee(n))?Ee(n):0),0),avg:e=>{let t=e.map(Ee).filter(Number.isFinite);return t.length?t.reduce((n,r)=>n+r,0)/t.length:0},min:e=>{let t=e.filter(n=>n!=null&&n!=="").map(Ee).filter(Number.isFinite);return t.length?t.reduce((n,r)=>r<n?r:n):null},max:e=>{let t=e.filter(n=>n!=null&&n!=="").map(Ee).filter(Number.isFinite);return t.length?t.reduce((n,r)=>r>n?r:n):null},count:e=>e.filter(t=>t!=null&&t!==""&&t!==!1).length,distinct:e=>new Set(e.map(t=>t instanceof Date?t.getTime():t)).size,first:e=>e[0],last:e=>e[e.length-1]},io=e=>String(e).padStart(2,"0"),mn={format:(e,t)=>je(e,typeof t=="string"?t:void 0),korean:e=>Tt(Ee(e)),koreanAmount:e=>Tt(Ee(e)),round:(e,t)=>{let n=10**(Number(t)||0);return Math.round(Ee(e)*n)/n},floor:(e,t)=>{let n=10**(Number(t)||0);return Math.floor(Ee(e)*n)/n},ceil:(e,t)=>{let n=10**(Number(t)||0);return Math.ceil(Ee(e)*n)/n},abs:e=>Math.abs(Ee(e)),number:e=>Ee(e),string:e=>e==null?"":String(e),upper:e=>String(e!=null?e:"").toUpperCase(),lower:e=>String(e!=null?e:"").toLowerCase(),trim:e=>String(e!=null?e:"").trim(),len:e=>Array.isArray(e)?e.length:String(e!=null?e:"").length,left:(e,t)=>String(e!=null?e:"").slice(0,Number(t)),right:(e,t)=>{let n=String(e!=null?e:"");return n.slice(Math.max(0,n.length-Number(t)))},substr:(e,t,n)=>String(e!=null?e:"").substr(Number(t),n===void 0?void 0:Number(n)),replace:(e,t,n)=>String(e!=null?e:"").split(String(t)).join(String(n!=null?n:"")),concat:(...e)=>e.map(t=>t==null?"":String(t)).join(""),join:(e,t)=>Array.isArray(e)?e.join(t===void 0?", ":String(t)):"",padStart:(e,t,n)=>String(e!=null?e:"").padStart(Math.min(1e3,Number(t)||0),n===void 0?" ":String(n)),iif:(e,t,n)=>e?t:n,coalesce:(...e)=>e.find(t=>t!=null&&t!==""),isEmpty:e=>e==null||e===""||Array.isArray(e)&&!e.length,date:e=>Ne(e),today:()=>{let e=new Date;return new Date(e.getFullYear(),e.getMonth(),e.getDate())},now:()=>new Date,year:e=>{var t,n;return(n=(t=Ne(e))==null?void 0:t.getFullYear())!=null?n:null},month:e=>Ne(e)?Ne(e).getMonth()+1:null,day:e=>{var t,n;return(n=(t=Ne(e))==null?void 0:t.getDate())!=null?n:null},addDays:(e,t)=>{let n=Ne(e);return n?new Date(n.getFullYear(),n.getMonth(),n.getDate()+Number(t)):null},dateDiff:(e,t)=>{let n=Ne(e),r=Ne(t);return n&&r?Math.round((r.getTime()-n.getTime())/864e5):null},ymd:e=>{let t=Ne(e);return t?`${t.getFullYear()}-${io(t.getMonth()+1)}-${io(t.getDate())}`:""},bizNo:e=>String(e!=null?e:"").replace(/\D/g,"").replace(/^(\d{3})(\d{2})(\d{5})$/,"$1-$2-$3"),phone:e=>{let t=String(e!=null?e:"").replace(/\D/g,"");return t.startsWith("02")?t.replace(/^(02)(\d{3,4})(\d{4})$/,"$1-$2-$3"):t.replace(/^(\d{3})(\d{3,4})(\d{4})$/,"$1-$2-$3")},groupSum:(e,t,n)=>{var i;if(!Array.isArray(e))return[];let r=String(t),o=String(n),s=new Map;for(let l of e)s.set(l==null?void 0:l[r],((i=s.get(l==null?void 0:l[r]))!=null?i:0)+(Number.isFinite(Ee(l==null?void 0:l[o]))?Ee(l==null?void 0:l[o]):0));return[...s].map(([l,a])=>({[r]:l,[o]:a}))},groupCount:(e,t)=>{var o;if(!Array.isArray(e))return[];let n=String(t),r=new Map;for(let s of e)r.set(s==null?void 0:s[n],((o=r.get(s==null?void 0:s[n]))!=null?o:0)+1);return[...r].map(([s,i])=>({[n]:s,count:i}))},min2:(e,t)=>Math.min(Ee(e),Ee(t)),max2:(e,t)=>Math.max(Ee(e),Ee(t))},zt=0;function lo(){zt++}var Ut=class Ut{constructor(t){this.toks=t;this.i=0}peek(){return this.toks[this.i]}next(){return this.toks[this.i++]}isOp(t){let n=this.peek();return n.t==="op"&&n.v===t}expect(t){if(!this.isOp(t))throw new SyntaxError(`Expected "${t}"`);this.i++}parse(){let t=this.ternary();if(this.peek().t!=="end")throw new SyntaxError("Unexpected input after expression");return t}ternary(){let t=this.binary(0);if(!this.isOp("?"))return t;this.i++;let n=this.ternary();this.expect(":");let r=this.ternary();return o=>t(o)?n(o):r(o)}binary(t){if(t>=Ut.LEVELS.length)return this.unary();let n=this.binary(t+1);for(;;){let r=this.peek();if(r.t!=="op"||!Ut.LEVELS[t].includes(r.v))return n;this.i++;let o=this.binary(t+1),s=n;n=Zs(r.v,s,o)}}unary(){if(this.isOp("!")){this.i++;let t=this.unary();return n=>!t(n)}if(this.isOp("-")){this.i++;let t=this.unary();return n=>-Ee(t(n))}if(this.isOp("+")){this.i++;let t=this.unary();return n=>Ee(t(n))}return this.postfix()}postfix(){let t=this.primary();for(;;)if(this.isOp(".")){this.i++;let n=this.next();if(n.t!=="id")throw new SyntaxError('Expected a name after "."');let r=t;t=o=>ro(r(o),n.v)}else if(this.isOp("[")){this.i++;let n=this.ternary();this.expect("]");let r=t;t=o=>ro(r(o),n(o))}else return t}args(){let t=[];if(this.expect("("),!this.isOp(")"))do t.push(this.ternary());while(this.isOp(",")&&this.next());return this.expect(")"),t}primary(){let t=this.next();if(t.t==="num"||t.t==="str"){let r=t.v;return()=>r}if(t.t==="op"&&t.v==="("){let r=this.ternary();return this.expect(")"),r}if(t.t!=="id")throw new SyntaxError("Unexpected end of expression");let n=t.v;if(n==="true")return()=>!0;if(n==="false")return()=>!1;if(n==="null"||n==="undefined")return()=>null;if(this.isOp("(")){let r=this.args();if(Object.prototype.hasOwnProperty.call(so,n)){let s=so[n],[i,l]=r,a=new WeakMap;return u=>{let f=oo(u,l==null?void 0:l(u)),m=a.get(f);if(m&&m.gen===zt&&m.len===f.length)return m.value;let y=s(Ys(u,f,i));return a.set(f,{gen:zt,len:f.length,value:y}),y}}if(n==="runningSum"){let[s,i]=r,l=new WeakMap;return a=>{var m;let u=oo(a,(m=i==null?void 0:i(a))!=null?m:"report"),f=l.get(u);if(!f||f.gen!==zt||f.len!==u.length){let y=new Map,x=0;u.forEach((d,c)=>{let p=Ee(s?s({...a,row:d,vars:{...a.vars,rowNum:c+1}}):0);x+=Number.isFinite(p)?p:0,y.set(d,x)}),f={gen:zt,len:u.length,sums:y,total:x},l.set(u,f)}return a.row&&f.sums.has(a.row)?f.sums.get(a.row):f.total}}let o=Object.prototype.hasOwnProperty.call(mn,n)?mn[n]:void 0;if(!o)throw new SyntaxError(`Unknown function ${n}()`);return s=>o(...r.map(i=>i(s)))}return r=>Js(r,n)}};Ut.LEVELS=[["??"],["||"],["&&"],["==","!=","===","!=="],["<","<=",">",">="],["+","-"],["*","/","%"]];var sr=Ut;function Js(e,t){if(t==="row")return e.row;if(t==="rows")return e.rows;if(t==="allRows")return e.allRows;if(t==="params")return e.params;if(t==="data")return e.data;if(Object.prototype.hasOwnProperty.call(e.vars,t))return e.vars[t];if(e.row&&Object.prototype.hasOwnProperty.call(e.row,t))return e.row[t];if(Object.prototype.hasOwnProperty.call(e.data,t))return e.data[t]}function Zs(e,t,n){switch(e){case"??":return r=>{var o;return(o=t(r))!=null?o:n(r)};case"||":return r=>t(r)||n(r);case"&&":return r=>t(r)&&n(r);case"==":case"===":return r=>ao(t(r),n(r));case"!=":case"!==":return r=>!ao(t(r),n(r));case"<":return r=>dn(t(r),n(r))<0;case"<=":return r=>dn(t(r),n(r))<=0;case">":return r=>dn(t(r),n(r))>0;case">=":return r=>dn(t(r),n(r))>=0;case"+":return r=>{let o=t(r),s=n(r);return typeof o=="string"||typeof s=="string"?`${o!=null?o:""}${s!=null?s:""}`:Ee(o)+Ee(s)};case"-":return r=>Ee(t(r))-Ee(n(r));case"*":return r=>Ee(t(r))*Ee(n(r));case"/":return r=>{let o=Ee(n(r));return o===0?0:Ee(t(r))/o};case"%":return r=>Ee(t(r))%Ee(n(r))}throw new SyntaxError(e)}function ao(e,t){var n,r;return e instanceof Date||t instanceof Date?((n=Ne(e))==null?void 0:n.getTime())===((r=Ne(t))==null?void 0:r.getTime()):typeof e=="number"||typeof t=="number"?e!=null&&t!=null&&Ee(e)===Ee(t):(e!=null?e:null)===(t!=null?t:null)}function dn(e,t){var n,r,o,s;return e instanceof Date||t instanceof Date?((r=(n=Ne(e))==null?void 0:n.getTime())!=null?r:0)-((s=(o=Ne(t))==null?void 0:o.getTime())!=null?s:0):typeof e=="string"&&typeof t=="string"?e<t?-1:e>t?1:0:Ee(e)-Ee(t)}var pn=new Map;function We(e){let t=pn.get(e);return t||(t=new sr(Xs(e)).parse(),pn.size>5e3&&pn.clear(),pn.set(e,t)),t}function Ae(e,t){try{return We(e)(t)}catch(n){return`#ERR ${n.message}`}}function hn(e){try{return We(e),null}catch(t){return t.message}}function Ye(e,t){if(!e.includes("{"))return e.replace(/}}/g,"}");let n="",r=0;for(;r<e.length;){let o=e[r];if(o==="{"&&e[r+1]==="{"){n+="{",r+=2;continue}if(o==="}"&&e[r+1]==="}"){n+="}",r+=2;continue}if(o!=="{"){n+=o,r++;continue}let s=Qs(e,r+1);if(s<0){n+=e.slice(r);break}let{expr:i,format:l}=ei(e.slice(r+1,s)),a=Ae(i,t);n+=je(a,l),r=s+1}return n}function Qs(e,t){let n=null,r=0;for(let o=t;o<e.length;o++){let s=e[o];if(n){s==="\\"?o++:s===n&&(n=null);continue}if(s==='"'||s==="'")n=s;else if(s==="{")r++;else if(s==="}"){if(r===0)return o;r--}}return-1}function ei(e){let t=null,n=0,r=0;for(let o=0;o<e.length;o++){let s=e[o];if(t){s==="\\"?o++:s===t&&(t=null);continue}if(s==='"'||s==="'")t=s;else if(s==="("||s==="[")n++;else if(s===")"||s==="]")n--;else if(s==="?"&&n===0&&e[o+1]!=="?"&&e[o-1]!=="?")r++;else if(s===":"&&n===0){if(r>0){r--;continue}return{expr:e.slice(0,o).trim(),format:e.slice(o+1)}}}return{expr:e.trim()}}var co=(e,t,n)=>!e||e==="all"||e==="first"&&t===0||e==="last"&&t===n-1||e==="odd"&&t%2===0||e==="even"&&t%2===1,po="Nanum Gothic";function ir(e,t,n,r,o){let s={family:po,size:r,bold:o.bold,italic:!1},i=e.split(`
5
- `),l=r*Ce*1.2,a=i.map(x=>o.measure.width(x,s)),u=Math.max(...a,1),f=i.length*l,m=t-u/2,y=n-f/2;return{kind:"text",x:m,y,w:u,h:f,font:s,color:o.color,align:"center",valign:"middle",text:e,lines:i.map((x,d)=>({text:x,x:t-a[d]/2,y:y+d*l+l*.78,width:a[d]})),rotate:o.angle,opacity:o.opacity,source:{band:"watermark"}}}function ti(e,t,n,r){var m,y,x,d,c,p,E,v,k;let o=e.text?Ye(e.text,n):"",s=(m=e.opacity)!=null?m:.12,i=(y=e.angle)!=null?y:-35,l=(x=e.color)!=null?x:"#808080",a=[];if(e.repeat){let S=Math.max(5,Number(e.gap)||45),j=(d=e.fontSize)!=null?d:14,C=(c=e.imageWidth)!=null?c:30,R=0;for(let O=S/2;O<t.height+S/2;O+=S*.7,R++)for(let ue=(R%2?S/2:0)+S/4;ue<t.width+S/2;ue+=S)e.image&&a.push({kind:"image",x:ue-C/2,y:O-C/2,w:C,h:C,src:e.image,fit:"contain",opacity:s,rotate:i,source:{band:"watermark"}}),o&&a.push(ir(o,ue,O+(e.image?C/2+j*Ce:0),j,{color:l,opacity:s,angle:i,bold:!!e.bold,measure:r}));return a}let u=t.width/2,f=t.height/2;if(e.image){let S=(p=e.imageWidth)!=null?p:80;a.push({kind:"image",x:u-S/2,y:f-S/2,w:S,h:S,src:e.image,fit:"contain",opacity:s,rotate:i,source:{band:"watermark"}})}if(o){let S=(E=e.fontSize)!=null?E:60,j=Math.hypot(t.width,t.height)*.75,C={family:po,size:S,bold:(v=e.bold)!=null?v:!0,italic:!1},R=Math.max(...o.split(`
6
- `).map(O=>r.width(O,C)));R>j&&(S*=j/R),a.push(ir(o,u,f,S,{color:l,opacity:s,angle:i,bold:(k=e.bold)!=null?k:!0,measure:r}))}return a}function ni(e,t,n){let r=.5523*n;return["M",e+n,t,"C",e+n,t+r,e+r,t+n,e,t+n,"C",e-r,t+n,e-n,t+r,e-n,t,"C",e-n,t-r,e-r,t-n,e,t-n,"C",e+r,t-n,e+n,t-r,e+n,t,"Z"]}function uo(e,t,n,r){let o=n-r,s=.5523*o;return[...ni(e,t,n),"M",e+o,t,"C",e+o,t-s,e+s,t-o,e,t-o,"C",e-s,t-o,e-o,t-s,e-o,t,"C",e-o,t+s,e-s,t+o,e,t+o,"C",e+s,t+o,e+o,t+s,e+o,t,"Z"]}function ri(e,t,n,r,o){return["M",e,t,"L",e+n,t,"L",e+n,t+r,"L",e,t+r,"Z","M",e+o,t+o,"L",e+o,t+r-o,"L",e+n-o,t+r-o,"L",e+n-o,t+o,"Z"]}var oi=(e,t,n)=>{let r=[],o=0;for(let s of e){if(typeof s=="string"){r.push(s),o=0;continue}r.push(s+(o++%2===0?t:n))}return r};function si(e,t,n,r){var C,R,O,ue,te,z,U,F,D,G;let o=(C=e.w)!=null?C:32,s=(R=e.h)!=null?R:e.shape==="rect"?20:o,i=(O=e.x)!=null?O:t.width-t.margins[1]-o-4,l=(ue=e.y)!=null?ue:t.height-t.margins[2]-s-12,a=(te=e.depth)!=null?te:.3,u=(z=e.color)!=null?z:"#e8e8e8",f=(U=e.opacity)!=null?U:.9,m="#ffffff",y="#9a9a9a",x=[],d=[],c=i+o/2,p=l+s/2,E=(F=e.shape)!=null?F:"circle";if(E==="circle"){let J=Math.min(o,s)/2;x.push(uo(c,p,J,Math.max(.6,J*.06))),x.push(uo(c,p,J*.68,Math.max(.35,J*.03)))}else E==="rect"&&x.push(ri(i,l,o,s,Math.max(.6,Math.min(o,s)*.05)));let v=e.text?Ye(e.text,n):"",k=e.centerText?Ye(e.centerText,n):"";if(E==="circle"&&v){let J=Math.min(o,s)/2,W=(D=e.fontSize)!=null?D:Math.max(5,J*.62),oe=J*.84,V=[...v],I=Math.min(Math.PI*1.7,V.length*(W*Ce*1.05/oe));V.forEach((B,K)=>{let N=-Math.PI/2-I/2+I*(K+.5)/V.length;d.push({text:B,cx:c+oe*Math.cos(N),cy:p+oe*Math.sin(N),size:W,angle:N*180/Math.PI+90})}),k&&d.push({text:k,cx:c,cy:p,size:e.fontSize?e.fontSize*1.3:Math.max(6,J*.75)})}else if(v||k){let J=[v,k].filter(Boolean).join(`
7
- `),W=(G=e.fontSize)!=null?G:Math.max(6,Math.min(s*.45,o*.8/Math.max(1,Math.max(...J.split(`
8
- `).map(oe=>[...oe].length)))/Ce));d.push({text:J,cx:c,cy:p,size:W})}let S=[],j=(J,W,oe,V)=>{var I;for(let B of x)S.push({kind:"path",d:oi(B,J,W),fill:oe,opacity:V,source:{band:"watermark"}});for(let B of d)S.push(ir(B.text,B.cx+J,B.cy+W,B.size,{color:oe,opacity:V,angle:(I=B.angle)!=null?I:0,bold:!0,measure:r}))};return e.image&&S.push({kind:"image",x:E==="none"?i:i+o*.2,y:E==="none"?l:l+s*.2,w:E==="none"?o:o*.6,h:E==="none"?s:s*.6,src:e.image,fit:"contain",emboss:!0,opacity:f,source:{band:"watermark"}}),j(-a,-a,m,f),j(a,a,y,f*.55),j(0,0,u,f),S}function mo(e,t,n,r,o){let s=t.watermark===void 0?[]:(Array.isArray(t.watermark)?t.watermark:[t.watermark]).map(l=>typeof l=="string"?{text:l}:l),i=t.emboss===void 0?[]:Array.isArray(t.emboss)?t.emboss:[t.emboss];!s.length&&!i.length||e.forEach((l,a)=>{let u=r(l,a),f=[],m=[];for(let y of s)!co(y.pages,a,e.length)||!y.text&&!y.image||(y.layer==="front"?m:f).push(...ti(y,l,u,o));for(let y of i)co(y.pages,a,e.length)&&m.push(...si(y,{...l,margins:n.margins},u,o));l.items=[...f,...l.items,...m]})}var fo=new Map;function Rt(e){let t=fo.get(e);return t||(t=(async()=>{if(typeof document=="undefined"||typeof Image=="undefined")return e;let n=new Image;n.crossOrigin="anonymous",n.src=e,await n.decode();let o=Math.min(1,600/Math.max(n.naturalWidth,n.naturalHeight)),s=Math.max(1,Math.round(n.naturalWidth*o)),i=Math.max(1,Math.round(n.naturalHeight*o)),l=document.createElement("canvas");l.width=s,l.height=i;let a=l.getContext("2d");if(!a)return e;a.drawImage(n,0,0,s,i);let{data:u}=a.getImageData(0,0,s,i),f=new Float32Array(s*i);for(let x=0;x<s*i;x++){let d=(u[x*4]*.299+u[x*4+1]*.587+u[x*4+2]*.114)/255;f[x]=(1-d)*(u[x*4+3]/255)}let m=a.createImageData(s,i),y=Math.max(1,Math.round(Math.max(s,i)/200));for(let x=0;x<i;x++)for(let d=0;d<s;d++){let c=x*s+d,p=f[Math.max(0,x-y)*s+Math.max(0,d-y)],v=(f[Math.min(i-1,x+y)*s+Math.min(s-1,d+y)]-p)*2.2,k=f[c]>.15,S=Math.max(0,Math.min(255,232+v*110)),j=Math.min(1,Math.abs(v)*1.6+(k?.35:0));m.data[c*4]=m.data[c*4+1]=m.data[c*4+2]=S,m.data[c*4+3]=Math.round(j*255)}return a.putImageData(m,0,0),l.toDataURL("image/png")})().catch(()=>e),fo.set(e,t),t)}var De=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),re=e=>(Math.round(e*1e3)/1e3).toString();function ar(e,t){return e==="dashed"?` stroke-dasharray="${re(t*3)} ${re(t*2)}"`:e==="dotted"?` stroke-dasharray="0 ${re(t*2)}" stroke-linecap="round"`:""}function gn(e,t,n,r,o,s){if(o.style==="double"){let i=o.width/3,l=o.width/2-i/2,[a,u]=s?[0,l]:[l,0];return`<line x1="${re(e-a)}" y1="${re(t-u)}" x2="${re(n-a)}" y2="${re(r-u)}" stroke="${De(o.color)}" stroke-width="${re(i)}"/><line x1="${re(e+a)}" y1="${re(t+u)}" x2="${re(n+a)}" y2="${re(r+u)}" stroke="${De(o.color)}" stroke-width="${re(i)}"/>`}return`<line x1="${re(e)}" y1="${re(t)}" x2="${re(n)}" y2="${re(r)}" stroke="${De(o.color)}" stroke-width="${re(o.width)}"${ar(o.style,o.width)}/>`}function ii(e,t,n,r,o){let s="";return o.top&&(s+=gn(e,t,e+n,t,o.top,!0)),o.bottom&&(s+=gn(e,t+r,e+n,t+r,o.bottom,!0)),o.left&&(s+=gn(e,t,e,t+r,o.left,!1)),o.right&&(s+=gn(e+n,t,e+n,t+r,o.right,!1)),s}function ai(e){return e.map(t=>typeof t=="number"?re(t):t).join(" ")}var Pt=e=>e!==void 0&&e<1?` opacity="${re(e)}"`:"";function li(e,t){var u;let n=e.font.size*Ce,r=`${Kn(e.font.family)}, ${Wn}`.replace(/"/g,"'"),o=`font-family="${De(r)}" font-size="${re(n)}"${e.font.bold?' font-weight="bold"':""}${e.font.italic?' font-style="italic"':""} fill="${De(e.color)}"`+(e.letterSpacing?` letter-spacing="${re(e.letterSpacing)}"`:""),s="";for(let f of e.lines)f.text&&(s+=`<text x="${re(f.x)}" y="${re(f.y)}" xml:space="preserve">${De(f.text)}</text>`,e.underline&&(s+=`<line x1="${re(f.x)}" y1="${re(f.y+n*.12)}" x2="${re(f.x+f.width)}" y2="${re(f.y+n*.12)}" stroke="${De(e.color)}" stroke-width="${re(n*.06)}"/>`),e.strike&&(s+=`<line x1="${re(f.x)}" y1="${re(f.y-n*.3)}" x2="${re(f.x+f.width)}" y2="${re(f.y-n*.3)}" stroke="${De(e.color)}" stroke-width="${re(n*.06)}"/>`));let i=((u=e.source)==null?void 0:u.band)!=="watermark"&&e.lines.some(f=>f.x<e.x-.05||f.x+f.width>e.x+e.w+.05||f.y-n*.8<e.y-.05||f.y+n*.2>e.y+e.h+.05),l=e.rotate?` transform="rotate(${re(e.rotate)} ${re(e.x+e.w/2)} ${re(e.y+e.h/2)})"`:"";if(!i)return{defs:"",body:`<g ${o}${l}${Pt(e.opacity)}>${s}</g>`};let a=t();return{defs:`<clipPath id="${a}"><rect x="${re(e.x)}" y="${re(e.y)}" width="${re(e.w)}" height="${re(e.h)}"/></clipPath>`,body:`<g ${o} clip-path="url(#${a})"${l}${Pt(e.opacity)}>${s}</g>`}}function ci(e,t){var n,r,o;switch(e.kind){case"box":{let s="",i=Pt(e.opacity);if(e.radius||e.stroke){let l=(r=(n=e.stroke)==null?void 0:n.width)!=null?r:0;s+=`<rect x="${re(e.x)}" y="${re(e.y)}" width="${re(e.w)}" height="${re(e.h)}"${e.radius?` rx="${re(e.radius)}"`:""} fill="${e.fill?De(e.fill):"none"}"`+(l?` stroke="${De(e.stroke.color)}" stroke-width="${re(l)}"${ar(e.stroke.dash,l)}`:"")+`${i}/>`}else e.fill&&(s+=`<rect x="${re(e.x)}" y="${re(e.y)}" width="${re(e.w)}" height="${re(e.h)}" fill="${De(e.fill)}"${i}/>`);return e.border&&(s+=ii(e.x,e.y,e.w,e.h,e.border)),{defs:"",body:s}}case"line":return{defs:"",body:`<line x1="${re(e.x1)}" y1="${re(e.y1)}" x2="${re(e.x2)}" y2="${re(e.y2)}" stroke="${De(e.color)}" stroke-width="${re(e.width)}"${ar(e.dash,e.width)}${Pt(e.opacity)}/>`};case"path":return{defs:"",body:`<path d="${ai(e.d)}" fill="${e.fill?De(e.fill):"none"}"${e.stroke?` stroke="${De(e.stroke)}" stroke-width="${re((o=e.strokeWidth)!=null?o:.2)}" stroke-linejoin="round"`:""}${Pt(e.opacity)}/>`};case"image":{let s=e.fit==="fill"?"none":e.fit==="cover"?"xMidYMid slice":"xMidYMid meet",i=e.rotate?` transform="rotate(${re(e.rotate)} ${re(e.x+e.w/2)} ${re(e.y+e.h/2)})"`:"",l="",a="";if(e.fit==="cover"){let u=t();l=`<clipPath id="${u}"><rect x="${re(e.x)}" y="${re(e.y)}" width="${re(e.w)}" height="${re(e.h)}"/></clipPath>`,a=` clip-path="url(#${u})"`}return{defs:l,body:`<image x="${re(e.x)}" y="${re(e.y)}" width="${re(e.w)}" height="${re(e.h)}" preserveAspectRatio="${s}" href="${De(e.src)}"${e.emboss?' data-emboss="1"':""}${a}${i}${Pt(e.opacity)}/>`}}case"text":return li(e,t)}}var ui=0;function tt(e,t={}){let n=`fr${(ui++).toString(36)}-`,r=0,o=()=>`${n}${r++}`,s="",i="";for(let a of e.items){let u=ci(a,o);s+=u.defs,i+=u.body}return`<svg xmlns="http://www.w3.org/2000/svg" ${t.scale?`width="${re(e.width*t.scale)}" height="${re(e.height*t.scale)}"`:`width="${re(e.width)}mm" height="${re(e.height)}mm"`} viewBox="0 0 ${re(e.width)} ${re(e.height)}"${t.className?` class="${t.className}"`:""} text-rendering="geometricPrecision">${s?`<defs>${s}</defs>`:""}<rect width="100%" height="100%" fill="#fff"/>${i}</svg>`}function bt(e){e.querySelectorAll("image[data-emboss]").forEach(t=>{let n=t.getAttribute("href");n&&(t.removeAttribute("data-emboss"),t.setAttribute("visibility","hidden"),Rt(n).then(r=>{t.setAttribute("href",r),t.removeAttribute("visibility")}))})}function ho(e,t,n={}){e.innerHTML=tt(t,{...n,className:"fr-page-svg"}),bt(e)}var fi=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function lr(e){let t=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),n=e.length*8,r=new Uint8Array(e.length+9+63>>6<<6);r.set(e),r[e.length]=128;let o=new DataView(r.buffer);o.setUint32(r.length-8,Math.floor(n/4294967296)),o.setUint32(r.length-4,n>>>0);let s=new Uint32Array(64);for(let i=0;i<r.length;i+=64){for(let c=0;c<16;c++)s[c]=o.getUint32(i+c*4);for(let c=16;c<64;c++){let p=s[c-15],E=s[c-2],v=(p>>>7|p<<25)^(p>>>18|p<<14)^p>>>3,k=(E>>>17|E<<15)^(E>>>19|E<<13)^E>>>10;s[c]=s[c-16]+v+s[c-7]+k>>>0}let[l,a,u,f,m,y,x,d]=t;for(let c=0;c<64;c++){let p=(m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7),E=m&y^~m&x,v=d+p+E+fi[c]+s[c]>>>0,k=(l>>>2|l<<30)^(l>>>13|l<<19)^(l>>>22|l<<10),S=l&a^l&u^a&u,j=k+S>>>0;d=x,x=y,y=m,m=f+v>>>0,f=u,u=a,a=l,l=v+j>>>0}t[0]+=l,t[1]+=a,t[2]+=u,t[3]+=f,t[4]+=m,t[5]+=y,t[6]+=x,t[7]+=d}return[...t].map(i=>i.toString(16).padStart(8,"0")).join("")}function cr(e){return e.map(t=>t.items.filter(n=>{var r,o;return n.kind==="text"&&((r=n.source)==null?void 0:r.band)!=="watermark"&&!((o=n.source)!=null&&o.fingerprint)}).map(n=>n.kind==="text"?n.text.replace(/\s+/g," ").trim():"").filter(Boolean).join(`
1
+ "use strict";var FreeReport=(()=>{var Gn=Object.defineProperty;var Es=Object.getOwnPropertyDescriptor;var Rs=Object.getOwnPropertyNames;var Ts=Object.prototype.hasOwnProperty;var Ps=(e,t)=>{for(var n in t)Gn(e,n,{get:t[n],enumerable:!0})},js=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Rs(t))!Ts.call(e,o)&&o!==n&&Gn(e,o,{get:()=>t[o],enumerable:!(r=Es(t,o))||r.enumerable});return e};var Cs=e=>js(Gn({},"__esModule",{value:!0}),e);var Zi={};Ps(Zi,{AgentError:()=>ot,FUNCTIONS:()=>mn,PAPER:()=>lt,agent:()=>st,applyEmboss:()=>bt,blankReport:()=>tn,canonicalText:()=>cr,canvasMeasurer:()=>Xn,checkExpression:()=>hn,compile:()=>We,contentWidth:()=>rt,createDesigner:()=>$s,createReport:()=>qn,createViewer:()=>zn,dataToCsv:()=>Pn,dataToXlsx:()=>Ft,defaultMeasurer:()=>Et,embossImage:()=>Tt,encodeCode128:()=>kn,encodeDataMatrix:()=>Sn,encodeEan13:()=>$n,encodePdf417:()=>Mn,encodeQr:()=>vn,ensureFonts:()=>it,estimateMeasurer:()=>_n,evaluate:()=>Ae,fingerprintPages:()=>jt,formatDate:()=>un,formatNumber:()=>or,formatValue:()=>je,getFont:()=>ht,interpolate:()=>Ye,koreanAmount:()=>Rt,koreanNumber:()=>fn,layoutReport:()=>At,loadFontBytes:()=>Dt,loadFonts:()=>zr,pageGeometry:()=>nt,pageToSvg:()=>tt,pagesToHwpx:()=>Cn,pagesToXlsx:()=>Lt,paramValues:()=>ft,printPages:()=>Bn,registerFont:()=>ln,renderPage:()=>ho,renderPdf:()=>Ms,renderXlsx:()=>Ss,resetMeasurer:()=>sn,rowsOf:()=>_e,saveFile:()=>Dr,setLicenseKey:()=>Qr,sha256Hex:()=>lr,ttfMeasurer:()=>qr,verifyLicense:()=>tr,version:()=>Ot,wrapText:()=>an,writePdf:()=>vt,writeXlsx:()=>Yt});var Ce=.35277777777777775,el=25.4/96,Wn="'Malgun Gothic', 'Apple SD Gothic Neo', 'Noto Sans KR', sans-serif",Ur=(e,t=e.size*(96/72))=>`${e.italic?"italic ":""}${e.bold?"bold ":""}${t}px ${Kn(e.family)}, ${Wn}`,Kn=e=>/^[\w-]+$/.test(e)?e:`'${e.replace(/'/g,"")}'`,As=e=>e>=4352&&e<=4447||e>=11904&&e<=42191||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65280&&e<=65376||e>=65504&&e<=65510,_n={width(e,t){let n=0;for(let r of e){let o=r.codePointAt(0);As(o)?n+=.92:r===" "?n+=.28:/[il.,:;'|!]/.test(r)?n+=.25:/[mwMW@]/.test(r)?n+=.82:/[A-Z]/.test(r)?n+=.64:n+=.53}return n*t.size*Ce*(t.bold?1.04:1)}};function Xn(){let e=null;try{e=typeof document!="undefined"?document.createElement("canvas").getContext("2d"):null}catch{e=null}if(!e)return _n;let t=e,n=new Map,r=100;return{width(o,s){let a=`${s.family}|${s.bold?1:0}|${s.italic?1:0}`,l=n.get(a);if(l||(l=new Map,n.set(a,l)),o.length>64)return t.font=Ur(s,r),t.measureText(o).width/r*s.size*Ce;let i=l.get(o);return i===void 0&&(t.font=Ur(s,r),i=t.measureText(o).width/r,l.size>2e4&&l.clear(),l.set(o,i)),i*s.size*Ce}}}var on=null;function Et(){return on!=null?on:on=Xn()}function sn(){on=null}var Ls=/^[)\]}.,:;!?%、。,.)」』】〕〉》’”]/;function an(e,t,n,r,o=0){var l;let s=[],a=i=>r.width(i,n)+o*[...i].length;for(let i of e.split(/\r?\n/)){if(i===""){s.push("");continue}if(a(i)<=t){s.push(i);continue}let u=(l=i.match(/[A-Za-z0-9À-ɏ_@#&*+=/\\'"`~^$€₩.,:;!?%()[\]{}<>|-]+|\s+|./gu))!=null?l:[],f="";for(let g of u){let w=f+g;if(a(w.trimEnd())<=t||f===""){if(f===""&&a(g)>t&&!/^\s+$/.test(g)){let k="";for(let d of g)k&&a(k+d)>t&&(s.push(k),k=""),k+=d;f=k}else f=w;continue}if(/^\s+$/.test(g)){s.push(f.trimEnd()),f="";continue}if(Ls.test(g)&&f.length>1){let k=[...f],d=k.pop();s.push(k.join("").trimEnd()),f=d+g;continue}s.push(f.trimEnd()),f=g}s.push(f.trimEnd())}return s}var Vn="https://cdn.jsdelivr.net/gh/fonts-archive",Wr=new Map,Kr=e=>e.toLowerCase().replace(/[\s'"_-]/g,"");function ln(e,t){Wr.set(Kr(e),t)}function ht(e){return Wr.get(Kr(e))}ln("Nanum Gothic",{css:"https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@400;700&display=swap",normal:`${Vn}/NanumGothic/NanumGothic.ttf`,bold:`${Vn}/NanumGothic/NanumGothicBold.ttf`});ln("Nanum Myeongjo",{css:"https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700&display=swap",normal:`${Vn}/NanumMyeongjo/NanumMyeongjo.ttf`});function Yn(e){var r,o,s,a,l;let t=new Set(["Nanum Gothic"]);(r=e.font)!=null&&r.family&&t.add(e.font.family);for(let i of Object.values((o=e.styles)!=null?o:{}))i.fontFamily&&t.add(i.fontFamily);let n=[e.bands.title,e.bands.pageHeader,e.bands.columnHeader,e.bands.detail,e.bands.summary,e.bands.pageFooter,e.bands.noData,...((s=e.bands.groups)!=null?s:[]).flatMap(i=>[i.header,i.footer])];for(let i of n)for(let u of(a=i==null?void 0:i.elements)!=null?a:[])(l=u.style)!=null&&l.fontFamily&&t.add(u.style.fontFamily);return[...t]}var Gr=new Set;function Ht(e,t=document){var n;for(let r of e){let o=(n=ht(r))==null?void 0:n.css;if(!o||t===document&&Gr.has(o)||t.querySelector(`link[data-fr-font="${CSS.escape(o)}"]`))continue;let s=t.createElement("link");s.rel="stylesheet",s.href=o,s.dataset.frFont=o,t.head.appendChild(s),t===document&&Gr.add(o)}}async function it(e,t=4e3){if(typeof document=="undefined"||!document.fonts)return;let n=Yn(e);Ht(n);let r="\uAC00\uB098\uB2E4ABC123",o=n.flatMap(l=>[`400 12px '${l}'`,`700 12px '${l}'`].map(i=>document.fonts.load(i,r).catch(()=>[]))),s=n.map(l=>document.fonts.check(`12px '${l}'`,r)).join();await Promise.race([Promise.all(o),new Promise(l=>setTimeout(l,t))]);let a=n.map(l=>document.fonts.check(`12px '${l}'`,r)).join();s!==a&&sn()}function Jn(e){let t=new Set;for(let o of e)for(let s of o.items)s.kind==="text"&&t.add(s.font.family);let n={},r=ht("Nanum Gothic");n.default={normal:r.normal,bold:r.bold};for(let o of t){let s=ht(o);s!=null&&s.normal&&(n[o]={normal:s.normal,bold:s.bold})}return n}var Ot="0.9.0",_r="2026-10-16";var Fs={kty:"EC",crv:"P-256",x:"MiJXJR8TZJ_-0VKk0wIQ-5mzRsyQ6ruGsbcRRdw9jrw",y:"MTdklYSzCM2pganffz7PPMfxSclQkBLqU_9se_VDznM"},Zn="https://freereport.app/pricing/",Xr="https://freereport.app/api/usage",Ds="https://freereport.app/api/domain-status",Vr=e=>{let t=atob(e.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-e.length%4)%4));return Uint8Array.from(t,n=>n.charCodeAt(0))};function er(e){let t=e.toLowerCase().replace(/^\[|\]$/g,"");return!t||t==="localhost"||t==="127.0.0.1"||t==="::1"||t==="0.0.0.0"||t.endsWith(".localhost")||t.endsWith(".test")||t.endsWith(".local")||/^(10\.\d+|192\.168|172\.(1[6-9]|2\d|3[01]))\.\d+\.\d+$/.test(t)}function Is(e,t){let n=e.toLowerCase().replace(/\.$/,"");return t.some(r=>{let o=r.toLowerCase().replace(/\.$/,""),s=o.startsWith("*."),a=s?o.slice(2):o;return a?n===a||n===`www.${a}`?!0:s&&n.endsWith(`.${a}`):!1})}var Bs=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`;async function tr(e,t,n={}){var a,l,i;let r=typeof e=="string"?e.trim().split("."):[];if(r.length!==3||r[0]!=="FR1")return{ok:!1,reason:"format"};let o;try{if(o=JSON.parse(new TextDecoder().decode(Vr(r[1]))),!Array.isArray(o.domains)||typeof o.expires!="string")return{ok:!1,reason:"format"}}catch{return{ok:!1,reason:"format"}}let s=typeof crypto!="undefined"?crypto.subtle:void 0;if(!s)return{ok:!1,reason:"unsupported",info:o};try{let u=await s.importKey("jwk",(a=n.publicKey)!=null?a:Fs,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]),f=new TextEncoder().encode(`${r[0]}.${r[1]}`);if(!await s.verify({name:"ECDSA",hash:"SHA-256"},u,Vr(r[2]),f))return{ok:!1,reason:"signature",info:o}}catch{return{ok:!1,reason:"signature",info:o}}return Bs((l=n.now)!=null?l:new Date)>o.expires?{ok:!1,reason:"expired",info:o}:Is(t,o.domains)?o.updates&&((i=n.released)!=null?i:_r)>o.updates?{ok:!1,reason:"updates",info:o}:{ok:!0,info:o}:{ok:!1,reason:"domain",info:o}}var Qn,Yr=new Map,qt=null;function Qr(e){Qn=e}var Jr={missing:`FreeReport is free for personal use. Company use needs a domain license (\u20A9500,000 per domain per year, or \u20A9900,000 perpetual): ${Zn}
2
+ FreeReport\uB294 \uAC1C\uC778\uC5D0\uAC8C \uBB34\uB8CC\uC785\uB2C8\uB2E4. \uD68C\uC0AC\uC5D0\uC11C \uC4F0\uB824\uBA74 \uB3C4\uBA54\uC778 \uB77C\uC774\uC120\uC2A4(\uB3C4\uBA54\uC778\uB2F9 \uC5F0 50\uB9CC \uC6D0, \uC601\uAD6C 90\uB9CC \uC6D0)\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4: ${Zn}`,format:"FreeReport: the license key is not in the right format. / \uB77C\uC774\uC120\uC2A4 \uD0A4 \uD615\uC2DD\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",signature:"FreeReport: the license key could not be verified. / \uB77C\uC774\uC120\uC2A4 \uD0A4\uB97C \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",expired:"FreeReport: the license key has expired. / \uB77C\uC774\uC120\uC2A4 \uAE30\uAC04\uC774 \uB05D\uB0AC\uC2B5\uB2C8\uB2E4.",domain:"FreeReport: the license key is for a different domain. / \uB2E4\uB978 \uB3C4\uBA54\uC778\uC6A9 \uB77C\uC774\uC120\uC2A4 \uD0A4\uC785\uB2C8\uB2E4.",updates:"FreeReport: this version was released after the update period of your perpetual license. / \uC601\uAD6C \uB77C\uC774\uC120\uC2A4\uC758 \uC5C5\uB370\uC774\uD2B8 \uAE30\uAC04 \uB4A4\uC5D0 \uB098\uC628 \uBC84\uC804\uC785\uB2C8\uB2E4."};function Zr(e,t=typeof location!="undefined"?location.hostname:""){try{if(er(t)||typeof navigator=="undefined")return;let n=new Date().toISOString().slice(0,10),r=`${t}|${n}|${e.licensed?1:0}`,o=typeof localStorage!="undefined"?localStorage:null;if((o==null?void 0:o.getItem("freereport:usage"))===r)return;o==null||o.setItem("freereport:usage",r);let s=JSON.stringify({version:e.version,licensed:e.licensed,company:e.company,url:`${location.origin}${location.pathname}`});typeof navigator.sendBeacon=="function"?navigator.sendBeacon(Xr,s):typeof fetch=="function"&&fetch(Xr,{method:"POST",body:s,mode:"no-cors",keepalive:!0}).catch(()=>{})}catch{}}function nr(e=Qn,t=typeof location!="undefined"?location.hostname:""){if(er(t))return Promise.resolve(!0);let n=e!=null?e:Qn,r=`${n!=null?n:""}@${t}`,o=Yr.get(r);return o||(n?o=tr(n,t).then(s=>{if(Zr({version:Ot,licensed:s.ok,company:s.ok?s.info.company:void 0},t),s.ok||s.reason==="unsupported")return s.ok||s.reason==="unsupported";let a=s.info?` (${s.info.domains.join(", ")}, ${s.info.expires})`:"";return console.warn(`${Jr[s.reason]}${a}
3
+ ${Zn}`),!1},()=>!1):(console.info(Jr.missing),Zr({version:Ot,licensed:!1},t),o=Promise.resolve(!1)),Yr.set(r,o),o)}function Ns(e=typeof location!="undefined"?location.hostname:""){var r;if(er(e)||typeof fetch!="function")return Promise.resolve(!1);if(qt)return qt;let t=new Date().toISOString().slice(0,10),n=null;try{n=typeof localStorage!="undefined"?localStorage:null;let o=JSON.parse((r=n==null?void 0:n.getItem("freereport:badge"))!=null?r:"null");if(o&&o.host===e&&o.day===t)return qt=Promise.resolve(o.show)}catch{}return qt=fetch(Ds,{mode:"cors",credentials:"omit"}).then(o=>o.ok?o.json():{badge:!1}).then(o=>{let s=o.badge===!0;try{n==null||n.setItem("freereport:badge",JSON.stringify({host:e,day:t,show:s}))}catch{}return s},()=>!1),qt}async function eo(e,t=typeof location!="undefined"?location.hostname:""){return await nr(e,t)?!1:Ns(t)}var Hs=["","\uC77C","\uC774","\uC0BC","\uC0AC","\uC624","\uC721","\uCE60","\uD314","\uAD6C"],Os=["","\uC2ED","\uBC31","\uCC9C"],to=["","\uB9CC","\uC5B5","\uC870","\uACBD"];function fn(e){if(!Number.isFinite(e))return"";let t=Math.floor(Math.abs(e));if(t===0)return"\uC601";let n=[];for(let r=0;t>0&&r<to.length;r++){let o=t%1e4;if(t=Math.floor(t/1e4),!o)continue;let s="",a=String(o).padStart(4,"0");for(let l=0;l<4;l++){let i=Number(a[l]);i&&(s+=Hs[i]+Os[3-l])}n.unshift(s+to[r])}return(e<0?"\uB9C8\uC774\uB108\uC2A4 ":"")+n.join("")}function Rt(e){return Number.isFinite(e)?`\uC77C\uAE08 ${fn(e).replace(/(^|[만억조경 ])([십백천])/g,"$1\uC77C$2")}\uC6D0\uC815`:""}var no=["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],qs=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],zs=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],Us=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],gt=(e,t=2)=>String(e).padStart(t,"0"),cn=new Map,rr=e=>{let t=cn.get(e);return t===void 0&&(t=Gs(e),cn.size>500&&cn.clear(),cn.set(e,t)),t},Gs=e=>/(yy|M{1,4}|d{1,4}|H{1,2}|h{1,2}|m{2}|s{2})/.test(e.replace(/"[^"]*"|\[[^\]]*\]/g,""))&&!/[#0]/.test(e.replace(/"[^"]*"/g,"").replace(/(yy+|M+|d+|H+|h+|m+|s+)/g,""));function Ws(e){var t,n,r;if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e=="number"&&Number.isFinite(e))return new Date(e);if(typeof e=="string"&&e.trim()){let o=/^(\d{4})[-./](\d{1,2})[-./](\d{1,2})(?:[ T](\d{1,2}):(\d{2})(?::(\d{2}))?)?$/.exec(e.trim());if(o)return new Date(+o[1],+o[2]-1,+o[3],+((t=o[4])!=null?t:0),+((n=o[5])!=null?n:0),+((r=o[6])!=null?r:0));let s=new Date(e);return Number.isNaN(s.getTime())?null:s}return null}function un(e,t,n="ko"){let r=n.startsWith("ko");return t.replace(/"([^"]*)"|yyyy|yy|MMMM|MMM|MM|M|dddd|ddd|dd|d|HH|H|hh|h|mm|m|ss|s|a|tt/g,(o,s)=>{if(s!==void 0)return s;let a=e.getHours();switch(o){case"yyyy":return String(e.getFullYear());case"yy":return gt(e.getFullYear()%100);case"MMMM":return r?`${e.getMonth()+1}\uC6D4`:new Date(2e3,e.getMonth(),1).toLocaleString("en",{month:"long"});case"MMM":return r?`${e.getMonth()+1}\uC6D4`:Us[e.getMonth()];case"MM":return gt(e.getMonth()+1);case"M":return String(e.getMonth()+1);case"dddd":return r?`${no[e.getDay()]}\uC694\uC77C`:zs[e.getDay()];case"ddd":return r?no[e.getDay()]:qs[e.getDay()];case"dd":return gt(e.getDate());case"d":return String(e.getDate());case"HH":return gt(a);case"H":return String(a);case"hh":return gt(a%12||12);case"h":return String(a%12||12);case"mm":return gt(e.getMinutes());case"m":return String(e.getMinutes());case"ss":return gt(e.getSeconds());case"s":return String(e.getSeconds());case"a":case"tt":return r?a<12?"\uC624\uC804":"\uC624\uD6C4":a<12?"AM":"PM"}return o})}function Ks(e){let t=[],n="",r=!1;for(let o of e)o==='"'&&(r=!r),o===";"&&!r?(t.push(n),n=""):n+=o;return t.push(n),t}function or(e,t){var R,H;let n=Ks(t),r=n[0],o=e;e<0&&n[1]!==void 0?(r=n[1],o=-e):e===0&&n[2]!==void 0&&(r=n[2]);let s=/[#0][#0,]*(?:\.[#0]+)?|\.[#0]+/.exec(r.replace(/"[^"]*"/g,ue=>"\0".repeat(ue.length)));if(!s)return r.replace(/"/g,"");let a=s[0],l=r.slice(0,s.index).replace(/"/g,""),i=r.slice(s.index+a.length);(i.includes("%")||l.includes("%"))&&(o*=100);let f=0,g=a;for(;g.endsWith(",");)f++,g=g.slice(0,-1);o/=1e3**f;let[w,k=""]=g.split("."),d=((R=k.match(/0/g))!=null?R:[]).length,c=k.length,m=Math.min(c,20),E=Math.abs(o)<1e15?+`${Math.round(+`${Math.abs(o)}e${m}`)}e-${m}`:Math.abs(o),M=(Number.isFinite(E)?E:Math.abs(o)).toFixed(m);c>d&&(M=M.replace(new RegExp(`0{1,${c-d}}$`),"").replace(/\.$/,""));let[$,S]=M.split("."),P=((H=w.match(/0/g))!=null?H:[]).length;return $==="0"&&P===0&&($=""),$=$.padStart(P,"0"),w.includes(",")&&($=$.replace(/\B(?=(\d{3})+(?!\d))/g,",")),i=i.replace(/"/g,""),`${o<0&&n[1]===void 0&&Math.abs(o)>=.5*10**-c?"-":""}${l}${$}${S?`.${S}`:""}${i}`}function je(e,t,n="ko"){if(e==null)return"";let r=t==null?void 0:t.trim();if(r){if(r==="korean")return Rt(Number(e));if(r==="koreanNumber")return fn(Number(e));if(r==="bizNo")return String(e).replace(/\D/g,"").replace(/^(\d{3})(\d{2})(\d{5})$/,"$1-$2-$3");if(r==="upper")return String(e).toUpperCase();if(r==="lower")return String(e).toLowerCase();if(rr(r)){let s=Ws(e);if(s)return un(s,r,n)}let o=typeof e=="number"?e:typeof e=="string"&&e.trim()!==""?Number(e.replace(/,/g,"")):NaN;if(Number.isFinite(o))return or(o,r)}return e instanceof Date?un(e,"yyyy-MM-dd",n):typeof e=="number"?Number.isInteger(e)?String(e):String(Math.round(e*1e10)/1e10):typeof e=="boolean"?e?"true":"false":Array.isArray(e)?e.map(o=>je(o,t,n)).join(", "):typeof e=="object"?"":String(e)}var _s=["===","!==","==","!=","<=",">=","&&","||","??","<",">","+","-","*","/","%","!","?",":","(",")",",",".","[","]"];function Xs(e){var r;let t=[],n=0;for(;n<e.length;){let o=e[n];if(/\s/.test(o)){n++;continue}if(/[0-9]/.test(o)||o==="."&&/[0-9]/.test((r=e[n+1])!=null?r:"")){let a=/^(\d*\.?\d+(?:[eE][+-]?\d+)?)/.exec(e.slice(n));t.push({t:"num",v:Number(a[1])}),n+=a[1].length;continue}if(o==='"'||o==="'"){let a="";for(n++;n<e.length&&e[n]!==o;){if(e[n]==="\\"&&n+1<e.length){let l=e[++n];a+=l==="n"?`
4
+ `:l==="t"?" ":l}else a+=e[n];n++}if(e[n]!==o)throw new SyntaxError("Unclosed string");n++,t.push({t:"str",v:a});continue}if(/[A-Za-z_$\u0080-￿]/.test(o)){let a=/^[A-Za-z_$\u0080-￿][\w$\u0080-￿]*/.exec(e.slice(n));t.push({t:"id",v:a[0]}),n+=a[0].length;continue}let s=_s.find(a=>e.startsWith(a,n));if(!s)throw new SyntaxError(`Unexpected "${o}"`);t.push({t:"op",v:s}),n+=s.length}return t.push({t:"end"}),t}var Se=e=>{if(typeof e=="number")return e;if(typeof e=="string"){let t=Number(e.replace(/,/g,""));return Number.isFinite(t)?t:NaN}return typeof e=="boolean"?e?1:0:e instanceof Date?e.getTime():e==null?0:Number(e)},Ne=e=>{if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e=="number")return new Date(e);if(typeof e=="string"&&e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e),n=t?new Date(+t[1],+t[2]-1,+t[3]):new Date(e);return Number.isNaN(n.getTime())?null:n}return null},Vs=new Set(["__proto__","prototype","constructor"]);function ro(e,t){if(e==null)return;let n=String(t);if(!Vs.has(n)){if(typeof e=="string")return n==="length"?e.length:void 0;if(typeof e=="object")return Array.isArray(e)&&n==="length"?e.length:Object.prototype.hasOwnProperty.call(e,n)?e[n]:void 0}}function oo(e,t){var n,r;return t==="report"||t==="all"?e.allRows:t==="group"?(n=e.groupRows)!=null?n:e.allRows:t==="page"&&(r=e.pageRows)!=null?r:e.rows}function Ys(e,t,n){return n?t.map((r,o)=>n({...e,row:r,vars:{...e.vars,rowNum:o+1}})):t}var so={sum:e=>e.reduce((t,n)=>t+(Number.isFinite(Se(n))?Se(n):0),0),avg:e=>{let t=e.map(Se).filter(Number.isFinite);return t.length?t.reduce((n,r)=>n+r,0)/t.length:0},min:e=>{let t=e.filter(n=>n!=null&&n!=="").map(Se).filter(Number.isFinite);return t.length?t.reduce((n,r)=>r<n?r:n):null},max:e=>{let t=e.filter(n=>n!=null&&n!=="").map(Se).filter(Number.isFinite);return t.length?t.reduce((n,r)=>r>n?r:n):null},count:e=>e.filter(t=>t!=null&&t!==""&&t!==!1).length,distinct:e=>new Set(e.map(t=>t instanceof Date?t.getTime():t)).size,first:e=>e[0],last:e=>e[e.length-1]},ao=e=>String(e).padStart(2,"0"),mn={format:(e,t)=>je(e,typeof t=="string"?t:void 0),korean:e=>Rt(Se(e)),koreanAmount:e=>Rt(Se(e)),round:(e,t)=>{let n=10**(Number(t)||0);return Math.round(Se(e)*n)/n},floor:(e,t)=>{let n=10**(Number(t)||0);return Math.floor(Se(e)*n)/n},ceil:(e,t)=>{let n=10**(Number(t)||0);return Math.ceil(Se(e)*n)/n},abs:e=>Math.abs(Se(e)),number:e=>Se(e),string:e=>e==null?"":String(e),upper:e=>String(e!=null?e:"").toUpperCase(),lower:e=>String(e!=null?e:"").toLowerCase(),trim:e=>String(e!=null?e:"").trim(),len:e=>Array.isArray(e)?e.length:String(e!=null?e:"").length,left:(e,t)=>String(e!=null?e:"").slice(0,Number(t)),right:(e,t)=>{let n=String(e!=null?e:"");return n.slice(Math.max(0,n.length-Number(t)))},substr:(e,t,n)=>String(e!=null?e:"").substr(Number(t),n===void 0?void 0:Number(n)),replace:(e,t,n)=>String(e!=null?e:"").split(String(t)).join(String(n!=null?n:"")),concat:(...e)=>e.map(t=>t==null?"":String(t)).join(""),join:(e,t)=>Array.isArray(e)?e.join(t===void 0?", ":String(t)):"",padStart:(e,t,n)=>String(e!=null?e:"").padStart(Math.min(1e3,Number(t)||0),n===void 0?" ":String(n)),iif:(e,t,n)=>e?t:n,coalesce:(...e)=>e.find(t=>t!=null&&t!==""),isEmpty:e=>e==null||e===""||Array.isArray(e)&&!e.length,date:e=>Ne(e),today:()=>{let e=new Date;return new Date(e.getFullYear(),e.getMonth(),e.getDate())},now:()=>new Date,year:e=>{var t,n;return(n=(t=Ne(e))==null?void 0:t.getFullYear())!=null?n:null},month:e=>Ne(e)?Ne(e).getMonth()+1:null,day:e=>{var t,n;return(n=(t=Ne(e))==null?void 0:t.getDate())!=null?n:null},addDays:(e,t)=>{let n=Ne(e);return n?new Date(n.getFullYear(),n.getMonth(),n.getDate()+Number(t)):null},dateDiff:(e,t)=>{let n=Ne(e),r=Ne(t);return n&&r?Math.round((r.getTime()-n.getTime())/864e5):null},ymd:e=>{let t=Ne(e);return t?`${t.getFullYear()}-${ao(t.getMonth()+1)}-${ao(t.getDate())}`:""},bizNo:e=>String(e!=null?e:"").replace(/\D/g,"").replace(/^(\d{3})(\d{2})(\d{5})$/,"$1-$2-$3"),phone:e=>{let t=String(e!=null?e:"").replace(/\D/g,"");return t.startsWith("02")?t.replace(/^(02)(\d{3,4})(\d{4})$/,"$1-$2-$3"):t.replace(/^(\d{3})(\d{3,4})(\d{4})$/,"$1-$2-$3")},groupSum:(e,t,n)=>{var a;if(!Array.isArray(e))return[];let r=String(t),o=String(n),s=new Map;for(let l of e)s.set(l==null?void 0:l[r],((a=s.get(l==null?void 0:l[r]))!=null?a:0)+(Number.isFinite(Se(l==null?void 0:l[o]))?Se(l==null?void 0:l[o]):0));return[...s].map(([l,i])=>({[r]:l,[o]:i}))},groupCount:(e,t)=>{var o;if(!Array.isArray(e))return[];let n=String(t),r=new Map;for(let s of e)r.set(s==null?void 0:s[n],((o=r.get(s==null?void 0:s[n]))!=null?o:0)+1);return[...r].map(([s,a])=>({[n]:s,count:a}))},min2:(e,t)=>Math.min(Se(e),Se(t)),max2:(e,t)=>Math.max(Se(e),Se(t))},zt=0;function lo(){zt++}var Ut=class Ut{constructor(t){this.toks=t;this.i=0}peek(){return this.toks[this.i]}next(){return this.toks[this.i++]}isOp(t){let n=this.peek();return n.t==="op"&&n.v===t}expect(t){if(!this.isOp(t))throw new SyntaxError(`Expected "${t}"`);this.i++}parse(){let t=this.ternary();if(this.peek().t!=="end")throw new SyntaxError("Unexpected input after expression");return t}ternary(){let t=this.binary(0);if(!this.isOp("?"))return t;this.i++;let n=this.ternary();this.expect(":");let r=this.ternary();return o=>t(o)?n(o):r(o)}binary(t){if(t>=Ut.LEVELS.length)return this.unary();let n=this.binary(t+1);for(;;){let r=this.peek();if(r.t!=="op"||!Ut.LEVELS[t].includes(r.v))return n;this.i++;let o=this.binary(t+1),s=n;n=Zs(r.v,s,o)}}unary(){if(this.isOp("!")){this.i++;let t=this.unary();return n=>!t(n)}if(this.isOp("-")){this.i++;let t=this.unary();return n=>-Se(t(n))}if(this.isOp("+")){this.i++;let t=this.unary();return n=>Se(t(n))}return this.postfix()}postfix(){let t=this.primary();for(;;)if(this.isOp(".")){this.i++;let n=this.next();if(n.t!=="id")throw new SyntaxError('Expected a name after "."');let r=t;t=o=>ro(r(o),n.v)}else if(this.isOp("[")){this.i++;let n=this.ternary();this.expect("]");let r=t;t=o=>ro(r(o),n(o))}else return t}args(){let t=[];if(this.expect("("),!this.isOp(")"))do t.push(this.ternary());while(this.isOp(",")&&this.next());return this.expect(")"),t}primary(){let t=this.next();if(t.t==="num"||t.t==="str"){let r=t.v;return()=>r}if(t.t==="op"&&t.v==="("){let r=this.ternary();return this.expect(")"),r}if(t.t!=="id")throw new SyntaxError("Unexpected end of expression");let n=t.v;if(n==="true")return()=>!0;if(n==="false")return()=>!1;if(n==="null"||n==="undefined")return()=>null;if(this.isOp("(")){let r=this.args();if(Object.prototype.hasOwnProperty.call(so,n)){let s=so[n],[a,l]=r,i=new WeakMap;return u=>{let f=oo(u,l==null?void 0:l(u)),g=i.get(f);if(g&&g.gen===zt&&g.len===f.length)return g.value;let w=s(Ys(u,f,a));return i.set(f,{gen:zt,len:f.length,value:w}),w}}if(n==="runningSum"){let[s,a]=r,l=new WeakMap;return i=>{var g;let u=oo(i,(g=a==null?void 0:a(i))!=null?g:"report"),f=l.get(u);if(!f||f.gen!==zt||f.len!==u.length){let w=new Map,k=0;u.forEach((d,c)=>{let m=Se(s?s({...i,row:d,vars:{...i.vars,rowNum:c+1}}):0);k+=Number.isFinite(m)?m:0,w.set(d,k)}),f={gen:zt,len:u.length,sums:w,total:k},l.set(u,f)}return i.row&&f.sums.has(i.row)?f.sums.get(i.row):f.total}}let o=Object.prototype.hasOwnProperty.call(mn,n)?mn[n]:void 0;if(!o)throw new SyntaxError(`Unknown function ${n}()`);return s=>o(...r.map(a=>a(s)))}return r=>Js(r,n)}};Ut.LEVELS=[["??"],["||"],["&&"],["==","!=","===","!=="],["<","<=",">",">="],["+","-"],["*","/","%"]];var sr=Ut;function Js(e,t){if(t==="row")return e.row;if(t==="rows")return e.rows;if(t==="allRows")return e.allRows;if(t==="params")return e.params;if(t==="data")return e.data;if(Object.prototype.hasOwnProperty.call(e.vars,t))return e.vars[t];if(e.row&&Object.prototype.hasOwnProperty.call(e.row,t))return e.row[t];if(Object.prototype.hasOwnProperty.call(e.data,t))return e.data[t]}function Zs(e,t,n){switch(e){case"??":return r=>{var o;return(o=t(r))!=null?o:n(r)};case"||":return r=>t(r)||n(r);case"&&":return r=>t(r)&&n(r);case"==":case"===":return r=>io(t(r),n(r));case"!=":case"!==":return r=>!io(t(r),n(r));case"<":return r=>dn(t(r),n(r))<0;case"<=":return r=>dn(t(r),n(r))<=0;case">":return r=>dn(t(r),n(r))>0;case">=":return r=>dn(t(r),n(r))>=0;case"+":return r=>{let o=t(r),s=n(r);return typeof o=="string"||typeof s=="string"?`${o!=null?o:""}${s!=null?s:""}`:Se(o)+Se(s)};case"-":return r=>Se(t(r))-Se(n(r));case"*":return r=>Se(t(r))*Se(n(r));case"/":return r=>{let o=Se(n(r));return o===0?0:Se(t(r))/o};case"%":return r=>Se(t(r))%Se(n(r))}throw new SyntaxError(e)}function io(e,t){var n,r;return e instanceof Date||t instanceof Date?((n=Ne(e))==null?void 0:n.getTime())===((r=Ne(t))==null?void 0:r.getTime()):typeof e=="number"||typeof t=="number"?e!=null&&t!=null&&Se(e)===Se(t):(e!=null?e:null)===(t!=null?t:null)}function dn(e,t){var n,r,o,s;return e instanceof Date||t instanceof Date?((r=(n=Ne(e))==null?void 0:n.getTime())!=null?r:0)-((s=(o=Ne(t))==null?void 0:o.getTime())!=null?s:0):typeof e=="string"&&typeof t=="string"?e<t?-1:e>t?1:0:Se(e)-Se(t)}var pn=new Map;function We(e){let t=pn.get(e);return t||(t=new sr(Xs(e)).parse(),pn.size>5e3&&pn.clear(),pn.set(e,t)),t}function Ae(e,t){try{return We(e)(t)}catch(n){return`#ERR ${n.message}`}}function hn(e){try{return We(e),null}catch(t){return t.message}}function Ye(e,t){if(!e.includes("{"))return e.replace(/}}/g,"}");let n="",r=0;for(;r<e.length;){let o=e[r];if(o==="{"&&e[r+1]==="{"){n+="{",r+=2;continue}if(o==="}"&&e[r+1]==="}"){n+="}",r+=2;continue}if(o!=="{"){n+=o,r++;continue}let s=Qs(e,r+1);if(s<0){n+=e.slice(r);break}let{expr:a,format:l}=ea(e.slice(r+1,s)),i=Ae(a,t);n+=je(i,l),r=s+1}return n}function Qs(e,t){let n=null,r=0;for(let o=t;o<e.length;o++){let s=e[o];if(n){s==="\\"?o++:s===n&&(n=null);continue}if(s==='"'||s==="'")n=s;else if(s==="{")r++;else if(s==="}"){if(r===0)return o;r--}}return-1}function ea(e){let t=null,n=0,r=0;for(let o=0;o<e.length;o++){let s=e[o];if(t){s==="\\"?o++:s===t&&(t=null);continue}if(s==='"'||s==="'")t=s;else if(s==="("||s==="[")n++;else if(s===")"||s==="]")n--;else if(s==="?"&&n===0&&e[o+1]!=="?"&&e[o-1]!=="?")r++;else if(s===":"&&n===0){if(r>0){r--;continue}return{expr:e.slice(0,o).trim(),format:e.slice(o+1)}}}return{expr:e.trim()}}var co=(e,t,n)=>!e||e==="all"||e==="first"&&t===0||e==="last"&&t===n-1||e==="odd"&&t%2===0||e==="even"&&t%2===1,po="Nanum Gothic";function ar(e,t,n,r,o){let s={family:po,size:r,bold:o.bold,italic:!1},a=e.split(`
5
+ `),l=r*Ce*1.2,i=a.map(k=>o.measure.width(k,s)),u=Math.max(...i,1),f=a.length*l,g=t-u/2,w=n-f/2;return{kind:"text",x:g,y:w,w:u,h:f,font:s,color:o.color,align:"center",valign:"middle",text:e,lines:a.map((k,d)=>({text:k,x:t-i[d]/2,y:w+d*l+l*.78,width:i[d]})),rotate:o.angle,opacity:o.opacity,source:{band:"watermark"}}}function ta(e,t,n,r){var g,w,k,d,c,m,E,M,$;let o=e.text?Ye(e.text,n):"",s=(g=e.opacity)!=null?g:.12,a=(w=e.angle)!=null?w:-35,l=(k=e.color)!=null?k:"#808080",i=[];if(e.repeat){let S=Math.max(5,Number(e.gap)||45),P=(d=e.fontSize)!=null?d:14,L=(c=e.imageWidth)!=null?c:30,R=0;for(let H=S/2;H<t.height+S/2;H+=S*.7,R++)for(let ue=(R%2?S/2:0)+S/4;ue<t.width+S/2;ue+=S)e.image&&i.push({kind:"image",x:ue-L/2,y:H-L/2,w:L,h:L,src:e.image,fit:"contain",opacity:s,rotate:a,source:{band:"watermark"}}),o&&i.push(ar(o,ue,H+(e.image?L/2+P*Ce:0),P,{color:l,opacity:s,angle:a,bold:!!e.bold,measure:r}));return i}let u=t.width/2,f=t.height/2;if(e.image){let S=(m=e.imageWidth)!=null?m:80;i.push({kind:"image",x:u-S/2,y:f-S/2,w:S,h:S,src:e.image,fit:"contain",opacity:s,rotate:a,source:{band:"watermark"}})}if(o){let S=(E=e.fontSize)!=null?E:60,P=Math.hypot(t.width,t.height)*.75,L={family:po,size:S,bold:(M=e.bold)!=null?M:!0,italic:!1},R=Math.max(...o.split(`
6
+ `).map(H=>r.width(H,L)));R>P&&(S*=P/R),i.push(ar(o,u,f,S,{color:l,opacity:s,angle:a,bold:($=e.bold)!=null?$:!0,measure:r}))}return i}function na(e,t,n){let r=.5523*n;return["M",e+n,t,"C",e+n,t+r,e+r,t+n,e,t+n,"C",e-r,t+n,e-n,t+r,e-n,t,"C",e-n,t-r,e-r,t-n,e,t-n,"C",e+r,t-n,e+n,t-r,e+n,t,"Z"]}function uo(e,t,n,r){let o=n-r,s=.5523*o;return[...na(e,t,n),"M",e+o,t,"C",e+o,t-s,e+s,t-o,e,t-o,"C",e-s,t-o,e-o,t-s,e-o,t,"C",e-o,t+s,e-s,t+o,e,t+o,"C",e+s,t+o,e+o,t+s,e+o,t,"Z"]}function ra(e,t,n,r,o){return["M",e,t,"L",e+n,t,"L",e+n,t+r,"L",e,t+r,"Z","M",e+o,t+o,"L",e+o,t+r-o,"L",e+n-o,t+r-o,"L",e+n-o,t+o,"Z"]}var oa=(e,t,n)=>{let r=[],o=0;for(let s of e){if(typeof s=="string"){r.push(s),o=0;continue}r.push(s+(o++%2===0?t:n))}return r};function sa(e,t,n,r){var L,R,H,ue,Q,q,z,F,D,G;let o=(L=e.w)!=null?L:32,s=(R=e.h)!=null?R:e.shape==="rect"?20:o,a=(H=e.x)!=null?H:t.width-t.margins[1]-o-4,l=(ue=e.y)!=null?ue:t.height-t.margins[2]-s-12,i=(Q=e.depth)!=null?Q:.3,u=(q=e.color)!=null?q:"#e8e8e8",f=(z=e.opacity)!=null?z:.9,g="#ffffff",w="#9a9a9a",k=[],d=[],c=a+o/2,m=l+s/2,E=(F=e.shape)!=null?F:"circle";if(E==="circle"){let Y=Math.min(o,s)/2;k.push(uo(c,m,Y,Math.max(.6,Y*.06))),k.push(uo(c,m,Y*.68,Math.max(.35,Y*.03)))}else E==="rect"&&k.push(ra(a,l,o,s,Math.max(.6,Math.min(o,s)*.05)));let M=e.text?Ye(e.text,n):"",$=e.centerText?Ye(e.centerText,n):"";if(E==="circle"&&M){let Y=Math.min(o,s)/2,Z=(D=e.fontSize)!=null?D:Math.max(5,Y*.62),se=Y*.84,W=[...M],I=Math.min(Math.PI*1.7,W.length*(Z*Ce*1.05/se));W.forEach((B,K)=>{let N=-Math.PI/2-I/2+I*(K+.5)/W.length;d.push({text:B,cx:c+se*Math.cos(N),cy:m+se*Math.sin(N),size:Z,angle:N*180/Math.PI+90})}),$&&d.push({text:$,cx:c,cy:m,size:e.fontSize?e.fontSize*1.3:Math.max(6,Y*.75)})}else if(M||$){let Y=[M,$].filter(Boolean).join(`
7
+ `),Z=(G=e.fontSize)!=null?G:Math.max(6,Math.min(s*.45,o*.8/Math.max(1,Math.max(...Y.split(`
8
+ `).map(se=>[...se].length)))/Ce));d.push({text:Y,cx:c,cy:m,size:Z})}let S=[],P=(Y,Z,se,W)=>{var I;for(let B of k)S.push({kind:"path",d:oa(B,Y,Z),fill:se,opacity:W,source:{band:"watermark"}});for(let B of d)S.push(ar(B.text,B.cx+Y,B.cy+Z,B.size,{color:se,opacity:W,angle:(I=B.angle)!=null?I:0,bold:!0,measure:r}))};return e.image&&S.push({kind:"image",x:E==="none"?a:a+o*.2,y:E==="none"?l:l+s*.2,w:E==="none"?o:o*.6,h:E==="none"?s:s*.6,src:e.image,fit:"contain",emboss:!0,opacity:f,source:{band:"watermark"}}),P(-i,-i,g,f),P(i,i,w,f*.55),P(0,0,u,f),S}function mo(e,t,n,r,o){let s=t.watermark===void 0?[]:(Array.isArray(t.watermark)?t.watermark:[t.watermark]).map(l=>typeof l=="string"?{text:l}:l),a=t.emboss===void 0?[]:Array.isArray(t.emboss)?t.emboss:[t.emboss];!s.length&&!a.length||e.forEach((l,i)=>{let u=r(l,i),f=[],g=[];for(let w of s)!co(w.pages,i,e.length)||!w.text&&!w.image||(w.layer==="front"?g:f).push(...ta(w,l,u,o));for(let w of a)co(w.pages,i,e.length)&&g.push(...sa(w,{...l,margins:n.margins},u,o));l.items=[...f,...l.items,...g]})}var fo=new Map;function Tt(e){let t=fo.get(e);return t||(t=(async()=>{if(typeof document=="undefined"||typeof Image=="undefined")return e;let n=new Image;n.crossOrigin="anonymous",n.src=e,await n.decode();let o=Math.min(1,600/Math.max(n.naturalWidth,n.naturalHeight)),s=Math.max(1,Math.round(n.naturalWidth*o)),a=Math.max(1,Math.round(n.naturalHeight*o)),l=document.createElement("canvas");l.width=s,l.height=a;let i=l.getContext("2d");if(!i)return e;i.drawImage(n,0,0,s,a);let{data:u}=i.getImageData(0,0,s,a),f=new Float32Array(s*a);for(let k=0;k<s*a;k++){let d=(u[k*4]*.299+u[k*4+1]*.587+u[k*4+2]*.114)/255;f[k]=(1-d)*(u[k*4+3]/255)}let g=i.createImageData(s,a),w=Math.max(1,Math.round(Math.max(s,a)/200));for(let k=0;k<a;k++)for(let d=0;d<s;d++){let c=k*s+d,m=f[Math.max(0,k-w)*s+Math.max(0,d-w)],M=(f[Math.min(a-1,k+w)*s+Math.min(s-1,d+w)]-m)*2.2,$=f[c]>.15,S=Math.max(0,Math.min(255,232+M*110)),P=Math.min(1,Math.abs(M)*1.6+($?.35:0));g.data[c*4]=g.data[c*4+1]=g.data[c*4+2]=S,g.data[c*4+3]=Math.round(P*255)}return i.putImageData(g,0,0),l.toDataURL("image/png")})().catch(()=>e),fo.set(e,t),t)}var De=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),te=e=>(Math.round(e*1e3)/1e3).toString();function ir(e,t){return e==="dashed"?` stroke-dasharray="${te(t*3)} ${te(t*2)}"`:e==="dotted"?` stroke-dasharray="0 ${te(t*2)}" stroke-linecap="round"`:""}function gn(e,t,n,r,o,s){if(o.style==="double"){let a=o.width/3,l=o.width/2-a/2,[i,u]=s?[0,l]:[l,0];return`<line x1="${te(e-i)}" y1="${te(t-u)}" x2="${te(n-i)}" y2="${te(r-u)}" stroke="${De(o.color)}" stroke-width="${te(a)}"/><line x1="${te(e+i)}" y1="${te(t+u)}" x2="${te(n+i)}" y2="${te(r+u)}" stroke="${De(o.color)}" stroke-width="${te(a)}"/>`}return`<line x1="${te(e)}" y1="${te(t)}" x2="${te(n)}" y2="${te(r)}" stroke="${De(o.color)}" stroke-width="${te(o.width)}"${ir(o.style,o.width)}/>`}function aa(e,t,n,r,o){let s="";return o.top&&(s+=gn(e,t,e+n,t,o.top,!0)),o.bottom&&(s+=gn(e,t+r,e+n,t+r,o.bottom,!0)),o.left&&(s+=gn(e,t,e,t+r,o.left,!1)),o.right&&(s+=gn(e+n,t,e+n,t+r,o.right,!1)),s}function ia(e){return e.map(t=>typeof t=="number"?te(t):t).join(" ")}var Pt=e=>e!==void 0&&e<1?` opacity="${te(e)}"`:"";function la(e,t){var u;let n=e.font.size*Ce,r=`${Kn(e.font.family)}, ${Wn}`.replace(/"/g,"'"),o=`font-family="${De(r)}" font-size="${te(n)}"${e.font.bold?' font-weight="bold"':""}${e.font.italic?' font-style="italic"':""} fill="${De(e.color)}"`+(e.letterSpacing?` letter-spacing="${te(e.letterSpacing)}"`:""),s="";for(let f of e.lines)f.text&&(s+=`<text x="${te(f.x)}" y="${te(f.y)}" xml:space="preserve">${De(f.text)}</text>`,e.underline&&(s+=`<line x1="${te(f.x)}" y1="${te(f.y+n*.12)}" x2="${te(f.x+f.width)}" y2="${te(f.y+n*.12)}" stroke="${De(e.color)}" stroke-width="${te(n*.06)}"/>`),e.strike&&(s+=`<line x1="${te(f.x)}" y1="${te(f.y-n*.3)}" x2="${te(f.x+f.width)}" y2="${te(f.y-n*.3)}" stroke="${De(e.color)}" stroke-width="${te(n*.06)}"/>`));let a=((u=e.source)==null?void 0:u.band)!=="watermark"&&e.lines.some(f=>f.x<e.x-.05||f.x+f.width>e.x+e.w+.05||f.y-n*.8<e.y-.05||f.y+n*.2>e.y+e.h+.05),l=e.rotate?` transform="rotate(${te(e.rotate)} ${te(e.x+e.w/2)} ${te(e.y+e.h/2)})"`:"";if(!a)return{defs:"",body:`<g ${o}${l}${Pt(e.opacity)}>${s}</g>`};let i=t();return{defs:`<clipPath id="${i}"><rect x="${te(e.x)}" y="${te(e.y)}" width="${te(e.w)}" height="${te(e.h)}"/></clipPath>`,body:`<g ${o} clip-path="url(#${i})"${l}${Pt(e.opacity)}>${s}</g>`}}function ca(e,t){var n,r,o;switch(e.kind){case"box":{let s="",a=Pt(e.opacity);if(e.radius||e.stroke){let l=(r=(n=e.stroke)==null?void 0:n.width)!=null?r:0;s+=`<rect x="${te(e.x)}" y="${te(e.y)}" width="${te(e.w)}" height="${te(e.h)}"${e.radius?` rx="${te(e.radius)}"`:""} fill="${e.fill?De(e.fill):"none"}"`+(l?` stroke="${De(e.stroke.color)}" stroke-width="${te(l)}"${ir(e.stroke.dash,l)}`:"")+`${a}/>`}else e.fill&&(s+=`<rect x="${te(e.x)}" y="${te(e.y)}" width="${te(e.w)}" height="${te(e.h)}" fill="${De(e.fill)}"${a}/>`);return e.border&&(s+=aa(e.x,e.y,e.w,e.h,e.border)),{defs:"",body:s}}case"line":return{defs:"",body:`<line x1="${te(e.x1)}" y1="${te(e.y1)}" x2="${te(e.x2)}" y2="${te(e.y2)}" stroke="${De(e.color)}" stroke-width="${te(e.width)}"${ir(e.dash,e.width)}${Pt(e.opacity)}/>`};case"path":return{defs:"",body:`<path d="${ia(e.d)}" fill="${e.fill?De(e.fill):"none"}"${e.stroke?` stroke="${De(e.stroke)}" stroke-width="${te((o=e.strokeWidth)!=null?o:.2)}" stroke-linejoin="round"`:""}${Pt(e.opacity)}/>`};case"image":{let s=e.fit==="fill"?"none":e.fit==="cover"?"xMidYMid slice":"xMidYMid meet",a=e.rotate?` transform="rotate(${te(e.rotate)} ${te(e.x+e.w/2)} ${te(e.y+e.h/2)})"`:"",l="",i="";if(e.fit==="cover"){let u=t();l=`<clipPath id="${u}"><rect x="${te(e.x)}" y="${te(e.y)}" width="${te(e.w)}" height="${te(e.h)}"/></clipPath>`,i=` clip-path="url(#${u})"`}return{defs:l,body:`<image x="${te(e.x)}" y="${te(e.y)}" width="${te(e.w)}" height="${te(e.h)}" preserveAspectRatio="${s}" href="${De(e.src)}"${e.emboss?' data-emboss="1"':""}${i}${a}${Pt(e.opacity)}/>`}}case"text":return la(e,t)}}var ua=0;function tt(e,t={}){let n=`fr${(ua++).toString(36)}-`,r=0,o=()=>`${n}${r++}`,s="",a="";for(let i of e.items){let u=ca(i,o);s+=u.defs,a+=u.body}return`<svg xmlns="http://www.w3.org/2000/svg" ${t.scale?`width="${te(e.width*t.scale)}" height="${te(e.height*t.scale)}"`:`width="${te(e.width)}mm" height="${te(e.height)}mm"`} viewBox="0 0 ${te(e.width)} ${te(e.height)}"${t.className?` class="${t.className}"`:""} text-rendering="geometricPrecision">${s?`<defs>${s}</defs>`:""}<rect width="100%" height="100%" fill="#fff"/>${a}</svg>`}function bt(e){e.querySelectorAll("image[data-emboss]").forEach(t=>{let n=t.getAttribute("href");n&&(t.removeAttribute("data-emboss"),t.setAttribute("visibility","hidden"),Tt(n).then(r=>{t.setAttribute("href",r),t.removeAttribute("visibility")}))})}function ho(e,t,n={}){e.innerHTML=tt(t,{...n,className:"fr-page-svg"}),bt(e)}var fa=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function lr(e){let t=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),n=e.length*8,r=new Uint8Array(e.length+9+63>>6<<6);r.set(e),r[e.length]=128;let o=new DataView(r.buffer);o.setUint32(r.length-8,Math.floor(n/4294967296)),o.setUint32(r.length-4,n>>>0);let s=new Uint32Array(64);for(let a=0;a<r.length;a+=64){for(let c=0;c<16;c++)s[c]=o.getUint32(a+c*4);for(let c=16;c<64;c++){let m=s[c-15],E=s[c-2],M=(m>>>7|m<<25)^(m>>>18|m<<14)^m>>>3,$=(E>>>17|E<<15)^(E>>>19|E<<13)^E>>>10;s[c]=s[c-16]+M+s[c-7]+$>>>0}let[l,i,u,f,g,w,k,d]=t;for(let c=0;c<64;c++){let m=(g>>>6|g<<26)^(g>>>11|g<<21)^(g>>>25|g<<7),E=g&w^~g&k,M=d+m+E+fa[c]+s[c]>>>0,$=(l>>>2|l<<30)^(l>>>13|l<<19)^(l>>>22|l<<10),S=l&i^l&u^i&u,P=$+S>>>0;d=k,k=w,w=g,g=f+M>>>0,f=u,u=i,i=l,l=M+P>>>0}t[0]+=l,t[1]+=i,t[2]+=u,t[3]+=f,t[4]+=g,t[5]+=w,t[6]+=k,t[7]+=d}return[...t].map(a=>a.toString(16).padStart(8,"0")).join("")}function cr(e){return e.map(t=>t.items.filter(n=>{var r,o;return n.kind==="text"&&((r=n.source)==null?void 0:r.band)!=="watermark"&&!((o=n.source)!=null&&o.fingerprint)}).map(n=>n.kind==="text"?n.text.replace(/\s+/g," ").trim():"").filter(Boolean).join(`
9
9
  `)).join(`
10
10
  \f
11
- `)}function jt(e){return lr(new TextEncoder().encode(cr(e)))}var di="212222 222122 222221 121223 121322 131222 122213 122312 132212 221213 221312 231212 112232 122132 122231 113222 123122 123221 223211 221132 221231 213212 223112 312131 311222 321122 321221 312212 322112 322211 212123 212321 232121 111323 131123 131321 112313 132113 132311 211313 231113 231311 112133 112331 132131 113123 113321 133121 313121 211331 231131 213113 213311 213131 311123 311321 331121 312113 312311 332111 314111 221411 431111 111224 111422 121124 121421 141122 141221 112214 112412 122114 122411 142112 142211 241211 221114 413111 241112 134111 111242 121142 121241 114212 124112 124211 411212 421112 421211 212141 214121 412121 111143 111341 131141 114113 114311 411113 411311 113141 114131 311141 411131 211412 211214 211232 2331112".split(" "),pi=103,go=104,mi=105,hi=106,gi=99,bi=100,yi=101;function fr(e,t){let n=0;for(;t+n<e.length&&e.charCodeAt(t+n)>=48&&e.charCodeAt(t+n)<=57;)n++;return n}function bo(e,t){for(;t<e.length;t++){let n=e.charCodeAt(t);if(n<32)return"A";if(n>=96)return"B"}return"B"}function kn(e){for(let l=0;l<e.length;l++)if(e.charCodeAt(l)>127)throw new Error(`Code128: unsupported character at ${l}`);let t=[],n=null,r=l=>{n!==l&&(n===null?t.push(l==="A"?pi:l==="B"?go:mi):t.push(l==="A"?yi:l==="B"?bi:gi),n=l)},o=0;for(;o<e.length;){let l=fr(e,o);if(l>=4){l%2&&((n===null||n==="C")&&r(bo(e,o)),t.push(e.charCodeAt(o++)-32)),r("C");let u=o+(l-l%2);for(;o<u;o+=2)t.push(+e.substr(o,2));continue}let a=e.charCodeAt(o);n===null||n==="C"?r(bo(e,o)):a<32&&n==="B"?r("A"):a>=96&&n==="A"&&r("B"),t.push(n==="A"&&a<32?a+64:a-32),o++}n===null&&t.push(go);let s=t[0];for(let l=1;l<t.length;l++)s+=t[l]*l;t.push(s%103,hi);let i=[];for(let l of t)for(let a of di[l])i.push(+a);return i}var yo=["0001101","0011001","0010011","0111101","0100011","0110001","0101111","0111011","0110111","0001011"],wi=["LLLLLL","LLGLGG","LLGGLG","LLGGGL","LGLLGG","LGGLLG","LGGGLL","LGLGLL","LGLGGL","LGGLGL"],wo=e=>e.replace(/./g,t=>t==="0"?"1":"0");function xi(e){if(!/^\d{12}$/.test(e))throw new Error("EAN-13: expected 12 digits");let t=0;for(let n=0;n<12;n++)t+=+e[n]*(n%2?3:1);return(10-t%10)%10}function $n(e){if(!/^\d{12,13}$/.test(e))throw new Error("EAN-13: expected 12 or 13 digits");let t=xi(e.slice(0,12));if(e.length===13&&+e[12]!==t)throw new Error("EAN-13: invalid check digit");let n=e.slice(0,12)+t,r="101",o=wi[+n[0]];for(let l=1;l<=6;l++){let a=yo[+n[l]];r+=o[l-1]==="L"?a:wo(a).split("").reverse().join("")}r+="01010";for(let l=7;l<=12;l++)r+=wo(yo[+n[l]]);r+="101";let s=[],i=1;for(let l=1;l<=r.length;l++)r[l]===r[l-1]?i++:(s.push(i),i=1);return s}var ki={L:1,M:0,Q:3,H:2},Mo={L:[0,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],M:[0,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],Q:[0,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],H:[0,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]},So={L:[0,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],M:[0,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],Q:[0,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],H:[0,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]},bn="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:";function $i(e){if(e===1)return[];let t=Math.floor(e/7)+2,n=e*4+17,r=Math.floor((e*8+t*3+5)/(t*4-4))*2,o=[6];for(let s=n-7;o.length<t;s-=r)o.splice(1,0,s);return o}function Eo(e){let t=(16*e+128)*e+64;if(e>=2){let n=Math.floor(e/7)+2;t-=(25*n-10)*n-55,e>=7&&(t-=36)}return t}function xo(e,t){return Math.floor(Eo(e)/8)-Mo[t][e]*So[t][e]}var wn=new Uint8Array(512),dr=new Uint8Array(256);(()=>{let e=1;for(let t=0;t<255;t++)wn[t]=e,dr[e]=t,e<<=1,e&256&&(e^=285);for(let t=255;t<512;t++)wn[t]=wn[t-255]})();var pr=(e,t)=>e&&t?wn[dr[e]+dr[t]]:0;function vi(e){let t=new Array(e).fill(0);t[e-1]=1;let n=1;for(let r=0;r<e;r++){for(let o=0;o<e;o++)t[o]=pr(t[o],n),o+1<e&&(t[o]^=t[o+1]);n=pr(n,2)}return t}function Mi(e,t){let n=new Array(t.length).fill(0);for(let r of e){let o=r^n.shift();n.push(0);for(let s=0;s<t.length;s++)n[s]^=pr(t[s],o)}return n}var xn=class{constructor(){this.bits=[]}put(t,n){for(let r=n-1;r>=0;r--)this.bits.push(t>>>r&1)}};function Si(e){let t=new xn;if(/^\d*$/.test(e)){for(let r=0;r<e.length;r+=3){let o=e.substr(r,3);t.put(+o,o.length*3+1)}return{mode:1,count:e.length,data:t,ccBits:[10,12,14]}}if([...e].every(r=>bn.includes(r))){for(let r=0;r<e.length;r+=2)r+1<e.length?t.put(bn.indexOf(e[r])*45+bn.indexOf(e[r+1]),11):t.put(bn.indexOf(e[r]),6);return{mode:2,count:e.length,data:t,ccBits:[9,11,13]}}let n=new TextEncoder().encode(e);for(let r of n)t.put(r,8);return{mode:4,count:n.length,data:t,ccBits:[8,16,16]}}var ko=(e,t)=>e.ccBits[t<=9?0:t<=26?1:2];function Ei(e,t,n){let r=So[n][t],o=Mo[n][t],s=Math.floor(Eo(t)/8),i=r-s%r,l=Math.floor(s/r),a=vi(o),u=[];for(let y=0,x=0;y<r;y++){let d=l-o+(y<i?0:1),c=e.slice(x,x+d);x+=d,u.push({data:c,ec:Mi(c,a)})}let f=[],m=l-o+1;for(let y=0;y<m;y++)for(let x of u)y<x.data.length&&f.push(x.data[y]);for(let y=0;y<o;y++)for(let x of u)f.push(x.ec[y]);return f}function Ti(e,t,n){switch(e){case 0:return(t+n)%2===0;case 1:return n%2===0;case 2:return t%3===0;case 3:return(t+n)%3===0;case 4:return(Math.floor(t/3)+Math.floor(n/2))%2===0;case 5:return t*n%2+t*n%3===0;case 6:return(t*n%2+t*n%3)%2===0;default:return((t+n)%2+t*n%3)%2===0}}function Ri(e){let t=e.length,n=0,r=[1,0,1,1,1,0,1,0,0,0,0],o=[0,0,0,0,1,0,1,1,1,0,1];for(let l=0;l<2;l++){let a=(u,f)=>l?e[f][u]:e[u][f];for(let u=0;u<t;u++){let f=1;for(let y=1;y<=t;y++)y<t&&a(u,y)===a(u,y-1)?f++:(f>=5&&(n+=f-2),f=1);let m=y=>y>=0&&y<t&&a(u,y)?1:0;for(let y=-4;y+11<=t+4;y++){let x=!0,d=!0;for(let c=0;c<11&&(x||d);c++){let p=m(y+c);p!==r[c]&&(x=!1),p!==o[c]&&(d=!1)}x&&(n+=40),d&&(n+=40)}}}for(let l=0;l<t-1;l++)for(let a=0;a<t-1;a++){let u=e[l][a];u===e[l][a+1]&&u===e[l+1][a]&&u===e[l+1][a+1]&&(n+=3)}let s=0;for(let l of e)for(let a of l)a&&s++;let i=t*t;return n+=(Math.ceil(Math.abs(s*20-i*10)/i)-1)*10,n}function Pi(e,t){let n=ki[e]<<3|t,r=n;for(let o=0;o<10;o++)r=r<<1^(r>>>9)*1335;return(n<<10|r)^21522}function ji(e){let t=e;for(let n=0;n<12;n++)t=t<<1^(t>>>11)*7973;return e<<12|t}function vn(e,t="M"){let n=Si(e),r=1;for(;r<=40;r++){let k=ko(n,r);if(n.count<1<<k&&4+k+n.data.bits.length<=xo(r,t)*8)break}if(r>40)throw new Error("QR: data too long");let o=xo(r,t)*8,s=new xn;s.put(n.mode,4),s.put(n.count,ko(n,r)),s.bits.push(...n.data.bits),s.put(0,Math.min(4,o-s.bits.length)),s.put(0,(8-s.bits.length%8)%8);for(let k=236;s.bits.length<o;k^=253)s.put(k,8);let i=[];for(let k=0;k<s.bits.length;k+=8){let S=0;for(let j=0;j<8;j++)S=S<<1|s.bits[k+j];i.push(S)}let l=Ei(i,r,t),a=r*4+17,u=Array.from({length:a},()=>new Array(a).fill(!1)),f=Array.from({length:a},()=>new Array(a).fill(!1)),m=(k,S,j)=>{u[S][k]=j,f[S][k]=!0};for(let k=0;k<a;k++)m(6,k,k%2===0),m(k,6,k%2===0);for(let[k,S]of[[3,3],[a-4,3],[3,a-4]])for(let j=-4;j<=4;j++)for(let C=-4;C<=4;C++){let R=k+C,O=S+j;if(R<0||O<0||R>=a||O>=a)continue;let ue=Math.max(Math.abs(C),Math.abs(j));m(R,O,ue!==2&&ue!==4)}let y=$i(r);for(let k=0;k<y.length;k++)for(let S=0;S<y.length;S++)if(!(k===0&&S===0||k===0&&S===y.length-1||k===y.length-1&&S===0))for(let j=-2;j<=2;j++)for(let C=-2;C<=2;C++)m(y[k]+C,y[S]+j,Math.max(Math.abs(C),Math.abs(j))!==1);let x=k=>{let S=Pi(t,k),j=C=>(S>>>C&1)===1;for(let C=0;C<=5;C++)m(8,C,j(C));m(8,7,j(6)),m(8,8,j(7)),m(7,8,j(8));for(let C=9;C<15;C++)m(14-C,8,j(C));for(let C=0;C<8;C++)m(a-1-C,8,j(C));for(let C=8;C<15;C++)m(8,a-15+C,j(C));m(8,a-8,!0)};if(x(0),r>=7){let k=ji(r);for(let S=0;S<18;S++){let j=(k>>>S&1)===1,C=a-11+S%3,R=Math.floor(S/3);m(C,R,j),m(R,C,j)}}let d=0,c=l.length*8;for(let k=a-1;k>=1;k-=2){k===6&&(k=5);let S=(k+1&2)===0;for(let j=0;j<a;j++){let C=S?a-1-j:j;for(let R=0;R<2;R++){let O=k-R;f[C][O]||d>=c||(u[C][O]=(l[d>>>3]>>>7-(d&7)&1)===1,d++)}}}let p=k=>{for(let S=0;S<a;S++)for(let j=0;j<a;j++)!f[S][j]&&Ti(k,j,S)&&(u[S][j]=!u[S][j])},E=0,v=1/0;for(let k=0;k<8;k++){p(k),x(k);let S=Ri(u);S<v&&(v=S,E=k),p(k)}return p(E),x(E),u}var Ci=["qn0tbouluqjgt9sukvl30qhol1ga10l0oa0gln0qrotduljgqpstcvb30lhob1gbn0lroqtubjglpsqsvbholoubroltubpslsvbtuuntqbgt5suivkj0q9ot4ukhgq8s910kgoq8e90gkgc908krgqdst6v9j0kpoqcu9hgkosqcf9gokoe9rgktsqev9poksu9osksf9tskuv9su9sfkb0q5ot2uk9gq4st2f8h0k8oq4e8ggk8c8g88g48r0kdoq6u8pgkcsq6f8ookce8oc8o68tokeu8sskef8se8uuk5gq2st1f890k4oq2e88gk4cq27888k46884k438dgk6sq3f8cok6e8cck678c68c3k7f8e7850k2oq1e84gk2cq17848k26844k2384286o86c86682gq0nk16k13821pbgslsuavij0p9oskuihgp8sskf510igo50girgpdssmv5j0ipopcu5hgios5go5gc5rgitspev5poisu5os5oe5tsiuv5su5uvrb0tlouqur9gtksuqfmh0r8otkemggr8ctk7mg8r86ib0p5osiumr0i9gp4ssifmpgrcstmfdh04ggi8cp47dggmocdg84r0idop6udr04pgicsp6fdpgmssrefdoo4ocdoc4toieudto4ssiefdssmufdse4uuduu4ufdufr5gtisupfm90r4otiem8gr4cti7m88r46m84m82i5gp2sshfmdgi4op2ecp048gr6ep27cog488i46co8mc6i434824dgi6sp3fctg4coi6ecsomeei67csc4c64c34esi7fcus4eecue4e7cu7cvfm50r2othem4gr2cth7m48r26m44r23m42m41450i2op1ecd044gi2cp17ccgm6cr37cc8444i23cc4m63cc246oi3eceo46ci37cecm77ce6463ce3cfecf7m2gr1ctgnm28r16m24r13m22m2142gi1cp0nc6g428i16c68m36i13c64422c6242143cc7cc76c73r0mr0jm11i0m414c34c32c31hb0olosauh9goks2h0h8ooke2ggh8c2g82g42r0hdoomu2pghcsomf2oohce2oc2o62toheu2sshef2se2uu2ufplgsqsudfj90pkosqej8gpkcsq7j88pk6j84pk3h5goiss9fjdgh4ooie6p028gpmeoi76ogjcch466o82846o42dgh6sojf6tg2copnf6sojeeh676sc2c66s62esh7f6us2ee6ue2e72ff6vfrl0tqouterkgtqcut7rk8tq6rk4tq3rk2j50piospend0j4gtresp7ncgrmctr7nc8j44pi3nc4rm3j41250h2oohe6d024gh2coh7et06cgj6cpj7esgnecrn7h23es86c4j63es424126oh3e6eo26ch37euo6ecj77eucnf72636e327e6fe277eve6f7rigtpcusnri8tp6ri4tp3ri2ri1j2gphcsonn6gj28tpnn68rj6ph3n64j22n62j21n6122gh1cogn66g228h16eeg668j36h13ee8n76222ee466222166123ch1n67c236efc676233ef667323nefnrh8tomrh4tojrh2rh1j18pgmn38j14pgjn34rhjn32j11n31218h0m638214h0je78634j1je74n3j211e72631e7163me7me7jtobrghpgbj0ij0h20k61ke3k20h61hglg190gko18ggkcoa7188gk6184gk31dggmsobf1cogme1ccgm71c61c31esgnf1ee1e71ffhl0oqosdehkgoqchk8oq6hk4oq3hk2150gioo9e3d014goreo973cghmcor73c8144gi33c4hm314116ogje3eo16cgj73echn73e616317e3fe1773f7pqgstcuenpq8st6pq4st3pq2pq1higopcjmghi8op6jm8pr6op3jm4hi2jm2hi1jm112gghc36g128opn7eg368hj6gh37e8jn61227e436212136113cghn37c1367fc3761337f637313n37n7fntt8uumtt4uujtt2tt1pp8ssmrr8ttmssjrr4ttjrr2pp1rr1hh8oomjj8hh4oojnn8jj4ppjnn4rrjhh1nn2jj1nn1118ggm338114ggj778334hhjff8774jjj111ff4nnj331ff211m33m11j77m33jffm77jffjtskuubtsitshpokssbrpktsrrpipohrphhgkoobjhkhginjkjhihghnjijhhnjh10kggb31khgr73k31i10hf7k73i31hf7i73hf7h31rf7rts9roqropjgqnhqnhp30q71qf3qf3p0l00kggac0k80k40k20mo0mc0m60m30ne0n7gqggq8od6gq4od3gq2gq10igg9c1mggrcg961m8gr61m4gr31m20i11m10jcg9n1ncgrn1n60j31n30jn1nnot8ot4ot2ot1gp8hr8otmocjhr4otjhr2gp1hr10h81j80h4g8j3n81j40h23n41j20h13n21j10hm1jm0hj3nm1jj3njsuksuisuhoskptksurptioshpthgokocbhpkosrjrkhpigohjrihphjrh0gkg8b1hkgor3jk1hi0gh7nk3ji1hh7ni3jh0gr1hr3jr7nruvauv9suatuqsu9tuposapsqos9rtqpsprtpgoahoqgo9jpqhopnrq","ulgvast90ukovaet8gukcva7t88uk6t84uk3t82tdgumsvbfqp0tcoumeqogtccum7qo8tc6qo4tc3qo2qtgtesunflp0qsoteelogqscte7lo8qs6lo4qs3lo2ltgqustffbp0lsoqueboglscqu7bo8ls6bo4ls3btglusqvfbsoluebsclu7bs6buslvfbuebu7t50uiov9et4guicv97t48ui6t44ui3t42t41qd0t6oujeqcgt6cuj7qc8t66qc4t63qc2qc1kt0qeot7eksgqect77ks8qe6ks4qe3ks2ks19t0kuoqfe9sgkucqf79s8ku69s4ku39s29uokve9uckv79u69u39ve9v7t2guhcv8nt28uh6t24uh3t22t21q6gt3cuhnq68t36q64t33q62q61kegq7ct3nke8q76ke4q73ke2ke18ugkfcq7n8u8kf68u4kf38u28u18vckfn8v68v38vnt18ugmt14ugjt12t11q38t1mq34t1jq32q31k78q3mk74q3jk72k718f8k7m8f4k7j8f28f18fm8fjt0kugbt0it0hq1kt0rq1iq1hk3kq1rk3ik3h87kk3r87i87ht0at09q0qq0pk1qk1psl0uaov5eskguacv57sk8ua6sk4ua3sk2sk1pd0smoubepcgsmcub7pc8sm6pc4sm3pc2pc1it0peosneisgpecsn7is8pe6is4pe3is2is15t0iuopfe5sgiucpf75s8iu65s4iu35s25uoive5uciv75u65u35ve5v7uqgvdcdfouq8vd6d7suq4vd3d3uuq2uq1sigu9cv4ntmgsi8vdntm8ur6u93tm4si2tm2si1tm1p6gsjcu9nregp68sj6re8tn6sj3re4p62re2p61re1iegp7csjnmugie8p76mu8rf6p73mu4ie2mu2ie1mu14ugifcp7ndug4u8if6du8mv6if3du44u2du24u14vcifndvc4v6dv64v3dv34vnup8vcmcnsup4vcjcjuup2chvup1sh8u8mtj8sh4u8jtj4upjtj2sh1tj1p38shmr78p34shjr74tjjr72p31r71i78p3mmf8i74p3jmf4r7jmf2i71mf14f8i7mcv84f4i7jcv4mfjcv24f1cv14fmcvm4fjcvjuokvcbcbuuoic9vuohsgku8bthkuorthisghthhp1ksgrr3kp1ir3ip1hr3hi3kp1rm7kr3rm7ii3hm7h47ki3rcfk47icfi47hcfh47rcfruoac5vuo9sgatgqsg9tgpp0qr1qp0pr1pi1qm3qi1pm3p43qc7q43pc7puo5sg5tgdp0dr0ti0tm1tsagu5cv2nsa8u56sa4u53sa2sa1omgsbcu5nom8sb6om4sb3om2om1hegoncsbnhe8on6he4on3he2he12ughfconn2u8hf62u4hf32u22u12vchfn2v62v32vnud8v6m6nsud4v6j6juud26hvud1s98u4msr8s94u4jsr4udjsr2s91sr1oj8s9mpn8oj4s9jpn4srjpn2oj1pn1h78ojmjf8h74ojjjf4pnjjf2h71jf12f8h7m6v82f4h7j6v4jfj6v22f16v12fm6vm2fj6vjvekenonbuveiejsn9vvehehuegvuckv6b6buutkvereru69vutiuchepvuths8ku4bspks8itrkutrs8htrisphtrhohks8rpjkohirnkpjiohhrnipjhrnhh3kohrj7kh3infkj7ih3hnfij7hnfh27kh3r6fk27ievk6fi27hevi6fhevh27r6frveaebsn5vve9e9ue8vuca65vusquc9edvusps8asoqs89tpqsoptppogqphqogprjqphprjph1qj3qh1pn7qj3pn7p23q67q23pefq67pefpve5e5ue4vuc5usds85sodtotogdpgtrhth0tj1tn3t21t63te7te2vs58u2ms54u2js52s51ob8s5mob4s5job2ob1gn8obmgn4objgn2gn11f8gnm1f4gnj1f21f11fm1fju6kv3b3buu6i39vu6hs4ku2bsdks4isdis4hsdho9ks4rorko9iorio9horhgjko9rhnkgjihnigjhhnh17kgjr3fk17i3fi17h3fh17r3frv7a7bsjlvv7979u78vu6a35vuequ697dvueps4ascqs49stqscpstpo8qopqo8pprqoppprpghqhjqghpjnqhjpjnp13q37q13p7fq37p7fpfbonluf9snkvf8uf8fv7575uvfdfdu74vfcvu65ueduuts45scdsstttto8dootpptrrtggthhtjjtnnt11t33t77tf5snivf4uf4f72vf6vf2uf2ff1fs2ks2is2ho5ks2ro5io5hgbko5rgbigbh0nkgbr0ni0nh0nru3a1lvu39s2as6qs29s6po4qodqo4podpg9qgrqg9pgrp0jq1nq0jp1npv3l3lu3kvu35u7ds25s6dseto4doctottg8tgpthrt0ht1jt3nt7lsjqv7ku7kf3iv7mvflonqufksnqffkefk77iufmu7iffmffisnpffiefi77hffjffhefh7fgno2qo2pg5qg5p0bq0bps3do2do6tg4tgdt09t0rt1qv3qu3qf7qsjtf7qe7q73pf7rffqontefqcnt7fq6fq37pefre7p7fr7fpcnsnfp6fp37onfpnfomfoj1tf3te3t77tcjun7t67t33sn7tn7sm7sj","lfgqnsaf0l7oqjua7gl3sqhva3ol1ua1svb8bfglnsvb4b7oljuvb2b3slhvvb1b1uun8vbmbnsun4vbjbjuun2bhvun1tf8unmtf4unjtf2tf1qv8tfmqv4tfjqv2qv1lv8qvmlv4qvjlv29f0knoqbu97gkjsq9v93okhu91skgv90uv9k9nokruv9i9jskpvv9h9hu9gvujkv9r9ruuji9pvujht7kujrt7it7hqfkt7rqfiqfhkvkqfrkvikvh8ngkbsq5v8jok9u8hsk8v8gu8gfv8q8rskdvv8p8pu8ovuhq8tvuhpt3qt3pq7qq7pkfqkfp8bok5u89sk4v88u88fv8d8du8cvugtt1tq3t85sk2v84u84f86v82u82f5f0inopbu57gijsp9v53oihu51sigv50uv5k5noiruv5i5jsipvv5h5hu5gvubkv5r5ruubi5pvubhsnkubrsnisnhpfksnrpfipfhivkpfriviivhmngrbstlvd70mjor9ud3gmhsr8vd1omgud0smgfd0e4ngibsp5vdng4joi9udjompui8vdhs4gudgu4gfdgfv4q4rsidvvdqv4pdrs4puvdpdpu4ovdovu9q4tvurqu9pdtvurpsjqtnqsjptnpp7qrfqp7prfpifqifpcn0mbor5ucjgm9sr4vchom8ucgsm8fcgecg74boi5ucro49si4vcpsmcvcou48fcofv4d4duvctctu4cvcsvu8tuptshttjtp3tr7ti7tcbgm5sr2vc9om4uc8sm4fc8ec8745si2vcds44uccu44fccf46vcevc5om2uc4sm2fc4ec4742uc6u42fc6fc2sm1fc2ec2741fc3fc1ec172nghbsolv2joh9u2hsh8v2gu2gfv2q2rshdvv2p2pu2ovu5q2tvu5psbqsbponqonphfqhfp6n0jboplu6jgj9spkv6hoj8u6gsj8f6ge6g72boh5u6ro29sh4v6psjcv6ou28f6ofv2d2duv6t6tu2cv6svu4tudts9tsrtojtpnth7tnbgrlstqvej0n9orkuehgn8srkfegon8eegcn87eg66bgj5spiverg69oj4ueponcuj4feos68eeoe687eo725sh2v6ds24uets6cu24fesu6cfesf26v6eveuveb0n5oriue9gn4srife8on4ee8cn47e86e8365oj2uedo64sj2fecsn6fece647ec722u66u22feeu66feefe5gn2srhfe4on2ee4cn27e46e4362sj1fe6s62ee6e627e6721f63fe7fe2on1ee2cn17e26e2361ee3e617e37e1cn0ne16e1360ne1ne0me0j1boglu19sgkv18u18f1du1cvu2ts5tobtgnt3bghlsoqv39ohku38shkf38e38715sgiv3ds14u3cu14f3cf16v3ev7b0jlopqu79gjkspqf78ojke78cjk778678335ohiu7do34shif7cs34e7ce3477c712u36u12f7eu36f7efnlgrqsttff90nkorqef8gnkcrq7f88nk6f84nk3f8275gjisppffdg74ojiefconmeji7fcc746fc6743fc332shhf76s32efes76e327fee767fe711f33f77fffff50niorpef4gnicrp7f48ni6f44ni3f42f4172ojhef6o72cjh7f6cnj7f66723f6331e73e317f7e737f77f2gnhcronf28nh6f24nh3f22f2171cjgnf3c716f36713f3330n71nf3nf18ngmf14ngjf12f1170mf1m70jf1jf0kngbf0if0h70bf0r0lsgav0ku0kf0mv1logqu1ksgqf1ke1k70iu1mu0if1mf3lghqsotf3kohqe3kchq73k63k31isgpf3ms1ie3me1i73m70hf1jf3nf7l0jqopte7kgjqcpt77k8jq67k4jq37k27k13iohpe7mo3ichp77mcjr77m63i37m31he3je1h77ne3j77n7nqgrtctunnq8rt6nq4rt3nq2nq17igjpcpsnfmg7i8jp6fm8nr6jp3fm47i2fm27i1fm13hchon7jc3h6fnc7j63h3fn67j3fn31gn3hn7jnfnnnp8rsmnp4rsjnp2np17h8jomfj87h4jojfj4npjfj27h1fj13gm7hm3gjfjm7hjfjjnokrsbnoinoh7gkjobfhk7gifhi7ghfhh3gb7grfhrnoano97gafgq7g9fgp0au0af0qsgdf0qe0q709f0rf1qogte1qcgt71q61q30pe1re0p71r73qghtcoun3q8ht63q4ht33q23q11pcgsn3rchtn3r61p33r30on1pn3rnjt8pumjt4pujjt2jt13p8hsm7r8jtmhsj7r43p27r23p17r11om3pm1oj7rm3pj7rjruktvbruiruhjskpubntkjsintijshnth3okhsb7pk3oifrk7pi3ohfri7phfrh1ob3or7prfrrruaru9jsansqjs9nsp3oa7oq3o9fpq7opfppru5js5nsd3o57odfot0de0d70tcgen0t60t30cn0tn1t8gum1t4guj1t21t10sm1tm0sj1tjhukovbhuihuh1skgub3tkhur3ti1sh3th0sb1sr3trpvapv9huajuqhu9jup1sa3sq1s97tq3sp7tppv5hu5jud1s53sd7st0em0ej0ukgfb0ui0uh0eb0urgvagv90ua1uq0u91upovl"],yn=null;function Ai(){return yn||(yn=Ci.map(e=>{let t=new Array(929);for(let n=0;n<929;n++)t[n]=65536|parseInt(e.substr(n*3,3),32)<<1;return t}),yn)}var Li=130728,Fi=260649;function Di(e,t){if(!(t>=0&&t<=8)||t%1)throw new Error("PDF417: ecc level must be 0..8");let n=2<<t,r=new Array(n+1).fill(0);r[0]=1;let o=1;for(let l=1;l<=n;l++){o=o*3%929;for(let a=l;a>=0;a--)r[a]=((a>0?r[a-1]:0)+929-r[a]*o%929)%929}let s=new Array(n).fill(0);for(let l of e){let a=(l+s[n-1])%929;for(let u=n-1;u>=1;u--)s[u]=(s[u-1]+929-a*r[u]%929)%929;s[0]=(929-a*r[0]%929)%929}let i=[];for(let l=n-1;l>=0;l--)i.push((929-s[l])%929);return i}var $o="0123456789&\r ,:#-.$/+%*=^",Gt=`;<>@[\\]_\`~!\r ,:
12
- -.$/"|*()?{}'`,ur=e=>e===9||e===10||e===13||e>=32&&e<=126;function Ii(e){let t=[],n=a=>a>=65&&a<=90,r=a=>a>=97&&a<=122,o=a=>$o.includes(a),s=a=>!o(a)&&Gt.includes(a),i=0;for(let a=0;a<e.length;){let u=e[a],f=e.charCodeAt(a);if(i===0)n(f)||f===32?(t.push(f===32?26:f-65),a++):r(f)?(t.push(27),i=1):o(u)?(t.push(28),i=2):(t.push(29,Gt.indexOf(u)),a++);else if(i===1)r(f)||f===32?(t.push(f===32?26:f-97),a++):n(f)?(t.push(27,f-65),a++):o(u)?(t.push(28),i=2):(t.push(29,Gt.indexOf(u)),a++);else if(i===2)o(u)||f===32?(t.push(f===32?26:$o.indexOf(u)),a++):n(f)?(t.push(28),i=0):r(f)?(t.push(27),i=1):a+1<e.length&&s(e[a+1])?(t.push(25),i=3):(t.push(29,Gt.indexOf(u)),a++);else{let m=Gt.indexOf(u);m>=0?(t.push(m),a++):(t.push(29),i=0)}}t.length%2&&t.push(29);let l=[];for(let a=0;a<t.length;a+=2)l.push(t[a]*30+t[a+1]);return l}function Bi(e){let t=[];for(let n=0;n<e.length;n+=44){let r=("1"+e.substr(n,44)).split("").map(Number),o=[];for(;r.length;){let s=[],i=0;for(let l of r){i=i*10+l;let a=Math.floor(i/900);i-=a*900,(s.length||a)&&s.push(a)}o.unshift(i),r=s}t.push(...o)}return t}function Ni(e){let t=[e.length%6===0?924:901],n=0;for(;n+6<=e.length;n+=6){let r=0;for(let s=0;s<6;s++)r=r*256+e[n+s];let o=[];for(let s=0;s<5;s++)o.unshift(r%900),r=Math.floor(r/900);t.push(...o)}for(;n<e.length;n++)t.push(e[n]);return t}function Hi(e){let t=[];/[^\x00-\x7f]/.test(e)&&t.push(927,26);let n=new TextEncoder,r="text",o=0;for(;o<e.length;){let s=fr(e,o);if(s>=13){t.push(902,...Bi(e.substr(o,s))),r="num",o+=s;continue}let i=o;if(ur(e.charCodeAt(o))){for(;i<e.length&&ur(e.charCodeAt(i))&&fr(e,i)<13;)i++;r!=="text"&&t.push(900),t.push(...Ii(e.slice(o,i))),r="text"}else{for(;i<e.length&&!ur(e.charCodeAt(i));)i++;t.push(...Ni(n.encode(e.slice(o,i)))),r="byte"}o=i}return t}var Oi=e=>e<=40?2:e<=160?3:e<=320?4:5;function Mn(e,t={}){var E;let n=Hi(e),r=(E=t.ecc)!=null?E:Oi(n.length+1);if(!(r>=0&&r<=8)||r%1)throw new Error("PDF417: ecc level must be 0..8");let o=2<<r,s=1+n.length+o,i=v=>{let k=Math.max(3,Math.ceil(s/v));return k<=90&&k*v<=928?k:0},l=0;if(t.columns!==void 0){if(!(t.columns>=1&&t.columns<=30)||t.columns%1)throw new Error("PDF417: columns must be 1..30");if(!i(t.columns))throw new Error("PDF417: data does not fit with the requested columns");l=t.columns}else{let v=1/0;for(let k=1;k<=30;k++){let S=i(k);if(!S)continue;let j=Math.abs(Math.log((17*(k+4)+1)/(S*3)/3));j<v&&(v=j,l=k)}if(!l)throw new Error("PDF417: data too long")}let a=i(l),u=[0,...n];for(;u.length<a*l-o;)u.push(900);u[0]=u.length;let f=u.concat(Di(u,r)),m=Ai(),y=(v,k,S)=>{for(let j=S-1;j>=0;j--)v.push((k>>>j&1)===1)},x=Math.floor((a-1)/3),d=r*3+(a-1)%3,c=l-1,p=[];for(let v=0;v<a;v++){let k=v%3,S=30*Math.floor(v/3),j=S+(k===0?x:k===1?d:c),C=S+(k===0?c:k===1?x:d),R=m[k],O=[];y(O,Li,17),y(O,R[j],17);for(let ue=0;ue<l;ue++)y(O,R[f[v*l+ue]],17);y(O,R[C],17),y(O,Fi,18),p.push(O)}return{rows:a,cols:l,matrix:p}}var Wt=new Uint8Array(512),mr=new Uint8Array(256);(()=>{let e=1;for(let t=0;t<255;t++)Wt[t]=e,mr[e]=t,e<<=1,e&256&&(e^=301);for(let t=255;t<512;t++)Wt[t]=Wt[t-255]})();var vo=(e,t)=>e&&t?Wt[mr[e]+mr[t]]:0;function qi(e,t){let n=[1];for(let s=1;s<=t;s++){let i=new Array(n.length+1).fill(0),l=Wt[s];for(let a=0;a<n.length;a++)i[a]^=n[a],i[a+1]^=vo(n[a],l);n=i}let r=n.slice(1),o=new Array(t).fill(0);for(let s of e){let i=s^o.shift();o.push(0);for(let l=0;l<t;l++)o[l]^=vo(r[l],i)}return o}var zi=[[10,3,5,1],[12,5,7,1],[14,8,10,1],[16,12,12,1],[18,18,14,1],[20,22,18,1],[22,30,20,1],[24,36,24,1],[26,44,28,1],[32,62,36,1],[36,86,42,1],[40,114,48,1],[44,144,56,1],[48,174,68,1],[52,204,84,2],[64,280,112,2],[72,368,144,4],[80,456,192,4],[88,576,224,4],[96,696,272,4],[104,816,336,6],[120,1050,408,6],[132,1304,496,8],[144,1558,620,10]],Ui=e=>e<32?1:e<64?2:e<120?4:6;function Gi(e){let t=new TextEncoder().encode(e),n=[],r=i=>i<t.length&&t[i]>=128,o=i=>i<t.length&&t[i]>=48&&t[i]<=57;t.some(i=>i>=128)&&n.push(241,27);let s=0;for(;s<t.length;)if(r(s)){let i=s;for(;;){for(;r(i);)i++;let u=i;for(;u<t.length&&!r(u)&&u-i<4;)u++;if(u>i&&u-i<4&&r(u))i=u;else break}let l=i-s;n.push(231);let a=l<=249?[l]:[Math.floor(l/250)+249,l%250];for(let u of[...a,...t.subarray(s,i)]){let f=n.length+1,m=u+149*f%255+1;n.push(m<=255?m:m-256)}s=i}else o(s)&&o(s+1)?(n.push(130+(t[s]-48)*10+(t[s+1]-48)),s+=2):(n.push(t[s]+1),s++);return n}function Wi(e,t){let n=new Int32Array(e*t),r=(u,f,m,y)=>{u<0&&(u+=e,f+=4-(e+4)%8),f<0&&(f+=t,u+=4-(t+4)%8),n[u*t+f]=10*m+y},o=(u,f,m)=>{r(u-2,f-2,m,1),r(u-2,f-1,m,2),r(u-1,f-2,m,3),r(u-1,f-1,m,4),r(u-1,f,m,5),r(u,f-2,m,6),r(u,f-1,m,7),r(u,f,m,8)},s=(u,f)=>f.forEach(([m,y],x)=>r(m,y,u,x+1)),i=1,l=4,a=0;do{l===e&&a===0&&s(i++,[[e-1,0],[e-1,1],[e-1,2],[0,t-2],[0,t-1],[1,t-1],[2,t-1],[3,t-1]]),l===e-2&&a===0&&t%4&&s(i++,[[e-3,0],[e-2,0],[e-1,0],[0,t-4],[0,t-3],[0,t-2],[0,t-1],[1,t-1]]),l===e-2&&a===0&&t%8===4&&s(i++,[[e-3,0],[e-2,0],[e-1,0],[0,t-2],[0,t-1],[1,t-1],[2,t-1],[3,t-1]]),l===e+4&&a===2&&!(t%8)&&s(i++,[[e-1,0],[e-1,t-1],[0,t-3],[0,t-2],[0,t-1],[1,t-3],[1,t-2],[1,t-1]]);do l<e&&a>=0&&!n[l*t+a]&&o(l,a,i++),l-=2,a+=2;while(l>=0&&a<t);l+=1,a+=3;do l>=0&&a<t&&!n[l*t+a]&&o(l,a,i++),l+=2,a-=2;while(l<e&&a>=0);l+=3,a+=1}while(l<e||a<t);return n[e*t-1]||(n[e*t-1]=n[e*t-t-2]=1),n}function Ki(e){let t=Gi(e),n=zi.find(u=>u[1]>=t.length);if(!n)throw new Error("DataMatrix: data too long");let[r,o,s,i]=n;for(t.length<o&&t.push(129);t.length<o;){let u=129+149*(t.length+1)%253+1;t.push(u<=254?u:u-254)}let l=s/i,a=t.slice();for(let u=0;u<i;u++){let f=[];for(let y=u;y<o;y+=i)f.push(t[y]);let m=qi(f,l);for(let y=0;y<l;y++)a[o+y*i+u]=m[y]}return{size:r,data:t,codewords:a}}function Sn(e){let{size:t,codewords:n}=Ki(e),r=Ui(t),o=(t-2*r)/r,s=o*r,i=Wi(s,s),l=Array.from({length:t},()=>new Array(t).fill(!1)),a=o+2;for(let u=0;u<r;u++)for(let f=0;f<r;f++){let m=u*a,y=f*a;for(let x=0;x<a;x++)l[m+a-1][y+x]=!0,l[m+x][y]=!0,x%2===0&&(l[m][y+x]=!0),x%2===1&&(l[m+x][y+a-1]=!0)}for(let u=0;u<s;u++)for(let f=0;f<s;f++){let m=i[u*s+f],y=m===1||m>=10&&(n[Math.floor(m/10)-1]>>8-m%10&1)===1;l[u+2*Math.floor(u/o)+1][f+2*Math.floor(f/o)+1]=y}return l}var lt={A3:[297,420],A4:[210,297],A5:[148,210],B4:[257,364],B5:[182,257],Letter:[215.9,279.4],Legal:[215.9,355.6]};function nt(e={}){var s,i,l;let[t,n]=Array.isArray(e.size)?e.size:(i=lt[(s=e.size)!=null?s:"A4"])!=null?i:lt.A4;(e.orientation==="landscape"?t<n:e.orientation==="portrait"&&t>n)&&([t,n]=[n,t]);let r=(l=e.margins)!=null?l:15,o=typeof r=="number"?[r,r,r,r]:[r[0],r[1],r[2],r[3]];return{width:t,height:n,margins:o}}function rt(e){let t=nt(e.page);return t.width-t.margins[1]-t.margins[3]}var hr={width:.2,style:"solid",color:"#000000"};function To(e){if(!e)return;if(e===!0)return{...hr};if(typeof e=="string"){if(e==="none"||e==="0")return;let n={...hr};for(let r of e.trim().split(/\s+/))/^[\d.]+(mm)?$/.test(r)?n.width=parseFloat(r):/^(solid|dashed|dotted|double)$/.test(r)?n.style=r:n.color=r;return n.width>0?n:void 0}let t={...hr,...e};return t.width>0?t:void 0}function Kt(e){if(!e)return{};if(e===!0||typeof e=="string"||"width"in e||"style"in e||"color"in e){let r=To(e);return r?{top:r,right:r,bottom:r,left:r}:{}}let t=e,n={};for(let r of["top","right","bottom","left"]){let o=To(t[r]);o&&(n[r]=o)}return n}var _i=(e,t)=>e===void 0?t:typeof e=="number"?[e,e,e,e]:e,Xi="Nanum Gothic",Ro=new WeakMap;function Ke(e,t){var s;let n=t.styleName?(s=e.styles)==null?void 0:s[t.styleName]:void 0,r=Ro.get(t);if(r&&r.style===t.style&&r.named===n&&r.font===e.font)return r.result;let o=Vi(e,t,n);return Ro.set(t,{style:t.style,named:n,font:e.font,result:o}),o}function Vi(e,t,n){var o,s,i,l,a,u,f,m,y,x,d,c,p,E,v,k,S,j,C;let r={...n,...t.style};return{fontFamily:(i=(s=r.fontFamily)!=null?s:(o=e.font)==null?void 0:o.family)!=null?i:Xi,fontSize:(u=(a=r.fontSize)!=null?a:(l=e.font)==null?void 0:l.size)!=null?u:9,bold:(f=r.bold)!=null?f:!1,italic:(m=r.italic)!=null?m:!1,underline:(y=r.underline)!=null?y:!1,strike:(x=r.strike)!=null?x:!1,color:(p=(c=r.color)!=null?c:(d=e.font)==null?void 0:d.color)!=null?p:"#000000",background:r.background,align:(E=r.align)!=null?E:"left",valign:(v=r.valign)!=null?v:"middle",padding:_i(r.padding,[.5,1,.5,1]),border:Kt(r.border),lineHeight:(k=r.lineHeight)!=null?k:1.25,wrap:(S=r.wrap)!=null?S:!0,shrinkToFit:(j=r.shrinkToFit)!=null?j:!1,letterSpacing:(C=r.letterSpacing)!=null?C:0}}var Yi={black:"#000000",white:"#ffffff",red:"#ff0000",green:"#008000",blue:"#0000ff",gray:"#808080",grey:"#808080",silver:"#c0c0c0",navy:"#000080",yellow:"#ffff00",orange:"#ffa500",purple:"#800080",maroon:"#800000",teal:"#008080"};function En(e){var o,s;if(!e)return null;let t=e.trim().toLowerCase();if(t==="transparent"||t==="none")return null;let n=(o=Yi[t])!=null?o:t,r=/^#([0-9a-f]{3,8})$/.exec(n);if(r){let i=r[1];return(i.length===3||i.length===4)&&(i=[...i].map(l=>l+l).join("")),i.length!==6&&i.length!==8?null:[parseInt(i.slice(0,2),16),parseInt(i.slice(2,4),16),parseInt(i.slice(4,6),16),i.length===8?parseInt(i.slice(6,8),16)/255:1]}if(r=/^rgba?\(([^)]+)\)$/.exec(t),r){let i=r[1].split(/[\s,/]+/).filter(Boolean).map(parseFloat);return i.length<3?null:[i[0],i[1],i[2],(s=i[3])!=null?s:1]}return null}var Ct=["#2F5BEA","#F2A900","#16A34A","#DC2626","#7C3AED","#0891B2","#DB2777","#65A30D","#EA580C","#475569"],Ji=(e,t)=>{let n=e/Math.max(1,t),r=10**Math.floor(Math.log10(n||1)),o=n/r;return(o<=1?1:o<=2?2:o<=2.5?2.5:o<=5?5:10)*r};function Po(e,t,n,r,o,s=0){let i=[],l=(a,u,f,m)=>{let y=Math.max(1,Math.ceil(Math.abs(f-u)/(Math.PI/2))),x=(f-u)/y,d=4/3*Math.tan(x/4),c=u;m?i.push("M",e+a*Math.cos(c),t+a*Math.sin(c)):i.push("L",e+a*Math.cos(c),t+a*Math.sin(c));for(let p=0;p<y;p++){let E=c+x;i.push("C",e+a*(Math.cos(c)-d*Math.sin(c)),t+a*(Math.sin(c)+d*Math.cos(c)),e+a*(Math.cos(E)+d*Math.sin(E)),t+a*(Math.sin(E)-d*Math.cos(E)),e+a*Math.cos(E),t+a*Math.sin(E)),c=E}};return l(n,r,o,!0),s>0?l(s,o,r,!1):i.push("L",e,t),i.push("Z"),i}var gr=(e,t,n,r)=>["M",e,t,"L",e+n,t,"L",e+n,t+r,"L",e,t+r,"Z"];function jo(e,t,n,r){var ke,ye,ve;let o=Ke(r.def,e),s=e.source?Ae(e.source,t):t.rows,i=Array.isArray(s)?s:[],l=(ke=e.series)!=null&&ke.length?e.series:[],a=i.map((ee,Z)=>{var be;return je((be=Ae(e.category,{...t,row:ee,vars:{...t.vars,rowNum:Z+1}}))!=null?be:"")}),u=l.map(ee=>i.map((Z,be)=>{let Me=Number(Ae(ee.expr,{...t,row:Z,vars:{...t.vars,rowNum:be+1}}));return Number.isFinite(Me)?Me:0})),f=ee=>{var Z,be;return(be=(Z=l[ee])==null?void 0:Z.color)!=null?be:Ct[ee%Ct.length]},m=Math.min(o.fontSize,8),y={family:o.fontFamily,size:m,bold:!1,italic:!1},x={...o,padding:[0,0,0,0],letterSpacing:0,border:{}},d=m*Ce*1.3,c=[],p=(ee,Z,be,Me,_,P=!1,ne="#444444")=>c.push({...yt(Z,be,Me,d,[ee],{...y,bold:P},{...x,align:_,valign:"middle",color:ne},r.measure),source:{band:r.kind,elementId:e.id}}),{x:E,y:v,w:k,h:S}=n;if(e.title&&(p(e.title,E,v,k,"center",!0,o.color),v+=d*1.3,S-=d*1.3),(ye=e.legend)!=null?ye:l.length>1||e.chartType==="pie"||e.chartType==="doughnut"){let ee=e.chartType==="pie"||e.chartType==="doughnut"?a:l.map((fe,ge)=>{var de;return(de=fe.label)!=null?de:`Series ${ge+1}`}),Z=m*Ce,be=E,Me=v+S-d,_=[];ee.forEach((fe,ge)=>{let de=r.measure.width(fe,y)+Z+3;be+de>E+k&&be>E&&(be=E,Me-=d),_.push({text:fe,color:e.chartType==="pie"||e.chartType==="doughnut"?Ct[ge%Ct.length]:f(ge),x:be,y:Me}),be+=de+2});let P=v+S-Math.min(..._.map(fe=>fe.y),v+S),ne=new Map;for(let fe of _)ne.set(fe.y,[...(ve=ne.get(fe.y))!=null?ve:[],fe]);for(let fe of ne.values()){let ge=fe[fe.length-1],de=ge.x+r.measure.width(ge.text,y)+Z+1-fe[0].x,ce=(k-de)/2;for(let ae of fe)c.push({kind:"path",d:gr(ae.x+ce,ae.y+(d-Z)/2,Z,Z),fill:ae.color}),p(ae.text,ae.x+ce+Z+1,ae.y,r.measure.width(ae.text,y)+1,"left")}S-=P+1}if(!i.length||!l.length||S<5)return c;if(e.chartType==="pie"||e.chartType==="doughnut"){let ee=u[0].map(ne=>Math.max(0,ne)),Z=ee.reduce((ne,fe)=>ne+fe,0)||1,be=Math.min(k,S)/2-1,Me=E+k/2,_=v+S/2,P=-Math.PI/2;return ee.forEach((ne,fe)=>{let ge=P+ne/Z*Math.PI*2;if(ne>0&&c.push({kind:"path",d:Po(Me,_,be,P,ge,e.chartType==="doughnut"?be*.55:0),fill:Ct[fe%Ct.length],stroke:"#ffffff",strokeWidth:.3}),e.showValues!==!1&&ne/Z>=.04){let de=(P+ge)/2,ce=e.chartType==="doughnut"?be*.78:be*.62,ae=e.format?je(ne,e.format):`${Math.round(ne/Z*100)}%`;p(ae,Me+ce*Math.cos(de)-10,_+ce*Math.sin(de)-d/2,20,"center",!0,"#ffffff")}P=ge}),c}let C=e.chartType==="hbar",R=!!e.stacked&&(e.chartType==="bar"||e.chartType==="hbar"||e.chartType==="area"),O=a.map((ee,Z)=>u.reduce((be,Me)=>be+Math.max(0,Me[Z]),0)),ue=a.map((ee,Z)=>u.reduce((be,Me)=>be+Math.min(0,Me[Z]),0)),te=Math.max(...R?O:u.flat()),z=R?Math.min(0,...ue):Math.min(0,...u.flat());te===z&&(te=z+1);let U=Ji(te-z,5);te=Math.ceil(te/U)*U,z=Math.floor(z/U)*U;let F=[];for(let ee=z;ee<=te+U/1e6;ee+=U)F.push(Math.round(ee*1e9)/1e9);let D=ee=>{var Z;return je(ee,(Z=e.format)!=null?Z:Math.abs(te)>=1e3?"#,##0":void 0)},G=Math.max(...F.map(ee=>r.measure.width(D(ee),y)))+1.5,J=C?Math.min(k*.3,Math.max(...a.map(ee=>r.measure.width(ee,y)))+1.5):0,W=C?{x:E+J,y:v,w:k-J-2,h:S-d}:{x:E+G,y:v+d/2,w:k-G-1,h:S-d-d/2},oe="#999999",V="#e3e3e3",I=ee=>C?W.x+(ee-z)/(te-z)*W.w:W.y+W.h-(ee-z)/(te-z)*W.h;for(let ee of F){let Z=I(ee);C?(c.push({kind:"line",x1:Z,y1:W.y,x2:Z,y2:W.y+W.h,width:.15,color:ee===0?oe:V}),p(D(ee),Z-10,W.y+W.h+.3,20,"center")):(c.push({kind:"line",x1:W.x,y1:Z,x2:W.x+W.w,y2:Z,width:.15,color:ee===0?oe:V}),p(D(ee),E,Z-d/2,G-1,"right"))}let B=a.length,K=(C?W.h:W.w)/B,N=Math.max(1,Math.ceil(B*r.measure.width("0000",y)/(C?W.h*3:W.w)));if(a.forEach((ee,Z)=>{Z%N||(C?p(ee,E,W.y+Z*K+K/2-d/2,J-1,"right"):p(ee,W.x+Z*K,W.y+W.h+.3,K*N,N>1?"left":"center"))}),e.chartType==="bar"||e.chartType==="hbar"){let ee=K*.7,Z=R?ee:ee/l.length,be=I(0);return a.forEach((Me,_)=>{let P=0,ne=0;l.forEach((fe,ge)=>{let de=u[ge][_],ce=0,ae=de;R&&(de>=0?(ce=P,ae=P+de,P=ae):(ce=ne,ae=ne+de,ne=ae));let $e=R?I(ce):be,T=I(ae),H=(C?W.y:W.x)+_*K+(K-ee)/2+(R?0:ge*Z),pe=C?gr(Math.min($e,T),H,Math.abs(T-$e),Z*.92):gr(H,Math.min($e,T),Z*.92,Math.abs(T-$e));c.push({kind:"path",d:pe,fill:f(ge),source:{band:r.kind,elementId:e.id,value:de}}),e.showValues&&de!==0&&(C?p(D(de),T+.5,H+Z*.46-d/2,G+4,"left"):p(D(de),H-5,Math.min($e,T)-d,Z+10,"center"))})}),c}let Q=a.map((ee,Z)=>W.x+Z*K+K/2),we=a.map(()=>0);return l.forEach((ee,Z)=>{let be=u[Z].map((_,P)=>I(R?we[P]+=_:_)),Me=[];if(Q.forEach((_,P)=>Me.push(P?"L":"M",_,be[P])),e.chartType==="area"){let _=R&&Z>0?u.slice(0,Z).reduce((ne,fe)=>ne.map((ge,de)=>ge+fe[de]),a.map(()=>0)).map(I):Q.map(()=>I(Math.max(z,0))),P=[...Me];for(let ne=Q.length-1;ne>=0;ne--)P.push("L",Q[ne],_[ne]);P.push("Z"),c.push({kind:"path",d:P,fill:f(Z),opacity:.25})}c.push({kind:"path",d:Me,stroke:f(Z),strokeWidth:.5,source:{band:r.kind,elementId:e.id}}),Q.forEach((_,P)=>{B<=40&&c.push({kind:"path",d:Po(_,be[P],.7,0,Math.PI*2).slice(0,-4).concat(["Z"]),fill:f(Z)}),e.showValues&&p(D(u[Z][P]),_-8,be[P]-d-.3,16,"center")})}),c}var Co="0.15 solid #9aa3b2",Ao="#eef1f6";function ct(e,t,n){var r;return{...e,...(t==null?void 0:t.bold)!==void 0?{bold:t.bold}:{},...t!=null&&t.color?{color:t.color}:{},...t!=null&&t.fontSize?{fontSize:t.fontSize}:{},background:(r=t==null?void 0:t.background)!=null?r:e.background,border:(t==null?void 0:t.border)!==void 0?Kt(t.border):e.border,align:n,valign:"middle",wrap:!1}}function qe(e,t,n,r,o,s,i,l,a,u){let f=i.border.top||i.border.right||i.border.bottom||i.border.left;if((i.background||f)&&e.push({kind:"box",x:t,y:n,w:r,h:o,fill:i.background,border:i.border,source:{band:l.kind}}),!s)return;let m={family:i.fontFamily,size:i.fontSize,bold:i.bold,italic:i.italic},y=yt(t,n,r,o,[s],m,i,l.measure);y.source={band:l.kind,value:a,format:u},e.push(y)}function Tn(e){try{return We(e)}catch(t){let n=`#ERR ${t.message}`;return()=>n}}var br=e=>Array.isArray(e)?e:[];function Zi(e){let t=e.columns.reduce((o,s)=>{var i;return o+((i=s.width)!=null?i:0)},0),n=e.columns.filter(o=>!o.width).length,r=Math.max(0,e.w-t);return e.columns.map(o=>{var s;return(s=o.width)!=null?s:n?r/n:0})}function Lo(e,t){var i;let n=br(Ae(e.source,t)),r=(i=e.rowHeight)!=null?i:6,o=e.showHeader===!1?0:r,s=e.columns.some(l=>l.sum)?r:0;return Math.max(e.h,o+n.length*r+s)}function Fo(e,t,n,r,o){var c;let s=br(Ae(e.source,t)),i=Ke(o.def,e),l={...i,border:i.border.top||i.border.left?i.border:Kt(Co),padding:[.3,1,.3,1]},a=ct(l,{bold:!0,background:Ao,...e.headerStyle},"center"),u=Zi(e),f=(c=e.rowHeight)!=null?c:6,m=[],y=r;if(e.showHeader!==!1){let p=n;e.columns.forEach((E,v)=>{qe(m,p,y,u[v],f,E.header,a,o),p+=u[v]}),y+=f}let x=e.columns.map(p=>Tn(p.expr)),d=e.columns.map(()=>0);if(s.forEach((p,E)=>{let v=n,k={...t,row:p,vars:{...t.vars,rowNum:E+1}};e.columns.forEach((S,j)=>{var O;let C;try{C=x[j](k)}catch(ue){C=`#ERR ${ue.message}`}S.sum&&typeof C=="number"&&(d[j]+=C);let R=ct(l,e.altBackground&&E%2?{background:e.altBackground}:void 0,(O=S.align)!=null?O:typeof C=="number"?"right":"left");qe(m,v,y,u[j],f,je(C,S.format,o.locale),R,o,C,S.format),v+=u[j]}),y+=f}),e.columns.some(p=>p.sum)){let p=n,E=ct(l,{bold:!0,background:"#f7f8fb"},"right");e.columns.forEach((v,k)=>{var j;let S=v.sum?je(d[k],v.format,o.locale):k===0?(j=e.footerLabel)!=null?j:"\uD569\uACC4":"";qe(m,p,y,u[k],f,S,{...E,align:v.sum?"right":"center"},o,v.sum?d[k]:void 0,v.format),p+=u[k]})}return m}function Do(e,t){var d;let n=e.source?br(Ae(e.source,t)):t.rows,r=Tn(e.rowKey),o=Tn(e.columnKey),s=Tn(e.value),i=(d=e.aggregate)!=null?d:"sum",l=new Map,a=[],u=[],f=new Set,m=new Set;n.forEach((c,p)=>{let E={...t,row:c,vars:{...t.vars,rowNum:p+1}},v=je(r(E)),k=je(o(E)),S=Number(s(E));f.has(v)||(f.add(v),a.push(v)),m.has(k)||(m.add(k),u.push(k));for(let j of[`${v}\0${k}`,`${v}\0*`,`*\0${k}`,"*\0*"]){let C=l.get(j);C||l.set(j,C=[]),C.push(Number.isFinite(S)?S:0)}});let y=new Intl.Collator("ko",{numeric:!0});a.sort(y.compare),u.sort(y.compare);let x=c=>{if(!(c!=null&&c.length))return null;switch(i){case"count":return c.length;case"avg":return c.reduce((p,E)=>p+E,0)/c.length;case"min":return c.reduce((p,E)=>E<p?E:p);case"max":return c.reduce((p,E)=>E>p?E:p);default:return c.reduce((p,E)=>p+E,0)}};return{rowKeys:a,colKeys:u,cell:(c,p)=>x(l.get(`${c}\0${p}`)),rowTotal:c=>x(l.get(`${c}\0*`)),colTotal:c=>x(l.get(`*\0${c}`)),total:x(l.get("*\0*"))}}function Io(e,t){var o;let n=Do(e,t),r=(o=e.cellHeight)!=null?o:6;return Math.max(e.h,(n.rowKeys.length+1+(e.totals!==!1?1:0))*r)}function Bo(e,t,n,r,o){var j,C,R,O,ue;let s=Do(e,t),i=e.totals!==!1,l=(j=e.cellHeight)!=null?j:6,a=Ke(o.def,e),u={...a,border:a.border.top||a.border.left?a.border:Kt(Co),padding:[.3,1,.3,1]},f=ct(u,{bold:!0,background:Ao,...e.headerStyle},"center"),m=ct(u,{bold:!0,background:"#f7f8fb"},"right"),y=Math.min((C=e.rowHeaderWidth)!=null?C:25,e.w*.4),x=s.colKeys.length+(i?1:0),d=x?(e.w-y)/x:0,c=u.fontSize,p=Math.max(1,...s.colKeys.map(te=>o.measure.width(te,{family:u.fontFamily,size:c,bold:!0,italic:!1})));p>d-2&&(c=Math.max(5,c*((d-2)/p)));let E=te=>({...te,fontSize:Math.min(te.fontSize,c)}),v=[],k=e.totals!==!1?o.locale.startsWith("ko")?"\uD569\uACC4":"Total":"";qe(v,n,r,y,l,(R=e.corner)!=null?R:"",f,o),s.colKeys.forEach((te,z)=>qe(v,n+y+z*d,r,d,l,te,E(f),o)),i&&qe(v,n+y+s.colKeys.length*d,r,d,l,k,E(f),o);let S=(O=e.format)!=null?O:"#,##0";if(s.rowKeys.forEach((te,z)=>{let U=r+(z+1)*l;if(qe(v,n,U,y,l,te,ct(u,{bold:!0,background:"#f7f8fb"},"left"),o),s.colKeys.forEach((F,D)=>{let G=s.cell(te,F);qe(v,n+y+D*d,U,d,l,G===null?"":je(G,S,o.locale),E(ct(u,void 0,"right")),o,G!=null?G:void 0,S)}),i){let F=s.rowTotal(te);qe(v,n+y+s.colKeys.length*d,U,d,l,F===null?"":je(F,S,o.locale),E(m),o,F!=null?F:void 0,S)}}),i){let te=r+(s.rowKeys.length+1)*l;qe(v,n,te,y,l,k,ct(u,{bold:!0,background:"#f7f8fb"},"center"),o),s.colKeys.forEach((z,U)=>{let F=s.colTotal(z);qe(v,n+y+U*d,te,d,l,F===null?"":je(F,S,o.locale),E(m),o,F!=null?F:void 0,S)}),qe(v,n+y+s.colKeys.length*d,te,d,l,s.total===null?"":je(s.total,S,o.locale),E(m),o,(ue=s.total)!=null?ue:void 0,S)}return v}var Qi=.8,ea=e=>!!e&&!(typeof e=="string"&&e.startsWith("#ERR"));function ta(e,t=e.fontSize){return{family:e.fontFamily,size:t,bold:e.bold,italic:e.italic}}function na(e,t,n,r){var E,v,k;let o=Ke(n.def,e);if(e.type==="table"||e.type==="crosstab")return n.blank||e.canGrow===!1?{el:e,style:o,needed:e.h}:{el:e,style:o,needed:e.type==="table"?Lo(e,t):Io(e,t)};if(e.type!=="text"&&e.type!=="field")return{el:e,style:o,needed:e.h};let s="",i;if(!n.blank){if(e.type==="text")s=Ye((E=e.text)!=null?E:"",t);else if(i=Ae(e.expr,t),s=i==null||i===""?(v=e.nullText)!=null?v:"":je(i,e.format,n.locale),e.suppressRepeated&&n.previous){let S=n.previous.get(e);n.previous.set(e,s),S===s&&(s="")}}let[l,a,u,f]=o.padding,m=Math.max(1,e.w-f-a),y=ta(o);if(o.shrinkToFit&&s){let S=o.fontSize;for(;S>4&&n.measure.width(s,{...y,size:S})+o.letterSpacing*s.length>m;)S-=.25;y={...y,size:S}}let x=o.wrap&&!o.shrinkToFit?an(s,m,y,n.measure,o.letterSpacing):s.split(/\r?\n/),d=y.size*Ce*o.lineHeight,p=((k=e.canGrow)!=null?k:r)?Math.max(e.h,x.length*d+l+u):e.h;return{el:e,style:o,text:s,value:i,font:y,lines:x,needed:p}}function ra(e,t,n,r,o,s,i){let l=o.border.top||o.border.right||o.border.bottom||o.border.left;return!o.background&&!l?null:{kind:"box",x:e,y:t,w:n,h:r,fill:o.background,border:o.border,source:{band:s.kind,elementId:i,row:s.rowIndex}}}function yt(e,t,n,r,o,s,i,l){let[a,u,f,m]=i.padding,y=s.size*Ce*i.lineHeight,x=o.length*y,d=r-a-f,c=t+a;i.valign==="middle"?c+=(d-x)/2:i.valign==="bottom"&&(c+=d-x);let p=o.map((E,v)=>{let k=l.width(E,s)+i.letterSpacing*[...E].length,S=e+m;return i.align==="center"?S=e+m+(n-m-u-k)/2:i.align==="right"&&(S=e+n-u-k),{text:E,x:S,y:c+v*y+(y-s.size*Ce)/2+s.size*Ce*Qi,width:k}});return{kind:"text",x:e,y:t,w:n,h:r,lines:p,font:s,color:i.color,align:i.align,valign:i.valign,underline:i.underline||void 0,strike:i.strike||void 0,letterSpacing:i.letterSpacing||void 0,text:o.join(`
13
- `)}}function oa(e,t,n,r,o){let s=e.reduce((u,f)=>u+f,0),i=r/s,l=[],a=t;return e.forEach((u,f)=>{f%2===0&&l.push("M",a,n,"L",a+u*i,n,"L",a+u*i,n+o,"L",a,n+o,"Z"),a+=u*i}),l}function sa(e,t,n,r,o,s,i){var f,m,y;let l=String((f=Ae(e.expr,s))!=null?f:"");if(!l||l.startsWith("#ERR")||i.blank)return[];let a=(m=e.color)!=null?m:"#000000",u={band:i.kind,elementId:e.id,row:i.rowIndex,value:l};try{if(e.format==="qr"||e.format==="datamatrix"||e.format==="pdf417"){let k,S,j,C,R;if(e.format==="pdf417"){k=Mn(l).matrix;let te=k[0].length+4,z=k.length*3+4,U=Math.min(r/te,o/z);S=U,j=U*3,C=t+(r-te*U)/2+2*U,R=n+(o-z*U)/2+2*U}else{k=e.format==="qr"?vn(l,(y=e.ecc)!=null?y:"M"):Sn(l);let te=e.format==="qr"?4:1,z=k.length+te*2,U=Math.min(r,o);S=j=U/z,C=t+(r-U)/2+te*S,R=n+(o-U)/2+te*j}let O=S,ue=[];return k.forEach((te,z)=>{for(let U=0;U<te.length;U++){if(!te[U])continue;let F=U;for(;F+1<te.length&&te[F+1];)F++;ue.push("M",C+U*O,R+z*j,"L",C+(F+1)*O,R+z*j,"L",C+(F+1)*O,R+(z+1)*j,"L",C+U*O,R+(z+1)*j,"Z"),U=F}}),[{kind:"path",d:ue,fill:a,source:u}]}let x=e.format==="ean13"?$n(l):kn(l),d=e.showText!==!1,c=Ke(i.def,e),p=Math.min(c.fontSize,9),E=d?p*Ce*1.3:0,v=[{kind:"path",d:oa(x,t,n,r,Math.max(1,o-E)),fill:a,source:u}];if(d){let k={family:c.fontFamily,size:p,bold:!1,italic:!1};v.push(yt(t,n+o-E,r,E,[l],k,{...c,align:"center",valign:"middle",padding:[0,0,0,0],letterSpacing:0},i.measure))}return v}catch{return[yt(t,n,r,o,["(barcode?)"],{family:"sans-serif",size:7,bold:!1,italic:!1},{...Ke(i.def,e),color:"#cc0000"},i.measure)]}}function ut(e,t,n,r,o,s=0){var y,x,d,c,p,E,v,k,S,j;let i=(y=e.canGrow)!=null?y:n.kind==="detail"||n.kind==="groupHeader"||n.kind==="groupFooter"||n.kind==="summary"||n.kind==="title",l=[];for(let C of e.elements)C.visible&&!n.blank&&!ea(Ae(C.visible,t))||l.push(na(C,t,n,i));let a=Math.max(e.height,s);for(let C of l)a=Math.max(a,C.el.y+C.needed);let u=[],f=(x=n.background)!=null?x:e.background;f&&u.push({kind:"box",x:r,y:o,w:n.width,h:a,fill:f,source:{band:n.kind,row:n.rowIndex}});let m=a-e.height;for(let C of l){let R=C.el,O=R.y+R.h>=e.height-.01,ue=C.needed;((d=R.stretch)!=null?d:O)&&R.type!=="line"&&R.type!=="table"&&R.type!=="crosstab"&&(ue=Math.max(ue,R.h+m,a-R.y));let te=r+R.x,z=o+R.y;switch(R.type){case"text":case"field":{let U=ra(te,z,R.w,ue,C.style,n,R.id);if(U&&u.push(U),C.text){let F=yt(te,z,R.w,ue,C.lines,C.font,C.style,n.measure);F.source={band:n.kind,elementId:R.id,row:n.rowIndex,value:R.type==="field"?C.value:void 0,format:R.type==="field"?R.format:void 0},/docHash/.test(R.type==="text"?R.text:R.expr)&&(F.source.fingerprint=!0),u.push(F)}break}case"line":{let U=R.h===0?0:R.y+R.h>=e.height-.01?R.h+m:R.h;u.push({kind:"line",x1:te,y1:z,x2:te+R.w,y2:z+U,width:(c=R.width)!=null?c:.2,color:(p=R.color)!=null?p:"#000000",dash:R.dash,source:{band:n.kind,elementId:R.id}});break}case"rect":{let U=(E=R.width)!=null?E:.2;u.push({kind:"box",x:te,y:z,w:R.w,h:ue,fill:R.fill,radius:R.radius,stroke:U>0?{width:U,color:(v=R.color)!=null?v:"#000000"}:void 0,source:{band:n.kind,elementId:R.id}});break}case"image":{let U=R.expr?String((k=Ae(R.expr,t))!=null?k:""):(S=R.src)!=null?S:"";U&&!U.startsWith("#ERR")&&!n.blank&&u.push({kind:"image",x:te,y:z,w:R.w,h:ue,src:U,fit:(j=R.fit)!=null?j:"contain",source:{band:n.kind,elementId:R.id}});break}case"barcode":u.push(...sa(R,te,z,R.w,ue,t,n));break;case"chart":n.blank||u.push(...jo(R,t,{x:te,y:z,w:R.w,h:ue},n));break;case"table":n.blank||u.push(...Fo(R,t,te,z,n));break;case"crosstab":n.blank||u.push(...Bo(R,t,te,z,n));break}}return{height:a,items:u}}var yr=e=>!!e&&!(typeof e=="string"&&e.startsWith("#ERR"));function No(e){return e instanceof Date?e.getTime():typeof e=="number"?e:typeof e=="boolean"?e?1:0:e==null?"":String(e)}var ia=new Intl.Collator("ko",{numeric:!0});function Oo(e,t){let n=No(e),r=No(t);return typeof n=="number"&&typeof r=="number"?n-r:n===r?0:ia.compare(String(n),String(r))}function aa(e,t){if(!t)return e;for(let n of e)if(n.kind==="line")n.y1+=t,n.y2+=t;else if(n.kind==="path"){let r=0;for(let o=0;o<n.d.length;o++){let s=n.d[o];if(typeof s=="string"){r=0;continue}r++%2===1&&(n.d[o]=s+t)}}else if(n.y+=t,n.kind==="text")for(let r of n.lines)r.y+=t;return e}var Ho=new WeakMap;function la(e){let t=Ho.get(e);return t===void 0&&(t=/\bpages?\b|pageRows|pageIndex/.test(JSON.stringify(e.elements)),Ho.set(e,t)),t}function _e(e,t){var o;if(Array.isArray(t))return{rows:t,root:{rows:t}};let n=t!=null?t:{},r=n[(o=e.dataSource)!=null?o:"rows"];return{rows:Array.isArray(r)?r:[],root:n}}function ft(e,t={}){var r;let n={};for(let[o,s]of Object.entries((r=e.params)!=null?r:{}))n[o]=s.default;return{...n,...t}}function qo(e,t,n,r){if(n>=t.length)return null;let o=t[n],s=We(o.by),i=[],l=null;e.forEach(a=>{let u=s({...r,row:a});(!l||Oo(l.key,u)!==0)&&(l={def:o,level:n,key:u,rows:[],children:null},i.push(l)),l.rows.push(a)});for(let a of i)a.children=qo(a.rows,t,n+1,r);return i}function At(e,t={},n={}){let r=typeof performance!="undefined"?performance.now():Date.now(),o=wr(e,t,n,void 0,void 0),s=/\bpages\b/.test(JSON.stringify([e.bands.title,e.bands.columnHeader,e.bands.detail,e.bands.summary,e.bands.groups])),i=s&&o.pages.length>1?wr(e,t,n,o.pages.length,void 0):o;if(e.fingerprint){let l=jt(i.pages);i=wr(e,t,n,s?i.pages.length:void 0,l),i.fingerprint=l}return i.ms=Math.round(((typeof performance!="undefined"?performance.now():Date.now())-r)*10)/10,i}function wr(e,t,n,r,o){var P,ne,fe,ge,de,ce,ae,$e,T,H,pe,xe,h,M;lo();let s=(P=n.measure)!=null?P:Et(),i=(ne=n.locale)!=null?ne:"ko",l=(fe=n.maxPages)!=null?fe:1e4,a=nt(e.page),[u,,f,m]=a.margins,y=rt(e),x=ft(e,n.params),{rows:d,root:c}=_e(e,t),p=new Date,E=o?{docHash:o,docHashShort:o.slice(0,12)}:{docHash:"",docHashShort:""},v={rows:d,allRows:d,params:x,data:c,vars:{now:p,...E}},k=d;if(e.filter){let w=We(e.filter);k=k.filter(g=>yr(w({...v,row:g})))}let S=(ge=e.bands.groups)!=null?ge:[],j=[...S.filter(w=>w.sort).map(w=>({fn:We(w.by),dir:w.sort==="desc"?-1:1})),...((de=e.sort)!=null?de:[]).map(w=>({fn:We(w.replace(/^[-+]/,"")),dir:w.startsWith("-")?-1:1}))];if(j.length){let w=k.map((g,A)=>({row:g,i:A,keys:j.map(L=>L.fn({...v,row:g}))}));w.sort((g,A)=>{for(let L=0;L<j.length;L++){let b=Oo(g.keys[L],A.keys[L])*j[L].dir;if(b)return b}return g.i-A.i}),k=w.map(g=>g.row)}let C={...v,rows:k,allRows:k},R=[],O=e.bands;O.title&&R.push({kind:"title",band:O.title,scopeRows:k,groups:[]});let ue=0,te=(w,g,A)=>{var L,b;if(!w){let $=Math.max(1,Math.floor((b=(L=O.detail)==null?void 0:L.columns)!=null?b:1));if(O.detail&&$>1){for(let q=0;q<A.length;q+=$){let Y=A.slice(q,q+$);R.push({kind:"detail",band:O.detail,row:Y[0],rowIndex:ue,localIndex:q,chunk:Y,scopeRows:A,groupRows:g.length?A:void 0,groups:g}),ue+=Y.length}return}A.forEach((q,Y)=>{O.detail&&R.push({kind:"detail",band:O.detail,row:q,rowIndex:ue,localIndex:Y,scopeRows:A,groupRows:g.length?A:void 0,groups:g}),ue++});return}for(let $ of w){let q=[...g,$];$.def.header&&R.push({kind:"groupHeader",band:$.def.header,row:$.rows[0],scopeRows:$.rows,groupRows:$.rows,groups:q,group:$}),te($.children,q,$.rows),$.def.footer&&R.push({kind:"groupFooter",band:$.def.footer,row:$.rows[$.rows.length-1],scopeRows:$.rows,groupRows:$.rows,groups:q,group:$})}};!k.length&&O.noData?R.push({kind:"noData",band:O.noData,scopeRows:k,groups:[]}):te(qo(k,S,0,C),[],k),O.summary&&R.push({kind:"summary",band:O.summary,row:k[k.length-1],scopeRows:k,groups:[]});let z=[],U=[],F=[],D,G=0,J=0,W=!1,oe=!1,V=new Map,I=(ae=(ce=O.pageFooter)==null?void 0:ce.height)!=null?ae:0,B=null,K=(w,g)=>{var A,L,b,$;return{...C,row:w.row,rows:w.kind==="groupHeader"||w.kind==="groupFooter"||w.kind==="detail"?w.scopeRows:k,groupRows:w.groupRows,pageRows:U[z.length-1],vars:{now:p,...E,page:g,pages:r!=null?r:g,rowNum:w.localIndex!==void 0?w.localIndex+1:void 0,rowIndex:w.rowIndex!==void 0?w.rowIndex+1:void 0,groupKey:(b=(A=w.group)==null?void 0:A.key)!=null?b:(L=w.groups[w.groups.length-1])==null?void 0:L.key,groupLevel:($=w.group)==null?void 0:$.level}}},N=(w,g={})=>({def:e,measure:s,locale:i,kind:w,width:y,previous:V,...g}),Q=()=>{if(z.length>=l)throw new Error(`Report stopped at ${l} pages (maxPages)`);D={number:z.length+1,total:0,width:a.width,height:a.height,items:[]},z.push(D),U.push([]),F.push(B),G=u,O.pageHeader&&!(e.pageHeaderSkipFirst&&z.length===1)&&(G+=O.pageHeader.height),J=a.height-f-I,W=!1,oe=!1,V.clear()},we=(w,g,A,L={},b)=>{let $=b?{height:b.height,items:aa(b.items,G)}:ut(w,A,N(g,L),m,G);for(let q of $.items)D.items.push(q);return G+=$.height,oe=!0,$.height},ke=(w,g,A,L={})=>ut(w,A,N(g,{...L,previous:void 0}),0,0).height,ye=(w,g,A)=>{var he,ie;let L=w.band,b=Math.max(1,Math.floor((he=L.columns)!=null?he:1)),$=(ie=L.columnGap)!=null?ie:0,q=(y-$*(b-1))/b,Y=w.chunk.map((se,me)=>{var le,Se,Pe;return ut(L,{...g,row:se,vars:{...g.vars,rowNum:((le=w.localIndex)!=null?le:0)+me+1,rowIndex:((Se=w.rowIndex)!=null?Se:0)+me+1}},N(w.kind,{...A,rowIndex:((Pe=w.rowIndex)!=null?Pe:0)+me,previous:void 0,width:q}),m+me*(q+$),0)});return{height:Math.max(...Y.map(se=>se.height)),items:Y.flatMap(se=>se.items)}},ve=w=>w.kind==="detail"||w.kind==="groupHeader"||w.kind==="groupFooter",ee=w=>{!O.columnHeader||W||!ve(w)||(W=!0,we(O.columnHeader,"columnHeader",K(w,D.number)))},Z=w=>{for(let g of w.groups){if(g===w.group&&w.kind==="groupHeader")break;g.def.repeatHeader&&g.def.header&&we(g.def.header,"groupHeader",{...K(w,D.number),rows:g.rows,groupRows:g.rows,row:g.rows[0]})}},be=w=>{if(!e.fillEmptyRows||!O.detail)return;let g=O.detail.height;if(g>.5)for(;G+g<=w+.01&&!(we(O.detail,"detail",{...C,rows:k},{blank:!0})<=0););};Q();let Me=new Set;for(let w=0;w<R.length;w++){let g=R[w],A=K(g,D.number);if(g.band.visible&&!yr(Ae(g.band.visible,A)))continue;g.kind==="groupHeader"&&(($e=g.group)!=null&&$e.def.resetPageNumber)&&(B&&oe?(be(J),B=g.group,Q()):(B=g.group,F[z.length-1]=B));let L=g.band.pageBreakBefore&&oe||g.kind==="groupHeader"&&((T=g.group)==null?void 0:T.def.newPage)&&oe&&!g.group.def.resetPageNumber&&Me.has(g.group.level);g.kind==="groupHeader"&&g.group&&Me.add(g.group.level),L&&(be(J),Q());let b={rowIndex:g.rowIndex};g.kind==="detail"&&((H=O.detail)!=null&&H.altBackground)&&((pe=g.localIndex)!=null?pe:0)%2===1&&(b.background=O.detail.altBackground);let $=!la(g.band)&&!g.band.elements.some(ie=>ie.type==="field"&&ie.suppressRepeated),q=g.chunk?ye(g,A,b):ut(g.band,A,N(g.kind,{...b,previous:void 0}),m,0),Y=q.height;if(!W&&O.columnHeader&&ve(g)&&(Y+=O.columnHeader.height),g.kind==="groupHeader"){let ie=(h=(xe=g.group)==null?void 0:xe.def.keepWithRows)!=null?h:1;for(let se=w+1,me=0;se<R.length&&me<ie&&!(R[se].kind!=="detail"&&R[se].kind!=="groupHeader");se++)Y+=ke(R[se].band,R[se].kind,K(R[se],D.number)),R[se].kind==="detail"&&me++}G+Y>J+.01&&oe?(be(J),Q(),ee(g),Z(g)):ee(g);let he=K(g,D.number);if(we(g.band,g.kind,he,b,$||g.chunk?q:void 0),g.chunk?U[z.length-1].push(...g.chunk):g.kind==="detail"&&g.row&&U[z.length-1].push(g.row),e.fillEmptyRows&&g.kind==="detail"&&((M=R[w+1])==null?void 0:M.kind)!=="detail"){let se=R.slice(w+1).filter(me=>me.kind==="groupFooter"||me.kind==="summary").reduce((me,le)=>me+ke(le.band,le.kind,K(le,D.number)),0);R.slice(w+1).some(me=>me.kind==="detail")||be(J-se)}g.band.pageBreakAfter&&w<R.length-1&&Q()}!R.length&&e.fillEmptyRows&&be(J);let _=new Map;F.forEach((w,g)=>{var A;return _.set(w,[...(A=_.get(w))!=null?A:[],g])});for(let w of _.values())w.forEach((g,A)=>{z[g].number=A+1,z[g].total=w.length});return z.forEach((w,g)=>{let A=F[g],L={...C,row:U[g][0],rows:U[g],pageRows:U[g],groupRows:A==null?void 0:A.rows,vars:{now:p,...E,page:w.number,pages:w.total,pageIndex:g+1,pageCount:z.length,groupKey:A==null?void 0:A.key,lastPage:g===z.length-1,firstPage:g===0}},b=[],$=(q,Y,he)=>{q&&(q.visible&&!yr(Ae(q.visible,L))||b.push(...ut(q,L,N(Y,{previous:void 0}),m,he,0).items))};e.pageHeaderSkipFirst&&g===0||$(O.pageHeader,"pageHeader",u),$(O.pageFooter,"pageFooter",a.height-f-I),w.items.push(...b)}),mo(z,{watermark:e.watermark,emboss:e.emboss},a,(w,g)=>({...C,rows:U[g],pageRows:U[g],vars:{now:p,...E,page:w.number,pages:w.total,pageIndex:g+1,pageCount:z.length}}),s),{pages:z,width:a.width,height:a.height,rowCount:k.length,ms:0}}var ca=(()=>{let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n>>>0}return e})();function ua(e){let t=4294967295;for(let n=0;n<e.length;n++)t=ca[(t^e[n])&255]^t>>>8;return(t^4294967295)>>>0}var zo=new TextEncoder;function Rn(e){let t=e.map(f=>{let m=zo.encode(f.name),y=typeof f.data=="string"?zo.encode(f.data):f.data;return{name:m,data:y,crc:ua(y),offset:0}}),n=t.reduce((f,m)=>f+30+m.name.length+m.data.length,0),r=t.reduce((f,m)=>f+46+m.name.length,0),o=new Uint8Array(n+r+22),s=new DataView(o.buffer),i=0,l=0,a=33;for(let f of t)f.offset=i,s.setUint32(i,67324752,!0),s.setUint16(i+4,20,!0),s.setUint16(i+6,2048,!0),s.setUint16(i+8,0,!0),s.setUint16(i+10,l,!0),s.setUint16(i+12,a,!0),s.setUint32(i+14,f.crc,!0),s.setUint32(i+18,f.data.length,!0),s.setUint32(i+22,f.data.length,!0),s.setUint16(i+26,f.name.length,!0),s.setUint16(i+28,0,!0),o.set(f.name,i+30),o.set(f.data,i+30+f.name.length),i+=30+f.name.length+f.data.length;let u=i;for(let f of t)s.setUint32(i,33639248,!0),s.setUint16(i+4,20,!0),s.setUint16(i+6,20,!0),s.setUint16(i+8,2048,!0),s.setUint16(i+10,0,!0),s.setUint16(i+12,l,!0),s.setUint16(i+14,a,!0),s.setUint32(i+16,f.crc,!0),s.setUint32(i+20,f.data.length,!0),s.setUint32(i+24,f.data.length,!0),s.setUint16(i+28,f.name.length,!0),s.setUint16(i+30,0,!0),s.setUint16(i+32,0,!0),s.setUint16(i+34,0,!0),s.setUint16(i+36,0,!0),s.setUint32(i+38,0,!0),s.setUint32(i+42,f.offset,!0),o.set(f.name,i+46),i+=46+f.name.length;return s.setUint32(i,101010256,!0),s.setUint16(i+8,t.length,!0),s.setUint16(i+10,t.length,!0),s.setUint32(i+12,i-u,!0),s.setUint32(i+16,u,!0),o}function _t(e){let t="";for(let n=e+1;n>0;n=Math.floor((n-1)/26))t=String.fromCharCode(65+(n-1)%26)+t;return t}var fa=Date.UTC(1899,11,30),da=e=>(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds())-fa)/864e5,pa=/[\u0000-\u0008\u000b\u000c\u000e-\u001f￾￿]/g,Vt=e=>e.replace(pa,"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Xt=e=>{if(!e)return"";let t=e.replace("#","");return/^[0-9a-f]{6}$/i.test(t)?`FF${t.toUpperCase()}`:/^[0-9a-f]{3}$/i.test(t)?`FF${[...t].map(n=>n+n).join("").toUpperCase()}`:/^[0-9a-f]{8}$/i.test(t)?t.toUpperCase():""},ma={Letter:1,Legal:5,A3:8,A4:9,A5:11,B4:12,B5:13},wt=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
14
- `,xr="http://schemas.openxmlformats.org/spreadsheetml/2006/main",Uo="http://schemas.openxmlformats.org/officeDocument/2006/relationships",kr=class{constructor(){this.fonts=['<font><sz val="10"/><name val="\uB9D1\uC740 \uACE0\uB515"/><family val="3"/></font>'];this.fills=['<fill><patternFill patternType="none"/></fill>','<fill><patternFill patternType="gray125"/></fill>'];this.borders=["<border><left/><right/><top/><bottom/><diagonal/></border>"];this.numFmts=[];this.xfs=['<xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/>'];this.idx=new Map;this.fmtIds=new Map}intern(t,n){let r=`${t.length===0,""}${n}`,o=t.indexOf(r);return o>=0?o:(t.push(n),t.length-1)}id(t){var d,c,p,E,v,k;if(!t)return 0;let n=JSON.stringify(t),r=this.idx.get(n);if(r!==void 0)return r;let o=(d=t.font)!=null?d:{},s=this.intern(this.fonts,`<font>${o.bold?"<b/>":""}${o.italic?"<i/>":""}${o.strike?"<strike/>":""}${o.underline?"<u/>":""}<sz val="${(c=o.size)!=null?c:10}"/>${Xt(o.color)?`<color rgb="${Xt(o.color)}"/>`:""}<name val="${Vt((p=o.name)!=null?p:"\uB9D1\uC740 \uACE0\uB515")}"/><family val="3"/></font>`),i=t.fill&&Xt(t.fill)?this.intern(this.fills,`<fill><patternFill patternType="solid"><fgColor rgb="${Xt(t.fill)}"/><bgColor indexed="64"/></patternFill></fill>`):0,l=(S,j)=>j?`<${S} style="${j.style}"><color rgb="${Xt(j.color)||"FF000000"}"/></${S}>`:`<${S}/>`,a=(E=t.border)!=null?E:{},u=t.border?this.intern(this.borders,`<border>${l("left",a.left)}${l("right",a.right)}${l("top",a.top)}${l("bottom",a.bottom)}<diagonal/></border>`):0,f=0;t.fmt&&t.fmt!=="General"&&(f=(k=(v={0:1,"0.00":2,"#,##0":3,"#,##0.00":4,"0%":9,"0.00%":10,"yyyy-mm-dd":14}[t.fmt])!=null?v:this.fmtIds.get(t.fmt))!=null?k:0,f||(f=164+this.numFmts.length,this.numFmts.push(`<numFmt numFmtId="${f}" formatCode="${Vt(t.fmt)}"/>`),this.fmtIds.set(t.fmt,f)));let m=t.align||t.valign||t.wrap?`<alignment${t.align?` horizontal="${t.align}"`:""}${t.valign?` vertical="${t.valign}"`:""}${t.wrap?' wrapText="1"':""}/>`:"",y=`numFmtId="${f}" fontId="${s}" fillId="${i}" borderId="${u}" xfId="0"`+(f?' applyNumberFormat="1"':"")+(s?' applyFont="1"':"")+(i?' applyFill="1"':"")+(u?' applyBorder="1"':"")+(m?' applyAlignment="1"':"");this.xfs.push(m?`<xf ${y}>${m}</xf>`:`<xf ${y}/>`);let x=this.xfs.length-1;return this.idx.set(n,x),x}xml(){return wt+`<styleSheet xmlns="${xr}">`+(this.numFmts.length?`<numFmts count="${this.numFmts.length}">${this.numFmts.join("")}</numFmts>`:"")+`<fonts count="${this.fonts.length}">${this.fonts.join("")}</fonts><fills count="${this.fills.length}">${this.fills.join("")}</fills><borders count="${this.borders.length}">${this.borders.join("")}</borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="${this.xfs.length}">${this.xfs.join("")}</cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles></styleSheet>`}};function ha(e){let t=new Set;return e.map((n,r)=>{var i;let o=((i=n.name)!=null?i:`Sheet${r+1}`).replace(/[[\]:*?/\\]/g," ").slice(0,31).trim()||`Sheet${r+1}`,s=o;for(let l=2;t.has(s.toLowerCase());l++)s=`${o.slice(0,27)} (${l})`;return t.add(s.toLowerCase()),s})}function Yt(e,t={}){var i;let n=new kr,r=ha(e),o=e.map(l=>{var j,C,R,O,ue,te,z,U,F,D,G,J,W;let a=[],u=0;for(let oe=0;oe<l.rows.length;oe++)u=Math.max(u,(C=(j=l.rows[oe])==null?void 0:j.length)!=null?C:0);l.widths&&(u=Math.max(u,l.widths.length));let f=Math.max(l.rows.length,(O=(R=l.heights)==null?void 0:R.length)!=null?O:0);for(let oe=0;oe<f;oe++){let V=(ue=l.rows[oe])!=null?ue:[],I=(te=l.heights)==null?void 0:te[oe],B="";for(let K=0;K<V.length;K++){let N=V[K];if(!N)continue;let Q=`${_t(K)}${oe+1}`,we=N.v,ke=N.s;we instanceof Date&&(Number.isNaN(we.getTime())?we=null:(we=da(we),ke={...ke,fmt:(z=ke==null?void 0:ke.fmt)!=null?z:"yyyy-mm-dd"}));let ye=n.id(ke),ve=ye?` s="${ye}"`:"";we==null||we===""?B+=`<c r="${Q}"${ve}/>`:typeof we=="number"?B+=Number.isFinite(we)?`<c r="${Q}"${ve}><v>${we}</v></c>`:`<c r="${Q}"${ve}/>`:typeof we=="boolean"?B+=`<c r="${Q}"${ve} t="b"><v>${we?1:0}</v></c>`:B+=`<c r="${Q}"${ve} t="inlineStr"><is><t xml:space="preserve">${Vt(String(we))}</t></is></c>`}(B||I)&&a.push(`<row r="${oe+1}"${I?` ht="${Math.round(I*100)/100}" customHeight="1"`:""}>${B}</row>`)}let m=`A1:${_t(Math.max(0,u-1))}${Math.max(1,f)}`,y=`<sheetViews><sheetView workbookViewId="0"${l.showGrid===!1?' showGridLines="0"':""}>${l.freezeRows?`<pane ySplit="${l.freezeRows}" topLeftCell="A${l.freezeRows+1}" activePane="bottomLeft" state="frozen"/>`:""}</sheetView></sheetViews>`,x=(U=l.widths)!=null&&U.length?`<cols>${l.widths.map((oe,V)=>`<col min="${V+1}" max="${V+1}" width="${Math.round(oe*100)/100}" customWidth="1"/>`).join("")}</cols>`:"",d=(F=l.merges)!=null&&F.length?`<mergeCells count="${l.merges.length}">${l.merges.map(([oe,V,I,B])=>`<mergeCell ref="${_t(V)}${oe+1}:${_t(B)}${I+1}"/>`).join("")}</mergeCells>`:"",c=l.autoFilter&&u?`<autoFilter ref="A${l.freezeRows||1}:${_t(u-1)}${Math.max(1,f)}"/>`:"",p=l.page,E=p!=null&&p.margins?`<pageMargins left="${(p.margins[3]/25.4).toFixed(3)}" right="${(p.margins[1]/25.4).toFixed(3)}" top="${(p.margins[0]/25.4).toFixed(3)}" bottom="${(p.margins[2]/25.4).toFixed(3)}" header="0" footer="0"/>`:"",v=p?`<pageSetup paperSize="${(G=ma[(D=p.paper)!=null?D:"A4"])!=null?G:9}" orientation="${p.landscape?"landscape":"portrait"}"${p.fitWidth?` fitToWidth="1" fitToHeight="${(J=p.fitHeight)!=null?J:0}"`:""}/>`:"",k=(W=l.breaks)!=null&&W.length?`<rowBreaks count="${l.breaks.length}" manualBreakCount="${l.breaks.length}">${l.breaks.map(oe=>`<brk id="${oe}" max="16383" man="1"/>`).join("")}</rowBreaks>`:"",S=p!=null&&p.fitWidth?'<sheetPr><pageSetUpPr fitToPage="1"/></sheetPr>':"";return wt+`<worksheet xmlns="${xr}" xmlns:r="${Uo}">${S}<dimension ref="${m}"/>${y}<sheetFormatPr defaultRowHeight="15"/>${x}<sheetData>${a.join("")}</sheetData>${c}${d}${E}${v}${k}</worksheet>`}),s=[{name:"[Content_Types].xml",data:wt+'<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/>'+e.map((l,a)=>`<Override PartName="/xl/worksheets/sheet${a+1}.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/>`).join("")+'<Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/></Types>'},{name:"_rels/.rels",data:wt+'<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/></Relationships>'},{name:"docProps/core.xml",data:wt+`<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:creator>${Vt((i=t.creator)!=null?i:"FreeReport")}</dc:creator><dcterms:created xsi:type="dcterms:W3CDTF">${new Date().toISOString().slice(0,19)}Z</dcterms:created></cp:coreProperties>`},{name:"xl/workbook.xml",data:wt+`<workbook xmlns="${xr}" xmlns:r="${Uo}"><sheets>${r.map((l,a)=>`<sheet name="${Vt(l)}" sheetId="${a+1}" r:id="rId${a+1}"/>`).join("")}</sheets></workbook>`},{name:"xl/_rels/workbook.xml.rels",data:wt+`<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">${e.map((l,a)=>`<Relationship Id="rId${a+1}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet${a+1}.xml"/>`).join("")}<Relationship Id="rId${e.length+1}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>`},...o.map((l,a)=>({name:`xl/worksheets/sheet${a+1}.xml`,data:l}))];return s.push({name:"xl/styles.xml",data:n.xml()}),Rn(s)}var Wo=1.9,ga=72/25.4,dt=e=>{if(e)return e.style==="double"?{style:"double",color:e.color}:e.style==="dashed"?{style:"dashed",color:e.color}:e.style==="dotted"?{style:"dotted",color:e.color}:{style:e.width>=.6?"thick":e.width>=.35?"medium":e.width<.12?"hair":"thin",color:e.color}};function Ko(e){if(!(!e||e==="korean"||e==="koreanNumber"||e==="bizNo"||e==="upper"||e==="lower"))return rr(e)?e.replace(/dddd/g,"aaaa").replace(/ddd/g,"aaa").replace(/\ba\b|tt/g,"AM/PM").replace(/H/g,"h"):e.replace(/([^"\\#0,.%;()₩$€\-\s])/gu,(t,n,r,o)=>/"/.test(o.slice(0,r).replace(/[^"]/g,"").length%2?'"':"")?t:`"${t}"`).replace(/""/g,"")}function Go(e,t){let n=[...new Set(e.map(o=>Math.round(o*10)/10))].sort((o,s)=>o-s),r=[];for(let o of n)(!r.length||o-r[r.length-1]>t)&&r.push(o);return r}var Je=(e,t)=>{let n=0;for(let r=1;r<e.length;r++)Math.abs(e[r]-t)<Math.abs(e[n]-t)&&(n=r);return n};function Lt(e,t,n={}){var y,x;let r=nt(t.page),o=d=>{var c;return((c=d.source)==null?void 0:c.band)!=="watermark"},s=[];for(let d of e.pages)for(let c of d.items)o(c)&&(c.kind==="text"||c.kind==="box"?s.push(c.x,c.x+c.w):c.kind==="line"&&Math.abs(c.x1-c.x2)<.01&&s.push(c.x1));let i=Go(s.length?s:[r.margins[3],r.width-r.margins[1]],1.2),l=i.slice(1).map((d,c)=>Math.max(.5,(d-i[c])/Wo)),a=d=>{var c,p;return{name:d,rows:[],widths:l,heights:[],merges:[],breaks:[],showGrid:!1,page:{paper:typeof((c=t.page)==null?void 0:c.size)=="string"?t.page.size:"A4",landscape:((p=t.page)==null?void 0:p.orientation)==="landscape",margins:r.margins,fitWidth:!0,fitHeight:n.onePerPage?1:e.pages.length}}},u=[],f=a((x=(y=n.sheetName)!=null?y:t.name)!=null?x:"Report");u.push(f);let m=0;return e.pages.forEach((d,c)=>{var R,O,ue,te,z,U;n.onePerPage&&c>0&&(f=a(`${c+1}`),u.push(f),m=0);let p=d.items.filter(o),E=[];for(let F of p)F.kind==="text"||F.kind==="box"?E.push(F.y,F.y+F.h):F.kind==="line"&&Math.abs(F.y1-F.y2)<.01&&E.push(F.y1);if(!E.length)return;let v=Go(E,.8);c>0&&!n.onePerPage&&f.breaks.push(m),v.slice(1).forEach((F,D)=>{f.heights[m+D]=Math.max(2,(F-v[D])*ga)});let k=(F,D)=>{var J,W,oe,V;let G=(oe=(J=f.rows)[W=m+F])!=null?oe:J[W]=[];return(V=G[D])!=null?V:G[D]={v:null,s:{}}},S=(F,D,G,J)=>{let W=Je(i,F),oe=Math.max(W+1,Je(i,F+G)),V=Je(v,D),I=Math.max(V+1,Je(v,D+J));return{r1:V,c1:W,r2:I-1,c2:oe-1}},j=(F,D)=>{for(let G=F.c1;G<=F.c2;G++){if(D.top){let J=k(F.r1,G).s;J.border={...J.border,top:dt(D.top)}}if(D.bottom){let J=k(F.r2,G).s;J.border={...J.border,bottom:dt(D.bottom)}}}for(let G=F.r1;G<=F.r2;G++){if(D.left){let J=k(G,F.c1).s;J.border={...J.border,left:dt(D.left)}}if(D.right){let J=k(G,F.c2).s;J.border={...J.border,right:dt(D.right)}}}},C=new Set;for(let F of p)if(F.kind==="box"){let D=S(F.x,F.y,F.w,F.h);if(F.fill)for(let G=D.r1;G<=D.r2;G++)for(let J=D.c1;J<=D.c2;J++)k(G,J).s.fill=F.fill;if(F.border&&j(D,F.border),F.stroke&&F.stroke.width>0){let G={width:F.stroke.width,style:(R=F.stroke.dash)!=null?R:"solid",color:F.stroke.color};j(D,{top:G,right:G,bottom:G,left:G})}}else if(F.kind==="line"){let D={width:F.width,style:(O=F.dash)!=null?O:"solid",color:F.color};if(Math.abs(F.y1-F.y2)<.01){let G=Je(v,F.y1),J=Je(i,Math.min(F.x1,F.x2)),W=Je(i,Math.max(F.x1,F.x2));for(let oe=J;oe<W;oe++)if(G<v.length-1){let V=k(G,oe).s;V.border={...V.border,top:dt(D)}}else{let V=k(G-1,oe).s;V.border={...V.border,bottom:dt(D)}}}else if(Math.abs(F.x1-F.x2)<.01){let G=Je(i,F.x1),J=Je(v,Math.min(F.y1,F.y2)),W=Je(v,Math.max(F.y1,F.y2));for(let oe=J;oe<W;oe++)if(G<i.length-1){let V=k(oe,G).s;V.border={...V.border,left:dt(D)}}else{let V=k(oe,G-1).s;V.border={...V.border,right:dt(D)}}}}else if(F.kind==="text"){let D=S(F.x,F.y,F.w,F.h),G=`${D.r1}:${D.c1}`,J=k(D.r1,D.c1),W=(ue=F.source)==null?void 0:ue.value,oe=Ko((te=F.source)==null?void 0:te.format),V=typeof W=="number"&&Number.isFinite(W)&&((z=F.source)==null?void 0:z.format)!=="korean"&&((U=F.source)==null?void 0:U.format)!=="koreanNumber";C.has(G)&&J.v!==null?J.v=`${J.v}
15
- ${F.text}`:J.v=V||W instanceof Date?W:F.text,C.add(G),Object.assign(J.s,{font:{size:Math.round(F.font.size*2)/2,bold:F.font.bold||void 0,italic:F.font.italic||void 0,underline:F.underline,strike:F.strike,color:F.color},align:F.align==="justify"?"left":F.align,valign:F.valign==="middle"?"center":F.valign,wrap:F.lines.length>1||void 0,fmt:V||W instanceof Date?oe:void 0}),(D.r2>D.r1||D.c2>D.c1)&&(f.merges.some(([B,K,N,Q])=>!(m+D.r2<B||m+D.r1>N||D.c2<K||D.c1>Q))||f.merges.push([m+D.r1,D.c1,m+D.r2,D.c2]))}m+=v.length-1}),Yt(u)}function Ft(e,t,n={}){var d,c,p,E,v,k;let{rows:r,root:o}=_e(e,t),s=ft(e,n.params),l=[...(c=(d=e.bands.detail)==null?void 0:d.elements.filter(S=>S.type==="field"||S.type==="text"))!=null?c:[]].sort((S,j)=>S.y-j.y||S.x-j.x),a=(E=(p=e.bands.columnHeader)==null?void 0:p.elements.filter(S=>S.type==="text"))!=null?E:[],u=S=>{if(S.name)return S.name;let j=S.x+S.w/2,C=a.find(R=>R.x<=j&&R.x+R.w>=j);return C?C.text.replace(/\{[^}]*\}/g,"").trim():S.type==="field"?S.expr:S.text},f=l.map(S=>({v:u(S),s:{font:{bold:!0},fill:"F2F4F7",border:{bottom:{style:"thin"}},align:"center"}})),m=[f],y={rows:r,allRows:r,params:s,data:o,vars:{now:new Date}};r.forEach((S,j)=>{let C={...y,row:S,vars:{...y.vars,rowNum:j+1,rowIndex:j+1}};m.push(l.map(R=>{if(R.type==="text")return{v:Ye(R.text,C)};let O=Ae(R.expr,C);return typeof O=="number"||O instanceof Date?{v:O,s:{fmt:Ko(R.format)}}:{v:O==null?"":je(O,R.format)}}))});let x=l.map((S,j)=>{var C;return Math.min(60,Math.max(6,String((C=f[j].v)!=null?C:"").length*2,S.w/Wo))});return Yt([{name:(k=(v=n.sheetName)!=null?v:e.name)!=null?k:"Data",rows:m,widths:x,freezeRows:1,autoFilter:!0}])}function Pn(e,t,n={}){var f,m;let{rows:r,root:o}=_e(e,t),s=ft(e,n.params),i=((m=(f=e.bands.detail)==null?void 0:f.elements.filter(y=>y.type==="field"))!=null?m:[]).sort((y,x)=>y.y-x.y||y.x-x.x),l=(y,x=!1)=>{let d=!x&&/^[=+\-@\t\r]/.test(y)?`'${y}`:y;return/[",\n\r]/.test(d)?`"${d.replace(/"/g,'""')}"`:d},a=[i.map(y=>{var x;return l((x=y.name)!=null?x:y.expr)}).join(",")],u={rows:r,allRows:r,params:s,data:o,vars:{now:new Date}};return r.forEach((y,x)=>{let d={...u,row:y,vars:{...u.vars,rowNum:x+1}};a.push(i.map(c=>{let p=Ae(c.expr,d);return typeof p=="number"?l(String(p),!0):l(je(p,c.format))}).join(","))}),"\uFEFF"+a.join(`\r
16
- `)}var Xe=e=>Math.round(e*7200/25.4),ba=25.4/72,_o=e=>e.replace(/[\u0000-\u0008\u000b\u000c\u000e-\u001f￾￿]/g,"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Mr=e=>{let t=En(e);return t&&t[3]>0?"#"+t.slice(0,3).map(n=>Math.round(n).toString(16).padStart(2,"0")).join("").toUpperCase():null},$r='xmlns:ha="http://www.hancom.co.kr/hwpml/2011/app" xmlns:hp="http://www.hancom.co.kr/hwpml/2011/paragraph" xmlns:hp10="http://www.hancom.co.kr/hwpml/2016/paragraph" xmlns:hs="http://www.hancom.co.kr/hwpml/2011/section" xmlns:hc="http://www.hancom.co.kr/hwpml/2011/core" xmlns:hh="http://www.hancom.co.kr/hwpml/2011/head" xmlns:hhs="http://www.hancom.co.kr/hwpml/2011/history" xmlns:hm="http://www.hancom.co.kr/hwpml/2011/master-page" xmlns:hpf="http://www.hancom.co.kr/schema/2011/hpf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf/" xmlns:ooxmlchart="http://www.hancom.co.kr/hwpml/2016/ooxmlchart" xmlns:hwpunitchar="http://www.hancom.co.kr/hwpml/2016/HwpUnitChar" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"',xt='<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>',Xo=["\uB9D1\uC740 \uACE0\uB515","\uB098\uB214\uACE0\uB515"],ya=e=>/nanum\s*gothic|나눔고딕/i.test(e)?1:0,Sr=["HANGUL","LATIN","HANJA","JAPANESE","OTHER","SYMBOL","USER"],wa=["0.1","0.12","0.15","0.2","0.25","0.3","0.4","0.5","0.6","0.7","1.0","1.5","2.0","3.0","4.0","5.0"],Jt=class{constructor(t){this.first=t;this.list=[];this.ids=new Map}id(t){let n=JSON.stringify(t),r=this.ids.get(n);return r===void 0&&(r=this.first+this.list.length,this.ids.set(n,r),this.list.push(t)),r}};function jn(e,t){var o;if(!t||t.width<=0)return`<hh:${e} type="NONE" width="0.1 mm" color="#000000"/>`;let n=t.style==="dashed"?"DASH":t.style==="dotted"?"DOT":t.style==="double"?"DOUBLE_SLIM":"SOLID",r=wa.reduce((s,i)=>Math.abs(+i-t.width)<Math.abs(+s-t.width)?i:s);return`<hh:${e} type="${n}" width="${r} mm" color="${(o=Mr(t.color))!=null?o:"#000000"}"/>`}function vr(e,t){let n=t.fill?`<hc:fillBrush><hc:winBrush faceColor="${t.fill}" hatchColor="#000000" alpha="0"/></hc:fillBrush>`:"";return`<hh:borderFill id="${e}" threeD="0" shadow="0" centerLine="NONE" breakCellSeparateLine="0"><hh:slash type="NONE" Crooked="0" isCounter="0"/><hh:backSlash type="NONE" Crooked="0" isCounter="0"/>`+jn("leftBorder",t.left)+jn("rightBorder",t.right)+jn("topBorder",t.top)+jn("bottomBorder",t.bottom)+`<hh:diagonal type="SOLID" width="0.1 mm" color="#000000"/>${n}</hh:borderFill>`}function xa(e,t){let n=r=>Sr.map(o=>`${o.toLowerCase()}="${r}"`).join(" ");return`<hh:charPr id="${e}" height="${t.size}" textColor="${t.color}" shadeColor="none" useFontSpace="0" useKerning="0" symMark="NONE" borderFillIDRef="2"><hh:fontRef ${n(t.font)}/><hh:ratio ${n(100)}/><hh:spacing ${n(t.spacing)}/><hh:relSz ${n(100)}/><hh:offset ${n(0)}/>`+(t.italic?"<hh:italic/>":"")+(t.bold?"<hh:bold/>":"")+`<hh:underline type="${t.underline?"BOTTOM":"NONE"}" shape="SOLID" color="${t.color}"/><hh:strikeout shape="${t.strike?"SOLID":"NONE"}" color="${t.color}"/><hh:outline type="NONE"/><hh:shadow type="NONE" color="#B2B2B2" offsetX="10" offsetY="10"/></hh:charPr>`}function ka(e,t){return`<hh:paraPr id="${e}" tabPrIDRef="0" condense="0" fontLineHeight="0" snapToGrid="0" suppressLineNumbers="0" checked="0"><hh:align horizontal="${t.align}" vertical="BASELINE"/><hh:heading type="NONE" idRef="0" level="0"/><hh:breakSetting breakLatinWord="KEEP_WORD" breakNonLatinWord="BREAK_WORD" widowOrphan="0" keepWithNext="0" keepLines="0" pageBreakBefore="0" lineWrap="SQUEEZE"/><hh:autoSpacing eAsianEng="0" eAsianNum="0"/><hh:margin><hc:intent value="0" unit="HWPUNIT"/><hc:left value="0" unit="HWPUNIT"/><hc:right value="0" unit="HWPUNIT"/><hc:prev value="0" unit="HWPUNIT"/><hc:next value="0" unit="HWPUNIT"/></hh:margin><hh:lineSpacing type="PERCENT" value="${t.spacing}" unit="HWPUNIT"/><hh:border borderFillIDRef="2" offsetLeft="0" offsetRight="0" offsetTop="0" offsetBottom="0" connect="0" ignoreMargin="0"/></hh:paraPr>`}function Vo(e,t){let n=[...new Set(e.map(o=>Math.round(o*10)/10))].sort((o,s)=>o-s),r=[];for(let o of n)(!r.length||o-r[r.length-1]>t)&&r.push(o);return r}var pt=(e,t)=>{let n=0;for(let r=1;r<e.length;r++)Math.abs(e[r]-t)<Math.abs(e[n]-t)&&(n=r);return n};function $a(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.length>24&&e[0]===137&&e[1]===80)return[t.getUint32(16),t.getUint32(20)];if(e.length>4&&e[0]===255&&e[1]===216)for(let n=2;n+9<e.length;){if(e[n]!==255)return null;let r=e[n+1],o=t.getUint16(n+2);if(r>=192&&r<=207&&r!==196&&r!==200&&r!==204)return[t.getUint16(n+7),t.getUint16(n+5)];n+=2+o}return null}function va(e){let t=/^data:image\/(png|jpe?g);base64,(.*)$/is.exec(e.trim());if(!t||typeof atob!="function")return null;try{let n=atob(t[2].replace(/\s+/g,"")),r=new Uint8Array(n.length);for(let o=0;o<n.length;o++)r[o]=n.charCodeAt(o);return{bytes:r,ext:t[1].toLowerCase()==="png"?"png":"jpg"}}catch{return null}}function Cn(e,t){var V;let n=nt(t.page),r=e.width||n.width,o=e.height||n.height,s=new Jt(0),i=new Jt(0),l=new Jt(3),a={top:void 0,right:void 0,bottom:void 0,left:void 0,fill:null};s.id({font:0,size:1e3,color:"#000000",bold:!1,italic:!1,underline:!1,strike:!1,spacing:0});let u=s.id({font:0,size:100,color:"#000000",bold:!1,italic:!1,underline:!1,strike:!1,spacing:0});i.id({align:"LEFT",spacing:160});let f=i.id({align:"LEFT",spacing:100}),m=l.id(a),y=[],x=new Map,d=1e3,c=0,p=[],E=()=>`<hp:p id="${c++}" paraPrIDRef="${f}" styleIDRef="0" pageBreak="0" columnBreak="0" merged="0"><hp:run charPrIDRef="${u}"/></hp:p>`,v=I=>I.flatMap(B=>{var ye,ve,ee;let K=B.font.size*ba,N=B.lines.length>1?(B.lines[B.lines.length-1].y-B.lines[0].y)/(B.lines.length-1):K*1.25,Q=s.id({font:ya(B.font.family),size:Math.max(100,Math.round(B.font.size*100)),color:(ye=Mr(B.color))!=null?ye:"#000000",bold:B.font.bold,italic:B.font.italic,underline:!!B.underline,strike:!!B.strike,spacing:Math.max(-50,Math.min(50,Math.round(((ve=B.letterSpacing)!=null?ve:0)/K*100)))}),we=i.id({align:(ee={left:"LEFT",center:"CENTER",right:"RIGHT",justify:"JUSTIFY"}[B.align])!=null?ee:"LEFT",spacing:Math.max(80,Math.min(300,Math.round(N/K*100)))});return B.lines.filter((Z,be)=>be===0||Z.y<=B.y+B.h+.5).map(Z=>`<hp:p id="${c++}" paraPrIDRef="${we}" styleIDRef="0" pageBreak="0" columnBreak="0" merged="0"><hp:run charPrIDRef="${Q}"><hp:t>${_o(Z.text.replace(/\t/g," "))}</hp:t></hp:run></hp:p>`)}),k=(I,B)=>{let K=x.get(I.src);if(!K){let _=va(I.src),P=_&&$a(_.bytes);if(!_||!P||!P[0]||!P[1])return"";K={id:`image${y.length+1}`,px:P},y.push({name:`${K.id}.${_.ext}`,bytes:_.bytes}),x.set(I.src,K)}let{x:N,y:Q,w:we,h:ke}=I;if(I.fit==="contain"){let _=Math.min(we/K.px[0],ke/K.px[1]),P=K.px[0]*_,ne=K.px[1]*_;N+=(we-P)/2,Q+=(ke-ne)/2,we=P,ke=ne}let ye=Xe(we),ve=Xe(ke),ee=K.px[0]*75,Z=K.px[1]*75,be=d++,Me=(_,P)=>`e1="${_}" e2="0" e3="0" e4="0" e5="${P}" e6="0"`;return`<hp:pic id="${be}" zOrder="${B}" numberingType="PICTURE" textWrap="IN_FRONT_OF_TEXT" textFlow="BOTH_SIDES" lock="0" dropcapstyle="None" href="" groupLevel="0" instid="${be}" reverse="0"><hp:offset x="0" y="0"/><hp:orgSz width="${ye}" height="${ve}"/><hp:curSz width="${ye}" height="${ve}"/><hp:flip horizontal="0" vertical="0"/><hp:rotationInfo angle="0" centerX="${ye>>1}" centerY="${ve>>1}" rotateimage="1"/><hp:renderingInfo><hc:transMatrix ${Me(1,1)}/><hc:scaMatrix ${Me(1,1)}/><hc:rotMatrix ${Me(1,1)}/></hp:renderingInfo><hp:imgRect><hc:pt0 x="0" y="0"/><hc:pt1 x="${ye}" y="0"/><hc:pt2 x="${ye}" y="${ve}"/><hc:pt3 x="0" y="${ve}"/></hp:imgRect><hp:imgClip left="0" right="${ee}" top="0" bottom="${Z}"/><hp:inMargin left="0" right="0" top="0" bottom="0"/><hp:imgDim dimwidth="${ee}" dimheight="${Z}"/><hc:img binaryItemIDRef="${K.id}" bright="0" contrast="0" effect="REAL_PIC" alpha="0"/><hp:sz width="${ye}" widthRelTo="ABSOLUTE" height="${ve}" heightRelTo="ABSOLUTE" protect="0"/><hp:pos treatAsChar="0" affectLSpacing="0" flowWithText="0" allowOverlap="1" holdAnchorAndSO="0" vertRelTo="PAPER" horzRelTo="PAPER" vertAlign="TOP" horzAlign="LEFT" vertOffset="${Xe(Q)}" horzOffset="${Xe(N)}"/><hp:outMargin left="0" right="0" top="0" bottom="0"/></hp:pic>`},S=I=>{var ae,$e,T,H,pe,xe,h,M,w,g,A,L;let B=[],K=[];for(let b of I)b.kind==="text"||b.kind==="box"&&(b.fill||b.border||b.stroke)?(B.push(b.x,b.x+b.w),K.push(b.y,b.y+b.h)):b.kind==="line"&&Math.abs(b.y1-b.y2)<.01?(K.push(b.y1),B.push(b.x1,b.x2)):b.kind==="line"&&Math.abs(b.x1-b.x2)<.01&&(B.push(b.x1),K.push(b.y1,b.y2));let N=Vo(B,1.2),Q=Vo(K,.8);if(N.length<2||Q.length<2)return"";let we=I.filter(b=>b.kind==="text"&&!b.rotate&&b.text.trim()!==""),ke=[];for(let b=0;b<200;b++){let $=Q.length-1,q=N.length-1,Y=Array.from({length:$},()=>Array(q).fill(null));ke=[];for(let se of we){let me=Math.min(pt(N,se.x),q-1),le=Math.min(pt(Q,se.y),$-1),Se=Math.max(me+1,pt(N,se.x+se.w)),Pe=Math.max(le+1,pt(Q,se.y+se.h)),mt=Y[le][me];if(mt){mt.texts.push(se);continue}let St=!0;for(let Ge=le;Ge<Pe&&St;Ge++)for(let Ie=me;Ie<Se;Ie++)if(Y[Ge][Ie]){St=!1;break}let Oe=St?{r:le,c:me,rs:Pe-le,cs:Se-me,texts:[se]}:{r:le,c:me,rs:1,cs:1,texts:[se]};for(let Ge=Oe.r;Ge<Oe.r+Oe.rs;Ge++)for(let Ie=Oe.c;Ie<Oe.c+Oe.cs;Ie++)Y[Ge][Ie]=Oe;ke.push(Oe)}for(let se=0;se<$;se++)for(let me=0;me<q;me++)if(!Y[se][me]){let le={r:se,c:me,rs:1,cs:1,texts:[]};Y[se][me]=le,ke.push(le)}let he=Q.slice(1,-1).findIndex((se,me)=>!ke.some(le=>le.r===me+1)),ie=N.slice(1,-1).findIndex((se,me)=>!ke.some(le=>le.c===me+1));if(he<0&&ie<0)break;he>=0&&(Q=Q.filter((se,me)=>me!==he+1)),ie>=0&&(N=N.filter((se,me)=>me!==ie+1))}let ye=Q.length-1,ve=N.length-1,ee=Array.from({length:ye+1},()=>Array(ve).fill(void 0)),Z=Array.from({length:ye},()=>Array(ve+1).fill(void 0)),be=Array.from({length:ye},()=>Array(ve).fill(null)),Me=(b,$,q)=>{let Y=pt(q,b);return[Y,Math.max(Y,pt(q,$))]};for(let b of I)if(b.kind==="box"){let[$,q]=Me(b.x,b.x+b.w,N),[Y,he]=Me(b.y,b.y+b.h,Q);if(q===$||he===Y)continue;let ie=Mr(b.fill);if(ie&&((ae=b.opacity)!=null?ae:1)>.05)for(let le=Y;le<he;le++)for(let Se=$;Se<q;Se++)be[le][Se]=ie;let se=b.stroke&&b.stroke.width>0?{width:b.stroke.width,style:($e=b.stroke.dash)!=null?$e:"solid",color:b.stroke.color}:void 0,me={top:(H=(T=b.border)==null?void 0:T.top)!=null?H:se,bottom:(xe=(pe=b.border)==null?void 0:pe.bottom)!=null?xe:se,left:(M=(h=b.border)==null?void 0:h.left)!=null?M:se,right:(g=(w=b.border)==null?void 0:w.right)!=null?g:se};for(let le=$;le<q;le++)me.top&&(ee[Y][le]=me.top),me.bottom&&(ee[he][le]=me.bottom);for(let le=Y;le<he;le++)me.left&&(Z[le][$]=me.left),me.right&&(Z[le][q]=me.right)}else if(b.kind==="line"){let $={width:b.width,style:(A=b.dash)!=null?A:"solid",color:b.color};if(Math.abs(b.y1-b.y2)<.01){let q=pt(Q,b.y1),[Y,he]=Me(Math.min(b.x1,b.x2),Math.max(b.x1,b.x2),N);for(let ie=Y;ie<he;ie++)ee[q][ie]=$}else if(Math.abs(b.x1-b.x2)<.01){let q=pt(N,b.x1),[Y,he]=Me(Math.min(b.y1,b.y2),Math.max(b.y1,b.y2),Q);for(let ie=Y;ie<he;ie++)Z[ie][q]=$}}let _=N.map(Xe),P=Q.map(Xe),ne=b=>b.find($=>$!==void 0),fe={top:"TOP",middle:"CENTER",bottom:"BOTTOM"},ge=Array.from({length:ye},()=>[]);for(let b of ke.sort(($,q)=>$.r-q.r||$.c-q.c)){let $=l.id({top:ne(ee[b.r].slice(b.c,b.c+b.cs)),bottom:ne(ee[b.r+b.rs].slice(b.c,b.c+b.cs)),left:ne(Z.slice(b.r,b.r+b.rs).map(le=>le[b.c])),right:ne(Z.slice(b.r,b.r+b.rs).map(le=>le[b.c+b.cs])),fill:be[b.r][b.c]}),q=_[b.c+b.cs]-_[b.c],Y=P[b.r+b.rs]-P[b.r],he=0,ie=0,se=b.texts[0];if(se!=null&&se.lines.length){let le=N[b.c],Se=N[b.c+b.cs],Pe=Math.min(...se.lines.map(Ie=>Ie.x)),mt=Math.max(...se.lines.map(Ie=>Ie.x+Ie.width)),St=Ie=>Math.max(0,Math.min(5,Ie)),Oe=St(Pe-le),Ge=St(Se-mt);se.align==="right"?(ie=Ge,he=Math.min(Oe,.5)):se.align==="center"?he=ie=Math.min(Oe,Ge,1):(he=Oe,ie=Math.min(Ge,.5))}let me=b.texts.length?v(b.texts).join(""):E();b.texts.length&&p.push(b.texts.map(le=>le.text).join(" ")),ge[b.r].push(`<hp:tc name="" header="0" hasMargin="1" protect="0" editable="0" dirty="0" borderFillIDRef="${$}"><hp:subList id="" textDirection="HORIZONTAL" lineWrap="BREAK" vertAlign="${se?(L=fe[se.valign])!=null?L:"TOP":"CENTER"}" linkListIDRef="0" linkListNextIDRef="0" textWidth="0" textHeight="0" hasTextRef="0" hasNumRef="0">${me}</hp:subList><hp:cellAddr colAddr="${b.c}" rowAddr="${b.r}"/><hp:cellSpan colSpan="${b.cs}" rowSpan="${b.rs}"/><hp:cellSz width="${q}" height="${Y}"/><hp:cellMargin left="${Xe(he)}" right="${Xe(ie)}" top="0" bottom="0"/></hp:tc>`)}let de=_[ve]-_[0],ce=P[ye]-P[0];return`<hp:tbl id="${d++}" zOrder="0" numberingType="TABLE" textWrap="IN_FRONT_OF_TEXT" textFlow="BOTH_SIDES" lock="0" dropcapstyle="None" pageBreak="NONE" repeatHeader="0" rowCnt="${ye}" colCnt="${ve}" cellSpacing="0" borderFillIDRef="${m}" noAdjust="1"><hp:sz width="${de}" widthRelTo="ABSOLUTE" height="${ce}" heightRelTo="ABSOLUTE" protect="0"/><hp:pos treatAsChar="0" affectLSpacing="0" flowWithText="0" allowOverlap="1" holdAnchorAndSO="0" vertRelTo="PAPER" horzRelTo="PAPER" vertAlign="TOP" horzAlign="LEFT" vertOffset="${P[0]}" horzOffset="${_[0]}"/><hp:outMargin left="0" right="0" top="0" bottom="0"/><hp:inMargin left="0" right="0" top="0" bottom="0"/>`+ge.map(b=>`<hp:tr>${b.join("")}</hp:tr>`).join("")+"</hp:tbl>"},[j,C,R,O]=n.margins.map(Xe),ue=`<hp:secPr id="" textDirection="HORIZONTAL" spaceColumns="1134" tabStop="8000" tabStopVal="4000" tabStopUnit="HWPUNIT" outlineShapeIDRef="1" memoShapeIDRef="0" textVerticalWidthHead="0" masterPageCnt="0"><hp:grid lineGrid="0" charGrid="0" wonggojiFormat="0"/><hp:startNum pageStartsOn="BOTH" page="0" pic="0" tbl="0" equation="0"/><hp:visibility hideFirstHeader="0" hideFirstFooter="0" hideFirstMasterPage="0" border="SHOW_ALL" fill="SHOW_ALL" hideFirstPageNum="0" hideFirstEmptyLine="0" showLineNumber="0"/><hp:lineNumberShape restartType="0" countBy="0" distance="0" startNumber="0"/><hp:pagePr landscape="${r>o?"NARROWLY":"WIDELY"}" width="${Xe(Math.min(r,o))}" height="${Xe(Math.max(r,o))}" gutterType="LEFT_ONLY"><hp:margin header="0" footer="0" gutter="0" left="${O}" right="${C}" top="${j}" bottom="${R}"/></hp:pagePr><hp:footNotePr><hp:autoNumFormat type="DIGIT" userChar="" prefixChar="" suffixChar=")" supscript="0"/><hp:noteLine length="-1" type="SOLID" width="0.12 mm" color="#000000"/><hp:noteSpacing betweenNotes="283" belowLine="567" aboveLine="850"/><hp:numbering type="CONTINUOUS" newNum="1"/><hp:placement place="EACH_COLUMN" beneathText="0"/></hp:footNotePr><hp:endNotePr><hp:autoNumFormat type="DIGIT" userChar="" prefixChar="" suffixChar=")" supscript="0"/><hp:noteLine length="14692344" type="SOLID" width="0.12 mm" color="#000000"/><hp:noteSpacing betweenNotes="0" belowLine="567" aboveLine="850"/><hp:numbering type="CONTINUOUS" newNum="1"/><hp:placement place="END_OF_DOCUMENT" beneathText="0"/></hp:endNotePr>`+["BOTH","EVEN","ODD"].map(I=>`<hp:pageBorderFill type="${I}" borderFillIDRef="1" textBorder="PAPER" headerInside="0" footerInside="0" fillArea="PAPER"><hp:offset left="1417" right="1417" top="1417" bottom="1417"/></hp:pageBorderFill>`).join("")+'</hp:secPr><hp:ctrl><hp:colPr id="" type="NEWSPAPER" layout="LEFT" colCount="1" sameSz="1" sameGap="0"/></hp:ctrl>',z=(e.pages.length?e.pages:[{items:[]}]).map((I,B)=>{let K=I.items.filter(Q=>{var we;return((we=Q.source)==null?void 0:we.band)!=="watermark"}),N=S(K)+K.filter(Q=>Q.kind==="image"&&!Q.emboss).map((Q,we)=>k(Q,we+1)).join("");return`<hp:p id="${c++}" paraPrIDRef="${f}" styleIDRef="0" pageBreak="${B>0?1:0}" columnBreak="0" merged="0"><hp:run charPrIDRef="${u}">${B===0?ue:""}${N}<hp:t/></hp:run></hp:p>`}).join(""),U=`${xt}<hs:sec ${$r}>${z}</hs:sec>`,F=Sr.map(I=>`<hh:fontface lang="${I}" fontCnt="${Xo.length}">`+Xo.map((B,K)=>`<hh:font id="${K}" face="${B}" type="TTF" isEmbedded="0"><hh:typeInfo familyType="FCAT_GOTHIC" weight="6" proportion="4" contrast="0" strokeVariation="1" armStyle="1" letterform="1" midline="1" xHeight="1"/></hh:font>`).join("")+"</hh:fontface>").join(""),D=vr(1,a)+vr(2,a).replace("</hh:borderFill>",'<hc:fillBrush><hc:winBrush faceColor="none" hatchColor="#FF000000" alpha="0"/></hc:fillBrush></hh:borderFill>'),G=`${xt}<hh:head ${$r} version="1.4" secCnt="1"><hh:beginNum page="1" footnote="1" endnote="1" pic="1" tbl="1" equation="1"/><hh:refList><hh:fontfaces itemCnt="${Sr.length}">${F}</hh:fontfaces><hh:borderFills itemCnt="${l.list.length+2}">${D}${l.list.map((I,B)=>vr(B+3,I)).join("")}</hh:borderFills><hh:charProperties itemCnt="${s.list.length}">${s.list.map((I,B)=>xa(B,I)).join("")}</hh:charProperties><hh:tabProperties itemCnt="1"><hh:tabPr id="0" autoTabLeft="0" autoTabRight="0"/></hh:tabProperties><hh:numberings itemCnt="1"><hh:numbering id="1" start="0">`+["^1.","^2.","^3)","^4)","(^5)","(^6)","^7"].map((I,B)=>`<hh:paraHead start="1" level="${B+1}" align="LEFT" useInstWidth="1" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="${B===6?"CIRCLED_DIGIT":B%2?"HANGUL_SYLLABLE":"DIGIT"}" charPrIDRef="4294967295" checkable="${B===6?1:0}">${I}</hh:paraHead>`).join("")+`</hh:numbering></hh:numberings><hh:paraProperties itemCnt="${i.list.length}">${i.list.map((I,B)=>ka(B,I)).join("")}</hh:paraProperties><hh:styles itemCnt="1"><hh:style id="0" type="PARA" name="\uBC14\uD0D5\uAE00" engName="Normal" paraPrIDRef="0" charPrIDRef="0" nextStyleIDRef="0" langID="1042" lockForm="0"/></hh:styles></hh:refList><hh:compatibleDocument targetProgram="HWP201X"><hh:layoutCompatibility/></hh:compatibleDocument><hh:docOption><hh:linkinfo path="" pageInherit="0" footnoteInherit="0"/></hh:docOption><hh:trackchageConfig flags="56"/></hh:head>`,J=new Date().toISOString().replace(/\.\d+Z$/,"Z"),W=_o((V=t.name)!=null?V:""),oe=`${xt}<opf:package ${$r} version="" unique-identifier="" id=""><opf:metadata><opf:title>${W}</opf:title><opf:language>ko</opf:language><opf:meta name="creator" content="text">FreeReport</opf:meta><opf:meta name="CreatedDate" content="text">${J}</opf:meta><opf:meta name="ModifiedDate" content="text">${J}</opf:meta></opf:metadata><opf:manifest><opf:item id="header" href="Contents/header.xml" media-type="application/xml"/>`+y.map(I=>`<opf:item id="${I.name.replace(/\..*$/,"")}" href="BinData/${I.name}" media-type="image/${I.name.endsWith("png")?"png":"jpg"}" isEmbeded="1"/>`).join("")+'<opf:item id="section0" href="Contents/section0.xml" media-type="application/xml"/><opf:item id="settings" href="settings.xml" media-type="application/xml"/></opf:manifest><opf:spine><opf:itemref idref="header" linear="yes"/><opf:itemref idref="section0" linear="yes"/></opf:spine></opf:package>';return Rn([{name:"mimetype",data:"application/hwp+zip"},{name:"version.xml",data:`${xt}<hv:HCFVersion xmlns:hv="http://www.hancom.co.kr/hwpml/2011/version" tagetApplication="WORDPROCESSOR" major="5" minor="0" micro="5" buildNumber="0" os="1" xmlVersion="1.4" application="FreeReport" appVersion="1.0"/>`},{name:"Contents/header.xml",data:G},{name:"Contents/section0.xml",data:U},{name:"Preview/PrvText.txt",data:p.join(`\r
17
- `).slice(0,1024)},{name:"settings.xml",data:`${xt}<ha:HWPApplicationSetting xmlns:ha="http://www.hancom.co.kr/hwpml/2011/app" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"><ha:CaretPosition listIDRef="0" paraIDRef="0" pos="0"/></ha:HWPApplicationSetting>`},...y.map(I=>({name:`BinData/${I.name}`,data:I.bytes})),{name:"META-INF/container.xml",data:`${xt}<ocf:container xmlns:ocf="urn:oasis:names:tc:opendocument:xmlns:container" xmlns:hpf="http://www.hancom.co.kr/schema/2011/hpf"><ocf:rootfiles><ocf:rootfile full-path="Contents/content.hpf" media-type="application/hwpml-package+xml"/><ocf:rootfile full-path="Preview/PrvText.txt" media-type="text/plain"/></ocf:rootfiles></ocf:container>`},{name:"Contents/content.hpf",data:oe},{name:"META-INF/manifest.xml",data:`${xt}<odf:manifest xmlns:odf="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"/>`}])}var Er=(e,t)=>String.fromCharCode(e[t],e[t+1],e[t+2],e[t+3]);function Zt(e){if(e.length<12)throw new Error("FreeReport PDF: font data is too short to be a TrueType font");let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=Er(e,0);if(n==="OTTO")throw new Error("FreeReport PDF: CFF-based OpenType (.otf) fonts are not supported; a TrueType .ttf font is required");if(n==="wOFF"||n==="wOF2")throw new Error("FreeReport PDF: WOFF/WOFF2 fonts are not supported; a TrueType .ttf font is required");if(n==="ttcf")throw new Error("FreeReport PDF: TrueType collections (.ttc) are not supported; a single .ttf font is required");if(t.getUint32(0)!==65536&&n!=="true")throw new Error("FreeReport PDF: unrecognised font format; a TrueType .ttf font is required");let r=new Map,o=t.getUint16(4);for(let R=0;R<o;R++){let O=12+R*16;r.set(Er(e,O),{offset:t.getUint32(O+8),length:t.getUint32(O+12)})}let s=R=>{let O=r.get(R);if(!O)throw new Error(`FreeReport PDF: font has no '${R}' table`+(R==="glyf"?" (only TrueType outlines are supported)":""));return O},i=s("head"),l=s("hhea"),a=s("maxp"),u=s("hmtx");s("loca"),s("glyf");let f=t.getUint16(i.offset+18)||1e3,m=[t.getInt16(i.offset+36),t.getInt16(i.offset+38),t.getInt16(i.offset+40),t.getInt16(i.offset+42)],y=t.getUint16(a.offset+4),x=t.getInt16(l.offset+4),d=t.getInt16(l.offset+6),c=Math.max(1,t.getUint16(l.offset+34)),p=Math.round(x*.7),E=r.get("OS/2");E&&E.length>=78&&(x||(x=t.getInt16(E.offset+68)),d||(d=t.getInt16(E.offset+70)),t.getUint16(E.offset)>=2&&E.length>=90&&(p=t.getInt16(E.offset+88)||p));let v=0,k=!1,S=r.get("post");S&&S.length>=16&&(v=t.getInt32(S.offset+4)/65536,k=t.getUint32(S.offset+12)!==0);let j=32|(v!==0?64:0)|(k?1:0),C=R=>{(R<0||R>=y)&&(R=0);let O=R<c?R:c-1;return t.getUint16(u.offset+O*4)};return{data:e,unitsPerEm:f,ascent:x,descent:d,capHeight:p,bbox:m,italicAngle:v,numGlyphs:y,flags:j,postscriptName:Ma(e,t,r.get("name")),glyphId:Sa(t,r.get("cmap"),y),advance:C}}function Ma(e,t,n){let r="FreeReportFont";if(!n)return r;let o=t.getUint16(n.offset+2),s=n.offset+t.getUint16(n.offset+4),i=null;for(let a=0;a<o;a++){let u=n.offset+6+a*12,f=t.getUint16(u);if(t.getUint16(u+6)!==6)continue;let y=t.getUint16(u+8),x=s+t.getUint16(u+10),d="";if(f===3||f===0)for(let c=0;c+1<y;c+=2)d+=String.fromCharCode(t.getUint16(x+c));else for(let c=0;c<y;c++)d+=String.fromCharCode(e[x+c]);if(i=d,f===3)break}return(i||"").replace(/[^\x21-\x7e]|[()<>[\]{}/%#]/g,"")||r}function Sa(e,t,n){if(!t)return()=>0;let r=e.getUint16(t.offset+2),o=-1,s=99;for(let c=0;c<r;c++){let p=t.offset+4+c*8,E=e.getUint16(p),v=e.getUint16(p+2),k=t.offset+e.getUint32(p+4),S=e.getUint16(k);if(S!==4&&S!==12)continue;let j=E===3&&v===10?0:E===3&&v===1?1:E===0?2+(S===12?0:1):99;j<s&&(s=j,o=k)}if(o<0)return()=>0;let i=new Map,l=c=>c>0&&c<n?c:0;if(e.getUint16(o)===12){let c=e.getUint32(o+12),p=E=>{let v=0,k=c-1;for(;v<=k;){let S=v+k>>1,j=o+16+S*12,C=e.getUint32(j),R=e.getUint32(j+4);if(E<C)k=S-1;else if(E>R)v=S+1;else return l(e.getUint32(j+8)+E-C)}return 0};return E=>{let v=i.get(E);return v===void 0&&i.set(E,v=p(E)),v}}let a=e.getUint16(o+6),u=a/2,f=o+14,m=f+a+2,y=m+a,x=y+a,d=c=>{if(c>65535)return 0;let p=0,E=u-1;for(;p<=E;){let v=p+E>>1,k=e.getUint16(f+v*2),S=e.getUint16(m+v*2);if(c>k)p=v+1;else if(c<S)E=v-1;else{let j=e.getInt16(y+v*2),C=e.getUint16(x+v*2);if(C===0)return l(c+j&65535);let R=x+v*2+C+(c-S)*2,O=e.getUint16(R);return O===0?0:l(O+j&65535)}}return 0};return c=>{let p=i.get(c);return p===void 0&&i.set(c,p=d(c)),p}}var Ea=["OS/2","cvt ","fpgm","glyf","head","hhea","hmtx","loca","maxp","prep"];function Ta(e){let t=e.data,n=new DataView(t.buffer,t.byteOffset,t.byteLength),r=new Map;for(let o=0,s=n.getUint16(4);o<s;o++){let i=12+o*16;r.set(Er(t,i),{offset:n.getUint32(i+8),length:n.getUint32(i+12)})}return r}function Yo(e,t,n){let r=0,o=t+n;for(let s=t;s<o;s+=4){let i=(e[s]<<24|(s+1<o?e[s+1]:0)<<16|(s+2<o?e[s+2]:0)<<8|(s+3<o?e[s+3]:0))>>>0;r=r+i>>>0}return r}function Jo(e,t){let n=e.data,r=new DataView(n.buffer,n.byteOffset,n.byteLength),o=Ta(e),s=o.get("head"),i=o.get("loca"),l=o.get("glyf"),a=r.getInt16(s.offset+50)===1,u=e.numGlyphs,f=D=>a?r.getUint32(i.offset+D*4):r.getUint16(i.offset+D*2)*2,m=D=>{let G=f(D),J=f(D+1);return J>G?[l.offset+G,J-G]:[0,0]},y=new Set([0]),x=[...t].filter(D=>D>=0&&D<u);for(;x.length;){let D=x.pop();if(y.has(D)&&D!==0)continue;y.add(D);let[G,J]=m(D);if(J<10||r.getInt16(G)>=0)continue;let W=G+10;for(;;){let oe=r.getUint16(W),V=r.getUint16(W+2);if(V<u&&!y.has(V)&&x.push(V),W+=4+(oe&1?4:2),oe&8?W+=2:oe&64?W+=4:oe&128&&(W+=8),!(oe&32))break}}let d=0;for(let D of y){let G=m(D)[1];d+=G+3&-4}let c=new Uint8Array(d),p=new Uint8Array((u+1)*4),E=new DataView(p.buffer),v=0;for(let D=0;D<u;D++){if(E.setUint32(D*4,v),!y.has(D))continue;let[G,J]=m(D);c.set(n.subarray(G,G+J),v),v+=J+3&-4}E.setUint32(u*4,v);let k=n.slice(s.offset,s.offset+s.length),S=new DataView(k.buffer);S.setUint32(8,0),S.setInt16(50,1);let j=[];for(let D of Ea)if(D==="glyf")j.push({tag:D,data:c});else if(D==="loca")j.push({tag:D,data:p});else if(D==="head")j.push({tag:D,data:k});else{let G=o.get(D);G&&j.push({tag:D,data:n.subarray(G.offset,G.offset+G.length)})}let C=j.length,R=0;for(;1<<R+1<=C;)R++;let O=(1<<R)*16,ue=12+C*16;for(let D of j)ue+=D.data.length+3&-4;let te=new Uint8Array(ue),z=new DataView(te.buffer);z.setUint32(0,65536),z.setUint16(4,C),z.setUint16(6,O),z.setUint16(8,R),z.setUint16(10,C*16-O);let U=12+C*16,F=0;return j.forEach((D,G)=>{let J=12+G*16;for(let W=0;W<4;W++)te[J+W]=D.tag.charCodeAt(W);te.set(D.data,U),z.setUint32(J+4,Yo(te,U,D.data.length)),z.setUint32(J+8,U),z.setUint32(J+12,D.data.length),D.tag==="head"&&(F=U),U+=D.data.length+3&-4}),z.setUint32(F+8,2981146554-Yo(te,0,te.length)>>>0),te}function Dn(){let e=globalThis.crypto;if(!e||!e.subtle||!e.getRandomValues)throw new Error("FreeReport PDF: encryption needs WebCrypto (crypto.subtle)");return e}function Ze(e){let t=new Uint8Array(e);return Dn().getRandomValues(t),t}var Qt=(...e)=>{let t=0;for(let o of e)t+=o.length;let n=new Uint8Array(t),r=0;for(let o of e)n.set(o,r),r+=o.length;return n},Ln=e=>e;async function Zo(e,t){return new Uint8Array(await Dn().subtle.digest(e,Ln(t)))}var Qo=new WeakMap;function Ra(e){let t=Qo.get(e);return t||Qo.set(e,t=Dn().subtle.importKey("raw",Ln(e),{name:"AES-CBC"},!1,["encrypt"])),t}async function Rr(e,t,n){return new Uint8Array(await Dn().subtle.encrypt({name:"AES-CBC",iv:Ln(t)},await Ra(e),Ln(n)))}async function Tr(e,t,n){return(await Rr(e,t,n)).subarray(0,n.length)}async function Fn(e,t){let n=Ze(16);return Qt(n,await Rr(e,n,t))}function es(e){return new TextEncoder().encode(e.normalize("NFKC")).subarray(0,127)}async function An(e,t,n){let r=await Zo("SHA-256",Qt(e,t,n));for(let o=0;;o++){let s=Qt(e,r,n),i=new Uint8Array(s.length*64);for(let f=0;f<64;f++)i.set(s,f*s.length);let l=await Tr(r.subarray(0,16),r.subarray(16,32),i),a=0;for(let f=0;f<16;f++)a+=l[f];let u=a%3;if(r=await Zo(u===0?"SHA-256":u===1?"SHA-384":"SHA-512",l),o>=63&&l[l.length-1]<=o+1-32)break}return r.subarray(0,32)}function Pa(e={}){let t=r=>r!==!1,n=4294963392;return t(e.print)&&(n|=4),t(e.modify)&&(n|=8),t(e.copy)&&(n|=16),t(e.annotate)&&(n|=32),t(e.fillForms)&&(n|=256),t(e.extract)&&(n|=512),t(e.assemble)&&(n|=1024),t(e.printHighQuality)&&(n|=2048),n|0}var kt=e=>{let t="";for(let n of e)t+=n.toString(16).padStart(2,"0");return t};async function ns(e){var E;let t=Ze(32),n=new Uint8Array(16),r=es((E=e.userPassword)!=null?E:""),o=e.ownerPassword?es(e.ownerPassword):Ze(32).map(v=>33+v%94),s=Ze(8),i=Ze(8),l=Qt(await An(r,s,new Uint8Array(0)),s,i),a=await Tr(await An(r,i,new Uint8Array(0)),n,t),u=Ze(8),f=Ze(8),m=Qt(await An(o,u,l),u,f),y=await Tr(await An(o,f,l),n,t),x=Pa(e.permissions),d=new Uint8Array(16);d[0]=x&255,d[1]=x>>>8&255,d[2]=x>>>16&255,d[3]=x>>>24&255,d.fill(255,4,8),d.set([84,97,100,98],8),d.set(Ze(4),12);let c=(await Rr(t,n,d)).subarray(0,16),p=`<< /Filter /Standard /V 5 /R 6 /Length 256 /CF << /StdCF << /AuthEvent /DocOpen /CFM /AESV3 /Length 32 >> >> /StmF /StdCF /StrF /StdCF /O <${kt(m)}> /U <${kt(l)}> /OE <${kt(y)}> /UE <${kt(a)}> /P ${x} /Perms <${kt(c)}> /EncryptMetadata true >>`;return{fileKey:t,dict:p,p:x}}var ts={n:10,r:13,t:9,b:8,f:12};function ja(e){let t=[];for(let n=0;n<e.length;n++){if(e[n]!=="\\"){t.push(e.charCodeAt(n)&255);continue}let o=e[++n];if(o===void 0)break;if(o in ts)t.push(ts[o]);else if(o>="0"&&o<="7"){let s=o;for(;s.length<3&&e[n+1]>="0"&&e[n+1]<="7";)s+=e[++n];t.push(parseInt(s,8)&255)}else o==="\r"?e[n+1]===`
11
+ `)}function jt(e){return lr(new TextEncoder().encode(cr(e)))}var da="212222 222122 222221 121223 121322 131222 122213 122312 132212 221213 221312 231212 112232 122132 122231 113222 123122 123221 223211 221132 221231 213212 223112 312131 311222 321122 321221 312212 322112 322211 212123 212321 232121 111323 131123 131321 112313 132113 132311 211313 231113 231311 112133 112331 132131 113123 113321 133121 313121 211331 231131 213113 213311 213131 311123 311321 331121 312113 312311 332111 314111 221411 431111 111224 111422 121124 121421 141122 141221 112214 112412 122114 122411 142112 142211 241211 221114 413111 241112 134111 111242 121142 121241 114212 124112 124211 411212 421112 421211 212141 214121 412121 111143 111341 131141 114113 114311 411113 411311 113141 114131 311141 411131 211412 211214 211232 2331112".split(" "),pa=103,go=104,ma=105,ha=106,ga=99,ba=100,ya=101;function fr(e,t){let n=0;for(;t+n<e.length&&e.charCodeAt(t+n)>=48&&e.charCodeAt(t+n)<=57;)n++;return n}function bo(e,t){for(;t<e.length;t++){let n=e.charCodeAt(t);if(n<32)return"A";if(n>=96)return"B"}return"B"}function kn(e){for(let l=0;l<e.length;l++)if(e.charCodeAt(l)>127)throw new Error(`Code128: unsupported character at ${l}`);let t=[],n=null,r=l=>{n!==l&&(n===null?t.push(l==="A"?pa:l==="B"?go:ma):t.push(l==="A"?ya:l==="B"?ba:ga),n=l)},o=0;for(;o<e.length;){let l=fr(e,o);if(l>=4){l%2&&((n===null||n==="C")&&r(bo(e,o)),t.push(e.charCodeAt(o++)-32)),r("C");let u=o+(l-l%2);for(;o<u;o+=2)t.push(+e.substr(o,2));continue}let i=e.charCodeAt(o);n===null||n==="C"?r(bo(e,o)):i<32&&n==="B"?r("A"):i>=96&&n==="A"&&r("B"),t.push(n==="A"&&i<32?i+64:i-32),o++}n===null&&t.push(go);let s=t[0];for(let l=1;l<t.length;l++)s+=t[l]*l;t.push(s%103,ha);let a=[];for(let l of t)for(let i of da[l])a.push(+i);return a}var yo=["0001101","0011001","0010011","0111101","0100011","0110001","0101111","0111011","0110111","0001011"],wa=["LLLLLL","LLGLGG","LLGGLG","LLGGGL","LGLLGG","LGGLLG","LGGGLL","LGLGLL","LGLGGL","LGGLGL"],wo=e=>e.replace(/./g,t=>t==="0"?"1":"0");function xa(e){if(!/^\d{12}$/.test(e))throw new Error("EAN-13: expected 12 digits");let t=0;for(let n=0;n<12;n++)t+=+e[n]*(n%2?3:1);return(10-t%10)%10}function $n(e){if(!/^\d{12,13}$/.test(e))throw new Error("EAN-13: expected 12 or 13 digits");let t=xa(e.slice(0,12));if(e.length===13&&+e[12]!==t)throw new Error("EAN-13: invalid check digit");let n=e.slice(0,12)+t,r="101",o=wa[+n[0]];for(let l=1;l<=6;l++){let i=yo[+n[l]];r+=o[l-1]==="L"?i:wo(i).split("").reverse().join("")}r+="01010";for(let l=7;l<=12;l++)r+=wo(yo[+n[l]]);r+="101";let s=[],a=1;for(let l=1;l<=r.length;l++)r[l]===r[l-1]?a++:(s.push(a),a=1);return s}var ka={L:1,M:0,Q:3,H:2},Mo={L:[0,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],M:[0,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],Q:[0,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],H:[0,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]},So={L:[0,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],M:[0,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],Q:[0,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],H:[0,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]},bn="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:";function $a(e){if(e===1)return[];let t=Math.floor(e/7)+2,n=e*4+17,r=Math.floor((e*8+t*3+5)/(t*4-4))*2,o=[6];for(let s=n-7;o.length<t;s-=r)o.splice(1,0,s);return o}function Eo(e){let t=(16*e+128)*e+64;if(e>=2){let n=Math.floor(e/7)+2;t-=(25*n-10)*n-55,e>=7&&(t-=36)}return t}function xo(e,t){return Math.floor(Eo(e)/8)-Mo[t][e]*So[t][e]}var wn=new Uint8Array(512),dr=new Uint8Array(256);(()=>{let e=1;for(let t=0;t<255;t++)wn[t]=e,dr[e]=t,e<<=1,e&256&&(e^=285);for(let t=255;t<512;t++)wn[t]=wn[t-255]})();var pr=(e,t)=>e&&t?wn[dr[e]+dr[t]]:0;function va(e){let t=new Array(e).fill(0);t[e-1]=1;let n=1;for(let r=0;r<e;r++){for(let o=0;o<e;o++)t[o]=pr(t[o],n),o+1<e&&(t[o]^=t[o+1]);n=pr(n,2)}return t}function Ma(e,t){let n=new Array(t.length).fill(0);for(let r of e){let o=r^n.shift();n.push(0);for(let s=0;s<t.length;s++)n[s]^=pr(t[s],o)}return n}var xn=class{constructor(){this.bits=[]}put(t,n){for(let r=n-1;r>=0;r--)this.bits.push(t>>>r&1)}};function Sa(e){let t=new xn;if(/^\d*$/.test(e)){for(let r=0;r<e.length;r+=3){let o=e.substr(r,3);t.put(+o,o.length*3+1)}return{mode:1,count:e.length,data:t,ccBits:[10,12,14]}}if([...e].every(r=>bn.includes(r))){for(let r=0;r<e.length;r+=2)r+1<e.length?t.put(bn.indexOf(e[r])*45+bn.indexOf(e[r+1]),11):t.put(bn.indexOf(e[r]),6);return{mode:2,count:e.length,data:t,ccBits:[9,11,13]}}let n=new TextEncoder().encode(e);for(let r of n)t.put(r,8);return{mode:4,count:n.length,data:t,ccBits:[8,16,16]}}var ko=(e,t)=>e.ccBits[t<=9?0:t<=26?1:2];function Ea(e,t,n){let r=So[n][t],o=Mo[n][t],s=Math.floor(Eo(t)/8),a=r-s%r,l=Math.floor(s/r),i=va(o),u=[];for(let w=0,k=0;w<r;w++){let d=l-o+(w<a?0:1),c=e.slice(k,k+d);k+=d,u.push({data:c,ec:Ma(c,i)})}let f=[],g=l-o+1;for(let w=0;w<g;w++)for(let k of u)w<k.data.length&&f.push(k.data[w]);for(let w=0;w<o;w++)for(let k of u)f.push(k.ec[w]);return f}function Ra(e,t,n){switch(e){case 0:return(t+n)%2===0;case 1:return n%2===0;case 2:return t%3===0;case 3:return(t+n)%3===0;case 4:return(Math.floor(t/3)+Math.floor(n/2))%2===0;case 5:return t*n%2+t*n%3===0;case 6:return(t*n%2+t*n%3)%2===0;default:return((t+n)%2+t*n%3)%2===0}}function Ta(e){let t=e.length,n=0,r=[1,0,1,1,1,0,1,0,0,0,0],o=[0,0,0,0,1,0,1,1,1,0,1];for(let l=0;l<2;l++){let i=(u,f)=>l?e[f][u]:e[u][f];for(let u=0;u<t;u++){let f=1;for(let w=1;w<=t;w++)w<t&&i(u,w)===i(u,w-1)?f++:(f>=5&&(n+=f-2),f=1);let g=w=>w>=0&&w<t&&i(u,w)?1:0;for(let w=-4;w+11<=t+4;w++){let k=!0,d=!0;for(let c=0;c<11&&(k||d);c++){let m=g(w+c);m!==r[c]&&(k=!1),m!==o[c]&&(d=!1)}k&&(n+=40),d&&(n+=40)}}}for(let l=0;l<t-1;l++)for(let i=0;i<t-1;i++){let u=e[l][i];u===e[l][i+1]&&u===e[l+1][i]&&u===e[l+1][i+1]&&(n+=3)}let s=0;for(let l of e)for(let i of l)i&&s++;let a=t*t;return n+=(Math.ceil(Math.abs(s*20-a*10)/a)-1)*10,n}function Pa(e,t){let n=ka[e]<<3|t,r=n;for(let o=0;o<10;o++)r=r<<1^(r>>>9)*1335;return(n<<10|r)^21522}function ja(e){let t=e;for(let n=0;n<12;n++)t=t<<1^(t>>>11)*7973;return e<<12|t}function vn(e,t="M"){let n=Sa(e),r=1;for(;r<=40;r++){let $=ko(n,r);if(n.count<1<<$&&4+$+n.data.bits.length<=xo(r,t)*8)break}if(r>40)throw new Error("QR: data too long");let o=xo(r,t)*8,s=new xn;s.put(n.mode,4),s.put(n.count,ko(n,r)),s.bits.push(...n.data.bits),s.put(0,Math.min(4,o-s.bits.length)),s.put(0,(8-s.bits.length%8)%8);for(let $=236;s.bits.length<o;$^=253)s.put($,8);let a=[];for(let $=0;$<s.bits.length;$+=8){let S=0;for(let P=0;P<8;P++)S=S<<1|s.bits[$+P];a.push(S)}let l=Ea(a,r,t),i=r*4+17,u=Array.from({length:i},()=>new Array(i).fill(!1)),f=Array.from({length:i},()=>new Array(i).fill(!1)),g=($,S,P)=>{u[S][$]=P,f[S][$]=!0};for(let $=0;$<i;$++)g(6,$,$%2===0),g($,6,$%2===0);for(let[$,S]of[[3,3],[i-4,3],[3,i-4]])for(let P=-4;P<=4;P++)for(let L=-4;L<=4;L++){let R=$+L,H=S+P;if(R<0||H<0||R>=i||H>=i)continue;let ue=Math.max(Math.abs(L),Math.abs(P));g(R,H,ue!==2&&ue!==4)}let w=$a(r);for(let $=0;$<w.length;$++)for(let S=0;S<w.length;S++)if(!($===0&&S===0||$===0&&S===w.length-1||$===w.length-1&&S===0))for(let P=-2;P<=2;P++)for(let L=-2;L<=2;L++)g(w[$]+L,w[S]+P,Math.max(Math.abs(L),Math.abs(P))!==1);let k=$=>{let S=Pa(t,$),P=L=>(S>>>L&1)===1;for(let L=0;L<=5;L++)g(8,L,P(L));g(8,7,P(6)),g(8,8,P(7)),g(7,8,P(8));for(let L=9;L<15;L++)g(14-L,8,P(L));for(let L=0;L<8;L++)g(i-1-L,8,P(L));for(let L=8;L<15;L++)g(8,i-15+L,P(L));g(8,i-8,!0)};if(k(0),r>=7){let $=ja(r);for(let S=0;S<18;S++){let P=($>>>S&1)===1,L=i-11+S%3,R=Math.floor(S/3);g(L,R,P),g(R,L,P)}}let d=0,c=l.length*8;for(let $=i-1;$>=1;$-=2){$===6&&($=5);let S=($+1&2)===0;for(let P=0;P<i;P++){let L=S?i-1-P:P;for(let R=0;R<2;R++){let H=$-R;f[L][H]||d>=c||(u[L][H]=(l[d>>>3]>>>7-(d&7)&1)===1,d++)}}}let m=$=>{for(let S=0;S<i;S++)for(let P=0;P<i;P++)!f[S][P]&&Ra($,P,S)&&(u[S][P]=!u[S][P])},E=0,M=1/0;for(let $=0;$<8;$++){m($),k($);let S=Ta(u);S<M&&(M=S,E=$),m($)}return m(E),k(E),u}var Ca=["qn0tbouluqjgt9sukvl30qhol1ga10l0oa0gln0qrotduljgqpstcvb30lhob1gbn0lroqtubjglpsqsvbholoubroltubpslsvbtuuntqbgt5suivkj0q9ot4ukhgq8s910kgoq8e90gkgc908krgqdst6v9j0kpoqcu9hgkosqcf9gokoe9rgktsqev9poksu9osksf9tskuv9su9sfkb0q5ot2uk9gq4st2f8h0k8oq4e8ggk8c8g88g48r0kdoq6u8pgkcsq6f8ookce8oc8o68tokeu8sskef8se8uuk5gq2st1f890k4oq2e88gk4cq27888k46884k438dgk6sq3f8cok6e8cck678c68c3k7f8e7850k2oq1e84gk2cq17848k26844k2384286o86c86682gq0nk16k13821pbgslsuavij0p9oskuihgp8sskf510igo50girgpdssmv5j0ipopcu5hgios5go5gc5rgitspev5poisu5os5oe5tsiuv5su5uvrb0tlouqur9gtksuqfmh0r8otkemggr8ctk7mg8r86ib0p5osiumr0i9gp4ssifmpgrcstmfdh04ggi8cp47dggmocdg84r0idop6udr04pgicsp6fdpgmssrefdoo4ocdoc4toieudto4ssiefdssmufdse4uuduu4ufdufr5gtisupfm90r4otiem8gr4cti7m88r46m84m82i5gp2sshfmdgi4op2ecp048gr6ep27cog488i46co8mc6i434824dgi6sp3fctg4coi6ecsomeei67csc4c64c34esi7fcus4eecue4e7cu7cvfm50r2othem4gr2cth7m48r26m44r23m42m41450i2op1ecd044gi2cp17ccgm6cr37cc8444i23cc4m63cc246oi3eceo46ci37cecm77ce6463ce3cfecf7m2gr1ctgnm28r16m24r13m22m2142gi1cp0nc6g428i16c68m36i13c64422c6242143cc7cc76c73r0mr0jm11i0m414c34c32c31hb0olosauh9goks2h0h8ooke2ggh8c2g82g42r0hdoomu2pghcsomf2oohce2oc2o62toheu2sshef2se2uu2ufplgsqsudfj90pkosqej8gpkcsq7j88pk6j84pk3h5goiss9fjdgh4ooie6p028gpmeoi76ogjcch466o82846o42dgh6sojf6tg2copnf6sojeeh676sc2c66s62esh7f6us2ee6ue2e72ff6vfrl0tqouterkgtqcut7rk8tq6rk4tq3rk2j50piospend0j4gtresp7ncgrmctr7nc8j44pi3nc4rm3j41250h2oohe6d024gh2coh7et06cgj6cpj7esgnecrn7h23es86c4j63es424126oh3e6eo26ch37euo6ecj77eucnf72636e327e6fe277eve6f7rigtpcusnri8tp6ri4tp3ri2ri1j2gphcsonn6gj28tpnn68rj6ph3n64j22n62j21n6122gh1cogn66g228h16eeg668j36h13ee8n76222ee466222166123ch1n67c236efc676233ef667323nefnrh8tomrh4tojrh2rh1j18pgmn38j14pgjn34rhjn32j11n31218h0m638214h0je78634j1je74n3j211e72631e7163me7me7jtobrghpgbj0ij0h20k61ke3k20h61hglg190gko18ggkcoa7188gk6184gk31dggmsobf1cogme1ccgm71c61c31esgnf1ee1e71ffhl0oqosdehkgoqchk8oq6hk4oq3hk2150gioo9e3d014goreo973cghmcor73c8144gi33c4hm314116ogje3eo16cgj73echn73e616317e3fe1773f7pqgstcuenpq8st6pq4st3pq2pq1higopcjmghi8op6jm8pr6op3jm4hi2jm2hi1jm112gghc36g128opn7eg368hj6gh37e8jn61227e436212136113cghn37c1367fc3761337f637313n37n7fntt8uumtt4uujtt2tt1pp8ssmrr8ttmssjrr4ttjrr2pp1rr1hh8oomjj8hh4oojnn8jj4ppjnn4rrjhh1nn2jj1nn1118ggm338114ggj778334hhjff8774jjj111ff4nnj331ff211m33m11j77m33jffm77jffjtskuubtsitshpokssbrpktsrrpipohrphhgkoobjhkhginjkjhihghnjijhhnjh10kggb31khgr73k31i10hf7k73i31hf7i73hf7h31rf7rts9roqropjgqnhqnhp30q71qf3qf3p0l00kggac0k80k40k20mo0mc0m60m30ne0n7gqggq8od6gq4od3gq2gq10igg9c1mggrcg961m8gr61m4gr31m20i11m10jcg9n1ncgrn1n60j31n30jn1nnot8ot4ot2ot1gp8hr8otmocjhr4otjhr2gp1hr10h81j80h4g8j3n81j40h23n41j20h13n21j10hm1jm0hj3nm1jj3njsuksuisuhoskptksurptioshpthgokocbhpkosrjrkhpigohjrihphjrh0gkg8b1hkgor3jk1hi0gh7nk3ji1hh7ni3jh0gr1hr3jr7nruvauv9suatuqsu9tuposapsqos9rtqpsprtpgoahoqgo9jpqhopnrq","ulgvast90ukovaet8gukcva7t88uk6t84uk3t82tdgumsvbfqp0tcoumeqogtccum7qo8tc6qo4tc3qo2qtgtesunflp0qsoteelogqscte7lo8qs6lo4qs3lo2ltgqustffbp0lsoqueboglscqu7bo8ls6bo4ls3btglusqvfbsoluebsclu7bs6buslvfbuebu7t50uiov9et4guicv97t48ui6t44ui3t42t41qd0t6oujeqcgt6cuj7qc8t66qc4t63qc2qc1kt0qeot7eksgqect77ks8qe6ks4qe3ks2ks19t0kuoqfe9sgkucqf79s8ku69s4ku39s29uokve9uckv79u69u39ve9v7t2guhcv8nt28uh6t24uh3t22t21q6gt3cuhnq68t36q64t33q62q61kegq7ct3nke8q76ke4q73ke2ke18ugkfcq7n8u8kf68u4kf38u28u18vckfn8v68v38vnt18ugmt14ugjt12t11q38t1mq34t1jq32q31k78q3mk74q3jk72k718f8k7m8f4k7j8f28f18fm8fjt0kugbt0it0hq1kt0rq1iq1hk3kq1rk3ik3h87kk3r87i87ht0at09q0qq0pk1qk1psl0uaov5eskguacv57sk8ua6sk4ua3sk2sk1pd0smoubepcgsmcub7pc8sm6pc4sm3pc2pc1it0peosneisgpecsn7is8pe6is4pe3is2is15t0iuopfe5sgiucpf75s8iu65s4iu35s25uoive5uciv75u65u35ve5v7uqgvdcdfouq8vd6d7suq4vd3d3uuq2uq1sigu9cv4ntmgsi8vdntm8ur6u93tm4si2tm2si1tm1p6gsjcu9nregp68sj6re8tn6sj3re4p62re2p61re1iegp7csjnmugie8p76mu8rf6p73mu4ie2mu2ie1mu14ugifcp7ndug4u8if6du8mv6if3du44u2du24u14vcifndvc4v6dv64v3dv34vnup8vcmcnsup4vcjcjuup2chvup1sh8u8mtj8sh4u8jtj4upjtj2sh1tj1p38shmr78p34shjr74tjjr72p31r71i78p3mmf8i74p3jmf4r7jmf2i71mf14f8i7mcv84f4i7jcv4mfjcv24f1cv14fmcvm4fjcvjuokvcbcbuuoic9vuohsgku8bthkuorthisghthhp1ksgrr3kp1ir3ip1hr3hi3kp1rm7kr3rm7ii3hm7h47ki3rcfk47icfi47hcfh47rcfruoac5vuo9sgatgqsg9tgpp0qr1qp0pr1pi1qm3qi1pm3p43qc7q43pc7puo5sg5tgdp0dr0ti0tm1tsagu5cv2nsa8u56sa4u53sa2sa1omgsbcu5nom8sb6om4sb3om2om1hegoncsbnhe8on6he4on3he2he12ughfconn2u8hf62u4hf32u22u12vchfn2v62v32vnud8v6m6nsud4v6j6juud26hvud1s98u4msr8s94u4jsr4udjsr2s91sr1oj8s9mpn8oj4s9jpn4srjpn2oj1pn1h78ojmjf8h74ojjjf4pnjjf2h71jf12f8h7m6v82f4h7j6v4jfj6v22f16v12fm6vm2fj6vjvekenonbuveiejsn9vvehehuegvuckv6b6buutkvereru69vutiuchepvuths8ku4bspks8itrkutrs8htrisphtrhohks8rpjkohirnkpjiohhrnipjhrnhh3kohrj7kh3infkj7ih3hnfij7hnfh27kh3r6fk27ievk6fi27hevi6fhevh27r6frveaebsn5vve9e9ue8vuca65vusquc9edvusps8asoqs89tpqsoptppogqphqogprjqphprjph1qj3qh1pn7qj3pn7p23q67q23pefq67pefpve5e5ue4vuc5usds85sodtotogdpgtrhth0tj1tn3t21t63te7te2vs58u2ms54u2js52s51ob8s5mob4s5job2ob1gn8obmgn4objgn2gn11f8gnm1f4gnj1f21f11fm1fju6kv3b3buu6i39vu6hs4ku2bsdks4isdis4hsdho9ks4rorko9iorio9horhgjko9rhnkgjihnigjhhnh17kgjr3fk17i3fi17h3fh17r3frv7a7bsjlvv7979u78vu6a35vuequ697dvueps4ascqs49stqscpstpo8qopqo8pprqoppprpghqhjqghpjnqhjpjnp13q37q13p7fq37p7fpfbonluf9snkvf8uf8fv7575uvfdfdu74vfcvu65ueduuts45scdsstttto8dootpptrrtggthhtjjtnnt11t33t77tf5snivf4uf4f72vf6vf2uf2ff1fs2ks2is2ho5ks2ro5io5hgbko5rgbigbh0nkgbr0ni0nh0nru3a1lvu39s2as6qs29s6po4qodqo4podpg9qgrqg9pgrp0jq1nq0jp1npv3l3lu3kvu35u7ds25s6dseto4doctottg8tgpthrt0ht1jt3nt7lsjqv7ku7kf3iv7mvflonqufksnqffkefk77iufmu7iffmffisnpffiefi77hffjffhefh7fgno2qo2pg5qg5p0bq0bps3do2do6tg4tgdt09t0rt1qv3qu3qf7qsjtf7qe7q73pf7rffqontefqcnt7fq6fq37pefre7p7fr7fpcnsnfp6fp37onfpnfomfoj1tf3te3t77tcjun7t67t33sn7tn7sm7sj","lfgqnsaf0l7oqjua7gl3sqhva3ol1ua1svb8bfglnsvb4b7oljuvb2b3slhvvb1b1uun8vbmbnsun4vbjbjuun2bhvun1tf8unmtf4unjtf2tf1qv8tfmqv4tfjqv2qv1lv8qvmlv4qvjlv29f0knoqbu97gkjsq9v93okhu91skgv90uv9k9nokruv9i9jskpvv9h9hu9gvujkv9r9ruuji9pvujht7kujrt7it7hqfkt7rqfiqfhkvkqfrkvikvh8ngkbsq5v8jok9u8hsk8v8gu8gfv8q8rskdvv8p8pu8ovuhq8tvuhpt3qt3pq7qq7pkfqkfp8bok5u89sk4v88u88fv8d8du8cvugtt1tq3t85sk2v84u84f86v82u82f5f0inopbu57gijsp9v53oihu51sigv50uv5k5noiruv5i5jsipvv5h5hu5gvubkv5r5ruubi5pvubhsnkubrsnisnhpfksnrpfipfhivkpfriviivhmngrbstlvd70mjor9ud3gmhsr8vd1omgud0smgfd0e4ngibsp5vdng4joi9udjompui8vdhs4gudgu4gfdgfv4q4rsidvvdqv4pdrs4puvdpdpu4ovdovu9q4tvurqu9pdtvurpsjqtnqsjptnpp7qrfqp7prfpifqifpcn0mbor5ucjgm9sr4vchom8ucgsm8fcgecg74boi5ucro49si4vcpsmcvcou48fcofv4d4duvctctu4cvcsvu8tuptshttjtp3tr7ti7tcbgm5sr2vc9om4uc8sm4fc8ec8745si2vcds44uccu44fccf46vcevc5om2uc4sm2fc4ec4742uc6u42fc6fc2sm1fc2ec2741fc3fc1ec172nghbsolv2joh9u2hsh8v2gu2gfv2q2rshdvv2p2pu2ovu5q2tvu5psbqsbponqonphfqhfp6n0jboplu6jgj9spkv6hoj8u6gsj8f6ge6g72boh5u6ro29sh4v6psjcv6ou28f6ofv2d2duv6t6tu2cv6svu4tudts9tsrtojtpnth7tnbgrlstqvej0n9orkuehgn8srkfegon8eegcn87eg66bgj5spiverg69oj4ueponcuj4feos68eeoe687eo725sh2v6ds24uets6cu24fesu6cfesf26v6eveuveb0n5oriue9gn4srife8on4ee8cn47e86e8365oj2uedo64sj2fecsn6fece647ec722u66u22feeu66feefe5gn2srhfe4on2ee4cn27e46e4362sj1fe6s62ee6e627e6721f63fe7fe2on1ee2cn17e26e2361ee3e617e37e1cn0ne16e1360ne1ne0me0j1boglu19sgkv18u18f1du1cvu2ts5tobtgnt3bghlsoqv39ohku38shkf38e38715sgiv3ds14u3cu14f3cf16v3ev7b0jlopqu79gjkspqf78ojke78cjk778678335ohiu7do34shif7cs34e7ce3477c712u36u12f7eu36f7efnlgrqsttff90nkorqef8gnkcrq7f88nk6f84nk3f8275gjisppffdg74ojiefconmeji7fcc746fc6743fc332shhf76s32efes76e327fee767fe711f33f77fffff50niorpef4gnicrp7f48ni6f44ni3f42f4172ojhef6o72cjh7f6cnj7f66723f6331e73e317f7e737f77f2gnhcronf28nh6f24nh3f22f2171cjgnf3c716f36713f3330n71nf3nf18ngmf14ngjf12f1170mf1m70jf1jf0kngbf0if0h70bf0r0lsgav0ku0kf0mv1logqu1ksgqf1ke1k70iu1mu0if1mf3lghqsotf3kohqe3kchq73k63k31isgpf3ms1ie3me1i73m70hf1jf3nf7l0jqopte7kgjqcpt77k8jq67k4jq37k27k13iohpe7mo3ichp77mcjr77m63i37m31he3je1h77ne3j77n7nqgrtctunnq8rt6nq4rt3nq2nq17igjpcpsnfmg7i8jp6fm8nr6jp3fm47i2fm27i1fm13hchon7jc3h6fnc7j63h3fn67j3fn31gn3hn7jnfnnnp8rsmnp4rsjnp2np17h8jomfj87h4jojfj4npjfj27h1fj13gm7hm3gjfjm7hjfjjnokrsbnoinoh7gkjobfhk7gifhi7ghfhh3gb7grfhrnoano97gafgq7g9fgp0au0af0qsgdf0qe0q709f0rf1qogte1qcgt71q61q30pe1re0p71r73qghtcoun3q8ht63q4ht33q23q11pcgsn3rchtn3r61p33r30on1pn3rnjt8pumjt4pujjt2jt13p8hsm7r8jtmhsj7r43p27r23p17r11om3pm1oj7rm3pj7rjruktvbruiruhjskpubntkjsintijshnth3okhsb7pk3oifrk7pi3ohfri7phfrh1ob3or7prfrrruaru9jsansqjs9nsp3oa7oq3o9fpq7opfppru5js5nsd3o57odfot0de0d70tcgen0t60t30cn0tn1t8gum1t4guj1t21t10sm1tm0sj1tjhukovbhuihuh1skgub3tkhur3ti1sh3th0sb1sr3trpvapv9huajuqhu9jup1sa3sq1s97tq3sp7tppv5hu5jud1s53sd7st0em0ej0ukgfb0ui0uh0eb0urgvagv90ua1uq0u91upovl"],yn=null;function Aa(){return yn||(yn=Ca.map(e=>{let t=new Array(929);for(let n=0;n<929;n++)t[n]=65536|parseInt(e.substr(n*3,3),32)<<1;return t}),yn)}var La=130728,Fa=260649;function Da(e,t){if(!(t>=0&&t<=8)||t%1)throw new Error("PDF417: ecc level must be 0..8");let n=2<<t,r=new Array(n+1).fill(0);r[0]=1;let o=1;for(let l=1;l<=n;l++){o=o*3%929;for(let i=l;i>=0;i--)r[i]=((i>0?r[i-1]:0)+929-r[i]*o%929)%929}let s=new Array(n).fill(0);for(let l of e){let i=(l+s[n-1])%929;for(let u=n-1;u>=1;u--)s[u]=(s[u-1]+929-i*r[u]%929)%929;s[0]=(929-i*r[0]%929)%929}let a=[];for(let l=n-1;l>=0;l--)a.push((929-s[l])%929);return a}var $o="0123456789&\r ,:#-.$/+%*=^",Gt=`;<>@[\\]_\`~!\r ,:
12
+ -.$/"|*()?{}'`,ur=e=>e===9||e===10||e===13||e>=32&&e<=126;function Ia(e){let t=[],n=i=>i>=65&&i<=90,r=i=>i>=97&&i<=122,o=i=>$o.includes(i),s=i=>!o(i)&&Gt.includes(i),a=0;for(let i=0;i<e.length;){let u=e[i],f=e.charCodeAt(i);if(a===0)n(f)||f===32?(t.push(f===32?26:f-65),i++):r(f)?(t.push(27),a=1):o(u)?(t.push(28),a=2):(t.push(29,Gt.indexOf(u)),i++);else if(a===1)r(f)||f===32?(t.push(f===32?26:f-97),i++):n(f)?(t.push(27,f-65),i++):o(u)?(t.push(28),a=2):(t.push(29,Gt.indexOf(u)),i++);else if(a===2)o(u)||f===32?(t.push(f===32?26:$o.indexOf(u)),i++):n(f)?(t.push(28),a=0):r(f)?(t.push(27),a=1):i+1<e.length&&s(e[i+1])?(t.push(25),a=3):(t.push(29,Gt.indexOf(u)),i++);else{let g=Gt.indexOf(u);g>=0?(t.push(g),i++):(t.push(29),a=0)}}t.length%2&&t.push(29);let l=[];for(let i=0;i<t.length;i+=2)l.push(t[i]*30+t[i+1]);return l}function Ba(e){let t=[];for(let n=0;n<e.length;n+=44){let r=("1"+e.substr(n,44)).split("").map(Number),o=[];for(;r.length;){let s=[],a=0;for(let l of r){a=a*10+l;let i=Math.floor(a/900);a-=i*900,(s.length||i)&&s.push(i)}o.unshift(a),r=s}t.push(...o)}return t}function Na(e){let t=[e.length%6===0?924:901],n=0;for(;n+6<=e.length;n+=6){let r=0;for(let s=0;s<6;s++)r=r*256+e[n+s];let o=[];for(let s=0;s<5;s++)o.unshift(r%900),r=Math.floor(r/900);t.push(...o)}for(;n<e.length;n++)t.push(e[n]);return t}function Ha(e){let t=[];/[^\x00-\x7f]/.test(e)&&t.push(927,26);let n=new TextEncoder,r="text",o=0;for(;o<e.length;){let s=fr(e,o);if(s>=13){t.push(902,...Ba(e.substr(o,s))),r="num",o+=s;continue}let a=o;if(ur(e.charCodeAt(o))){for(;a<e.length&&ur(e.charCodeAt(a))&&fr(e,a)<13;)a++;r!=="text"&&t.push(900),t.push(...Ia(e.slice(o,a))),r="text"}else{for(;a<e.length&&!ur(e.charCodeAt(a));)a++;t.push(...Na(n.encode(e.slice(o,a)))),r="byte"}o=a}return t}var Oa=e=>e<=40?2:e<=160?3:e<=320?4:5;function Mn(e,t={}){var E;let n=Ha(e),r=(E=t.ecc)!=null?E:Oa(n.length+1);if(!(r>=0&&r<=8)||r%1)throw new Error("PDF417: ecc level must be 0..8");let o=2<<r,s=1+n.length+o,a=M=>{let $=Math.max(3,Math.ceil(s/M));return $<=90&&$*M<=928?$:0},l=0;if(t.columns!==void 0){if(!(t.columns>=1&&t.columns<=30)||t.columns%1)throw new Error("PDF417: columns must be 1..30");if(!a(t.columns))throw new Error("PDF417: data does not fit with the requested columns");l=t.columns}else{let M=1/0;for(let $=1;$<=30;$++){let S=a($);if(!S)continue;let P=Math.abs(Math.log((17*($+4)+1)/(S*3)/3));P<M&&(M=P,l=$)}if(!l)throw new Error("PDF417: data too long")}let i=a(l),u=[0,...n];for(;u.length<i*l-o;)u.push(900);u[0]=u.length;let f=u.concat(Da(u,r)),g=Aa(),w=(M,$,S)=>{for(let P=S-1;P>=0;P--)M.push(($>>>P&1)===1)},k=Math.floor((i-1)/3),d=r*3+(i-1)%3,c=l-1,m=[];for(let M=0;M<i;M++){let $=M%3,S=30*Math.floor(M/3),P=S+($===0?k:$===1?d:c),L=S+($===0?c:$===1?k:d),R=g[$],H=[];w(H,La,17),w(H,R[P],17);for(let ue=0;ue<l;ue++)w(H,R[f[M*l+ue]],17);w(H,R[L],17),w(H,Fa,18),m.push(H)}return{rows:i,cols:l,matrix:m}}var Wt=new Uint8Array(512),mr=new Uint8Array(256);(()=>{let e=1;for(let t=0;t<255;t++)Wt[t]=e,mr[e]=t,e<<=1,e&256&&(e^=301);for(let t=255;t<512;t++)Wt[t]=Wt[t-255]})();var vo=(e,t)=>e&&t?Wt[mr[e]+mr[t]]:0;function qa(e,t){let n=[1];for(let s=1;s<=t;s++){let a=new Array(n.length+1).fill(0),l=Wt[s];for(let i=0;i<n.length;i++)a[i]^=n[i],a[i+1]^=vo(n[i],l);n=a}let r=n.slice(1),o=new Array(t).fill(0);for(let s of e){let a=s^o.shift();o.push(0);for(let l=0;l<t;l++)o[l]^=vo(r[l],a)}return o}var za=[[10,3,5,1],[12,5,7,1],[14,8,10,1],[16,12,12,1],[18,18,14,1],[20,22,18,1],[22,30,20,1],[24,36,24,1],[26,44,28,1],[32,62,36,1],[36,86,42,1],[40,114,48,1],[44,144,56,1],[48,174,68,1],[52,204,84,2],[64,280,112,2],[72,368,144,4],[80,456,192,4],[88,576,224,4],[96,696,272,4],[104,816,336,6],[120,1050,408,6],[132,1304,496,8],[144,1558,620,10]],Ua=e=>e<32?1:e<64?2:e<120?4:6;function Ga(e){let t=new TextEncoder().encode(e),n=[],r=a=>a<t.length&&t[a]>=128,o=a=>a<t.length&&t[a]>=48&&t[a]<=57;t.some(a=>a>=128)&&n.push(241,27);let s=0;for(;s<t.length;)if(r(s)){let a=s;for(;;){for(;r(a);)a++;let u=a;for(;u<t.length&&!r(u)&&u-a<4;)u++;if(u>a&&u-a<4&&r(u))a=u;else break}let l=a-s;n.push(231);let i=l<=249?[l]:[Math.floor(l/250)+249,l%250];for(let u of[...i,...t.subarray(s,a)]){let f=n.length+1,g=u+149*f%255+1;n.push(g<=255?g:g-256)}s=a}else o(s)&&o(s+1)?(n.push(130+(t[s]-48)*10+(t[s+1]-48)),s+=2):(n.push(t[s]+1),s++);return n}function Wa(e,t){let n=new Int32Array(e*t),r=(u,f,g,w)=>{u<0&&(u+=e,f+=4-(e+4)%8),f<0&&(f+=t,u+=4-(t+4)%8),n[u*t+f]=10*g+w},o=(u,f,g)=>{r(u-2,f-2,g,1),r(u-2,f-1,g,2),r(u-1,f-2,g,3),r(u-1,f-1,g,4),r(u-1,f,g,5),r(u,f-2,g,6),r(u,f-1,g,7),r(u,f,g,8)},s=(u,f)=>f.forEach(([g,w],k)=>r(g,w,u,k+1)),a=1,l=4,i=0;do{l===e&&i===0&&s(a++,[[e-1,0],[e-1,1],[e-1,2],[0,t-2],[0,t-1],[1,t-1],[2,t-1],[3,t-1]]),l===e-2&&i===0&&t%4&&s(a++,[[e-3,0],[e-2,0],[e-1,0],[0,t-4],[0,t-3],[0,t-2],[0,t-1],[1,t-1]]),l===e-2&&i===0&&t%8===4&&s(a++,[[e-3,0],[e-2,0],[e-1,0],[0,t-2],[0,t-1],[1,t-1],[2,t-1],[3,t-1]]),l===e+4&&i===2&&!(t%8)&&s(a++,[[e-1,0],[e-1,t-1],[0,t-3],[0,t-2],[0,t-1],[1,t-3],[1,t-2],[1,t-1]]);do l<e&&i>=0&&!n[l*t+i]&&o(l,i,a++),l-=2,i+=2;while(l>=0&&i<t);l+=1,i+=3;do l>=0&&i<t&&!n[l*t+i]&&o(l,i,a++),l+=2,i-=2;while(l<e&&i>=0);l+=3,i+=1}while(l<e||i<t);return n[e*t-1]||(n[e*t-1]=n[e*t-t-2]=1),n}function Ka(e){let t=Ga(e),n=za.find(u=>u[1]>=t.length);if(!n)throw new Error("DataMatrix: data too long");let[r,o,s,a]=n;for(t.length<o&&t.push(129);t.length<o;){let u=129+149*(t.length+1)%253+1;t.push(u<=254?u:u-254)}let l=s/a,i=t.slice();for(let u=0;u<a;u++){let f=[];for(let w=u;w<o;w+=a)f.push(t[w]);let g=qa(f,l);for(let w=0;w<l;w++)i[o+w*a+u]=g[w]}return{size:r,data:t,codewords:i}}function Sn(e){let{size:t,codewords:n}=Ka(e),r=Ua(t),o=(t-2*r)/r,s=o*r,a=Wa(s,s),l=Array.from({length:t},()=>new Array(t).fill(!1)),i=o+2;for(let u=0;u<r;u++)for(let f=0;f<r;f++){let g=u*i,w=f*i;for(let k=0;k<i;k++)l[g+i-1][w+k]=!0,l[g+k][w]=!0,k%2===0&&(l[g][w+k]=!0),k%2===1&&(l[g+k][w+i-1]=!0)}for(let u=0;u<s;u++)for(let f=0;f<s;f++){let g=a[u*s+f],w=g===1||g>=10&&(n[Math.floor(g/10)-1]>>8-g%10&1)===1;l[u+2*Math.floor(u/o)+1][f+2*Math.floor(f/o)+1]=w}return l}var lt={A3:[297,420],A4:[210,297],A5:[148,210],B4:[257,364],B5:[182,257],Letter:[215.9,279.4],Legal:[215.9,355.6]};function nt(e={}){var s,a,l;let[t,n]=Array.isArray(e.size)?e.size:(a=lt[(s=e.size)!=null?s:"A4"])!=null?a:lt.A4;(e.orientation==="landscape"?t<n:e.orientation==="portrait"&&t>n)&&([t,n]=[n,t]);let r=(l=e.margins)!=null?l:15,o=typeof r=="number"?[r,r,r,r]:[r[0],r[1],r[2],r[3]];return{width:t,height:n,margins:o}}function rt(e){let t=nt(e.page);return t.width-t.margins[1]-t.margins[3]}var hr={width:.2,style:"solid",color:"#000000"};function Ro(e){if(!e)return;if(e===!0)return{...hr};if(typeof e=="string"){if(e==="none"||e==="0")return;let n={...hr};for(let r of e.trim().split(/\s+/))/^[\d.]+(mm)?$/.test(r)?n.width=parseFloat(r):/^(solid|dashed|dotted|double)$/.test(r)?n.style=r:n.color=r;return n.width>0?n:void 0}let t={...hr,...e};return t.width>0?t:void 0}function Kt(e){if(!e)return{};if(e===!0||typeof e=="string"||"width"in e||"style"in e||"color"in e){let r=Ro(e);return r?{top:r,right:r,bottom:r,left:r}:{}}let t=e,n={};for(let r of["top","right","bottom","left"]){let o=Ro(t[r]);o&&(n[r]=o)}return n}var _a=(e,t)=>e===void 0?t:typeof e=="number"?[e,e,e,e]:e,Xa="Nanum Gothic",To=new WeakMap;function Ke(e,t){var s;let n=t.styleName?(s=e.styles)==null?void 0:s[t.styleName]:void 0,r=To.get(t);if(r&&r.style===t.style&&r.named===n&&r.font===e.font)return r.result;let o=Va(e,t,n);return To.set(t,{style:t.style,named:n,font:e.font,result:o}),o}function Va(e,t,n){var o,s,a,l,i,u,f,g,w,k,d,c,m,E,M,$,S,P,L;let r={...n,...t.style};return{fontFamily:(a=(s=r.fontFamily)!=null?s:(o=e.font)==null?void 0:o.family)!=null?a:Xa,fontSize:(u=(i=r.fontSize)!=null?i:(l=e.font)==null?void 0:l.size)!=null?u:9,bold:(f=r.bold)!=null?f:!1,italic:(g=r.italic)!=null?g:!1,underline:(w=r.underline)!=null?w:!1,strike:(k=r.strike)!=null?k:!1,color:(m=(c=r.color)!=null?c:(d=e.font)==null?void 0:d.color)!=null?m:"#000000",background:r.background,align:(E=r.align)!=null?E:"left",valign:(M=r.valign)!=null?M:"middle",padding:_a(r.padding,[.5,1,.5,1]),border:Kt(r.border),lineHeight:($=r.lineHeight)!=null?$:1.25,wrap:(S=r.wrap)!=null?S:!0,shrinkToFit:(P=r.shrinkToFit)!=null?P:!1,letterSpacing:(L=r.letterSpacing)!=null?L:0}}var Ya={black:"#000000",white:"#ffffff",red:"#ff0000",green:"#008000",blue:"#0000ff",gray:"#808080",grey:"#808080",silver:"#c0c0c0",navy:"#000080",yellow:"#ffff00",orange:"#ffa500",purple:"#800080",maroon:"#800000",teal:"#008080"};function En(e){var o,s;if(!e)return null;let t=e.trim().toLowerCase();if(t==="transparent"||t==="none")return null;let n=(o=Ya[t])!=null?o:t,r=/^#([0-9a-f]{3,8})$/.exec(n);if(r){let a=r[1];return(a.length===3||a.length===4)&&(a=[...a].map(l=>l+l).join("")),a.length!==6&&a.length!==8?null:[parseInt(a.slice(0,2),16),parseInt(a.slice(2,4),16),parseInt(a.slice(4,6),16),a.length===8?parseInt(a.slice(6,8),16)/255:1]}if(r=/^rgba?\(([^)]+)\)$/.exec(t),r){let a=r[1].split(/[\s,/]+/).filter(Boolean).map(parseFloat);return a.length<3?null:[a[0],a[1],a[2],(s=a[3])!=null?s:1]}return null}var Ct=["#2F5BEA","#F2A900","#16A34A","#DC2626","#7C3AED","#0891B2","#DB2777","#65A30D","#EA580C","#475569"],Ja=(e,t)=>{let n=e/Math.max(1,t),r=10**Math.floor(Math.log10(n||1)),o=n/r;return(o<=1?1:o<=2?2:o<=2.5?2.5:o<=5?5:10)*r};function Po(e,t,n,r,o,s=0){let a=[],l=(i,u,f,g)=>{let w=Math.max(1,Math.ceil(Math.abs(f-u)/(Math.PI/2))),k=(f-u)/w,d=4/3*Math.tan(k/4),c=u;g?a.push("M",e+i*Math.cos(c),t+i*Math.sin(c)):a.push("L",e+i*Math.cos(c),t+i*Math.sin(c));for(let m=0;m<w;m++){let E=c+k;a.push("C",e+i*(Math.cos(c)-d*Math.sin(c)),t+i*(Math.sin(c)+d*Math.cos(c)),e+i*(Math.cos(E)+d*Math.sin(E)),t+i*(Math.sin(E)-d*Math.cos(E)),e+i*Math.cos(E),t+i*Math.sin(E)),c=E}};return l(n,r,o,!0),s>0?l(s,o,r,!1):a.push("L",e,t),a.push("Z"),a}var gr=(e,t,n,r)=>["M",e,t,"L",e+n,t,"L",e+n,t+r,"L",e,t+r,"Z"];function jo(e,t,n,r){var ke,ve,$e;let o=Ke(r.def,e),s=e.source?Ae(e.source,t):t.rows,a=Array.isArray(s)?s:[],l=(ke=e.series)!=null&&ke.length?e.series:[],i=a.map((ee,_)=>{var be;return je((be=Ae(e.category,{...t,row:ee,vars:{...t.vars,rowNum:_+1}}))!=null?be:"")}),u=l.map(ee=>a.map((_,be)=>{let we=Number(Ae(ee.expr,{...t,row:_,vars:{...t.vars,rowNum:be+1}}));return Number.isFinite(we)?we:0})),f=ee=>{var _,be;return(be=(_=l[ee])==null?void 0:_.color)!=null?be:Ct[ee%Ct.length]},g=Math.min(o.fontSize,8),w={family:o.fontFamily,size:g,bold:!1,italic:!1},k={...o,padding:[0,0,0,0],letterSpacing:0,border:{}},d=g*Ce*1.3,c=[],m=(ee,_,be,we,U,T=!1,ne="#444444")=>c.push({...yt(_,be,we,d,[ee],{...w,bold:T},{...k,align:U,valign:"middle",color:ne},r.measure),source:{band:r.kind,elementId:e.id}}),{x:E,y:M,w:$,h:S}=n;if(e.title&&(m(e.title,E,M,$,"center",!0,o.color),M+=d*1.3,S-=d*1.3),(ve=e.legend)!=null?ve:l.length>1||e.chartType==="pie"||e.chartType==="doughnut"){let ee=e.chartType==="pie"||e.chartType==="doughnut"?i:l.map((de,me)=>{var ae;return(ae=de.label)!=null?ae:`Series ${me+1}`}),_=g*Ce,be=E,we=M+S-d,U=[];ee.forEach((de,me)=>{let ae=r.measure.width(de,w)+_+3;be+ae>E+$&&be>E&&(be=E,we-=d),U.push({text:de,color:e.chartType==="pie"||e.chartType==="doughnut"?Ct[me%Ct.length]:f(me),x:be,y:we}),be+=ae+2});let T=M+S-Math.min(...U.map(de=>de.y),M+S),ne=new Map;for(let de of U)ne.set(de.y,[...($e=ne.get(de.y))!=null?$e:[],de]);for(let de of ne.values()){let me=de[de.length-1],ae=me.x+r.measure.width(me.text,w)+_+1-de[0].x,ce=($-ae)/2;for(let ie of de)c.push({kind:"path",d:gr(ie.x+ce,ie.y+(d-_)/2,_,_),fill:ie.color}),m(ie.text,ie.x+ce+_+1,ie.y,r.measure.width(ie.text,w)+1,"left")}S-=T+1}if(!a.length||!l.length||S<5)return c;if(e.chartType==="pie"||e.chartType==="doughnut"){let ee=u[0].map(ne=>Math.max(0,ne)),_=ee.reduce((ne,de)=>ne+de,0)||1,be=Math.min($,S)/2-1,we=E+$/2,U=M+S/2,T=-Math.PI/2;return ee.forEach((ne,de)=>{let me=T+ne/_*Math.PI*2;if(ne>0&&c.push({kind:"path",d:Po(we,U,be,T,me,e.chartType==="doughnut"?be*.55:0),fill:Ct[de%Ct.length],stroke:"#ffffff",strokeWidth:.3}),e.showValues!==!1&&ne/_>=.04){let ae=(T+me)/2,ce=e.chartType==="doughnut"?be*.78:be*.62,ie=e.format?je(ne,e.format):`${Math.round(ne/_*100)}%`;m(ie,we+ce*Math.cos(ae)-10,U+ce*Math.sin(ae)-d/2,20,"center",!0,"#ffffff")}T=me}),c}let L=e.chartType==="hbar",R=!!e.stacked&&(e.chartType==="bar"||e.chartType==="hbar"||e.chartType==="area"),H=i.map((ee,_)=>u.reduce((be,we)=>be+Math.max(0,we[_]),0)),ue=i.map((ee,_)=>u.reduce((be,we)=>be+Math.min(0,we[_]),0)),Q=Math.max(...R?H:u.flat()),q=R?Math.min(0,...ue):Math.min(0,...u.flat());Q===q&&(Q=q+1);let z=Ja(Q-q,5);Q=Math.ceil(Q/z)*z,q=Math.floor(q/z)*z;let F=[];for(let ee=q;ee<=Q+z/1e6;ee+=z)F.push(Math.round(ee*1e9)/1e9);let D=ee=>{var _;return je(ee,(_=e.format)!=null?_:Math.abs(Q)>=1e3?"#,##0":void 0)},G=Math.max(...F.map(ee=>r.measure.width(D(ee),w)))+1.5,Y=L?Math.min($*.3,Math.max(...i.map(ee=>r.measure.width(ee,w)))+1.5):0,Z=L?{x:E+Y,y:M,w:$-Y-2,h:S-d}:{x:E+G,y:M+d/2,w:$-G-1,h:S-d-d/2},se="#999999",W="#e3e3e3",I=ee=>L?Z.x+(ee-q)/(Q-q)*Z.w:Z.y+Z.h-(ee-q)/(Q-q)*Z.h;for(let ee of F){let _=I(ee);L?(c.push({kind:"line",x1:_,y1:Z.y,x2:_,y2:Z.y+Z.h,width:.15,color:ee===0?se:W}),m(D(ee),_-10,Z.y+Z.h+.3,20,"center")):(c.push({kind:"line",x1:Z.x,y1:_,x2:Z.x+Z.w,y2:_,width:.15,color:ee===0?se:W}),m(D(ee),E,_-d/2,G-1,"right"))}let B=i.length,K=(L?Z.h:Z.w)/B,N=Math.max(1,Math.ceil(B*r.measure.width("0000",w)/(L?Z.h*3:Z.w)));if(i.forEach((ee,_)=>{_%N||(L?m(ee,E,Z.y+_*K+K/2-d/2,Y-1,"right"):m(ee,Z.x+_*K,Z.y+Z.h+.3,K*N,N>1?"left":"center"))}),e.chartType==="bar"||e.chartType==="hbar"){let ee=K*.7,_=R?ee:ee/l.length,be=I(0);return i.forEach((we,U)=>{let T=0,ne=0;l.forEach((de,me)=>{let ae=u[me][U],ce=0,ie=ae;R&&(ae>=0?(ce=T,ie=T+ae,T=ie):(ce=ne,ie=ne+ae,ne=ie));let xe=R?I(ce):be,ge=I(ie),he=(L?Z.y:Z.x)+U*K+(K-ee)/2+(R?0:me*_),Re=L?gr(Math.min(xe,ge),he,Math.abs(ge-xe),_*.92):gr(he,Math.min(xe,ge),_*.92,Math.abs(ge-xe));c.push({kind:"path",d:Re,fill:f(me),source:{band:r.kind,elementId:e.id,value:ae}}),e.showValues&&ae!==0&&(L?m(D(ae),ge+.5,he+_*.46-d/2,G+4,"left"):m(D(ae),he-5,Math.min(xe,ge)-d,_+10,"center"))})}),c}let J=i.map((ee,_)=>Z.x+_*K+K/2),ye=i.map(()=>0);return l.forEach((ee,_)=>{let be=u[_].map((U,T)=>I(R?ye[T]+=U:U)),we=[];if(J.forEach((U,T)=>we.push(T?"L":"M",U,be[T])),e.chartType==="area"){let U=R&&_>0?u.slice(0,_).reduce((ne,de)=>ne.map((me,ae)=>me+de[ae]),i.map(()=>0)).map(I):J.map(()=>I(Math.max(q,0))),T=[...we];for(let ne=J.length-1;ne>=0;ne--)T.push("L",J[ne],U[ne]);T.push("Z"),c.push({kind:"path",d:T,fill:f(_),opacity:.25})}c.push({kind:"path",d:we,stroke:f(_),strokeWidth:.5,source:{band:r.kind,elementId:e.id}}),J.forEach((U,T)=>{B<=40&&c.push({kind:"path",d:Po(U,be[T],.7,0,Math.PI*2).slice(0,-4).concat(["Z"]),fill:f(_)}),e.showValues&&m(D(u[_][T]),U-8,be[T]-d-.3,16,"center")})}),c}var Co="0.15 solid #9aa3b2",Ao="#eef1f6";function ct(e,t,n){var r;return{...e,...(t==null?void 0:t.bold)!==void 0?{bold:t.bold}:{},...t!=null&&t.color?{color:t.color}:{},...t!=null&&t.fontSize?{fontSize:t.fontSize}:{},background:(r=t==null?void 0:t.background)!=null?r:e.background,border:(t==null?void 0:t.border)!==void 0?Kt(t.border):e.border,align:n,valign:"middle",wrap:!1}}function qe(e,t,n,r,o,s,a,l,i,u){let f=a.border.top||a.border.right||a.border.bottom||a.border.left;if((a.background||f)&&e.push({kind:"box",x:t,y:n,w:r,h:o,fill:a.background,border:a.border,source:{band:l.kind}}),!s)return;let g={family:a.fontFamily,size:a.fontSize,bold:a.bold,italic:a.italic},w=yt(t,n,r,o,[s],g,a,l.measure);w.source={band:l.kind,value:i,format:u},e.push(w)}function Rn(e){try{return We(e)}catch(t){let n=`#ERR ${t.message}`;return()=>n}}var br=e=>Array.isArray(e)?e:[];function Za(e){let t=e.columns.reduce((o,s)=>{var a;return o+((a=s.width)!=null?a:0)},0),n=e.columns.filter(o=>!o.width).length,r=Math.max(0,e.w-t);return e.columns.map(o=>{var s;return(s=o.width)!=null?s:n?r/n:0})}function Lo(e,t){var a;let n=br(Ae(e.source,t)),r=(a=e.rowHeight)!=null?a:6,o=e.showHeader===!1?0:r,s=e.columns.some(l=>l.sum)?r:0;return Math.max(e.h,o+n.length*r+s)}function Fo(e,t,n,r,o){var c;let s=br(Ae(e.source,t)),a=Ke(o.def,e),l={...a,border:a.border.top||a.border.left?a.border:Kt(Co),padding:[.3,1,.3,1]},i=ct(l,{bold:!0,background:Ao,...e.headerStyle},"center"),u=Za(e),f=(c=e.rowHeight)!=null?c:6,g=[],w=r;if(e.showHeader!==!1){let m=n;e.columns.forEach((E,M)=>{qe(g,m,w,u[M],f,E.header,i,o),m+=u[M]}),w+=f}let k=e.columns.map(m=>Rn(m.expr)),d=e.columns.map(()=>0);if(s.forEach((m,E)=>{let M=n,$={...t,row:m,vars:{...t.vars,rowNum:E+1}};e.columns.forEach((S,P)=>{var H;let L;try{L=k[P]($)}catch(ue){L=`#ERR ${ue.message}`}S.sum&&typeof L=="number"&&(d[P]+=L);let R=ct(l,e.altBackground&&E%2?{background:e.altBackground}:void 0,(H=S.align)!=null?H:typeof L=="number"?"right":"left");qe(g,M,w,u[P],f,je(L,S.format,o.locale),R,o,L,S.format),M+=u[P]}),w+=f}),e.columns.some(m=>m.sum)){let m=n,E=ct(l,{bold:!0,background:"#f7f8fb"},"right");e.columns.forEach((M,$)=>{var P;let S=M.sum?je(d[$],M.format,o.locale):$===0?(P=e.footerLabel)!=null?P:"\uD569\uACC4":"";qe(g,m,w,u[$],f,S,{...E,align:M.sum?"right":"center"},o,M.sum?d[$]:void 0,M.format),m+=u[$]})}return g}function Do(e,t){var d;let n=e.source?br(Ae(e.source,t)):t.rows,r=Rn(e.rowKey),o=Rn(e.columnKey),s=Rn(e.value),a=(d=e.aggregate)!=null?d:"sum",l=new Map,i=[],u=[],f=new Set,g=new Set;n.forEach((c,m)=>{let E={...t,row:c,vars:{...t.vars,rowNum:m+1}},M=je(r(E)),$=je(o(E)),S=Number(s(E));f.has(M)||(f.add(M),i.push(M)),g.has($)||(g.add($),u.push($));for(let P of[`${M}\0${$}`,`${M}\0*`,`*\0${$}`,"*\0*"]){let L=l.get(P);L||l.set(P,L=[]),L.push(Number.isFinite(S)?S:0)}});let w=new Intl.Collator("ko",{numeric:!0});i.sort(w.compare),u.sort(w.compare);let k=c=>{if(!(c!=null&&c.length))return null;switch(a){case"count":return c.length;case"avg":return c.reduce((m,E)=>m+E,0)/c.length;case"min":return c.reduce((m,E)=>E<m?E:m);case"max":return c.reduce((m,E)=>E>m?E:m);default:return c.reduce((m,E)=>m+E,0)}};return{rowKeys:i,colKeys:u,cell:(c,m)=>k(l.get(`${c}\0${m}`)),rowTotal:c=>k(l.get(`${c}\0*`)),colTotal:c=>k(l.get(`*\0${c}`)),total:k(l.get("*\0*"))}}function Io(e,t){var o;let n=Do(e,t),r=(o=e.cellHeight)!=null?o:6;return Math.max(e.h,(n.rowKeys.length+1+(e.totals!==!1?1:0))*r)}function Bo(e,t,n,r,o){var P,L,R,H,ue;let s=Do(e,t),a=e.totals!==!1,l=(P=e.cellHeight)!=null?P:6,i=Ke(o.def,e),u={...i,border:i.border.top||i.border.left?i.border:Kt(Co),padding:[.3,1,.3,1]},f=ct(u,{bold:!0,background:Ao,...e.headerStyle},"center"),g=ct(u,{bold:!0,background:"#f7f8fb"},"right"),w=Math.min((L=e.rowHeaderWidth)!=null?L:25,e.w*.4),k=s.colKeys.length+(a?1:0),d=k?(e.w-w)/k:0,c=u.fontSize,m=Math.max(1,...s.colKeys.map(Q=>o.measure.width(Q,{family:u.fontFamily,size:c,bold:!0,italic:!1})));m>d-2&&(c=Math.max(5,c*((d-2)/m)));let E=Q=>({...Q,fontSize:Math.min(Q.fontSize,c)}),M=[],$=e.totals!==!1?o.locale.startsWith("ko")?"\uD569\uACC4":"Total":"";qe(M,n,r,w,l,(R=e.corner)!=null?R:"",f,o),s.colKeys.forEach((Q,q)=>qe(M,n+w+q*d,r,d,l,Q,E(f),o)),a&&qe(M,n+w+s.colKeys.length*d,r,d,l,$,E(f),o);let S=(H=e.format)!=null?H:"#,##0";if(s.rowKeys.forEach((Q,q)=>{let z=r+(q+1)*l;if(qe(M,n,z,w,l,Q,ct(u,{bold:!0,background:"#f7f8fb"},"left"),o),s.colKeys.forEach((F,D)=>{let G=s.cell(Q,F);qe(M,n+w+D*d,z,d,l,G===null?"":je(G,S,o.locale),E(ct(u,void 0,"right")),o,G!=null?G:void 0,S)}),a){let F=s.rowTotal(Q);qe(M,n+w+s.colKeys.length*d,z,d,l,F===null?"":je(F,S,o.locale),E(g),o,F!=null?F:void 0,S)}}),a){let Q=r+(s.rowKeys.length+1)*l;qe(M,n,Q,w,l,$,ct(u,{bold:!0,background:"#f7f8fb"},"center"),o),s.colKeys.forEach((q,z)=>{let F=s.colTotal(q);qe(M,n+w+z*d,Q,d,l,F===null?"":je(F,S,o.locale),E(g),o,F!=null?F:void 0,S)}),qe(M,n+w+s.colKeys.length*d,Q,d,l,s.total===null?"":je(s.total,S,o.locale),E(g),o,(ue=s.total)!=null?ue:void 0,S)}return M}var Qa=.8,ei=e=>!!e&&!(typeof e=="string"&&e.startsWith("#ERR"));function ti(e,t=e.fontSize){return{family:e.fontFamily,size:t,bold:e.bold,italic:e.italic}}function ni(e,t,n,r){var E,M,$;let o=Ke(n.def,e);if(e.type==="table"||e.type==="crosstab")return n.blank||e.canGrow===!1?{el:e,style:o,needed:e.h}:{el:e,style:o,needed:e.type==="table"?Lo(e,t):Io(e,t)};if(e.type!=="text"&&e.type!=="field")return{el:e,style:o,needed:e.h};let s="",a;if(!n.blank){if(e.type==="text")s=Ye((E=e.text)!=null?E:"",t);else if(a=Ae(e.expr,t),s=a==null||a===""?(M=e.nullText)!=null?M:"":je(a,e.format,n.locale),e.suppressRepeated&&n.previous){let S=n.previous.get(e);n.previous.set(e,s),S===s&&(s="")}}let[l,i,u,f]=o.padding,g=Math.max(1,e.w-f-i),w=ti(o);if(o.shrinkToFit&&s){let S=o.fontSize;for(;S>4&&n.measure.width(s,{...w,size:S})+o.letterSpacing*s.length>g;)S-=.25;w={...w,size:S}}let k=o.wrap&&!o.shrinkToFit?an(s,g,w,n.measure,o.letterSpacing):s.split(/\r?\n/),d=w.size*Ce*o.lineHeight,m=(($=e.canGrow)!=null?$:r)?Math.max(e.h,k.length*d+l+u):e.h;return{el:e,style:o,text:s,value:a,font:w,lines:k,needed:m}}function ri(e,t,n,r,o,s,a){let l=o.border.top||o.border.right||o.border.bottom||o.border.left;return!o.background&&!l?null:{kind:"box",x:e,y:t,w:n,h:r,fill:o.background,border:o.border,source:{band:s.kind,elementId:a,row:s.rowIndex}}}function yt(e,t,n,r,o,s,a,l){let[i,u,f,g]=a.padding,w=s.size*Ce*a.lineHeight,k=o.length*w,d=r-i-f,c=t+i;a.valign==="middle"?c+=(d-k)/2:a.valign==="bottom"&&(c+=d-k);let m=o.map((E,M)=>{let $=l.width(E,s)+a.letterSpacing*[...E].length,S=e+g;return a.align==="center"?S=e+g+(n-g-u-$)/2:a.align==="right"&&(S=e+n-u-$),{text:E,x:S,y:c+M*w+(w-s.size*Ce)/2+s.size*Ce*Qa,width:$}});return{kind:"text",x:e,y:t,w:n,h:r,lines:m,font:s,color:a.color,align:a.align,valign:a.valign,underline:a.underline||void 0,strike:a.strike||void 0,letterSpacing:a.letterSpacing||void 0,text:o.join(`
13
+ `)}}function oi(e,t,n,r,o){let s=e.reduce((u,f)=>u+f,0),a=r/s,l=[],i=t;return e.forEach((u,f)=>{f%2===0&&l.push("M",i,n,"L",i+u*a,n,"L",i+u*a,n+o,"L",i,n+o,"Z"),i+=u*a}),l}function si(e,t,n,r,o,s,a){var f,g,w;let l=String((f=Ae(e.expr,s))!=null?f:"");if(!l||l.startsWith("#ERR")||a.blank)return[];let i=(g=e.color)!=null?g:"#000000",u={band:a.kind,elementId:e.id,row:a.rowIndex,value:l};try{if(e.format==="qr"||e.format==="datamatrix"||e.format==="pdf417"){let $,S,P,L,R;if(e.format==="pdf417"){$=Mn(l).matrix;let Q=$[0].length+4,q=$.length*3+4,z=Math.min(r/Q,o/q);S=z,P=z*3,L=t+(r-Q*z)/2+2*z,R=n+(o-q*z)/2+2*z}else{$=e.format==="qr"?vn(l,(w=e.ecc)!=null?w:"M"):Sn(l);let Q=e.format==="qr"?4:1,q=$.length+Q*2,z=Math.min(r,o);S=P=z/q,L=t+(r-z)/2+Q*S,R=n+(o-z)/2+Q*P}let H=S,ue=[];return $.forEach((Q,q)=>{for(let z=0;z<Q.length;z++){if(!Q[z])continue;let F=z;for(;F+1<Q.length&&Q[F+1];)F++;ue.push("M",L+z*H,R+q*P,"L",L+(F+1)*H,R+q*P,"L",L+(F+1)*H,R+(q+1)*P,"L",L+z*H,R+(q+1)*P,"Z"),z=F}}),[{kind:"path",d:ue,fill:i,source:u}]}let k=e.format==="ean13"?$n(l):kn(l),d=e.showText!==!1,c=Ke(a.def,e),m=Math.min(c.fontSize,9),E=d?m*Ce*1.3:0,M=[{kind:"path",d:oi(k,t,n,r,Math.max(1,o-E)),fill:i,source:u}];if(d){let $={family:c.fontFamily,size:m,bold:!1,italic:!1};M.push(yt(t,n+o-E,r,E,[l],$,{...c,align:"center",valign:"middle",padding:[0,0,0,0],letterSpacing:0},a.measure))}return M}catch{return[yt(t,n,r,o,["(barcode?)"],{family:"sans-serif",size:7,bold:!1,italic:!1},{...Ke(a.def,e),color:"#cc0000"},a.measure)]}}function ut(e,t,n,r,o,s=0){var w,k,d,c,m,E,M,$,S,P;let a=(w=e.canGrow)!=null?w:n.kind==="detail"||n.kind==="groupHeader"||n.kind==="groupFooter"||n.kind==="summary"||n.kind==="title",l=[];for(let L of e.elements)L.visible&&!n.blank&&!ei(Ae(L.visible,t))||l.push(ni(L,t,n,a));let i=Math.max(e.height,s);for(let L of l)i=Math.max(i,L.el.y+L.needed);let u=[],f=(k=n.background)!=null?k:e.background;f&&u.push({kind:"box",x:r,y:o,w:n.width,h:i,fill:f,source:{band:n.kind,row:n.rowIndex}});let g=i-e.height;for(let L of l){let R=L.el,H=R.y+R.h>=e.height-.01,ue=L.needed;((d=R.stretch)!=null?d:H)&&R.type!=="line"&&R.type!=="table"&&R.type!=="crosstab"&&(ue=Math.max(ue,R.h+g,i-R.y));let Q=r+R.x,q=o+R.y;switch(R.type){case"text":case"field":{let z=ri(Q,q,R.w,ue,L.style,n,R.id);if(z&&u.push(z),L.text){let F=yt(Q,q,R.w,ue,L.lines,L.font,L.style,n.measure);F.source={band:n.kind,elementId:R.id,row:n.rowIndex,value:R.type==="field"?L.value:void 0,format:R.type==="field"?R.format:void 0},/docHash/.test(R.type==="text"?R.text:R.expr)&&(F.source.fingerprint=!0),u.push(F)}break}case"line":{let z=R.h===0?0:R.y+R.h>=e.height-.01?R.h+g:R.h;u.push({kind:"line",x1:Q,y1:q,x2:Q+R.w,y2:q+z,width:(c=R.width)!=null?c:.2,color:(m=R.color)!=null?m:"#000000",dash:R.dash,source:{band:n.kind,elementId:R.id}});break}case"rect":{let z=(E=R.width)!=null?E:.2;u.push({kind:"box",x:Q,y:q,w:R.w,h:ue,fill:R.fill,radius:R.radius,stroke:z>0?{width:z,color:(M=R.color)!=null?M:"#000000"}:void 0,source:{band:n.kind,elementId:R.id}});break}case"image":{let z=R.expr?String(($=Ae(R.expr,t))!=null?$:""):(S=R.src)!=null?S:"";z&&!z.startsWith("#ERR")&&!n.blank&&u.push({kind:"image",x:Q,y:q,w:R.w,h:ue,src:z,fit:(P=R.fit)!=null?P:"contain",source:{band:n.kind,elementId:R.id}});break}case"barcode":u.push(...si(R,Q,q,R.w,ue,t,n));break;case"chart":n.blank||u.push(...jo(R,t,{x:Q,y:q,w:R.w,h:ue},n));break;case"table":n.blank||u.push(...Fo(R,t,Q,q,n));break;case"crosstab":n.blank||u.push(...Bo(R,t,Q,q,n));break}}return{height:i,items:u}}var yr=e=>!!e&&!(typeof e=="string"&&e.startsWith("#ERR"));function No(e){return e instanceof Date?e.getTime():typeof e=="number"?e:typeof e=="boolean"?e?1:0:e==null?"":String(e)}var ai=new Intl.Collator("ko",{numeric:!0});function Oo(e,t){let n=No(e),r=No(t);return typeof n=="number"&&typeof r=="number"?n-r:n===r?0:ai.compare(String(n),String(r))}function ii(e,t){if(!t)return e;for(let n of e)if(n.kind==="line")n.y1+=t,n.y2+=t;else if(n.kind==="path"){let r=0;for(let o=0;o<n.d.length;o++){let s=n.d[o];if(typeof s=="string"){r=0;continue}r++%2===1&&(n.d[o]=s+t)}}else if(n.y+=t,n.kind==="text")for(let r of n.lines)r.y+=t;return e}var Ho=new WeakMap;function li(e){let t=Ho.get(e);return t===void 0&&(t=/\bpages?\b|pageRows|pageIndex/.test(JSON.stringify(e.elements)),Ho.set(e,t)),t}function _e(e,t){var o;if(Array.isArray(t))return{rows:t,root:{rows:t}};let n=t!=null?t:{},r=n[(o=e.dataSource)!=null?o:"rows"];return{rows:Array.isArray(r)?r:[],root:n}}function ft(e,t={}){var r;let n={};for(let[o,s]of Object.entries((r=e.params)!=null?r:{}))n[o]=s.default;return{...n,...t}}function qo(e,t,n,r){if(n>=t.length)return null;let o=t[n],s=We(o.by),a=[],l=null;e.forEach(i=>{let u=s({...r,row:i});(!l||Oo(l.key,u)!==0)&&(l={def:o,level:n,key:u,rows:[],children:null},a.push(l)),l.rows.push(i)});for(let i of a)i.children=qo(i.rows,t,n+1,r);return a}function At(e,t={},n={}){let r=typeof performance!="undefined"?performance.now():Date.now(),o=wr(e,t,n,void 0,void 0),s=/\bpages\b/.test(JSON.stringify([e.bands.title,e.bands.columnHeader,e.bands.detail,e.bands.summary,e.bands.groups])),a=s&&o.pages.length>1?wr(e,t,n,o.pages.length,void 0):o;if(e.fingerprint){let l=jt(a.pages);a=wr(e,t,n,s?a.pages.length:void 0,l),a.fingerprint=l}return a.ms=Math.round(((typeof performance!="undefined"?performance.now():Date.now())-r)*10)/10,a}function wr(e,t,n,r,o){var T,ne,de,me,ae,ce,ie,xe,ge,he,Re,j,p,x;lo();let s=(T=n.measure)!=null?T:Et(),a=(ne=n.locale)!=null?ne:"ko",l=(de=n.maxPages)!=null?de:1e4,i=nt(e.page),[u,,f,g]=i.margins,w=rt(e),k=ft(e,n.params),{rows:d,root:c}=_e(e,t),m=new Date,E=o?{docHash:o,docHashShort:o.slice(0,12)}:{docHash:"",docHashShort:""},M={rows:d,allRows:d,params:k,data:c,vars:{now:m,...E}},$=d;if(e.filter){let y=We(e.filter);$=$.filter(h=>yr(y({...M,row:h})))}let S=(me=e.bands.groups)!=null?me:[],P=[...S.filter(y=>y.sort).map(y=>({fn:We(y.by),dir:y.sort==="desc"?-1:1})),...((ae=e.sort)!=null?ae:[]).map(y=>({fn:We(y.replace(/^[-+]/,"")),dir:y.startsWith("-")?-1:1}))];if(P.length){let y=$.map((h,A)=>({row:h,i:A,keys:P.map(C=>C.fn({...M,row:h}))}));y.sort((h,A)=>{for(let C=0;C<P.length;C++){let b=Oo(h.keys[C],A.keys[C])*P[C].dir;if(b)return b}return h.i-A.i}),$=y.map(h=>h.row)}let L={...M,rows:$,allRows:$},R=[],H=e.bands;H.title&&R.push({kind:"title",band:H.title,scopeRows:$,groups:[]});let ue=0,Q=(y,h,A)=>{var C,b;if(!y){let v=Math.max(1,Math.floor((b=(C=H.detail)==null?void 0:C.columns)!=null?b:1));if(H.detail&&v>1){for(let O=0;O<A.length;O+=v){let V=A.slice(O,O+v);R.push({kind:"detail",band:H.detail,row:V[0],rowIndex:ue,localIndex:O,chunk:V,scopeRows:A,groupRows:h.length?A:void 0,groups:h}),ue+=V.length}return}A.forEach((O,V)=>{H.detail&&R.push({kind:"detail",band:H.detail,row:O,rowIndex:ue,localIndex:V,scopeRows:A,groupRows:h.length?A:void 0,groups:h}),ue++});return}for(let v of y){let O=[...h,v];v.def.header&&R.push({kind:"groupHeader",band:v.def.header,row:v.rows[0],scopeRows:v.rows,groupRows:v.rows,groups:O,group:v}),Q(v.children,O,v.rows),v.def.footer&&R.push({kind:"groupFooter",band:v.def.footer,row:v.rows[v.rows.length-1],scopeRows:v.rows,groupRows:v.rows,groups:O,group:v})}};!$.length&&H.noData?R.push({kind:"noData",band:H.noData,scopeRows:$,groups:[]}):Q(qo($,S,0,L),[],$),H.summary&&R.push({kind:"summary",band:H.summary,row:$[$.length-1],scopeRows:$,groups:[]});let q=[],z=[],F=[],D,G=0,Y=0,Z=!1,se=!1,W=new Map,I=(ie=(ce=H.pageFooter)==null?void 0:ce.height)!=null?ie:0,B=null,K=(y,h)=>{var A,C,b,v;return{...L,row:y.row,rows:y.kind==="groupHeader"||y.kind==="groupFooter"||y.kind==="detail"?y.scopeRows:$,groupRows:y.groupRows,pageRows:z[q.length-1],vars:{now:m,...E,page:h,pages:r!=null?r:h,rowNum:y.localIndex!==void 0?y.localIndex+1:void 0,rowIndex:y.rowIndex!==void 0?y.rowIndex+1:void 0,groupKey:(b=(A=y.group)==null?void 0:A.key)!=null?b:(C=y.groups[y.groups.length-1])==null?void 0:C.key,groupLevel:(v=y.group)==null?void 0:v.level}}},N=(y,h={})=>({def:e,measure:s,locale:a,kind:y,width:w,previous:W,...h}),J=()=>{if(q.length>=l)throw new Error(`Report stopped at ${l} pages (maxPages)`);D={number:q.length+1,total:0,width:i.width,height:i.height,items:[]},q.push(D),z.push([]),F.push(B),G=u,H.pageHeader&&!(e.pageHeaderSkipFirst&&q.length===1)&&(G+=H.pageHeader.height),Y=i.height-f-I,Z=!1,se=!1,W.clear()},ye=(y,h,A,C={},b)=>{let v=b?{height:b.height,items:ii(b.items,G)}:ut(y,A,N(h,C),g,G);for(let O of v.items)D.items.push(O);return G+=v.height,se=!0,v.height},ke=(y,h,A,C={})=>ut(y,A,N(h,{...C,previous:void 0}),0,0).height,ve=(y,h,A)=>{var pe,oe;let C=y.band,b=Math.max(1,Math.floor((pe=C.columns)!=null?pe:1)),v=(oe=C.columnGap)!=null?oe:0,O=(w-v*(b-1))/b,V=y.chunk.map((re,fe)=>{var le,Me,Pe;return ut(C,{...h,row:re,vars:{...h.vars,rowNum:((le=y.localIndex)!=null?le:0)+fe+1,rowIndex:((Me=y.rowIndex)!=null?Me:0)+fe+1}},N(y.kind,{...A,rowIndex:((Pe=y.rowIndex)!=null?Pe:0)+fe,previous:void 0,width:O}),g+fe*(O+v),0)});return{height:Math.max(...V.map(re=>re.height)),items:V.flatMap(re=>re.items)}},$e=y=>y.kind==="detail"||y.kind==="groupHeader"||y.kind==="groupFooter",ee=y=>{!H.columnHeader||Z||!$e(y)||(Z=!0,ye(H.columnHeader,"columnHeader",K(y,D.number)))},_=y=>{for(let h of y.groups){if(h===y.group&&y.kind==="groupHeader")break;h.def.repeatHeader&&h.def.header&&ye(h.def.header,"groupHeader",{...K(y,D.number),rows:h.rows,groupRows:h.rows,row:h.rows[0]})}},be=y=>{if(!e.fillEmptyRows||!H.detail)return;let h=H.detail.height;if(h>.5)for(;G+h<=y+.01&&!(ye(H.detail,"detail",{...L,rows:$},{blank:!0})<=0););};J();let we=new Set;for(let y=0;y<R.length;y++){let h=R[y],A=K(h,D.number);if(h.band.visible&&!yr(Ae(h.band.visible,A)))continue;h.kind==="groupHeader"&&((xe=h.group)!=null&&xe.def.resetPageNumber)&&(B&&se?(be(Y),B=h.group,J()):(B=h.group,F[q.length-1]=B));let C=h.band.pageBreakBefore&&se||h.kind==="groupHeader"&&((ge=h.group)==null?void 0:ge.def.newPage)&&se&&!h.group.def.resetPageNumber&&we.has(h.group.level);h.kind==="groupHeader"&&h.group&&we.add(h.group.level),C&&(be(Y),J());let b={rowIndex:h.rowIndex};h.kind==="detail"&&((he=H.detail)!=null&&he.altBackground)&&((Re=h.localIndex)!=null?Re:0)%2===1&&(b.background=H.detail.altBackground);let v=!li(h.band)&&!h.band.elements.some(oe=>oe.type==="field"&&oe.suppressRepeated),O=h.chunk?ve(h,A,b):ut(h.band,A,N(h.kind,{...b,previous:void 0}),g,0),V=O.height;if(!Z&&H.columnHeader&&$e(h)&&(V+=H.columnHeader.height),h.kind==="groupHeader"){let oe=(p=(j=h.group)==null?void 0:j.def.keepWithRows)!=null?p:1;for(let re=y+1,fe=0;re<R.length&&fe<oe&&!(R[re].kind!=="detail"&&R[re].kind!=="groupHeader");re++)V+=ke(R[re].band,R[re].kind,K(R[re],D.number)),R[re].kind==="detail"&&fe++}G+V>Y+.01&&se?(be(Y),J(),ee(h),_(h)):ee(h);let pe=K(h,D.number);if(ye(h.band,h.kind,pe,b,v||h.chunk?O:void 0),h.chunk?z[q.length-1].push(...h.chunk):h.kind==="detail"&&h.row&&z[q.length-1].push(h.row),e.fillEmptyRows&&h.kind==="detail"&&((x=R[y+1])==null?void 0:x.kind)!=="detail"){let re=R.slice(y+1).filter(fe=>fe.kind==="groupFooter"||fe.kind==="summary").reduce((fe,le)=>fe+ke(le.band,le.kind,K(le,D.number)),0);R.slice(y+1).some(fe=>fe.kind==="detail")||be(Y-re)}h.band.pageBreakAfter&&y<R.length-1&&J()}!R.length&&e.fillEmptyRows&&be(Y);let U=new Map;F.forEach((y,h)=>{var A;return U.set(y,[...(A=U.get(y))!=null?A:[],h])});for(let y of U.values())y.forEach((h,A)=>{q[h].number=A+1,q[h].total=y.length});return q.forEach((y,h)=>{let A=F[h],C={...L,row:z[h][0],rows:z[h],pageRows:z[h],groupRows:A==null?void 0:A.rows,vars:{now:m,...E,page:y.number,pages:y.total,pageIndex:h+1,pageCount:q.length,groupKey:A==null?void 0:A.key,lastPage:h===q.length-1,firstPage:h===0}},b=[],v=(O,V,pe)=>{O&&(O.visible&&!yr(Ae(O.visible,C))||b.push(...ut(O,C,N(V,{previous:void 0}),g,pe,0).items))};e.pageHeaderSkipFirst&&h===0||v(H.pageHeader,"pageHeader",u),v(H.pageFooter,"pageFooter",i.height-f-I),y.items.push(...b)}),mo(q,{watermark:e.watermark,emboss:e.emboss},i,(y,h)=>({...L,rows:z[h],pageRows:z[h],vars:{now:m,...E,page:y.number,pages:y.total,pageIndex:h+1,pageCount:q.length}}),s),{pages:q,width:i.width,height:i.height,rowCount:$.length,ms:0}}var ci=(()=>{let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n>>>0}return e})();function ui(e){let t=4294967295;for(let n=0;n<e.length;n++)t=ci[(t^e[n])&255]^t>>>8;return(t^4294967295)>>>0}var zo=new TextEncoder;function Tn(e){let t=e.map(f=>{let g=zo.encode(f.name),w=typeof f.data=="string"?zo.encode(f.data):f.data;return{name:g,data:w,crc:ui(w),offset:0}}),n=t.reduce((f,g)=>f+30+g.name.length+g.data.length,0),r=t.reduce((f,g)=>f+46+g.name.length,0),o=new Uint8Array(n+r+22),s=new DataView(o.buffer),a=0,l=0,i=33;for(let f of t)f.offset=a,s.setUint32(a,67324752,!0),s.setUint16(a+4,20,!0),s.setUint16(a+6,2048,!0),s.setUint16(a+8,0,!0),s.setUint16(a+10,l,!0),s.setUint16(a+12,i,!0),s.setUint32(a+14,f.crc,!0),s.setUint32(a+18,f.data.length,!0),s.setUint32(a+22,f.data.length,!0),s.setUint16(a+26,f.name.length,!0),s.setUint16(a+28,0,!0),o.set(f.name,a+30),o.set(f.data,a+30+f.name.length),a+=30+f.name.length+f.data.length;let u=a;for(let f of t)s.setUint32(a,33639248,!0),s.setUint16(a+4,20,!0),s.setUint16(a+6,20,!0),s.setUint16(a+8,2048,!0),s.setUint16(a+10,0,!0),s.setUint16(a+12,l,!0),s.setUint16(a+14,i,!0),s.setUint32(a+16,f.crc,!0),s.setUint32(a+20,f.data.length,!0),s.setUint32(a+24,f.data.length,!0),s.setUint16(a+28,f.name.length,!0),s.setUint16(a+30,0,!0),s.setUint16(a+32,0,!0),s.setUint16(a+34,0,!0),s.setUint16(a+36,0,!0),s.setUint32(a+38,0,!0),s.setUint32(a+42,f.offset,!0),o.set(f.name,a+46),a+=46+f.name.length;return s.setUint32(a,101010256,!0),s.setUint16(a+8,t.length,!0),s.setUint16(a+10,t.length,!0),s.setUint32(a+12,a-u,!0),s.setUint32(a+16,u,!0),o}function _t(e){let t="";for(let n=e+1;n>0;n=Math.floor((n-1)/26))t=String.fromCharCode(65+(n-1)%26)+t;return t}var fi=Date.UTC(1899,11,30),di=e=>(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds())-fi)/864e5,pi=/[\u0000-\u0008\u000b\u000c\u000e-\u001f￾￿]/g,Vt=e=>e.replace(pi,"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Xt=e=>{if(!e)return"";let t=e.replace("#","");return/^[0-9a-f]{6}$/i.test(t)?`FF${t.toUpperCase()}`:/^[0-9a-f]{3}$/i.test(t)?`FF${[...t].map(n=>n+n).join("").toUpperCase()}`:/^[0-9a-f]{8}$/i.test(t)?t.toUpperCase():""},mi={Letter:1,Legal:5,A3:8,A4:9,A5:11,B4:12,B5:13},wt=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
14
+ `,xr="http://schemas.openxmlformats.org/spreadsheetml/2006/main",Uo="http://schemas.openxmlformats.org/officeDocument/2006/relationships",kr=class{constructor(){this.fonts=['<font><sz val="10"/><name val="\uB9D1\uC740 \uACE0\uB515"/><family val="3"/></font>'];this.fills=['<fill><patternFill patternType="none"/></fill>','<fill><patternFill patternType="gray125"/></fill>'];this.borders=["<border><left/><right/><top/><bottom/><diagonal/></border>"];this.numFmts=[];this.xfs=['<xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/>'];this.idx=new Map;this.fmtIds=new Map}intern(t,n){let r=`${t.length===0,""}${n}`,o=t.indexOf(r);return o>=0?o:(t.push(n),t.length-1)}id(t){var d,c,m,E,M,$;if(!t)return 0;let n=JSON.stringify(t),r=this.idx.get(n);if(r!==void 0)return r;let o=(d=t.font)!=null?d:{},s=this.intern(this.fonts,`<font>${o.bold?"<b/>":""}${o.italic?"<i/>":""}${o.strike?"<strike/>":""}${o.underline?"<u/>":""}<sz val="${(c=o.size)!=null?c:10}"/>${Xt(o.color)?`<color rgb="${Xt(o.color)}"/>`:""}<name val="${Vt((m=o.name)!=null?m:"\uB9D1\uC740 \uACE0\uB515")}"/><family val="3"/></font>`),a=t.fill&&Xt(t.fill)?this.intern(this.fills,`<fill><patternFill patternType="solid"><fgColor rgb="${Xt(t.fill)}"/><bgColor indexed="64"/></patternFill></fill>`):0,l=(S,P)=>P?`<${S} style="${P.style}"><color rgb="${Xt(P.color)||"FF000000"}"/></${S}>`:`<${S}/>`,i=(E=t.border)!=null?E:{},u=t.border?this.intern(this.borders,`<border>${l("left",i.left)}${l("right",i.right)}${l("top",i.top)}${l("bottom",i.bottom)}<diagonal/></border>`):0,f=0;t.fmt&&t.fmt!=="General"&&(f=($=(M={0:1,"0.00":2,"#,##0":3,"#,##0.00":4,"0%":9,"0.00%":10,"yyyy-mm-dd":14}[t.fmt])!=null?M:this.fmtIds.get(t.fmt))!=null?$:0,f||(f=164+this.numFmts.length,this.numFmts.push(`<numFmt numFmtId="${f}" formatCode="${Vt(t.fmt)}"/>`),this.fmtIds.set(t.fmt,f)));let g=t.align||t.valign||t.wrap?`<alignment${t.align?` horizontal="${t.align}"`:""}${t.valign?` vertical="${t.valign}"`:""}${t.wrap?' wrapText="1"':""}/>`:"",w=`numFmtId="${f}" fontId="${s}" fillId="${a}" borderId="${u}" xfId="0"`+(f?' applyNumberFormat="1"':"")+(s?' applyFont="1"':"")+(a?' applyFill="1"':"")+(u?' applyBorder="1"':"")+(g?' applyAlignment="1"':"");this.xfs.push(g?`<xf ${w}>${g}</xf>`:`<xf ${w}/>`);let k=this.xfs.length-1;return this.idx.set(n,k),k}xml(){return wt+`<styleSheet xmlns="${xr}">`+(this.numFmts.length?`<numFmts count="${this.numFmts.length}">${this.numFmts.join("")}</numFmts>`:"")+`<fonts count="${this.fonts.length}">${this.fonts.join("")}</fonts><fills count="${this.fills.length}">${this.fills.join("")}</fills><borders count="${this.borders.length}">${this.borders.join("")}</borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="${this.xfs.length}">${this.xfs.join("")}</cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles></styleSheet>`}};function hi(e){let t=new Set;return e.map((n,r)=>{var a;let o=((a=n.name)!=null?a:`Sheet${r+1}`).replace(/[[\]:*?/\\]/g," ").slice(0,31).trim()||`Sheet${r+1}`,s=o;for(let l=2;t.has(s.toLowerCase());l++)s=`${o.slice(0,27)} (${l})`;return t.add(s.toLowerCase()),s})}function Yt(e,t={}){var a;let n=new kr,r=hi(e),o=e.map(l=>{var P,L,R,H,ue,Q,q,z,F,D,G,Y,Z;let i=[],u=0;for(let se=0;se<l.rows.length;se++)u=Math.max(u,(L=(P=l.rows[se])==null?void 0:P.length)!=null?L:0);l.widths&&(u=Math.max(u,l.widths.length));let f=Math.max(l.rows.length,(H=(R=l.heights)==null?void 0:R.length)!=null?H:0);for(let se=0;se<f;se++){let W=(ue=l.rows[se])!=null?ue:[],I=(Q=l.heights)==null?void 0:Q[se],B="";for(let K=0;K<W.length;K++){let N=W[K];if(!N)continue;let J=`${_t(K)}${se+1}`,ye=N.v,ke=N.s;ye instanceof Date&&(Number.isNaN(ye.getTime())?ye=null:(ye=di(ye),ke={...ke,fmt:(q=ke==null?void 0:ke.fmt)!=null?q:"yyyy-mm-dd"}));let ve=n.id(ke),$e=ve?` s="${ve}"`:"";ye==null||ye===""?B+=`<c r="${J}"${$e}/>`:typeof ye=="number"?B+=Number.isFinite(ye)?`<c r="${J}"${$e}><v>${ye}</v></c>`:`<c r="${J}"${$e}/>`:typeof ye=="boolean"?B+=`<c r="${J}"${$e} t="b"><v>${ye?1:0}</v></c>`:B+=`<c r="${J}"${$e} t="inlineStr"><is><t xml:space="preserve">${Vt(String(ye))}</t></is></c>`}(B||I)&&i.push(`<row r="${se+1}"${I?` ht="${Math.round(I*100)/100}" customHeight="1"`:""}>${B}</row>`)}let g=`A1:${_t(Math.max(0,u-1))}${Math.max(1,f)}`,w=`<sheetViews><sheetView workbookViewId="0"${l.showGrid===!1?' showGridLines="0"':""}>${l.freezeRows?`<pane ySplit="${l.freezeRows}" topLeftCell="A${l.freezeRows+1}" activePane="bottomLeft" state="frozen"/>`:""}</sheetView></sheetViews>`,k=(z=l.widths)!=null&&z.length?`<cols>${l.widths.map((se,W)=>`<col min="${W+1}" max="${W+1}" width="${Math.round(se*100)/100}" customWidth="1"/>`).join("")}</cols>`:"",d=(F=l.merges)!=null&&F.length?`<mergeCells count="${l.merges.length}">${l.merges.map(([se,W,I,B])=>`<mergeCell ref="${_t(W)}${se+1}:${_t(B)}${I+1}"/>`).join("")}</mergeCells>`:"",c=l.autoFilter&&u?`<autoFilter ref="A${l.freezeRows||1}:${_t(u-1)}${Math.max(1,f)}"/>`:"",m=l.page,E=m!=null&&m.margins?`<pageMargins left="${(m.margins[3]/25.4).toFixed(3)}" right="${(m.margins[1]/25.4).toFixed(3)}" top="${(m.margins[0]/25.4).toFixed(3)}" bottom="${(m.margins[2]/25.4).toFixed(3)}" header="0" footer="0"/>`:"",M=m?`<pageSetup paperSize="${(G=mi[(D=m.paper)!=null?D:"A4"])!=null?G:9}" orientation="${m.landscape?"landscape":"portrait"}"${m.fitWidth?` fitToWidth="1" fitToHeight="${(Y=m.fitHeight)!=null?Y:0}"`:""}/>`:"",$=(Z=l.breaks)!=null&&Z.length?`<rowBreaks count="${l.breaks.length}" manualBreakCount="${l.breaks.length}">${l.breaks.map(se=>`<brk id="${se}" max="16383" man="1"/>`).join("")}</rowBreaks>`:"",S=m!=null&&m.fitWidth?'<sheetPr><pageSetUpPr fitToPage="1"/></sheetPr>':"";return wt+`<worksheet xmlns="${xr}" xmlns:r="${Uo}">${S}<dimension ref="${g}"/>${w}<sheetFormatPr defaultRowHeight="15"/>${k}<sheetData>${i.join("")}</sheetData>${c}${d}${E}${M}${$}</worksheet>`}),s=[{name:"[Content_Types].xml",data:wt+'<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/>'+e.map((l,i)=>`<Override PartName="/xl/worksheets/sheet${i+1}.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/>`).join("")+'<Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/><Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/></Types>'},{name:"_rels/.rels",data:wt+'<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/></Relationships>'},{name:"docProps/core.xml",data:wt+`<cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:creator>${Vt((a=t.creator)!=null?a:"FreeReport")}</dc:creator><dcterms:created xsi:type="dcterms:W3CDTF">${new Date().toISOString().slice(0,19)}Z</dcterms:created></cp:coreProperties>`},{name:"xl/workbook.xml",data:wt+`<workbook xmlns="${xr}" xmlns:r="${Uo}"><sheets>${r.map((l,i)=>`<sheet name="${Vt(l)}" sheetId="${i+1}" r:id="rId${i+1}"/>`).join("")}</sheets></workbook>`},{name:"xl/_rels/workbook.xml.rels",data:wt+`<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">${e.map((l,i)=>`<Relationship Id="rId${i+1}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet${i+1}.xml"/>`).join("")}<Relationship Id="rId${e.length+1}" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>`},...o.map((l,i)=>({name:`xl/worksheets/sheet${i+1}.xml`,data:l}))];return s.push({name:"xl/styles.xml",data:n.xml()}),Tn(s)}var Wo=1.9,gi=72/25.4,dt=e=>{if(e)return e.style==="double"?{style:"double",color:e.color}:e.style==="dashed"?{style:"dashed",color:e.color}:e.style==="dotted"?{style:"dotted",color:e.color}:{style:e.width>=.6?"thick":e.width>=.35?"medium":e.width<.12?"hair":"thin",color:e.color}};function Ko(e){if(!(!e||e==="korean"||e==="koreanNumber"||e==="bizNo"||e==="upper"||e==="lower"))return rr(e)?e.replace(/dddd/g,"aaaa").replace(/ddd/g,"aaa").replace(/\ba\b|tt/g,"AM/PM").replace(/H/g,"h"):e.replace(/([^"\\#0,.%;()₩$€\-\s])/gu,(t,n,r,o)=>/"/.test(o.slice(0,r).replace(/[^"]/g,"").length%2?'"':"")?t:`"${t}"`).replace(/""/g,"")}function Go(e,t){let n=[...new Set(e.map(o=>Math.round(o*10)/10))].sort((o,s)=>o-s),r=[];for(let o of n)(!r.length||o-r[r.length-1]>t)&&r.push(o);return r}var Je=(e,t)=>{let n=0;for(let r=1;r<e.length;r++)Math.abs(e[r]-t)<Math.abs(e[n]-t)&&(n=r);return n};function Lt(e,t,n={}){var w,k;let r=nt(t.page),o=d=>{var c;return((c=d.source)==null?void 0:c.band)!=="watermark"},s=[];for(let d of e.pages)for(let c of d.items)o(c)&&(c.kind==="text"||c.kind==="box"?s.push(c.x,c.x+c.w):c.kind==="line"&&Math.abs(c.x1-c.x2)<.01&&s.push(c.x1));let a=Go(s.length?s:[r.margins[3],r.width-r.margins[1]],1.2),l=a.slice(1).map((d,c)=>Math.max(.5,(d-a[c])/Wo)),i=d=>{var c,m;return{name:d,rows:[],widths:l,heights:[],merges:[],breaks:[],showGrid:!1,page:{paper:typeof((c=t.page)==null?void 0:c.size)=="string"?t.page.size:"A4",landscape:((m=t.page)==null?void 0:m.orientation)==="landscape",margins:r.margins,fitWidth:!0,fitHeight:n.onePerPage?1:e.pages.length}}},u=[],f=i((k=(w=n.sheetName)!=null?w:t.name)!=null?k:"Report");u.push(f);let g=0;return e.pages.forEach((d,c)=>{var R,H,ue,Q,q,z;n.onePerPage&&c>0&&(f=i(`${c+1}`),u.push(f),g=0);let m=d.items.filter(o),E=[];for(let F of m)F.kind==="text"||F.kind==="box"?E.push(F.y,F.y+F.h):F.kind==="line"&&Math.abs(F.y1-F.y2)<.01&&E.push(F.y1);if(!E.length)return;let M=Go(E,.8);c>0&&!n.onePerPage&&f.breaks.push(g),M.slice(1).forEach((F,D)=>{f.heights[g+D]=Math.max(2,(F-M[D])*gi)});let $=(F,D)=>{var Y,Z,se,W;let G=(se=(Y=f.rows)[Z=g+F])!=null?se:Y[Z]=[];return(W=G[D])!=null?W:G[D]={v:null,s:{}}},S=(F,D,G,Y)=>{let Z=Je(a,F),se=Math.max(Z+1,Je(a,F+G)),W=Je(M,D),I=Math.max(W+1,Je(M,D+Y));return{r1:W,c1:Z,r2:I-1,c2:se-1}},P=(F,D)=>{for(let G=F.c1;G<=F.c2;G++){if(D.top){let Y=$(F.r1,G).s;Y.border={...Y.border,top:dt(D.top)}}if(D.bottom){let Y=$(F.r2,G).s;Y.border={...Y.border,bottom:dt(D.bottom)}}}for(let G=F.r1;G<=F.r2;G++){if(D.left){let Y=$(G,F.c1).s;Y.border={...Y.border,left:dt(D.left)}}if(D.right){let Y=$(G,F.c2).s;Y.border={...Y.border,right:dt(D.right)}}}},L=new Set;for(let F of m)if(F.kind==="box"){let D=S(F.x,F.y,F.w,F.h);if(F.fill)for(let G=D.r1;G<=D.r2;G++)for(let Y=D.c1;Y<=D.c2;Y++)$(G,Y).s.fill=F.fill;if(F.border&&P(D,F.border),F.stroke&&F.stroke.width>0){let G={width:F.stroke.width,style:(R=F.stroke.dash)!=null?R:"solid",color:F.stroke.color};P(D,{top:G,right:G,bottom:G,left:G})}}else if(F.kind==="line"){let D={width:F.width,style:(H=F.dash)!=null?H:"solid",color:F.color};if(Math.abs(F.y1-F.y2)<.01){let G=Je(M,F.y1),Y=Je(a,Math.min(F.x1,F.x2)),Z=Je(a,Math.max(F.x1,F.x2));for(let se=Y;se<Z;se++)if(G<M.length-1){let W=$(G,se).s;W.border={...W.border,top:dt(D)}}else{let W=$(G-1,se).s;W.border={...W.border,bottom:dt(D)}}}else if(Math.abs(F.x1-F.x2)<.01){let G=Je(a,F.x1),Y=Je(M,Math.min(F.y1,F.y2)),Z=Je(M,Math.max(F.y1,F.y2));for(let se=Y;se<Z;se++)if(G<a.length-1){let W=$(se,G).s;W.border={...W.border,left:dt(D)}}else{let W=$(se,G-1).s;W.border={...W.border,right:dt(D)}}}}else if(F.kind==="text"){let D=S(F.x,F.y,F.w,F.h),G=`${D.r1}:${D.c1}`,Y=$(D.r1,D.c1),Z=(ue=F.source)==null?void 0:ue.value,se=Ko((Q=F.source)==null?void 0:Q.format),W=typeof Z=="number"&&Number.isFinite(Z)&&((q=F.source)==null?void 0:q.format)!=="korean"&&((z=F.source)==null?void 0:z.format)!=="koreanNumber";L.has(G)&&Y.v!==null?Y.v=`${Y.v}
15
+ ${F.text}`:Y.v=W||Z instanceof Date?Z:F.text,L.add(G),Object.assign(Y.s,{font:{size:Math.round(F.font.size*2)/2,bold:F.font.bold||void 0,italic:F.font.italic||void 0,underline:F.underline,strike:F.strike,color:F.color},align:F.align==="justify"?"left":F.align,valign:F.valign==="middle"?"center":F.valign,wrap:F.lines.length>1||void 0,fmt:W||Z instanceof Date?se:void 0}),(D.r2>D.r1||D.c2>D.c1)&&(f.merges.some(([B,K,N,J])=>!(g+D.r2<B||g+D.r1>N||D.c2<K||D.c1>J))||f.merges.push([g+D.r1,D.c1,g+D.r2,D.c2]))}g+=M.length-1}),Yt(u)}function Ft(e,t,n={}){var d,c,m,E,M,$;let{rows:r,root:o}=_e(e,t),s=ft(e,n.params),l=[...(c=(d=e.bands.detail)==null?void 0:d.elements.filter(S=>S.type==="field"||S.type==="text"))!=null?c:[]].sort((S,P)=>S.y-P.y||S.x-P.x),i=(E=(m=e.bands.columnHeader)==null?void 0:m.elements.filter(S=>S.type==="text"))!=null?E:[],u=S=>{if(S.name)return S.name;let P=S.x+S.w/2,L=i.find(R=>R.x<=P&&R.x+R.w>=P);return L?L.text.replace(/\{[^}]*\}/g,"").trim():S.type==="field"?S.expr:S.text},f=l.map(S=>({v:u(S),s:{font:{bold:!0},fill:"F2F4F7",border:{bottom:{style:"thin"}},align:"center"}})),g=[f],w={rows:r,allRows:r,params:s,data:o,vars:{now:new Date}};r.forEach((S,P)=>{let L={...w,row:S,vars:{...w.vars,rowNum:P+1,rowIndex:P+1}};g.push(l.map(R=>{if(R.type==="text")return{v:Ye(R.text,L)};let H=Ae(R.expr,L);return typeof H=="number"||H instanceof Date?{v:H,s:{fmt:Ko(R.format)}}:{v:H==null?"":je(H,R.format)}}))});let k=l.map((S,P)=>{var L;return Math.min(60,Math.max(6,String((L=f[P].v)!=null?L:"").length*2,S.w/Wo))});return Yt([{name:($=(M=n.sheetName)!=null?M:e.name)!=null?$:"Data",rows:g,widths:k,freezeRows:1,autoFilter:!0}])}function Pn(e,t,n={}){var f,g;let{rows:r,root:o}=_e(e,t),s=ft(e,n.params),a=((g=(f=e.bands.detail)==null?void 0:f.elements.filter(w=>w.type==="field"))!=null?g:[]).sort((w,k)=>w.y-k.y||w.x-k.x),l=(w,k=!1)=>{let d=!k&&/^[=+\-@\t\r]/.test(w)?`'${w}`:w;return/[",\n\r]/.test(d)?`"${d.replace(/"/g,'""')}"`:d},i=[a.map(w=>{var k;return l((k=w.name)!=null?k:w.expr)}).join(",")],u={rows:r,allRows:r,params:s,data:o,vars:{now:new Date}};return r.forEach((w,k)=>{let d={...u,row:w,vars:{...u.vars,rowNum:k+1}};i.push(a.map(c=>{let m=Ae(c.expr,d);return typeof m=="number"?l(String(m),!0):l(je(m,c.format))}).join(","))}),"\uFEFF"+i.join(`\r
16
+ `)}var Xe=e=>Math.round(e*7200/25.4),bi=25.4/72,_o=e=>e.replace(/[\u0000-\u0008\u000b\u000c\u000e-\u001f￾￿]/g,"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Mr=e=>{let t=En(e);return t&&t[3]>0?"#"+t.slice(0,3).map(n=>Math.round(n).toString(16).padStart(2,"0")).join("").toUpperCase():null},$r='xmlns:ha="http://www.hancom.co.kr/hwpml/2011/app" xmlns:hp="http://www.hancom.co.kr/hwpml/2011/paragraph" xmlns:hp10="http://www.hancom.co.kr/hwpml/2016/paragraph" xmlns:hs="http://www.hancom.co.kr/hwpml/2011/section" xmlns:hc="http://www.hancom.co.kr/hwpml/2011/core" xmlns:hh="http://www.hancom.co.kr/hwpml/2011/head" xmlns:hhs="http://www.hancom.co.kr/hwpml/2011/history" xmlns:hm="http://www.hancom.co.kr/hwpml/2011/master-page" xmlns:hpf="http://www.hancom.co.kr/schema/2011/hpf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf/" xmlns:ooxmlchart="http://www.hancom.co.kr/hwpml/2016/ooxmlchart" xmlns:hwpunitchar="http://www.hancom.co.kr/hwpml/2016/HwpUnitChar" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"',xt='<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>',Xo=["\uB9D1\uC740 \uACE0\uB515","\uB098\uB214\uACE0\uB515"],yi=e=>/nanum\s*gothic|나눔고딕/i.test(e)?1:0,Sr=["HANGUL","LATIN","HANJA","JAPANESE","OTHER","SYMBOL","USER"],wi=["0.1","0.12","0.15","0.2","0.25","0.3","0.4","0.5","0.6","0.7","1.0","1.5","2.0","3.0","4.0","5.0"],Jt=class{constructor(t){this.first=t;this.list=[];this.ids=new Map}id(t){let n=JSON.stringify(t),r=this.ids.get(n);return r===void 0&&(r=this.first+this.list.length,this.ids.set(n,r),this.list.push(t)),r}};function jn(e,t){var o;if(!t||t.width<=0)return`<hh:${e} type="NONE" width="0.1 mm" color="#000000"/>`;let n=t.style==="dashed"?"DASH":t.style==="dotted"?"DOT":t.style==="double"?"DOUBLE_SLIM":"SOLID",r=wi.reduce((s,a)=>Math.abs(+a-t.width)<Math.abs(+s-t.width)?a:s);return`<hh:${e} type="${n}" width="${r} mm" color="${(o=Mr(t.color))!=null?o:"#000000"}"/>`}function vr(e,t){let n=t.fill?`<hc:fillBrush><hc:winBrush faceColor="${t.fill}" hatchColor="#000000" alpha="0"/></hc:fillBrush>`:"";return`<hh:borderFill id="${e}" threeD="0" shadow="0" centerLine="NONE" breakCellSeparateLine="0"><hh:slash type="NONE" Crooked="0" isCounter="0"/><hh:backSlash type="NONE" Crooked="0" isCounter="0"/>`+jn("leftBorder",t.left)+jn("rightBorder",t.right)+jn("topBorder",t.top)+jn("bottomBorder",t.bottom)+`<hh:diagonal type="SOLID" width="0.1 mm" color="#000000"/>${n}</hh:borderFill>`}function xi(e,t){let n=r=>Sr.map(o=>`${o.toLowerCase()}="${r}"`).join(" ");return`<hh:charPr id="${e}" height="${t.size}" textColor="${t.color}" shadeColor="none" useFontSpace="0" useKerning="0" symMark="NONE" borderFillIDRef="2"><hh:fontRef ${n(t.font)}/><hh:ratio ${n(100)}/><hh:spacing ${n(t.spacing)}/><hh:relSz ${n(100)}/><hh:offset ${n(0)}/>`+(t.italic?"<hh:italic/>":"")+(t.bold?"<hh:bold/>":"")+`<hh:underline type="${t.underline?"BOTTOM":"NONE"}" shape="SOLID" color="${t.color}"/><hh:strikeout shape="${t.strike?"SOLID":"NONE"}" color="${t.color}"/><hh:outline type="NONE"/><hh:shadow type="NONE" color="#B2B2B2" offsetX="10" offsetY="10"/></hh:charPr>`}function ki(e,t){return`<hh:paraPr id="${e}" tabPrIDRef="0" condense="0" fontLineHeight="0" snapToGrid="0" suppressLineNumbers="0" checked="0"><hh:align horizontal="${t.align}" vertical="BASELINE"/><hh:heading type="NONE" idRef="0" level="0"/><hh:breakSetting breakLatinWord="KEEP_WORD" breakNonLatinWord="BREAK_WORD" widowOrphan="0" keepWithNext="0" keepLines="0" pageBreakBefore="0" lineWrap="SQUEEZE"/><hh:autoSpacing eAsianEng="0" eAsianNum="0"/><hh:margin><hc:intent value="0" unit="HWPUNIT"/><hc:left value="0" unit="HWPUNIT"/><hc:right value="0" unit="HWPUNIT"/><hc:prev value="0" unit="HWPUNIT"/><hc:next value="0" unit="HWPUNIT"/></hh:margin><hh:lineSpacing type="PERCENT" value="${t.spacing}" unit="HWPUNIT"/><hh:border borderFillIDRef="2" offsetLeft="0" offsetRight="0" offsetTop="0" offsetBottom="0" connect="0" ignoreMargin="0"/></hh:paraPr>`}function Vo(e,t){let n=[...new Set(e.map(o=>Math.round(o*10)/10))].sort((o,s)=>o-s),r=[];for(let o of n)(!r.length||o-r[r.length-1]>t)&&r.push(o);return r}var pt=(e,t)=>{let n=0;for(let r=1;r<e.length;r++)Math.abs(e[r]-t)<Math.abs(e[n]-t)&&(n=r);return n};function $i(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);if(e.length>24&&e[0]===137&&e[1]===80)return[t.getUint32(16),t.getUint32(20)];if(e.length>4&&e[0]===255&&e[1]===216)for(let n=2;n+9<e.length;){if(e[n]!==255)return null;let r=e[n+1],o=t.getUint16(n+2);if(r>=192&&r<=207&&r!==196&&r!==200&&r!==204)return[t.getUint16(n+7),t.getUint16(n+5)];n+=2+o}return null}function vi(e){let t=/^data:image\/(png|jpe?g);base64,(.*)$/is.exec(e.trim());if(!t||typeof atob!="function")return null;try{let n=atob(t[2].replace(/\s+/g,"")),r=new Uint8Array(n.length);for(let o=0;o<n.length;o++)r[o]=n.charCodeAt(o);return{bytes:r,ext:t[1].toLowerCase()==="png"?"png":"jpg"}}catch{return null}}function Cn(e,t){var W;let n=nt(t.page),r=e.width||n.width,o=e.height||n.height,s=new Jt(0),a=new Jt(0),l=new Jt(3),i={top:void 0,right:void 0,bottom:void 0,left:void 0,fill:null};s.id({font:0,size:1e3,color:"#000000",bold:!1,italic:!1,underline:!1,strike:!1,spacing:0});let u=s.id({font:0,size:100,color:"#000000",bold:!1,italic:!1,underline:!1,strike:!1,spacing:0});a.id({align:"LEFT",spacing:160});let f=a.id({align:"LEFT",spacing:100}),g=l.id(i),w=[],k=new Map,d=1e3,c=0,m=[],E=()=>`<hp:p id="${c++}" paraPrIDRef="${f}" styleIDRef="0" pageBreak="0" columnBreak="0" merged="0"><hp:run charPrIDRef="${u}"/></hp:p>`,M=I=>I.flatMap(B=>{var ve,$e,ee;let K=B.font.size*bi,N=B.lines.length>1?(B.lines[B.lines.length-1].y-B.lines[0].y)/(B.lines.length-1):K*1.25,J=s.id({font:yi(B.font.family),size:Math.max(100,Math.round(B.font.size*100)),color:(ve=Mr(B.color))!=null?ve:"#000000",bold:B.font.bold,italic:B.font.italic,underline:!!B.underline,strike:!!B.strike,spacing:Math.max(-50,Math.min(50,Math.round((($e=B.letterSpacing)!=null?$e:0)/K*100)))}),ye=a.id({align:(ee={left:"LEFT",center:"CENTER",right:"RIGHT",justify:"JUSTIFY"}[B.align])!=null?ee:"LEFT",spacing:Math.max(80,Math.min(300,Math.round(N/K*100)))});return B.lines.filter((_,be)=>be===0||_.y<=B.y+B.h+.5).map(_=>`<hp:p id="${c++}" paraPrIDRef="${ye}" styleIDRef="0" pageBreak="0" columnBreak="0" merged="0"><hp:run charPrIDRef="${J}"><hp:t>${_o(_.text.replace(/\t/g," "))}</hp:t></hp:run></hp:p>`)}),$=(I,B)=>{let K=k.get(I.src);if(!K){let U=vi(I.src),T=U&&$i(U.bytes);if(!U||!T||!T[0]||!T[1])return"";K={id:`image${w.length+1}`,px:T},w.push({name:`${K.id}.${U.ext}`,bytes:U.bytes}),k.set(I.src,K)}let{x:N,y:J,w:ye,h:ke}=I;if(I.fit==="contain"){let U=Math.min(ye/K.px[0],ke/K.px[1]),T=K.px[0]*U,ne=K.px[1]*U;N+=(ye-T)/2,J+=(ke-ne)/2,ye=T,ke=ne}let ve=Xe(ye),$e=Xe(ke),ee=K.px[0]*75,_=K.px[1]*75,be=d++,we=(U,T)=>`e1="${U}" e2="0" e3="0" e4="0" e5="${T}" e6="0"`;return`<hp:pic id="${be}" zOrder="${B}" numberingType="PICTURE" textWrap="IN_FRONT_OF_TEXT" textFlow="BOTH_SIDES" lock="0" dropcapstyle="None" href="" groupLevel="0" instid="${be}" reverse="0"><hp:offset x="0" y="0"/><hp:orgSz width="${ve}" height="${$e}"/><hp:curSz width="${ve}" height="${$e}"/><hp:flip horizontal="0" vertical="0"/><hp:rotationInfo angle="0" centerX="${ve>>1}" centerY="${$e>>1}" rotateimage="1"/><hp:renderingInfo><hc:transMatrix ${we(1,1)}/><hc:scaMatrix ${we(1,1)}/><hc:rotMatrix ${we(1,1)}/></hp:renderingInfo><hp:imgRect><hc:pt0 x="0" y="0"/><hc:pt1 x="${ve}" y="0"/><hc:pt2 x="${ve}" y="${$e}"/><hc:pt3 x="0" y="${$e}"/></hp:imgRect><hp:imgClip left="0" right="${ee}" top="0" bottom="${_}"/><hp:inMargin left="0" right="0" top="0" bottom="0"/><hp:imgDim dimwidth="${ee}" dimheight="${_}"/><hc:img binaryItemIDRef="${K.id}" bright="0" contrast="0" effect="REAL_PIC" alpha="0"/><hp:sz width="${ve}" widthRelTo="ABSOLUTE" height="${$e}" heightRelTo="ABSOLUTE" protect="0"/><hp:pos treatAsChar="0" affectLSpacing="0" flowWithText="0" allowOverlap="1" holdAnchorAndSO="0" vertRelTo="PAPER" horzRelTo="PAPER" vertAlign="TOP" horzAlign="LEFT" vertOffset="${Xe(J)}" horzOffset="${Xe(N)}"/><hp:outMargin left="0" right="0" top="0" bottom="0"/></hp:pic>`},S=I=>{var ie,xe,ge,he,Re,j,p,x,y,h,A,C;let B=[],K=[];for(let b of I)b.kind==="text"||b.kind==="box"&&(b.fill||b.border||b.stroke)?(B.push(b.x,b.x+b.w),K.push(b.y,b.y+b.h)):b.kind==="line"&&Math.abs(b.y1-b.y2)<.01?(K.push(b.y1),B.push(b.x1,b.x2)):b.kind==="line"&&Math.abs(b.x1-b.x2)<.01&&(B.push(b.x1),K.push(b.y1,b.y2));let N=Vo(B,1.2),J=Vo(K,.8);if(N.length<2||J.length<2)return"";let ye=I.filter(b=>b.kind==="text"&&!b.rotate&&b.text.trim()!==""),ke=[];for(let b=0;b<200;b++){let v=J.length-1,O=N.length-1,V=Array.from({length:v},()=>Array(O).fill(null));ke=[];for(let re of ye){let fe=Math.min(pt(N,re.x),O-1),le=Math.min(pt(J,re.y),v-1),Me=Math.max(fe+1,pt(N,re.x+re.w)),Pe=Math.max(le+1,pt(J,re.y+re.h)),mt=V[le][fe];if(mt){mt.texts.push(re);continue}let St=!0;for(let Ge=le;Ge<Pe&&St;Ge++)for(let Ie=fe;Ie<Me;Ie++)if(V[Ge][Ie]){St=!1;break}let Oe=St?{r:le,c:fe,rs:Pe-le,cs:Me-fe,texts:[re]}:{r:le,c:fe,rs:1,cs:1,texts:[re]};for(let Ge=Oe.r;Ge<Oe.r+Oe.rs;Ge++)for(let Ie=Oe.c;Ie<Oe.c+Oe.cs;Ie++)V[Ge][Ie]=Oe;ke.push(Oe)}for(let re=0;re<v;re++)for(let fe=0;fe<O;fe++)if(!V[re][fe]){let le={r:re,c:fe,rs:1,cs:1,texts:[]};V[re][fe]=le,ke.push(le)}let pe=J.slice(1,-1).findIndex((re,fe)=>!ke.some(le=>le.r===fe+1)),oe=N.slice(1,-1).findIndex((re,fe)=>!ke.some(le=>le.c===fe+1));if(pe<0&&oe<0)break;pe>=0&&(J=J.filter((re,fe)=>fe!==pe+1)),oe>=0&&(N=N.filter((re,fe)=>fe!==oe+1))}let ve=J.length-1,$e=N.length-1,ee=Array.from({length:ve+1},()=>Array($e).fill(void 0)),_=Array.from({length:ve},()=>Array($e+1).fill(void 0)),be=Array.from({length:ve},()=>Array($e).fill(null)),we=(b,v,O)=>{let V=pt(O,b);return[V,Math.max(V,pt(O,v))]};for(let b of I)if(b.kind==="box"){let[v,O]=we(b.x,b.x+b.w,N),[V,pe]=we(b.y,b.y+b.h,J);if(O===v||pe===V)continue;let oe=Mr(b.fill);if(oe&&((ie=b.opacity)!=null?ie:1)>.05)for(let le=V;le<pe;le++)for(let Me=v;Me<O;Me++)be[le][Me]=oe;let re=b.stroke&&b.stroke.width>0?{width:b.stroke.width,style:(xe=b.stroke.dash)!=null?xe:"solid",color:b.stroke.color}:void 0,fe={top:(he=(ge=b.border)==null?void 0:ge.top)!=null?he:re,bottom:(j=(Re=b.border)==null?void 0:Re.bottom)!=null?j:re,left:(x=(p=b.border)==null?void 0:p.left)!=null?x:re,right:(h=(y=b.border)==null?void 0:y.right)!=null?h:re};for(let le=v;le<O;le++)fe.top&&(ee[V][le]=fe.top),fe.bottom&&(ee[pe][le]=fe.bottom);for(let le=V;le<pe;le++)fe.left&&(_[le][v]=fe.left),fe.right&&(_[le][O]=fe.right)}else if(b.kind==="line"){let v={width:b.width,style:(A=b.dash)!=null?A:"solid",color:b.color};if(Math.abs(b.y1-b.y2)<.01){let O=pt(J,b.y1),[V,pe]=we(Math.min(b.x1,b.x2),Math.max(b.x1,b.x2),N);for(let oe=V;oe<pe;oe++)ee[O][oe]=v}else if(Math.abs(b.x1-b.x2)<.01){let O=pt(N,b.x1),[V,pe]=we(Math.min(b.y1,b.y2),Math.max(b.y1,b.y2),J);for(let oe=V;oe<pe;oe++)_[oe][O]=v}}let U=N.map(Xe),T=J.map(Xe),ne=b=>b.find(v=>v!==void 0),de={top:"TOP",middle:"CENTER",bottom:"BOTTOM"},me=Array.from({length:ve},()=>[]);for(let b of ke.sort((v,O)=>v.r-O.r||v.c-O.c)){let v=l.id({top:ne(ee[b.r].slice(b.c,b.c+b.cs)),bottom:ne(ee[b.r+b.rs].slice(b.c,b.c+b.cs)),left:ne(_.slice(b.r,b.r+b.rs).map(le=>le[b.c])),right:ne(_.slice(b.r,b.r+b.rs).map(le=>le[b.c+b.cs])),fill:be[b.r][b.c]}),O=U[b.c+b.cs]-U[b.c],V=T[b.r+b.rs]-T[b.r],pe=0,oe=0,re=b.texts[0];if(re!=null&&re.lines.length){let le=N[b.c],Me=N[b.c+b.cs],Pe=Math.min(...re.lines.map(Ie=>Ie.x)),mt=Math.max(...re.lines.map(Ie=>Ie.x+Ie.width)),St=Ie=>Math.max(0,Math.min(5,Ie)),Oe=St(Pe-le),Ge=St(Me-mt);re.align==="right"?(oe=Ge,pe=Math.min(Oe,.5)):re.align==="center"?pe=oe=Math.min(Oe,Ge,1):(pe=Oe,oe=Math.min(Ge,.5))}let fe=b.texts.length?M(b.texts).join(""):E();b.texts.length&&m.push(b.texts.map(le=>le.text).join(" ")),me[b.r].push(`<hp:tc name="" header="0" hasMargin="1" protect="0" editable="0" dirty="0" borderFillIDRef="${v}"><hp:subList id="" textDirection="HORIZONTAL" lineWrap="BREAK" vertAlign="${re?(C=de[re.valign])!=null?C:"TOP":"CENTER"}" linkListIDRef="0" linkListNextIDRef="0" textWidth="0" textHeight="0" hasTextRef="0" hasNumRef="0">${fe}</hp:subList><hp:cellAddr colAddr="${b.c}" rowAddr="${b.r}"/><hp:cellSpan colSpan="${b.cs}" rowSpan="${b.rs}"/><hp:cellSz width="${O}" height="${V}"/><hp:cellMargin left="${Xe(pe)}" right="${Xe(oe)}" top="0" bottom="0"/></hp:tc>`)}let ae=U[$e]-U[0],ce=T[ve]-T[0];return`<hp:tbl id="${d++}" zOrder="0" numberingType="TABLE" textWrap="IN_FRONT_OF_TEXT" textFlow="BOTH_SIDES" lock="0" dropcapstyle="None" pageBreak="NONE" repeatHeader="0" rowCnt="${ve}" colCnt="${$e}" cellSpacing="0" borderFillIDRef="${g}" noAdjust="1"><hp:sz width="${ae}" widthRelTo="ABSOLUTE" height="${ce}" heightRelTo="ABSOLUTE" protect="0"/><hp:pos treatAsChar="0" affectLSpacing="0" flowWithText="0" allowOverlap="1" holdAnchorAndSO="0" vertRelTo="PAPER" horzRelTo="PAPER" vertAlign="TOP" horzAlign="LEFT" vertOffset="${T[0]}" horzOffset="${U[0]}"/><hp:outMargin left="0" right="0" top="0" bottom="0"/><hp:inMargin left="0" right="0" top="0" bottom="0"/>`+me.map(b=>`<hp:tr>${b.join("")}</hp:tr>`).join("")+"</hp:tbl>"},[P,L,R,H]=n.margins.map(Xe),ue=`<hp:secPr id="" textDirection="HORIZONTAL" spaceColumns="1134" tabStop="8000" tabStopVal="4000" tabStopUnit="HWPUNIT" outlineShapeIDRef="1" memoShapeIDRef="0" textVerticalWidthHead="0" masterPageCnt="0"><hp:grid lineGrid="0" charGrid="0" wonggojiFormat="0"/><hp:startNum pageStartsOn="BOTH" page="0" pic="0" tbl="0" equation="0"/><hp:visibility hideFirstHeader="0" hideFirstFooter="0" hideFirstMasterPage="0" border="SHOW_ALL" fill="SHOW_ALL" hideFirstPageNum="0" hideFirstEmptyLine="0" showLineNumber="0"/><hp:lineNumberShape restartType="0" countBy="0" distance="0" startNumber="0"/><hp:pagePr landscape="${r>o?"NARROWLY":"WIDELY"}" width="${Xe(Math.min(r,o))}" height="${Xe(Math.max(r,o))}" gutterType="LEFT_ONLY"><hp:margin header="0" footer="0" gutter="0" left="${H}" right="${L}" top="${P}" bottom="${R}"/></hp:pagePr><hp:footNotePr><hp:autoNumFormat type="DIGIT" userChar="" prefixChar="" suffixChar=")" supscript="0"/><hp:noteLine length="-1" type="SOLID" width="0.12 mm" color="#000000"/><hp:noteSpacing betweenNotes="283" belowLine="567" aboveLine="850"/><hp:numbering type="CONTINUOUS" newNum="1"/><hp:placement place="EACH_COLUMN" beneathText="0"/></hp:footNotePr><hp:endNotePr><hp:autoNumFormat type="DIGIT" userChar="" prefixChar="" suffixChar=")" supscript="0"/><hp:noteLine length="14692344" type="SOLID" width="0.12 mm" color="#000000"/><hp:noteSpacing betweenNotes="0" belowLine="567" aboveLine="850"/><hp:numbering type="CONTINUOUS" newNum="1"/><hp:placement place="END_OF_DOCUMENT" beneathText="0"/></hp:endNotePr>`+["BOTH","EVEN","ODD"].map(I=>`<hp:pageBorderFill type="${I}" borderFillIDRef="1" textBorder="PAPER" headerInside="0" footerInside="0" fillArea="PAPER"><hp:offset left="1417" right="1417" top="1417" bottom="1417"/></hp:pageBorderFill>`).join("")+'</hp:secPr><hp:ctrl><hp:colPr id="" type="NEWSPAPER" layout="LEFT" colCount="1" sameSz="1" sameGap="0"/></hp:ctrl>',q=(e.pages.length?e.pages:[{items:[]}]).map((I,B)=>{let K=I.items.filter(J=>{var ye;return((ye=J.source)==null?void 0:ye.band)!=="watermark"}),N=S(K)+K.filter(J=>J.kind==="image"&&!J.emboss).map((J,ye)=>$(J,ye+1)).join("");return`<hp:p id="${c++}" paraPrIDRef="${f}" styleIDRef="0" pageBreak="${B>0?1:0}" columnBreak="0" merged="0"><hp:run charPrIDRef="${u}">${B===0?ue:""}${N}<hp:t/></hp:run></hp:p>`}).join(""),z=`${xt}<hs:sec ${$r}>${q}</hs:sec>`,F=Sr.map(I=>`<hh:fontface lang="${I}" fontCnt="${Xo.length}">`+Xo.map((B,K)=>`<hh:font id="${K}" face="${B}" type="TTF" isEmbedded="0"><hh:typeInfo familyType="FCAT_GOTHIC" weight="6" proportion="4" contrast="0" strokeVariation="1" armStyle="1" letterform="1" midline="1" xHeight="1"/></hh:font>`).join("")+"</hh:fontface>").join(""),D=vr(1,i)+vr(2,i).replace("</hh:borderFill>",'<hc:fillBrush><hc:winBrush faceColor="none" hatchColor="#FF000000" alpha="0"/></hc:fillBrush></hh:borderFill>'),G=`${xt}<hh:head ${$r} version="1.4" secCnt="1"><hh:beginNum page="1" footnote="1" endnote="1" pic="1" tbl="1" equation="1"/><hh:refList><hh:fontfaces itemCnt="${Sr.length}">${F}</hh:fontfaces><hh:borderFills itemCnt="${l.list.length+2}">${D}${l.list.map((I,B)=>vr(B+3,I)).join("")}</hh:borderFills><hh:charProperties itemCnt="${s.list.length}">${s.list.map((I,B)=>xi(B,I)).join("")}</hh:charProperties><hh:tabProperties itemCnt="1"><hh:tabPr id="0" autoTabLeft="0" autoTabRight="0"/></hh:tabProperties><hh:numberings itemCnt="1"><hh:numbering id="1" start="0">`+["^1.","^2.","^3)","^4)","(^5)","(^6)","^7"].map((I,B)=>`<hh:paraHead start="1" level="${B+1}" align="LEFT" useInstWidth="1" autoIndent="1" widthAdjust="0" textOffsetType="PERCENT" textOffset="50" numFormat="${B===6?"CIRCLED_DIGIT":B%2?"HANGUL_SYLLABLE":"DIGIT"}" charPrIDRef="4294967295" checkable="${B===6?1:0}">${I}</hh:paraHead>`).join("")+`</hh:numbering></hh:numberings><hh:paraProperties itemCnt="${a.list.length}">${a.list.map((I,B)=>ki(B,I)).join("")}</hh:paraProperties><hh:styles itemCnt="1"><hh:style id="0" type="PARA" name="\uBC14\uD0D5\uAE00" engName="Normal" paraPrIDRef="0" charPrIDRef="0" nextStyleIDRef="0" langID="1042" lockForm="0"/></hh:styles></hh:refList><hh:compatibleDocument targetProgram="HWP201X"><hh:layoutCompatibility/></hh:compatibleDocument><hh:docOption><hh:linkinfo path="" pageInherit="0" footnoteInherit="0"/></hh:docOption><hh:trackchageConfig flags="56"/></hh:head>`,Y=new Date().toISOString().replace(/\.\d+Z$/,"Z"),Z=_o((W=t.name)!=null?W:""),se=`${xt}<opf:package ${$r} version="" unique-identifier="" id=""><opf:metadata><opf:title>${Z}</opf:title><opf:language>ko</opf:language><opf:meta name="creator" content="text">FreeReport</opf:meta><opf:meta name="CreatedDate" content="text">${Y}</opf:meta><opf:meta name="ModifiedDate" content="text">${Y}</opf:meta></opf:metadata><opf:manifest><opf:item id="header" href="Contents/header.xml" media-type="application/xml"/>`+w.map(I=>`<opf:item id="${I.name.replace(/\..*$/,"")}" href="BinData/${I.name}" media-type="image/${I.name.endsWith("png")?"png":"jpg"}" isEmbeded="1"/>`).join("")+'<opf:item id="section0" href="Contents/section0.xml" media-type="application/xml"/><opf:item id="settings" href="settings.xml" media-type="application/xml"/></opf:manifest><opf:spine><opf:itemref idref="header" linear="yes"/><opf:itemref idref="section0" linear="yes"/></opf:spine></opf:package>';return Tn([{name:"mimetype",data:"application/hwp+zip"},{name:"version.xml",data:`${xt}<hv:HCFVersion xmlns:hv="http://www.hancom.co.kr/hwpml/2011/version" tagetApplication="WORDPROCESSOR" major="5" minor="0" micro="5" buildNumber="0" os="1" xmlVersion="1.4" application="FreeReport" appVersion="1.0"/>`},{name:"Contents/header.xml",data:G},{name:"Contents/section0.xml",data:z},{name:"Preview/PrvText.txt",data:m.join(`\r
17
+ `).slice(0,1024)},{name:"settings.xml",data:`${xt}<ha:HWPApplicationSetting xmlns:ha="http://www.hancom.co.kr/hwpml/2011/app" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"><ha:CaretPosition listIDRef="0" paraIDRef="0" pos="0"/></ha:HWPApplicationSetting>`},...w.map(I=>({name:`BinData/${I.name}`,data:I.bytes})),{name:"META-INF/container.xml",data:`${xt}<ocf:container xmlns:ocf="urn:oasis:names:tc:opendocument:xmlns:container" xmlns:hpf="http://www.hancom.co.kr/schema/2011/hpf"><ocf:rootfiles><ocf:rootfile full-path="Contents/content.hpf" media-type="application/hwpml-package+xml"/><ocf:rootfile full-path="Preview/PrvText.txt" media-type="text/plain"/></ocf:rootfiles></ocf:container>`},{name:"Contents/content.hpf",data:se},{name:"META-INF/manifest.xml",data:`${xt}<odf:manifest xmlns:odf="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0"/>`}])}var Er=(e,t)=>String.fromCharCode(e[t],e[t+1],e[t+2],e[t+3]);function Zt(e){if(e.length<12)throw new Error("FreeReport PDF: font data is too short to be a TrueType font");let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=Er(e,0);if(n==="OTTO")throw new Error("FreeReport PDF: CFF-based OpenType (.otf) fonts are not supported; a TrueType .ttf font is required");if(n==="wOFF"||n==="wOF2")throw new Error("FreeReport PDF: WOFF/WOFF2 fonts are not supported; a TrueType .ttf font is required");if(n==="ttcf")throw new Error("FreeReport PDF: TrueType collections (.ttc) are not supported; a single .ttf font is required");if(t.getUint32(0)!==65536&&n!=="true")throw new Error("FreeReport PDF: unrecognised font format; a TrueType .ttf font is required");let r=new Map,o=t.getUint16(4);for(let R=0;R<o;R++){let H=12+R*16;r.set(Er(e,H),{offset:t.getUint32(H+8),length:t.getUint32(H+12)})}let s=R=>{let H=r.get(R);if(!H)throw new Error(`FreeReport PDF: font has no '${R}' table`+(R==="glyf"?" (only TrueType outlines are supported)":""));return H},a=s("head"),l=s("hhea"),i=s("maxp"),u=s("hmtx");s("loca"),s("glyf");let f=t.getUint16(a.offset+18)||1e3,g=[t.getInt16(a.offset+36),t.getInt16(a.offset+38),t.getInt16(a.offset+40),t.getInt16(a.offset+42)],w=t.getUint16(i.offset+4),k=t.getInt16(l.offset+4),d=t.getInt16(l.offset+6),c=Math.max(1,t.getUint16(l.offset+34)),m=Math.round(k*.7),E=r.get("OS/2");E&&E.length>=78&&(k||(k=t.getInt16(E.offset+68)),d||(d=t.getInt16(E.offset+70)),t.getUint16(E.offset)>=2&&E.length>=90&&(m=t.getInt16(E.offset+88)||m));let M=0,$=!1,S=r.get("post");S&&S.length>=16&&(M=t.getInt32(S.offset+4)/65536,$=t.getUint32(S.offset+12)!==0);let P=32|(M!==0?64:0)|($?1:0),L=R=>{(R<0||R>=w)&&(R=0);let H=R<c?R:c-1;return t.getUint16(u.offset+H*4)};return{data:e,unitsPerEm:f,ascent:k,descent:d,capHeight:m,bbox:g,italicAngle:M,numGlyphs:w,flags:P,postscriptName:Mi(e,t,r.get("name")),glyphId:Si(t,r.get("cmap"),w),advance:L}}function Mi(e,t,n){let r="FreeReportFont";if(!n)return r;let o=t.getUint16(n.offset+2),s=n.offset+t.getUint16(n.offset+4),a=null;for(let i=0;i<o;i++){let u=n.offset+6+i*12,f=t.getUint16(u);if(t.getUint16(u+6)!==6)continue;let w=t.getUint16(u+8),k=s+t.getUint16(u+10),d="";if(f===3||f===0)for(let c=0;c+1<w;c+=2)d+=String.fromCharCode(t.getUint16(k+c));else for(let c=0;c<w;c++)d+=String.fromCharCode(e[k+c]);if(a=d,f===3)break}return(a||"").replace(/[^\x21-\x7e]|[()<>[\]{}/%#]/g,"")||r}function Si(e,t,n){if(!t)return()=>0;let r=e.getUint16(t.offset+2),o=-1,s=99;for(let c=0;c<r;c++){let m=t.offset+4+c*8,E=e.getUint16(m),M=e.getUint16(m+2),$=t.offset+e.getUint32(m+4),S=e.getUint16($);if(S!==4&&S!==12)continue;let P=E===3&&M===10?0:E===3&&M===1?1:E===0?2+(S===12?0:1):99;P<s&&(s=P,o=$)}if(o<0)return()=>0;let a=new Map,l=c=>c>0&&c<n?c:0;if(e.getUint16(o)===12){let c=e.getUint32(o+12),m=E=>{let M=0,$=c-1;for(;M<=$;){let S=M+$>>1,P=o+16+S*12,L=e.getUint32(P),R=e.getUint32(P+4);if(E<L)$=S-1;else if(E>R)M=S+1;else return l(e.getUint32(P+8)+E-L)}return 0};return E=>{let M=a.get(E);return M===void 0&&a.set(E,M=m(E)),M}}let i=e.getUint16(o+6),u=i/2,f=o+14,g=f+i+2,w=g+i,k=w+i,d=c=>{if(c>65535)return 0;let m=0,E=u-1;for(;m<=E;){let M=m+E>>1,$=e.getUint16(f+M*2),S=e.getUint16(g+M*2);if(c>$)m=M+1;else if(c<S)E=M-1;else{let P=e.getInt16(w+M*2),L=e.getUint16(k+M*2);if(L===0)return l(c+P&65535);let R=k+M*2+L+(c-S)*2,H=e.getUint16(R);return H===0?0:l(H+P&65535)}}return 0};return c=>{let m=a.get(c);return m===void 0&&a.set(c,m=d(c)),m}}var Ei=["OS/2","cvt ","fpgm","glyf","head","hhea","hmtx","loca","maxp","prep"];function Ri(e){let t=e.data,n=new DataView(t.buffer,t.byteOffset,t.byteLength),r=new Map;for(let o=0,s=n.getUint16(4);o<s;o++){let a=12+o*16;r.set(Er(t,a),{offset:n.getUint32(a+8),length:n.getUint32(a+12)})}return r}function Yo(e,t,n){let r=0,o=t+n;for(let s=t;s<o;s+=4){let a=(e[s]<<24|(s+1<o?e[s+1]:0)<<16|(s+2<o?e[s+2]:0)<<8|(s+3<o?e[s+3]:0))>>>0;r=r+a>>>0}return r}function Jo(e,t){let n=e.data,r=new DataView(n.buffer,n.byteOffset,n.byteLength),o=Ri(e),s=o.get("head"),a=o.get("loca"),l=o.get("glyf"),i=r.getInt16(s.offset+50)===1,u=e.numGlyphs,f=D=>i?r.getUint32(a.offset+D*4):r.getUint16(a.offset+D*2)*2,g=D=>{let G=f(D),Y=f(D+1);return Y>G?[l.offset+G,Y-G]:[0,0]},w=new Set([0]),k=[...t].filter(D=>D>=0&&D<u);for(;k.length;){let D=k.pop();if(w.has(D)&&D!==0)continue;w.add(D);let[G,Y]=g(D);if(Y<10||r.getInt16(G)>=0)continue;let Z=G+10;for(;;){let se=r.getUint16(Z),W=r.getUint16(Z+2);if(W<u&&!w.has(W)&&k.push(W),Z+=4+(se&1?4:2),se&8?Z+=2:se&64?Z+=4:se&128&&(Z+=8),!(se&32))break}}let d=0;for(let D of w){let G=g(D)[1];d+=G+3&-4}let c=new Uint8Array(d),m=new Uint8Array((u+1)*4),E=new DataView(m.buffer),M=0;for(let D=0;D<u;D++){if(E.setUint32(D*4,M),!w.has(D))continue;let[G,Y]=g(D);c.set(n.subarray(G,G+Y),M),M+=Y+3&-4}E.setUint32(u*4,M);let $=n.slice(s.offset,s.offset+s.length),S=new DataView($.buffer);S.setUint32(8,0),S.setInt16(50,1);let P=[];for(let D of Ei)if(D==="glyf")P.push({tag:D,data:c});else if(D==="loca")P.push({tag:D,data:m});else if(D==="head")P.push({tag:D,data:$});else{let G=o.get(D);G&&P.push({tag:D,data:n.subarray(G.offset,G.offset+G.length)})}let L=P.length,R=0;for(;1<<R+1<=L;)R++;let H=(1<<R)*16,ue=12+L*16;for(let D of P)ue+=D.data.length+3&-4;let Q=new Uint8Array(ue),q=new DataView(Q.buffer);q.setUint32(0,65536),q.setUint16(4,L),q.setUint16(6,H),q.setUint16(8,R),q.setUint16(10,L*16-H);let z=12+L*16,F=0;return P.forEach((D,G)=>{let Y=12+G*16;for(let Z=0;Z<4;Z++)Q[Y+Z]=D.tag.charCodeAt(Z);Q.set(D.data,z),q.setUint32(Y+4,Yo(Q,z,D.data.length)),q.setUint32(Y+8,z),q.setUint32(Y+12,D.data.length),D.tag==="head"&&(F=z),z+=D.data.length+3&-4}),q.setUint32(F+8,2981146554-Yo(Q,0,Q.length)>>>0),Q}function Dn(){let e=globalThis.crypto;if(!e||!e.subtle||!e.getRandomValues)throw new Error("FreeReport PDF: encryption needs WebCrypto (crypto.subtle)");return e}function Ze(e){let t=new Uint8Array(e);return Dn().getRandomValues(t),t}var Qt=(...e)=>{let t=0;for(let o of e)t+=o.length;let n=new Uint8Array(t),r=0;for(let o of e)n.set(o,r),r+=o.length;return n},Ln=e=>e;async function Zo(e,t){return new Uint8Array(await Dn().subtle.digest(e,Ln(t)))}var Qo=new WeakMap;function Ti(e){let t=Qo.get(e);return t||Qo.set(e,t=Dn().subtle.importKey("raw",Ln(e),{name:"AES-CBC"},!1,["encrypt"])),t}async function Tr(e,t,n){return new Uint8Array(await Dn().subtle.encrypt({name:"AES-CBC",iv:Ln(t)},await Ti(e),Ln(n)))}async function Rr(e,t,n){return(await Tr(e,t,n)).subarray(0,n.length)}async function Fn(e,t){let n=Ze(16);return Qt(n,await Tr(e,n,t))}function es(e){return new TextEncoder().encode(e.normalize("NFKC")).subarray(0,127)}async function An(e,t,n){let r=await Zo("SHA-256",Qt(e,t,n));for(let o=0;;o++){let s=Qt(e,r,n),a=new Uint8Array(s.length*64);for(let f=0;f<64;f++)a.set(s,f*s.length);let l=await Rr(r.subarray(0,16),r.subarray(16,32),a),i=0;for(let f=0;f<16;f++)i+=l[f];let u=i%3;if(r=await Zo(u===0?"SHA-256":u===1?"SHA-384":"SHA-512",l),o>=63&&l[l.length-1]<=o+1-32)break}return r.subarray(0,32)}function Pi(e={}){let t=r=>r!==!1,n=4294963392;return t(e.print)&&(n|=4),t(e.modify)&&(n|=8),t(e.copy)&&(n|=16),t(e.annotate)&&(n|=32),t(e.fillForms)&&(n|=256),t(e.extract)&&(n|=512),t(e.assemble)&&(n|=1024),t(e.printHighQuality)&&(n|=2048),n|0}var kt=e=>{let t="";for(let n of e)t+=n.toString(16).padStart(2,"0");return t};async function ns(e){var E;let t=Ze(32),n=new Uint8Array(16),r=es((E=e.userPassword)!=null?E:""),o=e.ownerPassword?es(e.ownerPassword):Ze(32).map(M=>33+M%94),s=Ze(8),a=Ze(8),l=Qt(await An(r,s,new Uint8Array(0)),s,a),i=await Rr(await An(r,a,new Uint8Array(0)),n,t),u=Ze(8),f=Ze(8),g=Qt(await An(o,u,l),u,f),w=await Rr(await An(o,f,l),n,t),k=Pi(e.permissions),d=new Uint8Array(16);d[0]=k&255,d[1]=k>>>8&255,d[2]=k>>>16&255,d[3]=k>>>24&255,d.fill(255,4,8),d.set([84,97,100,98],8),d.set(Ze(4),12);let c=(await Tr(t,n,d)).subarray(0,16),m=`<< /Filter /Standard /V 5 /R 6 /Length 256 /CF << /StdCF << /AuthEvent /DocOpen /CFM /AESV3 /Length 32 >> >> /StmF /StdCF /StrF /StdCF /O <${kt(g)}> /U <${kt(l)}> /OE <${kt(w)}> /UE <${kt(i)}> /P ${k} /Perms <${kt(c)}> /EncryptMetadata true >>`;return{fileKey:t,dict:m,p:k}}var ts={n:10,r:13,t:9,b:8,f:12};function ji(e){let t=[];for(let n=0;n<e.length;n++){if(e[n]!=="\\"){t.push(e.charCodeAt(n)&255);continue}let o=e[++n];if(o===void 0)break;if(o in ts)t.push(ts[o]);else if(o>="0"&&o<="7"){let s=o;for(;s.length<3&&e[n+1]>="0"&&e[n+1]<="7";)s+=e[++n];t.push(parseInt(s,8)&255)}else o==="\r"?e[n+1]===`
18
18
  `&&n++:o===`
19
- `||t.push(o.charCodeAt(0)&255)}return new Uint8Array(t)}function Ca(e){let t=e.replace(/[^0-9a-fA-F]/g,""),n=t.length%2?t+"0":t,r=new Uint8Array(n.length/2);for(let o=0;o<r.length;o++)r[o]=parseInt(n.slice(o*2,o*2+2),16);return r}async function rs(e,t){if(!/[(<]/.test(t))return t;let n="";for(let r=0;r<t.length;){let o=t[r];if(o==="<"&&t[r+1]==="<"){n+="<<",r+=2;continue}if(o==="<"){let s=t.indexOf(">",r);n+="<"+kt(await Fn(e,Ca(t.slice(r+1,s))))+">",r=s+1;continue}if(o==="("){let s=1,i=r+1;for(;i<t.length&&s;i++)t[i]==="\\"?i++:t[i]==="("?s++:t[i]===")"&&s--;n+="<"+kt(await Fn(e,ja(t.slice(r+1,i-1))))+">",r=i;continue}n+=o,r++}return n}var Pr=new Map,os=new WeakMap;function Dt(e){if(typeof e!="string")return Promise.resolve(e);let t=Pr.get(e);return t||(t=fetch(e).then(async n=>{if(!n.ok)throw new Error(`FreeReport PDF: font ${e} could not be loaded (HTTP ${n.status})`);return new Uint8Array(await n.arrayBuffer())}),t.catch(()=>Pr.delete(e)),Pr.set(e,t)),t}function Aa(e){let t=os.get(e);return t||os.set(e,t=Zt(e)),t}var Fe=72/25.4,Qe=e=>{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n)&255;return t},X=e=>Math.abs(e)<5e-4?"0":e.toFixed(3).replace(/\.?0+$/,""),Ar=e=>e.toString(16).toUpperCase().padStart(4,"0");function as(e){let t="";for(let n=0;n<e.length;n++)t+=Ar(e.charCodeAt(n));return t}function In(e){return/^[\x20-\x7e]*$/.test(e)?"("+e.replace(/[\\()]/g,t=>"\\"+t)+")":"<FEFF"+as(e)+">"}var ss={black:"000000",white:"ffffff",red:"ff0000",green:"008000",blue:"0000ff",gray:"808080",grey:"808080",silver:"c0c0c0",maroon:"800000",navy:"000080",yellow:"ffff00",orange:"ffa500",purple:"800080",teal:"008080",olive:"808000",lime:"00ff00",aqua:"00ffff",cyan:"00ffff",magenta:"ff00ff",fuchsia:"ff00ff",lightgray:"d3d3d3",lightgrey:"d3d3d3",darkgray:"a9a9a9",darkgrey:"a9a9a9",pink:"ffc0cb",brown:"a52a2a"};function $t(e){if(!e)return null;let t=e.trim().toLowerCase();if(t==="transparent"||t==="none")return null;ss[t]&&(t="#"+ss[t]);let n,r,o,s=1,i;if(i=t.match(/^#([0-9a-f]{3,8})$/)){let a=i[1];if((a.length===3||a.length===4)&&(a=a.split("").map(u=>u+u).join("")),a.length!==6&&a.length!==8)return;n=parseInt(a.slice(0,2),16),r=parseInt(a.slice(2,4),16),o=parseInt(a.slice(4,6),16),a.length===8&&(s=parseInt(a.slice(6,8),16)/255)}else if(i=t.match(/^rgba?\(([^)]*)\)$/)){let a=i[1].split(/[\s,/]+/).filter(Boolean).map(u=>u.endsWith("%")?parseFloat(u)*2.55:parseFloat(u));if(a.length<3||a.slice(0,3).some(isNaN))return;[n,r,o]=a,a.length>3&&(s=i[1].split(/[\s,/]+/).filter(Boolean)[3].endsWith("%")?a[3]/255:a[3])}else return;if(s<=0)return null;let l=a=>X(Math.min(255,Math.max(0,a))/255);return`${l(n)} ${l(r)} ${l(o)}`}async function La(e){let t=new CompressionStream("deflate"),n=t.writable.getWriter();n.write(e).then(()=>n.close());let r=t.readable.getReader(),o=[],s=0;for(;;){let{done:a,value:u}=await r.read();if(a)break;o.push(u),s+=u.length}let i=new Uint8Array(s),l=0;for(let a of o)i.set(a,l),l+=a.length;return i}var jr=class{constructor(t){this.compress=t;this.objects=[void 0]}alloc(){return this.objects.push(void 0),this.objects.length-1}set(t,n,r=!1){this.objects[t]={body:n,raw:r}}async stream(t,n,r,o=!0){this.compress&&o&&(r=await La(r),n+=" /Filter /FlateDecode"),this.objects[t]={body:n,data:r}}async build(t,n,r){let o=[Qe(`%PDF-1.7
19
+ `||t.push(o.charCodeAt(0)&255)}return new Uint8Array(t)}function Ci(e){let t=e.replace(/[^0-9a-fA-F]/g,""),n=t.length%2?t+"0":t,r=new Uint8Array(n.length/2);for(let o=0;o<r.length;o++)r[o]=parseInt(n.slice(o*2,o*2+2),16);return r}async function rs(e,t){if(!/[(<]/.test(t))return t;let n="";for(let r=0;r<t.length;){let o=t[r];if(o==="<"&&t[r+1]==="<"){n+="<<",r+=2;continue}if(o==="<"){let s=t.indexOf(">",r);n+="<"+kt(await Fn(e,Ci(t.slice(r+1,s))))+">",r=s+1;continue}if(o==="("){let s=1,a=r+1;for(;a<t.length&&s;a++)t[a]==="\\"?a++:t[a]==="("?s++:t[a]===")"&&s--;n+="<"+kt(await Fn(e,ji(t.slice(r+1,a-1))))+">",r=a;continue}n+=o,r++}return n}var Pr=new Map,os=new WeakMap;function Dt(e){if(typeof e!="string")return Promise.resolve(e);let t=Pr.get(e);return t||(t=fetch(e).then(async n=>{if(!n.ok)throw new Error(`FreeReport PDF: font ${e} could not be loaded (HTTP ${n.status})`);return new Uint8Array(await n.arrayBuffer())}),t.catch(()=>Pr.delete(e)),Pr.set(e,t)),t}function Ai(e){let t=os.get(e);return t||os.set(e,t=Zt(e)),t}var Fe=72/25.4,Qe=e=>{let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n)&255;return t},X=e=>Math.abs(e)<5e-4?"0":e.toFixed(3).replace(/\.?0+$/,""),Ar=e=>e.toString(16).toUpperCase().padStart(4,"0");function is(e){let t="";for(let n=0;n<e.length;n++)t+=Ar(e.charCodeAt(n));return t}function In(e){return/^[\x20-\x7e]*$/.test(e)?"("+e.replace(/[\\()]/g,t=>"\\"+t)+")":"<FEFF"+is(e)+">"}var ss={black:"000000",white:"ffffff",red:"ff0000",green:"008000",blue:"0000ff",gray:"808080",grey:"808080",silver:"c0c0c0",maroon:"800000",navy:"000080",yellow:"ffff00",orange:"ffa500",purple:"800080",teal:"008080",olive:"808000",lime:"00ff00",aqua:"00ffff",cyan:"00ffff",magenta:"ff00ff",fuchsia:"ff00ff",lightgray:"d3d3d3",lightgrey:"d3d3d3",darkgray:"a9a9a9",darkgrey:"a9a9a9",pink:"ffc0cb",brown:"a52a2a"};function $t(e){if(!e)return null;let t=e.trim().toLowerCase();if(t==="transparent"||t==="none")return null;ss[t]&&(t="#"+ss[t]);let n,r,o,s=1,a;if(a=t.match(/^#([0-9a-f]{3,8})$/)){let i=a[1];if((i.length===3||i.length===4)&&(i=i.split("").map(u=>u+u).join("")),i.length!==6&&i.length!==8)return;n=parseInt(i.slice(0,2),16),r=parseInt(i.slice(2,4),16),o=parseInt(i.slice(4,6),16),i.length===8&&(s=parseInt(i.slice(6,8),16)/255)}else if(a=t.match(/^rgba?\(([^)]*)\)$/)){let i=a[1].split(/[\s,/]+/).filter(Boolean).map(u=>u.endsWith("%")?parseFloat(u)*2.55:parseFloat(u));if(i.length<3||i.slice(0,3).some(isNaN))return;[n,r,o]=i,i.length>3&&(s=a[1].split(/[\s,/]+/).filter(Boolean)[3].endsWith("%")?i[3]/255:i[3])}else return;if(s<=0)return null;let l=i=>X(Math.min(255,Math.max(0,i))/255);return`${l(n)} ${l(r)} ${l(o)}`}async function Li(e){let t=new CompressionStream("deflate"),n=t.writable.getWriter();n.write(e).then(()=>n.close());let r=t.readable.getReader(),o=[],s=0;for(;;){let{done:i,value:u}=await r.read();if(i)break;o.push(u),s+=u.length}let a=new Uint8Array(s),l=0;for(let i of o)a.set(i,l),l+=i.length;return a}var jr=class{constructor(t){this.compress=t;this.objects=[void 0]}alloc(){return this.objects.push(void 0),this.objects.length-1}set(t,n,r=!1){this.objects[t]={body:n,raw:r}}async stream(t,n,r,o=!0){this.compress&&o&&(r=await Li(r),n+=" /Filter /FlateDecode"),this.objects[t]={body:n,data:r}}async build(t,n,r){let o=[Qe(`%PDF-1.7
20
20
  %\xE2\xE3\xCF\xD3
21
- `)],s=o[0].length,i=[0];for(let d=1;d<this.objects.length;d++){let c=this.objects[d],p;if(!c)p=[Qe("null")];else{let v=c.body,k=c.data;r&&!c.raw&&(v=await rs(r.fileKey,v),k&&(k=await Fn(r.fileKey,k))),p=k?[Qe(`<< ${v} /Length ${k.length} >>
21
+ `)],s=o[0].length,a=[0];for(let d=1;d<this.objects.length;d++){let c=this.objects[d],m;if(!c)m=[Qe("null")];else{let M=c.body,$=c.data;r&&!c.raw&&(M=await rs(r.fileKey,M),$&&($=await Fn(r.fileKey,$))),m=$?[Qe(`<< ${M} /Length ${$.length} >>
22
22
  stream
23
- `),k,Qe(`
24
- endstream`)]:[Qe(v)]}i[d]=s;let E=[Qe(`${d} 0 obj
25
- `),...p,Qe(`
23
+ `),$,Qe(`
24
+ endstream`)]:[Qe(M)]}a[d]=s;let E=[Qe(`${d} 0 obj
25
+ `),...m,Qe(`
26
26
  endobj
27
- `)];for(let v of E)o.push(v),s+=v.length}let l=this.objects.length,a=`xref
27
+ `)];for(let M of E)o.push(M),s+=M.length}let l=this.objects.length,i=`xref
28
28
  0 ${l}
29
29
  0000000000 65535 f
30
- `;for(let d=1;d<l;d++)a+=String(i[d]).padStart(10,"0")+` 00000 n
31
- `;let u="",f=r?Ze(16):Array.from({length:16},()=>Math.random()*256|0);for(let d of f)u+=d.toString(16).padStart(2,"0");let m=r?` /Encrypt ${r.encryptId} 0 R`:"";a+=`trailer
32
- << /Size ${l} /Root ${t} 0 R /Info ${n} 0 R${m} /ID [<${u}> <${u}>] >>
30
+ `;for(let d=1;d<l;d++)i+=String(a[d]).padStart(10,"0")+` 00000 n
31
+ `;let u="",f=r?Ze(16):Array.from({length:16},()=>Math.random()*256|0);for(let d of f)u+=d.toString(16).padStart(2,"0");let g=r?` /Encrypt ${r.encryptId} 0 R`:"";i+=`trailer
32
+ << /Size ${l} /Root ${t} 0 R /Info ${n} 0 R${g} /ID [<${u}> <${u}>] >>
33
33
  startxref
34
34
  ${s}
35
35
  %%EOF
36
- `,o.push(Qe(a));let y=new Uint8Array(s+o[o.length-1].length),x=0;for(let d of o)y.set(d,x),x+=d.length;return y}},Cr=class{constructor(){this.parts=[];this.st={font:"",tc:0,tr:0,fill:"0 0 0",stroke:"0 0 0",lw:1};this.stack=[]}op(t){this.parts.push(t)}save(){this.parts.push("q"),this.stack.push({...this.st})}restore(){this.parts.push("Q"),this.st=this.stack.pop()}fill(t){t!==this.st.fill&&(this.st.fill=t,this.parts.push(t+" rg"))}stroke(t){t!==this.st.stroke&&(this.st.stroke=t,this.parts.push(t+" RG"))}lineWidth(t){t!==this.st.lw&&(this.st.lw=t,this.parts.push(X(t)+" w"))}font(t,n){let r=`/${t} ${X(n)} Tf`;r!==this.st.font&&(this.st.font=r,this.parts.push(r))}charSpace(t){t!==this.st.tc&&(this.st.tc=t,this.parts.push(X(t)+" Tc"))}render(t){t!==this.st.tr&&(this.st.tr=t,this.parts.push(t+" Tr"))}};function is(e,t){var r,o;let n=new Map(Object.keys(e).map(s=>[s.toLowerCase(),s]));for(let s of(t||"").split(",")){let i=n.get(s.trim().replace(/^['"]|['"]$/g,"").toLowerCase());if(i)return i}return(o=(r=n.get("default"))!=null?r:Object.keys(e)[0])!=null?o:null}function Fa(e){if(e[0]!==255||e[1]!==216)return null;let t=2;for(;t+9<e.length;){if(e[t]!==255){t++;continue}let n=e[t+1];if(n===216||n===1||n>=208&&n<=215||n===255){t+=n===255?1:2;continue}let r=e[t+2]<<8|e[t+3];if(n>=192&&n<=207&&n!==196&&n!==200&&n!==204)return{height:e[t+5]<<8|e[t+6],width:e[t+7]<<8|e[t+8],comps:e[t+9]};t+=2+r}return null}async function Da(e){try{if(typeof fetch=="undefined")return null;let t=await fetch(e);if(!t.ok)return null;let n=new Uint8Array(await t.arrayBuffer()),r=Fa(n);if(r&&(r.comps===1||r.comps===3))return{kind:"jpeg",data:n,width:r.width,height:r.height,gray:r.comps===1};let o,s,i,l=new TextDecoder().decode(n.subarray(0,512)).trimStart(),a=l.startsWith("<svg")||l.startsWith("<?xml")&&l.includes("<svg"),u=new Blob([n],a?{type:"image/svg+xml"}:void 0);if(a&&typeof document!="undefined"){let x=URL.createObjectURL(u);try{let d=new Image;await new Promise((v,k)=>{d.onload=()=>v(),d.onerror=()=>k(new Error("image")),d.src=x});let c=(d.naturalWidth||1)/(d.naturalHeight||1);o=c>=1?800:Math.round(800*c),s=c>=1?Math.round(800/c):800;let p=document.createElement("canvas");p.width=o,p.height=s;let E=p.getContext("2d");E.drawImage(d,0,0,o,s),i=E.getImageData(0,0,o,s).data}finally{URL.revokeObjectURL(x)}}else if(typeof createImageBitmap=="function"&&typeof OffscreenCanvas!="undefined"){let x=await createImageBitmap(u);o=x.width,s=x.height;let d=new OffscreenCanvas(o,s).getContext("2d");d.drawImage(x,0,0),i=d.getImageData(0,0,o,s).data}else if(typeof document!="undefined"){let x=URL.createObjectURL(u);try{let d=new Image;await new Promise((E,v)=>{d.onload=()=>E(),d.onerror=()=>v(new Error("image")),d.src=x}),o=d.naturalWidth,s=d.naturalHeight;let c=document.createElement("canvas");c.width=o,c.height=s;let p=c.getContext("2d");p.drawImage(d,0,0),i=p.getImageData(0,0,o,s).data}finally{URL.revokeObjectURL(x)}}else return null;if(!o||!s)return null;let f=new Uint8Array(o*s*3),m=new Uint8Array(o*s),y=!0;for(let x=0,d=0;x<o*s;x++,d+=4)f[x*3]=i[d],f[x*3+1]=i[d+1],f[x*3+2]=i[d+2],m[x]=i[d+3],i[d+3]!==255&&(y=!1);return{kind:"raw",rgb:f,alpha:y?void 0:m,width:o,height:s}}catch{return null}}async function vt(e,t){var W,oe;let n=(W=t.compress)!=null?W:typeof CompressionStream!="undefined",r=new jr(n),o=r.alloc(),s=r.alloc(),i=r.alloc(),l=r.alloc(),a=t.fonts||{},u=new Map,f=[],m=(V,I)=>{let B=`${V}\0${I}`;if(u.has(B)||!a[V])return;let K=a[V],N=I&&K.bold!=null;u.set(B,null),f.push(Dt(N?K.bold:K.normal).then(Q=>{u.set(B,{bytes:Q,fakeBold:I&&!N})}))},y=Object.keys(a).find(V=>V.toLowerCase()==="default");for(let V of e)for(let I of V.items){if(I.kind!=="text"||!I.lines.some(K=>K.text))continue;let B=is(a,I.font.family);if(!B)throw new Error('FreeReport PDF: no fonts configured; pass opts.fonts with at least a "default" TrueType font');m(B,I.font.bold),y&&m(y,I.font.bold)}await Promise.all(f);let x=new Map,d=new Map,c=(V,I)=>{if(!V)return null;let B=u.get(`${V}\0${I}`);if(!B)return null;let K=d.get(B.bytes);K===void 0&&d.set(B.bytes,K=d.size);let N=`${K}|${B.fakeBold}`,Q=x.get(N);return Q||(Q={font:Aa(B.bytes),fakeBold:B.fakeBold,name:"F"+(x.size+1),id:r.alloc(),used:new Map},x.set(N,Q)),Q},p=new Map,E=V=>{let I=X(Math.max(0,Math.min(1,V))),B=p.get(I);return B||p.set(I,B="GS"+(p.size+1)),B},v=new Map,k=[],S=(oe=t.loadImage)!=null?oe:Da,j=(V,I)=>{let B=(I?"emboss:":"")+V,K=v.get(B);return K||(K=(async()=>{try{let N=V;I&&(N=await Rt(V));let Q=await S(N);if(!Q||!Q.width||!Q.height)return null;let we=r.alloc(),ke="Im"+(k.length+1);k.push(`/${ke} ${we} 0 R`);let ye=`/Type /XObject /Subtype /Image /Width ${Q.width} /Height ${Q.height} /BitsPerComponent 8`;if(Q.kind==="jpeg")await r.stream(we,`${ye} /ColorSpace /Device${Q.gray?"Gray":"RGB"} /Filter /DCTDecode`,Q.data,!1);else{let ve="";if(Q.alpha){let ee=r.alloc();await r.stream(ee,`/Type /XObject /Subtype /Image /Width ${Q.width} /Height ${Q.height} /BitsPerComponent 8 /ColorSpace /DeviceGray`,Q.alpha),ve=` /SMask ${ee} 0 R`}await r.stream(we,`${ye} /ColorSpace /DeviceRGB${ve}`,Q.rgb)}return{name:ke,width:Q.width,height:Q.height}}catch{return null}})(),v.set(B,K)),K},C=[];for(let V of e){let I=V.height*Fe,B=P=>P*Fe,K=P=>I-P*Fe,N=new Cr,Q=(P,ne,fe)=>{let ge=P!=null&&P<1,de=!!ne&&!!fe;if(!ge&&!de)return!1;if(N.save(),ge&&N.op(`/${E(P)} gs`),de){let ce=B(fe.x+fe.w/2),ae=K(fe.y+fe.h/2),$e=-ne*Math.PI/180,T=Math.cos($e),H=Math.sin($e);N.op(`${X(T)} ${X(H)} ${X(-H)} ${X(T)} ${X(ce-T*ce+H*ae)} ${X(ae-H*ce-T*ae)} cm`)}return!0},we=(P,ne,fe,ge,de,ce,ae)=>{let $e=de*Fe;if($e<=0)return;let T=ae==="dashed"||ae==="dotted";T&&N.save(),N.lineWidth($e),N.stroke(ce),ae==="dashed"?N.op(`[${X(3*$e)} ${X(2*$e)}] 0 d`):ae==="dotted"&&N.op(`1 J [0 ${X(2*$e)}] 0 d`),N.op(`${X(B(P))} ${X(K(ne))} m ${X(B(fe))} ${X(K(ge))} l S`),T&&N.restore()},ke=(P,ne,fe,ge,de=0)=>{let ce=B(P),ae=K(ne+ge),$e=fe*Fe,T=ge*Fe,H=Math.min(de*Fe,$e/2,T/2);if(H<=0){N.op(`${X(ce)} ${X(ae)} ${X($e)} ${X(T)} re`);return}let pe=.5523*H,xe=ce+$e,h=ae+T;N.op(`${X(ce+H)} ${X(ae)} m ${X(xe-H)} ${X(ae)} l ${X(xe-H+pe)} ${X(ae)} ${X(xe)} ${X(ae+H-pe)} ${X(xe)} ${X(ae+H)} c ${X(xe)} ${X(h-H)} l ${X(xe)} ${X(h-H+pe)} ${X(xe-H+pe)} ${X(h)} ${X(xe-H)} ${X(h)} c ${X(ce+H)} ${X(h)} l ${X(ce+H-pe)} ${X(h)} ${X(ce)} ${X(h-H+pe)} ${X(ce)} ${X(h-H)} c ${X(ce)} ${X(ae+H)} l ${X(ce)} ${X(ae+H-pe)} ${X(ce+H-pe)} ${X(ae)} ${X(ce+H)} ${X(ae)} c h`)},ye=P=>{let ne=Q(P.opacity,void 0),fe=$t(P.fill);if(fe&&(N.fill(fe),ke(P.x,P.y,P.w,P.h,P.radius),N.op("f")),P.stroke&&P.stroke.width>0){let de=$t(P.stroke.color);if(de){let ce=P.stroke.width*Fe,ae=P.stroke.dash==="dashed"||P.stroke.dash==="dotted";ae&&N.save(),N.lineWidth(ce),N.stroke(de),P.stroke.dash==="dashed"?N.op(`[${X(3*ce)} ${X(2*ce)}] 0 d`):P.stroke.dash==="dotted"&&N.op(`1 J [0 ${X(2*ce)}] 0 d`),ke(P.x,P.y,P.w,P.h,P.radius),N.op("S"),ae&&N.restore()}}let ge=P.border;if(ge){let de=P.x+P.w,ce=P.y+P.h,ae=[[ge.top,P.x,P.y,de,P.y,!0],[ge.right,de,P.y,de,ce,!1],[ge.bottom,P.x,ce,de,ce,!0],[ge.left,P.x,P.y,P.x,ce,!1]];for(let[$e,T,H,pe,xe,h]of ae){if(!$e||!($e.width>0))continue;let M=$t($e.color);if(M)if($e.style==="double"){let w=$e.width/3,g=h?0:w,A=h?w:0;we(T-g,H-A,pe-g,xe-A,w,M),we(T+g,H+A,pe+g,xe+A,w,M)}else we(T,H,pe,xe,$e.width,M,$e.style)}}ne&&N.restore()},ve=P=>{let ne=$t(P.color);if(!ne)return;let fe=Q(P.opacity,void 0);we(P.x1,P.y1,P.x2,P.y2,P.width,ne,P.dash),fe&&N.restore()},ee=P=>{var $e;let ne=$t(P.fill),fe=$t(P.stroke);if(!ne&&!fe)return;let ge=P.d,de=[],ce=T=>Number(ge[T]);for(let T=0;T<ge.length;){let H=String(ge[T++]).toUpperCase();H==="M"||H==="L"?(de.push(`${X(B(ce(T)))} ${X(K(ce(T+1)))} ${H==="M"?"m":"l"}`),T+=2):H==="C"?(de.push(`${X(B(ce(T)))} ${X(K(ce(T+1)))} ${X(B(ce(T+2)))} ${X(K(ce(T+3)))} ${X(B(ce(T+4)))} ${X(K(ce(T+5)))} c`),T+=6):H==="Z"&&de.push("h")}if(!de.length)return;let ae=Q(P.opacity,void 0);ne&&N.fill(ne),fe&&(N.stroke(fe),N.lineWidth((($e=P.strokeWidth)!=null?$e:.2)*Fe)),N.op(de.join(" ")),N.op(ne&&fe?"B":ne?"f":"S"),ae&&N.restore()},Z=P=>{if(!P.lines.length)return;let ne=is(a,P.font.family),fe=c(ne!=null?ne:void 0,P.font.bold);if(!fe)return;let ge=c(y,P.font.bold),de=$t(P.color);if(de===null)return;let ce=de!=null?de:"0 0 0",ae=P.font.size,$e=(P.letterSpacing||0)*Fe,T=P.lines.filter($=>$.text).map($=>{let q=[],Y=0,he=0,ie=null;for(let me of $.text){let le=me.codePointAt(0),Se=fe,Pe=fe.font.glyphId(le);if(Pe===0&&ge&&ge!==fe){let mt=ge.font.glyphId(le);mt&&(Se=ge,Pe=mt)}Se.used.has(Pe)||Se.used.set(Pe,me),Y+=Se.font.advance(Pe)*ae/Se.font.unitsPerEm,he++,(!ie||ie.e!==Se)&&q.push(ie={e:Se,hex:""}),ie.hex+=Ar(Pe)}Y+=$e*he;let se=P.align==="right"?$.x*Fe+$.width*Fe-Y:P.align==="center"?$.x*Fe+($.width*Fe-Y)/2:$.x*Fe;return{runs:q,width:Y,x:se,y:K($.y)}});if(!T.length)return;let H=B(P.x),pe=P.w*Fe,xe=K(P.y),h=K(P.y+P.h),M=fe.font.ascent/fe.font.unitsPerEm*ae,w=-fe.font.descent/fe.font.unitsPerEm*ae,g=.5,A=T.some($=>$.x<H-g||$.x+$.width>H+pe+g||$.y+M>xe+g||$.y-w<h-g),L=Q(P.opacity,P.rotate,P);A&&(L||(N.save(),L=!0),N.op(`${X(H)} ${X(h)} ${X(pe)} ${X(xe-h)} re W n`));let b=P.font.italic?"0.2":"0";N.op("BT"),N.fill(ce),N.charSpace($e);for(let $ of T){N.op(`1 0 ${b} 1 ${X($.x)} ${X($.y)} Tm`);for(let q of $.runs)N.font(q.e.name,ae),q.e.fakeBold?(N.render(2),N.stroke(ce),N.lineWidth(ae*.03)):N.render(0),N.op(`<${q.hex}> Tj`)}if(N.op("ET"),P.underline||P.strike)for(let $ of T){if(P.underline){let q=$.y-.1*ae;N.lineWidth(ae*.05),N.stroke(ce),N.op(`${X($.x)} ${X(q)} m ${X($.x+$.width)} ${X(q)} l S`)}if(P.strike){let q=$.y+.3*ae;N.lineWidth(ae*.05),N.stroke(ce),N.op(`${X($.x)} ${X(q)} m ${X($.x+$.width)} ${X(q)} l S`)}}L&&N.restore()},be=async P=>{if(!P.src||P.w<=0||P.h<=0)return;let ne=await j(P.src,!!P.emboss);if(!ne)return;let fe=P.x,ge=P.y,de=P.w,ce=P.h;if(P.fit!=="fill"){let ae=(P.fit==="cover"?Math.max:Math.min)(P.w/ne.width,P.h/ne.height);de=ne.width*ae,ce=ne.height*ae,fe=P.x+(P.w-de)/2,ge=P.y+(P.h-ce)/2}Q(P.opacity,P.rotate,P)||N.save(),P.fit==="cover"&&(ke(P.x,P.y,P.w,P.h),N.op("W n")),N.op(`${X(de*Fe)} 0 0 ${X(ce*Fe)} ${X(B(fe))} ${X(K(ge+ce))} cm /${ne.name} Do`),N.restore()};for(let P of V.items)switch(P.kind){case"box":ye(P);break;case"line":ve(P);break;case"path":ee(P);break;case"text":Z(P);break;case"image":await be(P);break}let Me=r.alloc(),_=r.alloc();await r.stream(Me,"",Qe(N.parts.join(`
37
- `))),r.set(_,`<< /Type /Page /Parent ${s} 0 R /MediaBox [0 0 ${X(V.width*Fe)} ${X(I)}] /Resources ${l} 0 R /Contents ${Me} 0 R >>`),C.push(_)}let R=0;for(let V of x.values())await Ba(r,V,R++);let O=[...x.values()].map(V=>`/${V.name} ${V.id} 0 R`).join(" "),ue=[...p].map(([V,I])=>`/${I} << /Type /ExtGState /ca ${V} /CA ${V} >>`).join(" ");r.set(l,"<< /ProcSet [/PDF /Text /ImageB /ImageC]"+(O?` /Font << ${O} >>`:"")+(k.length?` /XObject << ${k.join(" ")} >>`:"")+(ue?` /ExtGState << ${ue} >>`:"")+" >>"),r.set(s,`<< /Type /Pages /Kids [${C.map(V=>`${V} 0 R`).join(" ")}] /Count ${C.length} >>`);let te=t.security?" /Extensions << /ADBE << /BaseVersion /1.7 /ExtensionLevel 8 >> >>":"";r.set(o,`<< /Type /Catalog /Pages ${s} 0 R${te} >>`);let z=new Date,U=V=>String(V).padStart(2,"0"),D=`<< /Producer (FreeReport) /CreationDate (${`D:${z.getUTCFullYear()}${U(z.getUTCMonth()+1)}${U(z.getUTCDate())}${U(z.getUTCHours())}${U(z.getUTCMinutes())}${U(z.getUTCSeconds())}Z`})`;if(t.title&&(D+=` /Title ${In(t.title)}`),t.author&&(D+=` /Author ${In(t.author)}`),t.subject&&(D+=` /Subject ${In(t.subject)}`),D+=` /Creator ${In(t.creator||"FreeReport")} >>`,r.set(i,D),!t.security)return r.build(o,i);let G=await ns(t.security),J=r.alloc();return r.set(J,G.dict,!0),r.build(o,i,{fileKey:G.fileKey,encryptId:J})}function Ia(e,t){let n=2166136261;for(let o of e+":"+t)n=Math.imul(n^o.charCodeAt(0),16777619)>>>0;let r="";for(let o=0;o<6;o++)r+=String.fromCharCode(65+n%26),n=Math.floor(n/26)+o*7;return r}async function Ba(e,t,n){let r=t.font,o=1e3/r.unitsPerEm,s=v=>Math.round(v*o),i=e.alloc(),l=e.alloc(),a=e.alloc(),u=e.alloc(),f=[...t.used.keys()].sort((v,k)=>v-k),m=`${Ia(r.postscriptName,n)}+${r.postscriptName}${t.fakeBold?",Bold":""}`,y="";for(let v=0;v<f.length;){let k=v,S=[s(r.advance(f[v]))];for(;k+1<f.length&&f[k+1]===f[k]+1;)k++,S.push(s(r.advance(f[k])));y+=`${f[v]} [${S.join(" ")}] `,v=k+1}let x=Jo(r,new Set(f));await e.stream(a,`/Length1 ${x.length}`,x);let d=r.bbox.map(s);e.set(l,`<< /Type /FontDescriptor /FontName /${m} /Flags ${r.flags} /FontBBox [${d.join(" ")}] /ItalicAngle ${X(r.italicAngle)} /Ascent ${s(r.ascent)} /Descent ${s(r.descent)} /CapHeight ${s(r.capHeight)} /StemV ${t.fakeBold?120:80} /FontFile2 ${a} 0 R >>`),e.set(i,`<< /Type /Font /Subtype /CIDFontType2 /BaseFont /${m} /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> /FontDescriptor ${l} 0 R /DW ${s(r.advance(0))} /W [${y.trim()}] /CIDToGIDMap /Identity >>`);let c=f.filter(v=>v!==0),p="";for(let v=0;v<c.length;v+=100){let k=c.slice(v,v+100);p+=`${k.length} beginbfchar
38
- `+k.map(S=>`<${Ar(S)}> <${as(t.used.get(S))}>`).join(`
36
+ `,o.push(Qe(i));let w=new Uint8Array(s+o[o.length-1].length),k=0;for(let d of o)w.set(d,k),k+=d.length;return w}},Cr=class{constructor(){this.parts=[];this.st={font:"",tc:0,tr:0,fill:"0 0 0",stroke:"0 0 0",lw:1};this.stack=[]}op(t){this.parts.push(t)}save(){this.parts.push("q"),this.stack.push({...this.st})}restore(){this.parts.push("Q"),this.st=this.stack.pop()}fill(t){t!==this.st.fill&&(this.st.fill=t,this.parts.push(t+" rg"))}stroke(t){t!==this.st.stroke&&(this.st.stroke=t,this.parts.push(t+" RG"))}lineWidth(t){t!==this.st.lw&&(this.st.lw=t,this.parts.push(X(t)+" w"))}font(t,n){let r=`/${t} ${X(n)} Tf`;r!==this.st.font&&(this.st.font=r,this.parts.push(r))}charSpace(t){t!==this.st.tc&&(this.st.tc=t,this.parts.push(X(t)+" Tc"))}render(t){t!==this.st.tr&&(this.st.tr=t,this.parts.push(t+" Tr"))}};function as(e,t){var r,o;let n=new Map(Object.keys(e).map(s=>[s.toLowerCase(),s]));for(let s of(t||"").split(",")){let a=n.get(s.trim().replace(/^['"]|['"]$/g,"").toLowerCase());if(a)return a}return(o=(r=n.get("default"))!=null?r:Object.keys(e)[0])!=null?o:null}function Fi(e){if(e[0]!==255||e[1]!==216)return null;let t=2;for(;t+9<e.length;){if(e[t]!==255){t++;continue}let n=e[t+1];if(n===216||n===1||n>=208&&n<=215||n===255){t+=n===255?1:2;continue}let r=e[t+2]<<8|e[t+3];if(n>=192&&n<=207&&n!==196&&n!==200&&n!==204)return{height:e[t+5]<<8|e[t+6],width:e[t+7]<<8|e[t+8],comps:e[t+9]};t+=2+r}return null}async function Di(e){try{if(typeof fetch=="undefined")return null;let t=await fetch(e);if(!t.ok)return null;let n=new Uint8Array(await t.arrayBuffer()),r=Fi(n);if(r&&(r.comps===1||r.comps===3))return{kind:"jpeg",data:n,width:r.width,height:r.height,gray:r.comps===1};let o,s,a,l=new TextDecoder().decode(n.subarray(0,512)).trimStart(),i=l.startsWith("<svg")||l.startsWith("<?xml")&&l.includes("<svg"),u=new Blob([n],i?{type:"image/svg+xml"}:void 0);if(i&&typeof document!="undefined"){let k=URL.createObjectURL(u);try{let d=new Image;await new Promise((M,$)=>{d.onload=()=>M(),d.onerror=()=>$(new Error("image")),d.src=k});let c=(d.naturalWidth||1)/(d.naturalHeight||1);o=c>=1?800:Math.round(800*c),s=c>=1?Math.round(800/c):800;let m=document.createElement("canvas");m.width=o,m.height=s;let E=m.getContext("2d");E.drawImage(d,0,0,o,s),a=E.getImageData(0,0,o,s).data}finally{URL.revokeObjectURL(k)}}else if(typeof createImageBitmap=="function"&&typeof OffscreenCanvas!="undefined"){let k=await createImageBitmap(u);o=k.width,s=k.height;let d=new OffscreenCanvas(o,s).getContext("2d");d.drawImage(k,0,0),a=d.getImageData(0,0,o,s).data}else if(typeof document!="undefined"){let k=URL.createObjectURL(u);try{let d=new Image;await new Promise((E,M)=>{d.onload=()=>E(),d.onerror=()=>M(new Error("image")),d.src=k}),o=d.naturalWidth,s=d.naturalHeight;let c=document.createElement("canvas");c.width=o,c.height=s;let m=c.getContext("2d");m.drawImage(d,0,0),a=m.getImageData(0,0,o,s).data}finally{URL.revokeObjectURL(k)}}else return null;if(!o||!s)return null;let f=new Uint8Array(o*s*3),g=new Uint8Array(o*s),w=!0;for(let k=0,d=0;k<o*s;k++,d+=4)f[k*3]=a[d],f[k*3+1]=a[d+1],f[k*3+2]=a[d+2],g[k]=a[d+3],a[d+3]!==255&&(w=!1);return{kind:"raw",rgb:f,alpha:w?void 0:g,width:o,height:s}}catch{return null}}async function vt(e,t){var Z,se;let n=(Z=t.compress)!=null?Z:typeof CompressionStream!="undefined",r=new jr(n),o=r.alloc(),s=r.alloc(),a=r.alloc(),l=r.alloc(),i=t.fonts||{},u=new Map,f=[],g=(W,I)=>{let B=`${W}\0${I}`;if(u.has(B)||!i[W])return;let K=i[W],N=I&&K.bold!=null;u.set(B,null),f.push(Dt(N?K.bold:K.normal).then(J=>{u.set(B,{bytes:J,fakeBold:I&&!N})}))},w=Object.keys(i).find(W=>W.toLowerCase()==="default");for(let W of e)for(let I of W.items){if(I.kind!=="text"||!I.lines.some(K=>K.text))continue;let B=as(i,I.font.family);if(!B)throw new Error('FreeReport PDF: no fonts configured; pass opts.fonts with at least a "default" TrueType font');g(B,I.font.bold),w&&g(w,I.font.bold)}await Promise.all(f);let k=new Map,d=new Map,c=(W,I)=>{if(!W)return null;let B=u.get(`${W}\0${I}`);if(!B)return null;let K=d.get(B.bytes);K===void 0&&d.set(B.bytes,K=d.size);let N=`${K}|${B.fakeBold}`,J=k.get(N);return J||(J={font:Ai(B.bytes),fakeBold:B.fakeBold,name:"F"+(k.size+1),id:r.alloc(),used:new Map},k.set(N,J)),J},m=new Map,E=W=>{let I=X(Math.max(0,Math.min(1,W))),B=m.get(I);return B||m.set(I,B="GS"+(m.size+1)),B},M=new Map,$=[],S=(se=t.loadImage)!=null?se:Di,P=(W,I)=>{let B=(I?"emboss:":"")+W,K=M.get(B);return K||(K=(async()=>{try{let N=W;I&&(N=await Tt(W));let J=await S(N);if(!J||!J.width||!J.height)return null;let ye=r.alloc(),ke="Im"+($.length+1);$.push(`/${ke} ${ye} 0 R`);let ve=`/Type /XObject /Subtype /Image /Width ${J.width} /Height ${J.height} /BitsPerComponent 8`;if(J.kind==="jpeg")await r.stream(ye,`${ve} /ColorSpace /Device${J.gray?"Gray":"RGB"} /Filter /DCTDecode`,J.data,!1);else{let $e="";if(J.alpha){let ee=r.alloc();await r.stream(ee,`/Type /XObject /Subtype /Image /Width ${J.width} /Height ${J.height} /BitsPerComponent 8 /ColorSpace /DeviceGray`,J.alpha),$e=` /SMask ${ee} 0 R`}await r.stream(ye,`${ve} /ColorSpace /DeviceRGB${$e}`,J.rgb)}return{name:ke,width:J.width,height:J.height}}catch{return null}})(),M.set(B,K)),K},L=[];for(let W of e){let I=W.height*Fe,B=T=>T*Fe,K=T=>I-T*Fe,N=new Cr,J=(T,ne,de)=>{let me=T!=null&&T<1,ae=!!ne&&!!de;if(!me&&!ae)return!1;if(N.save(),me&&N.op(`/${E(T)} gs`),ae){let ce=B(de.x+de.w/2),ie=K(de.y+de.h/2),xe=-ne*Math.PI/180,ge=Math.cos(xe),he=Math.sin(xe);N.op(`${X(ge)} ${X(he)} ${X(-he)} ${X(ge)} ${X(ce-ge*ce+he*ie)} ${X(ie-he*ce-ge*ie)} cm`)}return!0},ye=(T,ne,de,me,ae,ce,ie)=>{let xe=ae*Fe;if(xe<=0)return;let ge=ie==="dashed"||ie==="dotted";ge&&N.save(),N.lineWidth(xe),N.stroke(ce),ie==="dashed"?N.op(`[${X(3*xe)} ${X(2*xe)}] 0 d`):ie==="dotted"&&N.op(`1 J [0 ${X(2*xe)}] 0 d`),N.op(`${X(B(T))} ${X(K(ne))} m ${X(B(de))} ${X(K(me))} l S`),ge&&N.restore()},ke=(T,ne,de,me,ae=0)=>{let ce=B(T),ie=K(ne+me),xe=de*Fe,ge=me*Fe,he=Math.min(ae*Fe,xe/2,ge/2);if(he<=0){N.op(`${X(ce)} ${X(ie)} ${X(xe)} ${X(ge)} re`);return}let Re=.5523*he,j=ce+xe,p=ie+ge;N.op(`${X(ce+he)} ${X(ie)} m ${X(j-he)} ${X(ie)} l ${X(j-he+Re)} ${X(ie)} ${X(j)} ${X(ie+he-Re)} ${X(j)} ${X(ie+he)} c ${X(j)} ${X(p-he)} l ${X(j)} ${X(p-he+Re)} ${X(j-he+Re)} ${X(p)} ${X(j-he)} ${X(p)} c ${X(ce+he)} ${X(p)} l ${X(ce+he-Re)} ${X(p)} ${X(ce)} ${X(p-he+Re)} ${X(ce)} ${X(p-he)} c ${X(ce)} ${X(ie+he)} l ${X(ce)} ${X(ie+he-Re)} ${X(ce+he-Re)} ${X(ie)} ${X(ce+he)} ${X(ie)} c h`)},ve=T=>{let ne=J(T.opacity,void 0),de=$t(T.fill);if(de&&(N.fill(de),ke(T.x,T.y,T.w,T.h,T.radius),N.op("f")),T.stroke&&T.stroke.width>0){let ae=$t(T.stroke.color);if(ae){let ce=T.stroke.width*Fe,ie=T.stroke.dash==="dashed"||T.stroke.dash==="dotted";ie&&N.save(),N.lineWidth(ce),N.stroke(ae),T.stroke.dash==="dashed"?N.op(`[${X(3*ce)} ${X(2*ce)}] 0 d`):T.stroke.dash==="dotted"&&N.op(`1 J [0 ${X(2*ce)}] 0 d`),ke(T.x,T.y,T.w,T.h,T.radius),N.op("S"),ie&&N.restore()}}let me=T.border;if(me){let ae=T.x+T.w,ce=T.y+T.h,ie=[[me.top,T.x,T.y,ae,T.y,!0],[me.right,ae,T.y,ae,ce,!1],[me.bottom,T.x,ce,ae,ce,!0],[me.left,T.x,T.y,T.x,ce,!1]];for(let[xe,ge,he,Re,j,p]of ie){if(!xe||!(xe.width>0))continue;let x=$t(xe.color);if(x)if(xe.style==="double"){let y=xe.width/3,h=p?0:y,A=p?y:0;ye(ge-h,he-A,Re-h,j-A,y,x),ye(ge+h,he+A,Re+h,j+A,y,x)}else ye(ge,he,Re,j,xe.width,x,xe.style)}}ne&&N.restore()},$e=T=>{let ne=$t(T.color);if(!ne)return;let de=J(T.opacity,void 0);ye(T.x1,T.y1,T.x2,T.y2,T.width,ne,T.dash),de&&N.restore()},ee=T=>{var xe;let ne=$t(T.fill),de=$t(T.stroke);if(!ne&&!de)return;let me=T.d,ae=[],ce=ge=>Number(me[ge]);for(let ge=0;ge<me.length;){let he=String(me[ge++]).toUpperCase();he==="M"||he==="L"?(ae.push(`${X(B(ce(ge)))} ${X(K(ce(ge+1)))} ${he==="M"?"m":"l"}`),ge+=2):he==="C"?(ae.push(`${X(B(ce(ge)))} ${X(K(ce(ge+1)))} ${X(B(ce(ge+2)))} ${X(K(ce(ge+3)))} ${X(B(ce(ge+4)))} ${X(K(ce(ge+5)))} c`),ge+=6):he==="Z"&&ae.push("h")}if(!ae.length)return;let ie=J(T.opacity,void 0);ne&&N.fill(ne),de&&(N.stroke(de),N.lineWidth(((xe=T.strokeWidth)!=null?xe:.2)*Fe)),N.op(ae.join(" ")),N.op(ne&&de?"B":ne?"f":"S"),ie&&N.restore()},_=T=>{if(!T.lines.length)return;let ne=as(i,T.font.family),de=c(ne!=null?ne:void 0,T.font.bold);if(!de)return;let me=c(w,T.font.bold),ae=$t(T.color);if(ae===null)return;let ce=ae!=null?ae:"0 0 0",ie=T.font.size,xe=(T.letterSpacing||0)*Fe,ge=T.lines.filter(v=>v.text).map(v=>{let O=[],V=0,pe=0,oe=null;for(let fe of v.text){let le=fe.codePointAt(0),Me=de,Pe=de.font.glyphId(le);if(Pe===0&&me&&me!==de){let mt=me.font.glyphId(le);mt&&(Me=me,Pe=mt)}Me.used.has(Pe)||Me.used.set(Pe,fe),V+=Me.font.advance(Pe)*ie/Me.font.unitsPerEm,pe++,(!oe||oe.e!==Me)&&O.push(oe={e:Me,hex:""}),oe.hex+=Ar(Pe)}V+=xe*pe;let re=T.align==="right"?v.x*Fe+v.width*Fe-V:T.align==="center"?v.x*Fe+(v.width*Fe-V)/2:v.x*Fe;return{runs:O,width:V,x:re,y:K(v.y)}});if(!ge.length)return;let he=B(T.x),Re=T.w*Fe,j=K(T.y),p=K(T.y+T.h),x=de.font.ascent/de.font.unitsPerEm*ie,y=-de.font.descent/de.font.unitsPerEm*ie,h=.5,A=ge.some(v=>v.x<he-h||v.x+v.width>he+Re+h||v.y+x>j+h||v.y-y<p-h),C=J(T.opacity,T.rotate,T);A&&(C||(N.save(),C=!0),N.op(`${X(he)} ${X(p)} ${X(Re)} ${X(j-p)} re W n`));let b=T.font.italic?"0.2":"0";N.op("BT"),N.fill(ce),N.charSpace(xe);for(let v of ge){N.op(`1 0 ${b} 1 ${X(v.x)} ${X(v.y)} Tm`);for(let O of v.runs)N.font(O.e.name,ie),O.e.fakeBold?(N.render(2),N.stroke(ce),N.lineWidth(ie*.03)):N.render(0),N.op(`<${O.hex}> Tj`)}if(N.op("ET"),T.underline||T.strike)for(let v of ge){if(T.underline){let O=v.y-.1*ie;N.lineWidth(ie*.05),N.stroke(ce),N.op(`${X(v.x)} ${X(O)} m ${X(v.x+v.width)} ${X(O)} l S`)}if(T.strike){let O=v.y+.3*ie;N.lineWidth(ie*.05),N.stroke(ce),N.op(`${X(v.x)} ${X(O)} m ${X(v.x+v.width)} ${X(O)} l S`)}}C&&N.restore()},be=async T=>{if(!T.src||T.w<=0||T.h<=0)return;let ne=await P(T.src,!!T.emboss);if(!ne)return;let de=T.x,me=T.y,ae=T.w,ce=T.h;if(T.fit!=="fill"){let ie=(T.fit==="cover"?Math.max:Math.min)(T.w/ne.width,T.h/ne.height);ae=ne.width*ie,ce=ne.height*ie,de=T.x+(T.w-ae)/2,me=T.y+(T.h-ce)/2}J(T.opacity,T.rotate,T)||N.save(),T.fit==="cover"&&(ke(T.x,T.y,T.w,T.h),N.op("W n")),N.op(`${X(ae*Fe)} 0 0 ${X(ce*Fe)} ${X(B(de))} ${X(K(me+ce))} cm /${ne.name} Do`),N.restore()};for(let T of W.items)switch(T.kind){case"box":ve(T);break;case"line":$e(T);break;case"path":ee(T);break;case"text":_(T);break;case"image":await be(T);break}let we=r.alloc(),U=r.alloc();await r.stream(we,"",Qe(N.parts.join(`
37
+ `))),r.set(U,`<< /Type /Page /Parent ${s} 0 R /MediaBox [0 0 ${X(W.width*Fe)} ${X(I)}] /Resources ${l} 0 R /Contents ${we} 0 R >>`),L.push(U)}let R=0;for(let W of k.values())await Bi(r,W,R++);let H=[...k.values()].map(W=>`/${W.name} ${W.id} 0 R`).join(" "),ue=[...m].map(([W,I])=>`/${I} << /Type /ExtGState /ca ${W} /CA ${W} >>`).join(" ");r.set(l,"<< /ProcSet [/PDF /Text /ImageB /ImageC]"+(H?` /Font << ${H} >>`:"")+($.length?` /XObject << ${$.join(" ")} >>`:"")+(ue?` /ExtGState << ${ue} >>`:"")+" >>"),r.set(s,`<< /Type /Pages /Kids [${L.map(W=>`${W} 0 R`).join(" ")}] /Count ${L.length} >>`);let Q=t.security?" /Extensions << /ADBE << /BaseVersion /1.7 /ExtensionLevel 8 >> >>":"";r.set(o,`<< /Type /Catalog /Pages ${s} 0 R${Q} >>`);let q=new Date,z=W=>String(W).padStart(2,"0"),D=`<< /Producer (FreeReport) /CreationDate (${`D:${q.getUTCFullYear()}${z(q.getUTCMonth()+1)}${z(q.getUTCDate())}${z(q.getUTCHours())}${z(q.getUTCMinutes())}${z(q.getUTCSeconds())}Z`})`;if(t.title&&(D+=` /Title ${In(t.title)}`),t.author&&(D+=` /Author ${In(t.author)}`),t.subject&&(D+=` /Subject ${In(t.subject)}`),D+=` /Creator ${In(t.creator||"FreeReport")} >>`,r.set(a,D),!t.security)return r.build(o,a);let G=await ns(t.security),Y=r.alloc();return r.set(Y,G.dict,!0),r.build(o,a,{fileKey:G.fileKey,encryptId:Y})}function Ii(e,t){let n=2166136261;for(let o of e+":"+t)n=Math.imul(n^o.charCodeAt(0),16777619)>>>0;let r="";for(let o=0;o<6;o++)r+=String.fromCharCode(65+n%26),n=Math.floor(n/26)+o*7;return r}async function Bi(e,t,n){let r=t.font,o=1e3/r.unitsPerEm,s=M=>Math.round(M*o),a=e.alloc(),l=e.alloc(),i=e.alloc(),u=e.alloc(),f=[...t.used.keys()].sort((M,$)=>M-$),g=`${Ii(r.postscriptName,n)}+${r.postscriptName}${t.fakeBold?",Bold":""}`,w="";for(let M=0;M<f.length;){let $=M,S=[s(r.advance(f[M]))];for(;$+1<f.length&&f[$+1]===f[$]+1;)$++,S.push(s(r.advance(f[$])));w+=`${f[M]} [${S.join(" ")}] `,M=$+1}let k=Jo(r,new Set(f));await e.stream(i,`/Length1 ${k.length}`,k);let d=r.bbox.map(s);e.set(l,`<< /Type /FontDescriptor /FontName /${g} /Flags ${r.flags} /FontBBox [${d.join(" ")}] /ItalicAngle ${X(r.italicAngle)} /Ascent ${s(r.ascent)} /Descent ${s(r.descent)} /CapHeight ${s(r.capHeight)} /StemV ${t.fakeBold?120:80} /FontFile2 ${i} 0 R >>`),e.set(a,`<< /Type /Font /Subtype /CIDFontType2 /BaseFont /${g} /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> /FontDescriptor ${l} 0 R /DW ${s(r.advance(0))} /W [${w.trim()}] /CIDToGIDMap /Identity >>`);let c=f.filter(M=>M!==0),m="";for(let M=0;M<c.length;M+=100){let $=c.slice(M,M+100);m+=`${$.length} beginbfchar
38
+ `+$.map(S=>`<${Ar(S)}> <${is(t.used.get(S))}>`).join(`
39
39
  `)+`
40
40
  endbfchar
41
41
  `}let E=`/CIDInit /ProcSet findresource begin
@@ -47,17 +47,17 @@ begincmap
47
47
  1 begincodespacerange
48
48
  <0000> <FFFF>
49
49
  endcodespacerange
50
- `+p+`endcmap
50
+ `+m+`endcmap
51
51
  CMapName currentdict /CMap defineresource pop
52
52
  end
53
- end`;await e.stream(u,"",Qe(E)),e.set(t.id,`<< /Type /Font /Subtype /Type0 /BaseFont /${m} /Encoding /Identity-H /DescendantFonts [${i} 0 R] /ToUnicode ${u} 0 R >>`)}async function Bn(e,t={}){var a,u,f;if(!e.length)return;let n=t.pages?t.pages.map(m=>e[m]).filter(Boolean):e,{width:r,height:o}=n[0],s=document.createElement("iframe");s.setAttribute("aria-hidden","true"),s.style.cssText="position:fixed;right:0;bottom:0;width:1px;height:1px;border:0;opacity:0;pointer-events:none",document.body.appendChild(s);let i=s.contentDocument;i.open(),i.write(`<!doctype html><html><head><meta charset="utf-8"><title>${((a=t.title)!=null?a:"Report").replace(/</g,"&lt;")}</title><style>
53
+ end`;await e.stream(u,"",Qe(E)),e.set(t.id,`<< /Type /Font /Subtype /Type0 /BaseFont /${g} /Encoding /Identity-H /DescendantFonts [${a} 0 R] /ToUnicode ${u} 0 R >>`)}async function Bn(e,t={}){var i,u,f;if(!e.length)return;let n=t.pages?t.pages.map(g=>e[g]).filter(Boolean):e,{width:r,height:o}=n[0],s=document.createElement("iframe");s.setAttribute("aria-hidden","true"),s.style.cssText="position:fixed;right:0;bottom:0;width:1px;height:1px;border:0;opacity:0;pointer-events:none",document.body.appendChild(s);let a=s.contentDocument;a.open(),a.write(`<!doctype html><html><head><meta charset="utf-8"><title>${((i=t.title)!=null?i:"Report").replace(/</g,"&lt;")}</title><style>
54
54
  @page { size: ${r}mm ${o}mm; margin: 0; }
55
55
  html, body { margin: 0; padding: 0; background: #fff; }
56
56
  .p { width: ${r}mm; height: ${o}mm; overflow: hidden; break-after: page; page-break-after: always; }
57
57
  .p:last-child { break-after: auto; page-break-after: auto; }
58
58
  .p svg { display: block; width: ${r}mm; height: ${o}mm; }
59
59
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
60
- </style></head><body>${n.map(m=>`<div class="p">${tt(m)}</div>`).join("")}</body></html>`),i.close(),Ht((u=t.families)!=null?u:["Nanum Gothic"],i),bt(i);let l=s.contentWindow;await new Promise(m=>setTimeout(m,50));try{await Promise.race([(f=i.fonts)==null?void 0:f.ready,new Promise(y=>setTimeout(y,3e3))]);let m=[...i.querySelectorAll("image")].map(y=>{let x=y.getAttribute("href");if(!x)return Promise.resolve();let d=new Image;return d.src=x,d.decode().catch(()=>{})});await Promise.race([Promise.all(m),new Promise(y=>setTimeout(y,4e3))]),await new Promise(y=>setTimeout(y,300))}catch{}await new Promise(m=>{let y=!1,x=()=>{y||(y=!0,setTimeout(()=>s.remove(),500),m())};l.addEventListener("afterprint",x,{once:!0}),l.focus(),l.print(),setTimeout(m,1e3),setTimeout(x,10*6e4)})}function cs(e){return{...e,updateAvailable:typeof e.updateAvailable=="string"?e.updateAvailable:null,latestVersion:typeof e.latestVersion=="string"?e.latestVersion:null,outdated:e.outdated===!0}}var ot=class extends Error{constructor(n,r,o){super(n);this.code=r;this.status=o;this.name="AgentError"}},ls=[18731,18732,18733,18734,18735],Lr="freereport:agent-token",us=600,Na="FreeReport Print Agent",Mt=null;function Ha(){var e,t;try{return(t=(e=globalThis.localStorage)==null?void 0:e.getItem(Lr))!=null?t:null}catch{return null}}function Fr(e){var t,n;try{e?(t=globalThis.localStorage)==null||t.setItem(Lr,e):(n=globalThis.localStorage)==null||n.removeItem(Lr)}catch{}}var Hn=null,fs=()=>{var e;return(e=Ha())!=null?e:Hn};async function en(e,t={}){var o,s;let n=new AbortController,r=t.timeout?setTimeout(()=>n.abort(),t.timeout):void 0;try{let i={...t.headers},l=fs();l&&(i["x-freereport-token"]=l);let a=await fetch(e,{...t,headers:i,signal:n.signal,cache:"no-store"}),u=await a.json().catch(()=>({}));if(!a.ok)throw new ot((o=u.message)!=null?o:`HTTP ${a.status}`,(s=u.error)!=null?s:"http_error",a.status);return u}finally{r&&clearTimeout(r)}}async function Oa(e){let t=await en(`http://127.0.0.1:${e}/v1/status`,{timeout:us});if((t==null?void 0:t.name)!==Na)throw new Error("not the agent");return cs(t)}async function ds(){if(Mt||await st.detect())return Mt;throw new ot("FreeReport Print Agent is not running on this PC.","not_running",0)}async function Nn(e,t={}){let n=await ds();if(!fs()&&!await st.pair())throw new ot("The user did not allow printing from this site.","denied",403);try{return await en(n+e,t)}catch(r){if(r instanceof ot&&r.code==="not_paired"&&(Fr(null),Hn=null,await st.pair()))return en(n+e,t);throw r}}function qa(e){let t="";for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode.apply(null,e.subarray(n,n+32768));return btoa(t)}var st={async detect(){if(typeof fetch=="undefined")return null;if(Mt)try{return cs(await en(`${Mt}/v1/status`,{timeout:us}))}catch{Mt=null}let e=async t=>({port:t,status:await Oa(t)});try{let t=await e(ls[0]).catch(()=>Promise.any(ls.slice(1).map(e)));return Mt=`http://127.0.0.1:${t.port}`,t.status}catch{return null}},async pair(){var n;let e=await ds(),t=(n=globalThis.location)==null?void 0:n.origin;try{let r=await en(`${e}/v1/pair`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({origin:t}),timeout:7e4});return Hn=r.token,Fr(r.token),!0}catch(r){if(r instanceof ot&&(r.code==="denied"||r.code==="busy"))return!1;throw r}},printers(){return Nn("/v1/printers",{timeout:15e3})},async print(e,t={}){let n=e instanceof Uint8Array?e:new Uint8Array(e instanceof Blob?await e.arrayBuffer():e);return Nn("/v1/print",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({...t,pdf:qa(n)}),timeout:18e4})},job(e){return Nn(`/v1/jobs/${encodeURIComponent(e)}`,{timeout:5e3})},logs(e=50){return Nn(`/v1/logs?limit=${e}`,{timeout:5e3})},forget(){Fr(null),Hn=null}};var On={pdf:"application/pdf",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",csv:"text/csv;charset=utf-8",hwpx:"application/hwp+zip"};function Dr(e,t){let n=URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.download=t,r.style.display="none",document.body.appendChild(r),r.click(),setTimeout(()=>{URL.revokeObjectURL(n),r.remove()},1e3)}var za=e=>e.replace(/[\\/:*?"<>|]+/g,"_").trim()||"report";function qn(e,t={},n={}){let r=e,o=t,s={...n.params},i=null;nr(n.licenseKey);let l=()=>i!=null?i:i=At(r,o,{...n,params:s}),a=async(f,m)=>{var d;if(!n.onOutput)return!0;let y=l();return await n.onOutput({kind:f,report:(d=r.name)!=null?d:"report",pages:y.pages.length,rows:y.rowCount,params:s,fileName:m})!==!1},u={get definition(){return r},layout:l,async ready(){return await at(r),i=null,l()},setData(f){o=f,i=null},fingerprint(){var m;let f=l();return(m=f.fingerprint)!=null?m:jt(f.pages)},setParams(f){s={...f},i=null},setDefinition(f){r=f,i=null},async print(f={}){if(!await a("print"))return!1;if(n.directPrint&&typeof window!="undefined"){let m=await st.detect();if(m&&(m.paired||await st.pair())){let y=l().pages,x=f.pages?f.pages.map(p=>y[p]).filter(Boolean):y,d=await vt(x,{fonts:Jn(x),title:r.name,creator:"FreeReport"}),c=typeof n.directPrint=="object"?n.directPrint:{};return await st.print(d,{report:r.name,jobName:r.name,...c}),!0}}return await Bn(l().pages,{families:Yn(r),pages:f.pages,title:r.name}),!0},async toPdf(){if(!await a("pdf"))return null;let f=l().pages,m=await vt(f,{fonts:Jn(f),title:r.name,author:n.author,creator:"FreeReport",security:n.pdfSecurity});return new Blob([m],{type:On.pdf})},async toXlsx(f="form"){if(!await a(f==="data"?"xlsx-data":"xlsx"))return null;let m=f==="data"?Ft(r,o,{params:s}):Lt(l(),r);return new Blob([m],{type:On.xlsx})},async toHwpx(){return await a("hwpx")?new Blob([Cn(l(),r)],{type:On.hwpx}):null},async toCsv(){return await a("csv")?new Blob([Pn(r,o,{params:s})],{type:On.csv}):null},async download(f,m){var c;let y=za((c=m!=null?m:r.name)!=null?c:"report"),x=f==="pdf"?await u.toPdf():f==="csv"?await u.toCsv():f==="hwpx"?await u.toHwpx():await u.toXlsx(f==="xlsx-data"?"data":"form");if(!x)return!1;let d=f==="pdf"?"pdf":f==="csv"?"csv":f==="hwpx"?"hwpx":"xlsx";return Dr(x,/\.\w+$/.test(y)?y:`${y}.${d}`),!0}};return u}var Ua={ko:{find:"\uCC3E\uAE30",findNone:"\uCC3E\uB294 \uB0B4\uC6A9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",findCount:(e,t)=>`${e} / ${t}`,first:"\uCCAB \uD398\uC774\uC9C0",prev:"\uC774\uC804 \uD398\uC774\uC9C0",next:"\uB2E4\uC74C \uD398\uC774\uC9C0",last:"\uB9C8\uC9C0\uB9C9 \uD398\uC774\uC9C0",zoomIn:"\uD655\uB300",zoomOut:"\uCD95\uC18C",fitWidth:"\uD3ED \uB9DE\uCDA4",fitPage:"\uCABD \uB9DE\uCDA4",print:"\uC778\uC1C4",pdf:"PDF",xlsx:"\uC5D1\uC140",xlsxForm:"\uC5D1\uC140 (\uC591\uC2DD \uADF8\uB300\uB85C)",xlsxData:"\uC5D1\uC140 (\uB370\uC774\uD130)",hwpx:"\uD55C\uAE00 (HWPX)",save:"\uC800\uC7A5",csv:"CSV",params:"\uC870\uD68C \uC870\uAC74",search:"\uC870\uD68C",loading:"\uBCF4\uACE0\uC11C\uB97C \uB9CC\uB4DC\uB294 \uC911\u2026",exporting:"\uD30C\uC77C\uC744 \uB9CC\uB4DC\uB294 \uC911\u2026",pages:e=>`${e}\uCABD`,rows:e=>`${e.toLocaleString("ko")}\uAC74`,empty:"\uD45C\uC2DC\uD560 \uD398\uC774\uC9C0\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4",error:"\uBCF4\uACE0\uC11C\uB97C \uB9CC\uB4E4\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4",page:"\uD398\uC774\uC9C0",required:"\uD544\uC218 \uD56D\uBAA9\uC785\uB2C8\uB2E4",yes:"\uC608",no:"\uC544\uB2C8\uC694"},en:{find:"Find",findNone:"No matches",findCount:(e,t)=>`${e} of ${t}`,first:"First page",prev:"Previous page",next:"Next page",last:"Last page",zoomIn:"Zoom in",zoomOut:"Zoom out",fitWidth:"Fit width",fitPage:"Fit page",print:"Print",pdf:"PDF",xlsx:"Excel",xlsxForm:"Excel (as printed)",xlsxData:"Excel (data)",hwpx:"Hangul (HWPX)",save:"Save",csv:"CSV",params:"Parameters",search:"Run",loading:"Building the report\u2026",exporting:"Creating the file\u2026",pages:e=>`${e} pages`,rows:e=>`${e.toLocaleString("en")} rows`,empty:"No pages to show",error:"The report could not be built",page:"Page",required:"Required",yes:"Yes",no:"No"}},Ga={first:"M18 6l-6 6 6 6M7 6v12",prev:"M15 6l-6 6 6 6",next:"M9 6l6 6-6 6",last:"M6 6l6 6-6 6M17 6v12",search:"M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14zM20 20l-4-4",minus:"M6 12h12",plus:"M12 6v12M6 12h12",print:"M7 9V4h10v5M7 17H5a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-2M7 14h10v6H7z",file:"M14 3H7a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7zM14 3v4h4",filter:"M4 5h16l-6 8v5l-4 2v-7z",caret:"M7 10l5 5 5-5"},ze=e=>`<svg viewBox="0 0 24 24" width="18" height="18" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="${Ga[e]}"/></svg>`,It=96/25.4,Wa=16;function ps(e,t,n,r){var u,f,m;let o=`fr-p-${e.replace(/[^\w-]/g,"_")}`,s=`<label for="${o}">${it((u=t.label)!=null?u:e)}${t.required?' <b aria-hidden="true">*</b>':""}</label>`,i=n==null?"":n instanceof Date?n.toISOString().slice(0,10):String(n),l=t.required?" required":"";if(t.type==="select"||t.options)return`<div class="fr-param">${s}<select id="${o}" name="${it(e)}"${l}>${((f=t.options)!=null?f:[]).map(y=>{var x;return`<option value="${it(String(y.value))}"${String(y.value)===i?" selected":""}>${it(String((x=y.label)!=null?x:y.value))}</option>`}).join("")}</select></div>`;if(t.type==="boolean")return`<div class="fr-param">${s}<select id="${o}" name="${it(e)}" data-type="boolean"><option value="true"${n===!0?" selected":""}>${r.yes}</option><option value="false"${n!==!0?" selected":""}>${r.no}</option></select></div>`;let a=t.type==="number"?"number":t.type==="date"?"date":"text";return`<div class="fr-param">${s}<input id="${o}" name="${it(e)}" type="${a}" value="${it(i)}" data-type="${it(String((m=t.type)!=null?m:"string"))}"${l}></div>`}var it=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");function zn(e,t){var fe,ge,de,ce,ae,$e;let n=Ua[(fe=t.lang)!=null?fe:"ko"],r={pages:!0,zoom:!0,search:!0,print:!0,pdf:!0,xlsx:!0,xlsxData:!0,csv:!1,hwpx:!0,params:!0,...t.toolbar},o=t.definition,s=!!o.params&&Object.keys(o.params).length>0,i={};for(let[T,H]of Object.entries((ge=o.params)!=null?ge:{}))i[T]=H.default;i={...i,...t.params};let l=qn(o,(de=t.data)!=null?de:{},{...t,params:i}),a=null,u=(ce=t.zoom)!=null?ce:"width",f=1,m=0,y=!1;e.classList.add("fr-viewer"),e.innerHTML=`
60
+ </style></head><body>${n.map(g=>`<div class="p">${tt(g)}</div>`).join("")}</body></html>`),a.close(),Ht((u=t.families)!=null?u:["Nanum Gothic"],a),bt(a);let l=s.contentWindow;await new Promise(g=>setTimeout(g,50));try{await Promise.race([(f=a.fonts)==null?void 0:f.ready,new Promise(w=>setTimeout(w,3e3))]);let g=[...a.querySelectorAll("image")].map(w=>{let k=w.getAttribute("href");if(!k)return Promise.resolve();let d=new Image;return d.src=k,d.decode().catch(()=>{})});await Promise.race([Promise.all(g),new Promise(w=>setTimeout(w,4e3))]),await new Promise(w=>setTimeout(w,300))}catch{}await new Promise(g=>{let w=!1,k=()=>{w||(w=!0,setTimeout(()=>s.remove(),500),g())};l.addEventListener("afterprint",k,{once:!0}),l.focus(),l.print(),setTimeout(g,1e3),setTimeout(k,10*6e4)})}function cs(e){return{...e,updateAvailable:typeof e.updateAvailable=="string"?e.updateAvailable:null,latestVersion:typeof e.latestVersion=="string"?e.latestVersion:null,outdated:e.outdated===!0}}var ot=class extends Error{constructor(n,r,o){super(n);this.code=r;this.status=o;this.name="AgentError"}},ls=[18731,18732,18733,18734,18735],Lr="freereport:agent-token",us=600,Ni="FreeReport Print Agent",Mt=null;function Hi(){var e,t;try{return(t=(e=globalThis.localStorage)==null?void 0:e.getItem(Lr))!=null?t:null}catch{return null}}function Fr(e){var t,n;try{e?(t=globalThis.localStorage)==null||t.setItem(Lr,e):(n=globalThis.localStorage)==null||n.removeItem(Lr)}catch{}}var Hn=null,fs=()=>{var e;return(e=Hi())!=null?e:Hn};async function en(e,t={}){var o,s;let n=new AbortController,r=t.timeout?setTimeout(()=>n.abort(),t.timeout):void 0;try{let a={...t.headers},l=fs();l&&(a["x-freereport-token"]=l);let i=await fetch(e,{...t,headers:a,signal:n.signal,cache:"no-store"}),u=await i.json().catch(()=>({}));if(!i.ok)throw new ot((o=u.message)!=null?o:`HTTP ${i.status}`,(s=u.error)!=null?s:"http_error",i.status);return u}finally{r&&clearTimeout(r)}}async function Oi(e){let t=await en(`http://127.0.0.1:${e}/v1/status`,{timeout:us});if((t==null?void 0:t.name)!==Ni)throw new Error("not the agent");return cs(t)}async function ds(){if(Mt||await st.detect())return Mt;throw new ot("FreeReport Print Agent is not running on this PC.","not_running",0)}async function Nn(e,t={}){let n=await ds();if(!fs()&&!await st.pair())throw new ot("The user did not allow printing from this site.","denied",403);try{return await en(n+e,t)}catch(r){if(r instanceof ot&&r.code==="not_paired"&&(Fr(null),Hn=null,await st.pair()))return en(n+e,t);throw r}}function qi(e){let t="";for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode.apply(null,e.subarray(n,n+32768));return btoa(t)}var st={async detect(){if(typeof fetch=="undefined")return null;if(Mt)try{return cs(await en(`${Mt}/v1/status`,{timeout:us}))}catch{Mt=null}let e=async t=>({port:t,status:await Oi(t)});try{let t=await e(ls[0]).catch(()=>Promise.any(ls.slice(1).map(e)));return Mt=`http://127.0.0.1:${t.port}`,t.status}catch{return null}},async pair(){var n;let e=await ds(),t=(n=globalThis.location)==null?void 0:n.origin;try{let r=await en(`${e}/v1/pair`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({origin:t}),timeout:7e4});return Hn=r.token,Fr(r.token),!0}catch(r){if(r instanceof ot&&(r.code==="denied"||r.code==="busy"))return!1;throw r}},printers(){return Nn("/v1/printers",{timeout:15e3})},async print(e,t={}){let n=e instanceof Uint8Array?e:new Uint8Array(e instanceof Blob?await e.arrayBuffer():e);return Nn("/v1/print",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({...t,pdf:qi(n)}),timeout:18e4})},job(e){return Nn(`/v1/jobs/${encodeURIComponent(e)}`,{timeout:5e3})},logs(e=50){return Nn(`/v1/logs?limit=${e}`,{timeout:5e3})},forget(){Fr(null),Hn=null}};var On={pdf:"application/pdf",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",csv:"text/csv;charset=utf-8",hwpx:"application/hwp+zip"};function Dr(e,t){let n=URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.download=t,r.style.display="none",document.body.appendChild(r),r.click(),setTimeout(()=>{URL.revokeObjectURL(n),r.remove()},1e3)}var zi=e=>e.replace(/[\\/:*?"<>|]+/g,"_").trim()||"report";function qn(e,t={},n={}){let r=e,o=t,s={...n.params},a=null;nr(n.licenseKey);let l=()=>a!=null?a:a=At(r,o,{...n,params:s}),i=async(f,g)=>{var d;if(!n.onOutput)return!0;let w=l();return await n.onOutput({kind:f,report:(d=r.name)!=null?d:"report",pages:w.pages.length,rows:w.rowCount,params:s,fileName:g})!==!1},u={get definition(){return r},layout:l,async ready(){return await it(r),a=null,l()},setData(f){o=f,a=null},fingerprint(){var g;let f=l();return(g=f.fingerprint)!=null?g:jt(f.pages)},setParams(f){s={...f},a=null},setDefinition(f){r=f,a=null},async print(f={}){if(!await i("print"))return!1;if(n.directPrint&&typeof window!="undefined"){let g=await st.detect();if(g&&(g.paired||await st.pair())){let w=l().pages,k=f.pages?f.pages.map(m=>w[m]).filter(Boolean):w,d=await vt(k,{fonts:Jn(k),title:r.name,creator:"FreeReport"}),c=typeof n.directPrint=="object"?n.directPrint:{};return await st.print(d,{report:r.name,jobName:r.name,...c}),!0}}return await Bn(l().pages,{families:Yn(r),pages:f.pages,title:r.name}),!0},async toPdf(){if(!await i("pdf"))return null;let f=l().pages,g=await vt(f,{fonts:Jn(f),title:r.name,author:n.author,creator:"FreeReport",security:n.pdfSecurity});return new Blob([g],{type:On.pdf})},async toXlsx(f="form"){if(!await i(f==="data"?"xlsx-data":"xlsx"))return null;let g=f==="data"?Ft(r,o,{params:s}):Lt(l(),r);return new Blob([g],{type:On.xlsx})},async toHwpx(){return await i("hwpx")?new Blob([Cn(l(),r)],{type:On.hwpx}):null},async toCsv(){return await i("csv")?new Blob([Pn(r,o,{params:s})],{type:On.csv}):null},async download(f,g){var c;let w=zi((c=g!=null?g:r.name)!=null?c:"report"),k=f==="pdf"?await u.toPdf():f==="csv"?await u.toCsv():f==="hwpx"?await u.toHwpx():await u.toXlsx(f==="xlsx-data"?"data":"form");if(!k)return!1;let d=f==="pdf"?"pdf":f==="csv"?"csv":f==="hwpx"?"hwpx":"xlsx";return Dr(k,/\.\w+$/.test(w)?w:`${w}.${d}`),!0}};return u}var Ui={ko:{find:"\uCC3E\uAE30",findNone:"\uCC3E\uB294 \uB0B4\uC6A9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",findCount:(e,t)=>`${e} / ${t}`,first:"\uCCAB \uD398\uC774\uC9C0",prev:"\uC774\uC804 \uD398\uC774\uC9C0",next:"\uB2E4\uC74C \uD398\uC774\uC9C0",last:"\uB9C8\uC9C0\uB9C9 \uD398\uC774\uC9C0",zoomIn:"\uD655\uB300",zoomOut:"\uCD95\uC18C",fitWidth:"\uD3ED \uB9DE\uCDA4",fitPage:"\uCABD \uB9DE\uCDA4",print:"\uC778\uC1C4",pdf:"PDF",xlsx:"\uC5D1\uC140",xlsxForm:"\uC5D1\uC140 (\uC591\uC2DD \uADF8\uB300\uB85C)",xlsxData:"\uC5D1\uC140 (\uB370\uC774\uD130)",hwpx:"\uD55C\uAE00 (HWPX)",save:"\uC800\uC7A5",csv:"CSV",params:"\uC870\uD68C \uC870\uAC74",search:"\uC870\uD68C",loading:"\uBCF4\uACE0\uC11C\uB97C \uB9CC\uB4DC\uB294 \uC911\u2026",exporting:"\uD30C\uC77C\uC744 \uB9CC\uB4DC\uB294 \uC911\u2026",pages:e=>`${e}\uCABD`,rows:e=>`${e.toLocaleString("ko")}\uAC74`,empty:"\uD45C\uC2DC\uD560 \uD398\uC774\uC9C0\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4",error:"\uBCF4\uACE0\uC11C\uB97C \uB9CC\uB4E4\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4",page:"\uD398\uC774\uC9C0",required:"\uD544\uC218 \uD56D\uBAA9\uC785\uB2C8\uB2E4",yes:"\uC608",no:"\uC544\uB2C8\uC694"},en:{find:"Find",findNone:"No matches",findCount:(e,t)=>`${e} of ${t}`,first:"First page",prev:"Previous page",next:"Next page",last:"Last page",zoomIn:"Zoom in",zoomOut:"Zoom out",fitWidth:"Fit width",fitPage:"Fit page",print:"Print",pdf:"PDF",xlsx:"Excel",xlsxForm:"Excel (as printed)",xlsxData:"Excel (data)",hwpx:"Hangul (HWPX)",save:"Save",csv:"CSV",params:"Parameters",search:"Run",loading:"Building the report\u2026",exporting:"Creating the file\u2026",pages:e=>`${e} pages`,rows:e=>`${e.toLocaleString("en")} rows`,empty:"No pages to show",error:"The report could not be built",page:"Page",required:"Required",yes:"Yes",no:"No"}},Gi={first:"M18 6l-6 6 6 6M7 6v12",prev:"M15 6l-6 6 6 6",next:"M9 6l6 6-6 6",last:"M6 6l6 6-6 6M17 6v12",search:"M11 18a7 7 0 1 0 0-14 7 7 0 0 0 0 14zM20 20l-4-4",minus:"M6 12h12",plus:"M12 6v12M6 12h12",print:"M7 9V4h10v5M7 17H5a1 1 0 0 1-1-1v-6a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1h-2M7 14h10v6H7z",file:"M14 3H7a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7zM14 3v4h4",filter:"M4 5h16l-6 8v5l-4 2v-7z",caret:"M7 10l5 5 5-5"},ze=e=>`<svg viewBox="0 0 24 24" width="18" height="18" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="${Gi[e]}"/></svg>`,It=96/25.4,Wi=16;function ps(e,t,n,r){var u,f,g;let o=`fr-p-${e.replace(/[^\w-]/g,"_")}`,s=`<label for="${o}">${at((u=t.label)!=null?u:e)}${t.required?' <b aria-hidden="true">*</b>':""}</label>`,a=n==null?"":n instanceof Date?n.toISOString().slice(0,10):String(n),l=t.required?" required":"";if(t.type==="select"||t.options)return`<div class="fr-param">${s}<select id="${o}" name="${at(e)}"${l}>${((f=t.options)!=null?f:[]).map(w=>{var k;return`<option value="${at(String(w.value))}"${String(w.value)===a?" selected":""}>${at(String((k=w.label)!=null?k:w.value))}</option>`}).join("")}</select></div>`;if(t.type==="boolean")return`<div class="fr-param">${s}<select id="${o}" name="${at(e)}" data-type="boolean"><option value="true"${n===!0?" selected":""}>${r.yes}</option><option value="false"${n!==!0?" selected":""}>${r.no}</option></select></div>`;let i=t.type==="number"?"number":t.type==="date"?"date":"text";return`<div class="fr-param">${s}<input id="${o}" name="${at(e)}" type="${i}" value="${at(a)}" data-type="${at(String((g=t.type)!=null?g:"string"))}"${l}></div>`}var at=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");function zn(e,t){var ce,ie,xe,ge,he,Re;let n=Ui[(ce=t.lang)!=null?ce:"ko"],r={pages:!0,zoom:!0,search:!0,print:!0,pdf:!0,xlsx:!0,xlsxData:!0,csv:!1,hwpx:!0,params:!0,...t.toolbar},o=t.definition,s=!!o.params&&Object.keys(o.params).length>0,a={};for(let[j,p]of Object.entries((ie=o.params)!=null?ie:{}))a[j]=p.default;a={...a,...t.params};let l=qn(o,(xe=t.data)!=null?xe:{},{...t,params:a}),i=null,u=(ge=t.zoom)!=null?ge:"width",f=1,g=0,w=!1;e.classList.add("fr-viewer"),e.innerHTML=`
61
61
  <div class="fr-toolbar" role="toolbar">
62
62
  ${r.params&&s?`<button type="button" class="fr-btn fr-params-toggle" aria-expanded="false">${ze("filter")}<span>${n.params}</span></button><span class="fr-sep"></span>`:""}
63
63
  ${r.pages?`<button type="button" class="fr-btn fr-icon" data-act="first" title="${n.first}" aria-label="${n.first}">${ze("first")}</button>
@@ -66,7 +66,7 @@ html, body { margin: 0; padding: 0; background: #fff; }
66
66
  <button type="button" class="fr-btn fr-icon" data-act="next" title="${n.next}" aria-label="${n.next}">${ze("next")}</button>
67
67
  <button type="button" class="fr-btn fr-icon" data-act="last" title="${n.last}" aria-label="${n.last}">${ze("last")}</button><span class="fr-sep"></span>`:""}
68
68
  ${r.zoom?`<button type="button" class="fr-btn fr-icon" data-act="zoomOut" title="${n.zoomOut}" aria-label="${n.zoomOut}">${ze("minus")}</button>
69
- <select class="fr-zoom" aria-label="Zoom"><option value="width">${n.fitWidth}</option><option value="page">${n.fitPage}</option>${[.5,.75,1,1.25,1.5,2].map(T=>`<option value="${T}">${Math.round(T*100)}%</option>`).join("")}<option value="custom" hidden></option></select>
69
+ <select class="fr-zoom" aria-label="Zoom"><option value="width">${n.fitWidth}</option><option value="page">${n.fitPage}</option>${[.5,.75,1,1.25,1.5,2].map(j=>`<option value="${j}">${Math.round(j*100)}%</option>`).join("")}<option value="custom" hidden></option></select>
70
70
  <button type="button" class="fr-btn fr-icon" data-act="zoomIn" title="${n.zoomIn}" aria-label="${n.zoomIn}">${ze("plus")}</button>`:""}
71
71
  ${r.search?`<span class="fr-sep"></span><span class="fr-search">${ze("search")}<input type="search" aria-label="${n.find}" placeholder="${n.find}"><span class="fr-search-count" aria-live="polite"></span></span>`:""}
72
72
  <span class="fr-spacer"></span>
@@ -80,9 +80,9 @@ html, body { margin: 0; padding: 0; background: #fff; }
80
80
  ${r.csv?`<button type="button" role="menuitem" data-act="csv">${n.csv}</button>`:""}
81
81
  </span></span>`:""}
82
82
  </div>
83
- ${s?`<form class="fr-params" hidden>${Object.entries(o.params).map(([T,H])=>ps(T,H,i[T],n)).join("")}<button type="submit" class="fr-btn fr-primary">${n.search}</button></form>`:""}
83
+ ${s?`<form class="fr-params" hidden>${Object.entries(o.params).map(([j,p])=>ps(j,p,a[j],n)).join("")}<button type="submit" class="fr-btn fr-primary">${n.search}</button></form>`:""}
84
84
  <div class="fr-body" tabindex="0"><div class="fr-pages"></div><div class="fr-overlay" hidden><span class="fr-spinner"></span><span class="fr-overlay-text"></span></div></div>
85
- <div class="fr-status" aria-live="polite"><span class="fr-status-text"></span><a class="fr-badge" href="https://freereport.app/pricing/" target="_blank" rel="noopener" hidden>FreeReport \xB7 \uBB34\uB8CC \uC0AC\uC6A9</a></div>`;let x=T=>e.querySelector(T),d=x(".fr-body"),c=x(".fr-pages"),p=x(".fr-overlay"),E=x(".fr-status-text"),v=x(".fr-pageno input"),k=x(".fr-total"),S=x(".fr-zoom"),j=x(".fr-params"),C=x(".fr-params-toggle"),R=x('[data-act="menu"]'),O=x(".fr-menu-list"),ue=T=>{p.hidden=T===null,x(".fr-overlay-text").textContent=T!=null?T:""},te=T=>{!j||!C||(j.hidden=!T,C.setAttribute("aria-expanded",String(T)))};te(($e=t.paramsOpen)!=null?$e:Object.entries((ae=o.params)!=null?ae:{}).some(([,T])=>T.required&&T.default===void 0));let z=null,U=()=>{if(!a)return 1;let T=Math.max(100,d.clientWidth-48),H=Math.max(100,d.clientHeight-32);return u==="width"?Math.min(1.25,T/(a.width*It)):u==="page"?Math.min(T/(a.width*It),H/(a.height*It)):u},F=T=>{if(!a||T.dataset.drawn)return;let H=Number(T.dataset.index);T.innerHTML=tt(a.pages[H],{className:"fr-page-svg"}),T.dataset.drawn="1",bt(T)},D=()=>{if(!a)return;f=U();let T=a.width*It*f,H=a.height*It*f;if(c.style.setProperty("--fr-page-w",`${T}px`),c.style.setProperty("--fr-page-h",`${H}px`),S){let pe=typeof u=="number"?String(u):u,xe=[...S.options].some(M=>M.value===pe),h=S.querySelector('option[value="custom"]');h.hidden=xe,h.textContent=`${Math.round(f*100)}%`,S.value=xe?pe:"custom"}},G=()=>{if(z==null||z.disconnect(),c.innerHTML="",!a)return;if(!a.pages.length){c.innerHTML=`<p class="fr-empty">${n.empty}</p>`;return}let T=document.createDocumentFragment();a.pages.forEach((H,pe)=>{let xe=document.createElement("div");xe.className="fr-page",xe.dataset.index=String(pe),xe.setAttribute("aria-label",`${n.page} ${pe+1}`),T.appendChild(xe)}),c.appendChild(T),D(),z=typeof IntersectionObserver!="undefined"?new IntersectionObserver(H=>{for(let pe of H)pe.isIntersecting&&F(pe.target);J()},{root:d,rootMargin:"600px 0px"}):null,c.querySelectorAll(".fr-page").forEach((H,pe)=>z?z.observe(H):pe<3&&F(H)),k&&(k.textContent=`/ ${a.pages.length}`),be="",ee=[],E.textContent=`${n.pages(a.pages.length)} \xB7 ${n.rows(a.rowCount)} \xB7 ${a.ms}ms`,J()},J=()=>{if(!a)return;let T=a.height*It*f+Wa;m=Math.min(a.pages.length-1,Math.max(0,Math.round(d.scrollTop/T))),v&&document.activeElement!==v&&(v.value=String(m+1))},W=T=>{if(!a)return;let H=Math.min(a.pages.length-1,Math.max(0,T)),pe=c.children[H];pe&&(d.scrollTop=pe.offsetTop-c.offsetTop),m=H,v&&(v.value=String(H+1))},oe=T=>{let H=a?d.scrollTop/Math.max(1,d.scrollHeight):0;u=typeof T=="number"?Math.min(4,Math.max(.25,T)):T,D(),d.scrollTop=H*d.scrollHeight},V=0,I=async()=>{var H;let T=++V;ue(n.loading);try{if(t.fetchData){let pe=await t.fetchData(i);if(T!==V)return;l.setData(pe)}if(l.setParams(i),await at(l.definition),y)return;a=l.layout(),G()}catch(pe){console.error(pe),c.innerHTML=`<p class="fr-empty">${n.error}: ${it(String((H=pe.message)!=null?H:pe))}</p>`}finally{ue(null)}},B=async T=>{ue(n.exporting);try{await l.download(T,t.fileName)}catch(H){console.error(H),K(`${n.error}: ${H.message}`)}finally{ue(null)}},K=T=>{E.textContent=T},N=()=>{!O||!R||(O.hidden=!0,R.setAttribute("aria-expanded","false"))},Q=new AbortController;e.addEventListener("click",T=>{var xe;let H=T.target.closest("[data-act]");if(!H||!e.contains(H)){T.target.closest(".fr-menu")||N();return}let pe=H.dataset.act;switch(pe!=="menu"&&N(),pe){case"first":W(0);break;case"prev":W(m-1);break;case"next":W(m+1);break;case"last":W(((xe=a==null?void 0:a.pages.length)!=null?xe:1)-1);break;case"zoomIn":oe(Math.round((f+.1)*10)/10);break;case"zoomOut":oe(Math.round((f-.1)*10)/10);break;case"print":l.print().catch(h=>K(`${n.error}: ${h.message}`));break;case"pdf":B("pdf");break;case"xlsx":B("xlsx");break;case"xlsxData":B("xlsx-data");break;case"csv":B("csv");break;case"hwpx":B("hwpx");break;case"findNext":ne(1);break;case"menu":{let h=O.hidden;O.hidden=!h,R.setAttribute("aria-expanded",String(h));break}}},{signal:Q.signal});let we=T=>{e.contains(T.target)||N()};document.addEventListener("click",we),C==null||C.addEventListener("click",()=>te(j.hidden)),S==null||S.addEventListener("change",()=>{let T=S.value;T!=="custom"&&oe(T==="width"||T==="page"?T:Number(T))}),v==null||v.addEventListener("change",()=>W(Number(v.value)-1)),v==null||v.addEventListener("keydown",T=>{T.key==="Enter"&&W(Number(v.value)-1)}),d.addEventListener("scroll",()=>J(),{passive:!0}),d.addEventListener("keydown",T=>{var H;T.key==="PageDown"||T.key==="ArrowRight"&&!T.altKey?(T.preventDefault(),W(m+1)):T.key==="PageUp"||T.key==="ArrowLeft"?(T.preventDefault(),W(m-1)):T.key==="Home"&&T.ctrlKey?(T.preventDefault(),W(0)):T.key==="End"&&T.ctrlKey?(T.preventDefault(),W(((H=a==null?void 0:a.pages.length)!=null?H:1)-1)):(T.ctrlKey||T.metaKey)&&T.key.toLowerCase()==="p"?(T.preventDefault(),l.print()):(T.ctrlKey||T.metaKey)&&T.key.toLowerCase()==="f"&&ye?(T.preventDefault(),ye.focus(),ye.select()):(T.ctrlKey||T.metaKey)&&(T.key==="+"||T.key==="=")?(T.preventDefault(),oe(f+.1)):(T.ctrlKey||T.metaKey)&&T.key==="-"&&(T.preventDefault(),oe(f-.1))}),d.addEventListener("wheel",T=>{T.ctrlKey&&(T.preventDefault(),oe(Math.round(f*(T.deltaY<0?1.1:1/1.1)*100)/100))},{passive:!1}),j==null||j.addEventListener("submit",T=>{T.preventDefault();let H={...i};j.querySelectorAll("input, select").forEach(pe=>{let xe=pe.dataset.type,h=pe.value;H[pe.name]=xe==="number"?h===""?null:Number(h):xe==="boolean"?h==="true":h}),i=H,I()});let ke=typeof ResizeObserver!="undefined"?new ResizeObserver(()=>{typeof u!="number"&&D()}):null;ke==null||ke.observe(d);let ye=x(".fr-search input"),ve=x(".fr-search-count"),ee=[],Z=-1,be="",Me=1,_=T=>{if(ee=[],!a||!T)return;let H=T.toLowerCase();a.pages.forEach((pe,xe)=>{var h;for(let M of pe.items)if(!(M.kind!=="text"||((h=M.source)==null?void 0:h.band)==="watermark"))for(let w of M.lines){let g=w.text.toLowerCase().indexOf(H);if(g<0)continue;let A=[...w.text].length||1,L=M.font.size*(25.4/72);ee.push({page:xe,x:w.x+w.width*g/A,y:w.y-L*.85,w:Math.max(1,w.width*[...T].length/A),h:L*1.1*Me})}})},P=()=>{if(c.querySelectorAll(".fr-hit").forEach(M=>M.remove()),!a||Z<0||!ee[Z])return;let T=ee[Z];W(T.page);let H=c.children[T.page];F(H);let pe=document.createElement("div");pe.className="fr-hit";let xe=H.clientWidth/a.width,h=H.clientHeight/a.height;Object.assign(pe.style,{left:`${T.x*xe}px`,top:`${T.y*h}px`,width:`${T.w*xe}px`,height:`${T.h*h}px`}),H.appendChild(pe),d.scrollTop=H.offsetTop-c.offsetTop+T.y*h-d.clientHeight/3},ne=T=>{var pe;let H=(pe=ye==null?void 0:ye.value.trim())!=null?pe:"";if(H!==be&&(be=H,_(H),Z=-1),!ee.length){ve&&(ve.textContent=H?n.findNone:""),P();return}Z=(Z+T+ee.length)%ee.length,ve&&(ve.textContent=n.findCount(Z+1,ee.length)),P()};return ye==null||ye.addEventListener("keydown",T=>{T.key==="Enter"?(T.preventDefault(),ne(T.shiftKey?-1:1)):T.key==="Escape"&&(ye.value="",ne(1),d.focus())}),ye==null||ye.addEventListener("input",()=>{ye.value||ne(1)}),eo(t.licenseKey).then(T=>{let H=x(".fr-badge");H&&T&&(H.hidden=!1)}),I(),{report:l,refresh:I,async setData(T){l.setData(T),await I()},async setParams(T){i={...i,...T},await I()},async setDefinition(T){var pe,xe,h;l.setDefinition(T);let H=x(".fr-params");if(H){let M={};for(let[w,g]of Object.entries((pe=T.params)!=null?pe:{}))M[w]=(xe=i[w])!=null?xe:g.default;i=M,H.innerHTML=`${Object.entries((h=T.params)!=null?h:{}).map(([w,g])=>ps(w,g,i[w],n)).join("")}<button type="submit" class="fr-btn fr-primary">${n.search}</button>`}await I()},goTo:T=>W(T-1),setZoom:oe,print:()=>l.print(),destroy(){y=!0,z==null||z.disconnect(),ke==null||ke.disconnect(),document.removeEventListener("click",we),Q.abort(),e.innerHTML="",e.classList.remove("fr-viewer")}}}function et(e){var o,s;let t=e.bands,n=[],r=(i,l,a,u)=>{l&&n.push({key:i,band:l,group:a,groupIndex:u})};return r("title",t.title),r("pageHeader",t.pageHeader),r("columnHeader",t.columnHeader),((o=t.groups)!=null?o:[]).forEach((i,l)=>r(`groupHeader:${l}`,i.header,i,l)),r("detail",t.detail),[...(s=t.groups)!=null?s:[]].map((i,l)=>[i,l]).reverse().forEach(([i,l])=>r(`groupFooter:${l}`,i.footer,i,l)),r("summary",t.summary),r("noData",t.noData),r("pageFooter",t.pageFooter),n}function Be(e,t){var o,s,i,l;let[n,r]=t.split(":");return n==="groupHeader"?(s=(o=e.bands.groups)==null?void 0:o[Number(r)])==null?void 0:s.header:n==="groupFooter"?(l=(i=e.bands.groups)==null?void 0:i[Number(r)])==null?void 0:l.footer:e.bands[n]}function Ir(e,t,n){var i;let[r,o]=t.split(":");if(r==="groupHeader"||r==="groupFooter"){let l=(i=e.bands.groups)==null?void 0:i[Number(o)];if(!l)return;r==="groupHeader"?l.header=n:l.footer=n;return}let s=r;n?e.bands[s]=n:delete e.bands[s]}var ms=0;function Bt(e){let t=new Set;for(let r of et(e))for(let o of r.band.elements)o.id&&t.add(o.id);let n=new Set;for(let r of et(e))for(let o of r.band.elements){if(o.id&&/^[\w-]{1,64}$/.test(String(o.id))&&!n.has(o.id)){n.add(o.id);continue}let s;do s=`e${++ms}`;while(t.has(s));t.add(s),n.add(s),o.id=s}}function Nt(e){let t=new Set(et(e).flatMap(r=>r.band.elements.map(o=>o.id))),n;do n=`e${++ms}`;while(t.has(n));return n}function He(e,t){for(let n of et(e)){let r=n.band.elements.findIndex(o=>o.id===t);if(r>=0)return{slot:n,el:n.band.elements[r],index:r}}return null}function hs(e,t,n,r,o,s){let i=Math.min(Math.max(o,5),8);switch(e){case"field":return{id:t,type:"field",x:n,y:r,w:30,h:i,expr:s!=null?s:"field",style:void 0};case"line":return{id:t,type:"line",x:n,y:r,w:40,h:0,width:.2};case"rect":return{id:t,type:"rect",x:n,y:r,w:30,h:15,width:.2};case"image":return{id:t,type:"image",x:n,y:r,w:25,h:15,src:"",fit:"contain"};case"barcode":return{id:t,type:"barcode",x:n,y:r,w:45,h:12,expr:"'ABC-12345'",format:"code128"};case"qr":return{id:t,type:"barcode",x:n,y:r,w:18,h:18,expr:"'https://freereport.app'",format:"qr"};case"chart":return{id:t,type:"chart",x:n,y:r,w:90,h:50,chartType:"bar",category:s!=null?s:"name",series:[{expr:"value"}]};case"table":return{id:t,type:"table",x:n,y:r,w:120,h:18,source:"items",columns:[{header:"\uD488\uBAA9",expr:"name"},{header:"\uC218\uB7C9",expr:"qty",width:20,format:"#,##0"},{header:"\uAE08\uC561",expr:"amount",width:30,format:"#,##0",sum:!0}]};case"crosstab":return{id:t,type:"crosstab",x:n,y:r,w:150,h:30,rowKey:s!=null?s:"region",columnKey:"category",value:"amount",corner:""};case"pageNumber":return{id:t,type:"text",x:n,y:r,w:30,h:i,text:"{page} / {pages}",style:{align:"center"}};case"today":return{id:t,type:"text",x:n,y:r,w:30,h:i,text:"{format(today(), 'yyyy-MM-dd')}"};default:return{id:t,type:"text",x:n,y:r,w:30,h:i,text:"\uD14D\uC2A4\uD2B8"}}}var Ve=e=>{if(typeof structuredClone=="function")try{return structuredClone(e)}catch{}return JSON.parse(JSON.stringify(e))};function tn(){return{version:1,name:"\uC0C8 \uBCF4\uACE0\uC11C",page:{size:"A4",orientation:"portrait",margins:15},font:{family:"Nanum Gothic",size:9},bands:{title:{height:14,elements:[{id:"e1",type:"text",x:0,y:0,w:180,h:12,text:"\uBCF4\uACE0\uC11C \uC81C\uBAA9",style:{fontSize:16,bold:!0,align:"center"}}]},columnHeader:{height:7,elements:[]},detail:{height:6,elements:[]},summary:{height:8,elements:[]},pageFooter:{height:8,elements:[{id:"e2",type:"text",x:0,y:1,w:180,h:6,text:"{page} / {pages}",style:{align:"center",fontSize:8}}]}}}}var gs={ko:{report:"\uBCF4\uACE0\uC11C",name:"\uC774\uB984",page:"\uC6A9\uC9C0",size:"\uD06C\uAE30",orientation:"\uBC29\uD5A5",portrait:"\uC138\uB85C",landscape:"\uAC00\uB85C",margins:"\uC5EC\uBC31 (\uC0C1 \uC6B0 \uD558 \uC88C, mm)",font:"\uAE30\uBCF8 \uAE00\uAF34",fontSize:"\uAE00\uC790 \uD06C\uAE30 (pt)",dataSource:"\uB370\uC774\uD130 \uBC30\uC5F4 \uC774\uB984",sort:"\uC815\uB82C (\uC27C\uD45C\uB85C \uAD6C\uBD84, -\uB294 \uB0B4\uB9BC\uCC28\uC21C)",filter:"\uD544\uD130 \uC2DD",fillEmpty:"\uBE48 \uD589\uC73C\uB85C \uD398\uC774\uC9C0 \uCC44\uC6B0\uAE30",skipHeader:"\uCCAB \uD398\uC774\uC9C0\uC5D0 \uBA38\uB9AC\uAE00 \uC228\uAE30\uAE30",watermark:"\uC6CC\uD130\uB9C8\uD06C \uBB38\uAD6C",wmRepeat:"\uC804\uBA74 \uBC18\uBCF5 (\uBCF4\uC548 \uD328\uD134)",wmOpacity:"\uC6CC\uD130\uB9C8\uD06C \uBD88\uD22C\uBA85\uB3C4",emboss:"\uC5E0\uBCF4\uC2F1 \uBB38\uAD6C",embossCenter:"\uC5E0\uBCF4\uC2F1 \uAC00\uC6B4\uB370 \uAE00\uC790",params:"\uD30C\uB77C\uBBF8\uD130 (JSON)",position:"\uC704\uCE58\uC640 \uD06C\uAE30 (mm)",x:"X",y:"Y",w:"\uB108\uBE44",h:"\uB192\uC774",text:"\uD14D\uC2A4\uD2B8 (\uC911\uAD04\uD638 \uC548\uC740 \uC2DD: {amount:#,##0})",expr:"\uC2DD",format:"\uC11C\uC2DD (#,##0 \xB7 yyyy-MM-dd \xB7 korean)",nullText:"\uAC12\uC774 \uC5C6\uC744 \uB54C",suppress:"\uAC19\uC740 \uAC12 \uBC18\uBCF5 \uC228\uAE30\uAE30",visible:"\uD45C\uC2DC \uC870\uAC74 (\uC2DD)",canGrow:"\uB0B4\uC6A9\uC5D0 \uB9DE\uCDB0 \uB298\uB9AC\uAE30",stretch:"\uBC34\uB4DC \uB192\uC774 \uB530\uB77C\uAC00\uAE30",style:"\uC2A4\uD0C0\uC77C",bold:"\uAD75\uAC8C",italic:"\uAE30\uC6B8\uC784",underline:"\uBC11\uC904",strike:"\uCDE8\uC18C\uC120",color:"\uAE00\uC790\uC0C9",background:"\uBC30\uACBD\uC0C9",align:"\uAC00\uB85C \uC815\uB82C",valign:"\uC138\uB85C \uC815\uB82C",left:"\uC67C\uCABD",center:"\uAC00\uC6B4\uB370",right:"\uC624\uB978\uCABD",justify:"\uC591\uCABD",top:"\uC704",middle:"\uAC00\uC6B4\uB370",bottom:"\uC544\uB798",border:"\uD14C\uB450\uB9AC",none:"\uC5C6\uC74C",all:"\uBAA8\uB450",borderWidth:"\uD14C\uB450\uB9AC \uB450\uAED8 (mm)",borderColor:"\uD14C\uB450\uB9AC \uC0C9",padding:"\uC548\uCABD \uC5EC\uBC31 (mm)",wrap:"\uC904\uBC14\uAFC8",shrink:"\uAE00\uC790 \uC904\uC5EC \uB9DE\uCD94\uAE30",lineColor:"\uC120 \uC0C9",lineWidth:"\uC120 \uB450\uAED8 (mm)",dash:"\uC120 \uBAA8\uC591",solid:"\uC2E4\uC120",dashed:"\uD30C\uC120",dotted:"\uC810\uC120",fill:"\uCC44\uC6B0\uAE30",radius:"\uBAA8\uC11C\uB9AC \uB465\uAE00\uAE30",src:"\uC774\uBBF8\uC9C0 \uC8FC\uC18C",fit:"\uB9DE\uCDA4",contain:"\uBE44\uC728 \uC720\uC9C0",cover:"\uCC44\uC6B0\uAE30(\uC798\uB9BC)",stretchFit:"\uB298\uC774\uAE30",barcode:"\uBC14\uCF54\uB4DC \uC885\uB958",showText:"\uAC12 \uD45C\uC2DC",ecc:"\uC624\uB958 \uC815\uC815",chartType:"\uCC28\uD2B8 \uC885\uB958",source:"\uB370\uC774\uD130 (\uC2DD, \uBE44\uC6B0\uBA74 \uD604\uC7AC \uBC94\uC704)",category:"\uD56D\uBAA9 \uC2DD",series:"\uAC12 \uC2DD (\uC27C\uD45C\uB85C \uC5EC\uB7EC \uAC1C)",title:"\uC81C\uBAA9",legend:"\uBC94\uB840",showValues:"\uAC12 \uD45C\uC2DC",stacked:"\uB204\uC801",band:"\uBC34\uB4DC",height:"\uB192\uC774 (mm)",bandGrow:"\uB0B4\uC6A9\uC5D0 \uB9DE\uCDB0 \uB298\uB9AC\uAE30",bandBg:"\uBC30\uACBD\uC0C9",altBg:"\uC904\uBB34\uB2AC \uBC30\uACBD\uC0C9",breakBefore:"\uC55E\uC5D0\uC11C \uD398\uC774\uC9C0 \uB098\uB204\uAE30",breakAfter:"\uB4A4\uC5D0\uC11C \uD398\uC774\uC9C0 \uB098\uB204\uAE30",group:"\uADF8\uB8F9",by:"\uADF8\uB8F9 \uAE30\uC900 \uC2DD",groupSort:"\uADF8\uB8F9 \uC815\uB82C",asc:"\uC624\uB984\uCC28\uC21C",desc:"\uB0B4\uB9BC\uCC28\uC21C",keep:"\uC5C6\uC74C",newPage:"\uADF8\uB8F9\uB9C8\uB2E4 \uC0C8 \uD398\uC774\uC9C0",repeatHeader:"\uB2E4\uC74C \uD398\uC774\uC9C0\uC5D0 \uBA38\uB9AC\uAE00 \uBC18\uBCF5",resetPage:"\uADF8\uB8F9\uB9C8\uB2E4 \uCABD \uBC88\uD638 \uC0C8\uB85C",multi:e=>`${e}\uAC1C \uC120\uD0DD\uB428`,errorExpr:"\uC2DD \uC624\uB958",id:"ID",rowHeight:"\uD589 \uB192\uC774 (mm)",showHeader:"\uBA38\uB9AC\uAE00 \uD45C\uC2DC",tableColumns:"\uC5F4 (JSON: header, expr, width, format, align, sum)",rowKey:"\uD589 \uAE30\uC900 \uC2DD",columnKey:"\uC5F4 \uAE30\uC900 \uC2DD",valueExpr:"\uAC12 \uC2DD",aggregate:"\uC9D1\uACC4",corner:"\uC67C\uCABD \uC704 \uC81C\uBAA9",totals:"\uD569\uACC4 \uD589\xB7\uC5F4",columns:"\uB2E4\uB2E8 (\uC5F4 \uC218, \uB77C\uBCA8 \uCD9C\uB825)",columnGap:"\uB2E8 \uC0AC\uC774 \uAC04\uACA9 (mm)"},en:{report:"Report",name:"Name",page:"Paper",size:"Size",orientation:"Orientation",portrait:"Portrait",landscape:"Landscape",margins:"Margins (top right bottom left, mm)",font:"Default font",fontSize:"Font size (pt)",dataSource:"Data array name",sort:"Sort (comma separated, - for descending)",filter:"Filter expression",fillEmpty:"Fill pages with blank rows",skipHeader:"Hide page header on first page",watermark:"Watermark text",wmRepeat:"Repeat over the page (security pattern)",wmOpacity:"Watermark opacity",emboss:"Emboss text",embossCenter:"Emboss centre text",params:"Parameters (JSON)",position:"Position and size (mm)",x:"X",y:"Y",w:"Width",h:"Height",text:"Text (expressions in braces: {amount:#,##0})",expr:"Expression",format:"Format (#,##0 \xB7 yyyy-MM-dd \xB7 korean)",nullText:"Text when empty",suppress:"Hide repeated values",visible:"Visible when (expression)",canGrow:"Grow to fit content",stretch:"Follow band height",style:"Style",bold:"Bold",italic:"Italic",underline:"Underline",strike:"Strikethrough",color:"Text color",background:"Background",align:"Horizontal align",valign:"Vertical align",left:"Left",center:"Center",right:"Right",justify:"Justify",top:"Top",middle:"Middle",bottom:"Bottom",border:"Border",none:"None",all:"All",borderWidth:"Border width (mm)",borderColor:"Border color",padding:"Padding (mm)",wrap:"Wrap text",shrink:"Shrink to fit",lineColor:"Line color",lineWidth:"Line width (mm)",dash:"Line style",solid:"Solid",dashed:"Dashed",dotted:"Dotted",fill:"Fill",radius:"Corner radius",src:"Image URL",fit:"Fit",contain:"Contain",cover:"Cover",stretchFit:"Stretch",barcode:"Barcode type",showText:"Show value",ecc:"Error correction",chartType:"Chart type",source:"Rows (expression, empty = current scope)",category:"Category expression",series:"Value expressions (comma separated)",title:"Title",legend:"Legend",showValues:"Show values",stacked:"Stacked",band:"Band",height:"Height (mm)",bandGrow:"Grow to fit content",bandBg:"Background",altBg:"Alternate row background",breakBefore:"Page break before",breakAfter:"Page break after",group:"Group",by:"Group by expression",groupSort:"Sort groups",asc:"Ascending",desc:"Descending",keep:"None",newPage:"New page per group",repeatHeader:"Repeat header on next page",resetPage:"Restart page numbers per group",multi:e=>`${e} selected`,errorExpr:"Expression error",id:"ID",rowHeight:"Row height (mm)",showHeader:"Show header",tableColumns:"Columns (JSON: header, expr, width, format, align, sum)",rowKey:"Row expression",columnKey:"Column expression",valueExpr:"Value expression",aggregate:"Aggregate",corner:"Corner title",totals:"Totals",columns:"Columns (labels)",columnGap:"Column gap (mm)"}},bs=["Nanum Gothic","Nanum Myeongjo","Malgun Gothic","Arial","Times New Roman","Courier New"],Le=e=>{let t=Number(e);return Number.isFinite(t)?t:0},rn=e=>Math.round(e*100)/100;function Un(e){var n,r,o,s;let t=e==null?void 0:e.border;if(!t)return{mode:"none",width:.2,color:"#000000"};if(t===!0)return{mode:"all",width:.2,color:"#000000"};if(typeof t=="string"){let i=t.split(/\s+/);return{mode:"all",width:parseFloat((n=i.find(l=>/^[\d.]+$/.test(l)))!=null?n:"0.2"),color:(r=i.find(l=>l.startsWith("#")))!=null?r:"#000000"}}return"width"in t||"color"in t||"style"in t?{mode:"all",width:(o=t.width)!=null?o:.2,color:(s=t.color)!=null?s:"#000000"}:{mode:"mixed",width:.2,color:"#000000"}}function Br(e){let t=e==null?void 0:e.border;if(!t)return{};if(t===!0||typeof t=="string"||"width"in t||"color"in t||"style"in t)return{top:!0,right:!0,bottom:!0,left:!0};let n=t;return{top:!!n.top,right:!!n.right,bottom:!!n.bottom,left:!!n.left}}function nn(e,t,n){for(let r of e){let o=Un(r.style),s=Br(r.style);s[t]=n;let i=`${o.width} solid ${o.color}`,l=s.top&&s.right&&s.bottom&&s.left,a=s.top||s.right||s.bottom||s.left;r.style={...r.style,border:l?i:a?Object.fromEntries(Object.entries(s).filter(([,u])=>u).map(([u])=>[u,i])):void 0},r.style.border||delete r.style.border}}function ys(e,t,n){var y,x;let r=e[0],o=d=>{let c=d(r);return e.every(p=>d(p)===c)?c:void 0},s=d=>e.forEach(d),i=d=>()=>o(c=>{var p;return(p=c.style)==null?void 0:p[d]}),l=d=>c=>s(p=>{let E={...p.style};c===""||c===void 0||c===null||c===!1?delete E[d]:E[d]=c,p.style=Object.keys(E).length?E:void 0,p.style||delete p.style}),a=[];a.push({label:e.length>1?t.multi(e.length):`${r.type}${r.id?` \xB7 ${r.id}`:""}`,kind:"section"}),a.push({label:t.x,kind:"number",step:.5,get:()=>o(d=>d.x),set:d=>s(c=>c.x=rn(Le(d)))},{label:t.y,kind:"number",step:.5,get:()=>o(d=>d.y),set:d=>s(c=>c.y=rn(Le(d)))},{label:t.w,kind:"number",step:.5,get:()=>o(d=>d.w),set:d=>s(c=>c.w=rn(Le(d)))},{label:t.h,kind:"number",step:.5,get:()=>o(d=>d.h),set:d=>s(c=>c.h=rn(Le(d)))});let u=new Set(e.map(d=>d.type)),f=u.size===1?r.type:null;if(e.length===1){let d=r;d.type==="text"&&a.push({label:t.text,kind:"textarea",wide:!0,get:()=>d.text,set:c=>d.text=String(c)}),d.type==="field"&&(a.push({label:t.expr,kind:"expr",wide:!0,get:()=>d.expr,set:c=>d.expr=String(c)}),a.push({label:t.format,kind:"text",wide:!0,placeholder:"#,##0",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),a.push({label:t.nullText,kind:"text",get:()=>{var c;return(c=d.nullText)!=null?c:""},set:c=>c?d.nullText=String(c):delete d.nullText}),a.push({label:t.suppress,kind:"check",get:()=>!!d.suppressRepeated,set:c=>c?d.suppressRepeated=!0:delete d.suppressRepeated})),d.type==="image"&&(a.push({label:t.src,kind:"text",wide:!0,get:()=>{var c;return(c=d.src)!=null?c:""},set:c=>d.src=String(c)}),a.push({label:t.expr,kind:"expr",wide:!0,get:()=>{var c;return(c=d.expr)!=null?c:""},set:c=>c?d.expr=String(c):delete d.expr}),a.push({label:t.fit,kind:"select",options:[{value:"contain",label:t.contain},{value:"cover",label:t.cover},{value:"fill",label:t.stretchFit}],get:()=>{var c;return(c=d.fit)!=null?c:"contain"},set:c=>d.fit=c})),d.type==="barcode"&&(a.push({label:t.barcode,kind:"select",options:["code128","ean13","qr","datamatrix","pdf417"].map(c=>({value:c,label:c.toUpperCase()})),get:()=>{var c;return(c=d.format)!=null?c:"code128"},set:c=>d.format=c}),a.push({label:t.expr,kind:"expr",wide:!0,get:()=>d.expr,set:c=>d.expr=String(c)}),a.push({label:t.showText,kind:"check",get:()=>d.showText!==!1,set:c=>c?delete d.showText:d.showText=!1}),a.push({label:t.ecc,kind:"select",options:["L","M","Q","H"].map(c=>({value:c,label:c})),get:()=>{var c;return(c=d.ecc)!=null?c:"M"},set:c=>d.ecc=c})),d.type==="table"&&(a.push({label:t.source,kind:"expr",wide:!0,get:()=>d.source,set:c=>d.source=String(c)}),a.push({label:t.rowHeight,kind:"number",step:.5,get:()=>{var c;return(c=d.rowHeight)!=null?c:6},set:c=>d.rowHeight=Le(c)||6}),a.push({label:t.showHeader,kind:"check",get:()=>d.showHeader!==!1,set:c=>c?delete d.showHeader:d.showHeader=!1}),a.push({label:t.altBg,kind:"color",get:()=>{var c;return(c=d.altBackground)!=null?c:""},set:c=>c?d.altBackground=String(c):delete d.altBackground}),a.push({label:t.tableColumns,kind:"json",wide:!0,get:()=>JSON.stringify(d.columns,null,1),set:c=>{let p=JSON.parse(String(c));if(!Array.isArray(p))throw new Error("array");d.columns=p}})),d.type==="crosstab"&&(a.push({label:t.source,kind:"expr",wide:!0,get:()=>{var c;return(c=d.source)!=null?c:""},set:c=>c?d.source=String(c):delete d.source}),a.push({label:t.rowKey,kind:"expr",wide:!0,get:()=>d.rowKey,set:c=>d.rowKey=String(c)}),a.push({label:t.columnKey,kind:"expr",wide:!0,get:()=>d.columnKey,set:c=>d.columnKey=String(c)}),a.push({label:t.valueExpr,kind:"expr",wide:!0,get:()=>d.value,set:c=>d.value=String(c)}),a.push({label:t.aggregate,kind:"select",options:["sum","count","avg","min","max"].map(c=>({value:c,label:c})),get:()=>{var c;return(c=d.aggregate)!=null?c:"sum"},set:c=>d.aggregate=c}),a.push({label:t.format,kind:"text",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),a.push({label:t.corner,kind:"text",get:()=>{var c;return(c=d.corner)!=null?c:""},set:c=>d.corner=String(c)}),a.push({label:t.totals,kind:"check",get:()=>d.totals!==!1,set:c=>c?delete d.totals:d.totals=!1})),d.type==="chart"&&(a.push({label:t.chartType,kind:"select",options:["bar","hbar","line","area","pie","doughnut"].map(c=>({value:c,label:c})),get:()=>d.chartType,set:c=>d.chartType=c}),a.push({label:t.title,kind:"text",wide:!0,get:()=>{var c;return(c=d.title)!=null?c:""},set:c=>c?d.title=String(c):delete d.title}),a.push({label:t.source,kind:"expr",wide:!0,get:()=>{var c;return(c=d.source)!=null?c:""},set:c=>c?d.source=String(c):delete d.source}),a.push({label:t.category,kind:"expr",wide:!0,get:()=>d.category,set:c=>d.category=String(c)}),a.push({label:t.series,kind:"text",wide:!0,get:()=>d.series.map(c=>c.expr).join(", "),set:c=>d.series=String(c).split(",").map(p=>p.trim()).filter(Boolean).map((p,E)=>({...d.series[E],expr:p}))}),a.push({label:t.format,kind:"text",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),a.push({label:t.legend,kind:"check",get:()=>{var c;return(c=d.legend)!=null?c:!1},set:c=>d.legend=!!c}),a.push({label:t.showValues,kind:"check",get:()=>!!d.showValues,set:c=>d.showValues=!!c}),a.push({label:t.stacked,kind:"check",get:()=>!!d.stacked,set:c=>d.stacked=!!c}))}if(f==="line"){let d=e;a.push({label:t.lineColor,kind:"color",get:()=>{var c;return(c=o(p=>p.color))!=null?c:"#000000"},set:c=>d.forEach(p=>p.color=String(c))}),a.push({label:t.lineWidth,kind:"number",step:.05,get:()=>{var c;return(c=o(p=>p.width))!=null?c:.2},set:c=>d.forEach(p=>p.width=Le(c))}),a.push({label:t.dash,kind:"select",options:[{value:"solid",label:t.solid},{value:"dashed",label:t.dashed},{value:"dotted",label:t.dotted}],get:()=>{var c;return(c=o(p=>p.dash))!=null?c:"solid"},set:c=>d.forEach(p=>c==="solid"?delete p.dash:p.dash=c)})}if(f==="rect"){let d=e;a.push({label:t.fill,kind:"color",get:()=>{var c;return(c=o(p=>p.fill))!=null?c:""},set:c=>d.forEach(p=>c?p.fill=String(c):delete p.fill)}),a.push({label:t.lineColor,kind:"color",get:()=>{var c;return(c=o(p=>p.color))!=null?c:"#000000"},set:c=>d.forEach(p=>p.color=String(c))}),a.push({label:t.lineWidth,kind:"number",step:.05,get:()=>{var c;return(c=o(p=>p.width))!=null?c:.2},set:c=>d.forEach(p=>p.width=Le(c))}),a.push({label:t.radius,kind:"number",step:.5,get:()=>{var c;return(c=o(p=>p.radius))!=null?c:0},set:c=>d.forEach(p=>Le(c)?p.radius=Le(c):delete p.radius)})}let m=[...u].every(d=>d==="text"||d==="field");if((m||f==="barcode"||f==="chart")&&(a.push({label:t.style,kind:"section"}),a.push({label:t.font,kind:"select",options:[{value:"",label:(x=(y=n.font)==null?void 0:y.family)!=null?x:"Nanum Gothic"},...bs.map(d=>({value:d,label:d}))],get:i("fontFamily"),set:l("fontFamily")}),a.push({label:t.fontSize,kind:"number",step:.5,min:4,get:()=>{var d,c,p;return(p=(c=o(E=>{var v;return(v=E.style)==null?void 0:v.fontSize}))!=null?c:(d=n.font)==null?void 0:d.size)!=null?p:9},set:d=>l("fontSize")(Le(d)||void 0)})),m){a.push({label:"",kind:"toggles",toggles:[{label:"B",title:t.bold,get:()=>!!o(p=>{var E;return!!((E=p.style)!=null&&E.bold)}),set:p=>l("bold")(p)},{label:"I",title:t.italic,get:()=>!!o(p=>{var E;return!!((E=p.style)!=null&&E.italic)}),set:p=>l("italic")(p)},{label:"U",title:t.underline,get:()=>!!o(p=>{var E;return!!((E=p.style)!=null&&E.underline)}),set:p=>l("underline")(p)},{label:"S",title:t.strike,get:()=>!!o(p=>{var E;return!!((E=p.style)!=null&&E.strike)}),set:p=>l("strike")(p)}]}),a.push({label:t.align,kind:"select",options:[{value:"left",label:t.left},{value:"center",label:t.center},{value:"right",label:t.right},{value:"justify",label:t.justify}],get:()=>{var p;return(p=o(E=>{var v;return(v=E.style)==null?void 0:v.align}))!=null?p:"left"},set:p=>l("align")(p==="left"?void 0:p)}),a.push({label:t.valign,kind:"select",options:[{value:"top",label:t.top},{value:"middle",label:t.middle},{value:"bottom",label:t.bottom}],get:()=>{var p;return(p=o(E=>{var v;return(v=E.style)==null?void 0:v.valign}))!=null?p:"middle"},set:p=>l("valign")(p==="middle"?void 0:p)}),a.push({label:t.color,kind:"color",get:()=>{var p;return(p=o(E=>{var v;return(v=E.style)==null?void 0:v.color}))!=null?p:"#000000"},set:p=>l("color")(p==="#000000"?void 0:p)}),a.push({label:t.background,kind:"color",get:()=>{var p;return(p=o(E=>{var v;return(v=E.style)==null?void 0:v.background}))!=null?p:""},set:l("background")});let d=Br(r.style);a.push({label:t.border,kind:"toggles",toggles:[{label:"\u25A3",title:t.all,get:()=>!!(d.top&&d.right&&d.bottom&&d.left),set:p=>["top","right","bottom","left"].forEach(E=>nn(e,E,p))},{label:"\u2594",title:t.top,get:()=>!!d.top,set:p=>nn(e,"top",p)},{label:"\u2581",title:t.bottom,get:()=>!!d.bottom,set:p=>nn(e,"bottom",p)},{label:"\u258F",title:t.left,get:()=>!!d.left,set:p=>nn(e,"left",p)},{label:"\u2595",title:t.right,get:()=>!!d.right,set:p=>nn(e,"right",p)}]});let c=(p,E)=>s(v=>{let k=Un(v.style),S=Br(v.style);if(k.mode==="none")return;let j=`${p!=null?p:k.width} solid ${E!=null?E:k.color}`,C=S.top&&S.right&&S.bottom&&S.left;v.style={...v.style,border:C?j:Object.fromEntries(Object.entries(S).filter(([,R])=>R).map(([R])=>[R,j]))}});a.push({label:t.borderWidth,kind:"number",step:.05,get:()=>Un(r.style).width,set:p=>c(Le(p))}),a.push({label:t.borderColor,kind:"color",get:()=>Un(r.style).color,set:p=>c(void 0,String(p))}),a.push({label:t.padding,kind:"number",step:.5,get:()=>{var E;let p=(E=r.style)==null?void 0:E.padding;return typeof p=="number"?p:p?p[1]:1},set:p=>l("padding")(Le(p)===1?void 0:Le(p))}),a.push({label:t.wrap,kind:"check",get:()=>o(p=>{var E;return((E=p.style)==null?void 0:E.wrap)!==!1}),set:p=>l("wrap")(p?void 0:!1)}),a.push({label:t.shrink,kind:"check",get:()=>!!o(p=>{var E;return!!((E=p.style)!=null&&E.shrinkToFit)}),set:p=>l("shrinkToFit")(p)}),a.push({label:t.canGrow,kind:"check",get:()=>o(p=>p.canGrow!==!1),set:p=>s(E=>p?delete E.canGrow:E.canGrow=!1)})}return a.push({label:t.visible,kind:"expr",wide:!0,get:()=>{var d;return(d=o(c=>{var p;return(p=c.visible)!=null?p:""}))!=null?d:""},set:d=>s(c=>d?c.visible=String(d):delete c.visible)}),a}function ws(e,t,n,r,o){let s=[{label:`${n.band}: ${t}`,kind:"section"},{label:n.height,kind:"number",step:.5,min:1,get:()=>e.height,set:i=>e.height=Math.max(1,rn(Le(i)))},{label:n.bandGrow,kind:"check",get:()=>e.canGrow!==!1,set:i=>i?delete e.canGrow:e.canGrow=!1},{label:n.bandBg,kind:"color",get:()=>{var i;return(i=e.background)!=null?i:""},set:i=>i?e.background=String(i):delete e.background}];return o&&(s.push({label:n.altBg,kind:"color",get:()=>{var i;return(i=e.altBackground)!=null?i:""},set:i=>i?e.altBackground=String(i):delete e.altBackground}),s.push({label:n.columns,kind:"number",step:1,min:1,get:()=>{var i;return(i=e.columns)!=null?i:1},set:i=>Le(i)>1?e.columns=Math.floor(Le(i)):delete e.columns}),s.push({label:n.columnGap,kind:"number",step:.5,min:0,get:()=>{var i;return(i=e.columnGap)!=null?i:0},set:i=>Le(i)?e.columnGap=Le(i):delete e.columnGap})),s.push({label:n.breakBefore,kind:"check",get:()=>!!e.pageBreakBefore,set:i=>i?e.pageBreakBefore=!0:delete e.pageBreakBefore},{label:n.breakAfter,kind:"check",get:()=>!!e.pageBreakAfter,set:i=>i?e.pageBreakAfter=!0:delete e.pageBreakAfter},{label:n.visible,kind:"expr",wide:!0,get:()=>{var i;return(i=e.visible)!=null?i:""},set:i=>i?e.visible=String(i):delete e.visible}),r&&s.push({label:n.group,kind:"section"},{label:n.by,kind:"expr",wide:!0,get:()=>r.by,set:i=>r.by=String(i)},{label:n.groupSort,kind:"select",options:[{value:"",label:n.keep},{value:"asc",label:n.asc},{value:"desc",label:n.desc}],get:()=>{var i;return(i=r.sort)!=null?i:""},set:i=>i?r.sort=i:delete r.sort},{label:n.newPage,kind:"check",get:()=>!!r.newPage,set:i=>i?r.newPage=!0:delete r.newPage},{label:n.repeatHeader,kind:"check",get:()=>!!r.repeatHeader,set:i=>i?r.repeatHeader=!0:delete r.repeatHeader},{label:n.resetPage,kind:"check",get:()=>!!r.resetPageNumber,set:i=>i?r.resetPageNumber=!0:delete r.resetPageNumber}),s}function xs(e,t){var a;let n=(a=e.page)!=null?a:e.page={},r=()=>{var f;let u=(f=n.margins)!=null?f:15;return typeof u=="number"?`${u}`:u.join(" ")},o=()=>{var u,f;return typeof e.watermark=="string"?{text:e.watermark}:Array.isArray(e.watermark)?(u=e.watermark[0])!=null?u:{}:(f=e.watermark)!=null?f:{}},s=u=>{let f={...o(),...u};for(let m of Object.keys(f))(f[m]===void 0||f[m]===""||f[m]===!1)&&delete f[m];!f.text&&!f.image?delete e.watermark:e.watermark=Object.keys(f).length===1?String(f.text):f},i=()=>{var u,f;return Array.isArray(e.emboss)?(u=e.emboss[0])!=null?u:{}:(f=e.emboss)!=null?f:{}},l=u=>{let f={...i(),...u};for(let m of Object.keys(f))(f[m]===void 0||f[m]==="")&&delete f[m];!f.text&&!f.centerText&&!f.image?delete e.emboss:e.emboss=f};return[{label:t.report,kind:"section"},{label:t.name,kind:"text",wide:!0,get:()=>{var u;return(u=e.name)!=null?u:""},set:u=>e.name=String(u)},{label:t.size,kind:"select",options:Object.keys(lt).map(u=>({value:u,label:`${u} (${lt[u][0]}\xD7${lt[u][1]})`})),get:()=>{var u;return Array.isArray(n.size)?"A4":(u=n.size)!=null?u:"A4"},set:u=>n.size=u},{label:t.orientation,kind:"select",options:[{value:"portrait",label:t.portrait},{value:"landscape",label:t.landscape}],get:()=>{var u;return(u=n.orientation)!=null?u:"portrait"},set:u=>n.orientation=u},{label:t.margins,kind:"text",wide:!0,get:r,set:u=>{let f=String(u).trim().split(/[\s,]+/).map(Number).filter(Number.isFinite);n.margins=f.length>=4?[f[0],f[1],f[2],f[3]]:f.length?f[0]:15}},{label:t.font,kind:"select",options:bs.map(u=>({value:u,label:u})),get:()=>{var u,f;return(f=(u=e.font)==null?void 0:u.family)!=null?f:"Nanum Gothic"},set:u=>e.font={...e.font,family:String(u)}},{label:t.fontSize,kind:"number",step:.5,get:()=>{var u,f;return(f=(u=e.font)==null?void 0:u.size)!=null?f:9},set:u=>e.font={...e.font,size:Le(u)||9}},{label:t.dataSource,kind:"text",placeholder:"rows",get:()=>{var u;return(u=e.dataSource)!=null?u:""},set:u=>u?e.dataSource=String(u):delete e.dataSource},{label:t.sort,kind:"text",wide:!0,get:()=>{var u;return((u=e.sort)!=null?u:[]).join(", ")},set:u=>{let f=String(u).split(",").map(m=>m.trim()).filter(Boolean);f.length?e.sort=f:delete e.sort}},{label:t.filter,kind:"expr",wide:!0,get:()=>{var u;return(u=e.filter)!=null?u:""},set:u=>u?e.filter=String(u):delete e.filter},{label:t.fillEmpty,kind:"check",get:()=>!!e.fillEmptyRows,set:u=>u?e.fillEmptyRows=!0:delete e.fillEmptyRows},{label:t.skipHeader,kind:"check",get:()=>!!e.pageHeaderSkipFirst,set:u=>u?e.pageHeaderSkipFirst=!0:delete e.pageHeaderSkipFirst},{label:t.watermark,kind:"text",wide:!0,placeholder:'\uC0AC\uBCF8 / {params.user} {format(now(), "yyyy-MM-dd HH:mm")}',get:()=>{var u;return(u=o().text)!=null?u:""},set:u=>s({text:String(u)})},{label:t.wmRepeat,kind:"check",get:()=>!!o().repeat,set:u=>s({repeat:!!u||void 0})},{label:t.wmOpacity,kind:"number",step:.02,min:0,get:()=>{var u;return(u=o().opacity)!=null?u:.12},set:u=>s({opacity:Le(u)})},{label:t.emboss,kind:"text",wide:!0,placeholder:"(\uC8FC)\uD68C\uC0AC\uBA85 \xB7 COMPANY \xB7",get:()=>{var u;return(u=i().text)!=null?u:""},set:u=>l({text:String(u)})},{label:t.embossCenter,kind:"text",get:()=>{var u;return(u=i().centerText)!=null?u:""},set:u=>l({centerText:String(u)})},{label:t.params,kind:"json",wide:!0,get:()=>e.params?JSON.stringify(e.params,null,2):"",set:u=>{let f=String(u).trim();if(!f){delete e.params;return}e.params=JSON.parse(f)}}]}function Nr(e,t){if(!e.trim())return"";let n=hn(e);return n?`${t.errorExpr}: ${n}`:""}var Ka=96/25.4,Or={ko:{title:"\uC81C\uBAA9",pageHeader:"\uD398\uC774\uC9C0 \uBA38\uB9AC\uAE00",columnHeader:"\uC5F4 \uBA38\uB9AC\uAE00",groupHeader:"\uADF8\uB8F9 \uBA38\uB9AC\uAE00",detail:"\uC0C1\uC138",groupFooter:"\uADF8\uB8F9 \uBC14\uB2E5\uAE00",summary:"\uC694\uC57D (\uD569\uACC4)",pageFooter:"\uD398\uC774\uC9C0 \uBC14\uB2E5\uAE00",noData:"\uC790\uB8CC \uC5C6\uC74C"},en:{title:"Title",pageHeader:"Page header",columnHeader:"Column header",groupHeader:"Group header",detail:"Detail",groupFooter:"Group footer",summary:"Summary",pageFooter:"Page footer",noData:"No data"}},_a={ko:{design:"\uB514\uC790\uC778",preview:"\uBBF8\uB9AC\uBCF4\uAE30",json:"JSON",newReport:"\uC0C8\uB85C \uB9CC\uB4E4\uAE30",open:"\uC5F4\uAE30",save:"\uC800\uC7A5",undo:"\uC2E4\uD589 \uCDE8\uC18C",redo:"\uB2E4\uC2DC \uC2E4\uD589",cut:"\uC798\uB77C\uB0B4\uAE30",copy:"\uBCF5\uC0AC",paste:"\uBD99\uC5EC\uB123\uAE30",del:"\uC0AD\uC81C",dup:"\uBCF5\uC81C",alignL:"\uC67C\uCABD \uB9DE\uCDA4",alignC:"\uAC00\uC6B4\uB370 \uB9DE\uCDA4",alignR:"\uC624\uB978\uCABD \uB9DE\uCDA4",alignT:"\uC704 \uB9DE\uCDA4",alignM:"\uC911\uAC04 \uB9DE\uCDA4",alignB:"\uC544\uB798 \uB9DE\uCDA4",sameW:"\uAC19\uC740 \uB108\uBE44",sameH:"\uAC19\uC740 \uB192\uC774",grid:"\uACA9\uC790\uC5D0 \uB9DE\uCDA4",toolbox:"\uB3C4\uAD6C",fields:"\uB370\uC774\uD130 \uD544\uB4DC",bands:"\uBC34\uB4DC",addGroup:"\uADF8\uB8F9 \uCD94\uAC00",apply:"\uC801\uC6A9",props:"\uC18D\uC131",tools:{text:"\uD14D\uC2A4\uD2B8",field:"\uD544\uB4DC",line:"\uC120",rect:"\uC0AC\uAC01\uD615",image:"\uC774\uBBF8\uC9C0",barcode:"\uBC14\uCF54\uB4DC",qr:"QR \uCF54\uB4DC",chart:"\uCC28\uD2B8",table:"\uD45C (\uBAA9\uB85D)",crosstab:"\uD06C\uB85C\uC2A4\uD0ED",pageNumber:"\uCABD \uBC88\uD638",today:"\uC624\uB298 \uB0A0\uC9DC"},noFields:"\uB370\uC774\uD130\uB97C \uC5F0\uACB0\uD558\uBA74 \uD544\uB4DC\uAC00 \uB098\uC635\uB2C8\uB2E4",confirmNew:"\uD604\uC7AC \uBCF4\uACE0\uC11C\uB97C \uC9C0\uC6B0\uACE0 \uC0C8\uB85C \uB9CC\uB4E4\uAE4C\uC694?",jsonError:"JSON \uC624\uB958",add:"\uCD94\uAC00",remove:"\uC0AD\uC81C",params:"\uD30C\uB77C\uBBF8\uD130",dropHint:"\uB3C4\uAD6C\uB098 \uD544\uB4DC\uB97C \uB04C\uC5B4\uB2E4 \uB193\uC73C\uC138\uC694"},en:{design:"Design",preview:"Preview",json:"JSON",newReport:"New",open:"Open",save:"Save",undo:"Undo",redo:"Redo",cut:"Cut",copy:"Copy",paste:"Paste",del:"Delete",dup:"Duplicate",alignL:"Align left",alignC:"Align center",alignR:"Align right",alignT:"Align top",alignM:"Align middle",alignB:"Align bottom",sameW:"Same width",sameH:"Same height",grid:"Snap to grid",toolbox:"Toolbox",fields:"Data fields",bands:"Bands",addGroup:"Add group",apply:"Apply",props:"Properties",tools:{text:"Text",field:"Field",line:"Line",rect:"Rectangle",image:"Image",barcode:"Barcode",qr:"QR code",chart:"Chart",table:"Table",crosstab:"Crosstab",pageNumber:"Page number",today:"Today"},noFields:"Connect data to list its fields",confirmNew:"Discard this report and start a new one?",jsonError:"JSON error",add:"Add",remove:"Remove",params:"Parameters",dropHint:"Drop tools or fields here"}},Xa={new:"M14 3H7a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7zM14 3v4h4M12 11v6M9 14h6",open:"M3 7a1 1 0 0 1 1-1h5l2 2h8a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z",save:"M5 4h11l3 3v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zM8 4v5h7V4M8 20v-6h8v6",undo:"M9 14L4 9l5-5M4 9h10a6 6 0 0 1 0 12h-3",redo:"M15 14l5-5-5-5M20 9H10a6 6 0 0 0 0 12h3",cut:"M6 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM20 4L8.1 15.9M14.5 14.5L20 20M8.1 8.1L12 12",copy:"M9 9h10v12H9zM5 15V3h10",paste:"M9 4h6v3H9zM7 5H5v16h14V5h-2",del:"M4 7h16M10 11v6M14 11v6M6 7l1 13h10l1-13M9 7V4h6v3",alignL:"M4 3v18M8 7h12M8 15h7",alignC:"M12 3v18M6 7h12M8.5 15h7",alignR:"M20 3v18M4 7h12M9 15h7",alignT:"M3 4h18M7 8v12M15 8v7",alignM:"M3 12h18M7 6v12M15 8.5v7",alignB:"M3 20h18M7 4v12M15 9v7",sameW:"M4 8h16M4 16h16M4 5v6M20 5v6M4 13v6M20 13v6",sameH:"M8 4v16M16 4v16M5 4h6M5 20h6M13 4h6M13 20h6",grid:"M4 4h16v16H4zM4 9.3h16M4 14.6h16M9.3 4v16M14.6 4v16",text:"M5 6V4h14v2M12 4v16M9 20h6",field:"M4 7h16v10H4zM8 11h8",line:"M4 20L20 4",rect:"M4 6h16v12H4z",image:"M4 5h16v14H4zM4 15l4-4 4 4 3-3 5 5M15 9.5a1.5 1.5 0 1 0 0-.01",barcode:"M4 5v14M7 5v14M9 5v14M12 5v14M15 5v14M17 5v14M20 5v14",qr:"M4 4h6v6H4zM14 4h6v6h-6zM4 14h6v6H4zM14 14h2v2h-2zM18 18h2v2h-2zM14 18h2M18 14h2",chart:"M4 20V10M10 20V4M16 20v-7M2 20h20",pageNumber:"M7 3h7l4 4v14H7zM10 14h1v4M13 14h2v4h-2",table:"M4 5h16v14H4zM4 10h16M4 14.5h16M10 5v14",crosstab:"M4 4h16v16H4zM4 9h16M9 4v16M14 9v11M9 14.5h11",today:"M4 6h16v14H4zM4 10h16M8 3v5M16 3v5",plus:"M12 5v14M5 12h14",minus:"M5 12h14",x:"M6 6l12 12M18 6L6 18"},Ue=e=>`<svg viewBox="0 0 24 24" width="17" height="17" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round"><path d="${Xa[e]}"/></svg>`,Hr=e=>typeof e=="string"&&En(e)?e.replace(/[^#\w(),.\s%]/g,""):"transparent",Va=e=>String(e!=null?e:"").replace(/[^\p{L}\p{N} _-]/gu,""),Te=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Re=(e,t=.01)=>Math.round(e/t)*t,Ya=["text","field","line","rect","image","barcode","qr","chart","table","crosstab","pageNumber","today"];function ks(e,t){let[n]=e.key.split(":"),r=Or[t][n];return e.group?`${r} \xB7 ${e.group.by}`:r}function Ja(e){return e.split(":")[0]}function $s(e,t={}){var T,H,pe,xe;let n=(T=t.lang)!=null?T:"ko",r=gs[n],o=_a[n],s=Ve((H=t.definition)!=null?H:tn());Bt(s);let i=(pe=t.data)!=null?pe:{},l=(xe=t.zoom)!=null?xe:1,a=1,u="design",f=new Set,m=null,y=[],x=[JSON.stringify(s)],d=[],c=null,p,E=Et();e.classList.add("fr-designer"),e.tabIndex=-1,e.innerHTML=`
85
+ <div class="fr-status" aria-live="polite"><span class="fr-status-text"></span><a class="fr-badge" href="https://freereport.app/pricing/" target="_blank" rel="noopener" hidden>FreeReport \xB7 \uBB34\uB8CC \uC0AC\uC6A9</a></div>`;let k=j=>e.querySelector(j),d=k(".fr-body"),c=k(".fr-pages"),m=k(".fr-overlay"),E=k(".fr-status-text"),M=k(".fr-pageno input"),$=k(".fr-total"),S=k(".fr-zoom"),P=k(".fr-params"),L=k(".fr-params-toggle"),R=k('[data-act="menu"]'),H=k(".fr-menu-list"),ue=j=>{m.hidden=j===null,k(".fr-overlay-text").textContent=j!=null?j:""},Q=j=>{!P||!L||(P.hidden=!j,L.setAttribute("aria-expanded",String(j)))};Q((Re=t.paramsOpen)!=null?Re:Object.entries((he=o.params)!=null?he:{}).some(([,j])=>j.required&&j.default===void 0));let q=null,z=()=>{if(!i)return 1;let j=Math.max(100,d.clientWidth-48),p=Math.max(100,d.clientHeight-32);return u==="width"?Math.min(1.25,j/(i.width*It)):u==="page"?Math.min(j/(i.width*It),p/(i.height*It)):u},F=j=>{if(!i||j.dataset.drawn)return;let p=Number(j.dataset.index);j.innerHTML=tt(i.pages[p],{className:"fr-page-svg"}),j.dataset.drawn="1",bt(j)},D=()=>{if(!i)return;f=z();let j=i.width*It*f,p=i.height*It*f;if(c.style.setProperty("--fr-page-w",`${j}px`),c.style.setProperty("--fr-page-h",`${p}px`),S){let x=typeof u=="number"?String(u):u,y=[...S.options].some(A=>A.value===x),h=S.querySelector('option[value="custom"]');h.hidden=y,h.textContent=`${Math.round(f*100)}%`,S.value=y?x:"custom"}},G=()=>{if(q==null||q.disconnect(),c.innerHTML="",!i)return;if(!i.pages.length){c.innerHTML=`<p class="fr-empty">${n.empty}</p>`;return}let j=document.createDocumentFragment();i.pages.forEach((p,x)=>{let y=document.createElement("div");y.className="fr-page",y.dataset.index=String(x),y.setAttribute("aria-label",`${n.page} ${x+1}`),j.appendChild(y)}),c.appendChild(j),D(),q=typeof IntersectionObserver!="undefined"?new IntersectionObserver(p=>{for(let x of p)x.isIntersecting&&F(x.target);Y()},{root:d,rootMargin:"600px 0px"}):null,c.querySelectorAll(".fr-page").forEach((p,x)=>q?q.observe(p):x<3&&F(p)),$&&($.textContent=`/ ${i.pages.length}`),T="",we=[],E.textContent=`${n.pages(i.pages.length)} \xB7 ${n.rows(i.rowCount)} \xB7 ${i.ms}ms`,Y()},Y=()=>{if(!i)return;let j=i.height*It*f+Wi;g=Math.min(i.pages.length-1,Math.max(0,Math.round(d.scrollTop/j))),M&&document.activeElement!==M&&(M.value=String(g+1)),se()},Z=-1,se=()=>{var j;if(!(!(i!=null&&i.pages.length)||g===Z)){Z=g;try{(j=t.onPageChange)==null||j.call(t,g+1,i.pages.length)}catch(p){console.error(p)}}},W=(j,p)=>{var y;let x=j instanceof Error?j:new Error(String(j));console.error(x);try{(y=t.onError)==null||y.call(t,x,p)}catch(h){console.error(h)}return x},I=j=>{if(!i)return;let p=Math.min(i.pages.length-1,Math.max(0,j)),x=c.children[p];x&&(d.scrollTop=x.offsetTop-c.offsetTop),g=p,M&&(M.value=String(p+1)),se()},B=j=>{let p=i?d.scrollTop/Math.max(1,d.scrollHeight):0;u=typeof j=="number"?Math.min(4,Math.max(.25,j)):j,D(),d.scrollTop=p*d.scrollHeight},K=0,N=async()=>{var x;let j=++K;ue(n.loading);let p="data";try{if(t.fetchData){let y=await t.fetchData(a);if(j!==K)return;l.setData(y)}if(p="layout",l.setParams(a),await it(l.definition),w)return;i=l.layout(),Z=-1,G();try{(x=t.onReady)==null||x.call(t,{pages:i.pages.length,rows:i.rowCount,ms:i.ms,params:{...a}})}catch(y){console.error(y)}}catch(y){let h=W(y,p);c.innerHTML=`<p class="fr-empty">${n.error}: ${at(h.message)}</p>`}finally{ue(null)}},J=async j=>{ue(n.exporting);try{await l.download(j,t.fileName)}catch(p){ye(`${n.error}: ${W(p,"output").message}`)}finally{ue(null)}},ye=j=>{E.textContent=j},ke=()=>{!H||!R||(H.hidden=!0,R.setAttribute("aria-expanded","false"))},ve=new AbortController;e.addEventListener("click",j=>{var y;let p=j.target.closest("[data-act]");if(!p||!e.contains(p)){j.target.closest(".fr-menu")||ke();return}let x=p.dataset.act;switch(x!=="menu"&&ke(),x){case"first":I(0);break;case"prev":I(g-1);break;case"next":I(g+1);break;case"last":I(((y=i==null?void 0:i.pages.length)!=null?y:1)-1);break;case"zoomIn":B(Math.round((f+.1)*10)/10);break;case"zoomOut":B(Math.round((f-.1)*10)/10);break;case"print":l.print().catch(h=>ye(`${n.error}: ${W(h,"output").message}`));break;case"pdf":J("pdf");break;case"xlsx":J("xlsx");break;case"xlsxData":J("xlsx-data");break;case"csv":J("csv");break;case"hwpx":J("hwpx");break;case"findNext":ae(1);break;case"menu":{let h=H.hidden;H.hidden=!h,R.setAttribute("aria-expanded",String(h));break}}},{signal:ve.signal});let $e=j=>{e.contains(j.target)||ke()};document.addEventListener("click",$e),L==null||L.addEventListener("click",()=>Q(P.hidden)),S==null||S.addEventListener("change",()=>{let j=S.value;j!=="custom"&&B(j==="width"||j==="page"?j:Number(j))}),M==null||M.addEventListener("change",()=>I(Number(M.value)-1)),M==null||M.addEventListener("keydown",j=>{j.key==="Enter"&&I(Number(M.value)-1)}),d.addEventListener("scroll",()=>Y(),{passive:!0}),d.addEventListener("keydown",j=>{var p;j.key==="PageDown"||j.key==="ArrowRight"&&!j.altKey?(j.preventDefault(),I(g+1)):j.key==="PageUp"||j.key==="ArrowLeft"?(j.preventDefault(),I(g-1)):j.key==="Home"&&j.ctrlKey?(j.preventDefault(),I(0)):j.key==="End"&&j.ctrlKey?(j.preventDefault(),I(((p=i==null?void 0:i.pages.length)!=null?p:1)-1)):(j.ctrlKey||j.metaKey)&&j.key.toLowerCase()==="p"?(j.preventDefault(),l.print()):(j.ctrlKey||j.metaKey)&&j.key.toLowerCase()==="f"&&_?(j.preventDefault(),_.focus(),_.select()):(j.ctrlKey||j.metaKey)&&(j.key==="+"||j.key==="=")?(j.preventDefault(),B(f+.1)):(j.ctrlKey||j.metaKey)&&j.key==="-"&&(j.preventDefault(),B(f-.1))}),d.addEventListener("wheel",j=>{j.ctrlKey&&(j.preventDefault(),B(Math.round(f*(j.deltaY<0?1.1:1/1.1)*100)/100))},{passive:!1}),P==null||P.addEventListener("submit",async j=>{var y;j.preventDefault();let p={...a};P.querySelectorAll("input, select").forEach(h=>{let A=h.dataset.type,C=h.value;p[h.name]=A==="number"?C===""?null:Number(C):A==="boolean"?C==="true":C});let x;try{x=await((y=t.onParamsSubmit)==null?void 0:y.call(t,{...p}))}catch(h){W(h,"data");return}x!==!1&&(a=x&&typeof x=="object"?{...p,...x}:p,N())});let ee=typeof ResizeObserver!="undefined"?new ResizeObserver(()=>{typeof u!="number"&&D()}):null;ee==null||ee.observe(d);let _=k(".fr-search input"),be=k(".fr-search-count"),we=[],U=-1,T="",ne=1,de=j=>{if(we=[],!i||!j)return;let p=j.toLowerCase();i.pages.forEach((x,y)=>{var h;for(let A of x.items)if(!(A.kind!=="text"||((h=A.source)==null?void 0:h.band)==="watermark"))for(let C of A.lines){let b=C.text.toLowerCase().indexOf(p);if(b<0)continue;let v=[...C.text].length||1,O=A.font.size*(25.4/72);we.push({page:y,x:C.x+C.width*b/v,y:C.y-O*.85,w:Math.max(1,C.width*[...j].length/v),h:O*1.1*ne})}})},me=()=>{if(c.querySelectorAll(".fr-hit").forEach(A=>A.remove()),!i||U<0||!we[U])return;let j=we[U];I(j.page);let p=c.children[j.page];F(p);let x=document.createElement("div");x.className="fr-hit";let y=p.clientWidth/i.width,h=p.clientHeight/i.height;Object.assign(x.style,{left:`${j.x*y}px`,top:`${j.y*h}px`,width:`${j.w*y}px`,height:`${j.h*h}px`}),p.appendChild(x),d.scrollTop=p.offsetTop-c.offsetTop+j.y*h-d.clientHeight/3},ae=j=>{var x;let p=(x=_==null?void 0:_.value.trim())!=null?x:"";if(p!==T&&(T=p,de(p),U=-1),!we.length){be&&(be.textContent=p?n.findNone:""),me();return}U=(U+j+we.length)%we.length,be&&(be.textContent=n.findCount(U+1,we.length)),me()};return _==null||_.addEventListener("keydown",j=>{j.key==="Enter"?(j.preventDefault(),ae(j.shiftKey?-1:1)):j.key==="Escape"&&(_.value="",ae(1),d.focus())}),_==null||_.addEventListener("input",()=>{_.value||ae(1)}),eo(t.licenseKey).then(j=>{let p=k(".fr-badge");p&&j&&(p.hidden=!1)}),N(),{report:l,refresh:N,async setData(j){l.setData(j),await N()},async setParams(j){a={...a,...j},await N()},async setDefinition(j){var x,y,h;l.setDefinition(j);let p=k(".fr-params");if(p){let A={};for(let[C,b]of Object.entries((x=j.params)!=null?x:{}))A[C]=(y=a[C])!=null?y:b.default;a=A,p.innerHTML=`${Object.entries((h=j.params)!=null?h:{}).map(([C,b])=>ps(C,b,a[C],n)).join("")}<button type="submit" class="fr-btn fr-primary">${n.search}</button>`}await N()},goTo:j=>I(j-1),setZoom:B,print:()=>l.print(),destroy(){w=!0,q==null||q.disconnect(),ee==null||ee.disconnect(),document.removeEventListener("click",$e),ve.abort(),e.innerHTML="",e.classList.remove("fr-viewer")}}}function et(e){var o,s;let t=e.bands,n=[],r=(a,l,i,u)=>{l&&n.push({key:a,band:l,group:i,groupIndex:u})};return r("title",t.title),r("pageHeader",t.pageHeader),r("columnHeader",t.columnHeader),((o=t.groups)!=null?o:[]).forEach((a,l)=>r(`groupHeader:${l}`,a.header,a,l)),r("detail",t.detail),[...(s=t.groups)!=null?s:[]].map((a,l)=>[a,l]).reverse().forEach(([a,l])=>r(`groupFooter:${l}`,a.footer,a,l)),r("summary",t.summary),r("noData",t.noData),r("pageFooter",t.pageFooter),n}function Be(e,t){var o,s,a,l;let[n,r]=t.split(":");return n==="groupHeader"?(s=(o=e.bands.groups)==null?void 0:o[Number(r)])==null?void 0:s.header:n==="groupFooter"?(l=(a=e.bands.groups)==null?void 0:a[Number(r)])==null?void 0:l.footer:e.bands[n]}function Ir(e,t,n){var a;let[r,o]=t.split(":");if(r==="groupHeader"||r==="groupFooter"){let l=(a=e.bands.groups)==null?void 0:a[Number(o)];if(!l)return;r==="groupHeader"?l.header=n:l.footer=n;return}let s=r;n?e.bands[s]=n:delete e.bands[s]}var ms=0;function Bt(e){let t=new Set;for(let r of et(e))for(let o of r.band.elements)o.id&&t.add(o.id);let n=new Set;for(let r of et(e))for(let o of r.band.elements){if(o.id&&/^[\w-]{1,64}$/.test(String(o.id))&&!n.has(o.id)){n.add(o.id);continue}let s;do s=`e${++ms}`;while(t.has(s));t.add(s),n.add(s),o.id=s}}function Nt(e){let t=new Set(et(e).flatMap(r=>r.band.elements.map(o=>o.id))),n;do n=`e${++ms}`;while(t.has(n));return n}function He(e,t){for(let n of et(e)){let r=n.band.elements.findIndex(o=>o.id===t);if(r>=0)return{slot:n,el:n.band.elements[r],index:r}}return null}function hs(e,t,n,r,o,s){let a=Math.min(Math.max(o,5),8);switch(e){case"field":return{id:t,type:"field",x:n,y:r,w:30,h:a,expr:s!=null?s:"field",style:void 0};case"line":return{id:t,type:"line",x:n,y:r,w:40,h:0,width:.2};case"rect":return{id:t,type:"rect",x:n,y:r,w:30,h:15,width:.2};case"image":return{id:t,type:"image",x:n,y:r,w:25,h:15,src:"",fit:"contain"};case"barcode":return{id:t,type:"barcode",x:n,y:r,w:45,h:12,expr:"'ABC-12345'",format:"code128"};case"qr":return{id:t,type:"barcode",x:n,y:r,w:18,h:18,expr:"'https://freereport.app'",format:"qr"};case"chart":return{id:t,type:"chart",x:n,y:r,w:90,h:50,chartType:"bar",category:s!=null?s:"name",series:[{expr:"value"}]};case"table":return{id:t,type:"table",x:n,y:r,w:120,h:18,source:"items",columns:[{header:"\uD488\uBAA9",expr:"name"},{header:"\uC218\uB7C9",expr:"qty",width:20,format:"#,##0"},{header:"\uAE08\uC561",expr:"amount",width:30,format:"#,##0",sum:!0}]};case"crosstab":return{id:t,type:"crosstab",x:n,y:r,w:150,h:30,rowKey:s!=null?s:"region",columnKey:"category",value:"amount",corner:""};case"pageNumber":return{id:t,type:"text",x:n,y:r,w:30,h:a,text:"{page} / {pages}",style:{align:"center"}};case"today":return{id:t,type:"text",x:n,y:r,w:30,h:a,text:"{format(today(), 'yyyy-MM-dd')}"};default:return{id:t,type:"text",x:n,y:r,w:30,h:a,text:"\uD14D\uC2A4\uD2B8"}}}var Ve=e=>{if(typeof structuredClone=="function")try{return structuredClone(e)}catch{}return JSON.parse(JSON.stringify(e))};function tn(){return{version:1,name:"\uC0C8 \uBCF4\uACE0\uC11C",page:{size:"A4",orientation:"portrait",margins:15},font:{family:"Nanum Gothic",size:9},bands:{title:{height:14,elements:[{id:"e1",type:"text",x:0,y:0,w:180,h:12,text:"\uBCF4\uACE0\uC11C \uC81C\uBAA9",style:{fontSize:16,bold:!0,align:"center"}}]},columnHeader:{height:7,elements:[]},detail:{height:6,elements:[]},summary:{height:8,elements:[]},pageFooter:{height:8,elements:[{id:"e2",type:"text",x:0,y:1,w:180,h:6,text:"{page} / {pages}",style:{align:"center",fontSize:8}}]}}}}var gs={ko:{report:"\uBCF4\uACE0\uC11C",name:"\uC774\uB984",page:"\uC6A9\uC9C0",size:"\uD06C\uAE30",orientation:"\uBC29\uD5A5",portrait:"\uC138\uB85C",landscape:"\uAC00\uB85C",margins:"\uC5EC\uBC31 (\uC0C1 \uC6B0 \uD558 \uC88C, mm)",font:"\uAE30\uBCF8 \uAE00\uAF34",fontSize:"\uAE00\uC790 \uD06C\uAE30 (pt)",dataSource:"\uB370\uC774\uD130 \uBC30\uC5F4 \uC774\uB984",sort:"\uC815\uB82C (\uC27C\uD45C\uB85C \uAD6C\uBD84, -\uB294 \uB0B4\uB9BC\uCC28\uC21C)",filter:"\uD544\uD130 \uC2DD",fillEmpty:"\uBE48 \uD589\uC73C\uB85C \uD398\uC774\uC9C0 \uCC44\uC6B0\uAE30",skipHeader:"\uCCAB \uD398\uC774\uC9C0\uC5D0 \uBA38\uB9AC\uAE00 \uC228\uAE30\uAE30",watermark:"\uC6CC\uD130\uB9C8\uD06C \uBB38\uAD6C",wmRepeat:"\uC804\uBA74 \uBC18\uBCF5 (\uBCF4\uC548 \uD328\uD134)",wmOpacity:"\uC6CC\uD130\uB9C8\uD06C \uBD88\uD22C\uBA85\uB3C4",emboss:"\uC5E0\uBCF4\uC2F1 \uBB38\uAD6C",embossCenter:"\uC5E0\uBCF4\uC2F1 \uAC00\uC6B4\uB370 \uAE00\uC790",params:"\uD30C\uB77C\uBBF8\uD130 (JSON)",position:"\uC704\uCE58\uC640 \uD06C\uAE30 (mm)",x:"X",y:"Y",w:"\uB108\uBE44",h:"\uB192\uC774",text:"\uD14D\uC2A4\uD2B8 (\uC911\uAD04\uD638 \uC548\uC740 \uC2DD: {amount:#,##0})",expr:"\uC2DD",format:"\uC11C\uC2DD (#,##0 \xB7 yyyy-MM-dd \xB7 korean)",nullText:"\uAC12\uC774 \uC5C6\uC744 \uB54C",suppress:"\uAC19\uC740 \uAC12 \uBC18\uBCF5 \uC228\uAE30\uAE30",visible:"\uD45C\uC2DC \uC870\uAC74 (\uC2DD)",canGrow:"\uB0B4\uC6A9\uC5D0 \uB9DE\uCDB0 \uB298\uB9AC\uAE30",stretch:"\uBC34\uB4DC \uB192\uC774 \uB530\uB77C\uAC00\uAE30",style:"\uC2A4\uD0C0\uC77C",bold:"\uAD75\uAC8C",italic:"\uAE30\uC6B8\uC784",underline:"\uBC11\uC904",strike:"\uCDE8\uC18C\uC120",color:"\uAE00\uC790\uC0C9",background:"\uBC30\uACBD\uC0C9",align:"\uAC00\uB85C \uC815\uB82C",valign:"\uC138\uB85C \uC815\uB82C",left:"\uC67C\uCABD",center:"\uAC00\uC6B4\uB370",right:"\uC624\uB978\uCABD",justify:"\uC591\uCABD",top:"\uC704",middle:"\uAC00\uC6B4\uB370",bottom:"\uC544\uB798",border:"\uD14C\uB450\uB9AC",none:"\uC5C6\uC74C",all:"\uBAA8\uB450",borderWidth:"\uD14C\uB450\uB9AC \uB450\uAED8 (mm)",borderColor:"\uD14C\uB450\uB9AC \uC0C9",padding:"\uC548\uCABD \uC5EC\uBC31 (mm)",wrap:"\uC904\uBC14\uAFC8",shrink:"\uAE00\uC790 \uC904\uC5EC \uB9DE\uCD94\uAE30",lineColor:"\uC120 \uC0C9",lineWidth:"\uC120 \uB450\uAED8 (mm)",dash:"\uC120 \uBAA8\uC591",solid:"\uC2E4\uC120",dashed:"\uD30C\uC120",dotted:"\uC810\uC120",fill:"\uCC44\uC6B0\uAE30",radius:"\uBAA8\uC11C\uB9AC \uB465\uAE00\uAE30",src:"\uC774\uBBF8\uC9C0 \uC8FC\uC18C",fit:"\uB9DE\uCDA4",contain:"\uBE44\uC728 \uC720\uC9C0",cover:"\uCC44\uC6B0\uAE30(\uC798\uB9BC)",stretchFit:"\uB298\uC774\uAE30",barcode:"\uBC14\uCF54\uB4DC \uC885\uB958",showText:"\uAC12 \uD45C\uC2DC",ecc:"\uC624\uB958 \uC815\uC815",chartType:"\uCC28\uD2B8 \uC885\uB958",source:"\uB370\uC774\uD130 (\uC2DD, \uBE44\uC6B0\uBA74 \uD604\uC7AC \uBC94\uC704)",category:"\uD56D\uBAA9 \uC2DD",series:"\uAC12 \uC2DD (\uC27C\uD45C\uB85C \uC5EC\uB7EC \uAC1C)",title:"\uC81C\uBAA9",legend:"\uBC94\uB840",showValues:"\uAC12 \uD45C\uC2DC",stacked:"\uB204\uC801",band:"\uBC34\uB4DC",height:"\uB192\uC774 (mm)",bandGrow:"\uB0B4\uC6A9\uC5D0 \uB9DE\uCDB0 \uB298\uB9AC\uAE30",bandBg:"\uBC30\uACBD\uC0C9",altBg:"\uC904\uBB34\uB2AC \uBC30\uACBD\uC0C9",breakBefore:"\uC55E\uC5D0\uC11C \uD398\uC774\uC9C0 \uB098\uB204\uAE30",breakAfter:"\uB4A4\uC5D0\uC11C \uD398\uC774\uC9C0 \uB098\uB204\uAE30",group:"\uADF8\uB8F9",by:"\uADF8\uB8F9 \uAE30\uC900 \uC2DD",groupSort:"\uADF8\uB8F9 \uC815\uB82C",asc:"\uC624\uB984\uCC28\uC21C",desc:"\uB0B4\uB9BC\uCC28\uC21C",keep:"\uC5C6\uC74C",newPage:"\uADF8\uB8F9\uB9C8\uB2E4 \uC0C8 \uD398\uC774\uC9C0",repeatHeader:"\uB2E4\uC74C \uD398\uC774\uC9C0\uC5D0 \uBA38\uB9AC\uAE00 \uBC18\uBCF5",resetPage:"\uADF8\uB8F9\uB9C8\uB2E4 \uCABD \uBC88\uD638 \uC0C8\uB85C",multi:e=>`${e}\uAC1C \uC120\uD0DD\uB428`,errorExpr:"\uC2DD \uC624\uB958",id:"ID",rowHeight:"\uD589 \uB192\uC774 (mm)",showHeader:"\uBA38\uB9AC\uAE00 \uD45C\uC2DC",tableColumns:"\uC5F4 (JSON: header, expr, width, format, align, sum)",rowKey:"\uD589 \uAE30\uC900 \uC2DD",columnKey:"\uC5F4 \uAE30\uC900 \uC2DD",valueExpr:"\uAC12 \uC2DD",aggregate:"\uC9D1\uACC4",corner:"\uC67C\uCABD \uC704 \uC81C\uBAA9",totals:"\uD569\uACC4 \uD589\xB7\uC5F4",columns:"\uB2E4\uB2E8 (\uC5F4 \uC218, \uB77C\uBCA8 \uCD9C\uB825)",columnGap:"\uB2E8 \uC0AC\uC774 \uAC04\uACA9 (mm)"},en:{report:"Report",name:"Name",page:"Paper",size:"Size",orientation:"Orientation",portrait:"Portrait",landscape:"Landscape",margins:"Margins (top right bottom left, mm)",font:"Default font",fontSize:"Font size (pt)",dataSource:"Data array name",sort:"Sort (comma separated, - for descending)",filter:"Filter expression",fillEmpty:"Fill pages with blank rows",skipHeader:"Hide page header on first page",watermark:"Watermark text",wmRepeat:"Repeat over the page (security pattern)",wmOpacity:"Watermark opacity",emboss:"Emboss text",embossCenter:"Emboss centre text",params:"Parameters (JSON)",position:"Position and size (mm)",x:"X",y:"Y",w:"Width",h:"Height",text:"Text (expressions in braces: {amount:#,##0})",expr:"Expression",format:"Format (#,##0 \xB7 yyyy-MM-dd \xB7 korean)",nullText:"Text when empty",suppress:"Hide repeated values",visible:"Visible when (expression)",canGrow:"Grow to fit content",stretch:"Follow band height",style:"Style",bold:"Bold",italic:"Italic",underline:"Underline",strike:"Strikethrough",color:"Text color",background:"Background",align:"Horizontal align",valign:"Vertical align",left:"Left",center:"Center",right:"Right",justify:"Justify",top:"Top",middle:"Middle",bottom:"Bottom",border:"Border",none:"None",all:"All",borderWidth:"Border width (mm)",borderColor:"Border color",padding:"Padding (mm)",wrap:"Wrap text",shrink:"Shrink to fit",lineColor:"Line color",lineWidth:"Line width (mm)",dash:"Line style",solid:"Solid",dashed:"Dashed",dotted:"Dotted",fill:"Fill",radius:"Corner radius",src:"Image URL",fit:"Fit",contain:"Contain",cover:"Cover",stretchFit:"Stretch",barcode:"Barcode type",showText:"Show value",ecc:"Error correction",chartType:"Chart type",source:"Rows (expression, empty = current scope)",category:"Category expression",series:"Value expressions (comma separated)",title:"Title",legend:"Legend",showValues:"Show values",stacked:"Stacked",band:"Band",height:"Height (mm)",bandGrow:"Grow to fit content",bandBg:"Background",altBg:"Alternate row background",breakBefore:"Page break before",breakAfter:"Page break after",group:"Group",by:"Group by expression",groupSort:"Sort groups",asc:"Ascending",desc:"Descending",keep:"None",newPage:"New page per group",repeatHeader:"Repeat header on next page",resetPage:"Restart page numbers per group",multi:e=>`${e} selected`,errorExpr:"Expression error",id:"ID",rowHeight:"Row height (mm)",showHeader:"Show header",tableColumns:"Columns (JSON: header, expr, width, format, align, sum)",rowKey:"Row expression",columnKey:"Column expression",valueExpr:"Value expression",aggregate:"Aggregate",corner:"Corner title",totals:"Totals",columns:"Columns (labels)",columnGap:"Column gap (mm)"}},bs=["Nanum Gothic","Nanum Myeongjo","Malgun Gothic","Arial","Times New Roman","Courier New"],Le=e=>{let t=Number(e);return Number.isFinite(t)?t:0},rn=e=>Math.round(e*100)/100;function Un(e){var n,r,o,s;let t=e==null?void 0:e.border;if(!t)return{mode:"none",width:.2,color:"#000000"};if(t===!0)return{mode:"all",width:.2,color:"#000000"};if(typeof t=="string"){let a=t.split(/\s+/);return{mode:"all",width:parseFloat((n=a.find(l=>/^[\d.]+$/.test(l)))!=null?n:"0.2"),color:(r=a.find(l=>l.startsWith("#")))!=null?r:"#000000"}}return"width"in t||"color"in t||"style"in t?{mode:"all",width:(o=t.width)!=null?o:.2,color:(s=t.color)!=null?s:"#000000"}:{mode:"mixed",width:.2,color:"#000000"}}function Br(e){let t=e==null?void 0:e.border;if(!t)return{};if(t===!0||typeof t=="string"||"width"in t||"color"in t||"style"in t)return{top:!0,right:!0,bottom:!0,left:!0};let n=t;return{top:!!n.top,right:!!n.right,bottom:!!n.bottom,left:!!n.left}}function nn(e,t,n){for(let r of e){let o=Un(r.style),s=Br(r.style);s[t]=n;let a=`${o.width} solid ${o.color}`,l=s.top&&s.right&&s.bottom&&s.left,i=s.top||s.right||s.bottom||s.left;r.style={...r.style,border:l?a:i?Object.fromEntries(Object.entries(s).filter(([,u])=>u).map(([u])=>[u,a])):void 0},r.style.border||delete r.style.border}}function ys(e,t,n){var w,k;let r=e[0],o=d=>{let c=d(r);return e.every(m=>d(m)===c)?c:void 0},s=d=>e.forEach(d),a=d=>()=>o(c=>{var m;return(m=c.style)==null?void 0:m[d]}),l=d=>c=>s(m=>{let E={...m.style};c===""||c===void 0||c===null||c===!1?delete E[d]:E[d]=c,m.style=Object.keys(E).length?E:void 0,m.style||delete m.style}),i=[];i.push({label:e.length>1?t.multi(e.length):`${r.type}${r.id?` \xB7 ${r.id}`:""}`,kind:"section"}),i.push({label:t.x,kind:"number",step:.5,get:()=>o(d=>d.x),set:d=>s(c=>c.x=rn(Le(d)))},{label:t.y,kind:"number",step:.5,get:()=>o(d=>d.y),set:d=>s(c=>c.y=rn(Le(d)))},{label:t.w,kind:"number",step:.5,get:()=>o(d=>d.w),set:d=>s(c=>c.w=rn(Le(d)))},{label:t.h,kind:"number",step:.5,get:()=>o(d=>d.h),set:d=>s(c=>c.h=rn(Le(d)))});let u=new Set(e.map(d=>d.type)),f=u.size===1?r.type:null;if(e.length===1){let d=r;d.type==="text"&&i.push({label:t.text,kind:"textarea",wide:!0,get:()=>d.text,set:c=>d.text=String(c)}),d.type==="field"&&(i.push({label:t.expr,kind:"expr",wide:!0,get:()=>d.expr,set:c=>d.expr=String(c)}),i.push({label:t.format,kind:"text",wide:!0,placeholder:"#,##0",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),i.push({label:t.nullText,kind:"text",get:()=>{var c;return(c=d.nullText)!=null?c:""},set:c=>c?d.nullText=String(c):delete d.nullText}),i.push({label:t.suppress,kind:"check",get:()=>!!d.suppressRepeated,set:c=>c?d.suppressRepeated=!0:delete d.suppressRepeated})),d.type==="image"&&(i.push({label:t.src,kind:"text",wide:!0,get:()=>{var c;return(c=d.src)!=null?c:""},set:c=>d.src=String(c)}),i.push({label:t.expr,kind:"expr",wide:!0,get:()=>{var c;return(c=d.expr)!=null?c:""},set:c=>c?d.expr=String(c):delete d.expr}),i.push({label:t.fit,kind:"select",options:[{value:"contain",label:t.contain},{value:"cover",label:t.cover},{value:"fill",label:t.stretchFit}],get:()=>{var c;return(c=d.fit)!=null?c:"contain"},set:c=>d.fit=c})),d.type==="barcode"&&(i.push({label:t.barcode,kind:"select",options:["code128","ean13","qr","datamatrix","pdf417"].map(c=>({value:c,label:c.toUpperCase()})),get:()=>{var c;return(c=d.format)!=null?c:"code128"},set:c=>d.format=c}),i.push({label:t.expr,kind:"expr",wide:!0,get:()=>d.expr,set:c=>d.expr=String(c)}),i.push({label:t.showText,kind:"check",get:()=>d.showText!==!1,set:c=>c?delete d.showText:d.showText=!1}),i.push({label:t.ecc,kind:"select",options:["L","M","Q","H"].map(c=>({value:c,label:c})),get:()=>{var c;return(c=d.ecc)!=null?c:"M"},set:c=>d.ecc=c})),d.type==="table"&&(i.push({label:t.source,kind:"expr",wide:!0,get:()=>d.source,set:c=>d.source=String(c)}),i.push({label:t.rowHeight,kind:"number",step:.5,get:()=>{var c;return(c=d.rowHeight)!=null?c:6},set:c=>d.rowHeight=Le(c)||6}),i.push({label:t.showHeader,kind:"check",get:()=>d.showHeader!==!1,set:c=>c?delete d.showHeader:d.showHeader=!1}),i.push({label:t.altBg,kind:"color",get:()=>{var c;return(c=d.altBackground)!=null?c:""},set:c=>c?d.altBackground=String(c):delete d.altBackground}),i.push({label:t.tableColumns,kind:"json",wide:!0,get:()=>JSON.stringify(d.columns,null,1),set:c=>{let m=JSON.parse(String(c));if(!Array.isArray(m))throw new Error("array");d.columns=m}})),d.type==="crosstab"&&(i.push({label:t.source,kind:"expr",wide:!0,get:()=>{var c;return(c=d.source)!=null?c:""},set:c=>c?d.source=String(c):delete d.source}),i.push({label:t.rowKey,kind:"expr",wide:!0,get:()=>d.rowKey,set:c=>d.rowKey=String(c)}),i.push({label:t.columnKey,kind:"expr",wide:!0,get:()=>d.columnKey,set:c=>d.columnKey=String(c)}),i.push({label:t.valueExpr,kind:"expr",wide:!0,get:()=>d.value,set:c=>d.value=String(c)}),i.push({label:t.aggregate,kind:"select",options:["sum","count","avg","min","max"].map(c=>({value:c,label:c})),get:()=>{var c;return(c=d.aggregate)!=null?c:"sum"},set:c=>d.aggregate=c}),i.push({label:t.format,kind:"text",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),i.push({label:t.corner,kind:"text",get:()=>{var c;return(c=d.corner)!=null?c:""},set:c=>d.corner=String(c)}),i.push({label:t.totals,kind:"check",get:()=>d.totals!==!1,set:c=>c?delete d.totals:d.totals=!1})),d.type==="chart"&&(i.push({label:t.chartType,kind:"select",options:["bar","hbar","line","area","pie","doughnut"].map(c=>({value:c,label:c})),get:()=>d.chartType,set:c=>d.chartType=c}),i.push({label:t.title,kind:"text",wide:!0,get:()=>{var c;return(c=d.title)!=null?c:""},set:c=>c?d.title=String(c):delete d.title}),i.push({label:t.source,kind:"expr",wide:!0,get:()=>{var c;return(c=d.source)!=null?c:""},set:c=>c?d.source=String(c):delete d.source}),i.push({label:t.category,kind:"expr",wide:!0,get:()=>d.category,set:c=>d.category=String(c)}),i.push({label:t.series,kind:"text",wide:!0,get:()=>d.series.map(c=>c.expr).join(", "),set:c=>d.series=String(c).split(",").map(m=>m.trim()).filter(Boolean).map((m,E)=>({...d.series[E],expr:m}))}),i.push({label:t.format,kind:"text",get:()=>{var c;return(c=d.format)!=null?c:""},set:c=>c?d.format=String(c):delete d.format}),i.push({label:t.legend,kind:"check",get:()=>{var c;return(c=d.legend)!=null?c:!1},set:c=>d.legend=!!c}),i.push({label:t.showValues,kind:"check",get:()=>!!d.showValues,set:c=>d.showValues=!!c}),i.push({label:t.stacked,kind:"check",get:()=>!!d.stacked,set:c=>d.stacked=!!c}))}if(f==="line"){let d=e;i.push({label:t.lineColor,kind:"color",get:()=>{var c;return(c=o(m=>m.color))!=null?c:"#000000"},set:c=>d.forEach(m=>m.color=String(c))}),i.push({label:t.lineWidth,kind:"number",step:.05,get:()=>{var c;return(c=o(m=>m.width))!=null?c:.2},set:c=>d.forEach(m=>m.width=Le(c))}),i.push({label:t.dash,kind:"select",options:[{value:"solid",label:t.solid},{value:"dashed",label:t.dashed},{value:"dotted",label:t.dotted}],get:()=>{var c;return(c=o(m=>m.dash))!=null?c:"solid"},set:c=>d.forEach(m=>c==="solid"?delete m.dash:m.dash=c)})}if(f==="rect"){let d=e;i.push({label:t.fill,kind:"color",get:()=>{var c;return(c=o(m=>m.fill))!=null?c:""},set:c=>d.forEach(m=>c?m.fill=String(c):delete m.fill)}),i.push({label:t.lineColor,kind:"color",get:()=>{var c;return(c=o(m=>m.color))!=null?c:"#000000"},set:c=>d.forEach(m=>m.color=String(c))}),i.push({label:t.lineWidth,kind:"number",step:.05,get:()=>{var c;return(c=o(m=>m.width))!=null?c:.2},set:c=>d.forEach(m=>m.width=Le(c))}),i.push({label:t.radius,kind:"number",step:.5,get:()=>{var c;return(c=o(m=>m.radius))!=null?c:0},set:c=>d.forEach(m=>Le(c)?m.radius=Le(c):delete m.radius)})}let g=[...u].every(d=>d==="text"||d==="field");if((g||f==="barcode"||f==="chart")&&(i.push({label:t.style,kind:"section"}),i.push({label:t.font,kind:"select",options:[{value:"",label:(k=(w=n.font)==null?void 0:w.family)!=null?k:"Nanum Gothic"},...bs.map(d=>({value:d,label:d}))],get:a("fontFamily"),set:l("fontFamily")}),i.push({label:t.fontSize,kind:"number",step:.5,min:4,get:()=>{var d,c,m;return(m=(c=o(E=>{var M;return(M=E.style)==null?void 0:M.fontSize}))!=null?c:(d=n.font)==null?void 0:d.size)!=null?m:9},set:d=>l("fontSize")(Le(d)||void 0)})),g){i.push({label:"",kind:"toggles",toggles:[{label:"B",title:t.bold,get:()=>!!o(m=>{var E;return!!((E=m.style)!=null&&E.bold)}),set:m=>l("bold")(m)},{label:"I",title:t.italic,get:()=>!!o(m=>{var E;return!!((E=m.style)!=null&&E.italic)}),set:m=>l("italic")(m)},{label:"U",title:t.underline,get:()=>!!o(m=>{var E;return!!((E=m.style)!=null&&E.underline)}),set:m=>l("underline")(m)},{label:"S",title:t.strike,get:()=>!!o(m=>{var E;return!!((E=m.style)!=null&&E.strike)}),set:m=>l("strike")(m)}]}),i.push({label:t.align,kind:"select",options:[{value:"left",label:t.left},{value:"center",label:t.center},{value:"right",label:t.right},{value:"justify",label:t.justify}],get:()=>{var m;return(m=o(E=>{var M;return(M=E.style)==null?void 0:M.align}))!=null?m:"left"},set:m=>l("align")(m==="left"?void 0:m)}),i.push({label:t.valign,kind:"select",options:[{value:"top",label:t.top},{value:"middle",label:t.middle},{value:"bottom",label:t.bottom}],get:()=>{var m;return(m=o(E=>{var M;return(M=E.style)==null?void 0:M.valign}))!=null?m:"middle"},set:m=>l("valign")(m==="middle"?void 0:m)}),i.push({label:t.color,kind:"color",get:()=>{var m;return(m=o(E=>{var M;return(M=E.style)==null?void 0:M.color}))!=null?m:"#000000"},set:m=>l("color")(m==="#000000"?void 0:m)}),i.push({label:t.background,kind:"color",get:()=>{var m;return(m=o(E=>{var M;return(M=E.style)==null?void 0:M.background}))!=null?m:""},set:l("background")});let d=Br(r.style);i.push({label:t.border,kind:"toggles",toggles:[{label:"\u25A3",title:t.all,get:()=>!!(d.top&&d.right&&d.bottom&&d.left),set:m=>["top","right","bottom","left"].forEach(E=>nn(e,E,m))},{label:"\u2594",title:t.top,get:()=>!!d.top,set:m=>nn(e,"top",m)},{label:"\u2581",title:t.bottom,get:()=>!!d.bottom,set:m=>nn(e,"bottom",m)},{label:"\u258F",title:t.left,get:()=>!!d.left,set:m=>nn(e,"left",m)},{label:"\u2595",title:t.right,get:()=>!!d.right,set:m=>nn(e,"right",m)}]});let c=(m,E)=>s(M=>{let $=Un(M.style),S=Br(M.style);if($.mode==="none")return;let P=`${m!=null?m:$.width} solid ${E!=null?E:$.color}`,L=S.top&&S.right&&S.bottom&&S.left;M.style={...M.style,border:L?P:Object.fromEntries(Object.entries(S).filter(([,R])=>R).map(([R])=>[R,P]))}});i.push({label:t.borderWidth,kind:"number",step:.05,get:()=>Un(r.style).width,set:m=>c(Le(m))}),i.push({label:t.borderColor,kind:"color",get:()=>Un(r.style).color,set:m=>c(void 0,String(m))}),i.push({label:t.padding,kind:"number",step:.5,get:()=>{var E;let m=(E=r.style)==null?void 0:E.padding;return typeof m=="number"?m:m?m[1]:1},set:m=>l("padding")(Le(m)===1?void 0:Le(m))}),i.push({label:t.wrap,kind:"check",get:()=>o(m=>{var E;return((E=m.style)==null?void 0:E.wrap)!==!1}),set:m=>l("wrap")(m?void 0:!1)}),i.push({label:t.shrink,kind:"check",get:()=>!!o(m=>{var E;return!!((E=m.style)!=null&&E.shrinkToFit)}),set:m=>l("shrinkToFit")(m)}),i.push({label:t.canGrow,kind:"check",get:()=>o(m=>m.canGrow!==!1),set:m=>s(E=>m?delete E.canGrow:E.canGrow=!1)})}return i.push({label:t.visible,kind:"expr",wide:!0,get:()=>{var d;return(d=o(c=>{var m;return(m=c.visible)!=null?m:""}))!=null?d:""},set:d=>s(c=>d?c.visible=String(d):delete c.visible)}),i}function ws(e,t,n,r,o){let s=[{label:`${n.band}: ${t}`,kind:"section"},{label:n.height,kind:"number",step:.5,min:1,get:()=>e.height,set:a=>e.height=Math.max(1,rn(Le(a)))},{label:n.bandGrow,kind:"check",get:()=>e.canGrow!==!1,set:a=>a?delete e.canGrow:e.canGrow=!1},{label:n.bandBg,kind:"color",get:()=>{var a;return(a=e.background)!=null?a:""},set:a=>a?e.background=String(a):delete e.background}];return o&&(s.push({label:n.altBg,kind:"color",get:()=>{var a;return(a=e.altBackground)!=null?a:""},set:a=>a?e.altBackground=String(a):delete e.altBackground}),s.push({label:n.columns,kind:"number",step:1,min:1,get:()=>{var a;return(a=e.columns)!=null?a:1},set:a=>Le(a)>1?e.columns=Math.floor(Le(a)):delete e.columns}),s.push({label:n.columnGap,kind:"number",step:.5,min:0,get:()=>{var a;return(a=e.columnGap)!=null?a:0},set:a=>Le(a)?e.columnGap=Le(a):delete e.columnGap})),s.push({label:n.breakBefore,kind:"check",get:()=>!!e.pageBreakBefore,set:a=>a?e.pageBreakBefore=!0:delete e.pageBreakBefore},{label:n.breakAfter,kind:"check",get:()=>!!e.pageBreakAfter,set:a=>a?e.pageBreakAfter=!0:delete e.pageBreakAfter},{label:n.visible,kind:"expr",wide:!0,get:()=>{var a;return(a=e.visible)!=null?a:""},set:a=>a?e.visible=String(a):delete e.visible}),r&&s.push({label:n.group,kind:"section"},{label:n.by,kind:"expr",wide:!0,get:()=>r.by,set:a=>r.by=String(a)},{label:n.groupSort,kind:"select",options:[{value:"",label:n.keep},{value:"asc",label:n.asc},{value:"desc",label:n.desc}],get:()=>{var a;return(a=r.sort)!=null?a:""},set:a=>a?r.sort=a:delete r.sort},{label:n.newPage,kind:"check",get:()=>!!r.newPage,set:a=>a?r.newPage=!0:delete r.newPage},{label:n.repeatHeader,kind:"check",get:()=>!!r.repeatHeader,set:a=>a?r.repeatHeader=!0:delete r.repeatHeader},{label:n.resetPage,kind:"check",get:()=>!!r.resetPageNumber,set:a=>a?r.resetPageNumber=!0:delete r.resetPageNumber}),s}function xs(e,t){var i;let n=(i=e.page)!=null?i:e.page={},r=()=>{var f;let u=(f=n.margins)!=null?f:15;return typeof u=="number"?`${u}`:u.join(" ")},o=()=>{var u,f;return typeof e.watermark=="string"?{text:e.watermark}:Array.isArray(e.watermark)?(u=e.watermark[0])!=null?u:{}:(f=e.watermark)!=null?f:{}},s=u=>{let f={...o(),...u};for(let g of Object.keys(f))(f[g]===void 0||f[g]===""||f[g]===!1)&&delete f[g];!f.text&&!f.image?delete e.watermark:e.watermark=Object.keys(f).length===1?String(f.text):f},a=()=>{var u,f;return Array.isArray(e.emboss)?(u=e.emboss[0])!=null?u:{}:(f=e.emboss)!=null?f:{}},l=u=>{let f={...a(),...u};for(let g of Object.keys(f))(f[g]===void 0||f[g]==="")&&delete f[g];!f.text&&!f.centerText&&!f.image?delete e.emboss:e.emboss=f};return[{label:t.report,kind:"section"},{label:t.name,kind:"text",wide:!0,get:()=>{var u;return(u=e.name)!=null?u:""},set:u=>e.name=String(u)},{label:t.size,kind:"select",options:Object.keys(lt).map(u=>({value:u,label:`${u} (${lt[u][0]}\xD7${lt[u][1]})`})),get:()=>{var u;return Array.isArray(n.size)?"A4":(u=n.size)!=null?u:"A4"},set:u=>n.size=u},{label:t.orientation,kind:"select",options:[{value:"portrait",label:t.portrait},{value:"landscape",label:t.landscape}],get:()=>{var u;return(u=n.orientation)!=null?u:"portrait"},set:u=>n.orientation=u},{label:t.margins,kind:"text",wide:!0,get:r,set:u=>{let f=String(u).trim().split(/[\s,]+/).map(Number).filter(Number.isFinite);n.margins=f.length>=4?[f[0],f[1],f[2],f[3]]:f.length?f[0]:15}},{label:t.font,kind:"select",options:bs.map(u=>({value:u,label:u})),get:()=>{var u,f;return(f=(u=e.font)==null?void 0:u.family)!=null?f:"Nanum Gothic"},set:u=>e.font={...e.font,family:String(u)}},{label:t.fontSize,kind:"number",step:.5,get:()=>{var u,f;return(f=(u=e.font)==null?void 0:u.size)!=null?f:9},set:u=>e.font={...e.font,size:Le(u)||9}},{label:t.dataSource,kind:"text",placeholder:"rows",get:()=>{var u;return(u=e.dataSource)!=null?u:""},set:u=>u?e.dataSource=String(u):delete e.dataSource},{label:t.sort,kind:"text",wide:!0,get:()=>{var u;return((u=e.sort)!=null?u:[]).join(", ")},set:u=>{let f=String(u).split(",").map(g=>g.trim()).filter(Boolean);f.length?e.sort=f:delete e.sort}},{label:t.filter,kind:"expr",wide:!0,get:()=>{var u;return(u=e.filter)!=null?u:""},set:u=>u?e.filter=String(u):delete e.filter},{label:t.fillEmpty,kind:"check",get:()=>!!e.fillEmptyRows,set:u=>u?e.fillEmptyRows=!0:delete e.fillEmptyRows},{label:t.skipHeader,kind:"check",get:()=>!!e.pageHeaderSkipFirst,set:u=>u?e.pageHeaderSkipFirst=!0:delete e.pageHeaderSkipFirst},{label:t.watermark,kind:"text",wide:!0,placeholder:'\uC0AC\uBCF8 / {params.user} {format(now(), "yyyy-MM-dd HH:mm")}',get:()=>{var u;return(u=o().text)!=null?u:""},set:u=>s({text:String(u)})},{label:t.wmRepeat,kind:"check",get:()=>!!o().repeat,set:u=>s({repeat:!!u||void 0})},{label:t.wmOpacity,kind:"number",step:.02,min:0,get:()=>{var u;return(u=o().opacity)!=null?u:.12},set:u=>s({opacity:Le(u)})},{label:t.emboss,kind:"text",wide:!0,placeholder:"(\uC8FC)\uD68C\uC0AC\uBA85 \xB7 COMPANY \xB7",get:()=>{var u;return(u=a().text)!=null?u:""},set:u=>l({text:String(u)})},{label:t.embossCenter,kind:"text",get:()=>{var u;return(u=a().centerText)!=null?u:""},set:u=>l({centerText:String(u)})},{label:t.params,kind:"json",wide:!0,get:()=>e.params?JSON.stringify(e.params,null,2):"",set:u=>{let f=String(u).trim();if(!f){delete e.params;return}e.params=JSON.parse(f)}}]}function Nr(e,t){if(!e.trim())return"";let n=hn(e);return n?`${t.errorExpr}: ${n}`:""}var Ki=96/25.4,Or={ko:{title:"\uC81C\uBAA9",pageHeader:"\uD398\uC774\uC9C0 \uBA38\uB9AC\uAE00",columnHeader:"\uC5F4 \uBA38\uB9AC\uAE00",groupHeader:"\uADF8\uB8F9 \uBA38\uB9AC\uAE00",detail:"\uC0C1\uC138",groupFooter:"\uADF8\uB8F9 \uBC14\uB2E5\uAE00",summary:"\uC694\uC57D (\uD569\uACC4)",pageFooter:"\uD398\uC774\uC9C0 \uBC14\uB2E5\uAE00",noData:"\uC790\uB8CC \uC5C6\uC74C"},en:{title:"Title",pageHeader:"Page header",columnHeader:"Column header",groupHeader:"Group header",detail:"Detail",groupFooter:"Group footer",summary:"Summary",pageFooter:"Page footer",noData:"No data"}},_i={ko:{design:"\uB514\uC790\uC778",preview:"\uBBF8\uB9AC\uBCF4\uAE30",json:"JSON",newReport:"\uC0C8\uB85C \uB9CC\uB4E4\uAE30",open:"\uC5F4\uAE30",save:"\uC800\uC7A5",undo:"\uC2E4\uD589 \uCDE8\uC18C",redo:"\uB2E4\uC2DC \uC2E4\uD589",cut:"\uC798\uB77C\uB0B4\uAE30",copy:"\uBCF5\uC0AC",paste:"\uBD99\uC5EC\uB123\uAE30",del:"\uC0AD\uC81C",dup:"\uBCF5\uC81C",alignL:"\uC67C\uCABD \uB9DE\uCDA4",alignC:"\uAC00\uC6B4\uB370 \uB9DE\uCDA4",alignR:"\uC624\uB978\uCABD \uB9DE\uCDA4",alignT:"\uC704 \uB9DE\uCDA4",alignM:"\uC911\uAC04 \uB9DE\uCDA4",alignB:"\uC544\uB798 \uB9DE\uCDA4",sameW:"\uAC19\uC740 \uB108\uBE44",sameH:"\uAC19\uC740 \uB192\uC774",grid:"\uACA9\uC790\uC5D0 \uB9DE\uCDA4",toolbox:"\uB3C4\uAD6C",fields:"\uB370\uC774\uD130 \uD544\uB4DC",bands:"\uBC34\uB4DC",addGroup:"\uADF8\uB8F9 \uCD94\uAC00",apply:"\uC801\uC6A9",props:"\uC18D\uC131",tools:{text:"\uD14D\uC2A4\uD2B8",field:"\uD544\uB4DC",line:"\uC120",rect:"\uC0AC\uAC01\uD615",image:"\uC774\uBBF8\uC9C0",barcode:"\uBC14\uCF54\uB4DC",qr:"QR \uCF54\uB4DC",chart:"\uCC28\uD2B8",table:"\uD45C (\uBAA9\uB85D)",crosstab:"\uD06C\uB85C\uC2A4\uD0ED",pageNumber:"\uCABD \uBC88\uD638",today:"\uC624\uB298 \uB0A0\uC9DC"},noFields:"\uB370\uC774\uD130\uB97C \uC5F0\uACB0\uD558\uBA74 \uD544\uB4DC\uAC00 \uB098\uC635\uB2C8\uB2E4",confirmNew:"\uD604\uC7AC \uBCF4\uACE0\uC11C\uB97C \uC9C0\uC6B0\uACE0 \uC0C8\uB85C \uB9CC\uB4E4\uAE4C\uC694?",jsonError:"JSON \uC624\uB958",add:"\uCD94\uAC00",remove:"\uC0AD\uC81C",params:"\uD30C\uB77C\uBBF8\uD130",dropHint:"\uB3C4\uAD6C\uB098 \uD544\uB4DC\uB97C \uB04C\uC5B4\uB2E4 \uB193\uC73C\uC138\uC694"},en:{design:"Design",preview:"Preview",json:"JSON",newReport:"New",open:"Open",save:"Save",undo:"Undo",redo:"Redo",cut:"Cut",copy:"Copy",paste:"Paste",del:"Delete",dup:"Duplicate",alignL:"Align left",alignC:"Align center",alignR:"Align right",alignT:"Align top",alignM:"Align middle",alignB:"Align bottom",sameW:"Same width",sameH:"Same height",grid:"Snap to grid",toolbox:"Toolbox",fields:"Data fields",bands:"Bands",addGroup:"Add group",apply:"Apply",props:"Properties",tools:{text:"Text",field:"Field",line:"Line",rect:"Rectangle",image:"Image",barcode:"Barcode",qr:"QR code",chart:"Chart",table:"Table",crosstab:"Crosstab",pageNumber:"Page number",today:"Today"},noFields:"Connect data to list its fields",confirmNew:"Discard this report and start a new one?",jsonError:"JSON error",add:"Add",remove:"Remove",params:"Parameters",dropHint:"Drop tools or fields here"}},Xi={new:"M14 3H7a1 1 0 0 0-1 1v16a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7zM14 3v4h4M12 11v6M9 14h6",open:"M3 7a1 1 0 0 1 1-1h5l2 2h8a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z",save:"M5 4h11l3 3v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zM8 4v5h7V4M8 20v-6h8v6",undo:"M9 14L4 9l5-5M4 9h10a6 6 0 0 1 0 12h-3",redo:"M15 14l5-5-5-5M20 9H10a6 6 0 0 0 0 12h3",cut:"M6 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM20 4L8.1 15.9M14.5 14.5L20 20M8.1 8.1L12 12",copy:"M9 9h10v12H9zM5 15V3h10",paste:"M9 4h6v3H9zM7 5H5v16h14V5h-2",del:"M4 7h16M10 11v6M14 11v6M6 7l1 13h10l1-13M9 7V4h6v3",alignL:"M4 3v18M8 7h12M8 15h7",alignC:"M12 3v18M6 7h12M8.5 15h7",alignR:"M20 3v18M4 7h12M9 15h7",alignT:"M3 4h18M7 8v12M15 8v7",alignM:"M3 12h18M7 6v12M15 8.5v7",alignB:"M3 20h18M7 4v12M15 9v7",sameW:"M4 8h16M4 16h16M4 5v6M20 5v6M4 13v6M20 13v6",sameH:"M8 4v16M16 4v16M5 4h6M5 20h6M13 4h6M13 20h6",grid:"M4 4h16v16H4zM4 9.3h16M4 14.6h16M9.3 4v16M14.6 4v16",text:"M5 6V4h14v2M12 4v16M9 20h6",field:"M4 7h16v10H4zM8 11h8",line:"M4 20L20 4",rect:"M4 6h16v12H4z",image:"M4 5h16v14H4zM4 15l4-4 4 4 3-3 5 5M15 9.5a1.5 1.5 0 1 0 0-.01",barcode:"M4 5v14M7 5v14M9 5v14M12 5v14M15 5v14M17 5v14M20 5v14",qr:"M4 4h6v6H4zM14 4h6v6h-6zM4 14h6v6H4zM14 14h2v2h-2zM18 18h2v2h-2zM14 18h2M18 14h2",chart:"M4 20V10M10 20V4M16 20v-7M2 20h20",pageNumber:"M7 3h7l4 4v14H7zM10 14h1v4M13 14h2v4h-2",table:"M4 5h16v14H4zM4 10h16M4 14.5h16M10 5v14",crosstab:"M4 4h16v16H4zM4 9h16M9 4v16M14 9v11M9 14.5h11",today:"M4 6h16v14H4zM4 10h16M8 3v5M16 3v5",plus:"M12 5v14M5 12h14",minus:"M5 12h14",x:"M6 6l12 12M18 6L6 18"},Ue=e=>`<svg viewBox="0 0 24 24" width="17" height="17" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round"><path d="${Xi[e]}"/></svg>`,Hr=e=>typeof e=="string"&&En(e)?e.replace(/[^#\w(),.\s%]/g,""):"transparent",Vi=e=>String(e!=null?e:"").replace(/[^\p{L}\p{N} _-]/gu,""),Ee=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),Te=(e,t=.01)=>Math.round(e/t)*t,Yi=["text","field","line","rect","image","barcode","qr","chart","table","crosstab","pageNumber","today"];function ks(e,t){let[n]=e.key.split(":"),r=Or[t][n];return e.group?`${r} \xB7 ${e.group.by}`:r}function Ji(e){return e.split(":")[0]}function $s(e,t={}){var ge,he,Re,j;let n=(ge=t.lang)!=null?ge:"ko",r=gs[n],o=_i[n],s=Ve((he=t.definition)!=null?he:tn());Bt(s);let a=(Re=t.data)!=null?Re:{},l=(j=t.zoom)!=null?j:1,i=1,u="design",f=new Set,g=null,w=[],k=[JSON.stringify(s)],d=[],c=null,m,E=Et();e.classList.add("fr-designer"),e.tabIndex=-1,e.innerHTML=`
86
86
  <div class="fr-toolbar" role="toolbar">
87
87
  <span class="fr-tabs" role="tablist">
88
88
  <button type="button" role="tab" class="fr-tab" data-mode="design" aria-selected="true">${o.design}</button>
@@ -90,14 +90,14 @@ html, body { margin: 0; padding: 0; background: #fff; }
90
90
  <button type="button" role="tab" class="fr-tab" data-mode="json" aria-selected="false">${o.json}</button>
91
91
  </span>
92
92
  <span class="fr-sep"></span>
93
- ${[["new",o.newReport],["open",o.open],["save",o.save]].map(([h,M])=>`<button type="button" class="fr-btn fr-icon" data-act="${h}" title="${M}" aria-label="${M}">${Ue(h)}</button>`).join("")}
93
+ ${[["new",o.newReport],["open",o.open],["save",o.save]].map(([p,x])=>`<button type="button" class="fr-btn fr-icon" data-act="${p}" title="${x}" aria-label="${x}">${Ue(p)}</button>`).join("")}
94
94
  <span class="fr-sep"></span>
95
- ${[["undo",o.undo],["redo",o.redo]].map(([h,M])=>`<button type="button" class="fr-btn fr-icon" data-act="${h}" title="${M} (Ctrl+${h==="undo"?"Z":"Y"})" aria-label="${M}">${Ue(h)}</button>`).join("")}
95
+ ${[["undo",o.undo],["redo",o.redo]].map(([p,x])=>`<button type="button" class="fr-btn fr-icon" data-act="${p}" title="${x} (Ctrl+${p==="undo"?"Z":"Y"})" aria-label="${x}">${Ue(p)}</button>`).join("")}
96
96
  <span class="fr-sep fr-design-only"></span>
97
97
  <span class="fr-design-only fr-group">
98
- ${[["cut",o.cut],["copy",o.copy],["paste",o.paste],["del",o.del]].map(([h,M])=>`<button type="button" class="fr-btn fr-icon" data-act="${h}" title="${M}" aria-label="${M}">${Ue(h)}</button>`).join("")}
98
+ ${[["cut",o.cut],["copy",o.copy],["paste",o.paste],["del",o.del]].map(([p,x])=>`<button type="button" class="fr-btn fr-icon" data-act="${p}" title="${x}" aria-label="${x}">${Ue(p)}</button>`).join("")}
99
99
  <span class="fr-sep"></span>
100
- ${[["alignL",o.alignL],["alignC",o.alignC],["alignR",o.alignR],["alignT",o.alignT],["alignM",o.alignM],["alignB",o.alignB],["sameW",o.sameW],["sameH",o.sameH]].map(([h,M])=>`<button type="button" class="fr-btn fr-icon" data-act="${h}" title="${M}" aria-label="${M}">${Ue(h)}</button>`).join("")}
100
+ ${[["alignL",o.alignL],["alignC",o.alignC],["alignR",o.alignR],["alignT",o.alignT],["alignM",o.alignM],["alignB",o.alignB],["sameW",o.sameW],["sameH",o.sameH]].map(([p,x])=>`<button type="button" class="fr-btn fr-icon" data-act="${p}" title="${x}" aria-label="${x}">${Ue(p)}</button>`).join("")}
101
101
  <span class="fr-sep"></span>
102
102
  <button type="button" class="fr-btn fr-icon" data-act="grid" title="${o.grid}" aria-label="${o.grid}" aria-pressed="true">${Ue("grid")}</button>
103
103
  <button type="button" class="fr-btn fr-icon" data-act="zoomOut" aria-label="-">${Ue("minus")}</button>
@@ -109,7 +109,7 @@ html, body { margin: 0; padding: 0; background: #fff; }
109
109
  <div class="fr-dz">
110
110
  <aside class="fr-dz-left">
111
111
  <h3>${o.toolbox}</h3>
112
- <div class="fr-dz-tools">${Ya.map(h=>`<button type="button" class="fr-dz-tool" draggable="true" data-tool="${h}" title="${o.tools[h]}">${Ue(h)}<span>${o.tools[h]}</span></button>`).join("")}</div>
112
+ <div class="fr-dz-tools">${Yi.map(p=>`<button type="button" class="fr-dz-tool" draggable="true" data-tool="${p}" title="${o.tools[p]}">${Ue(p)}<span>${o.tools[p]}</span></button>`).join("")}</div>
113
113
  <h3>${o.fields}</h3>
114
114
  <div class="fr-dz-fields"></div>
115
115
  <h3>${o.bands}</h3>
@@ -121,12 +121,12 @@ html, body { margin: 0; padding: 0; background: #fff; }
121
121
  <div class="fr-dz-json" hidden><textarea spellcheck="false" aria-label="JSON"></textarea><div class="fr-dz-json-bar"><span class="fr-dz-json-err" role="alert"></span><button type="button" class="fr-btn fr-primary" data-act="applyJson">${o.apply}</button></div></div>
122
122
  </div>
123
123
  <aside class="fr-dz-right" aria-label="${o.props}"><form class="fr-dz-props" autocomplete="off"></form></aside>
124
- </div>`;let v=h=>e.querySelector(h),k=v(".fr-dz-canvas"),S=v(".fr-dz-page"),j=v(".fr-dz-props"),C=v(".fr-dz-fields"),R=v(".fr-dz-bandlist"),O=v(".fr-dz-preview"),ue=v(".fr-dz-json"),te=v(".fr-file");Ht(["Nanum Gothic","Nanum Myeongjo"]);let z=()=>l*Ka,U=()=>{let h=JSON.stringify(s);h!==x[x.length-1]&&(x.push(h),x.length>200&&x.shift(),d=[],clearTimeout(p),p=setTimeout(()=>{var M;return(M=t.onChange)==null?void 0:M.call(t,Ve(s))},250))},F=h=>{s=JSON.parse(h),f=new Set([...f].filter(M=>He(s,M))),I(),clearTimeout(p),p=setTimeout(()=>{var M;return(M=t.onChange)==null?void 0:M.call(t,Ve(s))},250)},D=()=>{x.length<2||(d.push(x.pop()),F(x[x.length-1]))},G=()=>{let h=d.pop();h&&(x.push(h),F(h))},J=()=>{let{rows:h,root:M}=_e(s,i);return{row:h[0],rows:h,allRows:h,params:ft(s),data:M,vars:{page:1,pages:1,rowNum:1,now:new Date}}},W=()=>{let{rows:h}=_e(s,i),M=new Set;for(let w of h.slice(0,20))w&&typeof w=="object"&&Object.keys(w).forEach(g=>M.add(g));if(!h.length&&i&&typeof i=="object"&&!Array.isArray(i))for(let[w,g]of Object.entries(i))g&&typeof g=="object"&&!Array.isArray(g)?Object.keys(g).forEach(A=>M.add(`${w}.${A}`)):Array.isArray(g)||M.add(w);return[...M]},oe=(h,M)=>{var g,A,L,b;let w=z();if(h.type==="text"||h.type==="field"){let $=Ke(s,h),[q,Y,he,ie]=$.padding,se=[`font-family:'${Va($.fontFamily)}', 'Malgun Gothic', sans-serif`,`font-size:${Number($.fontSize)*(96/72)*l}px`,$.bold?"font-weight:700":"",$.italic?"font-style:italic":"",`color:${Hr($.color)}`,$.underline||$.strike?`text-decoration:${[$.underline?"underline":"",$.strike?"line-through":""].join(" ")}`:"",`padding:${q*w}px ${Y*w}px ${he*w}px ${ie*w}px`,`text-align:${$.align}`,`justify-content:${$.valign==="top"?"flex-start":$.valign==="bottom"?"flex-end":"center"}`,`line-height:${Number($.lineHeight)||1.25}`,$.background?`background:${Hr($.background)}`:"",$.letterSpacing?`letter-spacing:${$.letterSpacing*w}px`:""],me=$.border,le=Pe=>Pe?`${Math.max(1,Number(Pe.width)*w)}px ${Pe.style==="double"||Pe.style==="dashed"||Pe.style==="dotted"?Pe.style:"solid"} ${Hr(Pe.color)}`:"";me.top&&se.push(`border-top:${le(me.top)}`),me.right&&se.push(`border-right:${le(me.right)}`),me.bottom&&se.push(`border-bottom:${le(me.bottom)}`),me.left&&se.push(`border-left:${le(me.left)}`);let Se=h.type==="text"?Te(h.text||" "):`<span class="fr-dz-expr">[${Te(h.expr)}]</span>`;return`<div class="fr-dz-text" style="${se.filter(Boolean).join(";")}"><span>${Se}</span></div>`}if(h.type==="line"){let $=Math.max(1,((g=h.width)!=null?g:.2)*w),q=h.w<0?-h.w*w:0,Y=h.h<0?-h.h*w:0;return`<svg class="fr-dz-svg" overflow="visible"><line x1="${q}" y1="${Y}" x2="${q+h.w*w}" y2="${Y+h.h*w}" stroke="${Te((A=h.color)!=null?A:"#000")}" stroke-width="${$}"${h.dash==="dashed"?` stroke-dasharray="${$*3} ${$*2}"`:h.dash==="dotted"?` stroke-dasharray="${$} ${$}"`:""}/></svg>`}if(h.type==="rect")return`<div class="fr-dz-rect" style="border:${Math.max((L=h.width)!=null?L:.2,0)*w}px solid ${Te((b=h.color)!=null?b:"#000")};${h.fill?`background:${Te(h.fill)};`:""}${h.radius?`border-radius:${h.radius*w}px;`:""}"></div>`;if(h.type==="image"&&!h.expr)return h.src?`<img src="${Te(h.src)}" alt="" style="object-fit:${h.fit==="fill"?"fill":h.fit==="cover"?"cover":"contain"}">`:`<div class="fr-dz-ph">${Ue("image")}</div>`;try{let $={height:h.y+h.h,elements:[{...h,x:0,y:0}],canGrow:!1},q=ut($,J(),{def:s,measure:E,locale:"ko",kind:Ja(M.key),width:h.w},0,0);return tt({number:1,total:1,width:Math.max(h.w,1),height:Math.max(h.h,1),items:q.items},{className:"fr-dz-svg"}).replace('<rect width="100%" height="100%" fill="#fff"/>',"")}catch{return`<div class="fr-dz-ph">${Ue(h.type==="chart"?"chart":"barcode")}</div>`}},V=(h,M)=>{let w=z(),g=f.has(h.id),A=h.type==="line",L=Math.min(h.x,h.x+(A?h.w:0)),b=Math.min(h.y,h.y+(A?h.h:0)),$=Math.abs(h.w),q=Math.abs(h.h),Y=g&&f.size===1?(A?["nw","se"]:["nw","n","ne","e","se","s","sw","w"]).map(he=>`<span class="fr-dz-h fr-dz-h-${he}" data-h="${he}"></span>`).join(""):"";return`<div class="fr-dz-el${g?" is-selected":""}${A?" is-line":""}" data-id="${Te(String(h.id))}" style="left:${L*w}px;top:${b*w}px;width:${Math.max($*w,A?1:4)}px;height:${Math.max(q*w,A?1:4)}px" title="${Te(h.type==="field"?h.expr:h.type==="text"?h.text:h.type)}">${oe(h,M)}${Y}</div>`},I=()=>{let h=z(),M=rt(s);v(".fr-zoom-label").textContent=`${Math.round(l*100)}%`,S.style.width=`${M*h}px`;let w=et(s);S.innerHTML=w.map(L=>`
125
- <section class="fr-dz-band${m===L.key&&!f.size?" is-selected":""}" data-band="${L.key}">
126
- <header class="fr-dz-band-head" data-band-head="${L.key}"><span>${Te(ks(L,n))}</span><small>${Number(L.band.height)}mm</small></header>
127
- <div class="fr-dz-band-area" data-band-area="${L.key}" style="height:${L.band.height*h}px;background-size:${5*h}px ${5*h}px${L.band.background?`;background-color:${Te(L.band.background)}`:""}">
128
- ${L.band.elements.map(b=>V(b,L)).join("")}
129
- ${L.band.elements.length?"":`<span class="fr-dz-hint">${o.dropHint}</span>`}
124
+ </div>`;let M=p=>e.querySelector(p),$=M(".fr-dz-canvas"),S=M(".fr-dz-page"),P=M(".fr-dz-props"),L=M(".fr-dz-fields"),R=M(".fr-dz-bandlist"),H=M(".fr-dz-preview"),ue=M(".fr-dz-json"),Q=M(".fr-file");Ht(["Nanum Gothic","Nanum Myeongjo"]);let q=()=>l*Ki,z=()=>{let p=JSON.stringify(s);p!==k[k.length-1]&&(k.push(p),k.length>200&&k.shift(),d=[],clearTimeout(m),m=setTimeout(()=>{var x;return(x=t.onChange)==null?void 0:x.call(t,Ve(s))},250))},F=p=>{s=JSON.parse(p),f=new Set([...f].filter(x=>He(s,x))),I(),clearTimeout(m),m=setTimeout(()=>{var x;return(x=t.onChange)==null?void 0:x.call(t,Ve(s))},250)},D=()=>{k.length<2||(d.push(k.pop()),F(k[k.length-1]))},G=()=>{let p=d.pop();p&&(k.push(p),F(p))},Y=()=>{let{rows:p,root:x}=_e(s,a);return{row:p[0],rows:p,allRows:p,params:ft(s),data:x,vars:{page:1,pages:1,rowNum:1,now:new Date}}},Z=()=>{let{rows:p}=_e(s,a),x=new Set;for(let y of p.slice(0,20))y&&typeof y=="object"&&Object.keys(y).forEach(h=>x.add(h));if(!p.length&&a&&typeof a=="object"&&!Array.isArray(a))for(let[y,h]of Object.entries(a))h&&typeof h=="object"&&!Array.isArray(h)?Object.keys(h).forEach(A=>x.add(`${y}.${A}`)):Array.isArray(h)||x.add(y);return[...x]},se=(p,x)=>{var h,A,C,b;let y=q();if(p.type==="text"||p.type==="field"){let v=Ke(s,p),[O,V,pe,oe]=v.padding,re=[`font-family:'${Vi(v.fontFamily)}', 'Malgun Gothic', sans-serif`,`font-size:${Number(v.fontSize)*(96/72)*l}px`,v.bold?"font-weight:700":"",v.italic?"font-style:italic":"",`color:${Hr(v.color)}`,v.underline||v.strike?`text-decoration:${[v.underline?"underline":"",v.strike?"line-through":""].join(" ")}`:"",`padding:${O*y}px ${V*y}px ${pe*y}px ${oe*y}px`,`text-align:${v.align}`,`justify-content:${v.valign==="top"?"flex-start":v.valign==="bottom"?"flex-end":"center"}`,`line-height:${Number(v.lineHeight)||1.25}`,v.background?`background:${Hr(v.background)}`:"",v.letterSpacing?`letter-spacing:${v.letterSpacing*y}px`:""],fe=v.border,le=Pe=>Pe?`${Math.max(1,Number(Pe.width)*y)}px ${Pe.style==="double"||Pe.style==="dashed"||Pe.style==="dotted"?Pe.style:"solid"} ${Hr(Pe.color)}`:"";fe.top&&re.push(`border-top:${le(fe.top)}`),fe.right&&re.push(`border-right:${le(fe.right)}`),fe.bottom&&re.push(`border-bottom:${le(fe.bottom)}`),fe.left&&re.push(`border-left:${le(fe.left)}`);let Me=p.type==="text"?Ee(p.text||" "):`<span class="fr-dz-expr">[${Ee(p.expr)}]</span>`;return`<div class="fr-dz-text" style="${re.filter(Boolean).join(";")}"><span>${Me}</span></div>`}if(p.type==="line"){let v=Math.max(1,((h=p.width)!=null?h:.2)*y),O=p.w<0?-p.w*y:0,V=p.h<0?-p.h*y:0;return`<svg class="fr-dz-svg" overflow="visible"><line x1="${O}" y1="${V}" x2="${O+p.w*y}" y2="${V+p.h*y}" stroke="${Ee((A=p.color)!=null?A:"#000")}" stroke-width="${v}"${p.dash==="dashed"?` stroke-dasharray="${v*3} ${v*2}"`:p.dash==="dotted"?` stroke-dasharray="${v} ${v}"`:""}/></svg>`}if(p.type==="rect")return`<div class="fr-dz-rect" style="border:${Math.max((C=p.width)!=null?C:.2,0)*y}px solid ${Ee((b=p.color)!=null?b:"#000")};${p.fill?`background:${Ee(p.fill)};`:""}${p.radius?`border-radius:${p.radius*y}px;`:""}"></div>`;if(p.type==="image"&&!p.expr)return p.src?`<img src="${Ee(p.src)}" alt="" style="object-fit:${p.fit==="fill"?"fill":p.fit==="cover"?"cover":"contain"}">`:`<div class="fr-dz-ph">${Ue("image")}</div>`;try{let v={height:p.y+p.h,elements:[{...p,x:0,y:0}],canGrow:!1},O=ut(v,Y(),{def:s,measure:E,locale:"ko",kind:Ji(x.key),width:p.w},0,0);return tt({number:1,total:1,width:Math.max(p.w,1),height:Math.max(p.h,1),items:O.items},{className:"fr-dz-svg"}).replace('<rect width="100%" height="100%" fill="#fff"/>',"")}catch{return`<div class="fr-dz-ph">${Ue(p.type==="chart"?"chart":"barcode")}</div>`}},W=(p,x)=>{let y=q(),h=f.has(p.id),A=p.type==="line",C=Math.min(p.x,p.x+(A?p.w:0)),b=Math.min(p.y,p.y+(A?p.h:0)),v=Math.abs(p.w),O=Math.abs(p.h),V=h&&f.size===1?(A?["nw","se"]:["nw","n","ne","e","se","s","sw","w"]).map(pe=>`<span class="fr-dz-h fr-dz-h-${pe}" data-h="${pe}"></span>`).join(""):"";return`<div class="fr-dz-el${h?" is-selected":""}${A?" is-line":""}" data-id="${Ee(String(p.id))}" style="left:${C*y}px;top:${b*y}px;width:${Math.max(v*y,A?1:4)}px;height:${Math.max(O*y,A?1:4)}px" title="${Ee(p.type==="field"?p.expr:p.type==="text"?p.text:p.type)}">${se(p,x)}${V}</div>`},I=()=>{let p=q(),x=rt(s);M(".fr-zoom-label").textContent=`${Math.round(l*100)}%`,S.style.width=`${x*p}px`;let y=et(s);S.innerHTML=y.map(C=>`
125
+ <section class="fr-dz-band${g===C.key&&!f.size?" is-selected":""}" data-band="${C.key}">
126
+ <header class="fr-dz-band-head" data-band-head="${C.key}"><span>${Ee(ks(C,n))}</span><small>${Number(C.band.height)}mm</small></header>
127
+ <div class="fr-dz-band-area" data-band-area="${C.key}" style="height:${C.band.height*p}px;background-size:${5*p}px ${5*p}px${C.band.background?`;background-color:${Ee(C.band.background)}`:""}">
128
+ ${C.band.elements.map(b=>W(b,C)).join("")}
129
+ ${C.band.elements.length?"":`<span class="fr-dz-hint">${o.dropHint}</span>`}
130
130
  </div>
131
- <div class="fr-dz-band-resize" data-band-resize="${L.key}" title="${r.height}"></div>
132
- </section>`).join(""),N(),B(),e.querySelectorAll('[data-act="undo"]').forEach(L=>L.disabled=x.length<2),e.querySelectorAll('[data-act="redo"]').forEach(L=>L.disabled=!d.length);let g=f.size>0,A=f.size>1;for(let L of["cut","copy","del"])e.querySelector(`[data-act="${L}"]`).disabled=!g;for(let L of["alignL","alignC","alignR","alignT","alignM","alignB","sameW","sameH"])e.querySelector(`[data-act="${L}"]`).disabled=!A;e.querySelector('[data-act="paste"]').disabled=!y.length},B=()=>{var A;let h=W();C.innerHTML=h.length?h.map(L=>`<button type="button" class="fr-dz-field" draggable="true" data-field="${Te(L)}" title="${Te(L)}">${Te(L)}</button>`).join(""):`<p class="fr-dz-empty">${o.noFields}</p>`;let M=new Set(et(s).map(L=>L.key)),w=["title","pageHeader","columnHeader","detail","summary","pageFooter","noData"],g=(A=s.bands.groups)!=null?A:[];R.innerHTML=w.map(L=>`<label class="fr-dz-bandopt"><input type="checkbox" data-band-toggle="${L}"${M.has(L)?" checked":""}> ${Or[n][L]}</label>`).join("")+g.map((L,b)=>`<div class="fr-dz-groupopt"><span>${Or[n].groupHeader.replace(/ .*/,"")} ${b+1}: <code>${Te(L.by)}</code></span><button type="button" class="fr-btn fr-icon" data-group-remove="${b}" title="${o.remove}" aria-label="${o.remove}">${Ue("x")}</button></div>`).join("")+`<div class="fr-dz-addgroup"><select aria-label="${o.addGroup}">${h.map(L=>`<option>${Te(L)}</option>`).join("")}</select><button type="button" class="fr-btn" data-act="addGroup">${Ue("plus")}<span>${o.addGroup}</span></button></div>`},K=[],N=()=>{let h=[...f].map(M=>{var w;return(w=He(s,M))==null?void 0:w.el}).filter(M=>!!M);if(h.length)K=ys(h,r,s);else if(m&&Be(s,m)){let M=et(s).find(w=>w.key===m);K=ws(M.band,ks(M,n),r,M.group,M.key==="detail")}else K=xs(s,r);j.innerHTML=K.map((M,w)=>{var Y;if(M.kind==="section")return`<h3 class="fr-dz-sec">${Te(M.label)}</h3>`;let g=(Y=M.get)==null?void 0:Y.call(M),A=`fr-f-${w}`,L=`fr-dz-prop${M.wide||M.kind==="textarea"||M.kind==="json"||M.kind==="expr"||M.kind==="toggles"?" is-wide":""}${M.kind==="check"?" is-check":""}`;if(M.kind==="check")return`<label class="${L}"><input type="checkbox" data-f="${w}"${g?" checked":""}> ${Te(M.label)}</label>`;if(M.kind==="toggles")return`<div class="${L}">${M.label?`<span class="fr-dz-plabel">${Te(M.label)}</span>`:""}<span class="fr-dz-toggles">${M.toggles.map((he,ie)=>`<button type="button" class="fr-btn fr-dz-toggle" data-f="${w}" data-k="${ie}" title="${Te(he.title)}" aria-label="${Te(he.title)}" aria-pressed="${he.get()}">${Te(he.label)}</button>`).join("")}</span></div>`;let b=`<label for="${A}" class="fr-dz-plabel">${Te(M.label)}</label>`,$=g==null?"":String(g);if(M.kind==="select")return`<div class="${L}">${b}<select id="${A}" data-f="${w}">${g===void 0?'<option value="" selected>\u2014</option>':""}${M.options.map(he=>`<option value="${Te(he.value)}"${he.value===$?" selected":""}>${Te(he.label)}</option>`).join("")}</select></div>`;if(M.kind==="textarea"||M.kind==="json")return`<div class="${L}">${b}<textarea id="${A}" data-f="${w}" rows="${M.kind==="json"?6:3}" spellcheck="false">${Te($)}</textarea><small class="fr-dz-err" data-err="${w}"></small></div>`;if(M.kind==="color")return`<div class="${L}">${b}<span class="fr-dz-color"><input type="color" data-f="${w}" data-color value="${/^#[0-9a-f]{6}$/i.test($)?$:"#ffffff"}" aria-label="${Te(M.label)}"><input type="text" id="${A}" data-f="${w}" value="${Te($)}" placeholder="\u2014"></span></div>`;let q=M.kind==="number"?"number":"text";return`<div class="${L}">${b}<input id="${A}" type="${q}" data-f="${w}" value="${Te($)}"${M.step?` step="${M.step}"`:""}${M.min!==void 0?` min="${M.min}"`:""}${M.placeholder?` placeholder="${Te(M.placeholder)}"`:""}${M.kind==="expr"?' spellcheck="false" class="is-expr"':""}>${M.kind==="expr"?`<small class="fr-dz-err" data-err="${w}">${Te(Nr($,r))}</small>`:""}</div>`}).join("")},Q=(h,M)=>{var A,L,b,$,q,Y;let w=Number(h.dataset.f),g=K[w];if(g){if(g.kind==="toggles"){let he=g.toggles[Number(h.dataset.k)];he.set(!he.get())}else if(g.kind==="check")(A=g.set)==null||A.call(g,h.checked);else{let he=h.value;if(g.kind==="expr"){let ie=Nr(he,r),se=j.querySelector(`[data-err="${w}"]`);se&&(se.textContent=ie)}if(g.kind==="json")try{(L=g.set)==null||L.call(g,he);let ie=j.querySelector(`[data-err="${w}"]`);ie&&(ie.textContent="")}catch(ie){let se=j.querySelector(`[data-err="${w}"]`);se&&(se.textContent=`${o.jsonError}: ${ie.message}`);return}else if(g.kind==="number"){if(he===""||!Number.isFinite(Number(he)))return;(b=g.set)==null||b.call(g,Number(he))}else($=g.set)==null||$.call(g,he)}if(M){U();let he=(q=document.activeElement)==null?void 0:q.id;I(),he&&g.kind!=="toggles"&&g.kind!=="check"&&((Y=document.getElementById(he))==null||Y.focus())}else we()}},we=()=>{var A;let h=j.innerHTML,M=(A=document.activeElement)==null?void 0:A.id,w=document.activeElement,g=w&&"selectionStart"in w?w.selectionStart:null;if(I(),M){let L=document.getElementById(M);if(L&&(L.focus(),g!==null&&"setSelectionRange"in L))try{L.setSelectionRange(g,g)}catch{}}};j.addEventListener("input",h=>{let M=h.target;if(!M.dataset.f)return;let w=K[Number(M.dataset.f)];if(M.dataset.color!==void 0){let g=M.parentElement.querySelector("input[type=text]");g.value=M.value}w&&(w.kind==="text"||w.kind==="textarea"||w.kind==="expr"||w.kind==="number")&&Q(M,!1)}),j.addEventListener("change",h=>{let M=h.target;M.dataset.f&&Q(M,!0)}),j.addEventListener("click",h=>{let M=h.target.closest(".fr-dz-toggle");M&&Q(M,!0)}),j.addEventListener("submit",h=>h.preventDefault());let ke=()=>[...f].map(h=>He(s,h)).filter(h=>!!h),ye=(h,M=!1)=>{M||(f=new Set);for(let g of h)M&&f.has(g)?f.delete(g):f.add(g);let w=h.length?He(s,h[0]):null;w&&(m=w.slot.key),I()},ve=()=>{for(let{slot:h,el:M}of ke())h.band.elements=h.band.elements.filter(w=>w!==M);f.clear(),U(),I()},ee=()=>{y=ke().map(h=>Ve(h.el))},Z=()=>{var g,A,L;if(!y.length)return;let h=m&&Be(s,m)?m:(L=(g=et(s).find(b=>b.key==="detail"))==null?void 0:g.key)!=null?L:(A=et(s)[0])==null?void 0:A.key;if(!h)return;let M=Be(s,h),w=[];for(let b of y){let $=Ve(b);$.id=Nt(s),$.x=Re($.x+2,.5),$.y=Re(Math.min($.y+2,Math.max(0,M.height-Math.max(1,$.h))),.5),M.elements.push($),w.push($.id)}y=y.map(b=>({...Ve(b),x:b.x+2,y:b.y+2})),U(),ye(w)},be=h=>{let M=ke().map($=>$.el);if(M.length<2)return;let w=Math.min(...M.map($=>$.x)),g=Math.max(...M.map($=>$.x+$.w)),A=Math.min(...M.map($=>$.y)),L=Math.max(...M.map($=>$.y+$.h)),b=M[0];for(let $ of M)h==="alignL"?$.x=w:h==="alignR"?$.x=Re(g-$.w):h==="alignC"?$.x=Re((w+g)/2-$.w/2):h==="alignT"?$.y=A:h==="alignB"?$.y=Re(L-$.h):h==="alignM"?$.y=Re((A+L)/2-$.h/2):h==="sameW"?$.w=b.w:h==="sameH"&&($.h=b.h);U(),I()},Me=(h,M,w,g,A)=>{var $,q;let L=Be(s,M);if(!L)return;let b=hs(h,Nt(s),Re(w,a||.01),Re(g,a||.01),L.height,A);if(b.x=Math.max(0,Math.min(b.x,rt(s)-Math.min(b.w,5))),b.y=Math.max(0,Math.min(b.y,Math.max(0,L.height-(b.h||0)))),b.y+b.h>L.height&&(L.height=Re(b.y+b.h,.5)),L.elements.push(b),h==="field"&&A&&M==="detail"&&s.bands.columnHeader){let Y=s.bands.columnHeader;Y.elements.some(ie=>ie.x<b.x+b.w&&ie.x+ie.w>b.x)||Y.elements.push({id:Nt(s),type:"text",x:b.x,y:0,w:b.w,h:Y.height,text:A,style:{bold:!0,align:"center",background:"#eef1f6",border:"0.2 solid #8a94a6"}}),b.style={border:"0.15 solid #b9c1cd",...typeof(($=_e(s,i).rows[0])!=null?$:{})[A]=="number"?{align:"right"}:{}},typeof((q=_e(s,i).rows[0])!=null?q:{})[A]=="number"&&(b.format="#,##0"),b.h=L.height,b.y=0}U(),ye([b.id])},_=null,P=(h,M)=>{let w=h.getBoundingClientRect();return{x:(M.clientX-w.left)/z(),y:(M.clientY-w.top)/z()}};k.addEventListener("pointerdown",h=>{if(h.button!==0)return;let M=h.target;k.focus({preventScroll:!0});let w=M.closest(".fr-dz-h"),g=M.closest(".fr-dz-el"),A=M.closest("[data-band-resize]"),L=M.closest("[data-band-head]"),b=M.closest("[data-band-area]");if(A){let $=A.dataset.bandResize;_={kind:"band",key:$,startY:h.clientY,orig:Be(s,$).height}}else if(w&&g){let $=He(s,g.dataset.id);_={kind:"resize",id:$.el.id,handle:w.dataset.h,startX:h.clientX,startY:h.clientY,orig:{x:$.el.x,y:$.el.y,w:$.el.w,h:$.el.h}}}else if(g){let $=g.dataset.id;if(h.shiftKey||h.ctrlKey||h.metaKey){ye([$],!0);return}f.has($)||ye([$]),_={kind:"move",startX:h.clientX,startY:h.clientY,moved:!1,items:ke().map(q=>({id:q.el.id,x:q.el.x,y:q.el.y,key:q.slot.key}))}}else if(L){f.clear(),m=L.dataset.bandHead,I();return}else if(b){let $=b.dataset.bandArea,q=document.createElement("div");q.className="fr-dz-marquee",b.appendChild(q);let Y=P(b,h);_={kind:"marquee",key:$,area:b,startX:Y.x,startY:Y.y,box:q,additive:h.shiftKey||h.ctrlKey},_.additive||(f.clear(),m=$)}else{f.clear(),m=null,I();return}k.setPointerCapture(h.pointerId),h.preventDefault()}),k.addEventListener("pointermove",h=>{if(!_)return;let M=z();if(_.kind==="move"){let w=(h.clientX-_.startX)/M,g=(h.clientY-_.startY)/M;if(!_.moved&&Math.hypot(w,g)*M<3)return;if(_.moved=!0,a&&!h.altKey){let A=_.items[0];w=Re(A.x+w,a)-A.x,g=Re(A.y+g,a)-A.y}for(let A of _.items){let L=S.querySelector(`.fr-dz-el[data-id="${A.id}"]`),b=He(s,A.id);if(!L||!b)continue;let $=b.el.type==="line";L.style.left=`${Math.min(A.x+w,A.x+w+($?b.el.w:0))*M}px`,L.style.top=`${Math.min(A.y+g,A.y+g+($?b.el.h:0))*M}px`}}else if(_.kind==="resize"){let w=He(s,_.id);if(!w)return;let g=w.el,A=(h.clientX-_.startX)/M,L=(h.clientY-_.startY)/M,b=_.orig,$=Y=>a&&!h.altKey?Re(Y,a):Re(Y);if(g.type==="line")_.handle==="nw"?(g.x=$(b.x+A),g.y=$(b.y+L),g.w=Re(b.x+b.w-g.x),g.h=Re(b.y+b.h-g.y)):(g.w=$(b.x+b.w+A)-b.x,g.h=$(b.y+b.h+L)-b.y,h.shiftKey&&(Math.abs(g.w)>Math.abs(g.h)?g.h=0:g.w=0));else{if(_.handle.includes("e")&&(g.w=Math.max(1,$(b.x+b.w+A)-b.x)),_.handle.includes("s")&&(g.h=Math.max(1,$(b.y+b.h+L)-b.y)),_.handle.includes("w")){let Y=Math.min($(b.x+A),b.x+b.w-1);g.w=Re(b.x+b.w-Y),g.x=Y}if(_.handle.includes("n")){let Y=Math.min($(b.y+L),b.y+b.h-1);g.h=Re(b.y+b.h-Y),g.y=Y}}A=L=0;let q=S.querySelector(`.fr-dz-el[data-id="${_.id}"]`);q&&(q.outerHTML=V(g,w.slot))}else if(_.kind==="marquee"){let w=P(_.area,h),g=Math.min(w.x,_.startX),A=Math.min(w.y,_.startY);Object.assign(_.box.style,{left:`${g*M}px`,top:`${A*M}px`,width:`${Math.abs(w.x-_.startX)*M}px`,height:`${Math.abs(w.y-_.startY)*M}px`})}else if(_.kind==="band"){let w=Be(s,_.key),g=Math.max(1,...w.elements.map(b=>b.y+Math.max(b.h,0)));w.height=Math.max(g,Re(_.orig+(h.clientY-_.startY)/M,.5));let A=S.querySelector(`[data-band-area="${_.key}"]`);A&&(A.style.height=`${w.height*M}px`);let L=S.querySelector(`[data-band-head="${_.key}"] small`);L&&(L.textContent=`${w.height}mm`)}});let ne=h=>{if(!_)return;let M=_;_=null;let w=z();if(M.kind==="move"&&M.moved){let g=(h.clientX-M.startX)/w,A=(h.clientY-M.startY)/w;if(a&&!h.altKey){let $=M.items[0];g=Re($.x+g,a)-$.x,A=Re($.y+A,a)-$.y}let L=document.elementsFromPoint(h.clientX,h.clientY).find($=>{var q;return(q=$.dataset)==null?void 0:q.bandArea}),b=L==null?void 0:L.dataset.bandArea;for(let $ of M.items){let q=He(s,$.id);if(!q)continue;let Y=q.el;if(Y.x=Re(Math.max(0,$.x+g)),Y.y=Re($.y+A),b&&b!==q.slot.key){let ie=S.querySelector(`[data-band-area="${q.slot.key}"]`),me=(S.querySelector(`[data-band-area="${b}"]`).getBoundingClientRect().top-ie.getBoundingClientRect().top)/w;Y.y=Re(Y.y-me),q.slot.band.elements.splice(q.index,1),Be(s,b).elements.push(Y),m=b}let he=He(s,$.id).slot.band;Y.y=Math.max(0,Y.y),Y.y+Math.max(Y.h,0)>he.height&&(he.height=Re(Y.y+Math.max(Y.h,0),.5))}U(),I()}else if(M.kind==="resize"||M.kind==="band"){if(M.kind==="resize"){let g=He(s,M.id);g&&g.el.y+Math.max(g.el.h,0)>g.slot.band.height&&(g.slot.band.height=Re(g.el.y+g.el.h,.5))}U(),I()}else if(M.kind==="marquee"){let g=M.box.getBoundingClientRect();M.box.remove();let A=Be(s,M.key),L=M.area.getBoundingClientRect(),b=(g.left-L.left)/w,$=(g.top-L.top)/w,q=b+g.width/w,Y=$+g.height/w,he=g.width<2&&g.height<2?[]:A.elements.filter(ie=>{let se=Math.min(ie.x,ie.x+ie.w),me=Math.max(ie.x,ie.x+ie.w),le=Math.min(ie.y,ie.y+ie.h),Se=Math.max(ie.y,ie.y+ie.h);return se<q&&me>b&&le<Y&&Se>$}).map(ie=>ie.id);M.additive?he.forEach(ie=>f.add(ie)):f=new Set(he),m=M.key,I()}};k.addEventListener("pointerup",ne),k.addEventListener("pointercancel",ne),k.addEventListener("dblclick",h=>{let M=h.target.closest(".fr-dz-el");if(!M)return;let w=He(s,M.dataset.id);if(!w||w.el.type!=="text"&&w.el.type!=="field")return;let g=w.el,A=document.createElement("textarea");A.className="fr-dz-inline",A.value=g.type==="text"?g.text:g.expr,M.appendChild(A),A.focus(),A.select();let L=b=>{A.isConnected&&(b&&(g.type==="text"?g.text=A.value:g.expr=A.value,U()),I())};A.addEventListener("blur",()=>L(!0)),A.addEventListener("keydown",b=>{b.stopPropagation(),b.key==="Escape"?L(!1):b.key==="Enter"&&(g.type==="field"||!b.shiftKey)&&(b.preventDefault(),L(!0))})});let fe=new AbortController,ge=fe.signal;e.addEventListener("dragstart",h=>{let M=h.target.closest("[data-tool]"),w=h.target.closest("[data-field]");!M&&!w||(h.dataTransfer.setData("text/plain",M?`tool:${M.dataset.tool}`:`field:${w.dataset.field}`),h.dataTransfer.effectAllowed="copy")},{signal:ge}),k.addEventListener("dragover",h=>{h.target.closest("[data-band-area]")&&(h.preventDefault(),h.dataTransfer.dropEffect="copy")}),k.addEventListener("drop",h=>{var b,$;let M=h.target.closest("[data-band-area]"),w=($=(b=h.dataTransfer)==null?void 0:b.getData("text/plain"))!=null?$:"";if(!M||!w.includes(":"))return;h.preventDefault();let g=P(M,h),[A,L]=[w.slice(0,w.indexOf(":")),w.slice(w.indexOf(":")+1)];A==="tool"?Me(L,M.dataset.bandArea,g.x,g.y):A==="field"&&Me("field",M.dataset.bandArea,g.x,g.y,L)});let de=h=>{u=h,e.querySelectorAll(".fr-tab").forEach(M=>M.setAttribute("aria-selected",String(M.dataset.mode===h))),e.classList.toggle("is-preview",h==="preview"),e.classList.toggle("is-json",h==="json"),k.hidden=h!=="design",O.hidden=h!=="preview",ue.hidden=h!=="json",c==null||c.destroy(),c=null,h==="preview"&&(c=zn(O,{definition:Ve(s),data:i,lang:n,licenseKey:t.licenseKey,toolbar:{csv:!0}})),h==="json"&&(ue.querySelector("textarea").value=JSON.stringify(s,null,2),ue.querySelector(".fr-dz-json-err").textContent="")},ce=(h,M)=>{let w=URL.createObjectURL(new Blob([h],{type:"application/json"})),g=document.createElement("a");g.href=w,g.download=M,g.click(),setTimeout(()=>URL.revokeObjectURL(w),1e3)};e.addEventListener("click",h=>{var $,q,Y,he,ie,se,me;let M=h.target,w=M.closest(".fr-tab");if(w){de(w.dataset.mode);return}let g=M.closest("[data-tool]");if(g){let le=m&&Be(s,m)?m:"detail";Be(s,le)&&Me(g.dataset.tool,le,0,0);return}let A=M.closest("[data-field]");if(A){let le=m&&Be(s,m)?m:"detail",Se=Be(s,le);Se&&Me("field",le,Math.max(0,...Se.elements.map(Pe=>Pe.x+Pe.w))%rt(s),0,A.dataset.field);return}let L=M.closest("[data-group-remove]");if(L){($=s.bands.groups)==null||$.splice(Number(L.dataset.groupRemove),1),(q=s.bands.groups)!=null&&q.length||delete s.bands.groups,m=null,U(),I();return}let b=(Y=M.closest("[data-act]"))==null?void 0:Y.dataset.act;if(b)switch(b){case"new":confirm(o.confirmNew)&&(s=tn(),Bt(s),f.clear(),m=null,U(),I());break;case"open":te.click();break;case"save":t.onSave?t.onSave(Ve(s)):ce(JSON.stringify(s,null,2),`${((he=s.name)!=null?he:"report").replace(/[\\/:*?"<>|]+/g,"_")}.json`);break;case"undo":D();break;case"redo":G();break;case"cut":ee(),ve();break;case"copy":ee(),I();break;case"paste":Z();break;case"del":ve();break;case"grid":a=a?0:1,M.closest("[data-act]").setAttribute("aria-pressed",String(!!a));break;case"zoomIn":l=Math.min(3,Math.round((l+.1)*10)/10),I();break;case"zoomOut":l=Math.max(.4,Math.round((l-.1)*10)/10),I();break;case"addGroup":{let le=(ie=e.querySelector(".fr-dz-addgroup select"))==null?void 0:ie.value;if(!le)break;let Se=(me=(se=s.bands).groups)!=null?me:se.groups=[],Pe=rt(s);Se.push({by:le,sort:"asc",header:{height:7,elements:[{id:Nt(s),type:"text",x:0,y:0,w:Pe,h:7,text:`{${le}}`,style:{bold:!0,border:{bottom:!0}}}]},footer:{height:7,elements:[{id:Nt(s),type:"text",x:0,y:0,w:Pe,h:7,text:`{${le}} {count()}\uAC74`,style:{align:"right",color:"#4a5568"}}]}}),U(),I();break}case"applyJson":{let le=ue.querySelector(".fr-dz-json-err");try{let Se=JSON.parse(ue.querySelector("textarea").value);if(!Se||typeof Se!="object"||!Se.bands)throw new Error('"bands" is missing');s=Se,Bt(s),f.clear(),U(),I(),le.textContent="",de("design")}catch(Se){le.textContent=`${o.jsonError}: ${Se.message}`}break}default:(b.startsWith("align")||b==="sameW"||b==="sameH")&&be(b)}},{signal:ge}),R.addEventListener("change",h=>{let M=h.target.closest("[data-band-toggle]");if(!M)return;let w=M.dataset.bandToggle;M.checked?Ir(s,w,{height:w==="title"?14:8,elements:[]}):(Ir(s,w,void 0),m===w&&(m=null),f=new Set([...f].filter(g=>He(s,g)))),U(),I()}),te.addEventListener("change",async()=>{var M;let h=(M=te.files)==null?void 0:M[0];if(h){try{let w=JSON.parse(await h.text());if(!(w!=null&&w.bands))throw new Error('"bands" is missing');s=w,Bt(s),f.clear(),m=null,U(),I()}catch(w){alert(`${o.jsonError}: ${w.message}`)}te.value=""}});let ae=h=>{var A,L;let M=h.target;if(M.closest("input, textarea, select")||u!=="design"||!e.contains(M)&&M!==document.body)return;let w=h.ctrlKey||h.metaKey,g=h.key.toLowerCase();if(w&&g==="z"&&!h.shiftKey)h.preventDefault(),D();else if(w&&(g==="y"||g==="z"&&h.shiftKey))h.preventDefault(),G();else if(w&&g==="c")f.size&&(h.preventDefault(),ee(),I());else if(w&&g==="x")f.size&&(h.preventDefault(),ee(),ve());else if(w&&g==="v")h.preventDefault(),Z();else if(w&&g==="d")h.preventDefault(),ee(),Z();else if(w&&g==="a"){h.preventDefault();let b=m!=null?m:"detail";ye((L=(A=Be(s,b))==null?void 0:A.elements.map($=>$.id))!=null?L:[])}else if((g==="delete"||g==="backspace")&&f.size)h.preventDefault(),ve();else if(g==="escape")f.clear(),I();else if(g.startsWith("arrow")&&f.size){h.preventDefault();let b=h.altKey?.1:h.shiftKey?5:a||.5;for(let{el:$}of ke())g==="arrowleft"&&($.x=Re(Math.max(0,$.x-b))),g==="arrowright"&&($.x=Re($.x+b)),g==="arrowup"&&($.y=Re(Math.max(0,$.y-b))),g==="arrowdown"&&($.y=Re($.y+b));U(),I()}};e.addEventListener("keydown",ae,{signal:ge});let $e=!1;return at(s).then(()=>{$e||I()}),I(),{getDefinition:()=>Ve(s),setDefinition(h){s=Ve(h),Bt(s),f.clear(),m=null,x.length=0,x.push(JSON.stringify(s)),d=[],I(),u!=="design"&&de(u)},setData(h){i=h,I(),u==="preview"&&de("preview")},undo:D,redo:G,setMode:de,destroy(){$e=!0,c==null||c.destroy(),clearTimeout(p),fe.abort(),e.innerHTML="",e.classList.remove("fr-designer","is-preview","is-json")}}}function qr(e){let t=new Map,n=s=>s.toLowerCase().replace(/[\s'"_-]/g,"");for(let[s,i]of Object.entries(e))t.set(n(s),{normal:Zt(i.normal),bold:i.bold?Zt(i.bold):void 0});let r=t.values().next().value;if(!r)throw new Error("ttfMeasurer needs at least one font");let o=new Map;return{width(s,i){var m;let l=(m=t.get(n(i.family)))!=null?m:r,a=i.bold&&l.bold||l.normal,u=`${i.family}|${i.bold?1:0}|${s}`,f=o.get(u);if(f===void 0){f=0;for(let y of s){let x=a.glyphId(y.codePointAt(0)),d=a;!x&&a!==r.normal&&(d=r.normal,x=d.glyphId(y.codePointAt(0))),f+=d.advance(x)/d.unitsPerEm}i.bold&&!l.bold&&(f*=1.02),o.size>5e4&&o.clear(),o.set(u,f)}return f*i.size*Ce}}}async function zr(e=["Nanum Gothic"]){let t={};for(let n of e){let r=ht(n);r!=null&&r.normal&&(t[n]={normal:await Dt(r.normal),bold:r.bold?await Dt(r.bold):void 0})}return t}async function vs(e,t,n){var s,i;let r=(s=n.fonts)!=null?s:await zr();return{layout:At(e,t,{...n,measure:(i=n.measure)!=null?i:qr(r)}),fonts:r}}async function Ms(e,t={},n={}){let{layout:r,fonts:o}=await vs(e,t,n),s=Object.values(o)[0];return vt(r.pages,{title:e.name,creator:"FreeReport",...n.pdf,fonts:{default:s,...o}})}async function Ss(e,t={},n={}){if(n.mode==="data")return Ft(e,t,{params:n.params});let{layout:r}=await vs(e,t,n);return Lt(r,e)}return Cs(Za);})();
131
+ <div class="fr-dz-band-resize" data-band-resize="${C.key}" title="${r.height}"></div>
132
+ </section>`).join(""),N(),B(),e.querySelectorAll('[data-act="undo"]').forEach(C=>C.disabled=k.length<2),e.querySelectorAll('[data-act="redo"]').forEach(C=>C.disabled=!d.length);let h=f.size>0,A=f.size>1;for(let C of["cut","copy","del"])e.querySelector(`[data-act="${C}"]`).disabled=!h;for(let C of["alignL","alignC","alignR","alignT","alignM","alignB","sameW","sameH"])e.querySelector(`[data-act="${C}"]`).disabled=!A;e.querySelector('[data-act="paste"]').disabled=!w.length},B=()=>{var A;let p=Z();L.innerHTML=p.length?p.map(C=>`<button type="button" class="fr-dz-field" draggable="true" data-field="${Ee(C)}" title="${Ee(C)}">${Ee(C)}</button>`).join(""):`<p class="fr-dz-empty">${o.noFields}</p>`;let x=new Set(et(s).map(C=>C.key)),y=["title","pageHeader","columnHeader","detail","summary","pageFooter","noData"],h=(A=s.bands.groups)!=null?A:[];R.innerHTML=y.map(C=>`<label class="fr-dz-bandopt"><input type="checkbox" data-band-toggle="${C}"${x.has(C)?" checked":""}> ${Or[n][C]}</label>`).join("")+h.map((C,b)=>`<div class="fr-dz-groupopt"><span>${Or[n].groupHeader.replace(/ .*/,"")} ${b+1}: <code>${Ee(C.by)}</code></span><button type="button" class="fr-btn fr-icon" data-group-remove="${b}" title="${o.remove}" aria-label="${o.remove}">${Ue("x")}</button></div>`).join("")+`<div class="fr-dz-addgroup"><select aria-label="${o.addGroup}">${p.map(C=>`<option>${Ee(C)}</option>`).join("")}</select><button type="button" class="fr-btn" data-act="addGroup">${Ue("plus")}<span>${o.addGroup}</span></button></div>`},K=[],N=()=>{let p=[...f].map(x=>{var y;return(y=He(s,x))==null?void 0:y.el}).filter(x=>!!x);if(p.length)K=ys(p,r,s);else if(g&&Be(s,g)){let x=et(s).find(y=>y.key===g);K=ws(x.band,ks(x,n),r,x.group,x.key==="detail")}else K=xs(s,r);P.innerHTML=K.map((x,y)=>{var V;if(x.kind==="section")return`<h3 class="fr-dz-sec">${Ee(x.label)}</h3>`;let h=(V=x.get)==null?void 0:V.call(x),A=`fr-f-${y}`,C=`fr-dz-prop${x.wide||x.kind==="textarea"||x.kind==="json"||x.kind==="expr"||x.kind==="toggles"?" is-wide":""}${x.kind==="check"?" is-check":""}`;if(x.kind==="check")return`<label class="${C}"><input type="checkbox" data-f="${y}"${h?" checked":""}> ${Ee(x.label)}</label>`;if(x.kind==="toggles")return`<div class="${C}">${x.label?`<span class="fr-dz-plabel">${Ee(x.label)}</span>`:""}<span class="fr-dz-toggles">${x.toggles.map((pe,oe)=>`<button type="button" class="fr-btn fr-dz-toggle" data-f="${y}" data-k="${oe}" title="${Ee(pe.title)}" aria-label="${Ee(pe.title)}" aria-pressed="${pe.get()}">${Ee(pe.label)}</button>`).join("")}</span></div>`;let b=`<label for="${A}" class="fr-dz-plabel">${Ee(x.label)}</label>`,v=h==null?"":String(h);if(x.kind==="select")return`<div class="${C}">${b}<select id="${A}" data-f="${y}">${h===void 0?'<option value="" selected>\u2014</option>':""}${x.options.map(pe=>`<option value="${Ee(pe.value)}"${pe.value===v?" selected":""}>${Ee(pe.label)}</option>`).join("")}</select></div>`;if(x.kind==="textarea"||x.kind==="json")return`<div class="${C}">${b}<textarea id="${A}" data-f="${y}" rows="${x.kind==="json"?6:3}" spellcheck="false">${Ee(v)}</textarea><small class="fr-dz-err" data-err="${y}"></small></div>`;if(x.kind==="color")return`<div class="${C}">${b}<span class="fr-dz-color"><input type="color" data-f="${y}" data-color value="${/^#[0-9a-f]{6}$/i.test(v)?v:"#ffffff"}" aria-label="${Ee(x.label)}"><input type="text" id="${A}" data-f="${y}" value="${Ee(v)}" placeholder="\u2014"></span></div>`;let O=x.kind==="number"?"number":"text";return`<div class="${C}">${b}<input id="${A}" type="${O}" data-f="${y}" value="${Ee(v)}"${x.step?` step="${x.step}"`:""}${x.min!==void 0?` min="${x.min}"`:""}${x.placeholder?` placeholder="${Ee(x.placeholder)}"`:""}${x.kind==="expr"?' spellcheck="false" class="is-expr"':""}>${x.kind==="expr"?`<small class="fr-dz-err" data-err="${y}">${Ee(Nr(v,r))}</small>`:""}</div>`}).join("")},J=(p,x)=>{var A,C,b,v,O,V;let y=Number(p.dataset.f),h=K[y];if(h){if(h.kind==="toggles"){let pe=h.toggles[Number(p.dataset.k)];pe.set(!pe.get())}else if(h.kind==="check")(A=h.set)==null||A.call(h,p.checked);else{let pe=p.value;if(h.kind==="expr"){let oe=Nr(pe,r),re=P.querySelector(`[data-err="${y}"]`);re&&(re.textContent=oe)}if(h.kind==="json")try{(C=h.set)==null||C.call(h,pe);let oe=P.querySelector(`[data-err="${y}"]`);oe&&(oe.textContent="")}catch(oe){let re=P.querySelector(`[data-err="${y}"]`);re&&(re.textContent=`${o.jsonError}: ${oe.message}`);return}else if(h.kind==="number"){if(pe===""||!Number.isFinite(Number(pe)))return;(b=h.set)==null||b.call(h,Number(pe))}else(v=h.set)==null||v.call(h,pe)}if(x){z();let pe=(O=document.activeElement)==null?void 0:O.id;I(),pe&&h.kind!=="toggles"&&h.kind!=="check"&&((V=document.getElementById(pe))==null||V.focus())}else ye()}},ye=()=>{var A;let p=P.innerHTML,x=(A=document.activeElement)==null?void 0:A.id,y=document.activeElement,h=y&&"selectionStart"in y?y.selectionStart:null;if(I(),x){let C=document.getElementById(x);if(C&&(C.focus(),h!==null&&"setSelectionRange"in C))try{C.setSelectionRange(h,h)}catch{}}};P.addEventListener("input",p=>{let x=p.target;if(!x.dataset.f)return;let y=K[Number(x.dataset.f)];if(x.dataset.color!==void 0){let h=x.parentElement.querySelector("input[type=text]");h.value=x.value}y&&(y.kind==="text"||y.kind==="textarea"||y.kind==="expr"||y.kind==="number")&&J(x,!1)}),P.addEventListener("change",p=>{let x=p.target;x.dataset.f&&J(x,!0)}),P.addEventListener("click",p=>{let x=p.target.closest(".fr-dz-toggle");x&&J(x,!0)}),P.addEventListener("submit",p=>p.preventDefault());let ke=()=>[...f].map(p=>He(s,p)).filter(p=>!!p),ve=(p,x=!1)=>{x||(f=new Set);for(let h of p)x&&f.has(h)?f.delete(h):f.add(h);let y=p.length?He(s,p[0]):null;y&&(g=y.slot.key),I()},$e=()=>{for(let{slot:p,el:x}of ke())p.band.elements=p.band.elements.filter(y=>y!==x);f.clear(),z(),I()},ee=()=>{w=ke().map(p=>Ve(p.el))},_=()=>{var h,A,C;if(!w.length)return;let p=g&&Be(s,g)?g:(C=(h=et(s).find(b=>b.key==="detail"))==null?void 0:h.key)!=null?C:(A=et(s)[0])==null?void 0:A.key;if(!p)return;let x=Be(s,p),y=[];for(let b of w){let v=Ve(b);v.id=Nt(s),v.x=Te(v.x+2,.5),v.y=Te(Math.min(v.y+2,Math.max(0,x.height-Math.max(1,v.h))),.5),x.elements.push(v),y.push(v.id)}w=w.map(b=>({...Ve(b),x:b.x+2,y:b.y+2})),z(),ve(y)},be=p=>{let x=ke().map(v=>v.el);if(x.length<2)return;let y=Math.min(...x.map(v=>v.x)),h=Math.max(...x.map(v=>v.x+v.w)),A=Math.min(...x.map(v=>v.y)),C=Math.max(...x.map(v=>v.y+v.h)),b=x[0];for(let v of x)p==="alignL"?v.x=y:p==="alignR"?v.x=Te(h-v.w):p==="alignC"?v.x=Te((y+h)/2-v.w/2):p==="alignT"?v.y=A:p==="alignB"?v.y=Te(C-v.h):p==="alignM"?v.y=Te((A+C)/2-v.h/2):p==="sameW"?v.w=b.w:p==="sameH"&&(v.h=b.h);z(),I()},we=(p,x,y,h,A)=>{var v,O;let C=Be(s,x);if(!C)return;let b=hs(p,Nt(s),Te(y,i||.01),Te(h,i||.01),C.height,A);if(b.x=Math.max(0,Math.min(b.x,rt(s)-Math.min(b.w,5))),b.y=Math.max(0,Math.min(b.y,Math.max(0,C.height-(b.h||0)))),b.y+b.h>C.height&&(C.height=Te(b.y+b.h,.5)),C.elements.push(b),p==="field"&&A&&x==="detail"&&s.bands.columnHeader){let V=s.bands.columnHeader;V.elements.some(oe=>oe.x<b.x+b.w&&oe.x+oe.w>b.x)||V.elements.push({id:Nt(s),type:"text",x:b.x,y:0,w:b.w,h:V.height,text:A,style:{bold:!0,align:"center",background:"#eef1f6",border:"0.2 solid #8a94a6"}}),b.style={border:"0.15 solid #b9c1cd",...typeof((v=_e(s,a).rows[0])!=null?v:{})[A]=="number"?{align:"right"}:{}},typeof((O=_e(s,a).rows[0])!=null?O:{})[A]=="number"&&(b.format="#,##0"),b.h=C.height,b.y=0}z(),ve([b.id])},U=null,T=(p,x)=>{let y=p.getBoundingClientRect();return{x:(x.clientX-y.left)/q(),y:(x.clientY-y.top)/q()}};$.addEventListener("pointerdown",p=>{if(p.button!==0)return;let x=p.target;$.focus({preventScroll:!0});let y=x.closest(".fr-dz-h"),h=x.closest(".fr-dz-el"),A=x.closest("[data-band-resize]"),C=x.closest("[data-band-head]"),b=x.closest("[data-band-area]");if(A){let v=A.dataset.bandResize;U={kind:"band",key:v,startY:p.clientY,orig:Be(s,v).height}}else if(y&&h){let v=He(s,h.dataset.id);U={kind:"resize",id:v.el.id,handle:y.dataset.h,startX:p.clientX,startY:p.clientY,orig:{x:v.el.x,y:v.el.y,w:v.el.w,h:v.el.h}}}else if(h){let v=h.dataset.id;if(p.shiftKey||p.ctrlKey||p.metaKey){ve([v],!0);return}f.has(v)||ve([v]),U={kind:"move",startX:p.clientX,startY:p.clientY,moved:!1,items:ke().map(O=>({id:O.el.id,x:O.el.x,y:O.el.y,key:O.slot.key}))}}else if(C){f.clear(),g=C.dataset.bandHead,I();return}else if(b){let v=b.dataset.bandArea,O=document.createElement("div");O.className="fr-dz-marquee",b.appendChild(O);let V=T(b,p);U={kind:"marquee",key:v,area:b,startX:V.x,startY:V.y,box:O,additive:p.shiftKey||p.ctrlKey},U.additive||(f.clear(),g=v)}else{f.clear(),g=null,I();return}$.setPointerCapture(p.pointerId),p.preventDefault()}),$.addEventListener("pointermove",p=>{if(!U)return;let x=q();if(U.kind==="move"){let y=(p.clientX-U.startX)/x,h=(p.clientY-U.startY)/x;if(!U.moved&&Math.hypot(y,h)*x<3)return;if(U.moved=!0,i&&!p.altKey){let A=U.items[0];y=Te(A.x+y,i)-A.x,h=Te(A.y+h,i)-A.y}for(let A of U.items){let C=S.querySelector(`.fr-dz-el[data-id="${A.id}"]`),b=He(s,A.id);if(!C||!b)continue;let v=b.el.type==="line";C.style.left=`${Math.min(A.x+y,A.x+y+(v?b.el.w:0))*x}px`,C.style.top=`${Math.min(A.y+h,A.y+h+(v?b.el.h:0))*x}px`}}else if(U.kind==="resize"){let y=He(s,U.id);if(!y)return;let h=y.el,A=(p.clientX-U.startX)/x,C=(p.clientY-U.startY)/x,b=U.orig,v=V=>i&&!p.altKey?Te(V,i):Te(V);if(h.type==="line")U.handle==="nw"?(h.x=v(b.x+A),h.y=v(b.y+C),h.w=Te(b.x+b.w-h.x),h.h=Te(b.y+b.h-h.y)):(h.w=v(b.x+b.w+A)-b.x,h.h=v(b.y+b.h+C)-b.y,p.shiftKey&&(Math.abs(h.w)>Math.abs(h.h)?h.h=0:h.w=0));else{if(U.handle.includes("e")&&(h.w=Math.max(1,v(b.x+b.w+A)-b.x)),U.handle.includes("s")&&(h.h=Math.max(1,v(b.y+b.h+C)-b.y)),U.handle.includes("w")){let V=Math.min(v(b.x+A),b.x+b.w-1);h.w=Te(b.x+b.w-V),h.x=V}if(U.handle.includes("n")){let V=Math.min(v(b.y+C),b.y+b.h-1);h.h=Te(b.y+b.h-V),h.y=V}}A=C=0;let O=S.querySelector(`.fr-dz-el[data-id="${U.id}"]`);O&&(O.outerHTML=W(h,y.slot))}else if(U.kind==="marquee"){let y=T(U.area,p),h=Math.min(y.x,U.startX),A=Math.min(y.y,U.startY);Object.assign(U.box.style,{left:`${h*x}px`,top:`${A*x}px`,width:`${Math.abs(y.x-U.startX)*x}px`,height:`${Math.abs(y.y-U.startY)*x}px`})}else if(U.kind==="band"){let y=Be(s,U.key),h=Math.max(1,...y.elements.map(b=>b.y+Math.max(b.h,0)));y.height=Math.max(h,Te(U.orig+(p.clientY-U.startY)/x,.5));let A=S.querySelector(`[data-band-area="${U.key}"]`);A&&(A.style.height=`${y.height*x}px`);let C=S.querySelector(`[data-band-head="${U.key}"] small`);C&&(C.textContent=`${y.height}mm`)}});let ne=p=>{if(!U)return;let x=U;U=null;let y=q();if(x.kind==="move"&&x.moved){let h=(p.clientX-x.startX)/y,A=(p.clientY-x.startY)/y;if(i&&!p.altKey){let v=x.items[0];h=Te(v.x+h,i)-v.x,A=Te(v.y+A,i)-v.y}let C=document.elementsFromPoint(p.clientX,p.clientY).find(v=>{var O;return(O=v.dataset)==null?void 0:O.bandArea}),b=C==null?void 0:C.dataset.bandArea;for(let v of x.items){let O=He(s,v.id);if(!O)continue;let V=O.el;if(V.x=Te(Math.max(0,v.x+h)),V.y=Te(v.y+A),b&&b!==O.slot.key){let oe=S.querySelector(`[data-band-area="${O.slot.key}"]`),fe=(S.querySelector(`[data-band-area="${b}"]`).getBoundingClientRect().top-oe.getBoundingClientRect().top)/y;V.y=Te(V.y-fe),O.slot.band.elements.splice(O.index,1),Be(s,b).elements.push(V),g=b}let pe=He(s,v.id).slot.band;V.y=Math.max(0,V.y),V.y+Math.max(V.h,0)>pe.height&&(pe.height=Te(V.y+Math.max(V.h,0),.5))}z(),I()}else if(x.kind==="resize"||x.kind==="band"){if(x.kind==="resize"){let h=He(s,x.id);h&&h.el.y+Math.max(h.el.h,0)>h.slot.band.height&&(h.slot.band.height=Te(h.el.y+h.el.h,.5))}z(),I()}else if(x.kind==="marquee"){let h=x.box.getBoundingClientRect();x.box.remove();let A=Be(s,x.key),C=x.area.getBoundingClientRect(),b=(h.left-C.left)/y,v=(h.top-C.top)/y,O=b+h.width/y,V=v+h.height/y,pe=h.width<2&&h.height<2?[]:A.elements.filter(oe=>{let re=Math.min(oe.x,oe.x+oe.w),fe=Math.max(oe.x,oe.x+oe.w),le=Math.min(oe.y,oe.y+oe.h),Me=Math.max(oe.y,oe.y+oe.h);return re<O&&fe>b&&le<V&&Me>v}).map(oe=>oe.id);x.additive?pe.forEach(oe=>f.add(oe)):f=new Set(pe),g=x.key,I()}};$.addEventListener("pointerup",ne),$.addEventListener("pointercancel",ne),$.addEventListener("dblclick",p=>{let x=p.target.closest(".fr-dz-el");if(!x)return;let y=He(s,x.dataset.id);if(!y||y.el.type!=="text"&&y.el.type!=="field")return;let h=y.el,A=document.createElement("textarea");A.className="fr-dz-inline",A.value=h.type==="text"?h.text:h.expr,x.appendChild(A),A.focus(),A.select();let C=b=>{A.isConnected&&(b&&(h.type==="text"?h.text=A.value:h.expr=A.value,z()),I())};A.addEventListener("blur",()=>C(!0)),A.addEventListener("keydown",b=>{b.stopPropagation(),b.key==="Escape"?C(!1):b.key==="Enter"&&(h.type==="field"||!b.shiftKey)&&(b.preventDefault(),C(!0))})});let de=new AbortController,me=de.signal;e.addEventListener("dragstart",p=>{let x=p.target.closest("[data-tool]"),y=p.target.closest("[data-field]");!x&&!y||(p.dataTransfer.setData("text/plain",x?`tool:${x.dataset.tool}`:`field:${y.dataset.field}`),p.dataTransfer.effectAllowed="copy")},{signal:me}),$.addEventListener("dragover",p=>{p.target.closest("[data-band-area]")&&(p.preventDefault(),p.dataTransfer.dropEffect="copy")}),$.addEventListener("drop",p=>{var b,v;let x=p.target.closest("[data-band-area]"),y=(v=(b=p.dataTransfer)==null?void 0:b.getData("text/plain"))!=null?v:"";if(!x||!y.includes(":"))return;p.preventDefault();let h=T(x,p),[A,C]=[y.slice(0,y.indexOf(":")),y.slice(y.indexOf(":")+1)];A==="tool"?we(C,x.dataset.bandArea,h.x,h.y):A==="field"&&we("field",x.dataset.bandArea,h.x,h.y,C)});let ae=p=>{u=p,e.querySelectorAll(".fr-tab").forEach(x=>x.setAttribute("aria-selected",String(x.dataset.mode===p))),e.classList.toggle("is-preview",p==="preview"),e.classList.toggle("is-json",p==="json"),$.hidden=p!=="design",H.hidden=p!=="preview",ue.hidden=p!=="json",c==null||c.destroy(),c=null,p==="preview"&&(c=zn(H,{definition:Ve(s),data:a,lang:n,licenseKey:t.licenseKey,toolbar:{csv:!0}})),p==="json"&&(ue.querySelector("textarea").value=JSON.stringify(s,null,2),ue.querySelector(".fr-dz-json-err").textContent="")},ce=(p,x)=>{let y=URL.createObjectURL(new Blob([p],{type:"application/json"})),h=document.createElement("a");h.href=y,h.download=x,h.click(),setTimeout(()=>URL.revokeObjectURL(y),1e3)};e.addEventListener("click",p=>{var v,O,V,pe,oe,re,fe;let x=p.target,y=x.closest(".fr-tab");if(y){ae(y.dataset.mode);return}let h=x.closest("[data-tool]");if(h){let le=g&&Be(s,g)?g:"detail";Be(s,le)&&we(h.dataset.tool,le,0,0);return}let A=x.closest("[data-field]");if(A){let le=g&&Be(s,g)?g:"detail",Me=Be(s,le);Me&&we("field",le,Math.max(0,...Me.elements.map(Pe=>Pe.x+Pe.w))%rt(s),0,A.dataset.field);return}let C=x.closest("[data-group-remove]");if(C){(v=s.bands.groups)==null||v.splice(Number(C.dataset.groupRemove),1),(O=s.bands.groups)!=null&&O.length||delete s.bands.groups,g=null,z(),I();return}let b=(V=x.closest("[data-act]"))==null?void 0:V.dataset.act;if(b)switch(b){case"new":confirm(o.confirmNew)&&(s=tn(),Bt(s),f.clear(),g=null,z(),I());break;case"open":Q.click();break;case"save":t.onSave?t.onSave(Ve(s)):ce(JSON.stringify(s,null,2),`${((pe=s.name)!=null?pe:"report").replace(/[\\/:*?"<>|]+/g,"_")}.json`);break;case"undo":D();break;case"redo":G();break;case"cut":ee(),$e();break;case"copy":ee(),I();break;case"paste":_();break;case"del":$e();break;case"grid":i=i?0:1,x.closest("[data-act]").setAttribute("aria-pressed",String(!!i));break;case"zoomIn":l=Math.min(3,Math.round((l+.1)*10)/10),I();break;case"zoomOut":l=Math.max(.4,Math.round((l-.1)*10)/10),I();break;case"addGroup":{let le=(oe=e.querySelector(".fr-dz-addgroup select"))==null?void 0:oe.value;if(!le)break;let Me=(fe=(re=s.bands).groups)!=null?fe:re.groups=[],Pe=rt(s);Me.push({by:le,sort:"asc",header:{height:7,elements:[{id:Nt(s),type:"text",x:0,y:0,w:Pe,h:7,text:`{${le}}`,style:{bold:!0,border:{bottom:!0}}}]},footer:{height:7,elements:[{id:Nt(s),type:"text",x:0,y:0,w:Pe,h:7,text:`{${le}} {count()}\uAC74`,style:{align:"right",color:"#4a5568"}}]}}),z(),I();break}case"applyJson":{let le=ue.querySelector(".fr-dz-json-err");try{let Me=JSON.parse(ue.querySelector("textarea").value);if(!Me||typeof Me!="object"||!Me.bands)throw new Error('"bands" is missing');s=Me,Bt(s),f.clear(),z(),I(),le.textContent="",ae("design")}catch(Me){le.textContent=`${o.jsonError}: ${Me.message}`}break}default:(b.startsWith("align")||b==="sameW"||b==="sameH")&&be(b)}},{signal:me}),R.addEventListener("change",p=>{let x=p.target.closest("[data-band-toggle]");if(!x)return;let y=x.dataset.bandToggle;x.checked?Ir(s,y,{height:y==="title"?14:8,elements:[]}):(Ir(s,y,void 0),g===y&&(g=null),f=new Set([...f].filter(h=>He(s,h)))),z(),I()}),Q.addEventListener("change",async()=>{var x;let p=(x=Q.files)==null?void 0:x[0];if(p){try{let y=JSON.parse(await p.text());if(!(y!=null&&y.bands))throw new Error('"bands" is missing');s=y,Bt(s),f.clear(),g=null,z(),I()}catch(y){alert(`${o.jsonError}: ${y.message}`)}Q.value=""}});let ie=p=>{var A,C;let x=p.target;if(x.closest("input, textarea, select")||u!=="design"||!e.contains(x)&&x!==document.body)return;let y=p.ctrlKey||p.metaKey,h=p.key.toLowerCase();if(y&&h==="z"&&!p.shiftKey)p.preventDefault(),D();else if(y&&(h==="y"||h==="z"&&p.shiftKey))p.preventDefault(),G();else if(y&&h==="c")f.size&&(p.preventDefault(),ee(),I());else if(y&&h==="x")f.size&&(p.preventDefault(),ee(),$e());else if(y&&h==="v")p.preventDefault(),_();else if(y&&h==="d")p.preventDefault(),ee(),_();else if(y&&h==="a"){p.preventDefault();let b=g!=null?g:"detail";ve((C=(A=Be(s,b))==null?void 0:A.elements.map(v=>v.id))!=null?C:[])}else if((h==="delete"||h==="backspace")&&f.size)p.preventDefault(),$e();else if(h==="escape")f.clear(),I();else if(h.startsWith("arrow")&&f.size){p.preventDefault();let b=p.altKey?.1:p.shiftKey?5:i||.5;for(let{el:v}of ke())h==="arrowleft"&&(v.x=Te(Math.max(0,v.x-b))),h==="arrowright"&&(v.x=Te(v.x+b)),h==="arrowup"&&(v.y=Te(Math.max(0,v.y-b))),h==="arrowdown"&&(v.y=Te(v.y+b));z(),I()}};e.addEventListener("keydown",ie,{signal:me});let xe=!1;return it(s).then(()=>{xe||I()}),I(),{getDefinition:()=>Ve(s),setDefinition(p){s=Ve(p),Bt(s),f.clear(),g=null,k.length=0,k.push(JSON.stringify(s)),d=[],I(),u!=="design"&&ae(u)},setData(p){a=p,I(),u==="preview"&&ae("preview")},undo:D,redo:G,setMode:ae,destroy(){xe=!0,c==null||c.destroy(),clearTimeout(m),de.abort(),e.innerHTML="",e.classList.remove("fr-designer","is-preview","is-json")}}}function qr(e){let t=new Map,n=s=>s.toLowerCase().replace(/[\s'"_-]/g,"");for(let[s,a]of Object.entries(e))t.set(n(s),{normal:Zt(a.normal),bold:a.bold?Zt(a.bold):void 0});let r=t.values().next().value;if(!r)throw new Error("ttfMeasurer needs at least one font");let o=new Map;return{width(s,a){var g;let l=(g=t.get(n(a.family)))!=null?g:r,i=a.bold&&l.bold||l.normal,u=`${a.family}|${a.bold?1:0}|${s}`,f=o.get(u);if(f===void 0){f=0;for(let w of s){let k=i.glyphId(w.codePointAt(0)),d=i;!k&&i!==r.normal&&(d=r.normal,k=d.glyphId(w.codePointAt(0))),f+=d.advance(k)/d.unitsPerEm}a.bold&&!l.bold&&(f*=1.02),o.size>5e4&&o.clear(),o.set(u,f)}return f*a.size*Ce}}}async function zr(e=["Nanum Gothic"]){let t={};for(let n of e){let r=ht(n);r!=null&&r.normal&&(t[n]={normal:await Dt(r.normal),bold:r.bold?await Dt(r.bold):void 0})}return t}async function vs(e,t,n){var s,a;let r=(s=n.fonts)!=null?s:await zr();return{layout:At(e,t,{...n,measure:(a=n.measure)!=null?a:qr(r)}),fonts:r}}async function Ms(e,t={},n={}){let{layout:r,fonts:o}=await vs(e,t,n),s=Object.values(o)[0];return vt(r.pages,{title:e.name,creator:"FreeReport",...n.pdf,fonts:{default:s,...o}})}async function Ss(e,t={},n={}){if(n.mode==="data")return Ft(e,t,{params:n.params});let{layout:r}=await vs(e,t,n);return Lt(r,e)}return Cs(Zi);})();