1<!DOCTYPE html> 2<html lang="en-US" class="no-js"> 3 4<head> 5 <meta charset="UTF-8" />
5<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1588911977",accountID:"4340186",trustKey:"66686",xpid:"UAUDUVdbDhABUVFQDgYEUVIG",licenseKey:"NRJS-222c0d99af9fd6e2b0b",applicationID:"1502973767",browserID:"1588911977"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */ 6(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
6e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
6const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>A,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
6if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,w(e,t)}function w(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function R(e,t,r,n,i){if(w(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(R(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
6o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
6(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
6;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.322.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,s,a)=>
6{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={478:"sha512-SARROoir04gFygxlr/+mTI+PyMeFL+epi1vnUA2G5mTQ7s3G44ItQBJKbOaIMdIE5OBzuaKhb4k5JYta0NICxg==",249:"sha512-6DKQo5WP7YlpzX6l9UfYkgGLGK2oITdoaYTcZtgl5Foa22NY63lED/0z1hBBLeD7qZCz/YdlY19/r8drlol1tg==",212:"sha512-CYxuvSpDx6ErqWJwAvpoHn54eY37YdMcFao/axOumlw3BsSL7yioOeB2LWViY/Njs818sQG10dSglUhYCMfLPw==",238:"sha512-mvbMILWa3ohYst+u6TLfNrmtY2swUIB3rbJFN/uzt3W62KhgvUVwB81UEZ1R0/it5bfrQ5EVz864pi/CAmucNQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
6ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:w.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=R.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
6{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}O(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.T),this.setupInspectionEvents(),t=e,(0,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
6null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,S.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,_.t)()){(0,S.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
6dTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
6imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,S.p)("err",[re(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,Ie.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||R.ee).get("fetch")}(e);if(!(Ue&&Ke&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
6return Ve[r.debugId]=1,We.forEach(e=>{n(Ue[Fe],e,He),n(Ke[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s=(0,ye.ZF)(),a=(0,ye.el)(),o=Date.now(),c={spanId:s,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,o,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,a,o,r,n,i)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,S.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=A,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
6!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Le(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Le(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function A(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Le(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Le(e.response):"text"===r||""===r||void 0===r?Le(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,S.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,N.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
6if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,I.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
6);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class Ot{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class _t extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
6class n extends WebSocket{static name=Tt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,St.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=xt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,S.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
6h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Nt=r(2646);const Lt=new Map;function Mt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
6 7 <meta name="viewport" content="width=device-width, initial-scale=1" /> 8 <meta name="keywords" content=""> 9 <meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" /> 10 <!-- <meta name="theme-color" content="#7b0a2e"/> --> 11 <link rel="profile" href="http://gmpg.org/xfn/11" /> 12 <link rel="pingback" href="https://www.assent.com/xmlrpc.php" /> 13 <link rel="preconnect" href="https://fonts.googleapis.com"> 14 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 15 16 <link rel="preload" 17 href="https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;700&family=Roboto:wght@300;400;500;700&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Open+Sans:wght@600&display=swap" 18 as="style" onload="this.rel='stylesheet'"> 19 <link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css" as="style" 20 onload="this.rel='stylesheet'"> 21 <noscript> 22 <link 23 href="https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;700&family=Roboto:wght@300;400;500;700&display=swap" 24 rel="stylesheet"> 25 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css" /> 26 </noscript> 27 28 <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> 29
29<script id="assent-form-logger-early"> 30 (function() { 31 if (window.__assentFormLogger) return; 32 33 var ENDPOINT = "https:\/\/www.assent.com\/wp-json\/assent\/v1\/log-error"; 34 var MAX_PER_PAGE = 8; 35 var sent = 0; 36 var seen = {}; 37 var nativeFetch = (typeof window.fetch === 'function') ? window.fetch.bind(window) : null; 38 39 function recaptchaState() { 40 try { 41 if (typeof grecaptcha !== 'undefined') return 'Loaded'; 42 var tag = document.querySelector('script[src*="recaptcha/api.js"]'); 43 if (!tag) return 'Not Present'; 44 // OneTrust auto-blocking rewrites blocked tags to text/plain. 45 if (String(tag.type || '').indexOf('text/plain') === 0) return 'Blocked by consent (text/plain)'; 46 return 'Present, not executed'; 47 } catch (e) { 48 return 'Unknown'; 49 } 50 } 51 52 function consentState() { 53 try { 54 if (window.OnetrustActiveGroups) return String(window.OnetrustActiveGroups); 55 var m = document.cookie.match(/OptanonConsent=([^;]+)/); 56 if (m) { 57 var groups = decodeURIComponent(m[1]).match(/groups=([^&]*)/); 58 return groups ? groups[1] : 'cookie present, no groups'; 59 } 60 return 'no OneTrust cookie'; 61 } catch (e) { 62 return 'Unknown'; 63 } 64 } 65 66 function env() { 67 var d = {}; 68 try { 69 d.browser = navigator.userAgent; 70 d.os = navigator.platform; 71 d.device = /Mobi|Android|iPhone|iPad/i.test(navigator.userAgent) ? 'Mobile' : 'Desktop'; 72 d.timezone = Intl.DateTimeFormat().resolvedOptions().timeZone; 73 d.lang = document.documentElement.getAttribute('lang') || ''; 74 d.page_url = window.location.href; 75 d.recaptcha_status = recaptchaState(); 76 d.consent = consentState(); 77 } catch (e) {} 78 return d; 79 } 80 81 function send(payload) { 82 try { 83 if (sent >= MAX_PER_PAGE) return; 84 85 var key = (payload.error_type || '') + '|' + (payload.error_message || ''); 86 if (seen[key]) return; 87 seen[key] = true; 88 sent++; 89 90 var body = {}; 91 var e = env(); 92 for (var k in e) { if (e.hasOwnProperty(k)) body[k] = e[k]; } 93 for (var j in payload) { if (payload.hasOwnProperty(j)) body[j] = payload[j]; } 94 95 var json = JSON.stringify(body); 96 97 // sendBeacon survives the page unloading mid-redirect. 98 if (navigator.sendBeacon) { 99 var blob = new Blob([json], { type: 'application/json' }); 100 if (navigator.sendBeacon(ENDPOINT, blob)) return; 101 } 102 103 if (nativeFetch) { 104 nativeFetch(ENDPOINT, { 105 method: 'POST', 106 headers: { 'Content-Type': 'application/json' }, 107 body: json, 108 keepalive: true 109 })['catch'](function() {}); 110 } 111 } catch (err) {} 112 } 113 114 window.__assentFormLogger = { send: send, env: env, nativeFetch: nativeFetch }; 115 116 if (!nativeFetch) return; 117 118 // Pull the interesting bits out of the outgoing request. This is
119 // how we can tell an empty token apart from a low score, and how 120 // we detect the duplicate g-recaptcha-response field. 121 function readRequest(args) { 122 var out = { action: '', email: '', token_count: 0, token_empty: true }; 123 try { 124 var body = args[1] && args[1].body; 125 if (!body) return out; 126 127 var values = null; 128 129 if (typeof FormData !== 'undefined' && body instanceof FormData) { 130 out.action = body.get('action') || ''; 131 out.email = body.get('Email') || body.get('email') || ''; 132 values = body.getAll ? body.getAll('g-recaptcha-response') : []; 133 } else if (typeof body === 'string' && typeof URLSearchParams !== 'undefined') { 134 var p = new URLSearchParams(body); 135 out.action = p.get('action') || ''; 136 out.email = p.get('Email') || p.get('email') || ''; 137 values = p.getAll('g-recaptcha-response'); 138 } 139 140 if (values) { 141 out.token_count = values.length; 142 var last = values.length ? values[values.length - 1] : ''; 143 out.token_empty = !last; 144 } 145 } catch (e) {} 146 return out; 147 } 148 149 function classify(code) { 150 var s = String(code || ''); 151 if (s === 'RE0001') return 'low_score'; 152 if (s.indexOf('Missing reCAPTCHA') === 0) return 'missing_token'; 153 return 'client_logic_error'; 154 } 155 156 function inspect(res, req) { 157 if (!res) return; 158 159 var status = res.status; 160 var clone; 161 try { clone = res.clone(); } catch (e) { return; } 162 163 clone.text().then(function(text) { 164 var data = null; 165 try { data = JSON.parse(text); } catch (e) {} 166 167 var base = { 168 email: req.email, 169 http_status: status, 170 token_count: req.token_count 171 }; 172 173 if (status >= 400) { 174 base.error_type = 'client_http_error'; 175 base.error_message = 'HTTP ' + status + (text ? ' - ' + text.slice(0, 200) : ''); 176 send(base); 177 return; 178 } 179 180 if (data && data.success === false) { 181 var d = data.data || {}; 182 var code = d.error || d.message || 'unknown'; 183 base.error_type = classify(code); 184 base.error_message = String(code) + (req.token_empty ? ' [token sent: EMPTY]' : ' [token sent: ok]'); 185 if (typeof d.score !== 'undefined') base.score = d.score; 186 send(base); 187 } 188 })['catch'](function() {}); 189 } 190 191 window.fetch = function() { 192 var args = arguments; 193 var url = ''; 194 195 try { 196 var first = args[0]; 197 url = (typeof first === 'string') ? first 198 : (first && typeof first.url === 'string') ? first.url 199 : String(first || ''); 200 } catch (e) { 201 url = ''; 202 } 203 204 var promise = nativeFetch.apply(window, args); 205 206 // Never inspect our own logging call. 207 if (url.indexOf('admin-ajax.php') === -1 || url.indexOf('log-error') !== -1) { 208 return promise; 209 } 210 211 var req = readRequest(args); 212 213 if (req.action !== 'handle_ajax_form') { 214 return promise; 215 } 216 217 return promise.then(function(res) { 218 try { inspect(res, req); } catch (e) {} 219 return res; 220 }, function(err) { 221 try { 222 send({ 223 error_type: 'client_network_error', 224 error_message: String((err && err.message) || err), 225 email: req.email, 226 token_count: req.token_count 227 }); 228 } catch (e) {} 229 throw err; 230 }); 231 }; 232 })(); 233 </script>
233 234<link rel="preconnect" href="https://js.zi-scripts.com" crossorigin>
235<script> 236/* ZoomInfo FormComplete - config must be set before zi-tag.js executes */ 237window.ZIProjectKey = "1cb5371d771679922484"; 238window.ZIWhiteList = ( window.ZIWhiteList || [] ).concat( 'formcomplete' ); 239 240/* FormComplete's own "ready" callback. Far more reliable than watching the DOM 241 for a stamp, which is all the spinner could do while this lived in GTM. 242 The flag covers the case where FormComplete finishes before the (footer) 243 spinner script has parsed - the loader checks it on init. */ 244window._zi_fc = window._zi_fc || {}; 245window._zi_fc.onReady = function () { 246 window.__assentZiReady = true; 247 if ( window.AssentFormLoader ) { 248 window.AssentFormLoader.revealAll( 'zoominfo-ready' ); 249 } 250}; 251</script>
vendor: 1 bytes, line 251
251
252<script async src="https://js.zi-scripts.com/zi-tag.js"></script>
252 253 254 <!-- This site is optimized with the Yoast SEO Premium plugin v26.6 (Yoast SEO v27.9) - https://yoast.com/product/yoast-seo-premium-wordpress/ --> 255 <title>Product & Regulatory Compliance Software Solutions | Assent</title> 256 <meta name="description" content="View our solution for getting standardized, validated, and usable product compliance data from your supply chain." /> 257 <link rel="canonical" href="https://www.assent.com/solutions/product-compliance/" /> 258 <meta property="og:locale" content="en_US" /> 259 <meta property="og:type" content="article" /> 260 <meta property="og:title" content="Product Compliance" /> 261 <meta property="og:description" content="View our solution for getting standardized, validated, and usable product compliance data from your supply chain." /> 262 <meta property="og:url" content="https://www.assent.com/solutions/product-compliance/" /> 263 <meta property="og:site_name" content="Assent" /> 264 <meta property="article:publisher" content="https://www.facebook.com/AssentCompliance/" /> 265 <meta property="article:modified_time" content="2026-08-06T17:21:05+00:00" /> 266 <meta property="og:image" content="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-tires-braided.jpeg" /> 267 <meta property="og:image:width" content="1500" /> 268 <meta property="og:image:height" content="1001" /> 269 <meta property="og:image:type" content="image/jpeg" /> 270 <meta name="twitter:card" content="summary_large_image" /> 271 <meta name="twitter:site" content="@AssentGlobal" /> 272
272<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/","url":"https:\/\/www.assent.com\/solutions\/product-compliance\/","name":"Product & Regulatory Compliance Software Solutions | Assent","isPartOf":{"@id":"https:\/\/www.assent.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/#primaryimage"},"image":{"@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/#primaryimage"},"thumbnailUrl":"https:\/\/www.assent.com\/wp-content\/uploads\/2022\/02\/Assent_stockImage_CustomerImpact-tires-braided.jpeg","datePublished":"2022-02-16T07:19:26+00:00","dateModified":"2026-08-06T17:21:05+00:00","description":"View our solution for getting standardized, validated, and usable product compliance data from your supply chain.","breadcrumb":{"@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.assent.com\/solutions\/product-compliance\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/#primaryimage","url":"https:\/\/www.assent.com\/wp-content\/uploads\/2022\/02\/Assent_stockImage_CustomerImpact-tires-braided.jpeg","contentUrl":"https:\/\/www.assent.com\/wp-content\/uploads\/2022\/02\/Assent_stockImage_CustomerImpact-tires-braided.jpeg","width":1500,"height":1001,"caption":"Abstract pattern created by braided tires"},{"@type":"BreadcrumbList","@id":"https:\/\/www.assent.com\/solutions\/product-compliance\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.assent.com\/"},{"@type":"ListItem","position":2,"name":"Solutions","item":"https:\/\/www.assent.com\/solutions\/"},{"@type":"ListItem","position":3,"name":"Product Compliance"}]},{"@type":"WebSite","@id":"https:\/\/www.assent.com\/#website","url":"https:\/\/www.assent.com\/","name":"Assent","description":"","publisher":{"@id":"https:\/\/www.assent.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.assent.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.assent.com\/#organization","name":"Assent","url":"https:\/\/www.assent.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.assent.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.assent.com\/wp-content\/uploads\/2022\/01\/logo.svg","contentUrl":"https:\/\/www.assent.com\/wp-content\/uploads\/2022\/01\/logo.svg","width":1,"height":1,"caption":"Assent"},"image":{"@id":"https:\/\/www.assent.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/AssentCompliance\/","https:\/\/x.com\/AssentGlobal","https:\/\/www.linkedin.com\/company\/assent-compliance-inc"]}]}</script>
272 273 <!-- / Yoast SEO Premium plugin. --> 274 275 276<link rel='dns-prefetch' href='//www.assent.com' /> 277<link rel='dns-prefetch' href='//cdnjs.cloudflare.com' /> 278<link rel='dns-prefetch' href='//www.google.com' /> 279<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.assent.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.assent.com%2Fsolutions%2Fproduct-compliance%2F" /> 280<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.assent.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.assent.com%2Fsolutions%2Fproduct-compliance%2F&format=xml" /> 281<style id="wp-img-auto-sizes-contain-inline-css"> 282img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 283/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 284</style> 285<style id="wp-emoji-styles-inline-css"> 286 287 img.wp-smiley, img.emoji { 288 display: inline !important; 289 border: none !important; 290 box-shadow: none !important; 291 height: 1em !important; 292 width: 1em !important; 293 margin: 0 0.07em !important; 294 vertical-align: -0.1em !important; 295 background: none !important; 296 padding: 0 !important; 297 } 298/*# sourceURL=wp-emoji-styles-inline-css */ 299</style> 300<link rel='stylesheet' id='wp-block-library-css' href='https://www.assent.com/wp-includes/css/dist/block-library/style.min.css?ver=1790175984&ver=7.1' media='all' /> 301<style id="classic-theme-styles-inline-css"> 302/*! This file is auto-generated */ 303.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 304/*# sourceURL=/wp-includes/css/classic-themes.min.css?ver=1790175984 */ 305</style> 306<style id="prop65-scope-check-style-inline-css"> 307@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;600;700&display=swap'); 308 309.p65-wrap *, .p65-wrap *::before, .p65-wrap *::after { box-sizing: border-box; margin: 0; padding: 0; } 310.p65-wrap { font-family: 'Roboto', sans-serif; width: 100%; padding: 20px 0; } 311 312/* ââ Card ââ */ 313.p65-card { display: flex; padding: 40px; flex-direction: column; align-items: flex-start; gap: 48px; border-radius: 16px; background: #FFF; box-shadow: 0 10px 40px 0 rgba(0,0,0,0.08); width: 100%; max-width: 680px; margin: 0 auto; } 314 315/* ââ Header ââ */ 316.p65-header { width: 100%; display: flex; flex-direction: column; } 317.p65-title { font-family: 'Roboto', sans-serif; font-weight: 700; font-size: 28px; line-height: 1.30; letter-spacing: -0.005em; color: #1A1A1A; margin: 0 0 8px 0; } 318.p65-sub { font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 15px; line-height: 24px; letter-spacing: -0.005em; color: #666666; margin: 0 0 20px 0; } 319 320/* ââ Progress bar ââ */ 321.p65-track { width: 100%; height: 20px; position: relative; display: flex; align-items: center; } 322.p65-track::before { content: ''; position: absolute; left: 0; right: 0; height: 8px; border-radius: 500px; background: #e0e4ea; width: 100%; } 323.p65-fill { height: 8px; background: linear-gradient(90deg, #215273 0%, #00A398 100%); border-radius: 500px; transition: width 0.5s cubic-bezier(0.4,0,0.2,1); position: relative; overflow: visible; z-index: 1; min-width: 16px; } 324.p65-fill::after { content: ''; position: absolute; right: -8px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; background: #00A398; border: 3px solid #FFFFFF; border-radius: 500px; box-shadow: 0 0 4px 0 rgba(0,0,0,0.25); z-index: 2; } 325 326/* ââ Step ââ */ 327.p65-step { width: 100%; display: flex; flex-direction: column; gap: 24px; } 328 329/* ââ Question ââ */ 330.p65-qrow { display: flex; align-items: flex-start; gap: 14px; } 331.p65-badge { min-width: 32px; height: 32px; background: #215273; color: #fff; font-family: 'Roboto', sans-serif; font-size: 18px; font-weight: 700; border-radius: 4px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 332.p65-qtext { font-family: 'Roboto', sans-serif; font-size: 20px; font-weight: 600; color: #444444; line-height: 1.4; padding-top: 4px; } 333 334/* ââ Info box ââ */ 335.p65-info { background: #f8f9fb; border-radius: 10px; padding: 18px 20px; border: 1px solid #e8ecf1; width: 100%; } 336.p65-info h4 { font-size: 0.975rem; font-weight: 700; color: #111; margin: 0 0 8px 0; } 337.p65-info p { font-size: 0.875rem; color: #555; line-height: 1.65; margin: 0; } 338 339/* ââ Options ââ */ 340.p65-options { display: flex; flex-direction: column; gap: 12px; width: 100%; } 341.p65-option { display: flex; align-items: flex-start; gap: 16px; padding: 12px; min-height: 56px; border: 1.05px solid rgba(210,214,218,0.81); border-radius: 8.4px; cursor: pointer; transition: background 0.2s, border-color 0.2s, box-shadow 0.2s; background: rgba(210,214,218,0.20); text-align: left; width: 100%; font-family: 'Roboto', sans-serif; outline: none; } 342.p65-option:hover { background: rgba(210,214,218,0.50); } 343.p65-option.p65-sel { background: rgba(33,82,115,0.06); border-color: #215273; box-shadow: inset 0 0 0 1px #215273; } 344.p65-option.p65-sel .p65-opt-badge { background: #215273; color: #fff; } 345.p65-opt-badge { min-width: 30px; height: 30px; border: 1.5px solid #215273; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-size: 0.78rem; font-weight: 700; color: #215273; flex-shrink: 0; background: #fff; transition: background 0.2s, color 0.2s, border-color 0.2s; pointer-events: none; } 346.p65-opt-text { font-size: 0.925rem; color: #215273; line-height: 1.5; font-weight: 500; padding-top: 4px; pointer-events: none; } 347 348/* ââ Nav ââ */ 349.p65-nav { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; } 350.p65-btn-primary { display: flex; padding: 10px 18px; justify-content: center; align-items: center; gap: 10px; border-radius: 4px; background: #771A77; color: #fff; font-family: 'Roboto', sans-serif; font-weight: 600; font-size: 0.9rem; border: none; cursor: pointer; transition: background 0.2s; line-height: 1; } 351.p65-btn-primary:hover:not([disabled]) { background: #5e1460; } 352.p65-btn-primary[disabled] { opacity: 0.4;
352 cursor: not-allowed; } 353.p65-btn-outline { display: flex; padding: 10px 18px; justify-content: center; align-items: center; gap: 10px; border-radius: 4px; background: transparent; color: #771A77; border: 1.5px solid #771A77; font-family: 'Roboto', sans-serif; font-weight: 600; font-size: 0.9rem; cursor: pointer; transition: background 0.2s; line-height: 1; } 354.p65-btn-outline:hover { background: #f9f0f9; } 355 356/* ââ Result card ââ */ 357.p65-result { display: flex; width: 100%; max-width: 486px; padding: 40px; flex-direction: column; align-items: center; gap: 32px; border-radius: 16px; border: 2px solid #00A398; background: rgba(0,163,152,0.05); margin: 0 auto; text-align: center; } 358.p65-result h3 { font-size: 1.4rem; font-weight: 700; color: #215273; margin: 0; } 359.p65-result p { font-size: 0.925rem; color: #215273; line-height: 1.7; margin: 0; } 360.p65-btn-next-stage { display: flex; padding: 10px 18px; justify-content: center; align-items: center; gap: 10px; border-radius: 4px; background: #771A77; color: #fff; font-family: 'Roboto', sans-serif; font-weight: 600; font-size: 0.9rem; border: none; cursor: pointer; transition: background 0.2s; line-height: 1; } 361.p65-btn-next-stage:hover { background: #5e1460; } 362.p65-btn-teal { display: flex; padding: 15.4px 16.8px; justify-content: center; align-items: center; gap: 8.4px; border-radius: 6px; border: 1px solid #00A398; background: #00A398; color: #fff; font-family: 'Roboto', sans-serif; font-weight: 600; font-size: 0.875rem; cursor: pointer; transition: background 0.2s; line-height: 1; } 363.p65-btn-teal:hover { background: #00897B; border-color: #00897B; } 364.p65-restart-plain { font-size: 0.875rem; color: #215273; cursor: pointer; background: none; border: none; font-family: 'Roboto', sans-serif; display: inline-flex; align-items: center; gap: 5px; transition: color 0.2s; padding: 0; line-height: 1; } 365.p65-restart-plain:hover { color: #153a52; } 366 367/* ââ Animation ââ */ 368@keyframes p65Up { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } } 369.p65-anim { animation: p65Up 0.3s cubic-bezier(0.4,0,0.2,1); } 370 371/* ââ Mobile ââ */ 372@media (max-width: 520px) { 373 .p65-wrap { padding-left: 16px; padding-right: 16px; } 374 .p65-card { padding: 24px 20px; gap: 32px; } 375 .p65-title { font-size: 22px; } 376 .p65-result { padding: 28px 20px; max-width: 100%; } 377} 378 379/*# sourceURL=https://www.assent.com/wp-content/themes/assent-wp/blocks/prop65/prop65.css?ver=1790175983 */ 380</style> 381<style id="filebird-block-filebird-gallery-style-inline-css"> 382ul.filebird-block-filebird-gallery{margin:auto!important;padding:0!important;width:100%}ul.filebird-block-filebird-gallery.layout-grid{display:grid;grid-gap:20px;align-items:stretch;grid-template-columns:repeat(var(--columns),1fr);justify-items:stretch}ul.filebird-block-filebird-gallery.layout-grid li img{border:1px solid #ccc;box-shadow:2px 2px 6px 0 rgba(0,0,0,.3);height:100%;max-width:100%;-o-object-fit:cover;object-fit:cover;width:100%}ul.filebird-block-filebird-gallery.layout-masonry{-moz-column-count:var(--columns);column-count:var(--columns);-moz-column-gap:var(--space);column-gap:var(--space);display:block;overflow:auto}ul.filebird-block-filebird-gallery.layout-masonry li{margin-bottom:var(--space)}ul.filebird-block-filebird-gallery li{list-style:none}ul.filebird-block-filebird-gallery li figure{height:100%;margin:0;padding:0;position:relative;width:100%}ul.filebird-block-filebird-gallery li figure figcaption{background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 70%,transparent);bottom:0;box-sizing:border-box;color:#fff;font-size:.8em;margin:0;max-height:100%;overflow:auto;padding:3em .77em .7em;position:absolute;text-align:center;width:100%;z-index:2}ul.filebird-block-filebird-gallery li figure figcaption a{color:inherit} 383 384/*# sourceURL=https://www.assent.com/wp-content/plugins/filebird/blocks/filebird-gallery/build/style-index.css?ver=1790175981 */ 385</style> 386<style id="global-styles-inline-css"> 387:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
3870) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
387.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 388:root :where(.wp-block-icon svg){width: 24px;} 389:where(.wp-block-gallery.is-layout-flex){gap: var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) );}:where(.wp-block-gallery.is-layout-grid){gap: var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) );} 390:where(.wp-block-latest-posts.is-layout-flex){gap: 1.25em;}:where(.wp-block-latest-posts.is-layout-grid){gap: 1.25em;} 391:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} 392:where(.wp-block-term-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-term-template.is-layout-grid){gap: 1.25em;} 393:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} 394:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} 395/*# sourceURL=global-styles-inline-css */ 396</style> 397<link rel='stylesheet' id='wpml-legacy-horizontal-list-0-css' href='https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/templates/language-switchers/legacy-list-horizontal/style.min.css?ver=1790175981&ver=1' media='all' /> 398<style id="wpml-legacy-horizontal-list-0-inline-css"> 399.wpml-ls-statics-footer a, .wpml-ls-statics-footer .wpml-ls-sub-menu a, .wpml-ls-statics-footer .wpml-ls-sub-menu a:link, .wpml-ls-statics-footer li:not(.wpml-ls-current-language) .wpml-ls-link, .wpml-ls-statics-footer li:not(.wpml-ls-current-language) .wpml-ls-link:link {color:#444444;background-color:#ffffff;}.wpml-ls-statics-footer .wpml-ls-sub-menu a:hover,.wpml-ls-statics-footer .wpml-ls-sub-menu a:focus, .wpml-ls-statics-footer .wpml-ls-sub-menu a:link:hover, .wpml-ls-statics-footer .wpml-ls-sub-menu a:link:focus {color:#000000;background-color:#eeeeee;}.wpml-ls-statics-footer .wpml-ls-current-language > a {color:#444444;background-color:#ffffff;}.wpml-ls-statics-footer .wpml-ls-current-language:hover>a, .wpml-ls-statics-footer .wpml-ls-current-language>a:focus {color:#000000;background-color:#eeeeee;} 400/*# sourceURL=wpml-legacy-horizontal-list-0-inline-css */ 401</style> 402<link rel='stylesheet' id='ASSENT-wp-style-css' href='https://www.assent.com/wp-content/themes/assent-wp/style.css?ver=1790175983' media='all' /> 403<link rel='stylesheet' id='ASSENT-style-css' href='https://www.assent.com/wp-content/themes/assent-wp/assets/css/style.css?ver=1790175983' media='all' /> 404<link rel='stylesheet' id='ASSENT-form-loading-spinner-style-css' href='https://www.assent.com/wp-content/themes/assent-wp/assets/css/form-loading-spinner.css?ver=1790175983' media='all' /> 405<link rel='stylesheet' id='webistry-reset-css' href='https://www.assent.com/wp-content/themes/assent-wp/assets/css/webistry-compiled.php?ver=1790175983&ver=1790264585' media='all' /> 406<link rel='stylesheet' id='gca-column-styles-css' href='https://www.assent.com/wp-content/plugins/genesis-columns-advanced/css/gca-column-styles.css?ver=1790175981&ver=7.1' media='all' />
407<script id="wpml-cookie-js-extra"> 408var wpml_cookies = {"wp-wpml_current_language":{"value":"en","expires":1,"path":"/"}}; 409var wpml_cookies = {"wp-wpml_current_language":{"value":"en","expires":1,"path":"/"}}; 410//# sourceURL=wpml-cookie-js-extra 411</script>
vendor: 1 bytes, line 411
411
412<script data-wp-strategy="defer" defer id="wpml-cookie-js" src="https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js?ver=1790175981&ver=495000"></script>
vendor: 1 bytes, line 412
412
413<script id="prop65-scope-check-script-js" src="https://www.assent.com/wp-content/themes/assent-wp/blocks/prop65/prop65.js?ver=1790175983&ver=7.1"></script>
vendor: 1 bytes, line 413
413
414<script id="jquery-core-js" src="https://www.assent.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 414
414
415<script id="jquery-migrate-js" src="https://www.assent.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 415
415
416<script data-wp-strategy="defer" defer id="fancybox-js" src="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js"></script>
vendor: 1 bytes, line 416
416
417<script id="ASSENT-gsap-js-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/gsap.min.js?ver=1790175983&ver=3.14.2"></script>
vendor: 1 bytes, line 417
417
418<script id="ASSENT-gsap-st-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/ScrollTrigger.min.js?ver=1790175983&ver=3.14.2"></script>
vendor: 86 bytes, lines 418-419
418 419<script id="google-recaptcha-js" src="https://www.google.com/recaptcha/api.js?render=
4196LceBR8sAAAAAL9MG-o_C4x5wLDoTLPMMgeJ9e-6
vendor: 12 bytes, line 419
419"></script>
420<link rel="https://api.w.org/" href="https://www.assent.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.assent.com/wp-json/wp/v2/pages/3850" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.assent.com/xmlrpc.php?rsd" /> 421<meta name="generator" content="WordPress 7.1" /> 422<link rel='shortlink' href='https://www.assent.com/?p=3850' /> 423<meta name="generator" content="WPML ver:4.9.5 stt:1,4,3,27;" /> 424
424<script> 425 document.documentElement.className = document.documentElement.className.replace( 'no-js', 'js' ); 426 </script>
426 427 <style> 428 .no-js img.lazyload { display: none; } 429 figure.wp-block-image img.lazyloading { min-width: 150px; } 430 .lazyload, .lazyloading { opacity: 0; } 431 .lazyloaded { 432 opacity: 1; 433 transition: opacity 400ms; 434 transition-delay: 0ms; 435 } 436 </style> 437 <link rel="icon" href="https://www.assent.com/wp-content/uploads/2022/02/cropped-Assent-LogoArtboard-1-med-32x32.png" sizes="32x32" /> 438<link rel="icon" href="https://www.assent.com/wp-content/uploads/2022/02/cropped-Assent-LogoArtboard-1-med-192x192.png" sizes="192x192" /> 439<link rel="apple-touch-icon" href="https://www.assent.com/wp-content/uploads/2022/02/cropped-Assent-LogoArtboard-1-med-180x180.png" /> 440<meta name="msapplication-TileImage" content="https://www.assent.com/wp-content/uploads/2022/02/cropped-Assent-LogoArtboard-1-med-270x270.png" /> 441<style id="wp-custom-css"> 442.page-id-4873 .post-card-desc .post-card-read { 443 display: none; 444} 445 446#demo_header_form h2{ 447 font-size: 3.5rem; 448} 449 450#demo_customers .logo-promo-wrap .logo-item-inner{ 451 padding: 1.75rem; 452} 453 454@media (min-width: 992px){ 455 #demo_header_form .tcf-content p{ 456 font-size: 1.5rem; 457 } 458} 459 460#past_speakers{ 461 display: none; 462} 463 464.mega-menu .third-level .feature-content--inner figure img{ 465 466} 467.lang-select { 468 max-width: 6.88rem; 469 width: auto; 470 height: auto; 471 color: #ffffff; 472 border: 0; 473 font-size: 0.75rem; 474 padding: 0 0.94rem 0 0; 475 margin-left: 0.75rem; 476 background-image: url(https://www.assent.com/wp-content/uploads/2022/12//down-triangle-white.svg); 477 background-size: 0.5rem; 478 background-position: right; 479 text-overflow: ellipsis; 480 text-align: center; 481} 482.postid-5994 .main-header-right, .postid-5594 .main-header-right, 483.postid-5646 .main-header-right, 484.postid-10798 .main-header-right,.postid-5657 .main-header-right, .postid-10810 .main-header-right, 485.postid-5883 .main-header-right, 486.page-id-13090 .main-header-right, 487.page-id-13127 .main-header-right, .page-id-13153 .main-header-right, .page-id-13093 .main-header-right, .page-id-13165 .main-header-right, .page-id-13031 .main-header-right, .page-id-13086 .main-header-right, .page-id-13171 .main-header-right, .page-id-13766 .main-header-right, .page-id-13047 .main-header-right, .page-id-13083 .main-header-right, .page-id-13055 .main-header-right , .page-id-13080 .main-header-right, .page-id-13058 .main-header-right, .page-id-13076 .main-header-right, .page-id-12865 .main-header-right, .page-id-13073 .main-header-right, .page-id-13064 .main-header-right, .page-id-13064 .main-header-right, .page-id-13070 .main-header-right { 488 display: none; 489} 490 491.main-footer .subscribe-title, .main-footer .subscribe-form-wrap { 492 display: block !important; 493} 494.book-demo { max-width: 45.5rem; } 495 496@media (max-width: 991px) { 497 body .generic-hero.no-image .hero-left .btn-wrap { 498 align-items: center; 499 } 500} 501 502.two-column-form.call-to-action.blue .eyebrow-text { 503 color: #fff !important; 504} 505 506.breadcrumbs ul li:not(:last-child)::after { 507 height: 13px; width: 7px; 508 transform: translate(4px, -1px); 509 content: ''; 510} 511 512</style> 513 514 <!-- Google Tag Manager - aug 28, this can't be deffered as need it to fully load first -->
515<script id="gtm">
vendor: 347 bytes, lines 515-519
515(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 516 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 517 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 518 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 519})(window,document,'script','dataLayer','
519GTM-KNHXFGP
vendor: 3 bytes, line 519
519');
519</script>
519 520<!-- End Google Tag Manager --> 521 522<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 65 bytes, lines 522-523
522 523<script defer src="https://www.googletagmanager.com/gtag/js?id=
523G-0CEEYZ48ST
vendor: 13 bytes, line 523
523"></script>
524<script defer id="ga4"> 525
vendor: 142 bytes, lines 525-528
525window.dataLayer = window.dataLayer || []; 526 function gtag(){dataLayer.push(arguments);} 527 gtag('js', new Date()); 528 gtag('config', '
528G-0CEEYZ48ST
vendor: 5 bytes, line 528
528');
529</script>
529 530 531<!-- Start VWO Async SmartCode --> 532<!--opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;transition:none !important;--> 533<link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com" />
534<script type='text/javascript' id='vwoCode'> 535window._vwo_code || (function() { 536var account_id=628830, 537version=2.1, 538settings_tolerance=2000, 539hide_element='body', 540hide_element_style = '', 541/* DO NOT EDIT BELOW THIS LINE */ 542f=false,w=window,d=document,v=d.querySelector('#vwoCode'),cK='_vwo_'+account_id+'_settings',cc={};try{var c=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=c&&typeof c==='object'?c:{}}catch(e){}var stT=cc.stT==='session'?w.sessionStorage:w.localStorage;code={nonce:v&&v.nonce,library_tolerance:function(){return typeof library_tolerance!=='undefined'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){if(performance.getEntriesByName('first-contentful-paint')[0]){return''}return typeof cc.hE==='string'?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){if(!f){f=true;var t=d.getElementById('_vis_opt_path_hides');if(t)t.parentNode.removeChild(t);if(e)(new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e}},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript';if(e.src){t.src=e.src}else{t.text=e.text}v&&t.setAttribute('nonce',v.nonce);d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){var n=this.getSettings(),i=d.createElement('script'),r=this;t=t||{};if(n){i.textContent=n;d.getElementsByTagName('head')[0].appendChild(i);if(!w.VWO||VWO.caE){stT.removeItem(cK);r.load(e)}}else{var o=new XMLHttpRequest;o.open('GET',e,true);o.withCredentials=!t.dSC;o.responseType=t.responseType||'text';o.onload=function(){if(t.onloadCb){return t.onloadCb(o,e)}if(o.status===200||o.status===304){_vwo_code.addScript({text:o.responseText})}else{_vwo_code.finish('&e=loading_failure:'+e)}};o.onerror=function(){if(t.onerrorCb){return t.onerrorCb(e)}_vwo_code.finish('&e=loading_failure:'+e)};o.send()}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf('__vwo_disable__')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t;if(this.hide_element()!=='body'){t=d.createElement('style');var n=this.hide_element(),i=n?n+this.hide_element_style():'',r=d.getElementsByTagName('head')[0];t.setAttribute('id','_vis_opt_path_hides');v&&t.setAttribute('nonce',v.nonce);t.setAttribute('type','text/css');if(t.styleSheet)t.styleSheet.cssText=i;else t.appendChild(d.createTextNode(i));r.appendChild(t)}else{t=d.getElementsByTagName('head')[0];var i=d.createElement('div');i.style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;display: block !important;';i.setAttribute('id','_vis_opt_path_hides');i.classList.add('_vis_hide_layer');t.parentNode.insertBefore(i,t.nextSibling)}var o=window._vis_opt_url||d.URL,s='https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(o)+'&vn='+version;if(w.location.search.indexOf('_vwo_xhr')!==-1){this.addScript({src:s})}else{this.load(s+'&x=true')}}};w._vwo_code=code;code.init();})(); 543</script>
543 544<!-- End VWO Async SmartCode --> 545
546<script type="application/ld+json"> 547{ 548"@context": "https://schema.org", 549"@type": "Corporation", 550"name": "Assent Inc.", 551"alternateName": "Assent", 552"url": "https://www.assent.com", 553"logo": "https://www.assent.com/logo.png", 554"foundingDate": "2010", 555"founders": [ 556{ 557"@type": "Person", 558"name": "Jonathan Hughes" 559}, 560{ 561"@type": "Person", 562"name": "Matt Whitteker" 563} 564], 565"address": { 566"@type": "PostalAddress", 567"streetAddress": "525 Coventry Road", 568"addressLocality": "Ottawa", 569"addressRegion": "Ontario", 570"postalCode": "K1K 2C5", 571"addressCountry": "Canada" 572}, 573"contactPoint": [ 574{ 575"@type": "ContactPoint", 576"telephone": "+1-866-964-6931", 577"contactType": "customer support", 578"areaServed": "Global", 579"availableLanguage": "English" 580} 581], 582"numberOfEmployees": "900+", 583"sameAs": [ 584"https://www.linkedin.com/company/assentcompliance" 585] 586} 587</script>
vendor: 2 bytes, line 587
587
588<script> 589 590(function(){ 591 592function setCookie(cname, cvalue, exdays) { 593 const d = new Date(); 594 d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); 595 let expires = "expires="+d.toUTCString(); 596 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 597} 598setCookie('vwo_eyebrow', '', 30); 599setCookie('vwo_title', '', 30); 600setCookie('vwo_copy', '', 30); 601setCookie('vwo_cta', '', 30); 602 603})(); 604</script>
604 605<!-- Qualified -->
606<script> 607(function(w,q){w['QualifiedObject']=q;w[q]=w[q]||function(){ 608(w[q].q=w[q].q||[]).push(arguments)};})(window,'qualified') 609 610</script>
vendor: 2 bytes, line 610
610
611<script async src="https://js.qualified.com/qualified.js?token=NMx7sppY9h25PMxv"></script>
611 612<!-- End Qualified --> 613 614
615<script> 616jQuery(document).ready(function($) { 617 // Find all <span> elements inside your list 618 $('.third-level--list ul li a span').each(function() { 619 var $span = $(this); 620 var text = $span.text(); 621 622 // Target spans containing "The Assent Distributor Experience" 623 if ( text.includes("The Distributor Experience") && !text.includes("New")) { 624 // Append "new" as a styled span 625 $span.append(' <span class="coming-soon">New</span>'); 626 } 627 }); 628}); 629</script>
629 630<style> 631/* Ensure the coming-soon badge is always inline */ 632.third-level--list ul li a span .coming-soon { 633 display: inline-block !important; /* force inline-block on all devices */ 634 background-color: #00A398; 635 color: #fff !important; 636 font-size: 12px; 637 padding: 2px 6px; 638 border-radius: 3px; 639 margin-left: 6px; 640 margin-bottom: 6px; 641 vertical-align: middle; 642 white-space: nowrap; /* prevent line break */ 643} 644 645/* Optional: adjust on very small screens */ 646@media (max-width: 768px) { 647 .third-level--list ul li a span .coming-soon { 648 font-size: 11px; 649 padding: 1px 4px; 650 } 651} 652@media (max-width: 1200px) { 653 .main-header .webistry-custom-menu { 654 & #third-level-list-item span.coming-soon { 655 background-color: #00A398 !important; 656 color: #fff !important; 657 margin-bottom: 0; 658 } 659 } 660 .main-header .webistry-custom-menu { 661 & .third-level { 662 & ul { 663 margin-bottom: 0; 664 } 665 } 666 } 667} 668</style> 669 670 <style> 671 .form--wrap .form-field.half { 672 grid-column: span 6; 673 } 674 </style> 675</head> 676 677<body class="wp-singular page-template-default page page-id-3850 page-parent page-child parent-pageid-1408 wp-theme-assent-wp"> 678 <!-- start --> 679 <div class="wrapper"> 680 <div class="main-container"> <div class="backdrop"></div><div class="mbnav d-md-none"></div><header class="main-header"><div class="utility-menu-wrap d-flex"><div class="cta-utility-menu"> 681 <a href="https://www.assent.com/newsroom/assent-recognized-as-two-time-leader-in-green-quadrant-for-supply-chain-sustainability-software/"> 682 <span class="icon"><img src="https://www.assent.com/wp-content/uploads/2025/03/icon-megaphone.svg" alt=""></span> 683 <span class="text-link">Read More</span> 684 <span class="elipsiss">Assent Recognized as Two-Time Leader in Green Quadrant for Supply Chain Sustainability Software</span></a> 685 </div><div class="utility-menu"><div class="header-search"> 686 <i class="header-search-btn icon-search"></i> 687 <div class="h-search-wrap"><form class="h-search-form-wrap" action="https://www.assent.com/" method="get"> 688 <div class="h-search-field"> 689 <input type="search" name="s" placeholder="Search" value=""> 690 <button class="icon-search" type="submit" aria-label="Search"></button> 691 </div> 692 </form> 693 </div> 694 </div><div class="header-cta"><select id="lang_sel" class="lang-select" aria-label="Language Select" onchange="if(this.value){this.options[this.selectedIndex].selected=true;window.location.href=this.value;}"><option value="" disabled selected>Language Select</option><option value="https://www.assent.com/de/loesungen/produktkonformitaet/">Deutsch</option><option value="https://www.assent.com/solutions/product-compliance/">English</option><option value="https://www.assent.com/fr/solutions/conformite-produits/">Français</option><option value="https://www.assent.com/it/soluzioni/conformita-del-prodotto/">Italiano</option></select></div></div></div><div class="container d-flex justify-content-between align-items-center"> 695 <div class="main-header-left"><a href="https://www.assent.com/" class="brand"> 696 <img src="https://www.assent.com/wp-content/uploads/2025/02/logo.svg" alt="Assent" class="skip-lazy" width="164" height="43" fetchpriority="high"> 697 </a></div><div class="main-header-right"><div class="primary-menu-wrap d-flex justify-content-end align-items-center"><nav class="navigation custom-menu webistry-custom-menu"> 698 <ul><li class="dropdown-menu" target=""><a href="https://www.assent.com/solutions/product-compliance/">Solutions</a><button class="mobile-button next-page" type="button">Next</button> 699 <div class="mega-menu"> 700 <div class="container"> 701 <div class="mega-menu__inner"> 702 <div class="mega-menu__left">
703 <div class="sub-menu-title"> 704 <button class="mobile-button prev-page">Main Menu</button> 705 <div class="sub-menu-title-text">Solutions</div> 706 </div> 707 <ul> 708 709 <li id="sub-menu-item" class="dropdown"> 710 <a href="https://www.assent.com/solutions/product-compliance/" target=""> 711 Product Compliance </a> 712 713 <div class="third-level"> 714 <div class="third-level--left"> 715 716 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 717 Product Compliance </button> 718 719 <div id="top-list-item"><strong>Discover Solutions for Reliable Product Compliance Data</strong><a href="https://www.assent.com/solutions/product-compliance/" target="">See All Solutions</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/reach-compliance-solution/" target=""><span>REACH</span><p>Supply chain transparency needed for c
719ompliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/rohs-compliance-solution/" target=""><span>RoHS</span><p>Deep-map your supply chain to streamline compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/tsca-compliance-solution/" target=""><span>TSCA</span><p>Grow better with Assentâs TSCA compliance solution. </p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/prop-65-compliance-solution/" target=""><span>Prop 65</span><p>Uncover deep supply chain data to meet labeling requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/pfas/" target=""><span>PFAS</span><p>Identify PFAS in your supply chain and set yourself up for success.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/ppwr-compliance-solutions/" target=""><span>PPWR</span><p>Collect supplier evidence to support evolving packaging requirements..</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/epr-packaging/" target=""><span>EPR Packaging</span><p>Collect packaging data, estimate fees, and generate EPR compliance-ready reports.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/full-material-declaration/" target=""><span>Full Materials Disclosures</span><p>Learn how we use FMDs to deep-map the entire complex manufacturing genome.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/ad-dsl/" target=""><span>AD-DSL</span><p>Our AD-DSL solution provides the missing foundation you need for compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/eu-mdr-compliance/" target=""><span>EU Medical Device Regulation</span><p>See the EU MDR solution and how it helps you uncover hidden compliance risks.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/dfars-compliance-solution/" target=""><span>DFARS Specialty Metals</span><p>Our solution will give you transparency needed to meet your DFARS requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/scip-compliance-solution/" target=""><span>SCIP</span><p>Meet submission obligations with a deep view of your supply chain.</p></a></li></ul></div> </div> 720 </div> 721 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 722 </li> 723 724 <li id="sub-menu-item" class="dropdown"> 725 <a href="https://www.assent.com/solutions/esg-supply-chain/" target=""> 726 Sustainability </a> 727 728 <div class="third-level"> 729 <div class="third-level--left"> 730 731 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 732 Sustainability </button> 733 734 <div id="top-list-item"><strong>Build Your Foundation with Our Sustainability Solution</strong><a href="https://www.assent.com/solutions/esg-supply-chain/" target="">See All Solutions</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/esg-reporting/" target=""><span>ESG Reporting</span><p>Deliver on your reporting needs with Assent ESG.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/eu-batteries-regulation/" target=""><span>EU Batteries Regulation</span><p>Jumpstart compliance and protect your EU market access. </p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/product-compliance/digital-product-passport/" target=""><span>Digital Product Passports</span><p>Create your product intelligence foundation for DPP requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/cbam/" target=""><span>CBAM</span>
734<p>Easily see and manage the embedded emissions data of your goods.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/eudr/" target=""><span>EUDR</span><p>Our AI-enhanced solution helps manufacturers meet deforestation-free requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/csrd/" target=""><span>CSRD</span><p>Confidently identify the entities and topics in your value chain that are most critical to compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/conflict-minerals-compliance-solution/" target=""><span>Conflict Minerals</span><p>Deep transparency into mineral sourcing.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/product-carbon-footprint-software/" target=""><span>Product Carbon Footprint (PCF)</span><p>Generate and scale PCFs across entire product portfolios.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/extended-minerals-compliance/" target=""><span>Extended Minerals (Cobalt + Mica)</span><p>Our complete responsible minerals solution, including cobalt and mica reporting.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/scdda/" target=""><span>Supply Chain Due Diligence Act </span><p>Meet your German Supply Chain Due Diligence Act (SCDDA) requirements with confidence.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/abac-compliance-solution/" target=""><span>ABAC</span><p>Grow better with anti-bribery, anti-corruption solutions.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-reporting/forced-labor/" target=""><span>Forced Labor</span><p>Uncover hidden forced labor risks in your supply chain.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/supplier-code-of-conduct/" target=""><span>Supplier Code of Conduct</span><p>Align suppliers with your values using our code of conduct solution.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/esg-supply-chain/supply-chain-supplier-diversity/" target=""><span>Supplier Diversity</span><p>The solution for tracking diversity in your supply chain, including small-businesses, minority ownership, and woman-owned enterprises.</p></a></li></ul></div> </div> 735 </div> 736 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 737 </li> 738 739 <li id="sub-menu-item" class="dropdown"> 740 <a href="https://www.assent.com/solutions/trade-compliance/" target=""> 741 Trade Compliance </a> 742 743 <div class="third-level"> 744 <div class="third-level--left"> 745 746 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 747 Trade Compliance </button> 748 749 <div id="top-list-item"><strong>Learn about our trade compliance capabilities and how it uncovers hidden risks and opportunities</strong><a href="https://www.assent.com/solutions/trade-compliance/" target="">See All Solutions</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/country-of-origin/" target=""><span>Country of Origin</span>
749<p>Country of origin tracking supply chain solutions.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/metal-sourcing/" target=""><span>Metal Sourcing</span><p>Verify the origin of your metals to avoid costly fines and delays.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/canada-eu-trade-agreement-compliance/" target=""><span>Canada-EU Trade Agreement (CETA)</span><p>Unlock supply chain transparency to mitigate trade risks.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/customs-codes-compliance/" target=""><span>HS/HTS Codes</span><p>A solution for managing customs codes for your products.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/international-trade-agreements/" target=""><span>International Trade Agreements</span><p>Protect global market access & leverage trade agreements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/usmca-solutions/" target=""><span>USMCA</span><p>Uncover hidden risks and opportunities associated with the USMCA.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/trade-compliance/export-classification/" target=""><span>Export Classification</span><p>Solutions for export classification code tracking.</p></a></li></ul></div> </div> 750 </div> 751 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 752 </li> 753 754 <li id="sub-menu-item" class="dropdown"> 755 <a href="https://www.assent.com/solutions/industry/" target=""> 756 By Industry </a> 757 758 <div class="third-level"> 759 <div class="third-level--left"> 760 761 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 762 By Industry </button> 763 764 <div id="top-list-item"><strong>Automated supply chain sustainability for smarter, sustainable growth.</strong><a href="https://www.assent.com/solutions/industry/" target="">See All Solutions</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/solutions/industry/medical-devices-supply-chain/" target=""><span>Medical Devices</span><p>Solutions for medical devices manufacturing.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/industry/industrial-supply-chain-solutions/" target=""><span>Industrial Equipment</span><p>Sustainability solutions for industrial equipment.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/industry/aerospace-supply-chain/" target=""><span>Aerospace & Defense</span><p>Sustainability solutions for aerospace and defense.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/industry/electronics-supply-chain/" target=""><span>Electronics</span><p>Solutions for the electronics industry, across compliance and ESG.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/industry/automotive-supply-chain-solutions/" target=""><span>Automotive</span><p>Supply chain sustainability for automotive.</p></a></li></ul></div> </div> 765 </div> 766 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 767 </li> 768 769 <li id="sub-menu-item" class="dropdown"> 770 <a href="https://www.assent.com/solutions/job-function/" target=""> 771 By Job Function </a> 772 773 <div class="third-level"> 774 <div class="third-level--left"> 775 776 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 777 By Job Function </button> 778 779 <div id="top-list-item"><strong>Product intelligence needed to embed compliance and sustainability into design and s
779ourcing decisions</strong><a href="https://www.assent.com/solutions/job-function/" target="">See All Solutions</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/engineering/" target=""><span>Engineering</span><p>How we support supply network engineers.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/quality/" target=""><span>Quality</span><p>How we support quality leaders.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/procurement/" target=""><span>Procurement</span><p>How we support procurement & supply network management.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/sustainability-leader/" target=""><span>Sustainability Leader</span><p>How we support supply chain sustainability leaders.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/supply-chain-leader/" target=""><span>Supply Chain Leader</span><p>How we support supply chain leaders.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/legal/" target=""><span>Legal</span><p>How we support legal counsel for supply chain compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/solutions/job-function/it-professional/" target=""><span>IT Professional </span><p>Enterprise-ready infrastructure for product intelligence.</p></a></li></ul></div> </div> 780 </div> 781 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 782 </li> 783 784 <li id="sub-menu-item" class=""> 785 <a href="https://www.assent.com/compare-assent/" target=""> 786 Why Switch to Assent </a> 787 788 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 789 </li> 790 </ul> 791 792 793 <div class="featured-content"> 794 <figure> 795 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 796 alt="" 797 height="2000" 798 width="3000" 799 loading="lazy" 800 > 801 </figure> 802 803 804 <div class="featured-promo-title"> 805 Meet the Assent Network for Manufacturers </div> 806 <a class="btn -white" 807 href="https://www.assent.com/asp/" 808 target=""> 809 Learn More </a> 810 </div> 811 812 813 </div> 814 </div> 815 </div> 816 </div> 817 818 </li><li class="dropdown-menu" target=""><a href="https://www.assent.com/capabilities/platform/">Network</a><button class="mobile-button next-page" type="button">Next</button> 819 <div class="mega-menu"> 820 <div class="container"> 821 <div class="mega-menu__inner"> 822 <div class="mega-menu__left"> 823 <div class="sub-menu-title"> 824 <button class="mobile-button prev-page">Main Menu</button> 825 <div class="sub-menu-title-text">Network</div> 826 </div> 827 <ul> 828 829 <li id="sub-menu-item" class="dropdown"> 830 <a href="https://www.assent.com/capabilities/platform/" target=""> 831 Software </a> 832 833 <div class="third-level"> 834 <div class="third-level--left"> 835 836 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 837 Software </button> 838 839 <div id="top-list-item"><strong>View details about our complete product intelligence network, including product material compliance, product sustainability, and responsible sourcing.</strong><a href="https://www.assent.com/capabilities/platform/" target="">Explore Now</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/asp/" target=""><span>The Assent Network</span><p>Say hello to the smarter, scalable approach to product compliance and supply chain sustainability management.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/network/distributor-experience/" target=""><span>The Distributor Experience</span><p>Centralize and automate compliance requests across your product catalog so you can respond faster and lower revenue risk.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/asp/request-manager/" target=""><span>Request Manager</span><p>Unify every customer compliance and sustainability request in one AI-powered platform - helping you respond faster, reduce manual work, and strengthen customer trust.</p></a></li></ul></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/platform/supplier-screening/" target=""><span>Enhanced Supplier Screening</span><p>Evaluate and report on hidden risks in your supply chain.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/platform/supply-chain-security/" target=""><span>Data Information & Security</span>
839<p>Learn about our data security protocols, to keep your information safe.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/platform/supply-chain-integrations/" target=""><span>Enterprise Integrations</span><p>View our integrations with SAP, PTC Windchill, and other standard APIs.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/platform/capabilities-platform-supply-chain-reporting/" target=""><span>Reporting & Data</span><p>Reporting and data capabilities you need to meet your requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/why-assent/" target=""><span>Why Assent</span><p>Assent is on a mission to help manufacturers build deeply and durably good products. </p></a></li></ul></div> </div> 840 </div> 841 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 842 </li> 843 844 <li id="sub-menu-item" class="dropdown"> 845 <a href="https://www.assent.com/capabilities/services/" target=""> 846 Services </a> 847 848 <div class="third-level"> 849 <div class="third-level--left"> 850 851 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 852 Services </button> 853 854 <div id="top-list-item"><strong>View details about our complete product intelligence network, including product material compliance, product sustainability, and responsible sourcing.</strong><a href="https://www.assent.com/capabilities/services/" target="">Explore Now</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/services/supplier-engagement/" target=""><span>Supplier Engagement</span><p>Education, data collection, and technical support for suppliers.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/services/sustainability-compliance-program-management/" target=""><span>Program Management</span><p>Managed services with dedicated support from world-class experts.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/capabilities/services/advisory-services/" target=""><span>Advisory Services</span><p>View our integrations with SAP, PTC Windchill, and other standard APIs.</p></a></li></ul></div> </div> 855 </div> 856 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 857 </li> 858 859 <li id="sub-menu-item" class=""> 860 <a href="https://www.assent.com/capabilities/expertise/" target=""> 861 Regulatory Experts </a> 862 863 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 864 </li> 865 866 <li id="sub-menu-item" class=""> 867 <a href="https://www.assent.com/capabilities/platform/pricing/" target=""> 868 Pricing </a> 869 870 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 871 </li> 872 873 <li id="sub-menu-item" class=""> 874 <a href="https://www.assent.com/capabilities/platform/enterprise-license-agreement/" target=""> 875 Enterprise License Agreement </a> 876 877 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 878 </li> 879 </ul> 880 881 882 <div class="featured-content"> 883 <figure> 884 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 885 alt="" 886 height="2000" 887 width="3000" 888 loading="lazy" 889 > 890 </figure> 891 892 893 <div class="featured-promo-title"> 894 Meet the Assent Network for Manufacturers </div> 895 <a class="btn -white" 896 href="https://www.assent.com/asp/" 897 target=""> 898 Learn More </a> 899 </div> 900 901 902 </div> 903 </div> 904 </div> 905 </div> 906 907 </li><li class="dropdown-menu" target=""><a href="https://www.assent.com/why-assent/">Why Assent</a><button class="mobile-button next-page" type="button">Next</button> 908 <div class="mega-menu"> 909 <div class="container"> 910 <div class="mega-menu__inner"> 911 <div class="mega-menu__left">
912 <div class="sub-menu-title"> 913 <button class="mobile-button prev-page">Main Menu</button> 914 <div class="sub-menu-title-text">Why Assent</div> 915 </div> 916 <ul> 917 918 <li id="sub-menu-item" class=""> 919 <a href="https://www.assent.com/why-assent/" target=""> 920 Why Assent </a> 921 922 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 923 </li> 924 925 <li id="sub-menu-item" class=""> 926 <a href="https://www.assent.com/compare-assent/" target=""> 927 How Assent Compares </a> 928 929 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 930 </li> 931 932 <li id="sub-menu-item" class=""> 933 <a href="https://www.assent.com/capabilities/expertise/" target=""> 934 Our Expertise </a> 935 936 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 937 </li> 938 </ul> 939 940 941 <div class="featured-content"> 942 <figure> 943 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 944 alt="" 945 height="2000" 946 width="3000" 947 loading="lazy" 948 > 949 </figure> 950 951 952 <div class="featured-promo-title"> 953 Meet the Assent Network for Manufacturers </div> 954 <a class="btn -white" 955 href="https://www.assent.com/asp/" 956 target=""> 957 Learn More </a> 958 </div> 959 960 961 </div> 962 </div> 963 </div> 964 </div> 965 966 </li><li class="dropdown-menu" target=""><a href="https://www.assent.com/company/our-customers/customer-case-study-videos/">Customer Stories</a><button class="mobile-button next-page" type="button">Next</button> 967 <div class="mega-menu"> 968 <div class="container"> 969 <div class="mega-menu__inner"> 970 <div class="mega-menu__left"> 971 <div class="sub-menu-title"> 972 <button class="mobile-button prev-page">Main Menu</button> 973 <div class="sub-menu-title-text">Customer Stories</div> 974 </div> 975 <ul> 976 977 <li id="sub-menu-item" class=""> 978 <a href="https://www.assent.com/company/our-customers/" target=""> 979 Our Customers </a> 980 981 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 982 </li> 983 984 <li id="sub-menu-item" class=""> 985 <a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=case-study&search_text=" target=""> 986 Case Studies </a> 987 988 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 989 </li> 990 991 <li id="sub-menu-item" class=""> 992 <a href="https://www.assent.com/company/our-customers/customer-case-study-videos/" target=""> 993 Success Stories </a> 994 995 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 996 </li> 997 </ul> 998 999 1000 <div class="featured-content"> 1001 <figure> 1002 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 1003 alt="" 1004 height="2000" 1005 width="3000" 1006 loading="lazy" 1007 > 1008 </figure> 1009 1010 1011 <div class="featured-promo-title"> 1012 Meet the Assent Network for Manufacturers </div> 1013 <a class="btn -white" 1014 href="https://www.assent.com/asp/" 1015 target=""> 1016 Learn More </a> 1017 </div> 1018 1019 1020 </div> 1021 </div> 1022 </div> 1023 </div> 1024 1025 </li><li class="dropdown-menu" target=""><a href="https://www.assent.com/resources/content-hub/">Resources </a><button class="mobile-button next-page" type="button">Next</button> 1026 <div class="mega-menu"> 1027 <div class="container"> 1028 <div class="mega-menu__inner"> 1029 <div class="mega-menu__left">
1030 <div class="sub-menu-title"> 1031 <button class="mobile-button prev-page">Main Menu</button> 1032 <div class="sub-menu-title-text">Resources </div> 1033 </div> 1034 <ul> 1035 1036 <li id="sub-menu-item" class="dropdown"> 1037 <a href="https://www.assent.com/resources/content-hub/" target=""> 1038 Content Hub </a> 1039 1040 <div class="third-level"> 1041 <div class="third-level--left"> 1042 1043 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1044 Content Hub </button> 1045 1046 <div id="top-list-item"><strong>Interactive Tools, Webinars, Whitepapers, Guides and eBooks.</strong><a href="https://www.assent.com/resources/content-hub/" target="">Visit the Content Hub</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/supply-chain-risk-management/assessment-tool/" target=""><span>Supply Chain Risk Assessment Tool</span><p>Supply Chain Risk Assessment Tool for Complex Manufacturers. Take the Assessment</p></a></li></ul></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=interactive-tool&search_text=&filter_order=" target=""><span>Interactive Tools</span><p>Tools for understanding your requirements, risks, and our solutions.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=guide&search_text=&filter_order=" target=""><span>Guides</span><p>Get up-to-date information on constantly evolving topics.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=webinar&search_text=&filter_order=" target=""><span>Webinars</span><p>Learn directly from experts on wide-ranging topics.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=whitepaper&search_text=&filter_order=" target=""><span>Whitepapers</span><p>Explore complex supply chain sustainability topics.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=ebook&search_text=&filter_order=" target=""><span>Ebooks</span><p>Keep on top of existing or emerging regulations and trends.</p></a></li></ul></div> </div> 1047 </div> 1048 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1049 </li> 1050 1051 <li id="sub-menu-item" class="dropdown"> 1052 <a href="https://www.assent.com/resources/knowledge-center/" target=""> 1053 Knowledge Center </a> 1054 1055 <div class="third-level"> 1056 <div class="third-level--left"> 1057 1058 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1059 Knowledge Center </button> 1060 1061 <div id="top-list-item"><strong>View details about our complete product intelligence network, including product material compliance, product sustainability, and responsible sourcing.</strong><a href="https://www.assent.com/resources/knowledge-center/" target="">See Regulatory Templates</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/" target=""><span>Knowledge Center</span><p>Access the Assent Knowledge Center, the leading regulatory resource for supply chain management, from our team of experts.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/pfas-compliance/" target=""><span>PFAS</span><p>Per- and polyfluoroalkyl substances (PFAS)</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/?pager=1&filter=1&tag%5B%5D=conflict-minerals&category%5B%5D=knowledge-article&search_text=&filter_order=" target=""><span>Conflict Minerals</span>
1061<p>Deep transparency into mineral sourcing.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/?pager=1&filter=1&tag%5B%5D=esg&category%5B%5D=knowledge-article&search_text=&filter_order=" target=""><span>ESG</span><p>Environmental, social, and governance (ESG) issues.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-article/what-is-the-scdda/" target=""><span>SCDDA</span><p>Access the Assent Knowledge Center, the leading regulatory resource for supply chain management, from our team of experts.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/csrd-reporting/" target=""><span>CSRD</span><p>Streamline your reporting process to comply with the EU CSRD.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/?pager=1&filter=1&tag%5B%5D=reach&category%5B%5D=knowledge-article&search_text=&filter_order=" target=""><span>REACH</span><p>
1061Supply chain transparency needed for compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/?pager=1&filter=1&tag%5B%5D=rohs&category%5B%5D=knowledge-article&search_text=&filter_order=" target=""><span>RoHS</span><p>Deep-map your supply chain to streamline compliance.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/resources/knowledge-center/?pager=1&filter=1&tag%5B%5D=tsca&category%5B%5D=knowledge-article&search_text=&filter_order=" target=""><span>TSCA</span><p>Grow better with our TSCA compliance solution.</p></a></li></ul></div> </div> 1062 </div> 1063 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1064 </li> 1065 1066 <li id="sub-menu-item" class="dropdown"> 1067 <a href="https://www.assent.com/blog/" target=""> 1068 Blog </a> 1069 1070 <div class="third-level"> 1071 <div class="third-level--left"> 1072 1073 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1074 Blog </button> 1075 1076 <div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/blog/" target=""><span>Blog</span><p>Read Assentâs blog for regulatory updates, supply chain sustainability advice, best practices, and more.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=supply-chain-sustainability&search_text=&filter_order=" target=""><span>Supply Chain Sustainability</span><p>Learn everything you need to know about supply chain sustainability.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=esg&search_text=&filter_order=" target=""><span>ESG</span><p>Discover how ESG and your supply chain are connected.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=responsible-minerals&search_text=&filter_order=" target=""><span>Responsible Minerals</span><p>Keep up with changing responsible minerals expectations.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=product-compliance&search_text=&filter_order=" target=""><span>Product Compliance</span><p>Get clear educational resources on key product compliance regulations.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=trade-compliance&search_text=&filter_order=" target=""><span>Trade Compliance</span><p>Learn best practices for managing your trade requirements.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/blog/?pager=1&filter=1&tag%5B%5D=reach&search_text=&filter_order=" target=""><span>REACH</span><p>Get an expert breakdown of the REACH Regulation.</p></a></li></ul></div> </div> 1077 </div> 1078 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1079 </li> 1080 1081 <li id="sub-menu-item" class=""> 1082 <a href="https://www.assent.com/events-webinars/" target=""> 1083 Events & Webinars </a> 1084 1085 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1086 </li> 1087 1088 <li id="sub-menu-item" class="dropdown"> 1089 <a href="https://www.assent.com/resources/knowledge-center/#regulatory_templates" target=""> 1090 Training Courses </a> 1091 1092 <div class="third-level"> 1093 <div class="third-level--left"> 1094 1095 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1096 Training Courses </button> 1097 1098 <div id="top-list-item"><strong>Leverage industry-standard templates for reporting on responsible sourcing, human trafficking and modern slavery.</strong><a href="https://www.assent.com/resources/knowledge-center/#regulatory_templates" target="">See Regulatory Templates</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/training-courses/" target=""><span>Assent University</span>
1098<p>Access comprehensive educational resources to better understand your business and regulatory requirements, and how to build your programs to mitigate supply chain risk effectively.</p></a></li></ul></div> </div> 1099 </div> 1100 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1101 </li> 1102 </ul> 1103 1104 1105 <div class="featured-content"> 1106 <figure> 1107 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 1108 alt="" 1109 height="2000" 1110 width="3000" 1111 loading="lazy" 1112 > 1113 </figure> 1114 1115 1116 <div class="featured-promo-title"> 1117 Meet the Assent Network for Manufacturers </div> 1118 <a class="btn -white" 1119 href="https://www.assent.com/asp/" 1120 target=""> 1121 Learn More </a> 1122 </div> 1123 1124 1125 </div> 1126 </div> 1127 </div> 1128 </div> 1129 1130 </li><li class="dropdown-menu" target=""><a href="https://www.assent.com/company/our-story/">Company</a><button class="mobile-button next-page" type="button">Next</button> 1131 <div class="mega-menu"> 1132 <div class="container"> 1133 <div class="mega-menu__inner"> 1134 <div class="mega-menu__left"> 1135 <div class="sub-menu-title"> 1136 <button class="mobile-button prev-page">Main Menu</button> 1137 <div class="sub-menu-title-text">Company</div> 1138 </div> 1139 <ul> 1140 1141 <li id="sub-menu-item" class="dropdown"> 1142 <a href="https://www.assent.com/company/our-story/" target=""> 1143 About Us </a> 1144 1145 <div class="third-level"> 1146 <div class="third-level--left"> 1147 1148 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1149 About Us </button> 1150 1151 <div id="top-list-item"><strong>Learn how we became the top sustainability solution for leading manufacturers.</strong><a href="https://www.assent.com/company/our-story/" target="">Discover Assent</a></div><div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/company/sustainability/" target=""><span>Sustainability At Assent</span><p>Read about our ESG journey and access our corporate sustainability reports.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/company/leadership/" target=""><span>Leadership Team</span><p>Meet the team that helped Assent become the leader in supply chain sustainability.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/why-assent/" target=""><span>Why Assent</span><p>See the leading manufacturers working with us to achieve supply chain sustainability.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/innovation-announcements/" target=""><span>Innovation Announcements</span><p>Discover our latest innovations that revolutionize supply chain sustainability and streamline your responsibilities.</p></a></li></ul></div> </div> 1152 </div> 1153 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1154 </li> 1155 1156 <li id="sub-menu-item" class="dropdown"> 1157 <a href="https://www.assent.com/newsroom/" target=""> 1158 News & Information </a> 1159 1160 <div class="third-level"> 1161 <div class="third-level--left"> 1162 1163 <button data-target="#sub-menu-item" class="mobile-button prev-page"> 1164 News & Information </button> 1165 1166 <div class="third-level--list"><ul><li id="third-level-list-item"><a href="https://www.assent.com/newsroom/" target=""><span>Newsroom</span><p>Read the latest news about Assent from around the world.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/company/alliances/" target=""><span>Alliances & Partnerships</span><p>Read more about the organizations and partners working with us to create supply chain sustainability.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/company/certifications/" target=""><span>Certifications & Recognition</span>
1166<p>View our industry and technology certifications.</p></a></li><li id="third-level-list-item"><a href="https://www.assent.com/company/contact-us/" target=""><span>Contact Us</span><p>Find out how to get in touch with us.</p></a></li></ul></div> </div> 1167 </div> 1168 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1169 </li> 1170 1171 <li id="sub-menu-item" class=""> 1172 <a href="https://www.assent.com/company/careers/" target=""> 1173 Careers </a> 1174 1175 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1176 </li> 1177 1178 <li id="sub-menu-item" class=""> 1179 <a href="https://www.assent.com/customer-support/" target=""> 1180 Support </a> 1181 1182 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1183 </li> 1184 1185 <li id="sub-menu-item" class=""> 1186 <a href="https://www.assent.com/company/contact-us/" target=""> 1187 Contact Us </a> 1188 1189 <button data-target="#sub-menu-item" class="mobile-button next-page" type="button">Next</button> 1190 </li> 1191 </ul> 1192 1193 1194 <div class="featured-content"> 1195 <figure> 1196 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 1197 alt="" 1198 height="2000" 1199 width="3000" 1200 loading="lazy" 1201 > 1202 </figure> 1203 1204 1205 <div class="featured-promo-title"> 1206 Meet the Assent Network for Manufacturers </div> 1207 <a class="btn -white" 1208 href="https://www.assent.com/asp/" 1209 target=""> 1210 Learn More </a> 1211 </div> 1212 1213 1214 </div> 1215 </div> 1216 </div> 1217 </div> 1218 1219 </li></ul><div class="mobile-display"> 1220 <div class="featured-content"> 1221 <figure> 1222 <img src="https://www.assent.com/wp-content/uploads/2025/03/asp-hero-1.webp" 1223 alt="" 1224 height="2000" 1225 width="3000" 1226 loading="lazy" 1227 > 1228 </figure> 1229 1230 1231 <div class="featured-promo-title"> 1232 Meet the Assent Network for Manufacturers </div> 1233 <a class="btn -white" 1234 href="https://www.assent.com/asp/" 1235 target=""> 1236 Learn More </a> 1237 </div> 1238 1239 <a href="https://www.assent.com/capabilities/platform/pricing/" class="get-a-quote-btn">Pricing</a><div class="lang-item"><select id="lang_sel" class="lang-select" onchange="if(this.value){this.options[this.selectedIndex].selected=true;window.location.href=this.value;}"><option value="" disabled selected>Select Language</option><option value="https://www.assent.com/de/loesungen/produktkonformitaet/">Deutsch</option><option value="https://www.assent.com/solutions/product-compliance/">English</option><option value="https://www.assent.com/fr/solutions/conformite-produits/">Français</option><option value="https://www.assent.com/it/soluzioni/conformita-del-prodotto/">Italiano</option></select></div></div></nav><div class="header-cta"><a href="https://www.assent.com/capabilities/platform/pricing/" class="btn alt-btn">Pricing</a><a href="#" class="btn Book-A-Demo" target="">Book a Demo</a></div></div> 1240 <!-- hamburger --> 1241 <a href="javascript:;" data-label="Toggle Menu" aria-label="Menu" class="hamburger"><span></span></a></div></div> 1242 1243 </header><div class="main-content"> 1244<!-- WYSIWYG --> 1245 <section class="wysiwyg-section" id="promo_card"> 1246 <div class="container"><div class="promo-wrapper"> 1247<p class="promo-heading">Explore our end-to-end solution for manufacturers to mitigate PFAS risks across supply chains â<a class="btn-link" href="https://www.assent.com/solutions/product-compliance/pfas/?itm_source=website&itm_medium=banner&itm_campaign=always-on&itm_term=promo-banner-homepage&itm_content=solution-page&itm_channel=web&itm_region=null">Get Started</a></p> 1248</div> 1249</div> 1250 </section> 1251 1252 1253<style> 1254#promo_card.wysiwyg-section .container{ 1255 padding: 0; 1256 --container-width: 97.25rem; 1257 max-width: 97.25rem; 1258 display: none; 1259} 1260 1261#promo_card{ 1262 background-color: #ffe587; 1263} 1264 .promo-heading{ 1265 padding: 0px 5px; 1266 color: #215273; 1267 margin-bottom: 0; 1268 font-family: 'Roboto', 'Arial', sans-serif; 1269 font-weight: 500; 1270 font-size: 1rem; 1271} 1272.promo-wrapper { 1273text-align: center; 1274} 1275.promo-wrapper .btn-link{ 1276 color:#813679; 1277 text-decoration:underline; 1278 margin-left: 5px; 1279} 1280 1281@media (max-width: 991px) { 1282.promo-wrapper { 1283 display: flex; 1284 align-items: center; 1285 justify-content: center; 1286 text-align: center; 1287} 1288 1289#promo_card.wysiwyg-section .container { 1290 padding-left: 2.19rem; 1291 padding-right: 2.19rem; 1292} 1293} 1294 1295@media (max-width: 1599px) { 1296 .promo-heading { 1297 padding: 0px 10px; 1298 } 1299} 1300</style> 1301 1302 1303<!-- banner area part --> 1304 <section class="generic-hero with-media navy fade-with-triangles " ><div class="row hero-wrap"> 1305 <div class="cell-7 hero-left"><div class="hero-left-bg"></div><div class="hero-left-inner d-flex align-items-center"><div class="breadcrumbs"> 1306 <ul><li><a href="https://www.assent.com/solutions/">Solutions</a></li><li><span>Product Compliance</span></li></ul> 1307 </div><div class="gh-content"><h1 class="h1">Product Compliance Solutions: The Foundation For Deeply Sustainable Enterprises</h1><p>Supply chains werenât built with sustainability and product compliance in mind. Assentâs solutions helps you get ahead of regulations to set a rock-solid foundation for supply chain sustainability. </p> 1308<div class="btn-wrap"><a href="#" class="btn Book-A-Demo" target="">Book a Demo</a><a href="https://www.assent.com/solutions/product-compliance/tour#step1" target="" class="btn-link -white">Start Product Tour</a></div></div></div> 1309 </div><div class="cell-5 hero-right"><div class="hero-image"> 1310 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-tires-braided.jpeg" alt="Abstract pattern created by braided tires"> 1311 </div></div></div> 1312 </section> 1313 1314 1315<style> 1316 1317 .main-container { overflow: hidden } 1318 1319 .table-of-contents-container { 1320 position: relative; 1321 } 1322 1323 .table-of-contents { 1324 min-height: 240px; 1325 position: absolute; 1326 top: 85px; 1327 right: 0; 1328 transform: translateX(230px); 1329 z-index: 995; 1330 width: 230px; 1331 border-radius: 0 0 0 4px; 1332 background: #FFF; 1333 box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.10), 0 0 40px 0 rgba(0, 0, 0, 0.10); 1334 box-sizing: border-box;
1335 transition: .2s transform ease-out; 1336 } 1337 1338 .table-of-contents.fixed { 1339 top: 25vh; 1340 position: fixed; 1341 } 1342 1343 .table-of-contents:is(:hover, .default) { 1344 transform: translateX(0); 1345 } 1346 1347 .table-of-contents ul.table-of-contents-list { 1348 list-style-type: none; 1349 padding: 0 0 12px 0; 1350 margin: 0; 1351 } 1352 1353 .table-of-contents ul.table-of-contents-list li { 1354 width: 100%; 1355 margin: 0; 1356 padding: 0; 1357 } 1358 1359 .table-of-contents ul.table-of-contents-list li a { 1360 position: relative; 1361 display: block; 1362 color: #7A97AB; 1363 font-size: 20px; 1364 font-weight: 400; 1365 line-height: 150%; 1366 letter-spacing: 0; 1367 text-decoration: none; 1368 box-sizing: content-box; 1369 padding: 10px 18px; 1370 transition: .2s ease; 1371 overflow: hidden; 1372 text-overflow: ellipsis; 1373 white-space: nowrap; 1374 max-width: 100%; 1375 } 1376 1377 .table-of-contents ul.table-of-contents-list li a:hover { 1378 background-color: #F5F5F7; 1379 color: #4D758F; 1380 } 1381 1382 .table-of-contents ul.table-of-contents-list li a svg { 1383 position: absolute; 1384 top: 50%; 1385 left: 18px; 1386 transform: translateY(-50%); 1387 opacity: 0; 1388 transition: .2s opacity ease; 1389 } 1390 1391 .table-of-contents ul.table-of-contents-list li a.active svg { 1392 opacity: 1; 1393 } 1394 1395 .table-of-contents .table-of-contents-bookmark { 1396/* writing-mode: sideways-lr; */ 1397 writing-mode: vertical-rl; 1398 transform: scale(-1); 1399 position: absolute; 1400 display: flex; 1401 align-items: center; 1402 justify-content: center; 1403 gap: 8px; 1404 top: 0; 1405 left: -50px; 1406 width: 30px; 1407 text-orientation: mixed; 1408 padding: 20px 10px; 1409 background-color: #215273; 1410 border-radius: 0 8px 8px 0; 1411 box-shadow: 0 0 40px rgba(0, 0, 0, 0.10); 1412 user-select: none; 1413 color: #FFF; 1414 font-family: Roboto, sans-serif; 1415 font-size: 18px; 1416 font-style: normal; 1417 font-weight: 600; 1418 line-height: 150%; 1419 box-sizing: content-box; 1420 } 1421 1422 .table-of-contents ul.table-of-contents-list li a.active { 1423 color: #215273; 1424 font-weight: 700; 1425 } 1426 1427 @media (min-width: 768px) { 1428 .table-of-contents .table-of-contents-mobile-header { 1429 display: none; 1430 } 1431 1432 .table-of-contents ul.table-of-contents-list li a.active { 1433 font-size: 24px; 1434 padding-left: 36px; 1435 } 1436 } 1437 1438 @media(max-width: 767px) { 1439 1440 body { 1441 --adminMenuHeight: 0px; 1442 } 1443 1444 body.logged-in { 1445 --adminMenuHeight: 46px; 1446 } 1447 1448 .table-of-contents-container { 1449 height: 50px; 1450 min-height: 50px; 1451 } 1452 1453 .table-of-contents { 1454 min-height: 0; 1455 position: relative; 1456 width: 100%; 1457 transform: none; 1458 border-top: 1px #E5E5E9 solid; 1459 z-index: 100; 1460 top: 0; 1461 } 1462 1463 .table-of-contents.fixed { 1464 position: fixed; 1465 top: calc(var(--primaryMenuHeight) + var(--adminMenuHeight)); 1466 left: 0; 1467 } 1468 1469 .table-of-contents.fixed.offset-nav { 1470 margin-top: 0; 1471 transition: .4s margin-top; 1472 } 1473 1474 .table-of-contents ul.table-of-contents-list li a svg { 1475 display: none; 1476 } 1477 1478 .table-of-contents .table-of-contents-bookmark { 1479 display: none; 1480 } 1481 1482 .table-of-contents ul.table-of-contents-list { 1483 max-height: 0; 1484 overflow: hidden; 1485 transition: max-height 1s cubic-bezier(0, 1, 0, 1); 1486 padding: 0; 1487 } 1488 1489 .table-of-contents ul.table-of-contents-list.mobile-open { 1490 max-height: 2000px; 1491 transition: max-height 1s ease-out; 1492 padding: 0 0 12px 0; 1493 } 1494 1495 .table-of-contents .table-of-contents-mobile-header { 1496 display: flex; 1497 justify-content: space-between; 1498 align-items: center; 1499 padding: 10px 18px; 1500 color: #215273; 1501 font-family: Roboto, sans-serif; 1502 font-size: 20px; 1503 font-style: normal; 1504 font-weight: 700; 1505 line-height: 150%; 1506 border: none; 1507 background-color: white; 1508 width: 100%; 1509 } 1510 1511 .main-container:has(.table-of-contents.fixed) .main-header { 1512 box-shadow: none; 1513 } 1514 1515 } 1516</style> 1517 1518 1519<section class="table-of-contents-container"> 1520 <div class="table-of-contents default"> 1521 <div class="table-of-contents-bookmark"> 1522 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none"> 1523 <path fill-rule="evenodd" clip-rule="evenodd" d="M2.33329 3.00016L2.33329 16.3335C2.33329 16.5545 2.42109 16.7665 2.57737 16.9228C2.73365 17.079 2.94561 17.1668 3.16663 17.1668L14.8333 17.1668C15.0543 17.1668 15.2663 17.079 15.4225 16.9228C15.5788 16.7665 15.6666 16.5545 15.6666 16.3335L15.6666 3.00016C15.6666 2.77915 15.5788 2.56719 15.4225 2.41091C15.2663 2.25463 15.0543 2.16683 14.8333 2.16683L3.16663 2.16683C2.94561 2.16683 2.73365 2.25463 2.57737 2.41091C2.42109 2.56719 2.33329 2.77915 2.33329 3.00016ZM0.666626 16.3335C0.666626 16.9965 0.930018 17.6324 1.39886 18.1013C1.8677 18.5701 2.50358 18.8335 3.16663 18.8335L14.8333 18.8335C15.4963 18.8335 16.1322 18.5701 16.6011 18.1013C17.0699 17.6324 17.3333 16.9965 17.3333 16.3335L17.3333 3.00016C17.3333 2.33712 17.0699 1.70124 16.6011 1.2324C16.1322 0.763555 15.4963 0.500163 14.8333 0.500163L3.16663 0.500164C2.50358 0.500164 1.8677 0.763555 1.39886 1.2324C0.930017 1.70124 0.666625 2.33712 0.666625 3.00016L0.666626 16.3335ZM4.83329 14.6668L4.83329 13.0002L6.49996 13.0002L6.49996 14.6668L4.83329 14.6668ZM4.83329 10.5002C4.83329 10.7212 4.92109 10.9331 5.07737 11.0894C5.23365 11.2457 5.44561 11.3335 5.66663 11.3335C5.88764 11.3335 6.0996 11.2457 6.25588 11.0894C6.41216 10.9331 6.49996 10.7212 6.49996 10.5002L6.49996 5.50016C6.49996 5.27915 6.41216 5.06
1523719 6.25588 4.91091C6.0996 4.75463 5.88764 4.66683 5.66663 4.66683C5.44561 4.66683 5.23365 4.75463 5.07737 4.91091C4.92109 5.06719 4.83329 5.27915 4.83329 5.50016L4.83329 10.5002ZM8.16663 13.0002L8.16663 14.6668L9.83329 14.6668L9.83329 13.0002L8.16663 13.0002ZM8.99996 11.3335C8.77894 11.3335 8.56698 11.2457 8.4107 11.0894C8.25442 10.9331 8.16663 10.7212 8.16663 10.5002L8.16663 5.50016C8.16663 5.27915 8.25442 5.06719 8.4107 4.91091C8.56698 4.75463 8.77894 4.66683 8.99996 4.66683C9.22097 4.66683 9.43293 4.75463 9.58921 4.91091C9.74549 5.06719 9.83329 5.27915 9.83329 5.50016L9.83329 10.5002C9.83329 10.7212 9.74549 10.9331 9.58921 11.0894C9.43293 11.2457 9.22097 11.3335 8.99996 11.3335ZM11.5 13.0002L11.5 14.6668L13.1666 14.6668L13.1666 13.0002L11.5 13.0002ZM12.3333 11.3335C12.1123 11.3335 11.9003 11.2457 11.744 11.0894C11.5878 10.9331 11.5 10.7212 11.5 10.5002L11.5 5.50016C11.5 5.27915 11.5878 5.06719 11.744 4.91091C11.9003 4.75463 12.1123 4.66683 12.3333 4.66683C12.5543 4.66683 12.7663 4.75463 12.9225 4.91091C13.0788 5.06719 13.1666 5.27915 13.1666 5.50016L13.1666 10.5002C13.1666 10.7212 13.0788 10.9331 12.9225 11.0894C12.7663 11.2457 12.5543 11.3335 12.3333 11.3335Z" fill="white"/> 1524 </svg> 1525 1526 <span>Jump to a section</span> 1527 </div> 1528 1529 <button class="table-of-contents-mobile-header"> 1530 <span>Jump to a section</span> 1531 1532 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="10" viewBox="0 0 16 10" fill="none"> 1533 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.54772 9.44286L15.3568 2.63374L13.6549 0.931763L7.69673 6.88989L1.7386 0.931763L0.036621 2.63374L6.84574 9.44286C7.07146 9.66851 7.37756 9.79528 7.69673 9.79528C8.01589 9.79528 8.322 9.66851 8.54772 9.44286Z" fill="#00A398"/> 1534 </svg> 1535 </button> 1536 1537 <ul class="table-of-contents-list"> 1538 <li> 1539 <a href="#overview"> 1540 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1541 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1542 </svg> 1543 1544 Overview </a> 1545 </li> 1546 <li> 1547 <a href="#customers"> 1548 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1549 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1550 </svg> 1551 1552 Our Customers </a> 1553 </li> 1554 <li> 1555 <a href="#guide"> 1556 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1557 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1558 </svg> 1559 1560 Featured Resource </a> 1561 </li> 1562 <li> 1563 <a href="#capabilities"> 1564 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1565 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1566 </svg> 1567 1568 Capabilities </a> 1569 </li> 1570 <li> 1571 <a href="#assent_advantage"> 1572 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1573 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1574 </svg> 1575 1576 Why Assent </a> 1577 </li> 1578 <li> 1579 <a href="#resources"> 1580 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1581 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1582 </svg> 1583 1584 Resources </a> 1585 </li> 1586 <li> 1587 <a href="#get_started"> 1588 <svg class="table-of-contents-icon" xmlns="http://www.w3.org/2000/svg" width="9" height="17" viewBox="0 0 9 17" fill="none"> 1589 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.5111 7.64901L1.70198 0.839898L0 2.54188L5.95813 8.5L0 14.4581L1.70198 16.1601L8.5111 9.35099C8.73675 9.12527 8.86351 8.81917 8.86351 8.5C8.86351 8.18084 8.73675 7.87473 8.5111 7.64901Z" fill="#00A398"/> 1590 </svg> 1591 1592 Get Started </a> 1593 </li> 1594 </ul> 1595 </div> 1596</section> 1597
1598<script type="text/javascript"> 1599document.addEventListener("DOMContentLoaded", () => { 1600 1601 const toc = document.querySelector('.table-of-contents'); 1602 const mobileHeader = toc.querySelector('.table-of-contents-mobile-header'); 1603 const tableOfContentList = toc.querySelector('ul'); 1604 const hashMatch = document.querySelector('.table-of-contents-list a[href="' + window.location.hash + '"]'); 1605 1606 let firstVisit = false; 1607 let originalTocPos = toc.getBoundingClientRect().top; 1608 let active; 1609 1610 function removeActiveLink() { 1611 active.classList.remove('active'); 1612 active = null; 1613 } 1614 1615 function setActiveLink(link) { 1616 if (active) removeActiveLink(); 1617 1618 link.classList.add('active'); 1619 active = link; 1620 } 1621 1622 function updateTableOfContents() { 1623 const sections = document.querySelectorAll("section[id]"); 1624 1625 const observer = new IntersectionObserver((entries) => { 1626 entries.forEach(entry => { 1627 if (entry.isIntersecting) { 1628 const targetId = entry.target.getAttribute("id"); 1629 let tableOfContentsMatch = document.querySelector('.table-of-contents-list a[href="#' + targetId + '"]'); 1630 1631 if (tableOfContentsMatch) {
1632 setActiveLink(tableOfContentsMatch); 1633 } 1634 } 1635 }); 1636 }, { 1637 root: null, // Observe relative to viewport 1638 rootMargin: "0px 0px -10% 0px", // Adjust for earlier highlighting, reduced from -30% on aug 12 1639 threshold: 0.1 // Trigger when at least 50% of section is visible, reduced from 0.3 on aug 12 1640 }); 1641 1642 sections.forEach(section => observer.observe(section)); 1643 } 1644 1645 function checkPosition() { 1646 1647 const wpadminbar = document.getElementById('wpadminbar'); 1648 1649 let scrollTop = document.documentElement.scrollTop; 1650 1651 let scrollDistance = scrollTop + document.querySelector('.main-header').offsetHeight + 33; 1652 1653 if (window.matchMedia("(min-width: 767px)").matches) { 1654 scrollDistance = scrollTop + (window.innerHeight / 4); 1655 } 1656 1657 //if (wpadminbar) { scrollDistance += wpadminbar.offsetHeight; } 1658 1659 if (originalTocPos <= scrollDistance) { 1660 toc.classList.add('fixed'); 1661 if (!firstVisit) { 1662 firstVisit = true; 1663 setTimeout(function () { 1664 toc.classList.remove('default'); 1665 }, 250); //wayne requested, aug 12 1666 } 1667 } else { 1668 toc.classList.remove('fixed'); 1669 } 1670 1671 updateTableOfContents(); 1672 } 1673 1674 if (hashMatch) { setActiveLink(hashMatch); } 1675 1676 mobileHeader.addEventListener('click', (e) => { 1677 e.preventDefault(); 1678 tableOfContentList.classList.toggle('mobile-open'); 1679 }); 1680 1681 tableOfContentList.querySelectorAll('a').forEach((tableOfContentItem) => { 1682 tableOfContentItem.addEventListener('click', () => { 1683 if (tableOfContentList.classList.contains('mobile-open')) { 1684 tableOfContentList.classList.remove('mobile-open'); 1685 } 1686 }); 1687 }); 1688 1689 window.addEventListener('scroll', checkPosition ); 1690 1691 window.addEventListener('load', checkPosition() ); 1692 1693});; 1694</script>
1694 1695 1696 1697 1698<div style="height:64px" aria-hidden="true" class="wp-block-spacer"></div> 1699 1700 1701 1702<style>.hidden-quick-links-grid { display: none; } </style> 1703 1704 1705 1706<section class="quick-links-grid hidden-quick-links-grid"> 1707 <div class="container modern"> 1708 <div class="row"><div class="cell-lg-5"> 1709 <div class="qlg-heading pr-xl-90"><h2 class="h2">Discover Solutions for Reliable Product Compliance Data</h2></div> 1710 </div><div class="cell-lg-7"> 1711 <div class="row qlg-row"><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/reach-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">REACH</h3><p>Supply chain transparency needed for compliance.</p> 1712<span class="btn-link">REACH</span></div></a></div><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/pfas/" class="qlg-box"><div class="qlg-content"><h3 class="h4">PFAS</h3><p>Identify PFAS in your supply chain and set yourself up for success.</p> 1713<span class="btn-link">PFAS</span></div></a></div><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/scip-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">SCIP</h3><p>Meet submission obligations with a deep view of your supply chain.</p> 1714<span class="btn-link">SCIP</span></div></a></div><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/rohs-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">RoHS</h3><p>Deep-map your supply chain to streamline compliance.</p> 1715<span class="btn-link">RoHS</span></div></a></div><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/tsca-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">TSCA</h3><p>Grow better with Assentâs TSCA compliance solution.</p> 1716<span class="btn-link">TSCA</span></div></a></div><div class="cell-sm-6 "><a href="https://www.assent.com/solutions/product-compliance/prop-65-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">Proposition 65</h3><p>Uncover deep supply chain data to meet labeling requirements.</p> 1717<span class="btn-link">Proposition 65</span></div></a></div><div class="cell-sm-6 hidden"><a href="https://www.assent.com/solutions/product-compliance/epr-packaging/" class="qlg-box"><div class="qlg-content"><h3 class="h4">EPR Packaging</h3><p>Collect packaging data, estimate fees and generate EPR compliance-ready reports.</p> 1718<span class="btn-link">EPR Packaging</span></div></a></div><div class="cell-sm-6 hidden"><a href="https://www.assent.com/solutions/product-compliance/full-material-declaration/" class="qlg-box"><div class="qlg-content"><h3 class="h4">Full Materials Disclosures</h3><p>Learn how we use FMDs to deep-map the entire complex manufacturing genome.</p> 1719<span class="btn-link">Full Materials Disclosures</span></div></a></div><div class="cell-sm-6 hidden"><a href="https://www.assent.com/solutions/product-compliance/ad-dsl/" class="qlg-box"><div class="qlg-content"><h3 class="h4">AD-DSL</h3><p>Our AD-DSL solution provides the missing foundation you need for compliance.</p> 1720<span class="btn-link">AD-DSL</span></div></a></div><div class="cell-sm-6 hidden"><a href="https://www.assent.com/solutions/product-compliance/eu-mdr-compliance/" class="qlg-box"><div class="qlg-content"><h3 class="h4">EU Medical Device Regulation</h3><p>See the EU MDR solution and how it helps you uncover hidden compliance risks.</p> 1721<span class="btn-link">EU Medical Device Regulation</span></div></a></div><div class="cell-sm-6 hidden"><a href="https://www.assent.com/solutions/product-compliance/dfars-compliance-solution/" class="qlg-box"><div class="qlg-content"><h3 class="h4">DFARS Specialty Metals</h3><p>Our solution will give you transparency needed to meet your DFARS requirements .</p> 1722<span class="btn-link">DFARS Specialty Metals</span></div></a></div></div> 1723 </div><button type="button" 1724 data-open-text="See Less -" 1725 data-close-text="See All Solutions +" 1726 class="display_all_btn">See All Solutions +</button></div> 1727 </div></section> 1728 1729 1730 1731<!-- Fifty Fifty Promo --> 1732 <section class="fifty-fifty-promo elem-viewport " id="overview"><div class="container simple"><div class="row media-right"><div class="cell-lg-6"><div class="promo-media"><div class="promo-image"> 1733 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-cables-wires.jpg" alt="Electrical employee examining wires in factory setting"> 1734 </div></div></div> 1735 <div class="cell-lg-6"><div class="promo-content"><div class="eyebrow-text">Overview</div><h2 class="h2">The #1 Hidden Risk For Complex Manufacturers</h2><div class="promo-wysiwyg default"><p>Compliance with regional laws is key to maintaining market access and protecting your companyâs revenue and reputation. But regulations constantly evolve and keeping up with substance lists and requirements drains resources â resources many companies need elsewhere.</p> 1736<p>Learn more about recent enforcement actions that demonstrate why proactive compliance is a business must.</p> 1737</div><a href="https://www.assent.com/resources/enforcement-actions/" target="" class="btn">Recent Enforcements</a></div></div> 1738 </div></div> 1739 </section> 1740 1741 1742<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1743 1744 1745<!-- Logo Promo --> 1746 <section class="logo-promo " id="customers"> 1747 <div class="container"> 1748 <div class="sec-heading text-center"><h2>Our Customers</h2><div class="desc"><p>Assent helps over 1,250 companies. Weâre proud to work with the following organizations.</p> 1749</div></div><div class="logo-promo-outer">
1749<div class="logo-promo-wrap" data-slider="logo-promo-slider"><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2024/10/abb-logo.jpg" 1750 width="333" 1751 height="251" 1752 loading="lazy" 1753 alt="ABB Group"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2024/10/big-hondacorplogo2.jpg" 1754 width="450" 1755 height="238" 1756 loading="lazy" 1757 alt="Honda Logo"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/General_Electric-e1721931700826.png" 1758 width="139" 1759 height="57" 1760 loading="lazy" 1761 alt="General Electric"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Boeing.png" 1762 width="139" 1763 height="78" 1764 loading="lazy" 1765 alt="Boeing"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Baxter.png" 1766 width="179" 1767 height="30" 1768 loading="lazy" 1769 alt="Baxter"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Energizer.png" 1770 width="157" 1771 height="42" 1772 loading="lazy" 1773 alt="Energizer"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Johnson_Johnson.png" 1774 width="179" 1775 height="32" 1776 loading="lazy" 1777 alt="Johnson & Johnson"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Cardinal_Health.png" 1778 width="192" 1779 height="70" 1780 loading="lazy" 1781 alt="Cardinal Health"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Honeywell.png" 1782 width="158" 1783 height="89" 1784 loading="lazy" 1785 alt="Honeywell"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/RR.png" 1786 width="57" 1787 height="70" 1788 loading="lazy" 1789 alt="Rolls Royce"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Netgear.png" 1790 width="168" 1791 height="25" 1792 loading="lazy" 1793 alt="Netgear"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Jaguar_Landrover.png" 1794 width="192" 1795 height="58" 1796 loading="lazy" 1797 alt="Jaguar Landrover"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Imax.png" 1798 width="178" 1799 height="34" 1800 loading="lazy" 1801 alt="Imax"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Polaris.png" 1802 width="192" 1803 height="108" 1804 loading="lazy" 1805 alt="Polaris"></div></div><div class="logo-item"><div class="logo-item-inner"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2023/07/Toshiba.png" 1806 width="196" 1807 height="61" 1808 loading="lazy" 1809 alt="Toshiba"></div></div></div></div></div> 1810 </section> 1811 1812 1813<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1814 1815 1816 1817<section class="quick-links-grid"> 1818 <div class="container "> 1819 <div class="row"><div class="cell-lg-5"> 1820 <div class="qlg-heading pr-xl-90"><h2 class="h2">Reveal Risks & Opportunities</h2><p>Go beyond âcheck-box complianceâ to meet or exceed regulatory requirements down to the parts of parts and suppliers of suppliers level.</p> 1821</div> 1822 </div><div class="cell-lg-7"> 1823 <div class="row qlg-row"><div class="cell-sm-6 "><div class="qlg-box"><div class="qlg-content"><h3 class="h4">Protect Revenue</h3><p>Ensure access to the markets you want to do business in with a documented, auditable compliance program.</p> 1824</div></div></div><div class="cell-sm-6 "><div class="qlg-box"><div class="qlg-content"><h3 class="h4">Reduce Disruptions</h3><p>Avoid supply chain disruptions caused by parts or suppliers that arenât compliant with global regulations.</p> 1825</div></div></div><div class="cell-sm-6 "><div class="qlg-box"><div class="qlg-content"><h3 class="h4">Streamline Operations</h3><p>Focus your resources where they do the most good and leave the data gathering and analysis to us â with 24/7 support, 365 days a year.</p> 1826</div></div></div><div class="cell-sm-6 "><div class="qlg-box"><div class="qlg-content"><h3 class="h4">Level Up Your Suppliers</h3><p>Build a sustainable, prepared, and educated supply chain through expert-led, multi-lingual supplier training.</p> 1827</div></div></div></div> 1828 </div></div> 1829 </div></section> 1830 1831 1832 1833 1834<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1835 1836 1837<section class="premium-resource-promo elem-viewport" id="guide" data-theme="light"> 1838 <div class="container"> 1839 <div class="tab-wrap only-first"> 1840 <div class="tab-body"><div class="row align-items-center is-active" data-tab-id="prp-1"> 1841 <div class="cell-md-5 resource-img"> 1842 <div class="resource-img-inner"><div class="figure-wrap"><figure><img decoding="async" class="no-lazyload" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-landclearing-worker.jpeg" alt="Industrial employee looking out over construction site"></figure></div><div class="stat-1"></div><div class="stat-2"></div></div> 1843 </div> 1844 <div class="cell-md-7 resource-content "> 1845 <div class="desc-inner"><div class="eyebrow-text">Guide</div><h2>The Assent Supply Chain Sustainability Platform</h2><p>Assentâs platform gives manufacturers deep visibility into their supply chains. It supports the collection, management, and analysis of data for a variety of product compliance requirements â including REACH, RoHS, TSCA, and more. Find out how.</p> 1846<a href="/resources/guide/platform-enterprise/" class="btn " target="">Get the Guide</a></div> 1847 </div> 1848 </div></div><div class="tab-header"></div> 1849 </div> 1850 </div> 1851 </section> 1852 1853 1854<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1855 1856 1857 1858<p class="wp-block-paragraph"></p> 1859 1860 1861<section class="tabbed-content " id="capabilities"> 1862 <div class="container"><div class="sec-heading text-center"><h2>Our Product Compliance Solution Built For Complex Manufacturers</h2></div><div class="tc-wrap"> 1863 <div class="row"> 1864 <div class="cell-md-6 pr-xl-50"><div class="tc-links d-md-block d-none"><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">The Depth Complex Manufacturers Demand</h5></div><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">Data You Can Trust </h5></div><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">A Single, Future-Proof Platform</h5></div></div><div class="tc-links-mobile d-md-none d-block"> 1865 <div class="tc-slider"><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">The Depth Complex Manufacturers Demand</h5></div><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">Data You Can Trust </h5></div><div class="tc-tab-title d-flex flex-nowrap align-items-center"><h5 class="h5">A Single, Future-Proof Platform</h5></div></div> 1866 </div></div> 1867 <div class="cell-md-6 pr-xl-50"><div class="tc-right-wrap"><div class="tc-right pl-xl-50" id="tc-tab1"><h4 class="h4">The Depth Complex Manufacturers Demand</h4><div class="tc-content"><p>A Complex Manufacturing-Centric Approach: Handle large amounts of data across business silos.</p> 1868<p>A Smarter Supply Network: Make better decisions with data gathered using effective supplier engagement in 11 languages.</p> 1869<p>Robust Support: Get ongoing assistance with supplier outreach, data collection, training, support, and more.</p> 1870<p>Expertise & Resources: A full range of managed services, guidance, and thought leadership materials to support your program.</p> 1871</div></div><div class="tc-right pl-xl-50" id="tc-tab2"><h4 class="h4">Data You Can Trust </h4><div class="tc-content"><p>Assent Sustainability Network: We already work with many of your suppliers, meaning product compliance data is readily available.</p> 1872<p>Deep-Mapping: We give you deep visibility into your supply chain so you can better understand what goes into your product and map it against global regulatory requirements.</p> 1873<p>Automated &
1873 Streamlined: Minimize supplier fatigue and duplicated efforts.</p> 1874<p>Risk Scoring: Dashboards identify high-risk parts and suppliers.</p> 1875</div></div><div class="tc-right pl-xl-50" id="tc-tab3"><h4 class="h4">A Single, Future-Proof Platform</h4><div class="tc-content"><p>A Strong Data Foundation: Organize parts data in one central database.</p> 1876<p>Proactive: Ready to respond to new regulations, suppliers, products, and markets.</p> 1877<p>Scalable: Keeps pace as your company grows.</p> 1878</div></div></div></div> 1879 </div> 1880 </div> 1881 1882 </div> 1883</section> 1884 1885 1886<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1887 1888 1889<!-- Fifty Fifty Promo --> 1890 <section class="fifty-fifty-promo elem-viewport " id="assent_advantage"><div class="container branded"><div class="row "><div class="cell-lg-6"><div class="promo-media"><div class="promo-image"> 1891 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/highlights-1500x1000-1-e1645929022931.png" alt="A screenshot representation of the Assent Platform"> 1892 </div></div></div> 1893 <div class="cell-lg-6"><div class="promo-content"><div class="eyebrow-text">Why Assent</div><h2 class="h2">The Assent Advantage</h2><div class="promo-wysiwyg styled"><p>See deeper, be smarter, and grow better with Assent. We have the only supply chain sustainability management platform built specifically for complex manufacturers. When product compliance requirements change, our software triggers the need for additional data collection, and our managed services include support and outreach in local languages and time zones.</p> 1894</div><a href="/why-assent/" target="" class="btn">Why Assent</a></div></div> 1895 </div></div> 1896 </section> 1897 1898 1899<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1900 1901 1902 1903<!-- CTA Banner --><section class="cta-banner elem-viewport gradient3"> 1904 <div class="container"> 1905 <div class="cta-banner-wrap" > 1906 <div class="row"> 1907 <div class="cell-lg-9"> 1908 <div class="cta-banner-content"><h2 class="h2">Get Product Compliance Right</h2><p>Look deeper into your supply chain. The Assent platform goes beyond âcheck-box complianceâ so you can exceed your regulatory requirements, right down to parts of parts and suppliers of suppliers.</p> 1909</div> 1910 </div> 1911 <div class="cell-lg-3 d-flex align-items-center justify-content-center"><a href="/capabilities/platform/" class="btn -white " target="">Explore the Platform</a></div> 1912 </div> 1913 </div> 1914 </div> 1915 </section> 1916<style> 1917 @media (max-width: 991px) { 1918 .cta-banner.image-on-right { 1919 text-align: center; 1920 } 1921 1922 .cta-banner.gradient2 .align-items-center.justify-content-center { 1923 justify-content: center; 1924 } 1925 1926 .cta-banner.gradient3 .align-items-center.justify-content-center { 1927 justify-content: center; 1928 } 1929 } 1930</style> 1931 1932 1933<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 1934 1935 1936 1937<!-- Four Card Promo --> 1938<section class="card-promo" id="resources"> 1939 <div class="container"> 1940 <div class="sec-heading text-center"><h2>Solutions for Product Compliance</h2><div class="desc"><p>Explore our solutions for getting standardized, validated, and usable product compliance data from your supply chain.</p> 1941</div></div> 1942 <!-- class --><div class="card-promo-row row-style2"><div class="card-item"> 1943 <a href="/solutions/product-compliance/scip-compliance-solution/" target="" class="card-inner"> 1944 <div class="card-header"><div class="card-title"> 1945 <h5>Simplify SCIP Requirements</h5> 1946 </div></div> 1947 <div class="card-body"><p>Meet your SCIP obligations and other related requirements. See how Assent can make SCIP submissions more simple.</p> 1948</div> 1949 </a> 1950 </div><div class="card-item"> 1951 <a href="/solutions/product-compliance/rohs-compliance-solution/" target="" class="card-inner"> 1952 <div class="card-header"><div class="card-title"> 1953 <h5>Streamline RoHS Compliance</h5> 1954 </div></div> 1955 <div class="card-body"><p>Learn more about how Assent deep-maps your supply chain to streamline RoHS compliance.</p> 1956</div> 1957 </a> 1958 </div><div class="card-item"> 1959 <a href="/solutions/product-compliance/tsca-compliance-solution/" target="" class="card-inner"> 1960 <div class="card-header"><div class="card-title"> 1961 <h5>Automate TSCA Compliance</h5> 1962 </div></div> 1963 <div class="card-body"><p>Grow better with Assentâs product compliance platform, automating your TSCA program.</p> 1964</div> 1965 </a> 1966 </div><div class="card-item"> 1967 <a href="/solutions/product-compliance/prop-65-compliance-solution/" target="" class="card-inner"> 1968 <div class="card-header"><div class="card-title"> 1969 <h5>
1969Proposition 65 Compliance</h5> 1970 </div></div> 1971 <div class="card-body"><p>See how Assentâs SaaS platform will help you collect the deep data you need to comply with Proposition 65.</p> 1972</div> 1973 </a> 1974 </div><div class="card-item"> 1975 <a href="/solutions/product-compliance/reach-compliance-solution/" target="" class="card-inner"> 1976 <div class="card-header"><div class="card-title"> 1977 <h5>Get REACH Compliant</h5> 1978 </div></div> 1979 <div class="card-body"><p>Discover more about your REACH requirements, and how Assent will help you create the supply chain transparency you need.</p> 1980</div> 1981 </a> 1982 </div><div class="card-item"> 1983 <a href="/solutions/product-compliance/pfas/" target="" class="card-inner"> 1984 <div class="card-header"><div class="card-title"> 1985 <h5>PFAS Reporting</h5> 1986 </div></div> 1987 <div class="card-body"><p>Solutions to identify PFAS in your supply chain, meet reporting requirements, and maintain market access.</p> 1988</div> 1989 </a> 1990 </div></div></div> 1991</section> 1992 1993 1994<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div> 1995 1996 1997<section class="card-grid-comp elem-viewport " data-theme="dark"> 1998 <div class="container"> 1999 <div class="sec-heading text-center inner-text-white"><h2>Industry Solutions for Complex Manufacturing</h2><div class="desc"><p>Discover how our automated supply chain sustainability management solutions help complex manufacturers see deeper, be smarter, and grow better. </p> 2000</div> </div><div class="row justify-content-center card-box-wrap"><div class="cell-lg-6 card-box"><a href="/solutions/industry/electronics-supply-chain/" target="_self" class="card-box-inner"><div class="desc"><h5 class="title">Electronic Industry Solution</h5><p>Find solutions to deep-map your electronics supply chain. Learn more about Assentâs platform and how we support your business growth goals.</p> 2001<span class="btn-link">Electronics Solution</span></div><figure> 2002 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact_electronics-microchips-stacked-e1652375198760.jpg" alt="Rows of microchips"> 2003 </figure></a></div><div class="cell-lg-6 card-box"><a href="/solutions/industry/industrial-supply-chain-solutions/" target="_self" class="card-box-inner"><div class="desc"><h5 class="title">Industrial Equipment Solution</h5><p>Assent helps industrial equipment manufacturers grow better by allowing you to see deep into your supply chain.</p> 2004<span class="btn-link">Industrial Equipment Solution</span></div><figure> 2005 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-silver-rings.jpeg" alt="Close-up on box of silver washers"> 2006 </figure></a></div><div class="cell-lg-6 card-box"><a href="/solutions/industry/medical-devices-supply-chain/" target="_self" class="card-box-inner"><div class="desc"><h5 class="title">Complete Medical Supply Chain Tools</h5><p>View Assentâs medical device supply chain solution.</p> 2007<span class="btn-link">Medical Devices Solution</span></div><figure> 2008 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact_medical-heart-monitors-machines-e1652375220418.jpg" alt="Several rows of heart monitoring medical devices"> 2009 </figure></a></div><div class="cell-lg-6 card-box"><a href="/solutions/industry/aerospace-supply-chain/" target="_self" class="card-box-inner"><div class="desc"><h5 class="title">Aerospace & Defense Solution</h5><p>Assentâs Aerospace and defense solutions are built by experts with decades of experience in the industry. See for yourself. </p> 2010<span class="btn-link">Aerospace and Defense Solution</span></div><figure> 2011 <img decoding="async" src="https://www.assent.com/wp-content/uploads/2022/02/Assent_stockImage_CustomerImpact-propeller-closeup-â-2.jpeg" alt="Close-up view of a plane's propeller"> 2012 </figure></a></div></div></div> 2013 </section> 2014 2015 2016<div style="height:75px" aria-hidden="true" class="wp-block-spacer"></div> 2017 2018 2019<section class="related-resource-comp classic" > 2020 <div class="container"> 2021 <div class="sec-heading text-center"><h2>Related Product Compliance Resources</h2></div><div class="row-wrapper"><div class="row justify-content-center"><div class="cell-lg-4 cell-sm-6 resource"><div class="resource-inner"><figure><a href="https://www.assent.com/blog/distributors-better-sourcing-decisions-product-intelligence/" aria-label="Distributors: Better Sourcing Decisions Begin With Product Intelligence"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2026/03/Blog-Image_Reach-Enforcement.webp" alt="Two compliance professionals in a warehouse."></a></figure><div class="desc"><div class="desc-inner"><div class="cat-and-name"><span class="cat"><a class="cat-link" href="https://www.assent.com/category/blog/">Blog</a></span><a href="https://www.assent.com/author/azizat-olayanju/" class="author" data-time="7"><div class="img-wrap"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2026/08/Azizat-Olayanju.webp" alt="Azizat Olayanju"></div><span>Azizat Olayanju</span></a></div><h4><a href="https://www.assent.com/blog/distributors-better-sourcing-decisions-product-intelligence/">Distributors: Better Sourcing Decisions Begin With Product Intelligence</a></h4><p>Learn why distributors need product intelligence to connect critical data for smarter sourcing decisions and improved business efficie
2021ncy.</p></div><div class="tag-wrap"><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=assent-sustainability-platform&search_text=&filter_order=">Assent Network</a><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=product-compliance&search_text=&filter_order=">Product Compliance</a><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=product-intelligence&search_text=&filter_order=">Product Intelligence</a></div></div></div></div><div class="cell-lg-4 cell-sm-6 resource"><div class="resource-inner"><figure><a href="https://www.assent.com/blog/ten-years-in-amsterdam-where-were-going-from-here/" aria-label="Ten Years in Amsterdam: Where We’re Going From Here"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2026/08/Web_Blog-european-union-flag-waving-in-front-of-building-2026-03-13-04-15-42-utc.jpg" alt="The European Union flag waving outside a building."></a></figure><div class="desc"><div class="desc-inner"><div class="cat-and-name"><span class="cat"><a class="cat-link" href="https://www.assent.com/category/blog/">Blog</a></span><a href="https://www.assent.com/author/anton-obbens/" class="author" data-time="4"><div class="img-wrap"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2026/08/Anton-Obbens.webp" alt="Anton Obbens"></div><span>Anton Obbens</span></a></div><h4><a href="https://www.assent.com/blog/ten-years-in-amsterdam-where-were-going-from-here/">Ten Years in Amsterdam: Where We’re Going From Here</a></h4><p>Learn how product intelligence from Assent and IPOINT empowers companies in automotive and manufacturing industries.</p></div><div class="tag-wrap"><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=assent-sustainability-platform&search_text=&filter_order=">Assent Network</a><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=product-compliance&search_text=&filter_order=">Product Compliance</a><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=product-intelligence&search_text=&filter_order=">Product Intelligence</a></div></div></div></div><div class="cell-lg-4 cell-sm-6 resource"><div class="resource-inner"><figure><a href="https://www.assent.com/resources/infographic/the-supply-chain-data-foundation-that-streamlines-your-compliance-process/" aria-label="The Supply Chain Data Foundation That Streamlines Your Compliance Process"><img decoding="async" src="https://www.assent.com/wp-content/uploads/2026/08/Web_Hero_Image-shipping-container-ocean-trade-compliance-aerial-view-resize-1208186874.webp" alt=""></a></figure><div class="desc"><div class="desc-inner"><div class="cat-and-name"><span class="cat"><a class="cat-link" href="https://www.assent.com/category/infographic/">Infographic</a></span></div><h4><a href="https://www.assent.com/resources/infographic/the-supply-chain-data-foundation-that-streamlines-your-compliance-process/">The Supply Chain Data Foundation That Streamlines Your Compliance Process</a></h4><p>Discover the five pillars of a supply chain data foundation, and how Assent helps improve data quality, reduce risk, and stay compliant.</p></div><div class="tag-wrap"><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=product-compliance&search_text=&filter_order=">Product Compliance</a><a rel="nofollow" class="tag-link" href="?pager=1&filter=1&tag[]=supply-chain-data&search_text=&filter_order=">supply chain data</a></div></div></div></div></div></div></div> 2022</section> 2023 2024 <section class="two-column-form elem-viewport default blue call-to-action " id="get_started"> 2025 2026 2027 <div class="container"> 2028 <div class="row"> 2029 <div class="cell-lg-7 mb-lg-0 mb-30"> 2030 <div class="tcf-content bullet-check pr-xxl-90 pr-lg-30"> 2031 <div class="eyebrow-text">Book a Live Demo</div> <H2>See Deeper, Be Smarter, Grow Better</H2> <div class="tcf-content-desc"><p>See why our supply chain sustainability platform is the number one choice for the worldâs most sustainable complex manufacturers looking to solve product compliance.</p> 2032</div> </div>
2033 </div> 2034 <div class="cell-lg-5 d-lg-flex align-items-center"> 2035 <div class="tcf-wrap pl-xl-50"> 2036 <input type="hidden" id="form_nonce" name="form_nonce" value="53eca0c35d" /><input type="hidden" name="_wp_http_referer" value="/solutions/product-compliance/" /><!-- FormComplete General demo --> 2037<form name="demoForm" action="/form-handler" class="form--wrap" data-handler="pardotForm21" method="post" data-formtype="demo" onsubmit = "return demoFunction(this);" class="general-demo" id="fc_generaldemo"> 2038 2039 <p class="form-field email pd-text required"> 2040 <label class="field-label" for="Email">Business Email*</label> 2041 <input type="email" name="Email" id="pardot_email" value="" class="text" size="30" maxlength="255" onchange="" onfocus="" required=""> 2042 </p> 2043 2044 2045 <p class="form-field first_name pd-text required half"> 2046 <label class="field-label" for="FirstName">First Name*</label> 2047 <input type="text" name="FirstName" id="pardot_firstname" value="" class="text" size="30" maxlength="40" onchange="" onfocus="" required=""> 2048 </p> 2049 2050 <p class="form-field last_name pd-text required half"> 2051 <label class="field-label" for="LastName">Last Name*</label> 2052 <input type="text" name="LastName" id="pardot_lastname" value="" class="text" size="30" maxlength="80" onchange="" onfocus="" required=""> 2053 </p> 2054 2055 <p class="form-field company pd-text required half"> 2056 <label class="field-label" for="Company">Company*</label> 2057 <input type="text" name="Company" id="pardot_company" value="" class="text" size="30" maxlength="255" onchange="" onfocus="" required=""> 2058 </p> 2059 2060 <p class="form-field phone pd-text half"> 2061 <label class="field-label" for="Phone">Phone</label> 2062 <input type="text" name="Phone" id="pardot_phone" value="" class="text" size="30" maxlength="255" onchange="" onfocus=""> 2063 </p> 2064 2065 <p class="form-field job_title pd-text required half"> 2066 <label class="field-label" for="Title">Job Title*</label> 2067 <input type="text" name="Title" id="pardot_job_title" value="" class="text" size="30" maxlength="255" onchange="" onfocus="" required=""> 2068 </p> 2069 2070 <p class="form-field country pd-text form-field-primary"> 2071 <!-- <label class="field-label" for="Country_L">Country</label> --> 2072 <select name="Country" id="pardot_country" required> 2073 <option value='' selected disabled>Country*</option> 2074 <option value='Afghanistan'>Afghanistan</option> 2075 <option value='Algeria'>Algeria</option> 2076 <option value='Angola'>Angola</option> 2077 <option value='Argentina'>Argentina</option> 2078 <option value='Armenia'>Armenia</option> 2079 <option value='Australia'>Australia</option> 2080 <option value='Austria'>Austria</option> 2081 <option value='Bahamas'>Bahamas</option> 2082 <option value='Bangladesh'>Bangladesh</option> 2083 <option value='Belgium'>Belgium</option> 2084 <option value='Belize'>Belize</option> 2085 <option value='Benin'>Benin</option> 2086 <option value='Bermuda'>Bermuda</option> 2087 <option value='Bolivia'>Bolivia</option> 2088 <option value='Brazil'>Brazil</option> 2089 <option value='Bulgaria'>Bulgaria</option> 2090 <option value='Cameroon'>Cameroon</option> 2091 <option value='Canada'>Canada</option> 2092 <option value='Chile'>Chile</option> 2093 <option value='China'>China</option> 2094 <option value='Colombia'>Colombia</option> 2095 <option value='Congo'>Congo</option> 2096 <option value='Costa Rica'>Costa Rica</option> 2097 <option value='Croatia'>Croatia</option> 2098 <option value='Cuba'>Cuba</option> 2099 <option value='Cyprus'>Cyprus</option> 2100 <option value='Czech Republic'>Czech Republic</option> 2101 <option value='Czechia'>Czechia</option> 2102 <option value='Denmark'>Denmark</option> 2103 <option value='Ecuador'>Ecuador</option> 2104 <option value='Egypt'>Egypt</option> 2105 <option value='El Salvador'>El Salvador</option> 2106 <option value='Estonia'>Estonia</option> 2107 <option value='Finland'>Finland</option> 2108 <option value='France'>France</option> 2109 <option value='Germany'>Germany</option> 2110 <option value='Ghana'>Ghana</option> 2111 <option value='Greece'>Greece</option> 2112 <option value='Guatemala'>Guatemala</option> 2113 <option value='Haiti'>Haiti</option> 2114 <option value='Hong Kong'>Hong Kong</option> 2115 <option value='Hungary'>
2115Hungary</option> 2116 <option value='Iceland'>Iceland</option> 2117 <option value='India'>India</option> 2118 <option value='Indonesia'>Indonesia</option> 2119 <option value='Iran'>Iran</option> 2120 <option value='Ireland'>Ireland</option> 2121 <option value='Israel'>Israel</option> 2122 <option value='Italy'>Italy</option> 2123 <option value='Jamaica'>Jamaica</option> 2124 <option value='Japan'>Japan</option> 2125 <option value='Kazakhstan'>Kazakhstan</option> 2126 <option value='Kenya'>Kenya</option> 2127 <option value='Kuala Lumpur'>Kuala Lumpur</option> 2128 <option value='Kuwait'>Kuwait</option> 2129 <option value='Latvia'>Latvia</option> 2130 <option value='Lebanon'>Lebanon</option> 2131 <option value='Libya'>Libya</option> 2132 <option value='Liechtenstein'>Liechtenstein</option> 2133 <option value='Lithuania'>Lithuania</option> 2134 <option value='London'>London</option> 2135 <option value='Luxembourg'>Luxembourg</option> 2136 <option value='Macao'>Macao</option> 2137 <option value='Madagascar'>Madagascar</option> 2138 <option value='Malawi'>Malawi</option> 2139 <option value='Malaysia'>Malaysia</option> 2140 <option value='Mauritius'>Mauritius</option> 2141 <option value='Mexico'>Mexico</option> 2142 <option value='Mongolia'>Mongolia</option> 2143 <option value='Morocco'>Morocco</option> 2144 <option value='Netherlands'>Netherlands</option> 2145 <option value='New Zealand'>New Zealand</option> 2146 <option value='Nicaragua'>Nicaragua</option> 2147 <option value='Nigeria'>Nigeria</option> 2148 <option value='Norway'>Norway</option> 2149 <option value='Oman'>Oman</option> 2150 <option value='Pakistan'>Pakistan</option> 2151 <option value='Panama'>Panama</option> 2152 <option value='Papua New Guinea'>Papua New Guinea</option> 2153 <option value='Paraguay'>Paraguay</option> 2154 <option value='Peru'>Peru</option> 2155 <option value='Philippines'>Philippines</option> 2156 <option value='Poland'>Poland</option> 2157 <option value='Portugal'>Portugal</option> 2158 <option value='Qatar'>Qatar</option> 2159 <option value='Romania'>Romania</option> 2160 <option value='Russia'>Russia</option> 2161 <option value='Russian Federation'>Russian Federation</option> 2162 <option value='Saint Kitts and Nevis'>Saint Kitts and Nevis</option> 2163 <option value='Saudi Arabia'>Saudi Arabia</option> 2164 <option value='Senegal'>Senegal</option> 2165 <option value='Slovakia'>Slovakia</option> 2166 <option value='Slovenia'>Slovenia</option> 2167 <option value='Singapore'>Singapore</option> 2168 <option value='South Africa'>South Africa</option> 2169 <option value='South Korea'>South Korea</option> 2170 <option value='Spain'>Spain</option> 2171 <option value='Sri Lanka'>Sri Lanka</option> 2172 <option value='Suriname'>Suriname</option> 2173 <option value='Sweden'>Sweden</option> 2174 <option value='Switzerland'>Switzerland</option> 2175 <option value='Syria'>Syria</option> 2176 <option value='Taiwan'>Taiwan</option> 2177 <option value='Tanzania'>Tanzania</option> 2178 <option value='Thailand'>Thailand</option> 2179 <option value='Trinidad and Tobago'>Trinidad and Tobago</option> 2180 <option value='Tunisia'>Tunisia</option> 2181 <option value='Turkey'>Turkey</option> 2182 <option value='Uganda'>Uganda</option> 2183 <option value='Ukraine'>Ukraine</option> 2184 <option value='United Arab Emirates'>United Arab Emirates</option> 2185 <option value='United Kingdom'>United Kingdom</option> 2186 <option value='United States of America'>United States of America</option> 2187 <option value='Uzbekistan'>Uzbekistan</option> 2188 <option value='Vietnam'>Vietnam</option> 2189 <option value='Zambia'>Zambia</option> 2190 <option value='Zimbabwe'>Zimbabwe</option> 2191 </select> 2192 </p> 2193 2194 <p class="form-field utm_campaign pd-hidden hidden "> 2195 <input type="hidden" name="utm_campaign" id="pardot_utm_campaign" value=""> 2196 </p> 2197 2198 <p class="form-field utm_medium pd-hidden hidden "> 2199 <input type="hidden" name="utm_medium" id="pardot_utm_medium" value=""> 2200 </p> 2201 2202 <p class="form-field utm_source pd-hidden hidden "> 2203 <input type="hidden" name="utm_source" id="pardot_utm_source" value=""> 2204 </p> 2205 2206 <p class="form-field utm_term pd-hidden hidden "> 2207 <input type="hidden" name="utm_term" id="pardot_utm_term" value=""> 2208 </p> 2209 2210 <p class="form-field utm_region pd-hidden hidden "> 2211 <input type="hidden" name="utm_region" id="pardot_utm_region" value=""> 2212 </p> 2213 2214 <p class="form-field utm_channel pd-hidden hidden "> 2215 <input type="hidden" name="utm_channel" id="pardot_utm_channel" value=""> 2216 </p> 2217 2218 <p class="form-field utm_content pd-hidden hidden "> 2219 <input type="hidden" name="utm_content" id="pardot_utm_content" value=""> 2220 </p> 2221 2222 <p class="form-field referring-page pd-hidden hidden "> 2223 <input type="hidden" name="ReferringPage" id="pardot_referring_page" value=""> 2224 </p> 2225 2226<div style="position:absolute; left:-9999px; top: -9999px;"> 2227 <label for="pardot_extra_field">Comments</label> 2228 <input type="text" id="pardot_extra_field" name="pardot_extra_field"> 2229</div> 2230 2231 <p class="form-field consent-stmt"> 2232 <span>By submitting this form, I consent to be contacted by Assent, which includes receiving Assent’s eNewsletter and other promotional messages via email, in accordance with <a href="https://www.assent.com/privacy/" target="_blank">Assent’s Privacy Policy</a>.</span> 2233 </p> 2234 2235 <!-- forces IE5-8 to correctly submit UTF8 content --> 2236 <input name="_utf8" type="hidden" value="â"> 2237 <p class="submit"> 2238 <input type="submit" value="Submit" id ="btn-submit"> 2239 </p> 2240 2241<input type="hidden" name="form_validation" value="STRvRmlqNEVRLzBBTXVrQ2dnaFZYWnFObkJ0TGxLQjBRdHgvaHJHN1VhakhUdWFVTittUmZadzhZRDBYREQ3Q1FlQ3gzRkx6ZE00cmNZRGpqelRsT0E9PTo6tAEuy4r8Cbl_FSv75D7gYw" /><input type="hidden" id="form_nonce" name="form_nonce" value="53eca0c35d" /><input type="hidden" name="_wp_http_referer" value="/solutions/product-compliance/" /></form> 2242 </div> 2243 2244 <div id="ratings"> 2245 <a href="https://www.g2.com/products/assent-inc-the-assent-supply-chain-sustainability-platform/reviews" target="_blank" rel="noopener"> 2246 <img decoding="async" src="https://www.assent.com/wp-content/themes/assent-wp/assets/images/webistry/badge_with_background.png?v=1" alt="4.5 out of 5 stars by G2" height="48" width="172" loading="lazy"> 2247 </a> 2248 <img decoding="async" src="https://www.assent.com/wp-content/themes/assent-wp/assets/images/webistry/Supply-Chain-Sustainability-Software-2026-Leader.png" alt="Green Quadrent 2026" width="100" height="100" loading="lazy"> 2249 <img decoding="async" src="https://www.assent.com/wp-content/themes/assent-wp/assets/images/webistry/top-50-best-software-badge.svg" alt="Top 50 Best Software Badge" width="92" height="106" loading="lazy"> 2250 <img decoding="async" src="https://www.assent.com/wp-content/themes/assent-wp/assets/images/webistry/Product-Compliance-Software_Leader-Light100.png" alt="Green Quadrent 2025" width="100" height="100" loading="lazy"> 2251 <div id="widget-container"></div> 2252 </div> 2253 </div> 2254 </div> 2255 </div> 2256 </section> 2257
2258<script type="text/javascript"> 2259 (function() { 2260 // Retrieve the form action URL parameter from the query string 2261 const urlParams = new URLSearchParams(window.location.search); 2262 const formActionParam = urlParams.get('form_action'); 2263 const form = document.querySelector('.two-column-form.book-a-demo'); 2264 2265 // Update the action attribute of the forms on this page 2266 if (form && formActionParam) { 2267 const formHandler = form.querySelector('input[name="form_validation"]'); 2268 2269 if (formHandler) { 2270 formHandler.value = formActionParam; 2271 } 2272 } 2273 }()); 2274</script>
2274 2275</div></div> 2276<footer class="main-footer pt-lg-50 pt-30 webistry"> 2277 <div class="container"> 2278 <div class="main-footer-top"> 2279 <div class="row"> 2280 <div class="cell-xl-6 cell-lg-6"> 2281 <a href="https://www.assent.com/" class="footer-logo" rel="noopener"> 2282 <img src="https://www.assent.com/wp-content/uploads/2025/02/logo.svg" alt="Assent"> 2283 </a><div class="social-feed"> 2284 <ul class="d-flex justify-content-center justify-lg-content-start"><li><a href="https://www.linkedin.com/company/assent-compliance-inc" aria-label="linkedin" class="icon-linkedin" target="_blank" rel="noopener"></a></li><li><a href="https://www.youtube.com/@assentincorporated" aria-label="youtube" class="icon-youtube" target="_blank" rel="noopener"></a></li></ul> 2285 </div> </div> 2286 <div class="cell-xl-6 cell-lg-6 row justify-content-center justify-lg-content-end"> 2287 <img src="/wp-content/uploads/2024/09/B-Corp-Logo-Tagline-Lockup-Standards-Black-RGB-2.svg" alt="Certified B Corporation"> 2288 </div> 2289 </div> 2290 </div> 2291 <div class="main-footer-content"> 2292 <div class="row"> 2293 <div class="cell-xl-8 row"> 2294 <div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-8" class=""><span>Solutions</span><div class="menu-webistry-footer-menu-1-container"><ul id="menu-webistry-footer-menu-1" class="menu"><li id="menu-item-77214" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-3850 current_page_item menu-item-77214"><a href="https://www.assent.com/solutions/product-compliance/" aria-current="page">Product Compliance</a></li> 2295<li id="menu-item-77212" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77212"><a href="https://www.assent.com/solutions/esg-supply-chain/">Sustainability</a></li> 2296<li id="menu-item-77216" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77216"><a href="https://www.assent.com/solutions/trade-compliance/">Trade Compliance</a></li> 2297<li id="menu-item-77302" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77302"><a href="https://www.assent.com/capabilities/services/">Managed Services</a></li> 2298</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-9" class=""><span>Industries</span><div class="menu-webistry-footer-menu-2-container"><ul id="menu-webistry-footer-menu-2" class="menu"><li id="menu-item-77227" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77227"><a href="https://www.assent.com/solutions/industry/medical-devices-supply-chain/">Medical Devices</a></li> 2299<li id="menu-item-77230" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77230"><a href="https://www.assent.com/solutions/industry/electronics-supply-chain/">Electronics</a></li> 2300<li id="menu-item-77231" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77231"><a href="https://www.assent.com/solutions/industry/industrial-supply-chain-solutions/">Industrial Equipment</a></li> 2301<li id="menu-item-77229" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77229"><a href="https://www.assent.com/solutions/industry/automotive-supply-chain-solutions/">Automotive</a></li> 2302<li id="menu-item-77228" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77228"><a href="https://www.assent.com/solutions/industry/aerospace-supply-chain/">Aerospace & Defense</a></li> 2303</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-15" class=""><span>By Job Function</span><div class="menu-webistry-footer-menu-9-container"><ul id="menu-webistry-footer-menu-9" class="menu"><li id="menu-item-1172764" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1172764"><a href="https://www.assent.com/solutions/job-function/engineering/">Engineering</a></li> 2304<li id="menu-item-1172761" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1172761"><a href="https://www.assent.com/solutions/job-function/quality/">Quality</a></li> 2305<li id="menu-item-1172760" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1172760"><a href="https://www.assent.com/solutions/job-function/procurement/">Procurement</a></li> 2306<li id="menu-item-1172759" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1172759"><a href="https://www.assent.com/solutions/job-function/sustainability-leader/">Sustainability Leader</a></li> 2307<li id="menu-item-1172758" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1172758"><a href="https://www.assent.com/solutions/job-function/supply-chain-leader/">Supply Chain Leader</a></li> 2308</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-10" class=""><span>Network</span><div class="menu-webistry-footer-menu-3-container"><ul id="menu-webistry-footer-menu-3" class="menu"><li id="menu-item-77262" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77262"><a href="https://www.assent.com/capabilities/platform/supplier-screening/">Supplier Screening</a></li> 2309<li id="menu-item-77263" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77263"><a href="https://www.assent.com/capabilities/platform/pricing/">Pricing</a></li> 2310<li id="menu-item-77264" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77264"><a href="https://www.assent.com/company/security/">Data Security</a></li> 2311<li id="menu-item-77265" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77265"><a href="https://www.assent.com/capabilities/platform/capabilities-platform-supply-chain-reporting/">Reporting & Data</a></li> 2312<li id="menu-item-77266" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77266"><a href="https://www.assent.com/capabilities/platform/supply-chain-integrations/">Integrations</a></li> 2313</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-11" class=""><span>Services</span><div class="menu-webistry-footer-menu-4-container"><ul id="menu-webistry-footer-menu-4" class="menu"><li id="menu-item-77279" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77279"><a href="https://www.assent.com/capabilities/services/advisory-services/">Advisory Services</a></li> 2314<li id="menu-item-77276" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77276"><a href="https://www.assent.com/capabilities/services/supplier-engagement/">Supplier Engagement</a></li> 2315<li id="menu-item-77277" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77277"><a href="https://www.assent.com/capabilities/services/sustainability-compliance-program-management/">Program Management</a></li> 2316<li id="menu-item-567520" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-567520"><a href="https://www.assent.com/capabilities/expertise/">Regulatory Experts</a></li> 2317</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-12" class=""><span>Resources</span><div class="menu-webistry-footer-menu-5-container"><ul id="menu-webistry-footer-menu-5" class="menu"><li id="menu-item-77281" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77281"><a href="https://www.assent.com/blog/">Blog</a></li> 2318<li id="menu-item-77282" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77282"><a href="https://www.assent.com/resources/knowledge-center/">Knowledge Center</a></li> 2319<li id="menu-item-77283" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77283"><a href="https://www.assent.com/resources/content-hub/">Content Hub</a></li> 2320<li id="menu-item-77284" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77284"><a href="https://www.assent.com/resources/content-hub/?pager=1&filter=1&category%5B%5D=interactive-tool&search_text=&filter_order=">Tools</a></li> 2321</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-13" class=""><span>About</span><div class="menu-webistry-footer-menu-6-container"><ul id="menu-webistry-footer-menu-6" class="menu"><li id="menu-item-77285" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77285"><a href="https://www.assent.com/company/our-story/">Our Story</a></li> 2322<li id="menu-item-77288" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77288"><a href="https://www.assent.com/company/leadership/">Leadership</a></li> 2323<li id="menu-item-77575" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77575"><a href="https://www.assent.com/why-assent/">Why Assent</a></li> 2324<li id="menu-item-77287" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77287"><a href="https://www.assent.com/company/our-customers/customer-case-study-videos/">Customer Stories</a></li> 2325</ul></div></div></div><div class="cell-xl-3 cell-lg-3 cell-md-4 cell-sm-12 quick-links"><div id="nav_menu-14" class=""><span>Connect</span><div class="menu-webistry-footer-menu-7-container"><ul id="menu-webistry-footer-menu-7" class="menu">
2325<li id="menu-item-77289" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77289"><a href="https://www.assent.com/company/contact-us/">Contact Us</a></li> 2326<li id="menu-item-82824" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-82824"><a href="https://www.assent.com/book-a-demo/">Book a Demo</a></li> 2327<li id="menu-item-77290" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77290"><a href="https://www.assent.com/company/careers/">Careers</a></li> 2328<li id="menu-item-77292" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77292"><a href="https://www.assent.com/customer-support/">Support</a></li> 2329</ul></div></div></div> </div> 2330 <div class="cell-xl-4"> 2331 <div class="subscribe-wrap"><div class="subscribe-title">Subscribe to Assent</div><div class="subscribe-form-wrap"><p>Sign up to stay in the loop on industry trends and hear about upcoming events.</p><input type="hidden" id="form_nonce" name="form_nonce" value="53eca0c35d" /><input type="hidden" name="_wp_http_referer" value="/solutions/product-compliance/" /><!-- Newsletter --> 2332<form action="/form-handler" class="form--wrap newsletter" data-handler="pardotForm6" method="post" class="newsletter" data-formtype="newsletter" onsubmit = "return demoFunction(this);" > 2333 <p class="form-field email pd-text required"> 2334 <label class="field-label" for="Email">Business Email Address</label> 2335 <input type="email" name="Email" id="pardot_email" value="" class="text" size="30" maxlength="255" onchange="" onfocus="" required=""> 2336 </p> 2337 2338 <p class="form-field utm_campaign pd-hidden hidden "> 2339 <input type="hidden" name="utm_campaign" id="pardot_utm_campaign" value=""> 2340 </p> 2341 2342 <p class="form-field utm_medium pd-hidden hidden "> 2343 <input type="hidden" name="utm_medium" id="pardot_utm_medium" value=""> 2344 </p> 2345 2346 <p class="form-field utm_source pd-hidden hidden "> 2347 <input type="hidden" name="utm_source" id="pardot_utm_source" value=""> 2348 </p> 2349 2350 <p class="form-field utm_term pd-hidden hidden "> 2351 <input type="hidden" name="utm_term" id="pardot_utm_term" value=""> 2352 </p> 2353 2354 <p class="form-field utm_region pd-hidden hidden "> 2355 <input type="hidden" name="utm_region" id="pardot_utm_region" value=""> 2356 </p> 2357 2358 <p class="form-field utm_channel pd-hidden hidden "> 2359 <input type="hidden" name="utm_channel" id="pardot_utm_channel" value=""> 2360 </p> 2361 2362 <p class="form-field utm_content pd-hidden hidden "> 2363 <input type="hidden" name="utm_content" id="pardot_utm_content" value=""> 2364 </p> 2365 2366 <p class="form-field referring-page pd-hidden hidden "> 2367 <input type="hidden" name="ReferringPage" id="pardot_referring_page" value=""> 2368 </p> 2369 2370 <p class="form-field targetCampaign pd-hidden hidden "> 2371 <input type="hidden" name="targetCampaign" id="pardot_target_campaign" value=""> 2372 </p> 2373 2374<!-- <p class="form-field test_book_a_demo_checkbox pd-checkbox required no-label "> 2375 <span class="value"><span><input type="checkbox" name="Book a demo" id="demo-checkbox" value="" onchange=""><label class="inline" for="Book a demo">I would like to book a demo.</label></span></span> 2376 </p> --> 2377 2378 <!-- forces IE5-8 to correctly submit UTF8 content --> 2379 <input name="_utf8" type="hidden" value="â"> 2380 <p class="submit" style="margin-bottom: 0;"> 2381 <input type="submit" value="Sign Up Now"> 2382 </p> 2383 2384<p class="form-field consent-stmt full reveal" style="line-height: 1.1; font-size: 12px;"> 2385 <span>By submitting this form, I consent<span class="dots"> ...see more </span><span class="more"> to be contacted by Assent, which includes receiving Assent's newsletter and other promotional messages via email, in accordance with <a href="https://www.assent.com/privacy/" target="_blank">Assentâs Privacy Policy</a>.</span></span> 2386 </p> 2387<!-- 2388 <p class="form-field consent-stmt full reveal" style="line-height: 1.1; font-size: 12px;"> 2389 <a id="terms" title="Terms & Conditions" href="#popup-msg">See terms & conditions</a> 2390 </p> 2391-->
2392<input type="hidden" name="form_validation" value="Y21GRjI2Vm9FaCtsTnExNVVTbWRFajBuRXZ3WXlJUEszOWNqbUhHVG8xaEdlRVk0QUN4VEEvWTRFa21sT1YxSHk5b1ZYMWJsZEdob2xRMXpNUTlLeHc9PTo6_AIg-t-Pqm3EYn1EOzrQmA" /><input type="hidden" id="form_nonce" name="form_nonce" value="53eca0c35d" /><input type="hidden" name="_wp_http_referer" value="/solutions/product-compliance/" /></form>
2393<script type="text/javascript"> 2394</script>
2394 2395 2396<!--
2397<script> 2398jQuery(document).ready(function(){ 2399 jQuery("#terms").fancybox({ 2400 'scrolling' : 'no', 2401 'titleShow' : false, 2402 'onClosed' : function() { 2403 $("#popup-msg").hide(); 2404 } 2405 }); 2406}); 2407</script>
2407 2408--> 2409 2410<style> 2411.dots { font-weight: 700; color: #813679; } 2412.dots, .dots:hover { cursor: pointer; } 2413.more, 2414.consent-stmt.full .dots { display: none; } 2415.consent-stmt.full .more { display: inline; opacity: 0; transition: all 0.2s ease; } 2416.consent-stmt.full.reveal .more { opacity: 1; } 2417</style>
2418<script> 2419jQuery(document).ready(function(){ 2420 function show_privacy() { 2421 jQuery('.consent-stmt').addClass('full'); 2422 setTimeout(function() { 2423 jQuery('.consent-stmt').addClass('reveal'); 2424 }, 200); 2425 } 2426 jQuery('.dots').on('click', show_privacy); 2427 jQuery('[data-formtype="newsletter"] input[type="email"]').focus(show_privacy); 2428}); 2429</script>
2429</div> 2430 </div> 2431 <div class="recaptcha-notice"> 2432 <hr> 2433 <span>This site is protected by reCAPTCHA and the Google 2434 <a href="https://policies.google.com/privacy" target="_blank">Privacy Policy</a> and 2435 <a href="https://policies.google.com/terms" target="_blank">Terms of Service</a> apply.</span> 2436 </div> 2437 2438 </div> 2439 </div> 2440 </div> 2441 2442 <div class="main-footer-bottom d-flex justify-content-between align-items-center pb-30"> 2443 <div class="footer-bottom-left d-flex align-items-center"> 2444 <div class="footer-bottom-menu"><ul id="menu-webistry-footer-menu-8" class="menu"><li id="menu-item-77293" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-home menu-item-has-children menu-item-77293"><a href="https://www.assent.com/">English</a> 2445<ul class="sub-menu"> 2446 <li id="menu-item-77294" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77294"><a href="https://www.assent.com/de/">Deutsch</a></li> 2447 <li id="menu-item-77295" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77295"><a href="https://www.assent.com/it/">Italiano</a></li> 2448 <li id="menu-item-77296" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77296"><a href="https://www.assent.com/fr/">Français</a></li> 2449</ul> 2450</li> 2451<li id="menu-item-77297" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77297"><a href="https://www.assent.com/privacy/">Assent & Website Privacy Policy</a></li> 2452<li id="menu-item-77298" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77298"><a href="https://www.assent.com/assent-sustainability-platform-asp-terms-of-service/">Assent Sustainability Platform (ASP) â Terms of Service</a></li> 2453<li id="menu-item-77299" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77299"><a href="#cookie-preferences">Cookies Preferences</a></li> 2454</ul></div> </div> 2455 <div class="footer-bottom-right"> 2456 <div class="copyright-content d-flex">© 2026 <p>Assent Inc.</p> 2457</div> </div> 2458 </div> 2459 </div> 2460</footer> 2461 2462 2463<div class="custom-popup-as0008 bottom-tri-block hidden"> 2464 <button class="state-change" aria-label="Minify"></button> 2465 <figure> 2466 <img src="/wp-content/themes/assent-wp/assets/images/webistry/discover_our_platform.png" alt="Discover Our Platform"> 2467 </figure> 2468 <article> 2469 <h3>Still Exploring?</h3> 2470 <p>Looks like youâve been exploring our platform.<br>Want to see everything in one place?</p> 2471 <a href="https://www.assent.com/capabilities/platform/">Discover Our Platform</a> 2472 </article> 2473</div> 2474 2475 2476 2477 <div class="back-to-top"> 2478 <div class="back-to-top-wrap hidden"> 2479 2480 <a class="btn back-to-top-link use-header-cta" href="#">Book a Demo</a> 2481 2482 2483 <button type="button" class="btn-link -green"> 2484 Back to Top </button> 2485 2486 2487 </div> 2488 </div> 2489 2490
2491<script type="speculationrules"> 2492{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/assent-wp/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 2493</script>
2493 2494<!--noptimize--><!-- Page generated in 1.2862 seconds. --><!--/noptimize--> 2495<div role="navigation" aria-label="Language Switcher" class="wpml-ls-statics-footer wpml-ls wpml-ls-legacy-list-horizontal"> 2496 <ul><li class="wpml-ls-slot-footer wpml-ls-item wpml-ls-item-de wpml-ls-first-item wpml-ls-item-legacy-list-horizontal"> 2497 <a href="https://www.assent.com/de/loesungen/produktkonformitaet/" hreflang="de" lang="de" class="wpml-ls-link" aria-label="Switch to German (Deutsch)" title="Switch to German (Deutsch)"> 2498 <img 2499 class="wpml-ls-flag" 2500 src="https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/res/flags/de.png" 2501 alt="" 2502 loading="lazy" 2503 width=18 2504 height=12 2505 /><span class="wpml-ls-native">Deutsch</span><span class="wpml-ls-display"><span class="wpml-ls-bracket"> (</span>German<span class="wpml-ls-bracket">)</span></span></a> 2506 </li><li class="wpml-ls-slot-footer wpml-ls-item wpml-ls-item-en wpml-ls-current-language wpml-ls-item-legacy-list-horizontal"> 2507 <a href="https://www.assent.com/solutions/product-compliance/" hreflang="en" lang="en" class="wpml-ls-link" aria-current="page" aria-label="Switch to English (English)" title="Switch to English (English)"> 2508 <img 2509 class="wpml-ls-flag" 2510 src="https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/res/flags/en.png" 2511 alt="" 2512 loading="lazy" 2513 width=18 2514 height=12 2515 /><span class="wpml-ls-native">English</span></a> 2516 </li><li class="wpml-ls-slot-footer wpml-ls-item wpml-ls-item-fr wpml-ls-item-legacy-list-horizontal"> 2517 <a href="https://www.assent.com/fr/solutions/conformite-produits/" hreflang="fr" lang="fr" class="wpml-ls-link" aria-label="Switch to French (Français)" title="Switch to French (Français)"> 2518 <img 2519 class="wpml-ls-flag" 2520 src="https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/res/flags/fr.png" 2521 alt="" 2522 loading="lazy" 2523 width=18 2524 height=12 2525 /><span class="wpml-ls-native">Français</span><span class="wpml-ls-display"><span class="wpml-ls-bracket"> (</span>French<span class="wpml-ls-bracket">)</span></span></a> 2526 </li><li class="wpml-ls-slot-footer wpml-ls-item wpml-ls-item-it wpml-ls-last-item wpml-ls-item-legacy-list-horizontal"> 2527 <a href="https://www.assent.com/it/soluzioni/conformita-del-prodotto/" hreflang="it" lang="it" class="wpml-ls-link" aria-label="Switch to Italian (Italiano)" title="Switch to Italian (Italiano)"> 2528 <img 2529 class="wpml-ls-flag" 2530 src="https://www.assent.com/wp-content/plugins/sitepress-multilingual-cms/res/flags/it.png" 2531 alt="" 2532 loading="lazy" 2533 width=18 2534 height=12 2535 /><span class="wpml-ls-native">Italiano</span><span class="wpml-ls-display"><span class="wpml-ls-bracket"> (</span>Italian<span class="wpml-ls-bracket">)</span></span></a> 2536 </li></ul> 2537</div> 2538<link rel='stylesheet' id='quick-links-grid-css-css' href='https://www.assent.com/wp-content/themes/assent-wp/blocks/quick-links-grid/quick-links-grid.css?ver=1790264585' media='all' />
2539<script data-wp-strategy="defer" defer id="ASSENT-slick-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/slick-1.8.1.min.js?ver=1790175983"></script>
vendor: 1 bytes, line 2539
2539
2540<script data-wp-strategy="defer" defer id="ASSENT-select2-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/select2.min.js?ver=1790175983"></script>
vendor: 1 bytes, line 2540
2540
2541<script data-wp-strategy="defer" defer id="ASSENT-sticky-kit-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/jquery.sticky-kit.min.js?ver=1790175983"></script>
vendor: 1 bytes, line 2541
2541
2542<script data-wp-strategy="defer" defer id="ASSENT-vimeo-player-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/vimeo-player.js?ver=1790175983"></script>
vendor: 1 bytes, line 2542
2542
2543<script data-wp-strategy="defer" defer id="ASSENT-jquery-validate-js" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.3/jquery.validate.min.js"></script>
vendor: 1 bytes, line 2543
2543
2544<script data-wp-strategy="defer" defer id="ASSENT-device-menu-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/device-menu.js?ver=1790175983"></script>
vendor: 1 bytes, line 2544
2544
2545<script data-wp-strategy="defer" defer id="ASSENT-scripts-jquery-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/scripts.js?ver=1790175983&ver=1.14"></script>
vendor: 1 bytes, line 2545
2545
2546<script id="ASSENT-form-loading-spinner-js-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/form-loading-spinner.js?ver=1790175983"></script>
vendor: 1 bytes, line 2546
2546
2547<script id="ASSENT-component-interaction-js-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/component-interaction.js?ver=1790175983"></script>
vendor: 1 bytes, line 2547
2547
2548<script id="demo-button-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/demo-button.js?ver=1790175983&ver=1790264585"></script>
vendor: 1 bytes, line 2548
2548
2549<script id="open-cookie-preferences-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/open-cookie-preferences.js?ver=1790175983&ver=1.0.0"></script>
vendor: 1 bytes, line 2549
2549
2550<script id="page-links-to-js" src="https://www.assent.com/wp-content/plugins/page-links-to/dist/new-tab.js?ver=1790175981&ver=3.4.1"></script>
vendor: 1 bytes, line 2550
2550
2551<script id="smush-lazy-load-js" src="https://www.assent.com/wp-content/plugins/wp-smush-pro/app/assets/js/smush-lazy-load-native.min.js?ver=3.9.6"></script>
vendor: 1 bytes, line 2551
2551
2552<script id="recaptcha-zoominfo-js" src="https://www.assent.com/wp-content/themes/assent-wp/assets/js/recaptcha-zoominfo.js?ver=1.1.0"></script>
vendor: 1 bytes, line 2552
2552
2553<script id="quick-links-grid-js-js" src="https://www.assent.com/wp-content/themes/assent-wp/blocks/quick-links-grid/quick-links-grid.js?ver=1790264585"></script>
vendor: 1 bytes, line 2553
2553
2554<script id="wp-emoji-settings" type="application/json"> 2555{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.assent.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1"}} 2556</script>
vendor: 1 bytes, line 2556
2556
2557<script type="module"> 2558/*! This file is auto-generated */ 2559var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 2560//# sourceURL=https://www.assent.com/wp-includes/js/wp-emoji-loader.min.js 2561</script>
2561 2562
2562<script id="assent-form-logger-late"> 2563 (function() { 2564 var L = window.__assentFormLogger; 2565 if (!L) return; 2566 2567 // --- 1. jQuery AJAX failures (gated resource forms) --- 2568 if (window.jQuery) { 2569 jQuery(document).ajaxComplete(function(event, xhr, settings) { 2570 try { 2571 var url = (settings && settings.url) || ''; 2572 if (url.indexOf('admin-ajax.php') === -1) return; 2573 2574 var data = (settings && typeof settings.data === 'string') ? settings.data : ''; 2575 if (data.indexOf('handle_ajax_form') === -1) return; 2576 2577 var params = data ? new URLSearchParams(data) : null; 2578 var email = params ? (params.get('Email') || params.get('email') || '') : ''; 2579 var tokens = params ? params.getAll('g-recaptcha-response') : []; 2580 var last = tokens.length ? tokens[tokens.length - 1] : ''; 2581 2582 var payload = { 2583 email: email, 2584 http_status: xhr.status, 2585 token_count: tokens.length 2586 }; 2587 2588 if (xhr.status >= 400) { 2589 payload.error_type = 'client_http_error'; 2590 payload.error_message = 'HTTP ' + xhr.status + ' (' + xhr.statusText + ')'; 2591 L.send(payload); 2592 return; 2593 } 2594 2595 if (xhr.responseJSON && xhr.responseJSON.success === false) { 2596 var d = xhr.responseJSON.data || {}; 2597 var code = d.error || d.message || 'unknown'; 2598 payload.error_type = (code === 'RE0001') ? 'low_score' 2599 : (String(code).indexOf('Missing reCAPTCHA') === 0 ? 'missing_token' : 'client_logic_error'); 2600 payload.error_message = String(code) + (last ? ' [token sent: ok]' : ' [token sent: EMPTY]'); 2601 if (typeof d.score !== 'undefined') payload.score = d.score; 2602 L.send(payload); 2603 } 2604 } catch (e) {} 2605 }); 2606 } 2607 2608 // --- 2. HTML5 validation errors --- 2609 document.addEventListener('invalid', function(e) { 2610 try { 2611 var t = e.target; 2612 if (!t || ['INPUT', 'SELECT', 'TEXTAREA'].indexOf(t.tagName) === -1) return; 2613 2614 var form = t.closest ? t.closest('form') : null; 2615 var emailField = form ? form.querySelector('input[type="email"]') : null; 2616 2617 L.send({ 2618 error_type: 'validation_error', 2619 error_message: 'Validation failed on field: ' + (t.name || t.id || 'unnamed'), 2620 email: emailField ? emailField.value : '' 2621 }); 2622 } catch (err) {} 2623 }, true); 2624 2625 // --- 3. JavaScript crashes --- 2626 window.addEventListener('error', function(e) { 2627 try { 2628 if (!e || !e.message) return; 2629 L.send({ 2630 error_type: 'js_crash', 2631 error_message: e.message + ' (' + (e.filename || '?') + ':' + (e.lineno || 0) + ')' 2632 }); 2633 } catch (err) {} 2634 }); 2635 })(); 2636 </script>
2636 2637<!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 2637-2638
2637 2638<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
2638GTM-KNHXFGP
vendor: 85 bytes, lines 2638-2639
2638" 2639height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
2640<!-- End Google Tag Manager (noscript) --> 2641
2642<script type="text/javascript" src="https://www.gartner.com/peer-insights/vendor-portal/public/Widget/js/widget.js"></script>
vendor: 2 bytes, line 2642
2642
2643<script type="text/javascript"> 2644const gartnerEl = document.querySelector('#widget-container'); 2645GartnerPI_Widget({ 2646 size: "small", 2647 theme: "dark", 2648 sourcingLink: "https://gtnr.io/NWZaMrv7d", 2649 widget_id: "YWVhYWI2N2EtMzMyNS00NzJiLWJiN2ItNTVjMDU1MzRlMThh", 2650 version: "2", 2651 container: gartnerEl 2652 }) 2653 2654setTimeout(function (){ 2655document.querySelectorAll("[id='widget-container']").forEach(el => { 2656if (el != gartnerEl) { 2657 el.innerHTML = gartnerEl.innerHTML; 2658} 2659}); 2660}, 2000); 2661</script>
2661 2662 2663 2664
2665<script defer type="text/javascript" id="zoom"> 2666piAId = '956773'; 2667piCId = '2197'; 2668piHostname = 'pi.pardot.com'; 2669(function() { 2670 function async_load(){ 2671 var s = document.createElement('script'); s.type = 'text/javascript'; 2672 s.src = ('https:' == document.location.protocol ? 'https://pi' : 'http://cdn') + '.pardot.com/pd.js'; 2673 var c = document.getElementsByTagName('script')[0]; c.parentNode.insertBefore(s, c); 2674 } 2675 if(window.attachEvent) { window.attachEvent('onload', async_load); } 2676 else { window.addEventListener('load', async_load, false); } 2677})(); 2678</script>
2678 2679 2680<!--vwo off-site homepage/pricing/book-a-demo tracking from march 27, 2025-->
2681<script type="text/javascript"> 2682if (typeof VWO !== 'undefined' && typeof VWO.push === 'function') { 2683 if (document.cookie.includes("vwo_homepage_variant_seen=true")) { 2684 VWO.push(['track.goalConversion', 234]); 2685 document.cookie = "vwo_homepage_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2686 } 2687 2688 if (document.cookie.includes("vwo_pricing_variant_seen=true")) { 2689 VWO.push(['track.goalConversion', 235]); 2690 document.cookie = "vwo_pricing_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2691 } 2692 2693 if (document.cookie.includes("vwo_book_a_demo_variant_seen=true")) { 2694 VWO.push(['track.goalConversion', 236]); 2695 document.cookie = "vwo_book_a_demo_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2696 } 2697 2698 if (document.cookie.includes("vwo_book_a_demo_electronics_variant_seen=true")) { 2699 VWO.push(['track.goalConversion', 250]); 2700 document.cookie = "vwo_book_a_demo_electronics_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2701 } 2702} 2703</script>
2703 2704 2705<!--vwo off-site homepage/pricing/book-a-demo tracking from may 2, 2025-->
2706<script type="text/javascript"> 2707if (typeof VWO !== 'undefined' && typeof VWO.push === 'function') { 2708 if (document.cookie.includes("vwo_homepage_medical_variant_seen=true")) { 2709 VWO.push(['track.goalConversion', 241]); 2710 document.cookie = "vwo_homepage_medical_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2711 } 2712 2713 if (document.cookie.includes("vwo_pricing_medical_variant_seen=true")) { 2714 VWO.push(['track.goalConversion', 243]); 2715 document.cookie = "vwo_pricing_medical_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2716 } 2717 2718 if (document.cookie.includes("vwo_book_a_demo_medical_variant_seen=true")) { 2719 VWO.push(['track.goalConversion', 245]); 2720 document.cookie = "vwo_book_a_demo_medical_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2721 } 2722 2723if (document.cookie.includes("vwo_homepage_electronics_seen=true")) { 2724 VWO.push(['track.goalConversion', 248]); 2725 document.cookie = "vwo_homepage_electronics_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2726 } 2727 2728if (document.cookie.includes("vwo_pricing_electronics_variant_seen=true")) { 2729 VWO.push(['track.goalConversion', 252]); 2730 document.cookie = "vwo_pricing_electronics_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2731 } 2732 2733if (document.cookie.includes("vwo_book_a_demo_electronics_variant_seen=true")) { 2734 VWO.push(['track.goalConversion', 250]); 2735 document.cookie = "vwo_book_a_demo_electronics_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2736 } 2737 2738 2739 2740if (document.cookie.includes("vwo_homepage_aerospace_variant_seen=true")) { 2741 VWO.push(['track.goalConversion', 254]); 2742 document.cookie = "vwo_homepage_aerospace_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2743 } 2744 2745if (document.cookie.includes("vwo_pricing_aerospace_variant_seen=true")) { 2746 VWO.push(['track.goalConversion', 255]); 2747 document.cookie = "vwo_pricing_aerospace_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2748 } 2749 2750if (document.cookie.includes("vwo_book_a_demo_aerospace_variant_seen=true")) { 2751 VWO.push(['track.goalConversion', 257]); 2752 document.cookie = "vwo_book_a_demo_aerospace_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2753 } 2754 2755if (document.cookie.includes("vwo_homepage_automotive_variant_seen=true")) { 2756 VWO.push(['track.goalConversion', 261]); 2757 document.cookie = "vwo_homepage_automotive_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2758 } 2759 2760if (document.cookie.includes("vwo_pricing_automotive_variant_seen=true")) { 2761 VWO.push(['track.goalConversion', 262]); 2762 document.cookie = "vwo_pricing_automotive_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2763 } 2764 2765if (document.cookie.includes("vwo_book_a_demo_automotive_variant_seen=true")) { 2766 VWO.push(['track.goalConversion', 264]); 2767 document.cookie = "vwo_book_a_demo_automotive_variant_seen=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; 2768 } 2769 2770 2771} 2772</script>
2772 2773 2774<!--Canadian cta tracking-->
2775<script type="text/javascript"> 2776 window._vis_opt_queue = window._vis_opt_queue || []; 2777 window._vis_opt_queue.push(function() {_vis_opt_goal_conversion(238);}); 2778</script>
2778 2779 2780<!--AI messaging-->
2781<script type="text/javascript"> 2782 window._vis_opt_queue = window._vis_opt_queue || []; 2783 window._vis_opt_queue.push(function() {_vis_opt_goal_conversion(239);}); 2784</script>
2784 2785
2786<script defer> 2787 2788 jQuery(document).ready(function ($) { 2789 // Initialize FancyBox 2790 $("[data-fancybox]").fancybox({ 2791 baseClass: "fancybox-custom-layout", 2792 transitionEffect: "slide", 2793 animationEffect: "fade", 2794 slideClass: "fancybox-slide--custom", 2795 infobar: false, 2796 buttons: [ 2797 "close" 2798 ], 2799 thumbs: { 2800 autoStart: true, 2801 hideOnClose: true, 2802 parentEl: ".fancybox-slide--custom" 2803 } 2804 }); 2805 2806 2807 if($(".form--wrap").length){ 2808 $.validator.messages = $.extend({}, $.validator.messages, { 2809 required: 'This field is required.', 2810 remote: 'Please fix this field.', 2811 email: 'Please enter a valid email address.', 2812 url: 'Please enter a valid URL.', 2813 date: 'Please enter a valid date.', 2814 dateISO: 'Please enter a valid date (ISO).', 2815 number: 'Please enter a valid number.', 2816 digits: 'Please enter only digits.', 2817 equalTo: 'Please enter the same value again.', 2818 maxlength: $.validator.format('Please enter no more than {0} characters.'), 2819 minlength: $.validator.format('Please enter at least {0} characters.'), 2820 rangelength: $.validator.format('Please enter a value between {0} and {1} characters long.'), 2821 range: $.validator.format('Please enter a value between {0} and {1}.'), 2822 max: $.validator.format('Please enter a value less than or equal to {0}.'), 2823 min: $.validator.format('Please enter a value greater than or equal to {0}.'), 2824 step: $.validator.format('Please enter a multiple of {0}.') 2825 }); 2826 } 2827 }); 2828</script>
vendor: 1 bytes, line 2828
2828
2829<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-222c0d99af9fd6e2b0b","applicationID":"1502973767","transactionName":"ZlQBYUNYWEZZAUNfXV8eIlZFUFlbFxJWUVc=","queueTime":0,"applicationTime":1471,"atts":"ShMCFwtCS0g=","errorBeacon":"bam.nr-data.net","agent":""}</script>
2829</body> 2830</html>
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.