1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8858],{59151:function(e,t,n){"use strict";n.r(t),n.d(t,{__N_SSP:function(){return Oe},default:function(){return De}});var a=n(67294),s=n(37871),r=n(41749),o=n(45258),i=n(57821),l=n(41423),c=n(55517),d=n(62254),u=n(93967),m=n.n(u),g=n(26386),v=n(81206),j=n.n(v),p=n(21670),x=n(85893);var h=(0,s.Zh)()((e=>{let{data:t,page:n,changePage:s,t:r}=e;if(!t)return null;const o=(0,g.p7)(n,t.pageCount);return(0,x.jsxs)("div",{className:j().root,children:[t.pageCount>1&&(0,x.jsx)(p.Z,{tag:"button",tKey:"previous",disabled:1===n,onClick:()=>s(n-1),className:m()(j().link,j().commonNav)}),o.map(((e,t)=>(0,x.jsxs)(a.Fragment,{children:[e.splat&&(0,x.jsx)("span",{className:m()(j().commonNav,j().splat),children:"\u2026"}),!e.splat&&(0,x.jsx)("button",{onClick:()=>s(e),disabled:e===n,className:m()(j().commonNav,j().page,{[j().currentPage]:e===n}),children:e})]},t))),t.pageCount>1&&(0,x.jsx)(p.Z,{tag:"button",tKey:"next",disabled:n>=t.pageCount,onClick:()=>s(n+1),className:m()(j().commonNav,j().link)})]})})),Z=n(71695),y=n(54559),_=n(27703),f=n(85081),b=n(14416),C=n(59700),w=n(82302),M=n(99613),P=n(88222),N=n(83750),O=n(57394),D=n(80804);var K=e=>{var t,n;let{data:a}=e;const{t:r}=(0,s.$G)();return a?(0,x.jsxs)(w.Z,{children:[(0,x.jsx)(N.Z,{children:(0,x.jsxs)(O.Z,{children:[(0,x.jsx)(p.Z,{tag:P.Z,tKey:"date-time"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"game"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"freespins"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"status"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"freeSpinWin",align:"right"})]})}),(0,x.jsx)(M.Z,{children:null===a||void 0===a||null===(t=a.bonuses)||void 0===t||null===(n=t.transactions)||void 0===n?void 0:n.map(((e,t)=>{var n,a;return(0,x.jsxs)(O.Z,{children:[(0,x.jsxs)(P.Z,{children:[(0,D._3)(e.awardDate),(0,x.jsx)("br",{}),(0,D.hK)(e.awardDate)]}),(0,x.jsx)(P.Z,{children:null===e||void 0===e||null===(n=e.games)||void 0===n||null===(a=n[0])||void 0===a?void 0:a.translation}),(0,x.jsx)(P.Z,{children:`${e.freeSpins}/${e.total}`}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:e.status}),(0,x.jsx)(P.Z,{align:"right",children:`\u20ac ${Number(e.winnings).toFixed(2)}`})]},t)}))})]}):(0,x.jsx)(p.Z,{tag:"p",tKey:"no-events"})};var B=e=>{var t,n;let{data:a}=e;const{t:r}=(0,s.$G)();return a?(0,x.jsxs)(w.Z,{children:[(0,x.jsx)(N.Z,{children:(0,x.jsxs)(O.Z,{children:[(0,x.jsx)(p.Z,{tag:P.Z,tKey:"date-time"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"name"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"golden-chips"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"status"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"winnings",align:"right"})]})}),(0,x.jsx)(M.Z,{children:null===a||void 0===a||null===(t=a.bonuses)||void 0===t||null===(n=t.transactions)||void 0===n?void 0:n.map(((e,t)=>(0,x.jsxs)(O.Z,{children:[(0,x.jsxs)(P.Z,{children:[(0,D._3)(null===e||void 0===e?void 0:e.awardDate),(0,x.jsx)("br",{}),(0,D.hK)(null===e||void 0===e?void 0:e.awardDate)]}),(0,x.jsx)(P.Z,{style:{maxWidth:80,wordWrap:"break-word"},children:null===e||void 0===e?void 0:e.name}),(0,x.jsx)(P.Z,{children:`${null===e||void 0===e?void 0:e.playableBonus}/${null===e||void 0===e?void 0:e.awardedBonus}`}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:null===e||void 0===e?void 0:e.status}),(0,x.jsx)(P.Z,{align:"right",children:`\u20ac ${null===e||void 0===e?void 0:e.totalWinnings}`})]},t)))})]}):(0,x.jsx)(p.Z,{tag:"p",tKey:"no-events"})};var S=e=>{var t;let{data:n}=e;const{t:a}=(0,s.$G)();return n?(0,x.jsxs)(w.Z,{children:[(0,x.jsx)(N.Z,{children:(0,x.jsxs)(O.Z,{children:[(0,x.jsx)(p.Z,{tag:P.Z,tKey:"date-time"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"direction"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"type"}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:"amount",align:"right"})]})}),(0,x.jsx)(M.Z,{children:null===n||void 0===n||null===(t=n.transactions)||void 0===t?void 0:t.map(((e,t)=>(0,x.jsxs)(O.Z,{children:[(0,x.jsxs)(P.Z,{children:[(0,D._3)(e.createdTime),(0,x.jsx)("br",{}),(0,D.hK)(e.createdTime)]}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:`game-${e.direction}`}),(0,x.jsx)(p.Z,{tag:P.Z,tKey:e.type}),(0,x.jsxs)(P.Z,{align:"right",children:[Number(e.amount).toFixed(2)," \u20ac"]})]},t)))})]}):(0,x.jsx)(p.Z,{tag:"p",tKey:"no-events"})},k=n(282),L=n(38396),$=n(20170),E=n(37702),T=n(44938),G=n(61361);const A=["bonus-and-cash-amount","freespins","golden-chips"];var F=e=>{let{classes:t,modeMenuElement:n,setModeMenuElement:a,historyType:r,setHistoryType:o}=e;const{t:i}=(0,s.$G)(),l=Boolean(n),c=e=>{a(null),e&&o(e)};return(0,x.jsxs)("div",{className:t.modeMenu,children:[(0,x.jsxs)(k.Z,{"aria-owns":open?"fade-menu":void 0,"aria-haspopup":"true",onClick:e=>a(e.currentTarget),className:m()(t.modeMenuButton,{[t.modeMenuButtonActive]:l}),variant:"text",children:[(0,x.jsx)(p.Z,{tag:"span",tKey:r}),l?(0,x.jsx)(T.Z,{}):(0,x.jsx)(G.Z,{})]}),(0,x.jsx)(L.Z,{id:"modeMenu",classes:{paper:t.modeMenuMenu,list:t.modeMenuMenuList},anchorEl:n,open:l,onClose:()=>c(null),TransitionComponent:$.Z,getContentAnchorEl:null,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},disableAutoFocusItem:!0,children:A.map(((e,n)=>(0,x.jsx)(E.Z,{className:t.modeMenuLink,classes:{selected:t.modeMenuLinkSelected},onClick:()=>c(e),selected:e===r,children:(0,x.jsx)(p.Z,{tag:"span",tKey:`${e}`})},`mode-menu-link-${n}`)))})]})},I=n(73275),R=n(59499),H=n(77214),z=n(50293);function Y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function W(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?Y(Object(n),!0).forEach((function(t){(0,R.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var X=(e,t,n,s)=>{const{0:r,1:o}=(0,a.useState)(null),{0:i,1:l}=(0,a.useState)(!0),{0:c,1:d}=(0,a.useState)(null);return(0,a.useEffect)((()=>{l(!0),(async()=>{try{const a=await(async(e,t,n,a)=>{try{let s;s="bonus-and-cash-amount"===e?`/transactions/promo?${new URLSearchParams(W(W({page:t.toString(),size:"10"},n&&{startDate:n}),a&&{endDate:a})).toString()}`:"golden-chips"===e?`/player/bonuses/liveCasino?${new URLSearchParams(W(W({status:"all",page:t.toString(),size:"10"},n&&{startDate:n}),a&&{endDate:a})).toString()}`:`/player/bonuses/freeSpins?${new URLSearchParams(W(W({status:"all",page:t.toString(),size:"10"},n&&{startDate:n}),a&&{endDate:a})).toString()}`;const{data:r}=await H.Z.get(s);return r}catch(s){z.Z.error("[FETCH][BONUS][HISTORY][ERROR]",{errorMessage:s}),d(s)}})(e,t,n,s);o(a)}catch(a){d(a)}finally{l(!1)}})()}),[e,t,n,s]),{data:r,loading:i,error:c}},U=n(33681),Q=n(18463),V=n(951),q=n(79912),J=n(22318),ee=n(13748),te=n(99511),ne=n.n(te),ae=n(17898),se=n(41664),re=n.n(se),oe=n(27484),ie=n.n(oe),le=n(16421);var ce=(e,t)=>{const n=t-e;return{left:e,total:t,current:n,percentage:t&&n?Math.round(n/t*100):0}},de=n(58939),ue=n.n(de),me=n(78204),ge=n(21642),ve=n.n(ge);const je=e=>{let{variant:t,value:n}=e;return(0,x.jsx)(U.Z,{classes:{root:ue().root,colorPrimary:ue().colorPrimary,bar:ue().bar},variant:t,value:n})},pe=e=>{let{liveCasinoBonus:t,freespins:n,wagering:a}=e;const{t:r}=(0,s.$G)(),o=(0,ae.G3)(),i=(0,me.rO)(),l=(0,me.Qy)(),c=ce(i,l);if(t&&(null===t||void 0===t?void 0:t.roundsLeft)>0||n&&(null===n||void 0===n?void 0:n.roundsLeft)>0){const e=Math.round((null===t||void 0===t?void 0:t.roundsLeft)||(null===n||void 0===n?void 0:n.roundsLeft)||0),a=Math.round((null===t||void 0===t?void 0:t.rounds)||(null===n||void 0===n?void 0:n.rounds)||0),s=ce(e,a),o=`${null===s||void 0===s?void 0:s.current}/${null===s||void 0===s?void 0:s.total} ${r(n?"freespins":"golden-chips")} ${r("used")}`;return(0,x.jsxs)("div",{className:ne().activeBonusBar,children:[(0,x.jsx)("p",{style:{marginBottom:4,textTransform:"lowercase"},children:o}),(0,x.jsx)(je,{variant:"determinate",value:s.percentage})]})}return c.current&&c.total?(0,x.jsxs)("div",{className:ne().activeBonusBar,children:[(0,x.jsx)(p.Z,{tag:"p",tKey:"bonus-wager-bar-info",values:{wageringCurrent:(0,ee.DM)(null===c||void 0===c?void 0:c.current,o),wageringTotal:(0,ee.DM)(null===c||void 0===c?void 0:c.total,o)},style:{marginBottom:4}}),(0,x.jsx)(je,{variant:"determinate",value:c.percentage})]}):null};var xe=e=>{var t;let{content:n,link:a,meta:r,claimCTA:o,game:i,liveCasinoBonus:l,freespins:c,userStatus:d,wagering:u}=e;const{t:m}=(0,s.$G)(),g=(0,ae.G3)(),v={title:"Bonus",cardImage:{original:{src:`${ve().imagesBasePath||""}/cms/FallbackCardBanner.jpg`}}},{title:j,cardImage:h}=n||v,{endDate:Z}=r||{campaignId:"",endDate:null},{path:y}=a||{path:"/promotions"},_=(0,me.aX)(),f=ie()(Z).format("YYYY-MM-DD"),b=ie()(Z).format("HH:mm"),C=`${f} ${m("at")} ${b}`;return(0,x.jsx)("div",{style:{position:"relative",overflow:"hidden"},children:(0,x.jsxs)(Q.Z,{className:ne().promotionCardRoot,elevation:2,children:[(0,x.jsx)(p.Z,{tag:"div",tKey:"active",className:ne().activeRibbon}),(0,x.jsx)("div",{className:ne().cardMediaContainer,children:(0,x.jsx)(V.Z,{component:"img",className:ne().promotionCardMedia,image:null===h||void 0===h||null===(t=h.original)||void 0===t?void 0:t.src,title:j,alt:j})}),(0,x.jsxs)(q.Z,{className:ne().activeCardContentContainer,children:[Z&&(0,x.jsx)(p.Z,{tag:"p",tKey:"bonus-expiry-date",values:{date:C}}),(0,x.jsx)(J.Z,{variant:"h4",component:"h2",className:ne().activeCardPromotionTitle,children:j}),(0,x.jsxs)("div",{className:ne().activeBonusDetailsContainer,children:[u&&(0,x.jsxs)("div",{style:{display:"flex",flexDirection:"column"},children:[(0,x.jsx)(p.Z,{tag:J.Z,tKey:"bonus-amount-card",component:"h5",className:ne().activeBonusDetailsTitle}),(0,x.jsx)(J.Z,{component:"h5",className:ne().activeBonusDetailsAmount,children:(0,ee.DM)(_,g)})]}
1),(0,x.jsx)(pe,{liveCasinoBonus:l,freespins:c,wagering:u})]}),(0,x.jsxs)("div",{className:ne().promotionCardActionArea,children:[(0,x.jsx)("div",{className:ne().promotionCardActionAreaCta,children:(0,x.jsx)(le.Z,{meta:r,claimCTA:o,game:i,userStatus:d,content:n,link:a})}),(0,x.jsx)(re(),{href:y,passHref:!0,children:(0,x.jsx)(p.Z,{tag:"a",tKey:"more-info-terms"})})]})]})]})})},he=n(83661),Ze=n(35127),ye=n(74254),_e=n(52318),fe=n(2546);function be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function Ce(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?be(Object(n),!0).forEach((function(t){(0,R.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):be(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var we=e=>{let{active:t=[],available:n=[]}=e;const{campaignsEnabled:a}=(0,Ze.C)(),s=(0,b.v9)(C.B2),r=(0,ye.MN)(s,a),o=t.filter((e=>!(0,ye.LI)(e))),i=n.filter((e=>!(0,ye.LI)(e))),l=0===[...r,...o,...i].length;return(0,x.jsx)("div",{className:ne().promotionsCardContainer,style:{display:l?"flex":"grid"},children:l?(0,x.jsx)(_e.Z,{lobbyType:"available"}):(0,x.jsxs)(x.Fragment,{children:[r.map(((e,t)=>(0,x.jsx)(he.Z,{tournament:e},`tournament-${(0,ye._1)(e,t)}`))),o.map(((e,t)=>(0,x.jsx)(xe,Ce({},e),`active-${(0,ye._1)(e,t)}`))),i.map(((e,t)=>(0,x.jsx)(fe.Z,Ce(Ce({},e),{},{showRibbon:!0}),`available-${(0,ye._1)(e,t)}`)))]})})},Me=n(79085),Pe=n.n(Me);const Ne=()=>{const{t:e}=(0,s.$G)(),{0:t,1:n}=(0,a.useState)(1),{0:r,1:o}=(0,a.useState)("bonus-and-cash-amount"),{0:i,1:l}=(0,a.useState)(),d=(0,a.useMemo)((()=>{const e=new Date;return{startDate:(0,_.p6)((0,y.Z)(e,1)),endDate:(0,_.p6)(e)}}),[]),{0:u,1:m}=(0,a.useState)(d.startDate),{0:g,1:v}=(0,a.useState)(d.endDate),j="bonus-and-cash-amount"===r,{data:p,loading:Z,error:b}=X(r,t,j?u:void 0,j?g:void 0);return b?(0,x.jsx)("p",{children:b}):Z?(0,x.jsx)(I.Z,{isContrast:!0}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(F,{classes:Pe(),modeMenuElement:i,setModeMenuElement:l,historyType:r,setHistoryType:e=>{o(e),n(1)}}),!j&&(0,x.jsx)(c.Z,{}),j&&(0,x.jsxs)("div",{className:Pe().datePickerContainer,children:[(0,x.jsx)(f.Z,{label:e("start-date"),value:u,onChange:e=>{m((0,_.p6)(e)),n(1)}}),(0,x.jsx)(f.Z,{label:e("end-date"),value:g,onChange:e=>{v((0,_.p6)(e)),n(1)}})]}),"bonus-and-cash-amount"===r?(0,x.jsx)(S,{data:p}):"freespins"===r?(0,x.jsx)(K,{data:p}):(0,x.jsx)(B,{data:p}),(0,x.jsx)(h,{page:t,data:p,changePage:n})]})};var Oe=!0,De=(0,Z.ZP)((e=>{let{type:t="current",language:n}=e;const{t:c}=(0,s.$G)(),u=(0,b.v9)(C.MT),m=(0,b.v9)(C.Ps),g=(0,b.v9)(C.VG),v=(0,b.v9)(C.eo),{0:j,1:h}=(0,a.useState)(t),Z=(0,b.I0)(),y=[{title:c("current"),url:"current"},{title:c("history"),url:"history"}],_=y.findIndex((e=>e.url===j))||0;return(0,a.useEffect)((()=>{"current"===j&&(Z((0,C.ay)(n)),Z((0,C.Uk)(n)))}),[j,Z,n]),(0,a.useEffect)((()=>{Z((0,C.Ep)(n))}),[Z]),(0,x.jsx)(x.Fragment,{children:(0,x.jsx)(d.Z,{classes:{container:Pe().container},children:(0,x.jsxs)(r.Z,{container:!0,children:[(0,x.jsxs)(r.Z,{item:!0,xs:12,children:[(0,x.jsx)(p.Z,{tag:"h2",tKey:"my-bonuses",className:Pe().name}),(0,x.jsx)(o.Z,{className:Pe().tabs,position:"static",children:(0,x.jsx)(i.Z,{centered:!0,indicatorColor:"primary",value:_,onChange:(e,t)=>
1{h(y[t].url)},children:y.map(((e,t)=>{let{title:n}=e;return(0,x.jsx)(l.Z,{className:Pe().tab,label:n},t)}))})})]}),(0,x.jsxs)(r.Z,{className:Pe().content,item:!0,xs:12,children:["current"===j&&(g||v?(0,x.jsx)(I.Z,{isContrast:!0}):(0,x.jsx)(we,{active:m,available:u})),"history"===j&&(0,x.jsx)(Ne,{})]})]})})})}),!0)},53531:function(e,t,n){"use strict";n(67294);var a=n(85893);t.Z=e=>{let{fill:t="var(--neutral-800)",size:n=24}=e;return(0,a.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:n,height:n,children:(0,a.jsx)("path",{fill:t,transform:"translate(8 5)",d:"M6.5112619 5.0925002L1.7212619 0.29249999C1.3312619 -0.097499996 0.69126189 -0.097499996 0.30126187 0.29249999C-0.088738136 0.6825 -0.088738136 1.3225 0.30126187 1.7125L5.1012621 6.5025001L0.30126187 11.2925C0.30126187 11.2925 0.30126187 11.2925 0.29126188 11.3025C-0.098738134 11.6925 -0.098738134 12.3325 0.30126187 12.7125C0.49126187 12.9025 0.74126184 13.0025 1.0112618 13.0025C1.2812619 13.0025 1.5312619 12.9025 1.7212619 12.7125L6.5112619 7.9124999C7.2912617 7.1325002 7.2912617 5.8724999 6.5112619 5.0925002Z"})})}},44938:function(e,t,n){"use strict";n(67294);var a=n(85893);t.Z=e=>{let{fill:t="var(--neutral-800)",size:n=24}=e;return(0,a.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:n,height:n,children:(0,a.jsx)("path",{fill:t,transform:"translate(5 8)",d:"M12.7125 5.375L7.9124999 0.58499998C7.1325002 -0.19499999 5.8724999 -0.19499999 5.0925002 0.58499998L0.29249999 5.375C-0.097499996 5.7649999 -0.097499996 6.4050002 0.29249999 6.7950001C0.6825 7.1849999 1.3225 7.1849999 1.7125 6.7950001L6.5025001 1.995L11.2925 6.7950001C11.4825 6.9850001 11.7325 7.085 12.0025 7.085C12.2725 7.085 12.5225 6.9850001 12.7125 6.7950001C12.7125 6.7950001 12.7125 6.7950001 12.7225 6.7849998C13.1025 6.395 13.1025 5.7649999 12.7125 5.375Z"})})}},91074:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/bonuses/[type]",function(){return n(59151)}])},81206:function(e){e.exports={root:"Pager_root__xhngf",commonNav:"Pager_commonNav___jYay",splat:"Pager_splat__8hMtK",link:"Pager_link__w_E65",page:"Pager_page__wDVjx",currentPage:"Pager_currentPage__eXAGc"}},58939:function(e){e.exports={root:"BorderLinearProgress_root__jWf9S",colorPrimary:"BorderLinearProgress_colorPrimary__CgFa8",bar:"BorderLinearProgress_bar__TlKf_"}},79085:function(e){e.exports={container:"styles_container__5kuGA",content:"styles_content__phTs4",name:"styles_name__2HLw7",card:"styles_card__Ig_qZ",icon:"styles_icon__F4XJ_",info:"styles_info__EPCSJ",noEntries:"styles_noEntries__kpaDj",datePickerContainer:"styles_datePickerContainer__Nl42q",modeMenu:"styles_modeMenu__ww6fL",modeMenuButton:"styles_modeMenuButton__cG_cB",modeMenuButtonActive:"styles_modeMenuButtonActive__Yba0r",modeMenuMenu:"styles_modeMenuMenu__kVX1d",modeMenuMenuList:"styles_modeMenuMenuList__Z4590",modeMenuLink:"styles_modeMenuLink__FE_5_",modeMenuLinkSelected:"styles_modeMenuLinkSelected__v54jF",tabs:"styles_tabs__K8n5Q",tab:"styles_tab__1ONN_",toggleButtonGroup:"styles_toggleButtonGroup__9WmQ1",toggleButton:"styles_toggleButton__m_DDl"}}},function(e){e.O(0,[9066,819,84,509,3793,4294,5667,6177,9774,2888,179],(function(){return t=91074,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
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.