1(self.webpackChunkwebapp=self.webpackChunkwebapp||[]).push([[2718],{67376:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(89379),o=n(9950);const a={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"}}]},name:"copy",theme:"outlined"};var l=n(25085),i=function(e,t){return o.createElement(l.A,(0,r.A)((0,r.A)({},e),{},{ref:t,icon:a}))};const c=o.forwardRef(i)},22718:(e,t,n)=>{"use strict";n.d(t,{A:()=>ie});var r=n(58168),o=n(9950),a=n(64467),l=n(82284),i=n(5544),c=n(13239),u=n(67376),s=n(24513),f=n(48738),p=n.n(f),d=n(67243),v=n.n(d),m=n(37978),y=n(50604),b=n(13511),g=n(71207),A=n(15207),h=n(41929),w=n(5741),E=n(66075),x=n(91478),O=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n},S={border:0,background:"transparent",padding:0,lineHeight:"inherit",display:"inline-block"};const C=o.forwardRef((function(e,t){var n=e.style,a=e.noStyle,l=e.disabled,i=O(e,["style","noStyle","disabled"]),c={};return a||(c=(0,r.A)({},S)),l&&(c.pointerEvents="none"),c=(0,r.A)((0,r.A)({},c),n),o.createElement("div",(0,r.A)({role:"button",tabIndex:0,ref:t},i,{onKeyDown:function(e){e.keyCode===x.A.ENTER&&e.preventDefault()},onKeyUp:function(t){var n=t.keyCode,r=e.onClick;n===x.A.ENTER&&r&&r()},style:c}))}));var k=n(43107),R=n(81541),j=n(89379);const P={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M864 170h-60c-4.4 0-8 3.6-8 8v518H310v-73c0-6.7-7.8-10.5-13-6.3l-141.9 112a8 8 0 000 12.6l141.9 112c5.3 4.2 13 .4 13-6.3v-75h498c35.3 0 64-28.7 64-64V178c0-4.4-3.6-8-8-8z"}}]},name:"enter",theme:"outlined"};var D=n(25085),M=function(e,t){return o.createElement(D.A,(0,j.A)((0,j.A)({},e),{},{ref:t,icon:P}))};const N=o.forwardRef(M);var z=n(98591),I=n(39156);const T=function(e){var t=e.prefixCls,n=e["aria-label"],r=e.className,l=e.style,c=e.direction,u=e.maxLength,s=e.autoSize,f=void 0===s||s,d=e.value,v=e.onSave,m=e.onCancel,y=e.onEnd,b=e.component,g=e.enterIcon,A=void 0===g?o.createElement(N,null):g,h=o.useRef(null),w=o.useRef(!1),E=o.useRef(),O=o.useState(d),S=(0,i.A)(O,2),C=S[0],k=S[1];o.useEffect((function(){k(d)}),[d]),o.useEffect((function(){if(h.current&&h.current.resizableTextArea){var e=h.current.resizableTextArea.textArea;e.focus();var t=e.value.length;e.setSelectionRange(t,t)}}),[]);var R=function(){v(C.trim())},j=b?"".concat(t,"-").concat(b):"",P=p()(t,"".concat(t,"-edit-content"),(0,a.A)({},"".concat(t,"-rtl"),"rtl"===c),r,j);return o.createElement("div",{className:P,style:l},o.createElement(z.A,{ref:h,maxLength:u,value:C,onChange:function(e){var t=e.target;k(t.value.replace(/[\n\r]/g,""))},onKeyDown:function(e){var t=e.keyCode;w.current||(E.current=t)},onKeyUp:function(e){var t=e.keyCode,n=e.ctrlKey,r=e.altKey,o=e.metaKey,a=e.shiftKey;E.current!==t||w.current||n||r||o||a||(t===x.A.ENTER?(R(),null===y||void 0===y||y()):t===x.A.ESC&&m())},onCompositionStart:function(){w.current=!0},onCompositionEnd:function(){w.current=!1},onBlur:function(){R()},"aria-label":n,rows:1,autoSize:f}),null!==A?(0,I.Ob)(A,{className:"".concat(t,"-edit-content-confirm")}):null)};function H(e,t){return o.useMemo((function(){var n=!!e;return[n,(0,r.A)((0,r.A)({},t),n&&"object"===(0,l.A)(e)?e:null)]}),[e])}const K=function(e,t){var n=o.useRef(!1);o.useEffect((function(){n.current?e():n.current=!0}),t)};var L=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n};const U=o.forwardRef((function(e,t){var n=e.prefixCls,l=e.component,i=void 0===l?"article":l,c=e.className,u=e.setContentRef,s=e.children,f=e.direction,d=L(e,["prefixCls","component","className","setContentRef","children","direction"]),v=o.useContext(w.QO),m=v.getPrefixCls,y=v.direction,b=null!==f&&void 0!==f?f:y,g=t;u&&(g=(0,h.K4)(t,u));var A=m("typography",n),E=p()(A,(0,a.A)({},"".concat(A,"-rtl"),"rtl"===b),c);return o.createElement(i,(0,r.A)({className:E,ref:g},d),s)}));function V(e){var t=(0,l.A)(e);return"string"===t||"number"===t}function F(e,t){for(var n=0,r=[],o=0;o<e.length;o+=1){if(n===t)return r;var a=e[o],l=n+(V(a)?String(a).length:1);if(l>t){var i=t-n;return r.push(String(a).slice(0,i)),r}r.push(a),n=l}return e}const B=function(e){var t=e.enabledMeasure,n=e.children,a=e.text,l=e.width,c=e.fontSize,u=e.rows,s=e.onEllipsis,f=o.useState([0,0,0]),p=(0,i.A)(f,2),d=(0,i.A)(p[0],3),v=d[0],m=d[1],g=d[2],A=p[1],h=o.useState(0),w=(0,i.A)(h,2),E=w[0],x=w[1],O=o.useState(0),S=(0,i.A)(O,2),C=S[0],k=S[1],R=o.useRef(null),j=o.useRef(null),P=o.useMemo((function(){return(0,y.A)(a)}),[a]),D=o.useMemo((function(){return function(e){var t=0;return e.forEach((function(e){V(e)?t+=String(e).length:t+=1})),t}(P)}),[P]),M=o.useMemo((function(){return t&&3===E?n(F(P,m),m<D):n(P,!1)}),[t,E,n,P,m,D]);(0,b.A)((function(){t&&l&&c&&D&&(x(1),A([0,Math.ceil(D/2),D]))}),[t,l,c,a,D,u]),(0,b.A)((function(){var e;1===E&&k((null===(e=R.current)||void 0===e?void 0:e.offsetHeight)||0)}),[E]),(0,b.A)((function(){var e,t;if(C)if(1===E)((null===(e=j.current)||void 0===e?void 0:e.offsetHeight)||0)<=u*C?(x(4),s(!1)):x(2);else if(2===E)if(v!==g){var n=(null===(t=j.current)||void 0===t?void 0:t.offsetHeight)||0,r=v,o=g;v===g-1?o=v:n<=u*C?r=m:o=m;var a=Math.ceil((r+o)/2);A([r,a,o])}else x(3),s(!0)}),[E,v,g,u,C]);var N={width:l,whiteSpace:"normal",margin:0,padding:0},z=function(e,t,n){return o.createElement("span",{"aria-hidden":!0,ref:t,style:(0,r.A)({position:"fixed",display:"block",left:0,top:0,zIndex:-9999,visibility:"hidden",pointerEvents:"none",fontSize:2*Math.floor(c/2)},n)},e)};return o.createElement(o.Fragment,null,M,t&&3!==E&&4!==E&&o.createElement(o.Fragment,null,z("lg",R,{wordBreak:"keep-all",whiteSpace:"nowrap"}),1===E?z(n(P,!1),j,N):function(e,t){var r=F(P,e);return z(n(r,!0),t,N)}(m,j)))};const W=function(e){var t=e.enabledEllipsis,n=e.isEllipsis,a=e.children,l=e.tooltipProps;return(null===l||void 0===l?void 0:l.title)&&t?o.createElement(R.A,(0,r.A)({open:!!n&&void 0},l),a):a};var Q=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n};
1function X(e,t,n){return!0===e||void 0===e?t:e||n&&t}function _(e){return!1===e?[!1,!1]:Array.isArray(e)?e:[e]}var q=o.forwardRef((function(e,t){var n,f,d,x=e.prefixCls,O=e.className,S=e.style,j=e.type,P=e.disabled,D=e.children,M=e.ellipsis,N=e.editable,z=e.copyable,I=e.component,L=e.title,V=Q(e,["prefixCls","className","style","type","disabled","children","ellipsis","editable","copyable","component","title"]),F=o.useContext(w.QO),q=F.getPrefixCls,G=F.direction,J=(0,E.n)("Text")[0],Y=o.useRef(null),Z=o.useRef(null),$=q("typography",x),ee=(0,A.A)(V,["mark","code","delete","underline","strong","keyboard","italic"]),te=H(N),ne=(0,i.A)(te,2),re=ne[0],oe=ne[1],ae=(0,g.A)(!1,{value:oe.editing}),le=(0,i.A)(ae,2),ie=le[0],ce=le[1],ue=oe.triggerType,se=void 0===ue?["icon"]:ue,fe=function(e){var t;e&&(null===(t=oe.onStart)||void 0===t||t.call(oe)),ce(e)};K((function(){var e;ie||null===(e=Z.current)||void 0===e||e.focus()}),[ie]);var pe=function(e){null===e||void 0===e||e.preventDefault(),fe(!0)},de=H(z),ve=(0,i.A)(de,2),me=ve[0],ye=ve[1],be=o.useState(!1),ge=(0,i.A)(be,2),Ae=ge[0],he=ge[1],we=o.useRef(),Ee={};ye.format&&(Ee.format=ye.format);var xe=function(){window.clearTimeout(we.current)},Oe=function(e){var t;null===e||void 0===e||e.preventDefault(),null===e||void 0===e||e.stopPropagation(),v()(ye.text||String(D)||"",Ee),he(!0),xe(),we.current=window.setTimeout((function(){he(!1)}),3e3),null===(t=ye.onCopy)||void 0===t||t.call(ye,e)};o.useEffect((function(){return xe}),[]);var Se=o.useState(!1),Ce=(0,i.A)(Se,2),ke=Ce[0],Re=Ce[1],je=o.useState(!1),Pe=(0,i.A)(je,2),De=Pe[0],Me=Pe[1],Ne=o.useState(!1),ze=(0,i.A)(Ne,2),Ie=ze[0],Te=ze[1],He=o.useState(!1),Ke=(0,i.A)(He,2),Le=Ke[0],Ue=Ke[1],Ve=o.useState(!1),Fe=(0,i.A)(Ve,2),Be=Fe[0],We=Fe[1],Qe=o.useState(!0),Xe=(0,i.A)(Qe,2),_e=Xe[0],qe=Xe[1],Ge=H(M,{expandable:!1}),Je=(0,i.A)(Ge,2),Ye=Je[0],Ze=Je[1],$e=Ye&&!Ie,et=Ze.rows,tt=void 0===et?1:et,nt=o.useMemo((function(){return!$e||void 0!==Ze.suffix||Ze.onEllipsis||Ze.expandable||re||me}),[$e,Ze,re,me]);(0,b.A)((function(){Ye&&!nt&&(Re((0,k.F)("webkitLineClamp")),Me((0,k.F)("textOverflow")))}),[nt,Ye]);var rt=o.useMemo((function(){return!nt&&(1===tt?De:ke)}),[nt,De,ke]),ot=$e&&(rt?Be:Le),at=$e&&1===tt&&rt,lt=$e&&tt>1&&rt,it=function(e){var t;Te(!0),null===(t=Ze.onExpand)||void 0===t||t.call(Ze,e)},ct=o.useState(0),ut=(0,i.A)(ct,2),st=ut[0],ft=ut[1],pt=o.useState(0),dt=(0,i.A)(pt,2),vt=dt[0],mt=dt[1],yt=function(e){var t;Ue(e),Le!==e&&(null===(t=Ze.onEllipsis)||void 0===t||t.call(Ze,e))};o.useEffect((function(){var e=Y.current;if(Ye&&rt&&e){var t=lt?e.offsetHeight<e.scrollHeight:e.offsetWidth<e.scrollWidth;Be!==t&&We(t)}}),[Ye,rt,D,lt,_e]),o.useEffect((function(){var e=Y.current;if("undefined"!==typeof IntersectionObserver&&e&&rt&&$e){var t=new IntersectionObserver((function(){qe(!!e.offsetParent)}));return t.observe(e),function(){t.disconnect()}}}),[rt,$e]);var bt={};bt=!0===Ze.tooltip?{title:null!==(n=oe.text)&&void 0!==n?n:D}:o.isValidElement(Ze.tooltip)?{title:Ze.tooltip}:"object"===(0,l.A)(Ze.tooltip)?(0,r.A)({title:null!==(f=oe.text)&&void 0!==f?f:D},Ze.tooltip):{title:Ze.tooltip};var gt=o.useMemo((function(){var e=function(e){return["string","number"].includes((0,l.A)(e))};if(Ye&&!rt)return e(oe.text)?oe.text:e(D)?D:e(L)?L:e(bt.title)?bt.title:void 0}),[Ye,rt,L,bt.title,ot]);if(ie)return o.createElement(T,{value:null!==(d=oe.text)&&void 0!==d?d:"string"===typeof D?D:"",onSave:function(e){var t;null===(t=oe.onChange)||void 0===t||t.call(oe,e),fe(!1)},onCancel:function(){var e;null===(e=oe.onCancel)||void 0===e||e.call(oe),fe(!1)},onEnd:oe.onEnd,prefixCls:$,className:O,style:S,direction:G,component:I,maxLength:oe.maxLength,autoSize:oe.autoSize,enterIcon:oe.enterIcon});var At=function(){var e,t=Ze.expandable,n=Ze.symbol;return t?(e=n||J.expand,o.createElement("a",{key:"expand",className:"".concat($,"-expand"),onClick:it,"aria-label":J.expand},e)):null},ht=function(){if(re){var e=oe.icon,t=oe.tooltip,n=(0,y.A)(t)[0]||J.edit,r="string"===typeof n?n:"";return se.includes("icon")?o.createElement(R.A,{key:"edit",title:!1===t?"":n},o.createElement(C,{ref:Z,className:"".concat($,"-edit"),onClick:pe,"aria-label":r},e||o.createElement(s.A,{role:"button"}))):null}},wt=function(){if(me){var e=ye.tooltips,t=ye.icon,n=_(e),r=_(t),a=Ae?X(n[1],J.copied):X(n[0],J.copy),l=Ae?J.copied:J.copy,i="string"===typeof a?a:l;
1return o.createElement(R.A,{key:"copy",title:a},o.createElement(C,{className:p()("".concat($,"-copy"),Ae&&"".concat($,"-copy-success")),onClick:Oe,"aria-label":i},Ae?X(r[1],o.createElement(c.A,null),!0):X(r[0],o.createElement(u.A,null),!0)))}};return o.createElement(m.default,{onResize:function(e,t){var n,r=e.offsetWidth;ft(r),mt(parseInt(null===(n=window.getComputedStyle)||void 0===n?void 0:n.call(window,t).fontSize,10)||0)},disabled:!$e||rt},(function(n){return o.createElement(W,{tooltipProps:bt,enabledEllipsis:$e,isEllipsis:ot},o.createElement(U,(0,r.A)({className:p()((0,a.A)((0,a.A)((0,a.A)((0,a.A)((0,a.A)((0,a.A)({},"".concat($,"-").concat(j),j),"".concat($,"-disabled"),P),"".concat($,"-ellipsis"),Ye),"".concat($,"-single-line"),$e&&1===tt),"".concat($,"-ellipsis-single-line"),at),"".concat($,"-ellipsis-multiple-line"),lt),O),prefixCls:x,style:(0,r.A)((0,r.A)({},S),{WebkitLineClamp:lt?tt:void 0}),component:I,ref:(0,h.K4)(n,Y,t),direction:G,onClick:se.includes("text")?pe:void 0,"aria-label":null===gt||void 0===gt?void 0:gt.toString(),title:L},ee),o.createElement(B,{enabledMeasure:$e&&!rt,text:D,rows:tt,width:st,fontSize:vt,onEllipsis:yt},(function(t,n){var r=t;t.length&&n&>&&(r=o.createElement("span",{key:"show-content","aria-hidden":!0},r));var a=function(e,t){var n=e.mark,r=e.code,a=e.underline,l=e.delete,i=e.strong,c=e.keyboard,u=e.italic,s=t;function f(e,t){e&&(s=o.createElement(t,{},s))}return f(i,"strong"),f(a,"u"),f(l,"del"),f(r,"code"),f(n,"mark"),f(c,"kbd"),f(u,"i"),s}(e,o.createElement(o.Fragment,null,r,function(e){return[e&&o.createElement("span",{"aria-hidden":!0,key:"ellipsis"},"..."),Ze.suffix,(t=e,[t&&At(),ht(),wt()])];var t}(n)));return a}))))}))}));const G=q;var J=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n};const Y=o.forwardRef((function(e,t){var n=e.ellipsis,a=e.rel,l=J(e,["ellipsis","rel"]),i=(0,r.A)((0,r.A)({},l),{rel:void 0===a&&"_blank"===l.target?"noopener noreferrer":a});return delete i.navigate,o.createElement(G,(0,r.A)({},i,{ref:t,ellipsis:!!n,component:"a"}))}));const Z=o.forwardRef((function(e,t){return o.createElement(G,(0,r.A)({ref:t},e,{component:"div"}))}));var $=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n},ee=function(e,t){var n=e.ellipsis,a=$(e,["ellipsis"]),i=o.useMemo((function(){return n&&"object"===(0,l.A)(n)?(0,A.A)(n,["expandable","rows"]):n}),[n]);return o.createElement(G,(0,r.A)({ref:t},a,{ellipsis:i,component:"span"}))};const te=o.forwardRef(ee);var ne=n(27895),re=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n},oe=(0,ne.p)(1,2,3,4,5);const ae=o.forwardRef((function(e,t){var n,a=e.level,l=void 0===a?1:a,i=re(e,["level"]);return n=oe.includes(l)?"h".concat(l):"h1",o.createElement(G,(0,r.A)({ref:t},i,{component:n}))}));var le=U;le.Text=te,le.Link=Y,le.Title=ae,le.Paragraph=Z;const ie=le},67243:(e,t,n)=>{"use strict";var r=n(59660),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,a,l,i,c,u,s=!1;t||(t={}),n=t.debug||!1;try{if(l=r(),i=document.createRange(),c=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),"undefined"===typeof r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(u),i.selectNodeContents(u),c.addRange(i),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");s=!0}catch(f){n&&console.error("unable to copy using execCommand: ",f),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),s=!0}catch(f){n&&console.error("unable to copy using clipboardData: ",f),n&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{c&&("function"==typeof c.removeRange?c.removeRange(i):c.removeAllRanges()),u&&document.body.removeChild(u),l()}return s}},59660:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||n.forEac
1h((function(t){e.addRange(t)})),t&&t.focus()}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.