PageSourceSearch

https://web-cdn.fuseenergy.com/_next/static/chunks/3371-3efda92c381a8441.js

js fuseenergy.com collected 2026-10-03 19:47:43 UTC 17,376 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3371],{1550:(e,t,r)=>{r.d(t,{Eb:()=>f,az:()=>m,bx:()=>c});var n=r(45287),a=r(67977),l=r(18825),s=r(87535),o=r(48060),i=r(16762),d=r(25832),u=r(72628);let c=e=>{let{i18n:t}=(0,a.uB)();return s.useMemo(()=>{if(!e)return null;if(!0===e)return t.t("errors.unknown_error");let r=e.message||String(e),n=(e=>{if(!e)return[];let t=e.message||String(e);if(!t)return[];try{let e=JSON.parse(t);return e.errors||[e]}catch(e){return[{text:t}]}})(e).map(e=>((e,t)=>{if((null==e?void 0:e.status_string)==="invalid_refresh_token")return t.t("errors.internal_authentication_error");if((null==e?void 0:e.status_string)==="validation_error")if((null==e?void 0:e.location)==="body.phone_number")return t.t("errors.invalid_phone_number");else if((null==e?void 0:e.location)==="body.code")return t.t("errors.invalid_code",{location:null==e?void 0:e.location});else if((null==e?void 0:e.location)==="query.mpan_core")return t.t("errors.invalid_mpan");else if((null==e?void 0:e.location)==="query.postcode")return t.t("errors.invalid_postcode");else if((null==e?void 0:e.location)==="query.plaintext")return t.t("errors.invalid_plaintext");else return t.t("errors.validation_error",{location:null==e?void 0:e.location});return(null==e?void 0:e.status_string)==="invalid_otp"?t.t("errors.invalid_otp"):t.t("errors.unknown_error")})(e,t)).join("\n");return t.t("errors.unknown_error")===n&&r?r:n},[e,t])},m=e=>{let{error:t}=e;return c(t)},f=e=>{let{error:t,className:r,innerClassName:a,render:m=!0,inlineOnly:f,onToastHide:g,...p}=e,_=c(t),h=s.useId(),x=(0,o.P)(u.globalToastNestingInitiatedStore);return(s.useEffect(()=>{!f&&_&&(0,u.showGlobalToast)({id:h,message:_,icon:(0,n.jsx)(d.i,{className:"size-5"}),onTimeout:g})},[_,f,h,g]),x&&!f)?null:(0,n.jsx)(i.e,{className:(0,l.A)(r,"text-base/6 text-red sm:text-body1/6 dark:text-red text-center text-balance"),...p,render:!!_&&m,children:(0,n.jsx)("div",{className:(0,l.A)("py-2",a),children:_})})}},5286:(e,t,r)=>{r.d(t,{Lz:()=>s,QM:()=>l,Tj:()=>n,nc:()=>a});let n={YELLOW:"#FF9500",PURPLE:"#BD37FD",BLUE:"#4383FF",TEAL:"#11D1D1",GREEN:"#27DC85",GREY:"#8e8e93",DEFAULT:"",ORANGE:"#F8632C",WHITE:"#FFFFFF",RED:"#FF453A",PINK:"#FF5E7E"},a={YELLOW:n.YELLOW,GREEN:n.GREEN,TEAL:n.TEAL,BLUE:n.BLUE,PURPLE:n.PURPLE,GREY:n.GREY},l=["GREY"],s="YELLOW"},8392:(e,t,r)=>{r.d(t,{Z:()=>a});var n=r(45287);r(87535);let a=e=>(0,n.jsxs)("svg",{"data-slot":"icon",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",...e,children:[(0,n.jsx)("path",{d:"M12 5V19",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),(0,n.jsx)("path",{d:"M19 12L12 19L5 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})},15125:(e,t,r)=>{r.d(t,{O:()=>d,o:()=>i});var n=r(45287),a=r(67977);r(87535);var l=r(18825),s=r(21549),o=r(60405);let i=function(e){let{i18n:t}=(0,a.uB)();return(0,n.jsx)(o.R,{"aria-label":t.t("common.go-back"),...e,children:(0,n.jsx)(s.Y,{className:"size-6 text-primary"})})},d=e=>{let{className:t,...r}=e;return(0,n.jsx)("div",{className:(0,l.A)("size-10",t),...r})}},16762:(e,t,r)=>{r.d(t,{e:()=>o});var n=r(45287),a=r(33393),l=r(71041),s=r(87535);let o=e=>{let{render:t,className:r,axis:o="vertical",...i}=e,[d,u]=s.useState(t?"show":"hide"),c=s.useRef(t);c.current=t;let m=s.useMemo(()=>"vertical"===o?{show:{opacity:1,height:"auto",pointerEvents:"auto"},hide:{opacity:0,height:0,pointerEvents:"none"}}:{show:{opacity:1,width:"auto",pointerEvents:"auto"},hide:{opacity:0,width:0,pointerEvents:"none"}},[o]),f=s.useCallback(()=>{u(c.current?"show":"hide")},[]);return(0,n.jsx)(a.AnimatePresence,{children:t&&(0,n.jsx)(l.PY1.div,{className:r,...i,initial:d,onAnimationComplete:f,animate:"show",exit:"hide",variants:m})})}},17694:(e,t,r)=>{r.d(t,{c:()=>s});var n=r(45287);r(87535);var a=r(1550),l=r(93512);let s=e=>{let{children:t,restoration:r}=e;return(0,n.jsxs)(n.Fragment,{children:[r.loading?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(l.E,{type:"heading"}),(0,n.jsx)(l.E,{type:"rectangle"})]}):(0,n.jsx)(n.Fragment,{children:null!==r.data&&t}),(0,n.jsx)(a.Eb,{error:r.error})]})}},19656:(e,t,r)=>{r.d(t,{$5:()=>g,ET:()=>d,Ju:()=>_,PE:()=>h,aq:()=>m,nQ:()=>f,tT:()=>p,tb:()=>x,uf:()=>j});
1var n=r(16374),a=r(200),l=r(3404);let s=/^\/(blog|news)\/([^/]+)/,o=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,i=n.Ik({fuse_entry_source:n.k5(["blog","news"]),fuse_subfolder_slug:n.Yj().regex(o),fuse_subfolder_url:n.Yj().url(),fuse_attribution_source:n.k5(["query_param","stored_blog_touch"]),fuse_subfolder_landed_at:n.Yj().datetime(),fuse_document_id:n.Yj().optional(),fuse_updated_at:n.Yj().datetime().optional(),capturedAt:n.ai().int().nonnegative().optional()}),d=e=>{if("number"==typeof e.capturedAt)return e.capturedAt;let t=Date.parse(e.fuse_subfolder_landed_at);return Number.isNaN(t)?null:t},u=e=>"blog"===e||"news"===e,c=e=>o.test(e),m=e=>{if(!e)return{status:"empty"};let t=e.match(s);if(!t)return{status:"empty"};let[,r,n]=t;return u(r)?c(n)?{status:"valid",attribution:{entry:r,slug:n}}:{status:"invalid",invalidAttribution:{entry:r,slug_length:n.length}}:{status:"empty"}},f=(e,t)=>e&&t&&u(e)&&c(t)?{entry:e,slug:t}:null,g=(e,t)=>{let r=f(e,t);return r?{fuse_entry_source:r.entry,fuse_subfolder_slug:r.slug,fuse_subfolder_url:"https://www.fuseenergy.com/".concat(r.entry,"/").concat(r.slug)}:null},p=(0,l.DV)("fuse_subfolder_attribution",null,(0,a.ms)(30,"days")),_=()=>{let e=p.get();e&&"query_param"===e.fuse_attribution_source&&p.clear()},h=()=>{let e=p.get();if(!e)return null;let t=i.safeParse(e);return t.success?t.data:null},x=function(e,t,r,n){let a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:()=>new Date().toISOString();return e?e.fuse_subfolder_slug!==t.slug||e.fuse_document_id===n.documentId&&e.fuse_updated_at===n.updatedAt?null:{...e,fuse_document_id:n.documentId,fuse_updated_at:n.updatedAt}:{fuse_entry_source:t.entry,fuse_subfolder_slug:t.slug,fuse_subfolder_url:r,fuse_attribution_source:"stored_blog_touch",fuse_subfolder_landed_at:a(),fuse_document_id:n.documentId,fuse_updated_at:n.updatedAt}},v=e=>{var t;return"fuse_subfolder_landed_at"in e?null!=(t=d(e))?t:0:e.capturedAt},j=(e,t)=>{if(!t)return e;let r=d(t);return[...e,null===r?t:{...t,capturedAt:r}].sort((e,t)=>v(e)-v(t))}},21549:(e,t,r)=>{r.d(t,{Y:()=>a});var n=r(45287);r(87535);let a=e=>(0,n.jsx)("svg",{"data-slot":"icon",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",...e,children:(0,n.jsx)("path",{d:"M10 12L6 8L10 4",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})},32618:(e,t,r)=>{r.d(t,{W:()=>d});var n=r(45287);r(87535);var a=r(18825),l=r(33393),s=r(71041),o=r(49541);let i={bottom:"var(--fuse-sticky-footer-bottom, 2.5rem)"},d=e=>{let{className:t,render:r=!0,children:d}=e,f=(0,o.hL)();return(0,n.jsx)(n.Fragment,{children:(0,n.jsx)("div",{className:(0,a.A)(t,f&&"bottom-0","sticky z-10 w-full print:relative"),style:f?void 0:i,children:(0,n.jsx)(l.AnimatePresence,{children:r&&(0,n.jsx)(s.PY1.div,{initial:m,animate:c,exit:u,children:d})})})})},u={opacity:0},c={opacity:1},m={opacity:0}},41069:(e,t,r)=>{r.d(t,{C:()=>n});let n=e=>{var t;let r=null!=(t=null==e?void 0:e.parentElement)?t:null;for(;r;){let e=window.getComputedStyle(r).overflowY;if("auto"===e||"scroll"===e)return r;r=r.parentElement}return null}},56720:(e,t,r)=>{r.d(t,{Hq:()=>f,bf:()=>m,vO:()=>p});var n=r(45287);r(87535);var a=r(40984),l=r(48060),s=r(67977),o=r(75146),i=r(49541),d=r(70725),u=r(64553);let c=(0,a.eU)(!1),m=()=>c.set(!0),f=()=>c.get(),g=e=>c.set(e),p=()=>{let e=(0,l.P)(c);return(0,n.jsxs)(i.lG,{open:e,onOpenChange:g,size:"md",children:[(0,n.jsx)(u.FormHeading,{heading:(0,n.jsx)(s.x6,{id:"boarding.industry-unavailable.title"})}),(0,n.jsx)(o.ContentCard,{children:(0,n.jsx)("div",{className:"text-secondary text-body2-paragraph",children:(0,n.jsx)(s.x6,{id:"boarding.industry-unavailable.description"})})}),(0,n.jsx)(d.I,{children:(0,n.jsx)(i.De,{appearance:"primary",large:!0,children:(0,n.jsx)(s.x6,{id:"common.got-it"})})})]})}},64553:(e,t,r)=>{r.d(t,{D:()=>g,FormHeading:()=>_,Heading:()=>c,R:()=>m});var n=r(45287),a=r(87535),l=r(18825),s=r(2216),o=r(5286),i=r(15125),d=r(49541),u=r(60405);let c=e=>{let{className:t,level:r=3,...a}=e;return(0,n.jsx)("h".concat(r),{...a,className:(0,l.A)(s.Q.className,1===r&&"text-header1",2===r&&"text-header2",3===r&&"text-header3",4===r&&"text-header4","text-primary text-balance text-center break-words","py-2",t)})},m=e=>{let{className:t,level:r=2,...a}=e;return(0,n.jsx)("h".concat(r),{...a,className:(0,l.A)(t,"text-body2-primary text-secondary text-center break-words py-2")})},f=a.createContext(null),g=e=>{let{rootUrl:t,rootColor:r,children:l,rootIcon:s}=e,o=a.useMemo(()=>({rootUrl:t,rootColor:r,rootIcon:s}),[t,r,s]);return(0,n.jsx)(f.Provider,{value:o,children:l})},p=()=>{let e=a.useContext(f);return(0,n.jsx)(u.R,{color:o.Tj[(null==e?void 0:e.rootColor)||"YELLOW"],href:null==e?void 0:e.rootUrl,className:"md:opacity-0 md:pointer-events-none",children:null==e?void 0:e.rootIcon})},_=e=>{let{heading:t,subheading:r,backUrl:s,backButton:o,dialogCloseButton:u,notch:g,headingClassName:_,hideRootButtonAndB
1ackSpacer:h}=e,x=a.useContext(f),v=s?(0,n.jsx)(i.o,{href:s}):o,j=!!(v||g),b=(0,d.hL)();return(0,n.jsxs)(n.Fragment,{children:[u&&(0,n.jsx)("div",{className:(0,l.A)("hidden sm:flex flex-col sticky z-10 pb-8",b?"top-0":"top-8 sm:top-10 ","w-full items-start"),children:(0,n.jsx)(d.wH,{})}),j&&(0,n.jsxs)("div",{className:(0,l.A)("flex justify-between items-center gap-2 pb-1","sticky top-8 sm:top-10 z-10","w-full sm:pb-6"),children:[null!=v?v:g?(0,n.jsx)(i.O,{}):null,g,!h&&(x?(0,n.jsx)(p,{}):(0,n.jsx)(i.O,{}))]}),t&&(0,n.jsx)(c,{className:(0,l.A)(r?"!pb-0 flex-1":"!pb-3","grow-0 !pt-4",_),children:t}),r&&(0,n.jsx)(m,{className:(0,l.A)("pt-0 md:!pt-3",j&&"px-5"),children:r})]})}},64668:(e,t,r)=>{r.d(t,{GTag:()=>h,GoogleTagManagerNoScript:()=>x,T:()=>_,Q:()=>v});var n=r(45287),a=r(87535),l=r(34465),s=r(83799),o=r(19656),i=r(76653);let d="G-VFMQRQESK6",u="GTM-NCC56W2J",c={__html:"\n  window.dataLayer = window.dataLayer || [];\n  function gtag(){ dataLayer.push(arguments); }\n  gtag('js', new Date());\n\n  gtag('consent', 'default', {\n    'ad_user_data': 'denied',\n    'ad_personalization': 'denied',\n    'ad_storage': 'denied',\n    'analytics_storage': 'denied',\n    'wait_for_update': 500,\n  });\n  gtag('config', '".concat(d,"', {\n    page_path: window.location.pathname,\n  });")},m={__html:"(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;
1j.src=\n  'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n  })(window,document,'script','dataLayer','".concat(u,"');")},f=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};window.gtag&&window.gtag("event",e,t)},g=()=>({platform:(()=>{let e=window.innerWidth;return e<parseInt(i.o.md)?"mobile":e<parseInt(i.o.lg)?"tablet":"desktop"})()}),p=()=>{try{if(!0!==(0,s.p2)())return{};let e=o.tT.get();if(!e)return{};let t=(0,o.$5)(e.fuse_entry_source,e.fuse_subfolder_slug);if(!t)return{};let r=(0,o.ET)(e);if(null===r)return{};return{...t,fuse_attribution_source:e.fuse_attribution_source,fuse_subfolder_landed_at:e.fuse_subfolder_landed_at,capturedAt:r}}catch(e){return{}}},_={signUp:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"email";f("sign_up",{method:e})},login:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"email";f("login",{method:e})},buttonClick:(e,t)=>{f("button_click",{...g(),button_name:e,location:t})},dialogOpen:e=>{f("dialog_open",{dialog_name:e})},dialogClose:e=>{f("dialog_close",{dialog_name:e})},onboardingStepComplete:e=>{f("onboarding_step_complete",{step_name:e})},onboardingComplete:()=>{f("onboarding_complete")},onboardingSwitchConfirmation:()=>{f("onboarding_switch_confirmation",{...g(),...p()})},waitlistJoin:e=>{f("waitlist_join",{...g(),...p(),waitlist_type:e})},contactFormSubmit:function(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],r=arguments.length>2?arguments[2]:void 0;f("contact_form_submit",{...g(),...p(),form_type:e,success:t,...r&&{product:r}})},formSubmit:(e,t)=>{f("form_submit",{form_name:e,form_type:t})},beginCheckout:(e,t)=>{f("begin_checkout",{value:e,currency:t})},viewItem:(e,t,r,n)=>{f("view_item",{item_id:e,item_name:t,item_category:r,value:n})},linkClick:(e,t,r)=>{f("link_click",{...g(),link_name:e,link_url:t,location:r})},productInterest:e=>{f("product_interest",{...g(),product_name:e})},waitlistInterest:e=>{f("waitlist_interest",{...g(),waitlist_type:e})},search:e=>{f("search",{search_term:e})}},h=()=>{let{cookieConsent:e}=(0,s.uC)();return a.useEffect(()=>{window.gtag("consent","update",{analytics_storage:e?"granted":"denied"})},[e]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(l.default,{id:"google-tag-manager",strategy:"afterInteractive",dangerouslySetInnerHTML:m}),(0,n.jsx)(l.default,{strategy:"afterInteractive",src:"https://www.googletagmanager.com/gtag/js?id=".concat(d)}),(0,n.jsx)(l.default,{id:"google-analytics",strategy:"afterInteractive",dangerouslySetInnerHTML:c})]})},x=()=>(0,n.jsx)("noscript",{children:(0,n.jsx)("iframe",{src:"https://www.googletagmanager.com/ns.html?id=".concat(u),title:"Google Tag Manager",height:"0",width:"0",className:"hidden invisible"})}),v=function(e,t){for(var r,n=arguments.length,a=Array(n>2?n-2:0),l=2;l<n;l++)a[l-2]=arguments[l];let s=null!=(r=a[0])?r:{};f("order_".concat(e),{order_id:t,...s})}},70725:(e,t,r)=>{r.d(t,{I:()=>g,t:()=>f});var n=r(45287),a=r(18825),l=r(87535),s=r(40984),o=r(67977),i=r(32618),d=r(8392),u=r(41069),c=r(27325),m=r(49541);let f=(0,s.eU)(0),g=e=>{var t;let{className:r,wrapperClassName:s,children:g,render:p=!0,padding:_,gap:h=!0,wrap:x=!0,scrollToBottom:v}=e,j=(0,m.hL)(),{i18n:b}=(0,o.uB)(),{atBottom:y,spacerRef:w,scrollToBottom:N}=((e,t)=>{let[r,n]=l.useState(!e),a=l.useRef(null),s=l.useRef(null);return l.useEffect(()=>{if(!e)return;let r=a.current;if(!r)return;let l=(0,u.C)(r);if(!l)return;s.current=l;let o=()=>{let{scrollTop:e,scrollHeight:r,clientHeight:a}=l;n(r-e-a<t)},i=new ResizeObserver(o);return i.observe(l),i.observe(r),requestAnimationFrame(o),l.addEventListener("scroll",o,{passive:!0}),()=>{l.removeEventListener("scroll",o),i.disconnect()}},[e,t]),{atBottom:r,spacerRef:a,scrollToBottom:l.useCallback(()=>{var e;null==(e=s.current)||e.scrollTo({top:s.current.scrollHeight,behavior:"smooth"})},[])}})(!!v,"object"==typeof v&&null!=(t=v.threshold)?t:50);return l.useEffect(()=>{if(p)return f.set(f.get()+1),()=>f.set(f.get()-1)},[p]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{ref:w,className:(0,a.A)("flex-1",("boolean"==typeof _?_:!j)&&"min-h-12")}),(0,n.jsx)(i.W,{render:p,className:(0,a.A)(s,"pointer-events-none"),children:(0,n.jsx)("div",{className:(0,a.A)(r,"flex justify-end w-full py-2 [&>*]:pointer-events-auto",h&&"gap-2",x&&"flex-wrap-reverse text-nowrap"),children:y?g
1:(0,n.jsx)(c.$n,{appearance:"primary",circle:!0,large:!0,"aria-label":b.t("common.scroll-to-bottom"),onClick:N,children:(0,n.jsx)(d.Z,{className:"size-5"})})})})]})}},88876:(e,t,r)=>{r.d(t,{NP:()=>u,vy:()=>o,wu:()=>d});var n=r(65142),a=r(24089),l=r(82506);let s=e=>{let t=e.match(/\/app\/premises\/([^/]+)/);if(t)return t[1]},o=e=>{let t=a.o.get();return t||(e?s(e):void 0)},i=(e,t)=>{if(!t)return null;let r=e.find(e=>e.premises.id===t);return r?(0,n.gR)(r.premises.id):null},d=(e,t)=>{var r;let a=i(e,t);if(a)return a;let s=null==(r=(0,l.Y)(e))?void 0:r.premises.id;return s?(0,n.gR)(s):null},u=(e,t,r)=>{let n=i(e,t?s(t):void 0);return n||d(e,r)}},93512:(e,t,r)=>{r.d(t,{E:()=>s});var n=r(45287),a=r(18825);r(87535);let l="bg-interactive-background animate-pulse",s=e=>{let{type:t}=e;switch(t){case"heading":return(0,n.jsxs)("div",{className:"py-2",children:[(0,n.jsx)("div",{className:"flex flex-col gap-2",children:(0,n.jsxs)("div",{className:"py-2 flex gap-8",children:[(0,n.jsx)("div",{className:(0,a.A)(l,"size-8 rounded-full")}),(0,n.jsx)("div",{className:(0,a.A)(l,"h-8 flex-1 rounded-normal")}),(0,n.jsx)("div",{className:"size-8"})]})}),(0,n.jsx)("div",{className:(0,a.A)(l,"h-6 flex-1 rounded-normal")})]});case"footer":return(0,n.jsxs)("div",{className:"py-2 flex gap-6",children:[(0,n.jsx)("div",{className:(0,a.A)(l,"h-14 flex-1 rounded-full")}),(0,n.jsx)("div",{className:(0,a.A)(l,"h-14 flex-1 rounded-full")})]});case"field":return(0,n.jsx)("div",{className:"py-2 flex gap-6",children:(0,n.jsx)("div",{className:(0,a.A)(l,"h-14 flex-1 rounded-full")})});case"grid":return(0,n.jsxs)("div",{className:"py-2 flex flex-col gap-6",children:[(0,n.jsxs)("div",{className:"flex gap-6 w-full",children:[(0,n.jsx)("div",{className:(0,a.A)(l,"rounded-normal aspect-square flex-1")}),(0,n.jsx)("div",{className:(0,a.A)(l,"rounded-normal aspect-square flex-1")})]}),(0,n.jsxs)("div",{className:"flex gap-6 w-full",children:[(0,n.jsx)("div",{className:(0,a.A)(l,"rounded-normal aspect-square flex-1")}),(0,n.jsx)("div",{className:(0,a.A)(l,"rounded-normal aspect-square flex-1")})]})]});default:return(0,n.jsx)("div",{className:"py-2",children:(0,n.jsx)("div",{className:(0,a.A)(l,"w-full rounded-normal","square"===t&&"aspect-square","rectangle"===t&&"aspect-video")})})}}}}]);
2//# sourceMappingURL=3371-3efda92c381a8441.js.map

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.