(()=>{if(!document.querySelector(".ex-product"))return;const e=document.querySelector(".product-shopping-actions"),n=e=>{if(!e)return!1;if("number"==typeof e)return e;if("object"==typeof e){const n=Object.values(e).filter((e=>"number"==typeof e));if(0===n.length)return!1;const t=n.reduce(((e,n)=>e+n),0);return Math.round(t/n.length)}return!1},t=(e,t="GBP")=>{if(!e.price||!e.pageYield)return null;const o=n(e.pageYield);if(!o)return null;const r="object"==typeof e.pageYield,i=e.price/o*100,a=i<2?i.toFixed(2):i.toFixed(0);let c="p";"EUR"===t&&(c="c"),"USD"===t&&(c="¢");const l=r?"avg. ":"",p=document.createElement("div");return p.className="ink-toner-price-per-page",p.innerHTML=`${l}${a}${c} per page`,p},o=e=>{if(!e.colours||!e.pageYield||!e.category)return null;const n=document.createElement("div");n.className="ink-toner-yield-card";const t=document.createElement("h4");t.className="yield-card-title",t.textContent=`This ${e.category} cartridge yields:`,n.appendChild(t);const o=document.createElement("div");return o.className="yield-colors-container",e.colours.forEach((n=>{const t=document.createElement("div");t.className="yield-color-item",t.setAttribute("data-color",n);const r=((e,n)=>!!e&&("number"==typeof e?e:!("object"!=typeof e||!e[n])&&e[n]))(e.pageYield,n),i=r?r.toLocaleString():"N/A";t.innerHTML=`${i} pages`,o.appendChild(t)})),n.appendChild(o),n},r=(e,n,r="GBP")=>{let i=document.getElementById("inkTonerComparisonModal");i||(i=(()=>{const e=document.createElement("div");return e.className="modal fade ink-toner-comparison-modal",e.id="inkTonerComparisonModal",e.setAttribute("tabindex","-1"),e.setAttribute("role","dialog"),e.setAttribute("aria-labelledby","inkTonerComparisonModalLabel"),e.innerHTML='\n
\n
\n \n
\n
\n
\n
This Product\n
\n \x3c!-- Original product content will go here --\x3e\n
\n \n
\n
Compatible Alternative\n
\n \x3c!-- Compatible product content will go here --\x3e\n
\n \n
\n
\n
\n
\n ',e})(),document.body.appendChild(i)),((e,n,r,i)=>{const a=e=>e?e.outerHTML:"",c=o(n),l={...r,colours:n.colours,category:n.category},p=o(l),s=t(n,i),d=t(r,i),m=`\n \n
\n ${n.image?`

`:""}\n
\n
\n
${n.name||""}
\n
${n.pricingHtml||""}
\n ${n.inventoryHtml||""}\n
\n
\n \n ${a(c)}\n ${a(s)}\n
${n.productPointsHtml||""}
\n
\n `,u=`\n \n
\n ${r.image?`

`:""}\n
\n
\n
${r.name||""}
\n
${r.pricingHtml||""}
\n
\n
\n \n ${a(p)}\n ${a(d)}\n
${r.productPointsHtml||""}
\n
\n `,g=e.querySelector(".comparison-original .comparison-product-content"),f=e.querySelector(".comparison-compatible .comparison-product-content");if(g&&(g.innerHTML=m,n.addToCartElement)){const e=n.addToCartElement.querySelector(".btn-add-to-cart");if(e){const n=document.createElement("div");n.className="modal-add-to-cart-wrapper buttons group";const t=document.createElement("div");t.className="quantity-input-wrapper",t.innerHTML='\n \n \n \n ';const o=e.cloneNode(!0);n.appendChild(t),n.appendChild(o),g.appendChild(n);const r=t.querySelector(".inputquantity"),i=t.querySelector(".quantity-input-decrement"),a=t.querySelector(".quantity-input-increment");r.addEventListener("input",(()=>{const e=Math.max(1,parseInt(r.value,10)||1);r.value=e})),i.addEventListener("click",(()=>{const e=parseInt(r.value,10)||1,n=Math.max(1,e-1);r.value=n})),a.addEventListener("click",(()=>{const e=(parseInt(r.value,10)||1)+1;r.value=e}))}}if(f&&(f.innerHTML=u,r.addToCartElement)){const e=r.addToCartElement.querySelector(".btn-add-to-cart");if(e){const n=document.createElement("div");n.className="modal-add-to-cart-wrapper buttons group";const t=document.createElement("div");t.className="quantity-input-wrapper",t.innerHTML='\n \n \n \n ';const o=e.cloneNode(!0);n.appendChild(t),n.appendChild(o),f.appendChild(n);const r=t.querySelector(".inputquantity"),i=t.querySelector(".quantity-input-decrement"),a=t.querySelector(".quantity-input-increment");r.addEventListener("input",(()=>{const e=Math.max(1,parseInt(r.value,10)||1);r.value=e})),i.addEventListener("click",(()=>{const e=parseInt(r.value,10)||1,n=Math.max(1,e-1);r.value=n})),a.addEventListener("click",(()=>{const e=(parseInt(r.value,10)||1)+1;r.value=e}))}}})(i,e,n,r),window.$&&window.$.fn.modal&&window.$(i).modal("show")},i=(e,t,o="GBP",i=!1)=>{if(!e.price)return null;if(!t.price)return null;const a=(e.price-t.price).toFixed(2);let c="£";"EUR"===o?c="€":"USD"===o&&(c="$");let l,p="p";"EUR"===o&&(p="c"),"USD"===o&&(p="¢"),i?(l=document.createElement("div"),l.className="ink-toner-compatible-comparison",l.style.cursor="pointer",l.addEventListener("click",(()=>{r(e,t,o)}))):t.url?(l=document.createElement("a"),l.href=t.url,l.className="ink-toner-compatible-comparison"):(l=document.createElement("div"),l.className="ink-toner-compatible-comparison"),l.style.setProperty("--b","6px"),l.style.setProperty("--m","2"),l.innerHTML='\n \n ';const s=document.createElement("div");s.className="comparison-inner",l.appendChild(s);const d=document.createElement("div");d.className="comparison-image",t.image&&(d.innerHTML=`
`),s.appendChild(d);const m=document.createElement("div");m.className="comparison-content",m.innerHTML='';const u=document.createElement("p");u.className="comparison-message";const g=parseFloat(a)>0;if(e.pageYield&&t.pageYield){const o=n(e.pageYield),r=(n(t.pageYield)-o)/o*100,i=r.toFixed(0),l=r>0;u.innerHTML=l&&g?`Print ${i}% more and save ${c}${a} when you switch to our brand`:l?`Print ${i}% more when you switch to our brand`:g?`Save ${c}${a} when you switch to our brand`:"Save when you switch to our brand"}else u.innerHTML=g?`Save ${c}${a} when you switch to our brand`:"Save when you switch to our brand";if(m.appendChild(u),t.pageYield){const e=n(t.pageYield),o="object"==typeof t.pageYield,r=t.price/e*100,i=r<2?r.toFixed(2):r.toFixed(0),a=o?"avg. ":"",c=document.createElement("p");c.className="comparison-price",c.innerHTML=`Alternatives from ${a}${i}${p} per page `,m.appendChild(c)}else{const e=document.createElement("p");e.className="comparison-price",e.innerHTML='View alternatives ',m.appendChild(e)}return s.appendChild(m),l},a=(e,n,t,o="append",r={})=>{if(!n)return 0;let i;if("string"==typeof t)i=document.querySelectorAll(t);else if(t instanceof NodeList||t instanceof HTMLCollection)i=t;else{if(!(t instanceof HTMLElement))return 0;i=[t]}if(!i||0===i.length)return 0;let a=0;return i.forEach((t=>{const i=e(n,...Object.values(r));if(i){switch(o){case"prepend":t.insertBefore(i,t.firstChild);break;case"before":t.parentNode.insertBefore(i,t);break;case"after":t.parentNode.insertBefore(i,t.nextSibling);break;default:t.appendChild(i)}a+=1}})),a},c=[{ink:"1000402",toner:"1000424"}];document.addEventListener("live-pricing-done",(()=>{setTimeout((()=>{if(document.querySelector(".ink-toner-price-per-page")||document.querySelector(".ink-toner-yield-card"))return;const n=(n=>{const t=(()=>{let t="";if(e&&e.classList.length>0){const o=Array.from(e.classList).find((e=>e.startsWith("category_")));if(o){const e=o.replace("category_","");n.forEach((n=>{Object.entries(n).forEach((([n,o])=>{o===e&&(t=n)}))}))}}return t||!1})();return!!t&&{category:t,type:(()=>{const e=document.querySelector(".attr_100249");if(!e)return!1;const n=e.querySelector("p");if(!n)return!1;const t=n.textContent.trim().toLowerCase();return"compatible"===t?"compatible":"original"===t&&"original"})(),pageYield:(()=>{const e=document.querySelector(".attr_100920")||document.querySelector(".attr_101467");if(!e)return!1;const n=e.querySelector("p");if(!n)return!1;const t=n.textContent.trim(),o=[...t.matchAll(/(\d[\d,]*)\s*(Black|Colour|CMY|Tri-Colour|Cyan|Magenta|Yellow)/gi)];if(o.length>1){const e={};let n=!1;if(o.forEach((t=>{const o=parseInt(t[1].replace(/,/g,""),10),r=t[2].toLowerCase();Number.isNaN(o)||(n=!0,"black"===r?e.black=o:"colour"===r||"cmy"===r||"tri-colour"===r?(e.cyan=o,e.magenta=o,e.yellow=o):"cyan"===r?e.cyan=o:"magenta"===r?e.magenta=o:"yellow"===r&&(e.yellow=o))})),n)return e}const r=t.match(/(\d[\d,]*)\s*x\s*(\d+)/i);if(r){const e=parseInt(r[1].replace(/,/g,""),10),n=parseInt(r[2],10);if(!Number.isNaN(e)&&3===n)return{cyan:e,magenta:e,yellow:e}}const i=t.match(/[\d,]+/);if(!i)return!1;const a=parseInt(i[0].replace(/,/g,""),10);return!Number.isNaN(a)&&a})(),colours:(()=>{const e=document.querySelector(".attr_100242");if(!e)return!1;const n=e.querySelector("p");if(!n)return!1;const t=n.textContent.trim().toLowerCase(),o=[];return t.includes("multipack")||t.includes("black/colour cartridge")?["black","cyan","magenta","yellow"]:t.includes("colour cartridge")?["cyan","magenta","yellow"]:(t.includes("black")&&o.push("black"),t.includes("cyan")&&o.push("cyan"),t.includes("magenta")&&o.push("magenta"),t.includes("yellow")&&o.push("yellow"),o.length>0&&o)})(),price:(()=>{if(!e)return!1;const n=e.querySelector(".has-price");if(!n)return!1;const t=n.textContent.trim().match(/[\d.,]+/);if(!t)return!1;const o=parseFloat(t[0].replace(/,/g,""));return!Number.isNaN(o)&&o})(),image:(()=>{const e=document.querySelector(".product-summary");return e&&e.getAttribute("data-item-image")||!1})(),name:(()=>{const e=document.querySelector(".product-summary");return e&&e.getAttribute("data-item-name")||!1})(),inventoryHtml:(()=>{const n=e.querySelector(".live-inventory-v2-wrapper");return!!n&&n.outerHTML})(),pricingHtml:(()=>{const n=e.querySelector(".product-shopping-actions-prices");return!!n&&n.innerHTML})(),productPointsHtml:(()=>{const e=document.querySelector(".product-summary");if(!e)return!1;const n=e.querySelector(".product-points");return!!n&&n.innerHTML})(),addToCartElement:e.querySelector(".product-shopping-actions-addtocart")||!1}})(c);if(n&&(a(o,n,".product-points-wrapper","after"),"original"===n.type)){const e=(()=>{const e=document.querySelector(".relationship-carousel-recommendations");if(!e)return!1;const n=e.querySelector(".tile");if(!n)return!1;const t=(()=>{const e=n.querySelector(".imgthumbnail img");return!!e&&e.getAttribute("src")})(),o=(()=>{const e=n.querySelector(".price-label.has-price");if(!e)return!1;const t=e.getAttribute("data-value");if(!t)return!1;const o=parseFloat(t);return!Number.isNaN(o)&&o})(),r=(()=>{const e=n.querySelector(".product-points");if(e){const n=e.querySelectorAll("li");if(n&&n.length>0){const e=Array.from(n).find((e=>{const n=e.textContent.trim();return n.toLowerCase().includes("page yield:")||n.toLowerCase().includes("print yield:")}));if(e){const n=e.textContent.trim(),t=/(\d[\d,]*)\s*(Black|Colour|CMY|Tri-Colour|Cyan|Magenta|Yellow)/gi,o=[...n.matchAll(t)];if(o.length>1){const e={};let n=!1;if(o.forEach((t=>{const o=parseInt(t[1].replace(/,/g,""),10),r=t[2].toLowerCase();Number.isNaN(o)||(n=!0,"black"===r?e.black=o:"colour"===r||"cmy"===r||"tri-colour"===r?(e.cyan=o,e.magenta=o,e.yellow=o):"cyan"===r?e.cyan=o:"magenta"===r?e.magenta=o:"yellow"===r&&(e.yellow=o))})),n)return e}const r=n.match(/(\d[\d,]*)\s*x\s*(\d+)/i);if(r){const e=parseInt(r[1].replace(/,/g,""),10),n=parseInt(r[2],10);if(!Number.isNaN(e)&&3===n)return{cyan:e,magenta:e,yellow:e}}const i=n.match(/[\d,]+/);if(i){const e=parseInt(i[0].replace(/,/g,""),10);if(!Number.isNaN(e))return e}}}}const t=n.querySelector(".product-name a");if(t){const e=t.textContent.trim(),n=e.match(/(\d[\d,]+)(?![a-z])(?!\s*(?:ml|g|oz|kg|lb))\s+(?:(?:Extra\s+)?(?:High|Low|Standard|H|L|S|XL|XXL)\s+)?page\s*yield/i);if(n){const e=parseInt(n[1].replace(/,/g,""),10);if(!Number.isNaN(e))return e}const o=e.match(/HY\s+(\d[\d,]*)$/i);if(o){const e=parseInt(o[1].replace(/,/g,""),10);if(!Number.isNaN(e))return e}const r=e.match(/(\d[\d,]*)\s+pages?$/i);if(r){const e=parseInt(r[1].replace(/,/g,""),10);if(!Number.isNaN(e))return e}}return!1})(),i=(()=>{const e=n.querySelector(".product-tile-image");return!!e&&e.getAttribute("href")})(),a=(()=>{const e=n.querySelector(".product-name a");return!!e&&e.textContent.trim()})(),c=(()=>{const e=n.querySelector(".footer-wrapper-price");return!!e&&e.innerHTML})(),l=(()=>{const e=n.querySelector(".product-points");return!!e&&e.innerHTML})(),p=n.querySelector(".buttons.group")||!1;return!!o&&{image:t,price:o,pageYield:r||!1,url:i||!1,name:a,pricingHtml:c,productPointsHtml:l,addToCartElement:p}})();e&&a(i,n,".ink-toner-yield-card","after",{compatibleProduct:e,currency:"GBP",useModal:true})}}),200)})),document.head.innerHTML+='\n \n '})();