!(function (e, t, n) { 'undefined' != typeof module && module.exports ? (module.exports = n()) : 'function' == typeof define && define.amd ? define(n) : (t[e] = n()) })('reqwest', this, function () { function succeed(e) { var t = protocolRe.exec(e.url) return ( (t = (t && t[1]) || context.location.protocol), httpsRe.test(t) ? twoHundo.test(e.request.status) : !!e.request.response ) } function handleReadyState(e, t, n) { return function () { return e._aborted ? n(e.request) : e._timedOut ? n(e.request, 'Request is aborted: timeout') : void ( e.request && 4 == e.request[readyState] && ((e.request.onreadystatechange = noop), succeed(e) ? t(e.request) : n(e.request)) ) } } function setHeaders(e, t) { var n, r = t.headers || {} r.Accept = r.Accept || defaultHeaders.accept[t.type] || defaultHeaders.accept['*'] var o = 'undefined' != typeof FormData && t.data instanceof FormData for (n in (!t.crossOrigin && !r[requestedWith] && (r[requestedWith] = defaultHeaders.requestedWith), !r[contentType] && !o && (r[contentType] = t.contentType || defaultHeaders.contentType), r)) r.hasOwnProperty(n) && 'setRequestHeader' in e && e.setRequestHeader(n, r[n]) } function setCredentials(e, t) { void 0 !== t.withCredentials && void 0 !== e.withCredentials && (e.withCredentials = !!t.withCredentials) } function generalCallback(e) { lastValue = e } function urlappend(e, t) { return e + (/\?/.test(e) ? '&' : '?') + t } function handleJsonp(e, t, n, r) { var o = uniqid++, i = e.jsonpCallback || 'callback', a = e.jsonpCallbackName || reqwest.getcallbackPrefix(o), s = new RegExp('((^|\\?|&)' + i + ')=([^&]+)'), c = r.match(s), l = doc.createElement('script'), p = 0, d = -1 !== navigator.userAgent.indexOf('MSIE 10.0') return ( c ? '?' === c[3] ? (r = r.replace(s, '$1=' + a)) : (a = c[3]) : (r = urlappend(r, i + '=' + a)), (context[a] = generalCallback), (l.type = 'text/javascript'), (l.src = r), (l.async = !0), void 0 !== l.onreadystatechange && !d && (l.htmlFor = l.id = '_reqwest_' + o), (l.onload = l.onreadystatechange = function () { if ( (l[readyState] && 'complete' !== l[readyState] && 'loaded' !== l[readyState]) || p ) return !1 ;(l.onload = l.onreadystatechange = null), l.onclick && l.onclick(), t(lastValue), (lastValue = void 0), head.removeChild(l), (p = 1) }), head.appendChild(l), { abort: function () { ;(l.onload = l.onreadystatechange = null), n({}, 'Request is aborted: timeout', {}), (lastValue = void 0), head.removeChild(l), (p = 1) }, } ) } function getRequest(e, t) { var n, r = this.o, o = (r.method || 'GET').toUpperCase(), i = 'string' == typeof r ? r : r.url, a = !1 !== r.processData && r.data && 'string' != typeof r.data ? reqwest.toQueryString(r.data) : r.data || null, s = !1 return ( ('jsonp' == r.type || 'GET' == o) && a && ((i = urlappend(i, a)), (a = null)), 'jsonp' == r.type ? handleJsonp(r, e, t, i) : ((n = (r.xhr && r.xhr(r)) || xhr(r)), n.open(o, i, !1 !== r.async), setHeaders(n, r), setCredentials(n, r), context[xDomainRequest] && n instanceof context[xDomainRequest] ? ((n.onload = e), (n.onerror = t), (n.onprogress = function () {}), (s = !0)) : (n.onreadystatechange = handleReadyState(this, e, t)), r.before && r.before(n), s ? setTimeout(function () { n.send(a) }, 200) : n.send(a), n) ) } function Reqwest(e, t) { ;(this.o = e), (this.fn = t), init.apply(this, arguments) } function setType(e) { if (null !== e) return e.match('json') ? 'json' : e.match('javascript') ? 'js' : e.match('text') ? 'html' : e.match('xml') ? 'xml' : void 0 } function init(o, fn) { function complete(e) { for ( o.timeout && clearTimeout(self.timeout), self.timeout = null; self._completeHandlers.length > 0; ) self._completeHandlers.shift()(e) } function success(resp) { var type = o.type || (resp && setType(resp.getResponseHeader('Content-Type'))) resp = 'jsonp' !== type ? self.request : resp var filteredResponse = globalSetupOptions.dataFilter( resp.responseText, type ), r = filteredResponse try { resp.responseText = r } catch (e) {} if (r) switch (type) { case 'json': try { resp = context.JSON ? context.JSON.parse(r) : eval('(' + r + ')') } catch (e) { return error(resp, 'Could not parse JSON in response', e) } break case 'js': resp = eval(r) break case 'html': resp = r break case 'xml': resp = resp.responseXML && resp.responseXML.parseError && resp.responseXML.parseError.errorCode && resp.responseXML.parseError.reason ? null : resp.responseXML } for ( self._responseArgs.resp = resp, self._fulfilled = !0, fn(resp), self._successHandler(resp); self._fulfillmentHandlers.length > 0; ) resp = self._fulfillmentHandlers.shift()(resp) complete(resp) } function timedOut() { ;(self._timedOut = !0), self.request.abort() } function error(e, t, n) { for ( e = self.request, self._responseArgs.resp = e, self._responseArgs.msg = t, self._responseArgs.t = n, self._erred = !0; self._errorHandlers.length > 0; ) self._errorHandlers.shift()(e, t, n) complete(e) } ;(this.url = 'string' == typeof o ? o : o.url), (this.timeout = null), (this._fulfilled = !1), (this._successHandler = function () {}), (this._fulfillmentHandlers = []), (this._errorHandlers = []), (this._completeHandlers = []), (this._erred = !1), (this._responseArgs = {}) var self = this ;(fn = fn || function () {}), o.timeout && (this.timeout = setTimeout(function () { timedOut() }, o.timeout)), o.success && (this._successHandler = function () { o.success.apply(o, arguments) }), o.error && this._errorHandlers.push(function () { o.error.apply(o, arguments) }), o.complete && this._completeHandlers.push(function () { o.complete.apply(o, arguments) }), (this.request = getRequest.call(this, success, error)) } function reqwest(e, t) { return new Reqwest(e, t) } function normalize(e) { return e ? e.replace(/\r?\n/g, '\r\n') : '' } function serial(e, t) { var n, r, o, i, a = e.name, s = e.tagName.toLowerCase(), c = function (e) { e && !e.disabled && t( a, normalize( e.attributes.value && e.attributes.value.specified ? e.value : e.text ) ) } if (!e.disabled && a) switch (s) { case 'input': ;/reset|button|image|file/i.test(e.type) || ((n = /checkbox/i.test(e.type)), (r = /radio/i.test(e.type)), (o = e.value), ((!n && !r) || e.checked) && t(a, normalize(n && '' === o ? 'on' : o))) break case 'textarea': t(a, normalize(e.value)) break case 'select': if ('select-one' === e.type.toLowerCase()) c(e.selectedIndex >= 0 ? e.options[e.selectedIndex] : null) else for (i = 0; e.length && i < e.length; i++) e.options[i].selected && c(e.options[i]) } } function eachFormElement() { var e, t, n = this, r = function (e, t) { var r, o, i for (r = 0; r < t.length; r++) for (i = e[byTag](t[r]), o = 0; o < i.length; o++) serial(i[o], n) } for (t = 0; t < arguments.length; t++) (e = arguments[t]), /input|select|textarea/i.test(e.tagName) && serial(e, n), r(e, ['input', 'select', 'textarea']) } function serializeQueryString() { return reqwest.toQueryString(reqwest.serializeArray.apply(null, arguments)) } function serializeHash() { var e = {} return ( eachFormElement.apply(function (t, n) { t in e ? (e[t] && !isArray(e[t]) && (e[t] = [e[t]]), e[t].push(n)) : (e[t] = n) }, arguments), e ) } function buildParams(e, t, n, r) { var o, i, a, s = /\[\]$/ if (isArray(t)) for (i = 0; t && i < t.length; i++) (a = t[i]), n || s.test(e) ? r(e, a) : buildParams( e + '[' + ('object' == typeof a ? i : '') + ']', a, n, r ) else if (t && '[object Object]' === t.toString()) for (o in t) buildParams(e + '[' + o + ']', t[o], n, r) else r(e, t) } var context = this, XHR2 if ('window' in context) var doc = document, byTag = 'getElementsByTagName', head = doc[byTag]('head')[0] else try { XHR2 = require('xhr2') } catch (e) { throw new Error( 'Peer dependency `xhr2` required! Please npm install xhr2' ) } var httpsRe = /^http/, protocolRe = /(^\w+):\/\//, twoHundo = /^(20\d|1223)$/, readyState = 'readyState', contentType = 'Content-Type', requestedWith = 'X-Requested-With', uniqid = 0, callbackPrefix = 'reqwest_' + +new Date(), lastValue, xmlHttpRequest = 'XMLHttpRequest', xDomainRequest = 'XDomainRequest', noop = function () {}, isArray = 'function' == typeof Array.isArray ? Array.isArray : function (e) { return e instanceof Array }, defaultHeaders = { contentType: 'application/x-www-form-urlencoded', requestedWith: xmlHttpRequest, accept: { '*': 'text/javascript, text/html, application/xml, text/xml, */*', xml: 'application/xml, text/xml', html: 'text/html', text: 'text/plain', json: 'application/json, text/javascript', js: 'application/javascript, text/javascript', }, }, xhr = function (e) { if (!0 === e.crossOrigin) { var t = context[xmlHttpRequest] ? new XMLHttpRequest() : null if (t && 'withCredentials' in t) return t if (context[xDomainRequest]) return new XDomainRequest() throw new Error('Browser does not support cross-origin requests') } return context[xmlHttpRequest] ? new XMLHttpRequest() : XHR2 ? new XHR2() : new ActiveXObject('Microsoft.XMLHTTP') }, globalSetupOptions = { dataFilter: function (e) { return e }, } return ( (Reqwest.prototype = { abort: function () { ;(this._aborted = !0), this.request.abort() }, retry: function () { init.call(this, this.o, this.fn) }, then: function (e, t) { return ( (e = e || function () {}), (t = t || function () {}), this._fulfilled ? (this._responseArgs.resp = e(this._responseArgs.resp)) : this._erred ? t( this._responseArgs.resp, this._responseArgs.msg, this._responseArgs.t ) : (this._fulfillmentHandlers.push(e), this._errorHandlers.push(t)), this ) }, always: function (e) { return ( this._fulfilled || this._erred ? e(this._responseArgs.resp) : this._completeHandlers.push(e), this ) }, fail: function (e) { return ( this._erred ? e( this._responseArgs.resp, this._responseArgs.msg, this._responseArgs.t ) : this._errorHandlers.push(e), this ) }, catch: function (e) { return this.fail(e) }, }), (reqwest.serializeArray = function () { var e = [] return ( eachFormElement.apply(function (t, n) { e.push({ name: t, value: n }) }, arguments), e ) }), (reqwest.serialize = function () { if (0 === arguments.length) return '' var e, t, n = Array.prototype.slice.call(arguments, 0) return ( (e = n.pop()), e && e.nodeType && n.push(e) && (e = null), e && (e = e.type), (t = 'map' == e ? serializeHash : 'array' == e ? reqwest.serializeArray : serializeQueryString), t.apply(null, n) ) }), (reqwest.toQueryString = function (e, t) { var n, r, o = t || !1, i = [], a = encodeURIComponent, s = function (e, t) { ;(t = 'function' == typeof t ? t() : null == t ? '' : t), (i[i.length] = a(e) + '=' + a(t)) } if (isArray(e)) for (r = 0; e && r < e.length; r++) s(e[r].name, e[r].value) else for (n in e) e.hasOwnProperty(n) && buildParams(n, e[n], o, s) return i.join('&').replace(/%20/g, '+') }), (reqwest.getcallbackPrefix = function () { return callbackPrefix }), (reqwest.compat = function (e, t) { return ( e && (e.type && (e.method = e.type) && delete e.type, e.dataType && (e.type = e.dataType), e.jsonpCallback && (e.jsonpCallbackName = e.jsonpCallback) && delete e.jsonpCallback, e.jsonp && (e.jsonpCallback = e.jsonp)), new Reqwest(e, t) ) }), (reqwest.ajaxSetup = function (e) { for (var t in ((e = e || {}), e)) globalSetupOptions[t] = e[t] }), reqwest ) }), (function (e, t, n) { 'undefined' != typeof module && module.exports ? (module.exports = n()) : 'function' == typeof define && define.amd ? define(n) : (t[e] = n()) })('GDPR', this, function () { return function (e) { function t(e) { var t = '', n = new Date() if ((n.setTime(n.getTime() + 31536e7), !e.data && 1 !== e.status)) return ( (document.cookie = t.toLowerCase() + 'access=-1;domain=' + l.cookieDomain + ';expires=' + n.toUTCString() + ';path=/'), !1 ) 1 === e.status ? (t = 'GDPR') : 'EU' === e.data.continent.code ? (t = 'GDPR') : 'US' == e.data.country.iso_code && // 'CA' === e.data?.subdivisions[0]?.iso_code e.data.subdivisions[0] && 'CA' === e.data.subdivisions[0].iso_code ? (t = 'CCPA') : 1 == e.status && (t = 'GDPR') if (window.location.search === '?all=1' && !t) { t = 'GDPR' } var r = l.getCookieConsentData(l.acceptedRegex, t) if (((r = r && r.length ? parseInt(r[1]) : 0), !t)) return ( (document.cookie = t.toLowerCase() + 'access=-1;domain=' + l.cookieDomain + ';expires=' + n.toUTCString() + ';path=/'), !1 ) var o = document.createElement('div') o.classList.add('gdpr'), (o.innerHTML = a(l, t)) var i = o.querySelector('.gdpr__modal'), s = o.querySelector('.gdpr__consent'), p = o.querySelector('.gdpr__btn') var switchVal = t.gocashback_gdpraccess_v2 || 1; var checkBox = o.querySelector("#gdpr-analytical-cookie"); checkBox.addEventListener("change", function(e) { switchVal = e.target.checked ? 1 : 0 }) ;(l.modal = i), c(i, l.modalStyle), c(p, l.modalStyle), c(s, l.btnStyle), 2 == r && (o.querySelector('input[type=checkbox]').checked = !1), r > 0 && o.querySelector('#gdpr-consent').classList.add('none'), p.addEventListener('click', function () { document.getElementById('gdpr-consent').classList.toggle('none') }), s.addEventListener('click', function (e) { var i = document.getElementById('gdpr-consent') i.parentNode.removeChild(i) l.thirdConsent(t), l.thirdScript(t) var n = Array.prototype.filter.call( document.getElementsByTagName('script'), function (e) { return e.src.indexOf('//intljs.rmtag.com') >= 0 } ), r = function () { l.acceptCallback.call(e, l, t, switchVal) } n[0] ? (n[0].onload = r) : setTimeout(r, 1e3) }) var d = o.querySelector('.gdpr__preference-wrap') o.querySelector('.gdpr__set').addEventListener('click', function (e) { 'block' == d.style.display ? (d.style.display = 'none') : (d.style.display = 'block') }), document.body.appendChild(o), (l.initalizing = !1) } function n(e, t) { var n = document.cookie.match(e) return n && n.length ? ((n = n.map(function (e) { return e.split('access=') })), t ? ((t = t.toLowerCase()), n.filter(function (e) { return e[0] === t })[0]) : (n.sort(function (e, t) { return parseInt(t[1] || 0) - parseInt(e[1] || 0) }), n[0] || null)) : null } function r() { var e = this.getCookieConsentData(this.acceptedRegex, 'GDPR'), t = e && e.length ? parseInt(e[1]) : 0 ;(window.__rmcp = [1, 2, 3, 4, 5]), 2 == t && (window.__rmcp = []) var n = this.getCookieConsentData(this.acceptedRegex, 'CCPA'), r = n && n.length ? parseInt(n[1]) : 0, o = new Date() o.setTime(o.getTime() + 31536e7), (window.__rmuspc = 'YY'), (document.cookie = 'cnst=c1YYN;domain=' + this.cookieDomain + ';expires=' + o.toUTCString() + ';path=/'), 2 == r && ((window.__rmuspc = 'YN'), (document.cookie = 'cnst=c1YNN;domain=' + this.cookieDomain + ';expires=' + o.toUTCString() + ';path=/')) } function o(e) { return 'CCPA' === e ? 'Privacy Notice' : 'Privacy Policy' } function i(e) { return 'CCPA' === e ? 'We use our own 3rd party cookies on site to improve your experience for analytics, personalized advertiser, and other commercial purposes. For more information please see our {$policyHTML}. ' : 'We use cookies to collect and analyze information on site performance and usage, and to enhance and customize content and advertisements. According to GDPR, allowed us to view order references of the user. By clicking accept, you accept our {$policyHTML} and the use of cookie. ' } function a(e, t) { var n = ( 'string' == typeof e.consentText ? e.consentText : e.consentText(t) ).replace( '{$policyHTML}', e.policyHTML .replace('{$policyLink}', e.policyLink) .replace( '{$policyText}', 'string' == typeof e.policyText ? e.policyText : e.policyText(t) ) ) return ( '
Essential Cookies are necessary for this site to function properly, authenticating logins, for instance. You can only disable essential cookies via browser settings.