CINXE.COM

Product Training | Ruland

<!doctype html> <html lang="en"> <head > <!-- PreConnect: No Url provided --> <!-- Preload Font --> <link rel="preload" as="font" crossorigin href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/fonts/Blank-Theme-Icons/Blank-Theme-Icons.woff2" ><link rel="preload" as="font" crossorigin href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/fonts/opensans/light/opensans-300.woff2" > <!-- Script Preload: No script provided --> <!-- CSS Preload: No css provided --> <meta charset="utf-8"/><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:"1103323340",accountID:"3016098",trustKey:"3016098",xpid:"VwYGV1ZaABABVFlUBgUGVlQG",licenseKey:"NRJS-7d697a039face769826",applicationID:"1086141007"};;/*! For license information please see nr-loader-spa-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:()=>h,gD:()=>g,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 h(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 g(e,t){if(!e)throw new Error(f);var r=h(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}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},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,Yq:()=>a,xv:()=>n});const n="1.274.0",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});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="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(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;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===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),h(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 h(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),h(e,t)})))}function h(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=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},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])=>{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!!v()[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 h(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]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){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,ZF:()=>c,bz:()=>a,el:()=>u});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("")}function c(){return s(16)}function u(){return s(32)}},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})},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{}}}},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})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},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)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),h(a.gm,f),h(c.prototype,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,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])}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,Zp:()=>i,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},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,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={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"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>s,Qu:()=>c,TZ:()=>a,ih:()=>u,tC:()=>i});var n=r(860);const i=["click","keydown","submit"],o="api",a=n.K7.softNav,s={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},c={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},u={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>E,uP:()=>s,wW:()=>T,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",T="cb"+R,A="jsTime",E="fetch"},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)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});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),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);function T(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,x.YM)(i),a=new R.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function A(){const e=(0,h.pV)();g.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 E={};var S=r(9417),N=r(5603),O=r(5284);const _=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let I=!1;function j(e,t={},g,R){let{init:x,info:j,loader_config:P,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();j||(x=L.init,j=L.info,P=L.loader_config),(0,S.xN)(e.agentIdentifier,x||{}),(0,N.a)(e.agentIdentifier,P||{}),j.jsAttributes??={},d.bv&&(j.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,j);const H=(0,S.D0)(e.agentIdentifier),D=[j.beacon,j.errorBeacon];I||(H.proxy.assets&&(_(H.proxy.assets),D.push(H.proxy.assets)),H.proxy.beacon&&D.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?D:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");E[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var A="api-",S=A+"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}}),I(A,n,!0,o||null===r?"session":void 0)(t,r)}function O(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(A,e,!0,"api")})),g.addPageAction=I(A,"addPageAction",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(A,"setPageViewName",!0)()},g.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)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new O).get("object"==typeof e?e:{})};const _=O.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,R),h||(0,a.p)(S+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[(0,v.t)(),...arguments],r?null:this,i,R),r?void 0:this}}function j(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{_[e]=I(S,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(S,"routeName",void 0,n.K7.softNav):I(A,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>j()),!0):j(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),I=!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=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-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={478:"sha512-1vUqEfJPB8Pihje9mv5CfYgkitO1FWcS+UQb84DbXqP8oYctRv4/lzl/MzNLPlRhcY1WVDBGL20I8vm6s2VV7g==",249:"sha512-Y/BeZAh6VSTmUtUNmS5XdyKxL92s30Fyyj8xVW76HSPxcKItL4+x2+kGMZc8pMJnUpZDz1L4eftZQAJh3D8NnA==",212:"sha512-Gn2tQ3qog5Yhrx/gRutkSTYPp+7nkKFt4/mIXg99LxcNpMDAYJZDBYmAACdoHNM86+iq1F3cBcQotFNzjIX8bw=="};(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 h=(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(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.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={38:0,788: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(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b 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,v.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((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));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(478).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(478).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,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),T=i(2843),A=i(3878),E=i(782),S=i(1863);class N extends b{static featureName=E.T;constructor(e,t=!0){super(e,E.T,t),p.RI&&((0,T.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,E.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,E.T,this.ee))),this.importAggregator(e))}}var O=i(3969);class _ extends b{static featureName=O.TZ;constructor(e,t=!0){super(e,O.TZ,t),this.importAggregator(e)}}var I=i(6774),j=i(3304);class P{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,j.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new P(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new P(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class D extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(e=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var M=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,M.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)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,j.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}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,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,j.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){T(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(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 d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.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,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(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 y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCazptureCalled||4!==e.readyState?null==t.status&&(t.status=0):T(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function T(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(O.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.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}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Te,Lc:Ae,uP:Ee,Rz:Se}=be;class Ne extends b{static featureName=Te;constructor(e,t=!0){super(e,Te,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ee,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Oe=i(2614);class _e extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(Oe.H3,"_").concat(Oe.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===Oe.g.FULL||e.sessionReplayMode===Oe.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class je extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.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,{domObserver:o})}}var Pe=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Me={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Me[t.debugId]++)return t;Me[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:Je,e5:Qe,tH:$e,uP:et,rw:tt,Lc:rt}=Pe;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=De(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Qe]=~~this[Qe]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Je,m),o.on(Je,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([$e+Ze,$e+"-done",$e+Xe+Ze,$e+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Je,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,$e+Ze),v(d,$e+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled];p.RI&&e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),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,R.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:[he,w,N,Ne,_e,_,D,ot,ct,je,nt],loaderType:"spa"})})()})();</script> <meta name="title" content="Product Training | Ruland"/> <meta name="description" content="Ruland shaft collars and couplings request for quote form. Ready to buy? All you have to do is tell us who you are and what you would like."/> <meta name="keywords" content="buy shaft collars and couplings, buy Ruland, quote for shaft collars and couplings, quote for ruland"/> <meta name="robots" content="INDEX,FOLLOW"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="format-detection" content="telephone=no"/> <title>Product Training | Ruland</title> <link rel="stylesheet" type="text/css" media="all" href="https://www.ruland.com/static/version1731580878/_cache/merged/be46ddb24c617e32e2c725f80e415c76.min.css" /> <link rel="stylesheet" type="text/css" media="screen and (min-width: 768px)" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/css/styles-l.min.css" /> <link rel="stylesheet" type="text/css" media="print" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/css/print.min.css" /> <link rel="canonical" href="https://www.ruland.com/product-training/" /> <link rel="alternate" hreflang="en" href="https://www.ruland.com/product-training/" /> <link rel="icon" type="image/x-icon" href="https://www.ruland.com/media/favicon/stores/1/favicon.png" /> <link rel="shortcut icon" type="image/x-icon" href="https://www.ruland.com/media/favicon/stores/1/favicon.png" /> <!-- Google Tag Manager --> <!-- End Google Tag Manager --> <link rel="stylesheet" type="text/css" media="all" href="https://www.ruland.com/media/css/ruland.css" /> <style type="text/css"> .cookie-status-message { display: none; } </style> <script excluded type="text/javascript" src="//script.crazyegg.com/pages/scripts/0121/0847.js" async="async" ></script> <!-- Google Tag Manager --> <script type="text&#x2F;javascript">function callAmGA4GTM () { (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= '';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer', 'GTM-T8NH2DV'); } </script><!-- End Google Tag Manager --> <link rel="prefetch" as="script" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/magepack/bundle-common.min.js"/> <link rel="prefetch" as="script" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/magepack/bundle-cms.min.js"/> <style> @media (min-width: 1280px) { .magezon-builder .mgz-container {width: 1280px;} } </style> <!--We can use this context to add some thing in future--> <link rel="stylesheet" type="text/css" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/Ubertheme_Base/css/animate.min-4.1.1.min.css"><link rel="stylesheet" type="text/css" href="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/Ubertheme_Base/css/font-awesome.min-5.14.0.min.css"> <meta property="og:type" content="article"/> <meta property="og:title" content="Product&#x20;Training"/> <meta property="og:description" content="Ruland&#x20;shaft&#x20;collars&#x20;and&#x20;couplings&#x20;request&#x20;for&#x20;quote&#x20;form.&#x20;Ready&#x20;to&#x20;buy&#x3F;&#x20;All&#x20;you&#x20;have&#x20;to&#x20;do&#x20;is&#x20;tell&#x20;us&#x20;who&#x20;you&#x20;are&#x20;and&#x20;what&#x20;you&#x20;would&#x20;like."/> <meta property="og:url" content="https://www.ruland.com/product-training/"/> <meta property="og:site_name" content="Ruland Manufacturing"/> <style>.t1ff2sf{float:none}.t1ff2sf-s{padding-top:10px !important;padding-right:10px !important;padding-bottom:10px !important}.mgz-element.t1ff2sf .mgz-element-heading-text{font-weight:900}.il4gn14-s{text-align:right}.mgz-element.il4gn14 .mgz-link{border-width:1px;border-style:solid;border-color:#f57024;border-radius:30px;color:#ffffff;background-color:#f57024}.mgz-element.il4gn14 .mgz-link:hover{color:#ffffff;background-color:#db570a;border-color:#db570a}.mgz-element.il4gn14 .mgz-link{box-shadow:inset 0 10px 15px #f9b085;padding:10px 40px;font-size:1.6rem}</style></head> <body data-container="body" data-mage-init='{"loaderAjax": {}, "loader": { "icon": "https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/images/loader-2.gif"}}' id="html-body" class="cms-product-training cms-page-view page-layout-2columns-left"> <div class="cookie-status-message" id="cookie-status"> The store will not work correctly in the case when cookies are disabled.</div> <noscript> <div class="message global noscript"> <div class="content"> <p> <strong>JavaScript seems to be disabled in your browser.</strong> <span> For the best experience on our site, be sure to turn on Javascript in your browser. </span> </p> </div> </div> </noscript> <!-- ko scope: 'company' --> <div class="message company-warning _hidden" data-bind="css: { _hidden: !isCompanyBlocked() }"> <span> <!-- ko i18n: 'Your company account is blocked and you cannot place orders. If you have questions, please contact your company administrator.' --><!-- /ko --> </span> </div> <!-- /ko --> <!-- Google Tag Manager (noscript) --> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-T8NH2DV" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- End Google Tag Manager (noscript) --> <!-- ko scope: 'gdpr-cookie-modal' --> <!--ko template: getTemplate()--><!-- /ko --> <!-- /ko --> <style> .amgdprjs-bar-template { z-index: 999; bottom: 0; } </style> <!-- Some general js functions--> <!-- After body start content --> <div class="widget block block-static-block"> </div> <div class="widget block block-static-block"> </div> <div class="widget block block-static-block"> </div> <div class="page-wrapper"><div class="ie-notice"> <div class="ieinner"> <p>Due to Microsoft's discontinuation of updates, including security, certain functionality such as checkout and CAD may not work for you. We recommend using Google Chrome, Microsoft Edge, Firefox, or Safari to ensure full functionality.</br>Thank you - the Ruland team</p> </div> </div> <div id="ub-top-bar"></div> <header class="page-header"><div class="panel wrapper"><div class="panel header"><a class="action skip contentarea" href="#contentarea"> <span> Skip to Content </span> </a> <div class="switcher currency switcher-currency" id="switcher-currency"> <strong class="label switcher-label"><span>Currency</span></strong> <div class="actions dropdown options switcher-options"> <div class="action toggle switcher-trigger" id="switcher-currency-trigger" data-mage-init='{"dropdown":{}}' data-toggle="dropdown" data-trigger-keypress-button="true"> <strong class="language-USD"> <span>USD - US Dollar</span> </strong> </div> <ul class="dropdown switcher-dropdown" data-target="dropdown"> <li class="currency-EUR switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/directory\/currency\/switch\/","data":{"currency":"EUR"}}'>EUR - Euro</a> </li> </ul> </div> </div> <ul class="header links"><!-- ko scope: 'purchase_order' --> <!-- ko if: config().isEnabled && isPurchaseOrderAllAllowed()--> <li class="link"> <a href="https://www.ruland.com/purchaseorder/purchaseorder/"> My Purchase Orders </a> </li> <!-- /ko --> <!-- /ko --> <li class="authorization-link" data-label="or"> <a href="https://www.ruland.com/customer/account/login/referer/aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9wcm9kdWN0LXRyYWluaW5n/"> Sign In </a> </li> <li class="greet welcome" data-bind="scope: 'customer'" style="margin-left:0"> <!-- ko if: customer().fullname --> <span class="logged-in" data-bind="text: new String('Welcome, %1!').replace('%1', customer().firstname)"> </span> <!-- /ko --> </li> <li> <div data-block="minicarttop" class="minicart-wrapper"> <a class="action showcart" href="https://www.ruland.com/checkout/cart/" data-bind="scope: 'minicart_content'"> <span class="text">Shopping Cart</span> <span class="counter qty empty" data-bind="css: { empty: !!getCartParam('summary_count') == false }, blockLoader: isLoading"> <span class="counter-number"><!-- ko text: getCartParam('summary_count') --><!-- /ko --></span> <span class="counter-label"> <!-- ko if: getCartParam('summary_count') --> <!-- ko text: getCartParam('summary_count') --><!-- /ko --> <!-- ko i18n: 'items' --><!-- /ko --> <!-- /ko --> </span> </span> </a> </div> </li> <li class="top-help"> <a href="https://www.ruland.com/help/">Help</a> </li> <li> <div class="switcher language switcher-language" data-ui-id="language-switcher" id="switcher-language"> <strong class="label switcher-label"><span>Language:</span></strong> <div class="actions dropdown options switcher-options"> <div class="action toggle switcher-trigger" id="switcher-language-trigger"> <strong class="view-en"> <span>English</span> </strong> </div> <ul class="dropdown switcher-dropdown" data-mage-init='{"dropdownDialog":{ "appendTo":"#switcher-language > .options", "triggerTarget":"#switcher-language-trigger", "closeOnMouseLeave": false, "triggerClass":"active", "parentClass":"active", "buttons":null}}'> <li class="view-de switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/stores\/store\/redirect\/","data":{"___store":"de","___from_store":"en","uenc":"aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9kZS9wcm9kdWN0LXRyYWluaW5n"}}'> Deutsch</a> </li> <li class="view-es switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/stores\/store\/redirect\/","data":{"___store":"es","___from_store":"en","uenc":"aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9lcy9wcm9kdWN0LXRyYWluaW5n"}}'> Español</a> </li> </ul> </div> </div> </li> </ul></div></div><div class="header content"><div data-action="toggle-nav" class="action nav-toggle"><span>MENU</span></div> <a class="logo" href="https://www.ruland.com/" title="Ruland Manufacturing"> <img src="https://www.ruland.com/media/logo/stores/1/logo_1.png" alt="Ruland Manufacturing" width="170" /> </a> <div data-block="minicart" class="minicart-wrapper"> <a class="action showcart" href="https://www.ruland.com/checkout/cart/" data-bind="scope: 'minicart_content'"> <!--span class="text">My Cart</span--> <span class="counter qty empty" data-bind="css: { empty: !!getCartParam('summary_count') == false }, blockLoader: isLoading"> <span class="counter-number"><!-- ko text: getCartParam('summary_count') --><!-- /ko --></span> <span class="counter-label"> <!-- ko if: getCartParam('summary_count') --> <!-- ko text: getCartParam('summary_count') --><!-- /ko --> <!-- ko i18n: 'items' --><!-- /ko --> <!-- /ko --> </span> </span> </a> <div class="block block-minicart empty" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=minicart]", "triggerTarget":".showcart", "timeout": "2000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "buttons":[]}}'> <div id="minicart-content-wrapper" data-bind="scope: 'minicart_content'"> <!-- ko template: getTemplate() --><!-- /ko --> </div> </div> </div> <section class="amsearch-wrapper-block" data-amsearch-wrapper="block" data-bind=" scope: 'amsearch_wrapper', mageInit: { 'Magento_Ui/js/core/app': { components: { amsearch_wrapper: { component: 'Amasty_Xsearch/js/wrapper', data: {&quot;url&quot;:&quot;https:\/\/www.ruland.com\/amasty_xsearch\/autocomplete\/index\/&quot;,&quot;url_result&quot;:&quot;https:\/\/www.ruland.com\/catalogsearch\/result\/&quot;,&quot;url_popular&quot;:&quot;https:\/\/www.ruland.com\/search\/term\/popular\/&quot;,&quot;isDynamicWidth&quot;:false,&quot;isProductBlockEnabled&quot;:true,&quot;width&quot;:900,&quot;displaySearchButton&quot;:true,&quot;fullWidth&quot;:false,&quot;minChars&quot;:3,&quot;delay&quot;:500,&quot;currentUrlEncoded&quot;:&quot;aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9wcm9kdWN0LXRyYWluaW5n&quot;,&quot;color_settings&quot;:[],&quot;popup_display&quot;:0,&quot;preloadEnabled&quot;:false,&quot;isSeoUrlsEnabled&quot;:false,&quot;seoKey&quot;:&quot;search&quot;,&quot;isSaveSearchInputValueEnabled&quot;:false} } } } }"> <div class="amsearch-form-block" data-bind=" style: { width: resized() ? data.width + 'px' : '' }, css: { '-opened': opened }, afterRender: initCssVariables"> <section class="amsearch-input-wrapper" data-bind=" css: { '-dynamic-width': data.isDynamicWidth, '-match': $data.readyForSearch(), '-typed': inputValue && inputValue().length }"> <input type="text" name="q" placeholder="Search&#x20;entire&#x20;store&#x20;here..." class="amsearch-input" maxlength="128" role="combobox" aria-haspopup="false" aria-autocomplete="both" autocomplete="off" aria-expanded="false" data-amsearch-block="input" enterkeyhint="search" data-bind=" afterRender: initInputValue, hasFocus: focused, value: inputValue, event: { keypress: onEnter }, valueUpdate: 'input'"> <!-- ko template: { name: templates.loader } --><!-- /ko --> <button class="amsearch-button -close -clear -icon" style="display: none" data-bind=" event: { click: inputValue.bind(this, '') }, attr: { title: $t('Clear Field') }, visible: inputValue && inputValue().length"> </button> </section> <button class="amsearch-button -primary -search -disabled" type="submit" title="Search" data-bind=" event: { click: search }, css: { '-disabled': !readyForSearch() }"> <span> Search </span> </button> <section class="amsearch-result-section" data-amsearch-js="results" style="display: none;" data-bind=" css: { '-small': $data.data.width < 700 && !$data.data.fullWidth }, afterRender: function (node) { initResultSection(node, 1) }, style: resultSectionStyles(), visible: $data.opened()"> <!-- ko if: !$data.match() && $data.preload() --> <!-- ko template: { name: templates.preload } --><!-- /ko --> <!-- /ko --> <!-- ko if: $data.match() --> <!-- ko template: { name: templates.results } --><!-- /ko --> <!-- /ko --> <!-- ko if: $data.message() && $data.message().length --> <!-- ko template: { name: templates.message } --><!-- /ko --> <!-- /ko --> </section> </div> </section> <div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><div class="head-mid"> <p><img class="no-lazy" src="https://www.ruland.com/media/wysiwyg/Carefully-Made.png" alt="Carefully Made Shaft Collars" /></p> </div></div></div></header> <div class="sections nav-sections"> <div class="section-items nav-sections-items" data-mage-init='{"tabs":{"openedState":"active"}}'> <div class="section-item-title nav-sections-item-title" data-role="collapsible"> <a class="nav-sections-item-switch" data-toggle="switch" href="#store.menu">Shop</a> </div> <div class="section-item-content nav-sections-item-content" data-alias="store.menu" id="store.menu" data-role="content"><ul id='ub-mega-menu-4' class="none ub-mega-menu level0 " data-device-type='desktop'><li class="mega first" id="menu1289"><a href="/" class="mega first" ><i class="fa fa-home"></i>Home</a></li><li class="mega has-child dynamic-width style-tabs" id="menu1290"><a href="#" class="mega has-child dynamic-width style-tabs" ><span class="menu-title">Products</span></a><div class="child-content cols1"> <div id="child-content-1290" class="child-content-inner" style="width: 100%;"><ul class="level1" ><li class="mega first group dynamic-width" id="menu1291"><ul class="level2" ><li class="mega first has-child dynamic-width tab-head" id="menu945"><a href="https://www.ruland.com/shaft-collars.html" class="mega first has-child dynamic-width tab-head" ><span class="menu-title">Shaft Collars</span></a><div class="child-content cols1"> <div id="child-content-945" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/one-piece-shaft-collar.jpg"loading="lazy" alt="One Piece Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/one-piece-shaft-collar.html">One-Piece</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/two-piece-shaft-collar.jpg"loading="lazy" alt="Two Piece Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/two-piece-shaft-collar.html">Two-Piece</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/threaded-shaft-collar.jpg"loading="lazy" alt="Threaded Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/threaded-shaft-collar.html">Threaded</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/double-wide-shaft-collar.jpg"loading="lazy" alt="Double Wide Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/double-wide-shaft-collar.html">Double Wide</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/heavy-duty-shaft-collar.jpg"loading="lazy" alt="Heavy Duty Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/heavy-duty-shaft-collar.html">Heavy Duty</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/international-shaft-collar.jpg"loading="lazy" alt="International Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/international-series.html">International</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/keyed-shaft-collar.jpg"loading="lazy" alt="Keyed Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/keyed-shaft-collar.html">Keyed</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/mountable-shaft-collar.jpg"loading="lazy" alt="Mountable Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/mountable-shaft-collar.html">Mountable</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/quick-clamping-shaft-collar.jpg"loading="lazy" alt="Quick Clamping Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/quick-clamping-shaft-collar.html">Quick-Clamp</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/shaft-collar-with-lever.jpg "loading="lazy" alt="Shaft Collar with Lever"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/quick-clamping-shaft-collar/collar-with-clamping-lever.html">QC with Lever</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/set-screw-shaft-collar.jpg "loading="lazy" alt="Set Screw Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/set-screw-shaft-collar.html">Set Screw</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/thin-shaft-collar.jpg "loading="lazy" alt="Thin Line Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/thin-line-shaft-collar.html">Thin Line</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/hex-shaft-collar.jpg "loading="lazy" alt="Hex and D-Bore Shaft Collar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/hex-and-d-bore-shaft-collar.html">Hex & D-Bore</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/bearing-locknut.jpg "loading="lazy" alt="Bearing Locknut"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/shaft-collars/bearing-locknuts.html">Bearing Locknut</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1020"><a href="https://www.ruland.com/rigid-couplings.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title">Rigid Couplings</span></a><div class="child-content cols4"> <div id="child-content-1020" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/one-piece-rigid-coupling.jpg "loading="lazy" alt="One Piece Rigid Coupling"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rigid-couplings/one-piece-rigid-coupling.html">One-Piece</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/two-piece-rigid-coupling.jpg "loading="lazy" alt="Two Piece Rigid Coupling"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rigid-couplings/two-piece-rigid-coupling.html">Two-Piece</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/set-screw-rigid-coupling.jpg "loading="lazy" alt="Set Screw Rigid Coupling"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rigid-couplings/set-screw-rigid-coupling.html">Set Screw</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/short-rigid-coupling.jpg "loading="lazy" alt="Short Rigid Coupling"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rigid-couplings/short-rigid-coupling.html">Short</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1037"><a href="https://www.ruland.com/servo-couplings.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title">Servo Couplings</span></a><div class="child-content cols4"> <div id="child-content-1037" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/beam-couplings.jpg" alt="Beam Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/beam-couplings.html">Beam Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/bellows-couplings.jpg" alt="Bellows Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/bellows-couplings.html">Bellows Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/controlflex-couplings.jpg" alt="Controlflex Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/controlflex-couplings.html">Controlflex Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/disc-couplings.jpg" loading="lazy" alt="Disc Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/disc-couplings.html">Disc Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/jaw-couplings.jpg" loading="lazy" alt="Jaw Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/jaw-couplings.html">Jaw Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/oldham-couplings.jpg" loading="lazy" alt="Oldham Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/oldham-couplings.html">Oldham Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/rigid-couplings.jpg" loading="lazy" alt="Rigid Couplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rigid-couplings.html">Rigid Couplings</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/slit-couplings.jpg" loading="lazy" alt="SlitCouplings"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/servo-couplings/slit-couplings.html">Slit Couplings</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1282"><a href="https://www.ruland.com/universal-joints.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title">Universal Joints</span></a><div class="child-content cols1"> <div id="child-content-1282" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/universal-joint-double-friction-bearing.jpg" loading="lazy" alt="Friction Bearing Universal Joint"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/universal-joints/friction-bearing.html">Friction Bearing</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/universal-joint-single-needle-bearing.jpg" loading="lazy" alt="Needle Bearing Universal Joint"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/universal-joints/needle-bearing.html">Needle Bearing</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/universal-joint-boot-cover.jpg" loading="lazy" alt="Universal Joint Boot Cover"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/universal-joints/boots.html">Boot Covers</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1192"><a href="https://www.ruland.com/installation-tools.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title">Hand Tools</span></a><div class="child-content cols1"> <div id="child-content-1192" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/drill-stop-kit.jpg" alt="Drill Stop Kits"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/drill-stop-kits.html">Drill Stop Kits</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/hex-key.jpg" alt="Hex Key Sets"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/hex-key-sets.html">Hex Key Sets</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/hex-socket-bit.jpg" loading="lazy" alt="Hex Bits"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/tools.html">Hex Sockets/ Bits</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/shims.jpg" loading="lazy" alt="Spanner Wrenches"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/installation-tools/laminated-shims.html">Laminated Shims</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/spanner-wrench.jpg" loading="lazy" alt="Spanner Wrenches"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/spanner-wrenches.html">Spanner Wrenches</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/torque-screwdriver.jpg" loading="lazy" alt="Torque Screwdriver"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/torque-screwdrivers-for-shaft-collars-and-couplings.html">Torque Screwdrivers</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/torque-wrench.jpg" loading="lazy" alt="Torque Wrench"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/hand-tools/torque-wrenches.html">Torque Wrenches</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1205"><a href="https://www.ruland.com/machine-components.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title">Machine Components</span></a><div class="child-content cols1"> <div id="child-content-1205" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/tool-shelves.jpg" alt="CNC Tool Shleves"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/machine-components/cnc-tool-shelves.html">CNC Tool Shelves</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/keystock.jpg" alt="Keystock"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/machine-components/keystock.html">Keystock</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/star-knob.jpg" alt="Star Knobs"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/machine-components/star-knobs.html">Star Knobs</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1206"><a href="https://www.ruland.com/adjustable-handles.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title"> Adjustable Handles</span></a><div class="child-content cols1"> <div id="child-content-1206" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/flat-shaft-collar-handle.jpg" alt="Flat Shaft Collar Levers"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/adjustable-handles/flat-shaft-collar-levers.html">Flat Shaft Collar Levers</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/adjustable-handle-with-tapped-hole.jpg" alt="Adjustable Handle With Tapped Hole"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/adjustable-handles/with-tapped-hole.html">With Tapped Hole</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/adjustable-handle-with-threaded-stud.jpg" alt="Adjustable Handle With Threaded Stud"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/adjustable-handles/with-threaded-stud.html">With Threaded Stud</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1243"><a href="https://www.ruland.com/indexing-plungers.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title"> Indexing Plungers</span></a><div class="child-content cols1"> <div id="child-content-1243" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/indexing-plunger-no-lockout.jpg" alt="No lock-Out Indexing Plunger"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/indexing-plungers/no-lock-out.html">No Lock-Out</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/indexing-plunger-lockout.jpg" alt="Lock-Out Indexing Plunger"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/indexing-plungers/with-lock-out.html">With Lock-Out</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/mini-indexing-plunger-no-lockout.jpg" alt="No Lock-Out Mini Indexing Plunger"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/indexing-plungers/mini-indexing-plungers/no-lock-out.html">Mini No Lock-Out</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/mini-indexing-plunger-lockout.jpg" alt="Lock-Out Mini Indexing Plunger"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/indexing-plungers/mini-indexing-plungers/with-lock-out.html">Mini With Lock-Out</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1210"><a href="https://www.ruland.com/modular-mounting-systems.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title"> Modular Mounting Systems</span></a><div class="child-content cols1"> <div id="child-content-1210" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/og-small-hole-bracket-150mm-small.jpg" alt="Adjustable Spring Joint"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/modular-mounting-systems/pre-designed-systems.html">Pre-Designed Systems</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/mini-clamp-category-1_1.jpg" alt="Bracket Clamps"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/machine-components/modular-mounting-systems/modular-mounting-components.html">Modular Mounting Components</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega has-child dynamic-width tab-head" id="menu1252"><a href="https://www.ruland.com/rubber-bumpers.html" class="mega has-child dynamic-width tab-head" ><span class="menu-title"> Rubber Bumpers</span></a><div class="child-content cols1"> <div id="child-content-1252" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/rubber-bumper-with-single-tapped-hole.jpg" alt="Rubber Bumper with Threaded Hole"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rubber-bumpers/single-tapped-hole.html">With Threaded Hole</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/rubber-bumper-with-single-stud.jpg" alt="Rubber Bumper with Threaded Stud"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/rubber-bumpers/single-stud.html">With Threaded Stud</a></div> </div> </li> </ul> </div></div> </div></li><li class="mega last has-child dynamic-width tab-head" id="menu1248"><a href="https://www.ruland.com/vibration-isolation-mounts.html" class="mega last has-child dynamic-width tab-head" ><span class="menu-title"> Vibration Isolation Mounts</span></a><div class="child-content cols1"> <div id="child-content-1248" class="child-content-inner" style="width: 100%;"><div class="mega-with-thumb"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/vibration-isolation-mount-with-double-stud.jpg" alt="Double Stud Vibration Mount"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/vibration-isolation-mounts/double-stud.html">Double Stud</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/vibration-isolation-mount-with-double-tapped.jpg" alt="Double Tapped Vibration Mount"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/vibration-isolation-mounts/double-tapped-holes.html">Double Tapped Holes</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/vibration-isolation-mount-with-tapped-and-stud.jpg" alt="Tapped and Stud Vibration Mount"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/vibration-isolation-mounts/tapped-hole-stud.html">Tapped Hole &amp; Stud</a></div> </div> </li> </ul> </div></div> </div></li></ul></li></ul></div> </div></li><li class="mega has-child dynamic-width style-tabs" id="menu1668"><a href="#" class="mega has-child dynamic-width style-tabs" ><span class="menu-title">By Application</span></a><div class="child-content cols1"> <div id="child-content-1668" class="child-content-inner" style="width: 100%;"><ul class="level1" ><li class="mega first group dynamic-width" id="menu1669"><ul class="level2" ><li class="mega first group dynamic-width" id="menu1670"><div class="mega-with-thumb" style="padding: 20px;"> <ul class="mega-menu"> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/applications.jpg" alt="All Applications"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications.html">All Applications</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-linear.jpg" alt="Automation and Linear Motion"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/automation-linear-systems.html">Automation &amp; Linear Motion</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-conveyors.jpg" alt="Conveyors"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/conveyors.html">Conveyors</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-encoders.jpg" alt="Encoders"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/encoders.html">Encoders</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-food.jpg" alt="Food"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/food-processing.html">Food</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/machine-tool.jpg" alt="Machine Tools"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/machine-tool-applications.html">Machine tools</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-medical.jpg" alt="Medical"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/medical-lab-equipment.html">Medical</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-motor.jpg" alt="Motor"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/motors.html">Motors</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-packaging.jpg" alt="Packaging"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/packaging.html">Packaging</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-printing.jpg" alt="Printing"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/printing-applications.html">Printing</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-robotics.jpg" alt="Robotic Systems"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/robotic-systems.html">Robotic Systems</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-solar.jpg" alt="Semiconductor &amp; Solar"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/semiconductor-solar-systems.html">Semiconductor &amp; Solar</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-machine.jpg" alt="Test, Measurement, and Inspection"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/applications/test-measurement-inspection.html">Test, Measurement, and Inspection</a></div> </div> </li> <li class="mega"> <div class="mwt-parent"> <div class="mwt-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/application-shaft-collar-uses.jpg" alt="Shaft Collar Uses"> </picture></div> <div class="menu-title clearfix mwt-link"><a href="/technical-resources/shaft-collar-uses">Shaft Collar Uses</a></div> </div> </li> </ul> </div></li></ul></li></ul></div> </div></li><li class="mega has-child dynamic-width" id="menu1834"><a href="#" class="mega has-child dynamic-width" ><span class="menu-title">What's New</span></a><div class="child-content cols1"> <div id="child-content-1834" class="child-content-inner" style="width: 100%;"><div class="mega-whats-new"> <div class="mwn-parent"> <div class="mwn-text"><span class="mwn-title">LARGE JAW COUPLINGS</span> <p>Large jaw couplings are now being offered for bore sizes up to 1-3/4” or 45 mm and torque capacities of 2,655 in-lbs (300 Nm). These new large jaw couplings are designed for use in precision systems with high deceleration and acceleration curves, such as those found in semiconductor, solar, conveyor, and warehouse automation applications.</p> <a style="text-decoration: underline;" href="/servo-couplings/jaw-couplings.html?outer_diameter_od=14884%2C14885">Explore More &gt;&gt;</a></div> <div class="mwn-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/Press-Releases/Large-Jaw-Group3.jpg" alt="Jaw Couplings"></picture></div> </div> <div class="mwn-parent"> <div class="mwn-text"><span class="mwn-title">PRE-ASSEMBLED MODULAR MOUNTING SYSTEMS</span> <p>Pre-assembled modular mounting systems are designed for adjustability across many mounting applications. Conveyor mounting systems emphasize strict parallel installation using a flange-bolt base and a conveyor rail guide. Sensor mounting systems offer flexibility in a mounting application with adjustable or 90-degree connectors, two-way bases, and various mounting brackets. Both systems include stainless steel rods (with or without scale) from 100mm to 300mm in length, zinc clamping levers, and connectors that allow adjustment of the rods’ position.</p> <a style="text-decoration: underline;" href="/modular-mounting-systems/pre-designed-systems.html">Explore More &gt;&gt;</a></div> <div class="mwn-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/catalog/category/conveyor-rail-mounting-system-small.jpg" alt="Clamp Universal Joint"> </picture></div> </div> <div class="mwn-parent"> <div class="mwn-text"><span class="mwn-title">MOUNTABLE SHAFT COLLARS WITH FACE HOLES</span> <p>Mountable shaft collars with face holes are designed to mate directly with components such as sprockets, pulleys, and metallic plates. Ruland manufactures them with drilled holes for mounting flexibility or threaded holes for the most secure connection between the collar and mated component. They are offered in steel, aluminum, and 303 stainless steel in bore sizes ranging from 3/8” to 2” and 10mm to 50mm.</p> <a style="text-decoration: underline;" href="/shaft-collars/mountable-shaft-collar/shaft-collars-with-face-holes.html">Explore More &gt;&gt;</a></div> <div class="mwn-image"><picture> <source srcset="/media/wysiwyg/menu/blank.gif 1w" media="(max-width: 767px)" sizes="1px"> <img class="lazy lazy-loading" src="https://www.ruland.com/media/magezon/lazyload/default/loader5.gif" data-src="/media/wysiwyg/menu/whats-new-face-hole-collars.jpg" alt="Collars with Face Holes"> </picture></div> </div> </div></div> </div></li><li class="mega has-child" id="menu1258"><a href="#" class="mega has-child" ><span class="menu-title">Technical Resources</span></a><div class="child-content cols1"> <div id="child-content-1258" class="child-content-inner" style="width: 200px;"><ul class="level1" ><li class="mega first group" id="menu1644"><ul class="level2" ><li class="mega first" id="menu1281"><a href="https://www.ruland.com/technical-resources/application-spotlights" class="mega first" >Application Spotlights</a></li><li class="mega" id="menu1259"><a href="https://www.ruland.com/technical-resources/axial-load-test-data" class="mega" >Axial Load Test Data</a></li><li class="mega" id="menu1260"><a href="https://www.ruland.com/technical-resources/cad-drawings" class="mega" >CAD Drawings</a></li><li class="mega has-child" id="menu1261"><a href="https://www.ruland.com/technical-resources/compliance" class="mega has-child" ><span class="menu-title">Compliance</span></a><div class="child-content cols1"> <div id="child-content-1261" class="child-content-inner" style="width: 200px;"><ul class="level3" ><li class="mega first" id="menu1262"><a href="https://www.ruland.com/technical-resources/compliance/conflict-minerals" class="mega first" >Conflict Minerals</a></li><li class="mega" id="menu1263"><a href="https://www.ruland.com/technical-resources/compliance/proposition-65" class="mega" >Proposition 65</a></li><li class="mega" id="menu1264"><a href="https://www.ruland.com/technical-resources/compliance/reach-compliance" class="mega" >REACH Compliance</a></li><li class="mega" id="menu1265"><a href="https://www.ruland.com/technical-resources/compliance/rohs-compliance" class="mega" >RoHS3 Compliance</a></li><li class="mega last" id="menu1833"><a href="https://www.ruland.com/technical-resources/compliance/us-tsca-pbt" class="mega last" >US TSCA PBT</a></li></ul></div> </div></li><li class="mega" id="menu1266"><a href="https://www.ruland.com/technical-resources/coupling-comparison-guide" class="mega" >Coupling Comparison Guide</a></li><li class="mega" id="menu1267"><a href="https://www.ruland.com/technical-resources/faq" class="mega" >FAQ</a></li><li class="mega has-child" id="menu1268"><a href="https://www.ruland.com/technical-resources/fastening" class="mega has-child" ><span class="menu-title">Fastening Hardware</span></a><div class="child-content cols1"> <div id="child-content-1268" class="child-content-inner" style="width: 200px;"><ul class="level3" ><li class="mega first" id="menu1271"><a href="https://www.ruland.com/technical-resources/fastening/metal-torque-charts" class="mega first" >Metal Torque Charts</a></li><li class="mega" id="menu1272"><a href="https://www.ruland.com/technical-resources/fastening/plastic-torque-chart" class="mega" >Plastic Torque Chart</a></li><li class="mega" id="menu1269"><a href="https://www.ruland.com/technical-resources/fastening/socket-head-cap-screws" class="mega" >Socket Head Cap Screws</a></li><li class="mega" id="menu1270"><a href="https://www.ruland.com/technical-resources/fastening/socket-set-screws" class="mega" >Socket Set Screws</a></li><li class="mega" id="menu1273"><a href="https://www.ruland.com/technical-resources/fastening/tool-sizes" class="mega" >Tool Sizes</a></li><li class="mega last" id="menu1274"><a href="https://www.ruland.com/technical-resources/fastening/stick-slip" class="mega last" >What is Stick Slip?</a></li></ul></div> </div></li><li class="mega" id="menu1275"><a href="https://www.ruland.com/technical-resources/installation-instructions" class="mega" >Installation Instructions</a></li><li class="mega" id="menu1694"><a href="https://www.ruland.com/technical-resources/shaft-collar-comparison-guide" class="mega" >Shaft Collar Comparison Guide</a></li><li class="mega" id="menu1276"><a href="https://www.ruland.com/technical-resources/shaft-collar-uses" class="mega" >Shaft Collar Uses</a></li><li class="mega" id="menu1277"><a href="https://www.ruland.com/technical-resources/technical-articles" class="mega" >Technical Articles</a></li><li class="mega" id="menu1278"><a href="https://www.ruland.com/technical-resources/technical-video" class="mega" >Technical Videos</a></li><li class="mega" id="menu1280"><a href="https://www.ruland.com/technical-resources/warranty" class="mega" >Warranty & Return Policy</a></li><li class="mega last" id="menu1279"><a href="https://www.ruland.com/technical-resources/nypatch-screw-coating" class="mega last" >What is Nypatch?</a></li></ul></li></ul></div> </div></li><li class="mega has-child" id="menu1646"><a href="https://www.ruland.com/inside-story" class="mega has-child" ><span class="menu-title">About Us</span></a><div class="child-content cols1"> <div id="child-content-1646" class="child-content-inner" style="width: 225px;"><ul class="level1" ><li class="mega first group" id="menu1648"><ul class="level2" ><li class="mega first" id="menu1647"><a href="/about-us/company-history" class="mega first" >Company History</a></li><li class="mega" id="menu1823"><a href="https://www.ruland.com/introduction" class="mega" >Introduction</a></li><li class="mega has-child" id="menu1666"><a href="#" class="mega has-child" ><span class="menu-title">Community Involvement</span></a><div class="child-content cols1"> <div id="child-content-1666" class="child-content-inner" style="width: 200px;"><ul class="level3" ><li class="mega first" id="menu1649"><a href="/about-us/first-robotics" class="mega first" >FIRST Robotics</a></li><li class="mega last" id="menu1667"><a href="/about-us/doug-flutie-foundation" class="mega last" >Doug Flutie Foundation</a></li></ul></div> </div></li><li class="mega" id="menu1650"><a href="/about-us/customer-reviews" class="mega" >Customer Reviews</a></li><li class="mega" id="menu1654"><a href="/about-us/iso-9001-2015" class="mega" >ISO 9001: 2015</a></li><li class="mega" id="menu1653"><a href="/about-us/press-releases" class="mega" >Press Releases</a></li><li class="mega" id="menu1652"><a href="/about-us/about-us-quality" class="mega" >Quality Statement</a></li><li class="mega last" id="menu1651"><a href="/about-us/about-us-superior-fit" class="mega last" >We are Shaft Collars</a></li></ul></li></ul></div> </div></li><li class="mega last has-child" id="menu939"><a href="#" class="mega last has-child" ><span class="menu-title">Contact Us</span></a><div class="child-content cols1"> <div id="child-content-939" class="child-content-inner" style="width: 225px;"><ul class="level1" ><li class="mega first group" id="menu1645"><ul class="level2" ><li class="mega first" id="menu940"><a href="https://www.ruland.com/contact-us/careers" class="mega first" >Careers</a></li><li class="mega" id="menu941"><a href="https://www.ruland.com/contact-us/customer-support" class="mega" >Customer Support</a></li><li class="mega" id="menu944"><a href="https://www.ruland.com/contact-us/distributors" class="mega" >Distributors</a></li><li class="mega" id="menu943"><a href="https://www.ruland.com/contact-us/global-locations" class="mega" >Global Locations</a></li><li class="mega" id="menu1832"><a href="/product-training" class="mega" >Lunch and Learn</a></li><li class="mega" id="menu1690"><a href="/contact-us/request-for-quote" class="mega" >Request for Quote</a></li><li class="mega" id="menu942"><a href="https://www.ruland.com/contact-us/technical-support" class="mega" >Technical Support</a></li><li class="mega last" id="menu1677"><a href="/contact-us/reviews" class="mega last" >Write a Review</a></li></ul></li></ul></div> </div></li></ul> </div> <div class="section-item-title nav-sections-item-title" data-role="collapsible"> <a class="nav-sections-item-switch" data-toggle="switch" href="#store.links">Account</a> </div> <div class="section-item-content nav-sections-item-content" data-alias="store.links" id="store.links" data-role="content"><!-- Account links --></div> <div class="section-item-title nav-sections-item-title" data-role="collapsible"> <a class="nav-sections-item-switch" data-toggle="switch" href="#store.settings">Settings</a> </div> <div class="section-item-content nav-sections-item-content" data-alias="store.settings" id="store.settings" data-role="content"> <li> <div class="switcher language switcher-language" data-ui-id="language-switcher" id="switcher-language-nav"> <strong class="label switcher-label"><span>Language:</span></strong> <div class="actions dropdown options switcher-options"> <div class="action toggle switcher-trigger" id="switcher-language-trigger-nav"> <strong class="view-en"> <span>English</span> </strong> </div> <ul class="dropdown switcher-dropdown" data-mage-init='{"dropdownDialog":{ "appendTo":"#switcher-language-nav > .options", "triggerTarget":"#switcher-language-trigger-nav", "closeOnMouseLeave": false, "triggerClass":"active", "parentClass":"active", "buttons":null}}'> <li class="view-de switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/stores\/store\/redirect\/","data":{"___store":"de","___from_store":"en","uenc":"aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9kZS9wcm9kdWN0LXRyYWluaW5n"}}'> Deutsch</a> </li> <li class="view-es switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/stores\/store\/redirect\/","data":{"___store":"es","___from_store":"en","uenc":"aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9lcy9wcm9kdWN0LXRyYWluaW5n"}}'> Español</a> </li> </ul> </div> </div> </li> <div class="switcher currency switcher-currency" id="switcher-currency-nav"> <strong class="label switcher-label"><span>Currency</span></strong> <div class="actions dropdown options switcher-options"> <div class="action toggle switcher-trigger" id="switcher-currency-trigger-nav" data-mage-init='{"dropdown":{}}' data-toggle="dropdown" data-trigger-keypress-button="true"> <strong class="language-USD"> <span>USD - US Dollar</span> </strong> </div> <ul class="dropdown switcher-dropdown" data-target="dropdown"> <li class="currency-EUR switcher-option"> <a href="#" data-post='{"action":"https:\/\/www.ruland.com\/directory\/currency\/switch\/","data":{"currency":"EUR"}}'>EUR - Euro</a> </li> </ul> </div> </div> </div> </div> </div> <div class="breadcrumbs"> <ul class="items"> <li class="item home"> <a href="https://www.ruland.com/" title="Go to Home Page"> Home </a> </li> <li class="item cms_page"> <strong>Lunch and Learn</strong> </li> </ul> </div> <main id="maincontent" class="page-main"><a id="contentarea" tabindex="-1"></a> <div class="page messages"><div data-placeholder="messages"></div> <div data-bind="scope: 'messages'"> <!-- ko if: cookieMessages && cookieMessages.length > 0 --> <div aria-atomic="true" role="alert" data-bind="foreach: { data: cookieMessages, as: 'message' }" class="messages"> <div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"> <div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div> </div> </div> <!-- /ko --> <!-- ko if: messages().messages && messages().messages.length > 0 --> <div aria-atomic="true" role="alert" class="messages" data-bind="foreach: { data: messages().messages, as: 'message' }"> <div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"> <div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div> </div> </div> <!-- /ko --> </div> </div><div class="columns"><div class="column main"><input name="form_key" type="hidden" value="miT5dBDM2sRI3SPJ" /><div id="authenticationPopup" data-bind="scope:'authenticationPopup', style: {display: 'none'}"> <!-- ko template: getTemplate() --><!-- /ko --> </div> <!-- Yotpo - Add body class --> <!--/ Yotpo - Add body class --> <!-- Yotpo - Widget Script --> <!--/ Yotpo - Widget Script --> <style>#html-body [data-pb-style=H8KFNEC]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;margin:0 0 10px;padding:10px}#html-body [data-pb-style=KGC2BRH]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="H8KFNEC"><div data-content-type="html" data-appearance="default" data-element="main" data-pb-style="KGC2BRH" data-decoded="true"><div class="bfb-widget "> <div id="bfb-form-containerbfb10" class="block bfb "> <div class="bfb-loading-mask"> <div class="bfb-spinner"> <span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span> </div> </div> <form class="form bfb-form" action="https://www.ruland.com/blueformbuilder/form/post/" method="post" id="bfb-form-bfb10" enctype="multipart/form-data" data-hasrequired="* Required Fields" data-role="bfb-form" data-mage-init='{"BlueFormBuilder_Core\/js\/form":{"id":"bfb10","formElements":[{"name":"name","id":"cg3cvpa"},{"name":"Company","id":"oct0wgc"},{"name":"email","id":"y27baep"},{"name":"phoneNumber","id":"biq3teh"},{"name":"pageURL","id":"t8unxqp"},{"name":"description","id":"mkhcqgv"}],"validCurrentPage":true,"ajaxLoadSectionUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/","beforeJsSelector":"","afterJsSelector":"","successUrl":"https:\/\/www.ruland.com\/blueformbuilder\/form\/success\/","submissionId":"","submissionHash":"","reportUrl":"https:\/\/www.ruland.com\/blueformbuilder\/form\/ajax\/","key":"_MC4xODA2ODAwMCAxNjgzMzEyMTg4","loadDataUrl":"https:\/\/www.ruland.com\/blueformbuilder\/form\/loadData\/","saveProgressUrl":"https:\/\/www.ruland.com\/blueformbuilder\/form\/saveProgress\/","formId":"bfb-form-bfb10","saveFormProgress":false}}'> <input type="hidden" name="bfb_form_key" class="bfb-input-hidden" value="_MC4xODA2ODAwMCAxNjgzMzEyMTg4"> <div class="magezon-builder magezon-builder-preload"><div class="qs5lxrk mgz-element mgz-element-row full_width_row"><div class="mgz-element-inner qs5lxrk-s"><div class="inner-content mgz-container"><div class="jdgf3nc mgz-element mgz-element-column mgz-col-xs-12"><div class="mgz-element-inner jdgf3nc-s"><div class="t1ff2sf mgz-element mgz-child mgz-element-heading"><div class="mgz-element-inner t1ff2sf-s"><h2 class="mgz-element-heading-text"> Lunch and Learn Registration </h2></div></div><div class="qg156jy mgz-element mgz-element-row full_width_row"><div class="mgz-element-inner qg156jy-s"><div class="inner-content mgz-container"><div class="vlc71hm mgz-element mgz-element-column mgz-col-xs-12"><div class="mgz-element-inner vlc71hm-s"><div class="qu6rbea mgz-element mgz-child mgz-element-text"><div class="mgz-element-inner qu6rbea-s"><p align="left">Please use the form below to request a Lunch and Learn from Ruland Manufacturing.</p><p align="left"> </p></div></div></div></div></div></div></div><div class="cg3cvpa mgz-element mgz-child mgz-element-bfb_text bfb-element bfb-element-label-left bfb-element-label-align-left required"><div class="mgz-element-inner cg3cvpa-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-cg3cvpa"><span>Name</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-cg3cvpa'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><input type="text" id="bfb-control-cg3cvpa" class="bfb-control" name="name" autofocus="true" autocomplete="off" data-bind="textInput: value,click: onClick," data-validate="{'required': true}"></div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="oct0wgc mgz-element mgz-child mgz-element-bfb_text bfb-element bfb-element-label-left bfb-element-label-align-left required"><div class="mgz-element-inner oct0wgc-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-oct0wgc"><span>Company</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-oct0wgc'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><input type="text" id="bfb-control-oct0wgc" class="bfb-control" name="Company" autocomplete="off" data-bind="textInput: value,click: onClick," data-validate="{'required': true}"></div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="y27baep mgz-element mgz-child mgz-element-bfb_text bfb-element bfb-element-label-left bfb-element-label-align-left required"><div class="mgz-element-inner y27baep-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-y27baep"><span>Email Address</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-y27baep'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><input type="text" id="bfb-control-y27baep" class="bfb-control" name="email" autocomplete="off" data-bind="textInput: value,click: onClick," data-validate="{'required': true}"></div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="biq3teh mgz-element mgz-child mgz-element-bfb_text bfb-element bfb-element-label-left bfb-element-label-align-left"><div class="mgz-element-inner biq3teh-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-biq3teh"><span>Phone Number</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-biq3teh'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><input type="text" id="bfb-control-biq3teh" class="bfb-control" name="phoneNumber" autocomplete="off" data-bind="textInput: value,click: onClick," data-validate="{}"></div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="t8unxqp mgz-element mgz-child mgz-element-bfb_text bfb-element bfb-element-label-left bfb-element-label-align-left bfb-element-hidden"><div class="mgz-element-inner t8unxqp-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-t8unxqp"><span>Page URL</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-t8unxqp'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><input type="text" id="bfb-control-t8unxqp" class="bfb-control" name="pageURL" autocomplete="off" data-value="[page.url_key]" data-bind="textInput: value,click: onClick," data-validate="{}"></div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="mkhcqgv mgz-element mgz-child mgz-element-bfb_textarea bfb-element bfb-element-label-above bfb-element-label-align-left required"><div class="mgz-element-inner mkhcqgv-s bfb-element-inner"><div class="bfb-element-label"><label for="bfb-control-mkhcqgv"><span>Details: Products of Interest, Number of Attendees, Date, Etc.</span></label></div><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-mkhcqgv'"><div class="bfb-element-text-wrapper" data-bind="outerClick: outerClick.bind($data)"><textarea id="bfb-control-mkhcqgv" class="bfb-control" name="description" autocomplete="off" rows="5" data-bind="textInput: value" data-validate="{'required': true}"></textarea> </div></div><div class="bfb-error" data-single-error="true"></div></div></div></div><div class="il4gn14 mgz-element mgz-child mgz-element-bfb_submit bfb-element"><div class="mgz-element-inner il4gn14-s bfb-element-inner"><div class="bfb-element-control"><div class="bfb-element-control-inner" data-bind="scope: 'bfb-control-il4gn14'"><div class="mgz-button mgz-btn-style-modern mgz-btn-size-md"><button type="submit" class="mgz-btn mgz-link"><span>SUBMIT</span> </button> </div></div><div class="bfb-error" data-single-error="true"></div></div></div></div></div></div></div></div></div></div> </form> </div> <style> </style> </div> </div></div></div> <section class="amsearch-overlay-block" data-bind=" scope: 'index = amsearch_overlay_section', mageInit: { 'Magento_Ui/js/core/app': { components: { 'amsearch_overlay_section': { component: 'Amasty_Xsearch/js/components/overlay' } } } }"> <div class="amsearch-overlay" data-bind=" event: { click: hide }, afterRender: initNode"> </div> </section> </div><div class="sidebar sidebar-additional"><div class="block block-compare" data-bind="scope: 'compareProducts'" data-role="compare-products-sidebar"> <div class="block-title"> <strong id="block-compare-heading" role="heading" aria-level="2">Compare Products</strong> <span class="counter qty no-display" data-bind="text: compareProducts().countCaption, css: {'no-display': !compareProducts().count}"></span> </div> <!-- ko if: compareProducts().count --> <div class="block-content no-display" aria-labelledby="block-compare-heading" data-bind="css: {'no-display': !compareProducts().count}"> <ol id="compare-items" class="product-items product-items-names" data-bind="foreach: compareProducts().items"> <li class="product-item"> <input type="hidden" class="compare-item-id" data-bind="value: id"/> <strong class="product-item-name"> <a data-bind="attr: {href: product_url}, html: name" class="product-item-link"></a> </strong> <a href="#" data-bind="attr: {'data-post': remove_url}" title="Remove&#x20;This&#x20;Item" class="action delete"> <span>Remove This Item</span> </a> </li> </ol> <div class="actions-toolbar"> <div class="primary"> <a data-bind="attr: {'href': compareProducts().listUrl}" class="action compare primary"><span>Compare</span></a> </div> <div class="secondary"> <a id="compare-clear-all" href="#" class="action clear" data-post="{&quot;action&quot;:&quot;https:\/\/www.ruland.com\/catalog\/product_compare\/clear\/&quot;,&quot;data&quot;:{&quot;uenc&quot;:&quot;&quot;,&quot;confirmation&quot;:true,&quot;confirmationMessage&quot;:&quot;Are you sure you want to remove all items from your Compare Products list?&quot;}}"> <span>Clear All</span> </a> </div> </div> </div> <!-- /ko --> <!-- ko ifnot: compareProducts().count --> <div class="empty">Select products to compare.</div> <!-- /ko --> </div> <div class="block block-wishlist" data-bind="scope: 'wishlist'"> <div class="block-title"> <!--strong>My Favorites</strong--> <strong>My Favorites</strong> <!-- ko if: wishlist().counter --> <span data-bind="text: wishlist().counter" class="counter"></span> <!-- /ko --> </div> <div class="block-content"> <strong class="subtitle">Last Added Items</strong> <!-- ko if: wishlist().counter --> <ol class="product-items no-display" id="wishlist-sidebar" data-bind="foreach: wishlist().items, css: {'no-display': null}"> <li class="product-item"> <div class="product-item-info"> <a class="product-item-photo" data-bind="attr: { href: product_url, title: product_name }"> <!-- ko template: {name: $data.image.template, data: $data.image} --><!-- /ko --> </a> <div class="product-item-details"> <strong class="product-item-name"> <a data-bind="attr: { href: product_url }" class="product-item-link"> <span data-bind="text: product_name"></span> </a> </strong> <div data-bind="html: product_price"></div> <div class="product-item-actions"> <!-- ko if: product_is_saleable_and_visible --> <div class="actions-primary"> <!-- ko if: product_has_required_options --> <a href="#" data-bind="attr: {'data-post': add_to_cart_params}" class="action tocart primary"><span>Add to Cart</span></a> <!-- /ko --> <!-- ko ifnot: product_has_required_options --> <button type="button" class="action tocart primary" data-bind="attr: {'data-post': add_to_cart_params}"><span>Add to Cart</span></button> <!-- /ko --> </div> <!-- /ko --> <div class="actions-secondary"> <a href="#" data-bind="attr: {'data-post': delete_item_params}" title="Remove This Item" class="btn-remove action delete"> <span>Remove This Item</span> </a> </div> </div> </div> </div> </li> </ol> <div class="actions-toolbar no-display" data-bind="css: {'no-display': null}"> <div class="primary"> <a class="action details" href="https://www.ruland.com/wishlist/" title="Go to My Favorites"><span>Go to My Favorites</span></a> </div> </div> <!-- /ko --> <!-- ko ifnot: wishlist().counter --> <div class="empty">Add products to your favorites.</div> <!-- /ko --> </div> </div> </div></div></main><footer class="page-footer"><div class="footer-top"><div class="page-main"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><div class="dws"> <div class="footer-phone"> <p><a href="tel:15084851000" aria-label="Phone Number">508-485-1000</a></p> </div> <div class="footer-email"> <p><a href="mailto:sales@ruland.com" aria-label="E-mail Address">sales@ruland.com</a></p> </div> <div class="footer-social"><span>Follow Us:</span> <a class="facebook" href="http://www.facebook.com/rulandmanufacturing" target="_blank" aria-label="Facebook"><span>Facebook</span></a> <a class="twitter" href="http://twitter.com/Ruland_Mfg" target="_blank" aria-label="Twitter"><span>Twitter</span></a> <a class="instagram" href="https://www.instagram.com/ruland_mfg/" target="_blank" aria-label="Instagram"><span>Instagram</span></a> <a class="youtube" href="http://www.youtube.com/user/RulandManufacturing" target="_blank" aria-label="YouTube"><span>YouTube</span></a> <a class="linkedin" href="https://www.linkedin.com/company/ruland-manufacturing-co--inc-" target="_blank" aria-label="LinkedIn"><span>LinkedIn</span></a></div> </div></div><div class="block newsletter"> <div class="title"><strong>Newsletter</strong></div> <div class="content"> <form class="form subscribe" novalidate action="https://www.ruland.com/newsletter/subscriber/new/" method="post" data-mage-init='{"validation": {"errorClass": "mage-error"}}' id="newsletter-validate-detail"> <div class="field newsletter"> <label class="label" for="newsletter"><span>Newsletter:</span></label> <div class="control"> <input name="email" type="email" id="newsletter" placeholder="Enter Email Address" data-validate="{required:true, 'validate-email':true}"/> <button class="btn-newsletter" title="Submit" type="submit"><span>Submit</span></button> </div> </div> </form> </div> </div> </div></div><div class="footer-links"><div class="page-main"><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="60B6E4323C689"><div data-content-type="html" data-appearance="default" data-element="main" data-pb-style="60B6E4323DD7F" data-decoded="true"><div> <div class="column-1 nt-2"> <h3>Products</h3> <ul> <li><a href="/shaft-collars.html">Shaft Collar</a></li> <li><a href="/rigid-couplings.html">Rigid Coupling</a></li> <li><a href="/servo-couplings/beam-couplings.html">Beam Coupling</a></li> <li><a href="/servo-couplings/bellows-couplings.html">Bellows Coupling</a></li> <li><a href="/servo-couplings/controlflex-couplings.html">Controlflex coupling</a></li> <li><a href="/servo-couplings/disc-couplings.html">Disc Coupling</a></li> <li><a href="/servo-couplings/jaw-couplings.html">Jaw Coupling</a></li> <li><a href="/servo-couplings/oldham-couplings.html">Oldham Coupling</a></li> </ul> </div> <div class="column-1 nt-2"> <h3>First Robotics</h3> <ul> <li><a href="/about-us/first-robotics/first-proud-support">Sponsorship</a></li> <li><a href="/about-us/first-robotics/first-donated-products">Donated Products</a></li> <li><a href="/about-us/first-robotics/first-resources">Resources</a></li> </ul> </div> <div class="column-1 nt-2"> <h3>Company</h3> <ul> <li><a href="/about-us/company-history">Company History</a></li> <li><a href="/about-us/reviews">Customer Reviews</a></li> <li><a href="/about-us/iso-9001-2015">ISO 9001:2015</a></li> <li><a href="/about-us/press-releases">Press Releases</a></li> <li><a href="/privacy-policy">Privacy Policy</a></li> <li><a href="/about-us/about-us-quality">Quality Statement</a></li> <li><a href="/shipping-policy">Shipping Policy</a></li> <li><a href="/about-us/about-us-superior-fit">We are Shaft Collars</a></li> </ul> </div> <div class="column-1 nt-2"> <h3>Support</h3> <ul> <li><a href="/contact-us/global-locations">Customer Service</a></li> <li><a href="/technical-resources/faq">FAQ</a></li> <li><a href="/contact-us/customer-support">Request a Quote</a></li> <li><a href="/contact-us/technical-support">Technical Support</a></li> <li><a href="/technical-resources/warranty">Warranty &amp; Return Policy</a></li> </ul> </div> </div></div></div></div><style>#html-body [data-pb-style="60B6E4323C689"]{justify-content: flex-start; display: flex; flex-direction: column; background-position: left top; background-size: cover; background-repeat: no-repeat; background-attachment: scroll; border-style: none; border-width: 1px; border-radius: 0px; margin: 0px; padding: 0px;}#html-body [data-pb-style="60B6E4323DD7F"]{border-style: none; border-width: 1px; border-radius: 0px; margin: 0px; padding: 0px;}</style></div></div></footer> <!-- Before body end content --> <div id="ub-bg-overlay" class="ub-bg-overlay"></div> <small class="copyright"> <span>© 2024 Ruland Manufacturing Co., Inc. All rights reserved</span> </small> </div> <script> var BASE_URL = 'https\u003A\u002F\u002Fwww.ruland.com\u002F'; var require = { 'baseUrl': 'https\u003A\u002F\u002Fwww.ruland.com\u002Fstatic\u002Fversion1731580878\u002Ffrontend\u002FMagento\u002Fruland\u002Fen_US' };</script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/requirejs/require.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/requirejs-min-resolver.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/mage/requirejs/mixins.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/magepack/requirejs-config-common.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/magepack/requirejs-config-cms.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/requirejs-config.min.js"></script> <script type="text/javascript" src="https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/js/custom.min.js"></script> <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= '';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-T8NH2DV');</script> <script>window.popupbuilder = {};</script> <script>require(['jquery', 'underscore'], function($, _) { var ids = []; $('*[class*="pb-popup-"]').each(function(index, el) { var classes = $(this).attr('class'); classes = classes.split(' '); for (var i = 0; i < classes.length; i++) { var popupClass = classes[i]; if (popupClass.indexOf('pb-popup-') !== -1) { var id = parseInt(popupClass.replace('pb-popup-', '')); $(this).addClass('pb-popup' + id); ids.push(id); } } }); $.ajax({ url: 'https://www.ruland.com/popupbuilder/ajax/load/', data: { ids: ids, handles: ["default","cms_page_view","cms_page_view_id_product-training","cms_page_view_id_618"] }, type: 'post', dataType: 'json', success: function(res) { if (res.status) { var valid = false; _.each(res.list, function(item, id) { $('body').append(item); valid = true; $('.pb-popup' + id).click(function(e) { e.preventDefault(); $('#popupbuilder-popup-' + id).trigger('showPopup'); }); }); if (valid) $('body').trigger('contentUpdated'); } } }); })</script> <script type="text/x-magento-init"> { "*": { "Magento_PageCache/js/form-key-provider": { "isPaginationCacheEnabled": 0 } } } </script> <script type="text&#x2F;javascript">window.dataLayer = window.dataLayer || []; window.getAmGa4Cookie = function () { let cookies = {}; document.cookie.split(';').forEach(function (el) { let [key, value] = el.split('='); cookies[key.trim()] = value; }); return cookies['amga4_customer'] ? decodeURIComponent(cookies['amga4_customer']) : '{}'; }; (function () { /** * @var {[Object]} */ const userProperties = JSON.parse(window.getAmGa4Cookie()); if (userProperties.customerGroup) { window.dataLayer.push({'customerGroup': userProperties.customerGroup}); } if (userProperties.customerId) { window.dataLayer.push({'customerId': userProperties.customerId}); } /** * @var {[Object]} */ const dataToPush = JSON.parse('\u005B\u005D'); dataToPush.forEach((dataObject) => { window.dataLayer.push(dataObject); }); })(); </script> <script type="text/x-magento-init"> { "*": { "Amasty_GA4/js/gtm-gdpr-cookie": {} } } </script> <script type="text/javascript"> // Global variables let ubAjaxCartOptions = {}; const AUTO_HIDE_MESSAGE = 1; const MESSAGE_TIMEOUT = 5000; </script> <script type="application/ld+json">{"@context":"http:\/\/schema.org","@type":"WebSite","url":"https:\/\/www.ruland.com\/","name":"Ruland Manufacturing","about":"Established in 1937, Ruland focuses on the design and manufacturing of high performing shaft collars and couplings. All products are carefully manufactured in Marlborough, Massachusetts factory under strict controls using proprietary processes."}</script> <script type="application/ld+json">{"@context":"http:\/\/schema.org","@type":"Organization","@id":"https:\/\/www.ruland.com\/","name":"Ruland Manufacturing Co., Inc.","description":"Established in 1937, Ruland focuses on the design and manufacturing of high performing shaft collars and couplings. All products are carefully manufactured in Marlborough, Massachusetts factory under strict controls using proprietary processes.","telephone":"508-485-1000","email":"sales@ruland.com","faxNumber":"508-485-9000","address":{"@type":"PostalAddress","addressCountry":"","addressLocality":"Marlborough","addressRegion":"MA","streetAddress":"6 Hayes Memorial Dr","postalCode":"01752"},"sameAs":[["https:\/\/www.facebook.com\/rulandmanufacturing","https:\/\/twitter.com\/Ruland_Mfg"]],"image":"https:\/\/www.ruland.com\/media\/seller_image\/","url":"https:\/\/www.ruland.com\/"}</script> <script type="application/ld+json">{"@context":"http:\/\/schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":{"@id":"https:\/\/www.ruland.com\/product-training","name":"Lunch and Learn"},"position":1}]}</script> <script type="application/ld+json">{"@context":"http:\/\/schema.org\/","@type":"WebPage","speakable":{"@type":"SpeakableSpecification","cssSelector":[".cms-content"],"xpath":["\/html\/head\/title"]}}</script> <script type="text/x-magento-init"> { "*": { "Magento_PageBuilder/js/widget-initializer": { "config": {"[data-content-type=\"slider\"][data-appearance=\"default\"]":{"Magento_PageBuilder\/js\/content-type\/slider\/appearance\/default\/widget":false},"[data-content-type=\"map\"]":{"Magento_PageBuilder\/js\/content-type\/map\/appearance\/default\/widget":false},"[data-content-type=\"row\"]":{"Magento_PageBuilder\/js\/content-type\/row\/appearance\/default\/widget":false},"[data-content-type=\"tabs\"]":{"Magento_PageBuilder\/js\/content-type\/tabs\/appearance\/default\/widget":false},"[data-content-type=\"slide\"]":{"Magento_PageBuilder\/js\/content-type\/slide\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-slide-button","showOverlay":"hover","dataRole":"slide"}},"[data-content-type=\"banner\"]":{"Magento_PageBuilder\/js\/content-type\/banner\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-banner-button","showOverlay":"hover","dataRole":"banner"}},"[data-content-type=\"buttons\"]":{"Magento_PageBuilder\/js\/content-type\/buttons\/appearance\/inline\/widget":false},"[data-content-type=\"products\"][data-appearance=\"carousel\"]":{"Amasty_Xsearch\/js\/content-type\/products\/appearance\/carousel\/widget-override":false}}, "breakpoints": {"desktop":{"label":"Desktop","stage":true,"default":true,"class":"desktop-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-desktop.svg","conditions":{"min-width":"1024px"},"options":{"products":{"default":{"slidesToShow":"5"}}}},"tablet":{"conditions":{"max-width":"1024px","min-width":"768px"},"options":{"products":{"default":{"slidesToShow":"4"},"continuous":{"slidesToShow":"3"}}}},"mobile":{"label":"Mobile","stage":true,"class":"mobile-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-mobile.svg","media":"only screen and (max-width: 768px)","conditions":{"max-width":"768px","min-width":"640px"},"options":{"products":{"default":{"slidesToShow":"3"}}}},"mobile-small":{"conditions":{"max-width":"640px"},"options":{"products":{"default":{"slidesToShow":"2"},"continuous":{"slidesToShow":"1"}}}}} } } } </script> <script type="text&#x2F;javascript">document.querySelector("#cookie-status").style.display = "none";</script> <script type="text/x-magento-init"> { "*": { "cookieStatus": {} } } </script> <script type="text/x-magento-init"> { "*": { "mage/cookies": { "expires": null, "path": "\u002F", "domain": ".www.ruland.com", "secure": true, "lifetime": "432000" } } } </script> <script> require.config({ map: { '*': { wysiwygAdapter: 'mage/adminhtml/wysiwyg/tiny_mce/tinymce5Adapter' } } });</script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "company": { "component": "Magento_Company/js/view/company", "logoutUrl": "https://www.ruland.com/customer/account/logout/" } } } } } </script> <script> window.cookiesConfig = window.cookiesConfig || {}; window.cookiesConfig.secure = true; </script> <script> require.config({ paths: { googleMaps: 'https\u003A\u002F\u002Fmaps.googleapis.com\u002Fmaps\u002Fapi\u002Fjs\u003Fv\u003D3\u0026key\u003D' }, config: { 'Magento_PageBuilder/js/utils/map': { style: '', }, 'Magento_PageBuilder/js/content-type/map/preview': { apiKey: '', apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.ruland.com\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.' }, 'Magento_PageBuilder/js/form/element/map': { apiKey: '', apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.ruland.com\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.' }, } });</script> <script> require.config({ shim: { 'Magento_PageBuilder/js/utils/map': { deps: ['googleMaps'] } } });</script> <script type="text/x-magento-init"> { "*": { "Amasty_GA4/js/event/ajax-observer": {} } } </script> <script type="text/x-magento-init"> { "*": { "Amasty_GA4/js/event/product/wishlist": {} } } </script> <script type="text&#x2F;javascript">window.isGdprCookieEnabled = true; require(['Amasty_GdprFrontendUi/js/modal-show'], function (modalConfigInit) { modalConfigInit({"isDeclineEnabled":0,"barLocation":0,"policyText":"We use cookies to improve our services, make personal offers, and enhance your experience. If you do not accept optional cookies below, your experience may be affected. If you want to know more, please, read the <a href=\"privacy-policy-cookie-restriction-mode\" title=\"Cookie Policy\" target=\"_blank\">Cookie Policy<\/a>","firstShowProcess":"0","cssConfig":{"backgroundColor":null,"policyTextColor":null,"textColor":null,"titleColor":null,"linksColor":null,"acceptBtnColor":null,"acceptBtnColorHover":null,"acceptBtnTextColor":null,"acceptBtnTextColorHover":null,"acceptBtnOrder":null,"allowBtnTextColor":null,"allowBtnTextColorHover":null,"allowBtnColor":null,"allowBtnColorHover":null,"allowBtnOrder":null,"declineBtnTextColorHover":null,"declineBtnColorHover":null,"declineBtnTextColor":null,"declineBtnColor":null,"declineBtnOrder":null},"isPopup":false,"isModal":false,"className":"amgdprjs-bar-template","buttons":[{"label":"Accept Cookies","dataJs":"accept","class":"-allow -save","action":"allowCookies"},{"label":"Custom Settings","dataJs":"settings","class":"-settings"}],"template":"<div role=\"alertdialog\"\n tabindex=\"-1\"\n class=\"modal-popup _show amgdprcookie-bar-container <% if (data.isPopup) { %>-popup<% } %>\" data-amcookie-js=\"bar\">\n <span tabindex=\"0\" class=\"amgdprcookie-focus-guard\" data-focus-to=\"last\"><\/span>\n <button class=\"action-close\" data-amcookie-js=\"close-cookiebar\" type=\"button\">\n <span data-bind=\"i18n: 'Close'\"><\/span>\n <\/button>\n <div class=\"amgdprcookie-bar-block\">\n <div class=\"amgdprcookie-policy\"><%= data.policyText %><\/div>\n <div class=\"amgdprcookie-buttons-block\">\n <% _.each(data.buttons, function(button) { %>\n <button class=\"amgdprcookie-button <%= button.class %>\" disabled data-amgdprcookie-js=\"<%= button.dataJs %>\"><%= button.label %><\/button>\n <% }); %>\n <\/div>\n <\/div>\n <span tabindex=\"0\" class=\"amgdprcookie-focus-guard\" data-focus-to=\"first\"><\/span>\n<\/div>\n\n<style>\n <% if(css.backgroundColor){ %>\n .amgdprcookie-bar-container {\n background-color: <%= css.backgroundColor %>\n }\n <% } %>\n <% if(css.policyTextColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-policy {\n color: <%= css.policyTextColor %>;\n }\n <% } %>\n <% if(css.textColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-text {\n color: <%= css.textColor %>;\n }\n <% } %>\n <% if(css.titleColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-header {\n color: <%= css.titleColor %>;\n }\n <% } %>\n <% if(css.linksColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-link,\n .amgdprcookie-bar-container .amgdprcookie-policy a {\n color: <%= css.linksColor %>;\n }\n <% } %>\n <% if(css.acceptBtnOrder || css.acceptBtnColor || css.acceptBtnTextColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-save {\n <% if(css.acceptBtnOrder) { %>order: <%= css.acceptBtnOrder %>; <% } %>\n <% if(css.acceptBtnColor) { %>\n background-color: <%= css.acceptBtnColor %>;\n border-color: <%= css.acceptBtnColor %>;\n <% } %>\n <% if(css.acceptBtnTextColor) { %>color: <%= css.acceptBtnTextColor %>; <% } %>\n }\n <% } %>\n <% if(css.acceptBtnColorHover || css.acceptBtnTextColorHover){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-save:hover {\n <% if(css.acceptBtnColorHover) { %>\n background-color: <%= css.acceptBtnColorHover %>;\n border-color: <%= css.acceptBtnColorHover %>;\n <% } %>\n <% if(css.acceptBtnTextColorHover) { %> color: <%= css.acceptBtnTextColorHover %>; <% } %>\n }\n <% } %>\n <% if(css.allowBtnOrder || css.allowBtnColor || css.allowBtnTextColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-settings {\n <% if(css.allowBtnOrder) { %> order: <%= css.allowBtnOrder %>; <% } %>\n <% if(css.allowBtnColor) { %>\n background-color: <%= css.allowBtnColor %>;\n border-color: <%= css.allowBtnColor %>;\n <% } %>\n <% if(css.allowBtnTextColor) { %> color: <%= css.allowBtnTextColor %>; <% } %>\n }\n <% } %>\n <% if(css.allowBtnColorHover || css.allowBtnTextColorHover){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-settings:hover {\n <% if(css.allowBtnColorHover) { %>\n background-color: <%= css.allowBtnColorHover %>;\n border-color: <%= css.allowBtnColorHover %>;\n <% } %>\n <% if(css.allowBtnTextColorHover) { %> color: <%= css.allowBtnTextColorHover %>; <% } %>\n }\n <% } %>\n <% if(css.declineBtnOrder || css.declineBtnColor || css.declineBtnTextColor){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-decline {\n <% if(css.declineBtnOrder) { %> order: <%= css.declineBtnOrder %>; <% } %>\n <% if(css.declineBtnColor) { %>\n background-color: <%= css.declineBtnColor %>;\n border-color: <%= css.declineBtnColor %>;\n <% } %>\n <% if(css.declineBtnTextColor) { %> color: <%= css.declineBtnTextColor %>; <% } %>\n }\n <% } %>\n <% if(css.declineBtnColorHover || css.declineBtnTextColorHover){ %>\n .amgdprcookie-bar-container .amgdprcookie-button.-decline:hover {\n <% if(css.declineBtnColorHover) { %>\n background-color: <%= css.declineBtnColorHover %>;\n border-color: <%= css.declineBtnColorHover %>;\n <% } %>\n <% if(css.declineBtnTextColorHover) { %> color: <%= css.declineBtnTextColorHover %>; <% } %>\n }\n <% } %>\n<\/style>\n"}); });</script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": {"components":{"gdpr-cookie-modal":{"cookieText":"We use cookies to improve our services, make personal offers, and enhance your experience. If you do not accept optional cookies below, your experience may be affected. If you want to know more, please, read the <a href=\"privacy-policy-cookie-restriction-mode\" title=\"Cookie Policy\" target=\"_blank\">Cookie Policy<\/a>","firstShowProcess":"0","acceptBtnText":null,"declineBtnText":null,"settingsBtnText":null,"isDeclineEnabled":0,"component":"Amasty_GdprFrontendUi\/js\/cookies","children":{"gdpr-cookie-settings-modal":{"component":"Amasty_GdprFrontendUi\/js\/modal\/cookie-settings"}}}}} } } </script> <script type="text/javascript"> require([ "jquery", "domReady!" ], function ($) { 'use strict'; //detect modes and add extra class CSS var extraClass = 'ontouchstart' in window && !(/hp-tablet/gi).test(navigator.appVersion) ? 'touch' : 'no-touch'; $('html').addClass(extraClass); //improve scroll performance $.event.special.touchstart = { setup: function( _, ns, handle ) { this.addEventListener("touchstart", handle, { passive: !ns.includes("noPreventDefault") }); } }; $.event.special.touchmove = { setup: function( _, ns, handle ) { this.addEventListener("touchmove", handle, { passive: !ns.includes("noPreventDefault") }); } }; $.event.special.wheel = { setup: function( _, ns, handle ){ this.addEventListener("wheel", handle, { passive: true }); } }; $.event.special.mousewheel = { setup: function( _, ns, handle ){ this.addEventListener("mousewheel", handle, { passive: true }); } }; }); </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "purchase_order": { "component": "Magento_PurchaseOrder/js/view/purchase-order" } } } } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "customer": { "component": "Magento_Customer/js/view/customer" } } } } } </script> <script> window.checkout = {"shoppingCartUrl":"https:\/\/www.ruland.com\/checkout\/cart\/","checkoutUrl":"https:\/\/www.ruland.com\/checkout\/","updateItemQtyUrl":"https:\/\/www.ruland.com\/checkout\/sidebar\/updateItemQty\/","removeItemUrl":"https:\/\/www.ruland.com\/checkout\/sidebar\/removeItem\/","imageTemplate":"Magento_Catalog\/product\/image_with_borders","baseUrl":"https:\/\/www.ruland.com\/","minicartMaxItemsVisible":5,"websiteId":"1","maxItemsToDisplay":10,"storeId":"1","storeGroupId":"1","agreementIds":["1","2"],"customerLoginUrl":"https:\/\/www.ruland.com\/customer\/account\/login\/referer\/aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9wcm9kdWN0LXRyYWluaW5n\/","isRedirectRequired":false,"autocomplete":"off","captcha":{"user_login":{"isCaseSensitive":false,"imageHeight":50,"imageSrc":"","refreshUrl":"https:\/\/www.ruland.com\/captcha\/refresh\/","isRequired":false,"timestamp":1732452372}}}; </script> <script type="text/x-magento-init"> { "[data-block='minicarttop']": { "Magento_Ui/js/core/app": {"components":{"minicart_content":{"children":{"subtotal.container":{"children":{"subtotal":{"children":{"subtotal.totals":{"config":{"display_cart_subtotal_incl_tax":0,"display_cart_subtotal_excl_tax":1}}}}}}}}}} }, "*": { "Magento_Ui/js/block-loader": "https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/images/loader-1.gif" } } </script> <script> window.checkout = {"shoppingCartUrl":"https:\/\/www.ruland.com\/checkout\/cart\/","checkoutUrl":"https:\/\/www.ruland.com\/checkout\/","updateItemQtyUrl":"https:\/\/www.ruland.com\/checkout\/sidebar\/updateItemQty\/","removeItemUrl":"https:\/\/www.ruland.com\/checkout\/sidebar\/removeItem\/","imageTemplate":"Magento_Catalog\/product\/image_with_borders","baseUrl":"https:\/\/www.ruland.com\/","minicartMaxItemsVisible":5,"websiteId":"1","maxItemsToDisplay":10,"storeId":"1","storeGroupId":"1","agreementIds":["1","2"],"customerLoginUrl":"https:\/\/www.ruland.com\/customer\/account\/login\/referer\/aHR0cHM6Ly93d3cucnVsYW5kLmNvbS9wcm9kdWN0LXRyYWluaW5n\/","isRedirectRequired":false,"autocomplete":"off","captcha":{"user_login":{"isCaseSensitive":false,"imageHeight":50,"imageSrc":"","refreshUrl":"https:\/\/www.ruland.com\/captcha\/refresh\/","isRequired":false,"timestamp":1732452372}}}; </script> <script type="text/x-magento-init"> { "[data-block='minicart']": { "Magento_Ui/js/core/app": {"components":{"minicart_content":{"children":{"subtotal.container":{"children":{"subtotal":{"children":{"subtotal.totals":{"config":{"display_cart_subtotal_incl_tax":0,"display_cart_subtotal_excl_tax":1,"template":"Magento_Tax\/checkout\/minicart\/subtotal\/totals"},"component":"Magento_Tax\/js\/view\/checkout\/minicart\/subtotal\/totals","children":{"subtotal.totals.msrp":{"component":"Magento_Msrp\/js\/view\/checkout\/minicart\/subtotal\/totals","config":{"displayArea":"minicart-subtotal-hidden","template":"Magento_Msrp\/checkout\/minicart\/subtotal\/totals"}}}}},"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/subtotal"}}},"component":"uiComponent","config":{"displayArea":"subtotalContainer"}},"item.renderer":{"component":"Magento_Checkout\/js\/view\/cart-item-renderer","config":{"displayArea":"defaultRenderer","template":"Magento_Checkout\/minicart\/item\/default"},"children":{"item.image":{"component":"Magento_Catalog\/js\/view\/image","config":{"template":"Magento_Catalog\/product\/image","displayArea":"itemImage"}},"checkout.cart.item.price.sidebar":{"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/item\/price","displayArea":"priceSidebar"}}}},"extra_info":{"component":"uiComponent","config":{"displayArea":"extraInfo"}},"promotion":{"component":"uiComponent","config":{"displayArea":"promotion"}}},"config":{"itemRenderer":{"default":"defaultRenderer","simple":"defaultRenderer","virtual":"defaultRenderer"},"template":"Magento_Checkout\/minicart\/content"},"component":"Magento_Checkout\/js\/view\/minicart"}},"types":[]} }, "*": { "Magento_Ui/js/block-loader": "https://www.ruland.com/static/version1731580878/frontend/Magento/ruland/en_US/images/loader-1.gif" } } </script> <script type="text/x-magento-init"> { "#ub-mega-menu-4": { "Ubertheme_UbMegaMenu/js/ub-menu": { "menuPosition": "main", "menuKey": "main-menu", "isMainMenu": "1", "enableSticky": "0", "rootSelector": "#ub-mega-menu-4", "itemSelector": "li.mega", "offCanvasBreakpoint": "1023", "menuType" : "horizontal", "mobileType" : "accordion", "drillOptions": {"speed": 300}, "extraClass": "" } } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "messages": { "component": "Magento_Theme/js/view/messages" } } } } } </script> <script>window.authenticationPopup = {"autocomplete":"off","customerRegisterUrl":"https:\/\/www.ruland.com\/customer\/account\/create\/","customerForgotPasswordUrl":"https:\/\/www.ruland.com\/customer\/account\/forgotpassword\/","baseUrl":"https:\/\/www.ruland.com\/","customerLoginUrl":"https:\/\/www.ruland.com\/customer\/ajax\/login\/"}</script> <script type="text/x-magento-init"> { "#authenticationPopup": { "Magento_Ui/js/core/app": {"components":{"authenticationPopup":{"component":"Magento_Customer\/js\/view\/authentication-popup","children":{"messages":{"component":"Magento_Ui\/js\/view\/messages","displayArea":"messages"},"recaptcha":{"settings":{"rendering":{"sitekey":"6LfmoKwZAAAAAIu966df4PKLmdmnICMhu0yvca6m","badge":"inline","size":"invisible","theme":"light","hl":""},"invisible":true}}}}}} }, "*": { "Magento_Ui/js/block-loader": "https\u003A\u002F\u002Fwww.ruland.com\u002Fstatic\u002Fversion1731580878\u002Ffrontend\u002FMagento\u002Fruland\u002Fen_US\u002Fimages\u002Floader\u002D1.gif" } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Customer/js/section-config": { "sections": {"stores\/store\/switch":["*"],"stores\/store\/switchrequest":["*"],"directory\/currency\/switch":["*"],"*":["messages","company"],"customer\/account\/logout":["*","recently_viewed_product","recently_compared_product","persistent"],"customer\/account\/loginpost":["*"],"customer\/account\/createpost":["*"],"customer\/account\/editpost":["*"],"customer\/ajax\/login":["checkout-data","cart","captcha"],"catalog\/product_compare\/add":["compare-products"],"catalog\/product_compare\/remove":["compare-products"],"catalog\/product_compare\/clear":["compare-products"],"sales\/guest\/reorder":["cart"],"sales\/order\/reorder":["cart"],"rest\/v1\/requisition_lists":["requisition"],"requisition_list\/requisition\/delete":["requisition"],"requisition_list\/item\/addtocart":["cart"],"checkout\/cart\/add":["cart","directory-data"],"checkout\/cart\/delete":["cart"],"checkout\/cart\/updatepost":["cart"],"checkout\/cart\/updateitemoptions":["cart"],"checkout\/cart\/couponpost":["cart"],"checkout\/cart\/estimatepost":["cart"],"checkout\/cart\/estimateupdatepost":["cart"],"checkout\/onepage\/saveorder":["cart","checkout-data","last-ordered-items"],"checkout\/sidebar\/removeitem":["cart"],"checkout\/sidebar\/updateitemqty":["cart"],"rest\/*\/v1\/carts\/*\/payment-information":["cart","last-ordered-items","captcha","instant-purchase"],"rest\/*\/v1\/guest-carts\/*\/payment-information":["cart","captcha"],"rest\/*\/v1\/guest-carts\/*\/selected-payment-method":["cart","checkout-data"],"rest\/*\/v1\/carts\/*\/selected-payment-method":["cart","checkout-data","instant-purchase"],"wishlist\/index\/add":["wishlist"],"wishlist\/index\/remove":["wishlist"],"wishlist\/index\/updateitemoptions":["wishlist"],"wishlist\/index\/update":["wishlist"],"wishlist\/index\/cart":["wishlist","cart"],"wishlist\/index\/fromcart":["wishlist","cart"],"wishlist\/index\/allcart":["wishlist","cart"],"wishlist\/shared\/allcart":["wishlist","cart"],"wishlist\/shared\/cart":["cart"],"customer_order\/cart\/updatefaileditemoptions":["cart"],"checkout\/cart\/updatefaileditemoptions":["cart"],"customer_order\/cart\/advancedadd":["cart"],"checkout\/cart\/advancedadd":["cart"],"checkout\/cart\/removeallfailed":["cart"],"checkout\/cart\/removefailed":["cart"],"customer_order\/cart\/addfaileditems":["cart"],"checkout\/cart\/addfaileditems":["cart"],"customer_order\/sku\/uploadfile":["cart"],"giftregistry\/index\/cart":["cart"],"giftregistry\/view\/addtocart":["cart"],"customer\/address\/*":["instant-purchase"],"customer\/account\/*":["instant-purchase"],"vault\/cards\/deleteaction":["instant-purchase"],"multishipping\/checkout\/overviewpost":["cart"],"wishlist\/index\/copyitem":["wishlist"],"wishlist\/index\/copyitems":["wishlist"],"wishlist\/index\/deletewishlist":["wishlist","multiplewishlist"],"wishlist\/index\/createwishlist":["multiplewishlist"],"wishlist\/index\/editwishlist":["multiplewishlist"],"wishlist\/index\/moveitem":["wishlist"],"wishlist\/index\/moveitems":["wishlist"],"wishlist\/search\/addtocart":["cart","wishlist"],"paypal\/express\/placeorder":["cart","checkout-data"],"paypal\/payflowexpress\/placeorder":["cart","checkout-data"],"paypal\/express\/onauthorization":["cart","checkout-data"],"rest\/*\/v1\/carts\/*\/po-payment-information":["cart","checkout-data","last-ordered-items"],"purchaseorder\/purchaseorder\/success":["cart","checkout-data","last-ordered-items"],"persistent\/index\/unsetcookie":["persistent"],"quickorder\/sku\/uploadfile\/":["cart"],"review\/product\/post":["review"],"braintree\/paypal\/placeorder":["cart","checkout-data"],"braintree\/googlepay\/placeorder":["cart","checkout-data"],"wage_cad\/ajax\/login":["cad-permissions"],"wage_cad\/ajax\/register":["cad-permissions"]}, "clientSideSections": ["checkout-data","cart-data"], "baseUrls": ["https:\/\/www.ruland.com\/"], "sectionNames": ["messages","customer","compare-products","last-ordered-items","requisition","cart","directory-data","captcha","wishlist","company","company_authorization","negotiable_quote","instant-purchase","loggedAsCustomer","multiplewishlist","purchase_order","persistent","review","amga4_event_pool","cms-block-permissions","cad-permissions","recently_viewed_product","recently_compared_product","product_data_storage","paypal-billing-agreement"] } } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Customer/js/customer-data": { "sectionLoadUrl": "https\u003A\u002F\u002Fwww.ruland.com\u002Fcustomer\u002Fsection\u002Fload\u002F", "expirableSectionLifetime": 60, "expirableSectionNames": ["cart","persistent"], "cookieLifeTime": "432000", "updateSessionUrl": "https\u003A\u002F\u002Fwww.ruland.com\u002Fcustomer\u002Faccount\u002FupdateSession\u002F" } } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Customer/js/invalidation-processor": { "invalidationRules": { "website-rule": { "Magento_Customer/js/invalidation-rules/website-rule": { "scopeConfig": { "websiteId": "1" } } } } } } } </script> <script type="text/x-magento-init"> { "body": { "pageCache": {"url":"https:\/\/www.ruland.com\/page_cache\/block\/render\/page_id\/618\/","handles":["default","cms_page_view","cms_page_view_id_product-training","cms_page_view_id_618"],"originalRequest":{"route":"cms","controller":"page","action":"view","uri":"\/product-training"},"versionCookieName":"private_content_version"} } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Banner/js/model/banner": {"sectionLoadUrl":"https:\/\/www.ruland.com\/banner\/ajax\/load\/","cacheTtl":30000} } } </script> <script> (function(){ require(["jquery"], function($){ $(document).ready(function() { $('body').addClass('yotpo-yotpo-is-enabled'); }); } ); })(); </script> <script> (function e(){var e=document.createElement("script");e.type="text/javascript",e.async=true,e.src="//staticw2.yotpo.com/eSmAzLsiUsrEmwIFBvZdA1F6eD48xCVgEnCI7z1Z/widget.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})(); </script> <script type="text/x-magento-init">{"*": {"Yotpo_Reviews/js/put_link_write_review": {}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-cg3cvpa": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"","max":"","limitType":"characters","element":"#bfb-control-cg3cvpa","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-oct0wgc": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"","max":"","limitType":"characters","element":"#bfb-control-oct0wgc","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-y27baep": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"","max":"","limitType":"characters","element":"#bfb-control-y27baep","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-biq3teh": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"","max":"","limitType":"characters","element":"#bfb-control-biq3teh","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-t8unxqp": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"[page.url_key]","max":"","limitType":"characters","element":"#bfb-control-t8unxqp","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init">{"*": {"Magento_Ui/js/core/app": {"components": {"bfb-control-mkhcqgv": {"component":"BlueFormBuilder_Core\/js\/form\/element\/text","value":"","max":"","limitType":"characters","element":"#bfb-control-mkhcqgv","options":"[]","ajaxUrl":"https:\/\/www.ruland.com\/blueformbuilder\/section\/load\/"}}}}}</script> <script type="text/x-magento-init"> { "#bfb-form-bfb10": { "BlueFormBuilder_Core/js/rules": {}, "BlueFormBuilder_Core/js/validate-review": {}, "BlueFormBuilder_Core/js/validate-file": {}, "BlueFormBuilder_Core/js/validate-phone": {}, "BlueFormBuilder_Core/js/form": { "conditional": "" } } } </script> <script type="text/x-magento-init"> { "*": { "amsearchAnalyticsCollector": { "minChars": 3 } } } </script> <script type="text/x-magento-init"> {"[data-role=compare-products-sidebar]": {"Magento_Ui/js/core/app": {"components":{"compareProducts":{"component":"Magento_Catalog\/js\/view\/compare-products"}}}}} </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "wishlist": { "component": "Magento_Wishlist/js/view/wishlist" } } } } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "storage-manager": { "component": "Magento_Catalog/js/storage-manager", "appendTo": "", "storagesConfiguration" : {"recently_viewed_product":{"requestConfig":{"syncUrl":"https:\/\/www.ruland.com\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"recently_compared_product":{"requestConfig":{"syncUrl":"https:\/\/www.ruland.com\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"product_data_storage":{"updateRequestConfig":{"url":"https:\/\/www.ruland.com\/rest\/en\/V1\/products-render-info"},"requestConfig":{"syncUrl":"https:\/\/www.ruland.com\/catalog\/product\/frontend_action_synchronize\/"},"allowToSendRequest":null}} } } } } } </script> <script type="text&#x2F;javascript">window.dataLayer = window.dataLayer || []; (function () { /** * @var {[Object]} */ const dataToPush = JSON.parse('\u005B\u005D'); dataToPush.forEach((dataObject) => { window.dataLayer.push(dataObject); }); })(); </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": {"components":{"amga4EventPool":{"component":"Amasty_GA4\/js\/event\/pool"}}} } } </script> <script>require(['magezonBuilder']);</script> <script> require(['jquery', 'lazyLoad', 'lazyLoadPlugins'], function($) { window.mgzLazyload = function(config) { var settings = { bind: "event", delay: -1, threshold: 100, effect: "show", effectTime: 0, afterLoad: function(element) { $(element).removeClass('lazy-loading').removeClass('lazy-blur').addClass('lazy-loaded'); } }; if (config) settings = $.extend(settings, config); $('.lazy').lazy(settings); } window.mgzLazyload(); $(document).on('ajaxComplete', function (event, xhr, settings) { window.mgzLazyload(); }); $(document).ready(function($) { $('.owl-carousel').on('changed.owl.carousel', function(event) { window.mgzLazyload(); }); }); $('.swiper-container').find('img.lazy-loading').each(function(index, el) { var lazySrc = $(this).data('src'); $(this).removeClass('lazy-loading'); $(this).addClass('lazy-loaded'); $(this).attr('src', lazySrc); }); }); </script> <script type="text/javascript"> var oct8ne = document.createElement("script"); oct8ne.type = "text/javascript"; oct8ne.server = "backoffice.oct8ne.com/"; oct8ne.src = (document.location.protocol == "https:" ? "https://" : "http://") + "static.oct8ne.com/" +'api/v2/oct8ne.js' + '?' + (Math.round(new Date().getTime() / 86400000)); oct8ne.async = true; oct8ne.license = "A98BC14A4270707464B4CA4506802DD8"; oct8ne.baseUrl = "//www.ruland.com/"; oct8ne.checkoutUrl = "//www.ruland.com/checkout/"; oct8ne.loginUrl = "//www.ruland.com/customer/account/login/"; oct8ne.checkoutSuccessUrl = "//www.ruland.com/checkout/onepage/success/"; oct8ne.locale = "en-US"; oct8ne.currencyCode = "USD"; oct8ne.platform = "magento2"; oct8ne.apiVersion = "2.4"; oct8ne.onProductAddedToCart = function(productId) { require(['Magento_Customer/js/customer-data'], function (customerData) { var sections = ['cart']; customerData.invalidate(sections); customerData.reload(sections, true); }); }; if (document.cookie.indexOf("oct8ne-room") === -1) { setTimeout(insertOct8ne, 3 * 1000); window.addEventListener('mousemove', insertOct8ne); window.addEventListener('scroll', insertOct8ne); window.addEventListener('click', insertOct8ne); window.addEventListener('keydown', insertOct8ne); window.addEventListener('touchstart', insertOct8ne); }else{ insertOct8ne(); } function insertOct8ne() { if (!window.oct8neScriptInserted) { var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(oct8ne, s); window.oct8neScriptInserted = true; window.removeEventListener('mousemove', insertOct8ne); window.removeEventListener('scroll', insertOct8ne); window.removeEventListener('click', insertOct8ne); window.removeEventListener('keydown', insertOct8ne); window.removeEventListener('touchstart', insertOct8ne); } } </script> <script type="text/x-magento-init"> { "*": { "Magento_Ui/js/core/app": { "components": { "section": { "component": "Wage_CmsBlock/js/view/cms-block-permissions" } } } } } </script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-7d697a039face769826","applicationID":"1086141007","transactionName":"NQMBYkVQC0ZWARZcXgxJIlVDWApbGAEPRh4SBwRTGEcMUEA=","queueTime":0,"applicationTime":582,"atts":"GUQCFA1KGEg=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10