CINXE.COM
Our mission and company milestones | CAM attachments
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <!-- Google Tag Manager STAGING snippet --> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer', 'GTM-NMP2NCS'); </script> <!-- End Google Tag Manager --> <!-- Google Tag Manager STAGING snippet --> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer', 'GTM-T5VXB9W'); </script> <!-- End Google Tag Manager --> <meta charset="utf-8" /><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"NRJS-b9938b7a1ebcf202765",applicationID:"941808955"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={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)),o=0===Object.keys(r).length?e:r;for(let a in o)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]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={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},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={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,harvestTimeSeconds:10,autoStart:!0},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},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.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){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.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,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="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),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(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].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(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],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).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,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[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!!m()[s[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 g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},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,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(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 o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(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)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},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})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,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}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{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)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=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)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <noscript><style>form.antibot * :not(.antibot-message) { display: none !important; }</style> </noscript><meta name="description" content="Learn more about CAM attachments mission and聽company聽milestones. Quality, experience and reliability are only a few of our strengths." /> <link rel="canonical" href="https://www.camattachments.com/about-us/about-cam-attachments" /> <script type="text/javascript" src="//cdn.optimizely.com/js/19594932999.js"></script> <meta name="Generator" content="Drupal 10 (https://www.drupal.org)" /> <meta name="MobileOptimized" content="width" /> <meta name="HandheldFriendly" content="true" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" /> <script src="https://cdn-cookieyes.com/client_data/149324a5ee61440c9e931b36/script.js" type="text/javascript" id="cookieyes"></script> <link rel="apple-touch-icon" sizes="180x180" href="/sites/camattachments/themes/custom/dropsolid-base/favicons/generated/apple-touch-icon.png" /> <link rel="icon" sizes="32x32" href="/sites/camattachments/themes/custom/dropsolid-base/favicons/generated/favicon-32x32.png" /> <link rel="icon" sizes="16x16" href="/sites/camattachments/themes/custom/dropsolid-base/favicons/generated/favicon-16x16.png" /> <link rel="mask-icon" href="/sites/camattachments/themes/custom/dropsolid-base/favicons/generated/safari-pinned-tab.svg" color="#5bbad5" /> <meta name="theme-color" content="#FFFFFF" /> <link rel="icon" href="/sites/camattachments/themes/custom/dropsolid-base/favicon.ico" type="image/vnd.microsoft.icon" /> <title>Our mission and company milestones | CAM attachments</title> <link rel="stylesheet" media="all" href="/sites/camattachments/files/css/css_dBuz74na6nN7J6_aKKb6Dpn9ih0Z9PC89g7HSYYRk9o.css?delta=0&language=en&theme=dropsolid_base&include=eJxtjlsOAyEIRTdEdEmGUeqYoBjQmbSrr23SNNP0h8fhXiBiDSdtN9EadmyJSc3HP9DNUcHuNqj6DY0gMprdL3UlM8xkEEXJt2VHLg-CceyB157SsvUl8L8gKOUibaVUlOIAloi8dIrNGMeaGSSVbsIlhddNf23hKHSaf0dXJU0m6KiYFftuSzw7svsSN1ufGxfbKX3eb5LoCVrba4U" /> <link rel="stylesheet" media="all" href="/sites/camattachments/files/css/css_qgMwBrRiXy62O_IAj-SeF_K0wipTZHwZb5lblflJYwg.css?delta=1&language=en&theme=dropsolid_base&include=eJxtjlsOAyEIRTdEdEmGUeqYoBjQmbSrr23SNNP0h8fhXiBiDSdtN9EadmyJSc3HP9DNUcHuNqj6DY0gMprdL3UlM8xkEEXJt2VHLg-CceyB157SsvUl8L8gKOUibaVUlOIAloi8dIrNGMeaGSSVbsIlhddNf23hKHSaf0dXJU0m6KiYFftuSzw7svsSN1ufGxfbKX3eb5LoCVrba4U" /> <script src="/sites/camattachments/files/js/optimized/js_eh1vMcrIeKp01syDIbFc4M9zCwpRglUJekbaAvmmLRM.WCzAhd2P6gRJF9Hv3oOOd-hFJi_QJbv-Azn4CGB8gfY.js?v=3.0.5"></script> <script src="/sites/camattachments/files/js/optimized/js_X6XUvedtWHwkHHkBb56i3F0TsO3xCvG3qROENt0M2eg.ib_9uYyhSCZ9hVcAQBeeRr_nUY9Nlk8SxkesK62PY7M.js?v=10.1.6"></script> </head> <body class="layout-no-sidebars path-node page-node-type-page"> <a href="#main-content" class="visually-hidden focusable skip-link"> Skip to main content </a> <div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas> <nav class="tabs"> </nav> <header role="banner"> <div class="menu-toggle--wrapper"> <a class="menu-toggle" href="javascript:void(0);"> <div class="menu"><span class="icon"> </span></div> </a> </div> <div id="block-dropsolid-base-branding" class="clearfix block block-system block-system-branding-block"> <div class="site-info"> <a href="/" title="Home" rel="home" class="site-logo"> <img src="/sites/camattachments/themes/custom/dropsolid-base/logo.svg" alt="Home" /> </a> </div> </div> <div class="header-inner"> <nav role="navigation" aria-labelledby="block-useraccountmenu-menu" id="block-useraccountmenu" class="block block-menu navigation menu--account"> <span class="visually-hidden" id="block-useraccountmenu-menu">User account menu</span> <ul class="clearfix menu"> <li class="menu-item"> <a href="/user/login" data-drupal-link-system-path="user/login">Log in</a> </li> </ul> </nav> <div id="block-languageswitcher" class="block block-tvh-landingspage block-tvh-language-switcher-block"> <a href="/landingspage?destination=en/about-us/about-cam-attachments">English</a> </div> <div class="views-exposed-form block-views-exposed-filter-blocksearch-search__page block block-views" data-drupal-selector="views-exposed-form-search-search-page" id="block-exposedformsearchsearch-page"> <form action="/search" method="get" id="views-exposed-form-search-search__page" accept-charset="UTF-8"> <div class="form--inline clearfix"> <div class="js-form-item form-item js-form-type-textfield form-type-textfield js-form-item-key form-item-key"> <label for="edit-key">Search</label> <input data-drupal-selector="edit-key" type="text" id="edit-key" name="key" value="" size="30" maxlength="128" class="form-text" /> </div> <div data-drupal-selector="edit-actions" class="form-actions js-form-wrapper form-wrapper" id="edit-actions"><input data-drupal-selector="edit-submit-search" type="submit" id="edit-submit-search" value="Search" class="button js-form-submit form-submit" /> </div> </div> </form> </div> </div> <div id="navigation"> <div class="navigation-inner"> <nav role="navigation" aria-labelledby="block-dropsolid-base-main-menu-menu" id="block-dropsolid-base-main-menu" class="block block-menu navigation menu--main"> <span class="visually-hidden" id="block-dropsolid-base-main-menu-menu">Main navigation</span> <ul class="clearfix menu"> <li class="menu-item"> <a href="/products" data-drupal-link-system-path="node/23">Products</a> </li> <li class="menu-item"> <a href="/residual-capacity-calculator" data-drupal-link-system-path="node/5813">Residual capacity calculator</a> </li> <li class="menu-item"> <a href="/media" data-drupal-link-system-path="node/5804">Media</a> </li> <li class="menu-item menu-item--expanded menu-item--active-trail"> <a href="/about-us" data-drupal-link-system-path="node/5811">About us</a> <ul class="menu"> <li class="menu-item menu-item--active-trail"> <a href="/about-us/about-cam-attachments" data-drupal-link-system-path="node/5810" class="is-active">About CAM attachments</a> </li> <li class="menu-item"> <a href="/about-us/quality" data-drupal-link-system-path="node/5812">Quality</a> </li> <li class="menu-item"> <a href="/about-us/discover-our-products-trade-shows" data-drupal-link-system-path="node/5874">Trade shows</a> </li> <li class="menu-item"> <a href="/about-us/customer-stories" data-drupal-link-system-path="node/5900">Customer stories</a> </li> </ul> </li> <li class="menu-item"> <a href="/blog" data-drupal-link-system-path="node/2">Blog</a> </li> <li class="menu-item"> <a href="/contact-us" data-drupal-link-system-path="node/5809">Contact us</a> </li> </ul> </nav> <div id="block-capacitycalculatorheader" class="capacity-calculator-header bundle-link view-mode-full block block-block-content block-block-content61fa73e4-ac1b-489f-8c08-4ee86bbe0f10"> <div class="field field--name-field-link field--type-link field--label-hidden field__items"> <div class="field__item"><a href="/become-customer"> Become a customer</a></div> </div> </div> </div> </div> </header> <div id="block-dropsolid-base-breadcrumbs" class="block block-system block-system-breadcrumb-block"> <nav class="breadcrumb" role="navigation" aria-labelledby="system-breadcrumb"> <span id="system-breadcrumb" class="visually-hidden">Breadcrumb</span> <ol> <li> <a href="/">Home</a> </li> <li> <a href="/about-us">About us</a> </li> <li> About CAM attachments </li> </ol> </nav> </div> <div data-drupal-messages-fallback class="hidden"></div> <main role="main" class="main"> <a id="main-content" tabindex="-1"></a> <div class="layout-content"> <div id="block-dropsolid-base-page-title" class="block block-core block-page-title-block"> <h1 class="page-title"><span class="field field--name-title field--type-string field--label-hidden">About CAM attachments</span> </h1> </div> <div id="block-dropsolid-base-content" class="block block-system block-system-main-block"> <article class="node node--type-page node--view-mode-full"> <div class="node__content content-without-sidebar"> <div class="field field--name-field-content field--type-entity-reference-revisions field--label-hidden field__items"> <div class="field__item"> <div class="paragraph paragraph--type--title-text paragraph--id--100 paragraph--view-mode--default width--100 align--left text-align--left"> <div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><p>CAM attachments products are recognised for their high quality standards and reliability. Thanks to our extensive accumulated experience, we can offer you a wide range of high-quality attachments.</p> <p>We have achieved great popularity in Western European countries such as Italy, France, the UK, Portugal, Germany, Spain and Belgium. We sell our products in more than 80 countries all over the world.聽</p> <h2>Product portfolio</h2> <p>Our product range includes a comprehensive variety of attachments, for different industries and types of machines. Sideshifters, fork positioners, multi-fork positioners, bale clamps, fork clamps, 180掳 or 360掳 rotating clamps, carton clamps and paper roll clamps are just some of the products manufactured by our Italian plant CAM Srl, but also skips, crane jibs, snow ploughs and forks are in our range. Moreover, CAM attachments offers customised solutions by studying the customer鈥檚 internal processes and produces attachments specifically tuned to those needs.聽</p> <h2>Key industries</h2> <p>Supported by its flexibility and experience, CAM attachments products successfully operate in all the main sectors of the market, such as the logistics industry, construction, food and beverage, agricultural sector, paper handling, recycling, white goods, manufacturing and foundry applications.</p> <h2>Attachments for all machines</h2> <p>Our attachments are made for different types of machines, such as forklifts, skid steer loaders, telehandlers and tractor loaders.</p> <h2>Our history</h2></div> </div> </div> <div class="field__item"> <div class="paragraph paragraph--type--image paragraph--id--105 paragraph--view-mode--default width--100 align--center"> <div class="field field--name-field-image field--type-image"> <picture> <source srcset="/sites/camattachments/files/styles/max_1200/public/2019-01/history%20EN_0.PNG?itok=BSV44LBR 1x" media="all and (min-width: 940px)" type="image/png" width="1200" height="664"/> <source srcset="/sites/camattachments/files/styles/max_940/public/2019-01/history%20EN_0.PNG?itok=OKPVSb1H 1x" media="all and (min-width: 720px)" type="image/png" width="940" height="520"/> <source srcset="/sites/camattachments/files/styles/max_720/public/2019-01/history%20EN_0.PNG?itok=VGP2J-Ov 1x" media="all and (min-width: 480px)" type="image/png" width="720" height="398"/> <source srcset="/sites/camattachments/files/styles/max_480/public/2019-01/history%20EN_0.PNG?itok=HsrPITDw 1x" type="image/png" width="480" height="266"/> <img src="/sites/camattachments/files/styles/max_480/public/2019-01/history%20EN_0.PNG?itok=HsrPITDw" alt="" /> </picture> </div> </div> </div> </div> </div> </article> </div> </div> </main> <aside class="doormat" role="contentinfo"> <img id="doormat-logo" src="/sites/camattachments/themes/custom/dropsolid-base/logo.svg" alt="Home"> <div class="container"> <div class="views-element-container block block-views block-views-blockproduct-categories-block-5" id="block-views-block-product-categories-block-5"> <span>Discover our range of attachments</span> <div><div class="column-container view view-product-categories view-id-product_categories view-display-id-block_5 js-view-dom-id-6d4dcca21d2cbc3356f3e8d5e5d0834dc8bb7bb835b46192e50512ff6b1f9fbe"> <div class="view-content"> <div> <ul class="clearfix menu"> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/sideshifts" hreflang="en">Sideshifts</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/fork-positioners" hreflang="en">Fork positioners</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/multi-fork-positioner" hreflang="en">Multi-fork positioner</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/rotators" hreflang="en">Rotators</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/box-rotators" hreflang="en">Box rotators</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/roll-clamps" hreflang="en">Roll clamps</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/clamps" hreflang="en">Clamps</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/bale-clamps" hreflang="en">Bale clamps</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/appliance-and-carton-clamps" hreflang="en">Appliance and carton clamps</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/concrete-block-clamps" hreflang="en">Concrete block clamps</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/push-pulls" hreflang="en">Push-pulls</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/load-extenders-stabilisers" hreflang="en">Load extenders & stabilisers</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/bale-gripper" hreflang="en">Bale gripper</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/bale-spears-and-carriers" hreflang="en">Bale spears and carriers</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/carriages" hreflang="en">Carriages</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/skips" hreflang="en">Skips</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/scoops" hreflang="en">Scoops</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/loading-buckets" hreflang="en">Loading buckets</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/booms" hreflang="en">Booms</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/crane-jibs" hreflang="en">Crane jibs</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/fork-mounted-hooks" hreflang="en">Fork-mounted hooks</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/big-bag-handlers" hreflang="en">Big bag handlers</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/snow-ploughs" hreflang="en">Snow ploughs</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/yard-scrapers" hreflang="en">Yard scrapers</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/fork-mounted-drum-clamps-and-rotators" hreflang="en">Fork-mounted drum clamps and rotators</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/forklift-cages" hreflang="en">Forklift cages</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/forks-fork-extensions" hreflang="en">Forks & fork extensions</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/manure-forks" hreflang="en">Manure forks</a></span></span></li> <li class="menu-item"><span class="views-field views-field-name"><span class="field-content"><a href="/products/grab-buckets" hreflang="en">Grab buckets</a></span></span></li> </ul> </div> </div> </div> </div> </div> <div id="block-doormat" class="block block-system block-system-menu-blockdoormat"> <span>Navigation</span> <ul class="clearfix menu"> <li class="menu-item"> <a href="/residual-capacity-calculator" data-drupal-link-system-path="node/5813">Residual capacity calculator</a> </li> <li class="menu-item menu-item--active-trail"> <a href="/about-us" data-drupal-link-system-path="node/5811">About us</a> </li> <li class="menu-item"> <a href="/blog" data-drupal-link-system-path="node/2">Blog</a> </li> <li class="menu-item"> <a href="/user/login" data-drupal-link-system-path="user/login">Log in</a> </li> </ul> </div> <div id="block-footersociallinks" class="bundle-link view-mode-full block block-block-content block-block-contentc4ecc935-e97e-418c-a62a-cd6e1010a1bf"> <span>Follow us</span> <div class="field field--name-field-link field--type-link field--label-hidden field__items"> <div class="field__item"><a href="https://www.facebook.com/camattachments" target="_blank">Facebook</a></div> <div class="field__item"><a href="https://www.linkedin.com/company/camattachments/" target="_blank">LinkedIn</a></div> <div class="field__item"><a href="https://vimeo.com/camattachments" target="_blank">Vimeo</a></div> <div class="field__item"><a href="https://www.youtube.com/channel/UCvR13tGOcONCydb_r0IDjsQ" target="_blank">Youtube</a></div> </div> </div> </div> </aside> <footer class="footer" role="contentinfo"> <nav role="navigation" aria-labelledby="block-footer-menu" id="block-footer" class="block block-menu navigation menu--footer"> <span class="visually-hidden" id="block-footer-menu">Navigation</span> <ul class="clearfix menu"> <li class="menu-item"> <a href="/disclaimer" data-drupal-link-system-path="node/20">Disclaimer</a> </li> <li class="menu-item"> <a href="/privacy-policy" data-drupal-link-system-path="node/18">Privacy policy</a> </li> <li class="menu-item"> <a href="/terms-conditions" data-drupal-link-system-path="node/22">Terms & conditions</a> </li> <li class="menu-item"> <a href="/cookie-policy" data-drupal-link-system-path="node/5817">Cookie policy</a> </li> <li class="menu-item"> <a href="/tvh-network" data-drupal-link-system-path="node/5877">Directory</a> </li> </ul> </nav> <div id="block-copyrightfooter" class="block block-copyright-footer"> © 2024 </div> <div id="block-dropsolid-base-twilio" class="block block-nsa-twilio"> <div id="twilio-webchat-widget-root"></div> </div> </footer> </div> <script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/","scriptPath":null,"pathPrefix":"","currentPath":"node\/5810","currentPathIsAdmin":false,"isFront":false,"currentLanguage":"en"},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"utmTagNames":{"utm_source":"UTM Source","utm_medium":"UTM Medium","utm_campaign":"UTM Campaign","utm_content":"UTM Content","gclid":"Google Click ID"},"utmCookieName":"cam_utm","ajaxTrustedUrl":{"\/search":true},"user":{"uid":0,"permissionsHash":"2150f83acf733b7cc3d4c0dd302f7f65ab66f2b31e3195e8b6e0e022d8043614"}}</script> <script src="/sites/camattachments/files/js/optimized/js_dxIVcwvQ00owLGoUGPTfRYXU-T5rnj8Xi0cXfb3Kn58.2Pmvv0kuTBOenSvLm6bvfBSSHrUJ-3A7x6P5Ebd07_g.js?v=3.7.0"></script> <script src="/sites/camattachments/files/js/optimized/js_w0iO3No0CsyHgJmryEbhwpkh5zx6m6dhvawBt4ufwyA.HRN_m4FplP890kDvBJQuv0fEgTHDKwrMZA2zBldV1JY.js?v=1.0.1"></script> <script src="/sites/camattachments/files/js/optimized/js_Hpe5jrMuKXrV4HSTMApXJsNBxraAgcHUrTjxkwWKqy8.9H1W9OQqD9V27idEVOJMCFAQtGS4Scq-gAQciKr0U2M.js?v=10.1.6"></script> <script src="/sites/camattachments/files/js/optimized/js_V1oRQ-kJlXBZaEklOtPUe_1t8-l0RS94HJ3gsqxKikc.yMvydAoGeGX2A3FppTJejkzFSm_juSLcZ2UtTE6RP90.js?v=10.1.6"></script> <script src="/sites/camattachments/files/js/optimized/js_KRjtvzl6UujB23-j_sF6dqOcbqg2z8ej98A8RU9bGsg.kjk12BMQYgWzHTlTsh40oAfzJ1jsDD0rpt092h-M9uk.js?v=10.1.6"></script> <script src="/sites/camattachments/files/js/optimized/js_0d0qE756sP2YqnXhwTzjsZLHMmNd5BujvSVgVd8tX2g.UT_yf_knSj0Sl4WZlRbgF8zr9tfyd7AhuWnF_-sHx3o.js?v=10.1.6"></script> <script src="/sites/camattachments/files/js/optimized/js_Azs_1DxGdTvv_onGUF5AJJ9bDTJciFDhODZLvTiYdN8.aMa9udbrvyh5rqGYt-FTVUYRrjmKpr_gxlmduJs9Tts.js?v=10.1.6"></script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-b9938b7a1ebcf202765","applicationID":"941808955,773869930","transactionName":"NVcGMRdRXUNUAE1RDgwdJxAWRFxdGgZXTAgWS0oLClRWHlYCV1cPC1EFCV9AUldQ","queueTime":14,"applicationTime":507,"atts":"GRAFR19LTk0=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>