1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[189],{30687:e=>{e.exports={desktopBreakpointWidth:"769px",desktopBreakpointHeight:"660px",desktopBreakpointHeightCompact:"800px",desktopMaxViewport:"1280px","paypal-container":"PayPalPayment_paypal-container__r_Up8","paypal-box":"PayPalPayment_paypal-box__bnYtB",logo:"PayPalPayment_logo__Ls8Lm",title:"PayPalPayment_title__oUWfG",text:"PayPalPayment_text__ZChRg",cancel:"PayPalPayment_cancel__O3n_X"}},34609:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/payments/paypal",function(){return n(35149)}])},35149:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__N_SSP:()=>eo,default:()=>ec});var r,a,o,c,l,i,s=n(37876),u=n(46986),d=n(51572),p=n(62506),f=n(29171),m=n(13664),y=n(34736),h=n(27058),v=n(70111),E=n(14232);function A(){return(A=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(null,arguments)}let P=function(e){return E.createElement("svg",A({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 48 48"},e),r||(r=E.createElement("path",{fill:"#001C64",d:"M37.972 13.82c.107-5.565-4.485-9.837-10.799-9.837H14.115a1.278 1.278 0 0 0-1.262 1.079L7.62 37.758a1.038 1.038 0 0 0 1.025 1.2h7.737l-1.21 7.572a1.038 1.038 0 0 0 1.026 1.2H22.5c.305 0 .576-.11.807-.307.231-.198.269-.471.316-.772l1.85-10.885c.047-.3.2-.69.432-.888.231-.198.433-.306.737-.307H30.5c6.183 0 11.43-4.394 12.389-10.507.678-4.34-1.182-8.287-4.916-10.244Z"})),a||(a=E.createElement("path",{fill:"#0070E0",d:"m18.056 26.9-1.927 12.22-1.21 7.664a1.038 1.038 0 0 0 1.026 1.2h6.67a1.278 1.278 0 0 0 1.261-1.079l1.758-11.14a1.277 1.277 0 0 1 1.261-1.078h3.927c6.183 0 11.429-4.51 12.388-10.623.68-4.339-1.504-8.286-5.238-10.244-.01.462-.05.923-.121 1.38-.959 6.112-6.206 10.623-12.389 10.623h-6.145a1.277 1.277 0 0 0-1.261 1.077Z"})),o||(o=E.createElement("path",{fill:"#003087",d:"M16.128 39.12h-7.76a1.037 1.037 0 0 1-1.025-1.2l5.232-33.182a1.277 1.277 0 0 1 1.262-1.078h13.337c6.313 0 10.905 4.595 10.798 10.16-1.571-.824-3.417-1.295-5.44-1.295H21.413a1.278 1.278 0 0 0-1.261 1.078L18.057 26.9l-1.93 12.22Z"})))};var N=n(13057),R=n(61154);!function(e){e.INITIAL="initial",e.PENDING="pending",e.REJECTED="rejected",e.RESOLVED="resolved"}(c||(c={})),function(e){e.LOADING_STATUS="setLoadingStatus",e.RESET_OPTIONS="resetOptions",e.SET_BRAINTREE_INSTANCE="braintreeInstance"}(l||(l={})),function(e){e.NUMBER="number",e.CVV="cvv",e.EXPIRATION_DATE="expirationDate",e.EXPIRATION_MONTH="expirationMonth",e.EXPIRATION_YEAR="expirationYear",e.POSTAL_CODE="postalCode"}(i||(i={}));var g="data-react-paypal-script-id",b={DATA_SDK_INTEGRATION_SOURCE:"data-sdk-integration-source",DATA_SDK_INTEGRATION_SOURCE_VALUE:"react-paypal-js",DATA_NAMESPACE:"data-namespace"},S="paypal",_=function(){return(_=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};function C(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&0>t.indexOf(r)&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,r=Object.getOwnPropertySymbols(e);a<r.length;a++)0>t.indexOf(r[a])&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]]);return n}function w(e,t,n){if(n||2==arguments.length)for(var r,a=0,o=t.length;a<o;a++)!r&&a in t||(r||(r=Array.prototype.slice.call(t,0,a)),r[a]=t[a]);return e.concat(r||Array.prototype.slice.call(t))}function T(e){return void 0===e&&(e=S),window[e]}function O(e){var t=e.reactComponentName,n=e.sdkComponentKey,r=e.sdkRequestedComponents,a=void 0===r?"":r,o=e.sdkDataNamespace,c=n.charAt(0).toUpperCase().concat(n.substring(1)),l="Unable to render <".concat(t," /> because window.").concat(void 0===o?S:o,".").concat(c," is undefined.");if(!a.includes(n)){var i=[a,n].filter(Boolean).join();l+="\nTo fix the issue, add '".concat(n,"' to the list of components passed to the parent PayPalScriptProvider:")+"\n`<PayPalScriptProvider options={{ components: '".concat(i,"'}}>`.")}return l}function k(e){return"react-paypal-js-".concat(function(e){for(var t="",n=0;n<e.length;
1n++){var r=e[n].charCodeAt(0)*n;e[n+1]&&(r+=e[n+1].charCodeAt(0)*(n-1)),t+=String.fromCharCode(97+Math.abs(r)%26)}return t}(JSON.stringify(e)))}function D(e,t){var n,r,a;switch(t.type){case l.LOADING_STATUS:return _(_({},e),{loadingStatus:t.value});case l.RESET_OPTIONS:return r=e.options[g],(null==(a=self.document.querySelector("script[".concat(g,'="').concat(r,'"]')))?void 0:a.parentNode)&&a.parentNode.removeChild(a),delete t.value[g],_(_({},e),{loadingStatus:c.PENDING,options:_(_({},t.value),((n={})[g]="".concat(k(t.value)),n[b.DATA_SDK_INTEGRATION_SOURCE]=b.DATA_SDK_INTEGRATION_SOURCE_VALUE,n))});case l.SET_BRAINTREE_INSTANCE:return _(_({},e),{braintreePayPalCheckoutInstance:t.value});default:return e}}var I=(0,E.createContext)(null);function x(){var e=function(e){if("function"==typeof(null==e?void 0:e.dispatch)&&0!==e.dispatch.length)return e;throw Error("usePayPalScriptReducer must be used within a PayPalScriptProvider")}((0,E.useContext)(I));return[_(_({},e),{isInitial:e.loadingStatus===c.INITIAL,isPending:e.loadingStatus===c.PENDING,isResolved:e.loadingStatus===c.RESOLVED,isRejected:e.loadingStatus===c.REJECTED}),e.dispatch]}(0,E.createContext)({});var j=function(e){var t=e.className,n=e.disabled,r=void 0!==n&&n,a=e.children,o=e.forceReRender,c=C(e,["className","disabled","children","forceReRender"]),l="".concat(void 0===t?"":t," ").concat(r?"paypal-buttons-disabled":"").trim(),i=(0,E.useRef)(null),s=(0,E.useRef)(null),u=x()[0],d=u.isResolved,p=u.options,f=(0,E.useState)(null),m=f[0],y=f[1],h=(0,E.useState)(!0),v=h[0],A=h[1],P=(0,E.useState)(null)[1];function N(){null!==s.current&&s.current.close().catch(function(){})}return(0,E.useEffect)(function(){if(!1===d)return N;var e=T(p[b.DATA_NAMESPACE]);if(void 0===e||void 0===e.Buttons)return P(function(){throw Error(O({reactComponentName:j.displayName,sdkComponentKey:"buttons",sdkRequestedComponents:p.components,sdkDataNamespace:p[b.DATA_NAMESPACE]}))}),N;try{s.current=e.Buttons(_(_({},c),{onInit:function(e,t){y(t),"function"==typeof c.onInit&&c.onInit(e,t)}}))}catch(e){return P(function(){throw Error("Failed to render <PayPalButtons /> component. Failed to initialize: ".concat(e))})}return!1===s.current.isEligible()?A(!1):i.current&&s.current.render(i.current).catch(function(e){null!==i.current&&0!==i.current.children.length&&P(function(){throw Error("Failed to render <PayPalButtons /> component. ".concat(e))})}),N},w(w([d],void 0===o?[]:o,!0),[c.fundingSource],!1)),(0,E.useEffect)(function(){null!==m&&(!0===r?m.disable().catch(function(){}):m.enable().catch(function(){}))},[r,m]),E.createElement(E.Fragment,null,v?E.createElement("div",{ref:i,style:r?{opacity:.38}:{},className:l}):a)};function U(e,t){void 0===t&&(t={});var n=document.createElement("script");return n.src=e,Object.keys(t).forEach(function(e){n.setAttribute(e,t[e]),"data-csp-nonce"===e&&n.setAttribute("nonce",t["data-csp-nonce"])}),n}function L(){if("undefined"==typeof Promise)throw Error("Promise is undefined. To resolve the issue, use a Promise polyfill.");return Promise}j.displayName="PayPalButtons";function M(e,t){if("object"!=typeof e||null===e)throw Error("Expected an options object.");if(void 0!==t&&"function"!=typeof t)throw Error("Expected PromisePonyfill to be a function.")}var G=function(e){var t=e.className,n=e.children,r=C(e,["className","children"]),a=x()[0],o=a.isResolved,c=a.options,l=(0,E.useRef)(null),i=(0,E.useState)(!0),s=i[0],u=i[1],d=(0,E.useState)(null)[1],p=function(e){var t=l.current;if(!t||!e.isEligible())return u(!1);t.firstChild&&t.removeChild(t.firstChild),e.render(t).catch(function(e){null!==t&&0!==t.children.length&&d(function(){throw Error("Failed to render <PayPalMarks /> component. ".concat(e))})})};return(0,E.useEffect)(function(){if(!1!==o){var e=T(c[b.DATA_NAMESPACE]);if(void 0===e||void 0===e.Marks)return d(function(){throw Error(O({reactComponentName:G.displayName,sdkComponentKey:"marks",sdkRequestedComponents:c.components,sdkDataNamespace:c[b.DATA_NAMESPACE]}))});p(e.Marks(_({},r)))}},[o,r.fundingSource]),E.createElement(E.Fragment,null,s?E.createElement("div",{ref:l,className:void 0===t?"":t}):n)};G.displayName="PayPalMarks";var B=function(e){var t=e.className,n=e.forceReRender,r=C(e,["className","forceReRender"]),a=x()[0],o=a.isResolved,c=a.options,l=(0,E.useRef)(null),i=(0,E.useRef)(null),s=(0,E.useState)(null)[1];return(0,E.useEffect)(function(){if(!1!==o){var e=T(c[b.DATA_NAMESPACE]);if(void 0===e||void 0===e.Messages)return s(function(){throw Error(O({reactComponentName:B.displayName,sdkComponentKey:"messages",sdkRequestedComponents:c.components,sdkDataNamespace:c[b.DATA_NAMESPACE]}))});i.current=e.Messages(_({},r)),i.current.render(l.current).catch(function(e){null!==l.current&&0!==l.current.children.length&&s(function(){throw Error("Failed to render <PayPalMessages /> component. ".concat(e))})})}},w([o],void 0===n?[]:n,!0)),E.createElement("div",{ref:l,className:void 0===t?"":t})};B.displayName="PayPalMessages";var q=function(e){var t,n=e.options,r=void 0===n?{"client-id":"test"}:n,a=e.children,o=e.deferLoading,i=void 0!==o&&o,s=(0,E.useReducer)(D,{options:_(_({},r),((t={})[g]="".concat(k(r)),t[b.DATA_SDK_INTEGRATION_SOURCE]=b.DATA_SDK_INTEGRATION_SOURCE_VALUE,t)),loadingStatus:i?c.INITIAL:c.PENDING}),u=s[0],d=s[1];return(0,E.useEffect)(function(){if(!1===i&&u.loadingStatus===c.INITIAL)return d({type:l.LOADING_STATUS,value:c.PENDING});if(u.loadingStatus===c.PENDING){var e=!0;return(function(e,t){if(void 0===t&&(t=L()),M(e,t),"undefined"==typeof document)return t.resolve(null);var n,r,a,o,c,l,i,s,u,d,p,f,m=(u="https://www.paypal.com/sdk/js",e.sdkBaseURL&&(u=e.sdkBaseURL,delete e.sdkBaseURL),r=(n=e)["merchant-id"],a=n["data-merchant-id"],o="",c="",Array.isArray(r)?r.length>1?(o="*",c=r.toString()):o=r.toString():"string"==typeof r&&r.length>0?o=r:"string"==typeof a&&a.length>0&&(o="*",c=a),n["merchant-id"]=o,n["data-merchant-id"]=c,p=(d=Object.keys(e).filter(function(t){return void 0!==e[t]&&null!==e[t]&&""!==e[t]}).reduce(function(t,n){var r=e[n].toString();return"data-"===n.substring(0,5)?t.dataAttributes[n]=r:t.queryParams[n]=r,t},{queryParams:{},dataAttributes:{}})).queryParams,f=d.dataAttributes,{url:"".concat(u,"?").concat((i="",Object.keys(l=p).forEac
1h(function(e){0!==i.length&&(i+="&"),i+=e+"="+l[e]}),i)),dataAttributes:f}),y=m.url,h=m.dataAttributes,v=h["data-namespace"]||"paypal",E=(s=v,window[s]);return function(e,t){var n=document.querySelector('script[src="'.concat(e,'"]'));if(null===n)return null;var r=U(e,t),a=n.cloneNode();if(delete a.dataset.uidAuto,Object.keys(a.dataset).length!==Object.keys(r.dataset).length)return null;var o=!0;return Object.keys(a.dataset).forEach(function(e){a.dataset[e]!==r.dataset[e]&&(o=!1)}),o?n:null}(y,h)&&E?t.resolve(E):(function(e,t){void 0===t&&(t=L()),M(e,t);var n=e.url,r=e.attributes;if("string"!=typeof n||0===n.length)throw Error("Invalid url.");if(void 0!==r&&"object"!=typeof r)throw Error("Expected attributes to be an object.");return new t(function(e,t){var a,o,c,l,i,s;if("undefined"==typeof document)return e();o=(a={url:n,attributes:r,onSuccess:function(){return e()},onError:function(){var e=Error('The script "'.concat(n,'" failed to load.'));return window.fetch?fetch(n).then(function(n){return 200===n.status&&t(e),n.text()}).then(function(e){var n;t(Error((n=e.split("/* Original Error:")[1])?n.replace(/\n/g,"").replace("*/","").trim():e))}).catch(function(e){t(e)}):t(e)}}).url,c=a.attributes,l=a.onSuccess,i=a.onError,(s=U(o,c)).onerror=i,s.onload=l,document.head.insertBefore(s,document.head.firstElementChild)})})({url:y,attributes:h},t).then(function(){var e,t=(e=v,window[e]);if(t)return t;throw Error("The window.".concat(v," global variable is not available."))})})(u.options).then(function(){e&&d({type:l.LOADING_STATUS,value:c.RESOLVED})}).catch(function(t){console.error("".concat("Failed to load the PayPal JS SDK script."," ").concat(t)),e&&d({type:l.LOADING_STATUS,value:c.REJECTED})}),function(){e=!1}}},[u.options,i,u.loadingStatus]),E.createElement(I.Provider,{value:_(_({},u),{dispatch:d})},a)},K=n(11557),F=n(43536),V=n(67113),H=n(81521),X=n(14605),J=n(15531);class Z extends H.G{async createOrder(e){try{let t=await V.A.paymentApi.payPalCreateOrder(...K.o9.tenantAndSite,e);if(t.status!==X.A.CREATED)throw new F.hD(t.status);return{orderID:t.data.id}}catch(e){var t,n,r,a;if(e instanceof F.hD)throw e;throw new F.hD(null!=(a=null==(t=e.response)?void 0:t.status)?a:500,(0,J.Ae)(null==(r=e.response)||null==(n=r.data)?void 0:n.code),void 0,e.message)}}async captureOrder(e){try{let t=await V.A.paymentApi.payPalCaptureOrder(...K.o9.tenantAndSite,e.locale,e.orderID,e.paymentRef);if(t.status!==X.A.OK)throw new F.hD(t.status);return{purchase_units:t.data.purchase_units.map(e=>({amount:{currency:e.amount.currency_code,value:parseFloat(e.amount.value)},payment:e.payments}))}}catch(e){var t,n,r,a,o;if(e instanceof F.hD)throw e;if((null==(t=e.response)?void 0:t.status)===X.A.FORBIDDEN)throw new F.U9;throw new F.hD(null!=(o=null==(n=e.response)?void 0:n.status)?o:500,(0,J.Ae)(null==(a=e.response)||null==(r=a.data)?void 0:r.code),void 0,e.message)}}}let W=new Z;var Y=n(79444);let z=[3e3,5e3,1e4],$=z.length-1,Q="### Max attemps reached ###",ee=e=>{let{paymentRef:t,saleAk:n,onOrderApproved:r,onOrderCompleted:a,onCancel:o,onError:c}=e,{behaviour:l}=(0,m.j)(),{locale:i}=(0,y.M1)(),u=(0,E.useRef)($),d=(0,E.useCallback)(async(e,r)=>(await W.createOrder({paymentRef:t,saleAk:n})).orderID,[t,n]),p=(0,E.useCallback)(async(e,n)=>{u.current===$&&(null==r||r());try{let n=await W.captureOrder({orderID:e.orderID,paymentRef:t,locale:i});u.current=$,null==a||a(e,n)}catch(t){0==u.current&&(null==c||c({error:Q})),await (0,Y.yy)(z[u.current]),u.current-=1,p(e,n)}},[i,c,r,a,t]),f=(0,E.useCallback)((e,t)=>{null==o||o(e)},[o]),h=(0,E.useCallback)(e=>{null==c||c(e)},[c]);return l.paymentMethodsList.includes(R.g5.PayPal)&&(0,s.jsx)(j,{style:{layout:"vertical",tagline:!1},createOrder:d,onApprove:p,onCancel:f,onError:h,forceReRender:[d,p,f,h]})};var et=n(30687),en=n.n(et);let er=e=>{let{components:t,payments:{paypal:n}}=(0,m.j)(),{setShowAppLoader:r}=(0,f.U)(),{locale:a,formatMessage:o}=(0,y.M1)(),{goToPaymentErrorPage:c,query:l,goToPage:i}=(0,h.k)(),[{isPending:A}]=x();(0,E.useEffect)(()=>r(A),[A,r]);let{isPaymentMethodEnabled:g,handleBrowserBack:b}=(0,v.l)({params:l,paymentMethod:R.g5.PayPal,configs:n,previousPage:e.previousPage}),S=(0,E.useRef)(a);S.current=a;
1let _=(0,E.useRef)(K.o9.isDevEnvironment?null:1),C=(0,E.useRef)(!0);(0,E.useEffect)(()=>{if(g)return()=>{r(!1),C.current=!1,_.current&&a===S.current&&b(a,l.paymentRef,2===_.current)}},[a,g,r,l.paymentRef,b]);let w=(0,E.useCallback)(()=>r(!0),[r]),T=(0,E.useCallback)(()=>{C.current&&(_.current=null,i(l.redirectToURL,{query:{paymentRef:l.paymentRef},replace:!0,asUrlWithoutParams:!0}))},[l.redirectToURL,l.paymentRef,i]),O=(0,E.useCallback)(()=>{C.current&&(_.current=null,c({paymentRef:l.paymentRef,fallbackUrl:l.fallbackURL,outcome:N.t.Cancelled}))},[c,l.fallbackURL,l.paymentRef]),k=(0,E.useCallback)(e=>{C.current&&c({paymentRef:l.paymentRef,fallbackUrl:l.fallbackURL,outcome:N.t.GenericError,customLabelKey:(null==e?void 0:e.error)===Q?"confirmationStep.attemptsError":void 0})},[c,l.fallbackURL,l.paymentRef]);return g?(0,s.jsx)("div",{className:en()["paypal-container"],children:(0,s.jsxs)(u.a,{className:en()["paypal-box"],children:[(0,s.jsx)("div",{className:en().logo,children:(0,s.jsx)(P,{alt:"PayPal logo"})}),(0,s.jsx)("h1",{className:en().title,children:o("checkout.payWithPayPal")}),(0,s.jsx)(ee,{paymentRef:l.paymentRef,saleAk:l.saleAk,onOrderApproved:w,onOrderCompleted:T,onCancel:O,onError:k}),(0,s.jsx)("p",{className:en().text,children:o("common.or")}),(0,s.jsx)(d.$n,{className:en().cancel,label:o("common.button.cancel"),variant:d.Ak.Text,appearance:d.RD.Primary,onClick:O})]})}):(0,s.jsx)(p.U,{show:!0,loader:(0,s.jsx)(t.Loader,{show:!0})})};var ea=function(e){return e[e.Decline=1]="Decline",e[e.Cancel=2]="Cancel",e}(ea||{}),eo=!0;let ec=e=>{var t;let{behaviour:n,payments:r}=(0,m.j)(),{locale:a}=(0,y.M1)(),o=(0,E.useMemo)(()=>{var e;return{"client-id":null==(e=r.paypal)?void 0:e.clientID,locale:null==a?void 0:a.replace("-","_"),currency:n.currency,intent:"capture"}},[n.currency,a,null==(t=r.paypal)?void 0:t.clientID]);return(0,s.jsx)(q,{options:o,children:(0,s.jsx)(er,{...e})})}},70111:(e,t,n)=>{"use strict";n.d(t,{l:()=>y});var r=n(32516),a=n(59096),o=n(33392),c=n(14232),l=n(42135),i=n(29171),s=n(13664),u=n(92345),d=n(61154),p=n(79444),f=n(95597),m=n(27058);let y=e=>{let{paymentMethod:t,params:n,previousPage:y,avoidConfigChecks:h,avoidParamChecks:v,configs:E,doAdditionalChecks:A,hideTimeout:P}=e,{behaviour:N}=(0,s.j)(),{loggedUser:R}=(0,i.U)(),{goHome:g}=(0,m.k)(),{setCustomPage:b,getMetaPaymentPageByUrl:S}=(0,u.t)(),{clear:_}=(0,a.F)(),C=(0,c.useMemo)(()=>"".concat(t," PAYMENT - "),[t]),{value:w,setTrue:T}=(0,l.Cg)(!1);return(0,o.S)(()=>{if(!h&&!E||(0,f.fU)({behaviour:N,loggedUser:R,paymentMethod:t})){console.error(C+"Missing required configs"),g({replace:!0});return}if(!v&&(!n||!(0,f.oc)(n,y))){console.error(C+"Missing required info"),g({replace:!0});return}if(null==A?void 0:A())return void g({replace:!0});let e=y?new URL(y).pathname:"/",r=S(e);r&&(e=r),(0,p.yy)(500).then(()=>{b(e,{hideCart:!0,hideTimeout:P||!1}),T()})}),{isPaymentMethodEnabled:w,handleBrowserBack:(0,c.useCallback)((e,t,n)=>{N.checkout.paymentErrorHandlingMode===d.PI.ClearCartAndGoToFirstPage&&_(),r.w.abortOrder(e,t,n).catch(p.Zi)},[N,_])}}},95597:(e,t,n)=>{"use strict";function r(e){var t,n;let{behaviour:r,loggedUser:a,paymentMethod:o}=e,c=null==(n=null==a||null==(t=a.loadCreditPaymentMethods)?void 0:t.includes(o))||n;return!r||!r.paymentMethodsList.includes(o)&&!c}function a(e,t){return t&&(null==e?void 0:e.paymentRef)&&(null==e?void 0:e.saleAk)&&(null==e?void 0:e.redirectToURL)}function o(e){let t=e instanceof URL?e:new URL(e);return{pathName:t.pathname,query:Array.from(t.searchParams.entries()).reduce((e,t)=>({...e,[t[0]]:t[1]}),{})}}n.d(t,{bG:()=>o,fU:()=>r,oc:()=>a})}},e=>{e.O(0,[636,6593,8792],()=>e(e.s=34609)),_N_E=e.O()}]);
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.