@rebilly/instruments 9.80.2 → 9.80.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -17,7 +17,7 @@ var RebillyInstruments=function(){"use strict";function e(e,t){const n=Object.cr
17
17
  *
18
18
  * Copyright (c) 2014-2017, Jon Schlinkert.
19
19
  * Released under the MIT License.
20
- */function Gd(e){return!0===Ud(e)&&"[object Object]"===Object.prototype.toString.call(e)}const Kd=function(e,t){switch(Wd(e)){case"array":return e.slice();case"object":return Object.assign({},e);case"date":return new e.constructor(Number(e));case"map":return new Map(e);case"set":return new Set(e);case"buffer":return function(e){const t=e.length,n=Buffer.allocUnsafe?Buffer.allocUnsafe(t):Buffer.from(t);return e.copy(n),n}(e);case"symbol":return function(e){return Vd?Object(Vd.call(e)):{}}(e);case"arraybuffer":return function(e){const t=new e.constructor(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}(e);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return function(e){return new e.constructor(e.buffer,e.byteOffset,e.length)}(e);case"regexp":return function(e){const t=void 0!==e.flags?e.flags:/\w+$/.exec(e)||void 0,n=new e.constructor(e.source,t);return n.lastIndex=e.lastIndex,n}(e);case"error":return Object.create(e);default:return e}},Zd=Dd,Xd=function(e){var t,n;return!(!1===Gd(e)||(t=e.constructor,"function"!=typeof t)||(n=t.prototype,!1===Gd(n))||!1===n.hasOwnProperty("isPrototypeOf"))};function Jd(e,t){switch(Zd(e)){case"object":return function(e,t){if("function"==typeof t)return t(e);if(t||Xd(e)){const n=new e.constructor;for(let r in e)n[r]=Jd(e[r],t);return n}return e}(e,t);case"array":return function(e,t){const n=new e.constructor(e.length);for(let r=0;r<e.length;r++)n[r]=Jd(e[r],t);return n}(e,t);default:return Kd(e)}}const Yd=Bd(Jd);let Qd=class{constructor({id:e=null,created:t=null}={}){this.id=e||((e=21)=>{let t="",n=e;for(;n--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t})(),this.created=t||(new Date).getTime(),this.cancelSource=Td.CancelToken.source(),this.cancel=this.cancelSource.cancel,this.cancelToken=this.cancelSource.token,Rd(this,{exclude:["cancelSource","cancelToken","cancel"]})}};class ep{constructor(){if(ep.instance)return ep.instance;this.requests={},ep.instance=this}getAll(){return Object.values(this.requests)}getById(e){return this.requests[e]}deleteById(e){this.requests[e]&&delete this.requests[e]}save(){const e=new Qd;return this.requests[e.id]=e,{id:e.id,cancelToken:e.cancelToken}}}const tp=new ep;class np{}Cd(np,"cancelById",((e,t)=>{try{tp.getById(e).cancel(t),tp.deleteById(e)}catch{}})),Cd(np,"cancelAll",(async e=>{for(const t of tp.getAll())await t.cancel(e),tp.deleteById(t.id)}));const rp={cancelAll:async(...e)=>await np.cancelAll(...e)},ap={request:"request",response:"response"},op=e=>{if(!Object.values(ap).includes(e))throw new Error(`There is no such interceptor type as "${e}"`);return!0};function ip({options:e}){const t=Td.create({baseURL:n(),timeout:e.requestTimeout,headers:r()});function n(){let t=e.isSandbox?e.apiEndpoints.sandbox:e.apiEndpoints.live;return e.apiVersion&&(t=`${t}/${e.apiVersion}`),e.organizationId&&(t=`${t}/organizations/${e.organizationId}`),`${t}`}function r(){const t={"REB-API-CONSUMER":`${["Rebilly",e.appName,"js-sdk"].filter((e=>e)).join("/")}@e3d47b9`};return e.apiKey&&(t["REB-APIKEY"]=e.apiKey),t}function a(){return Yd(t.defaults.headers)}function o(e,{thenDelegate:n,catchDelegate:r=()=>{}}){return op(e)&&t.interceptors[ap[e]].use(n,r)}function i(e,n){return op(e)&&t.interceptors[ap[e]].eject(n)}function s({request:e,isCollection:t,config:n}){const r=u(n),{id:a,cancelToken:o}=tp.save();r.cancelToken=o;const i=async function(){try{return function({response:e,isCollection:t,config:n}){return t?new Od(e,n):new jd(e,n)}({response:await e(r),isCollection:t,config:r})}catch(n){return l({error:n,config:r})}finally{tp.deleteById(a)}}();return i.cancel=e=>np.cancelById(a,e),i}function l({error:e}){if(Td.isCancel(e))throw new Hd.RebillyCanceledError(e);if(e.response)switch(Number(e.response.status)){case 401:throw new Hd.RebillyForbiddenError(e);case 404:throw new Hd.RebillyNotFoundError(e);case 405:throw new Hd.RebillyMethodNotAllowedError(e);case 409:throw new Hd.RebillyConflictError(e);case 422:throw new Hd.RebillyValidationError(e);default:throw new Hd.RebillyRequestError(e)}throw"ECONNABORTED"===e.code?new Hd.RebillyTimeoutError(e):new Hd.RebillyRequestError(e)}function c(e){return void 0!==e.params&&(e.params=Object.keys(e.params).filter((t=>null!==e.params[t]&&""!==e.params[t])).reduce(((t,n)=>(t[n]=e.params[n],t)),{})),e}function u(e={}){return{...c(e)}}function d(e,n={}){return s({request:n=>t.get(e,n),config:{params:n}})}function p(e,n,r={}){let o={};return!1===r.authenticate&&(o={headers:a()},delete o.headers.common["REB-APIKEY"],delete o.headers.common.Authorization),r.params&&(o.params={...r.params}),s({request:r=>t.post(e,n,r),config:o})}function m(e,n,r={}){return s({request:r=>t.put(e,n,r),config:{params:r}})}return{getInstance:function(){return t},addRequestInterceptor:function({thenDelegate:e,catchDelegate:t=()=>{}}){return o(ap.request,{thenDelegate:e,catchDelegate:t})},removeRequestInterceptor:function(e){i(ap.request,e)},addResponseInterceptor:function({thenDelegate:e,catchDelegate:t=()=>{}}){return o(ap.response,{thenDelegate:e,catchDelegate:t})},removeResponseInterceptor:function(e){i(ap.response,e)},setTimeout:function(n){e.requestTimeout=Number(n),t.defaults.timeout=e.requestTimeout},setProxyAgent:function({host:e,port:n,auth:r}){t.defaults.proxy={host:e,port:n,auth:r}},setSessionToken:function(n=e.jwt){const r=a();e.apiKey=null,e.jwt=n,delete r.common["REB-APIKEY"],r.common.Authorization=`Bearer ${n}`,t.defaults.headers=r},setPublishableKey:function(n=e.publishableKey){const r=a();e.publishableKey=n,r.common.Authorization=`${n}`,t.defaults.headers=r},setEndpoints:function({live:r=null,sandbox:a=null}){r&&(e.apiEndpoints.live=r),a&&(e.apiEndpoints.sandbox=a),t.defaults.baseURL=n()},get:d,getAll:function(e,n){return s({request:n=>t.get(e,n),config:{params:n},isCollection:!0})},post:p,put:m,patch:function(e,n){return s({request:r=>t.patch(e,n,r),config:{}})},delete:function(e){return s({request:n=>t.delete(e,n),config:{}})},deleteAll:function(e,n){return s({request:n=>t.delete(e,n),config:{data:{...n}}})},create:async function(e,t,n,r={}){if(""===t)return p(e,n,{params:r});try{if(200===(await d(e)).response.status)throw new Hd.RebillyConflictError({message:"A resource already exists with this ID. Please use a different ID."})}catch(a){if("RebillyNotFoundError"===a.name)return m(e,n,r);throw a}},download:async function(e,n){const r=u(n);try{const n=await t.get(e,r);return new Fd(n,r)}catch(a){return l({error:a,config:r})}}}}const sp={Accept:"application/pdf"};let lp=class{constructor({apiHandler:e}){this.account=function({apiHandler:e}){return{forgotPassword:({data:t})=>e.post("forgot-password",t,{authenticate:!1})}}({apiHandler:e}),this.allowlists=function({apiHandler:e}){return{getAllowlistCollection({filter:t=null,sort:n=null,limit:r=null,offset:a=null}={}){const o={filter:t,sort:n,limit:r,offset:a};return e.getAll("allowlists",o)},storeAllowlist:({data:t})=>e.post("allowlists",t),getAllowlist:({id:t})=>e.get(`allowlists/${t}`),delete:({id:t})=>e.delete(`allowlists/${t}`)}}({apiHandler:e}),this.amlChecks=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("aml-checks",i)},get:({id:t})=>e.get(`aml-checks/${t}`),startReview:({id:t})=>e.post(`aml-checks/${t}/start-review`),stopReview:({id:t})=>e.post(`aml-checks/${t}/stop-review`),review:({id:t,data:n})=>e.post(`aml-checks/${t}/review`,n)}}({apiHandler:e}),this.amlSettings=function({apiHandler:e}){return{getAmlSettings:()=>e.get("aml-settings"),putAmlSettings:({data:t})=>e.put("aml-settings",t)}}({apiHandler:e}),this.apiKeys=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null}={}){const a={limit:t,offset:n,sort:r};return e.getAll("api-keys",a)},create:({id:t="",data:n})=>e.create(`api-keys/${t}`,t,n),get:({id:t})=>e.get(`api-keys/${t}`),update:({id:t,data:n})=>e.put(`api-keys/${t}`,n),delete:({id:t})=>e.delete(`api-keys/${t}`)}}({apiHandler:e}),this.applicationInstances=function({apiHandler:e}){return{get:({applicationId:t})=>e.get(`application-instances/${t}`),upsert:({applicationId:t,data:n})=>e.put(`application-instances/${t}`,n),delete:({applicationId:t})=>e.delete(`application-instances/${t}`),getConfiguration:({applicationId:t})=>e.get(`application-instances/${t}/configuration`),upsertConfiguration:({applicationId:t,data:n})=>e.put(`application-instances/${t}/configuration`,n)}}({apiHandler:e}),this.applications=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("applications",l)},create:({data:t})=>e.post("applications",t),get:({id:t})=>e.get(`applications/${t}`),getInstances({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`applications/${t}/instances`,a)},getInstance:({id:t,organizationId:n})=>e.get(`applications/${t}/instances/${n}`)}}({apiHandler:e}),this.balanceTransactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("balance-transactions",o)},get:({id:t})=>e.get(`balance-transactions/${t}`)}}({apiHandler:e}),this.billingPortals=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("billing-portals",i)},create:({id:t="",data:n})=>e.create(`billing-portals/${t}`,t,n),get:({id:t})=>e.get(`billing-portals/${t}`),update:({id:t,data:n})=>e.put(`billing-portals/${t}`,n),delete:({id:t})=>e.delete(`billing-portals/${t}`)}}({apiHandler:e}),this.blocklists=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("blocklists",i)},create:({id:t="",data:n})=>e.create(`blocklists/${t}`,t,n),get:({id:t})=>e.get(`blocklists/${t}`),delete:({id:t})=>e.delete(`blocklists/${t}`)}}({apiHandler:e}),this.broadcastMessages=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null}={}){const o={limit:t,offset:n,sort:r,filter:a};return e.getAll("broadcast-messages",o)},create:({data:t})=>e.post("broadcast-messages",t),get:({id:t})=>e.get(`broadcast-messages/${t}`),delete:({id:t})=>e.delete(`broadcast-messages/${t}`),update:({id:t,data:n})=>e.patch(`broadcast-messages/${t}`,n)}}({apiHandler:e}),this.checkoutForms=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("checkout-forms",i)},create:({id:t="",data:n})=>e.create(`checkout-forms/${t}`,t,n),get:({id:t})=>e.get(`checkout-forms/${t}`),update:({id:t,data:n})=>e.put(`checkout-forms/${t}`,n),delete:({id:t})=>e.delete(`checkout-forms/${t}`)}}({apiHandler:e}),this.coupons=function({apiHandler:e}){return{getAllRedemptions({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("coupons-redemptions",i)},redeem:({data:t})=>e.post("coupons-redemptions",t),getRedemption:({id:t})=>e.get(`coupons-redemptions/${t}`),cancelRedemption:({id:t})=>e.post(`coupons-redemptions/${t}/cancel`),getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("coupons",i)},create:({id:t="",data:n})=>e.create(`coupons/${t}`,t,n),get:({id:t})=>e.get(`coupons/${t}`),update:({id:t,data:n})=>e.put(`coupons/${t}`,n),setExpiration:({id:t,data:n})=>e.post(`coupons/${t}/expiration`,n)}}({apiHandler:e}),this.creditMemos=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("credit-memos",i)},create:({id:t="",data:n})=>e.create(`credit-memos/${t}`,t,n),get:({id:t})=>e.get(`credit-memos/${t}`),update:({id:t,data:n})=>e.put(`credit-memos/${t}`,n),patch:({id:t,data:n})=>e.patch(`credit-memos/${t}`,n),void:({id:t})=>e.post(`credit-memos/${t}/void`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`credit-memos/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`credit-memos/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`credit-memos/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`credit-memos/${t}/timeline/${n}`)}}({apiHandler:e}),this.customDomains=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("custom-domains",i)},create:({data:t})=>e.post("custom-domains",t),get:({domain:t})=>e.get(`custom-domains/${t}`),delete:({domain:t})=>e.delete(`custom-domains/${t}`)}}({apiHandler:e}),this.customFields=function({apiHandler:e}){return{getAll({resource:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`custom-fields/${t}`,a)},get:({resource:t,name:n})=>e.get(`custom-fields/${t}/${n}`),create:({resource:t,name:n,data:r})=>e.put(`custom-fields/${t}/${n}`,r),update:({resource:t,name:n,data:r})=>e.put(`custom-fields/${t}/${n}`,r)}}({apiHandler:e}),this.customerAuthentication=function({apiHandler:e}){return{getAuthOptions:()=>e.get("authentication-options"),updateAuthOptions:({data:t})=>e.put("authentication-options",t),getAllAuthTokens({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("authentication-tokens",r)},login:({data:t})=>e.post("authentication-tokens",t),verify:({token:t})=>e.get(`authentication-tokens/${t}`),logout:({token:t})=>e.delete(`authentication-tokens/${t}`),exchangeToken:({token:t,data:n})=>e.post(`authentication-tokens/${t}/exchange`,n),getAllCredentials({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("credentials",r)},createCredential:({id:t="",data:n})=>e.create(`credentials/${t}`,t,n),getCredential:({id:t})=>e.get(`credentials/${t}`),updateCredential:({id:t,data:n})=>e.put(`credentials/${t}`,n),deleteCredential:({id:t})=>e.delete(`credentials/${t}`),getAllResetPasswordTokens({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("password-tokens",r)},createResetPasswordToken:({data:t})=>e.post("password-tokens",t),getResetPasswordToken:({id:t})=>e.get(`password-tokens/${t}`),deleteResetPasswordToken:({id:t})=>e.delete(`password-tokens/${t}`)}}({apiHandler:e}),this.customers=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("customers",l)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`customers/${t}`,t,n,a)},get({id:t,expand:n=null,fields:r=null}){const a={expand:n,fields:r};return e.get(`customers/${t}`,a)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`customers/${t}`,n,a)},merge:({id:t,targetCustomerId:n})=>e.delete(`customers/${t}?targetCustomerId=${n}`),getLeadSource:({id:t})=>e.get(`customers/${t}/lead-source`),createLeadSource:({id:t,data:n})=>e.put(`customers/${t}/lead-source`,n),updateLeadSource:({id:t,data:n})=>e.put(`customers/${t}/lead-source`,n),deleteLeadSource:({id:t})=>e.delete(`customers/${t}/lead-source`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`customers/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`customers/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`customers/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`customers/${t}/timeline/${n}`),getCustomerEddScore:({id:t})=>e.get(`customers/${t}/edd-score`),patchCustomerEddScore:({id:t,data:n})=>e.patch(`customers/${t}/edd-score`,n),getEddTimelineCollection({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`customers/${t}/edd-timeline`,s)},createEddTimelineComment:({id:t,data:n})=>e.post(`customers/${t}/edd-timeline`,n),getEddTimelineMessage:({id:t,messageId:n})=>e.get(`customers/${t}/edd-timeline/${n}`),deleteEddTimelineMessage:({id:t,messageId:n})=>e.delete(`customers/${t}/edd-timeline/${n}`),getAllEddSearchResults({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`customers/${t}/edd-search-results`,a)},getEddSearchResult:({id:t,searchResultId:n})=>e.get(`customers/${t}/edd-search-results/${n}`)}}({apiHandler:e}),this.depositCustomPropertySets=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-custom-property-sets",o)},create:({id:t="",data:n})=>e.create(`deposit-custom-property-sets/${t}`,t,n),get:({id:t})=>e.get(`deposit-custom-property-sets/${t}`),update:({id:t,data:n})=>e.put(`deposit-custom-property-sets/${t}`,n),delete:({id:t})=>e.delete(`deposit-custom-property-sets/${t}`)}}({apiHandler:e}),this.depositRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-requests",o)},create:({data:t})=>e.post("deposit-requests",t),get({id:t,expand:n=null}){const r={expand:n};return e.get(`deposit-requests/${t}`,r)}}}({apiHandler:e}),this.depositStrategies=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-strategies",o)},create:({id:t="",data:n})=>e.create(`deposit-strategies/${t}`,t,n),get:({id:t})=>e.get(`deposit-strategies/${t}`),update:({id:t,data:n})=>e.put(`deposit-strategies/${t}`,n),delete:({id:t})=>e.delete(`deposit-strategies/${t}`)}}({apiHandler:e}),this.digitalWallets=function({apiHandler:e}){return{validate:({data:t})=>e.post("digital-wallets/validation",t),create:({data:t})=>e.post("digital-wallets/onboarding/apple-pay",t)}}({apiHandler:e}),this.disputes=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("disputes",s)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`disputes/${t}`,t,n,a)},get:({id:t})=>e.get(`disputes/${t}`),update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`disputes/${t}`,n,a)}}}({apiHandler:e}),this.emailDeliverySettings=function({apiHandler:e}){return{verify:({token:t})=>e.put(`email-delivery-setting-verifications/${t}`),getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("email-delivery-settings",i)},create:({data:t})=>e.post("email-delivery-settings",t),get:({id:t})=>e.get(`email-delivery-settings/${t}`),delete:({id:t})=>e.delete(`email-delivery-settings/${t}`),update:({id:t,data:n})=>e.patch(`email-delivery-settings/${t}`,n),resendVerification:({id:t})=>e.post(`email-delivery-settings/${t}/resend-email-verification`)}}({apiHandler:e}),this.emailMessages=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,q:r=null,sort:a=null,filter:o=null}={}){const i={limit:t,offset:n,q:r,sort:a,filter:o};return e.getAll("email-messages",i)},create:({data:t})=>e.post("email-messages",t),get:({id:t})=>e.get(`email-messages/${t}`),delete:({id:t})=>e.delete(`email-messages/${t}`),send:({id:t,data:n={status:"outbox"}})=>e.patch(`email-messages/${t}`,n)}}({apiHandler:e}),this.emailNotifications=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("email-notifications",r)}}}({apiHandler:e}),this.events=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null}={}){const o={limit:t,offset:n,filter:r,q:a};return e.getAll("events",o)},get:({eventType:t})=>e.get(`events/${t}`),getRules:({eventType:t})=>e.get(`events/${t}/rules`),createRules:({eventType:t,data:n})=>e.put(`events/${t}/rules`,n),updateRules:({eventType:t,data:n})=>e.put(`events/${t}/rules`,n),getAllTimelineMessages({eventType:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`events/${t}/timeline`,s)},createTimelineComment:({eventType:t,data:n})=>e.post(`events/${t}/timeline`,n),getTimelineMessage:({eventType:t,messageId:n})=>e.get(`events/${t}/timeline/${n}`),deleteTimelineMessage:({eventType:t,messageId:n})=>e.delete(`events/${t}/timeline/${n}`),getRulesHistory({eventType:t,limit:n=null,offset:r=null,filter:a=null,q:o=null,sort:i=null,fields:s=null}){const l={limit:n,offset:r,filter:a,q:o,sort:i,fields:s};return e.getAll(`events/${t}/rules/history`,l)},getRulesVersionNumber({eventType:t,version:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/history/${n}`,a)},getRulesVersionDetail({eventType:t,version:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/versions/${n}`,a)},getAllDraftRulesets({eventType:t,limit:n=null,offset:r=null,filter:a=null,q:o=null,sort:i=null,fields:s=null}){const l={limit:n,offset:r,filter:a,q:o,sort:i,fields:s};return e.getAll(`events/${t}/rules/drafts`,l)},createDraftRuleset:({eventType:t,data:n})=>e.post(`events/${t}/rules/drafts`,n),getDraftRuleset({eventType:t,id:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/drafts/${n}`,a)},updateDraftRuleset:({eventType:t,id:n,data:r})=>e.put(`events/${t}/rules/drafts/${n}`,r),deleteDraftRuleset:({eventType:t,id:n})=>e.delete(`events/${t}/rules/drafts/${n}`)}}({apiHandler:e}),this.externalIdentifiers=function({apiHandler:e}){return{get:({resource:t,resourceId:n,service:r})=>e.get(`${t}/${n}/external-identifiers/${r}`),sync:({resource:t,resourceId:n,service:r})=>e.post(`${t}/${n}/external-identifiers/${r}`),update:({resource:t,resourceId:n,service:r,data:a})=>e.put(`${t}/${n}/external-identifiers/${r}`,a),delete:({resource:t,resourceId:n,service:r})=>e.delete(`${t}/${n}/external-identifiers/${r}`)}}({apiHandler:e}),this.externalServicesSettings=function({apiHandler:e}){return{getExternalServiceSettings:()=>e.get("external-services-settings"),updateExternalServiceSettings:({data:t})=>e.put("external-services-settings",t)}}({apiHandler:e}),this.fees=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("fees",o)},create:({id:t="",data:n})=>e.create(`fees/${t}`,t,n),get:({id:t})=>e.get(`fees/${t}`),upsert:({id:t,data:n})=>e.put(`fees/${t}`,n),delete:({id:t})=>e.delete(`fees/${t}`),patch:({id:t,data:n})=>e.patch(`fees/${t}`,n)}}({apiHandler:e}),this.files=function({apiHandler:e}){return{getAllAttachments({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("attachments",l)},attach({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`attachments/${t}`,t,n,a)},getAttachment:({id:t})=>e.get(`attachments/${t}`),updateAttachment({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`attachments/${t}`,n,a)},detach:({id:t})=>e.delete(`attachments/${t}`),getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,fields:o=null,sort:i=null}={}){const s={limit:t,offset:n,filter:r,q:a,fields:o,sort:i};return e.getAll("files",s)},upload:({fileObject:t})=>e.post("files",t),get:({id:t})=>e.get(`files/${t}`),update:({id:t,data:n})=>e.put(`files/${t}`,n),delete:({id:t})=>e.delete(`files/${t}`),download:({id:t})=>e.download(`files/${t}/download`,{responseType:"arraybuffer"}),detachAndDelete({id:t}){const n={filter:`fileId:${t}`};let r=[];const a=(async()=>{const a=this.getAllAttachments(n);r.push(a);const o=(await a).items.map((e=>this.detach({id:e.fields.id})));r=[...r,o],await Promise.all(o);const i=e.delete(`files/${t}`);return r.push(i),i})();return a.cancel=()=>{r.forEach((e=>e.cancel()))},a},uploadAndUpdate({fileObject:e,data:t={description:"",tags:[""]}}){const n=[],r=(async()=>{const r=this.upload({fileObject:e});n.push(r),await r;const a={name:r.name,extension:r.extension,description:t.description,tags:t.tags,url:""},o=this.update({id:r.fields.id,data:a});return n.push(o),o})();return r.cancel=()=>{n.forEach((e=>e.cancel()))},r}}}({apiHandler:e}),this.gatewayAccounts=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null,fields:i=null}={}){const s={limit:t,offset:n,sort:r,filter:a,q:o,fields:i};return e.getAll("gateway-accounts",s)},create:({id:t="",data:n})=>e.create(`gateway-accounts/${t}`,t,n),get:({id:t})=>e.get(`gateway-accounts/${t}`),upsert:({id:t,data:n})=>e.put(`gateway-accounts/${t}`,n),delete:({id:t})=>e.delete(`gateway-accounts/${t}`),update:({id:t,data:n})=>e.patch(`gateway-accounts/${t}`,n),close:({id:t})=>e.post(`gateway-accounts/${t}/close`),disable:({id:t})=>e.post(`gateway-accounts/${t}/disable`),getAllDowntimeSchedules({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null}){const i={limit:n,offset:r,filter:a,sort:o};return e.getAll(`gateway-accounts/${t}/downtime-schedules`,i)},createDowntimeSchedule:({id:t,data:n})=>e.post(`gateway-accounts/${t}/downtime-schedules`,n),getDowntimeSchedule:({id:t,downtimeId:n})=>e.get(`gateway-accounts/${t}/downtime-schedules/${n}`),updateDowntimeSchedule:({id:t,downtimeId:n,data:r})=>e.put(`gateway-accounts/${t}/downtime-schedules/${n}`,r),deleteDowntimeSchedule:({id:t,downtimeId:n})=>e.delete(`gateway-accounts/${t}/downtime-schedules/${n}`),enable:({id:t})=>e.post(`gateway-accounts/${t}/enable`),getAllVolumeLimits:({id:t})=>e.getAll(`gateway-accounts/${t}/limits`),getVolumeLimit:({id:t,limitId:n})=>e.get(`gateway-accounts/${t}/limits/${n}`),updateVolumeLimit:({id:t,limitId:n,data:r})=>e.put(`gateway-accounts/${t}/limits/${n}`,r),deleteVolumeLimit:({id:t,limitId:n})=>e.delete(`gateway-accounts/${t}/limits/${n}`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`gateway-accounts/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`gateway-accounts/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`gateway-accounts/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`gateway-accounts/${t}/timeline/${n}`),checkCredentials:({id:t})=>e.post(`gateway-accounts/${t}/check-credentials`),getFinancialSettings:({id:t})=>e.get(`gateway-accounts/${t}/financial-settings`),setFinancialSettings:({id:t,data:n})=>e.put(`gateway-accounts/${t}/financial-settings`,n)}}({apiHandler:e}),this.integrations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("integrations",r)},get:({label:t})=>e.get(`integrations/${t}`)}}({apiHandler:e}),this.invoices=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("invoices",s)},create:({id:t="",data:n})=>e.create(`invoices/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`invoices/${t}`,r)},update:({id:t,data:n})=>e.put(`invoices/${t}`,n),getAllInvoiceItems({id:t,limit:n=null,offset:r=null,expand:a=null}){const o={limit:n,offset:r,expand:a};return e.getAll(`invoices/${t}/items`,o)},createInvoiceItem:({id:t,data:n})=>e.post(`invoices/${t}/items`,n),getInvoiceItem:({id:t,itemId:n})=>e.get(`invoices/${t}/items/${n}`),updateInvoiceItem:({id:t,itemId:n,data:r})=>e.put(`invoices/${t}/items/${n}`,r),deleteInvoiceItem:({id:t,itemId:n})=>e.delete(`invoices/${t}/items/${n}`),issue:({id:t,data:n})=>e.post(`invoices/${t}/issue`,n),abandon:({id:t})=>e.post(`invoices/${t}/abandon`),void:({id:t})=>e.post(`invoices/${t}/void`),recalculate:({id:t})=>e.post(`invoices/${t}/recalculate`),reissue:({id:t,data:n})=>e.post(`invoices/${t}/reissue`,n),getAllTransactionAllocations({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`invoices/${t}/transaction-allocations`,a)},applyTransaction:({id:t,data:n})=>e.post(`invoices/${t}/transaction`,n),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`invoices/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`invoices/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`invoices/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`invoices/${t}/timeline/${n}`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`invoices/${t}`,n)}}}({apiHandler:e}),this.journalAccounts=function({apiHandler:e}){return{getAllAccounts({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("journal-accounts",o)},createAccount:({id:t="",data:n})=>e.create(`journal-accounts/${t}`,t,n),getAccount:({id:t})=>e.get(`journal-accounts/${t}`),updateAccount:({id:t,data:n})=>e.put(`journal-accounts/${t}`,n)}}({apiHandler:e}),this.journalEntries=function({apiHandler:e}){return{getAllEntries({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("journal-entries",o)},createEntry:({id:t="",data:n})=>e.create(`journal-entries/${t}`,t,n),getEntry:({id:t})=>e.get(`journal-entries/${t}`),updateEntry:({id:t,data:n})=>e.put(`journal-entries/${t}`,n),getAllRecords({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,expand:i=null}){const s={limit:n,offset:r,filter:a,sort:o,expand:i};return e.getAll(`journal-entries/${t}/records`,s)},createRecord:({id:t,data:n})=>e.post(`journal-entries/${t}/records`,n),getRecord:({id:t,journalRecordId:n})=>e.get(`journal-entries/${t}/records/${n}`),updateRecord:({id:t,journalRecordId:n,data:r})=>e.put(`journal-entries/${t}/records/${n}`,r),deleteRecord:({id:t,journalRecordId:n})=>e.delete(`journal-entries/${t}/records/${n}`)}}({apiHandler:e}),this.kycDocuments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,expand:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,expand:o};return e.getAll("kyc-documents",i)},create:({id:t="",data:n})=>e.create(`kyc-documents/${t}`,t,n),get:({id:t})=>e.get(`kyc-documents/${t}`),update:({id:t,data:n})=>e.put(`kyc-documents/${t}`,n),accept:({id:t})=>e.post(`kyc-documents/${t}/acceptance`),matches:({id:t,data:n})=>e.post(`kyc-documents/${t}/matches`,n),reject:({id:t,data:n})=>e.post(`kyc-documents/${t}/rejection`,n),review:({id:t})=>e.post(`kyc-documents/${t}/review`),startReview:({id:t})=>e.post(`kyc-documents/${t}/start-review`),stopReview:({id:t})=>e.post(`kyc-documents/${t}/stop-review`)}}({apiHandler:e}),this.kycRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,expand:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,expand:o};return e.getAll("kyc-requests",i)},create:({data:t})=>e.post("kyc-requests",t),get:({id:t})=>e.get(`kyc-requests/${t}`),delete:({id:t})=>e.delete(`kyc-requests/${t}`),update:({id:t,data:n})=>e.patch(`kyc-requests/${t}`,n)}}({apiHandler:e}),this.kycSettings=function({apiHandler:e}){return{getKycSettings:()=>e.get("kyc-settings"),updateKycSettings:({data:t})=>e.put("kyc-settings",t)}}({apiHandler:e}),this.lists=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,fields:o=null,q:i=null}={}){const s={limit:t,offset:n,filter:r,sort:a,fields:o,q:i};return e.getAll("lists",s)},create:({id:t="",data:n})=>e.create(`lists/${t}`,t,n),getLatestVersion:({id:t})=>e.get(`lists/${t}`),update:({id:t,data:n})=>e.put(`lists/${t}`,n),delete:({id:t})=>e.delete(`lists/${t}`),getByVersion:({id:t,version:n})=>e.get(`lists/${t}/${n}`)}}({apiHandler:e}),this.memberships=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("memberships",o)},get:({organizationId:t,userId:n})=>e.get(`memberships/${t}/${n}`),update:({organizationId:t,userId:n,data:r})=>e.put(`memberships/${t}/${n}`,r),delete:({organizationId:t,userId:n})=>e.delete(`memberships/${t}/${n}`)}}({apiHandler:e}),this.organizationExports=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("organization-exports",i)},create:({data:t})=>e.post("organization-exports",t),get:({id:t})=>e.get(`organization-exports/${t}`)}}({apiHandler:e}),this.organizations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("organizations",i)},create:({data:t})=>e.post("organizations",t),get:({id:t})=>e.get(`organizations/${t}`),update:({id:t,data:n})=>e.patch(`organizations/${t}`,n)}}({apiHandler:e}),this.paymentCardsBankNames=function({apiHandler:e}){return{getAll({limit:t=null,q:n=null}={}){const r={limit:t,q:n};return e.getAll("payment-cards-bank-names",r)}}}({apiHandler:e}),this.paymentInstruments=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("payment-instruments",s)},create:({data:t})=>e.post("payment-instruments",t),get:({id:t})=>e.get(`payment-instruments/${t}`),update:({id:t,data:n})=>e.patch(`payment-instruments/${t}`,n),deactivate:({id:t})=>e.post(`payment-instruments/${t}/deactivation`),nameInquiry:({id:t,data:n})=>e.post(`payment-instruments/${t}/name-inquiry`,n)}}({apiHandler:e}),this.paymentMethods=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("payment-methods",r)},get:({apiName:t})=>e.get(`payment-methods/${t}`)}}({apiHandler:e}),this.paymentTokens=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("tokens",r)},create:({data:t})=>e.post("tokens",t),get:({token:t})=>e.get(`tokens/${t}`)}}({apiHandler:e}),this.payoutRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("payout-requests",o)},create:({id:t="",data:n})=>e.create(`payout-requests/${t}`,t,n),get:({id:t})=>e.get(`payout-requests/${t}`),update:({id:t,data:n})=>e.put(`payout-requests/${t}`,n),cancel:({id:t,data:n})=>e.post(`payout-requests/${t}/cancel`,n),getPaymentInstruments:({id:t})=>e.get(`payout-requests/${t}/payment-instruments`)}}({apiHandler:e}),this.payouts=function({apiHandler:e}){return{create:({data:t})=>e.post("payouts",t)}}({apiHandler:e}),this.plans=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("plans",i)},create:({id:t="",data:n})=>e.create(`plans/${t}`,t,n),get:({id:t})=>e.get(`plans/${t}`),update:({id:t,data:n})=>e.put(`plans/${t}`,n),delete:({id:t})=>e.delete(`plans/${t}`)}}({apiHandler:e}),this.previews=function({apiHandler:e}){return{order:({data:t})=>e.post("previews/orders",t),sendEmailRuleAction:({data:t})=>e.post("previews/rule-actions/send-email",t),webhook:({data:t})=>e.post("previews/webhooks",t)}}({apiHandler:e}),this.products=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("products",i)},create:({id:t="",data:n})=>e.create(`products/${t}`,t,n),get:({id:t})=>e.get(`products/${t}`),update:({id:t,data:n})=>e.put(`products/${t}`,n),delete:({id:t})=>e.delete(`products/${t}`)}}({apiHandler:e}),this.profile=function({apiHandler:e}){return{startPermissionsEmulation:({data:t})=>e.post("permissions-emulation",t),stopPermissionsEmulation:()=>e.delete("permissions-emulation"),get:()=>e.get("profile"),update:({data:t})=>e.put("profile",t),getMfa:()=>e.get("profile/mfa"),updateMfa:()=>e.post("profile/mfa"),deleteMfa:()=>e.delete("profile/mfa")}}({apiHandler:e}),this.purchase=function({apiHandler:e}){return{readyToPay:({data:t})=>e.post("ready-to-pay",t)}}({apiHandler:e}),this.quotes=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,expand:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,expand:o};return e.getAll("quotes",i)},create:({id:t="",data:n})=>e.create(`quotes/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`quotes/${t}`,r)},update:({id:t,data:n})=>e.put(`quotes/${t}`,n),patch:({id:t,data:n})=>e.patch(`quotes/${t}`,n),accept:({id:t})=>e.post(`quotes/${t}/accept`),cancel:({id:t})=>e.post(`quotes/${t}/cancel`),issue:({id:t})=>e.post(`quotes/${t}/issue`),recall:({id:t})=>e.post(`quotes/${t}/recall`),reject:({id:t})=>e.post(`quotes/${t}/reject`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`quotes/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`quotes/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`quotes/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`quotes/${t}/timeline/${n}`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`quotes/${t}`,n)}}}({apiHandler:e}),this.resource=function({apiHandler:e}){return{get:({resource:t,resourceId:n,service:r})=>e.get(`${t}/${n}/external-identifiers/${r}`),sync:({resource:t,resourceId:n,service:r})=>e.post(`${t}/${n}/external-identifiers/${r}`),update:({resource:t,resourceId:n,service:r,data:a})=>e.put(`${t}/${n}/external-identifiers/${r}`,a),delete:({resource:t,resourceId:n,service:r})=>e.delete(`${t}/${n}/external-identifiers/${r}`)}}({apiHandler:e}),this.riskScoreRules=function({apiHandler:e}){return{getAll:()=>e.get("risk-score-rules"),updateRiskScoreRules:({data:t})=>e.put("risk-score-rules",t),getAllBlocklistRules:()=>e.get("risk-score-rules/blocklists"),updateRiskScoreBlocklistRules:({data:t})=>e.put("risk-score-rules/blocklists",t)}}({apiHandler:e}),this.riskScoreSimulationJobs=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null}={}){const o={filter:t,sort:n,limit:r,offset:a};return e.getAll("risk-score-simulation-jobs",o)},create:({data:t})=>e.post("risk-score-simulation-jobs",t),get:({id:t})=>e.get(`risk-score-simulation-jobs/${t}`),stop:({id:t})=>e.post(`risk-score-simulation-jobs/${t}/stop`),getTransactions({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`risk-score-simulation-jobs/${t}/transactions`,a)}}}({apiHandler:e}),this.roles=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null,expand:i=null}={}){const s={limit:t,offset:n,filter:r,sort:a,q:o,expand:i};return e.getAll("roles",s)},create:({id:t="",data:n})=>e.create(`roles/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`roles/${t}`,r)},update:({id:t,data:n})=>e.put(`roles/${t}`,n),delete:({id:t})=>e.delete(`roles/${t}`)}}({apiHandler:e}),this.search=function({apiHandler:e}){return{get({sort:t=null,limit:n=null,offset:r=null,q:a=null}){const o={sort:t,limit:n,offset:r,q:a};return e.get("search",o)}}}({apiHandler:e}),this.segments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("grid-segments",i)},create:({id:t="",data:n})=>e.create(`grid-segments/${t}`,t,n),get:({id:t})=>e.get(`grid-segments/${t}`),update:({id:t,data:n})=>e.put(`grid-segments/${t}`,n),delete:({id:t})=>e.delete(`grid-segments/${t}`)}}({apiHandler:e}),this.sendThroughAttribution=function({apiHandler:e}){return{getAll:({eventType:t})=>e.getAll(`send-through-attribution/${t}`)}}({apiHandler:e}),this.serviceCredentials=function({apiHandler:e}){return{getAll({type:t,filter:n=null,limit:r=null,offset:a=null,sort:o=null,q:i=null}){const s={filter:n,limit:r,offset:a,sort:o,q:i};return e.getAll(`service-credentials/${t}`,s)},create:({type:t,data:n})=>e.post(`service-credentials/${t}`,n),get:({type:t,id:n})=>e.get(`service-credentials/${t}/${n}`),update:({type:t,id:n,data:r})=>e.patch(`service-credentials/${t}/${n}`,r),getItems({type:t,id:n,limit:r=null,offset:a=null,filter:o=null,q:i=null,fields:s=null,sort:l=null}){const c={limit:r,offset:a,filter:o,q:i,fields:s,sort:l};return e.getAll(`service-credentials/${t}/${n}/items`,c)}}}({apiHandler:e}),this.shippingRates=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("shipping-rates",i)},create:({id:t="",data:n})=>e.create(`shipping-rates/${t}`,t,n),get:({id:t})=>e.get(`shipping-rates/${t}`),update:({id:t,data:n})=>e.put(`shipping-rates/${t}`,n),delete:({id:t})=>e.delete(`shipping-rates/${t}`)}}({apiHandler:e}),this.status=function({apiHandler:e}){return{get:()=>e.get("status")}}({apiHandler:e}),this.subscriptionCancellations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-cancellations",o)},create:({id:t="",data:n})=>e.create(`subscription-cancellations/${t}`,t,n),get:({id:t})=>e.get(`subscription-cancellations/${t}`),delete:({id:t})=>e.delete(`subscription-cancellations/${t}`),patch:({id:t,data:n})=>e.patch(`subscription-cancellations/${t}`,n)}}({apiHandler:e}),this.subscriptionPauses=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-pauses",o)},pause:({id:t="",data:n})=>e.create(`subscription-pauses/${t}`,t,n),get:({id:t})=>e.get(`subscription-pauses/${t}`),update:({id:t,data:n})=>e.put(`subscription-pauses/${t}`,n),delete:({id:t})=>e.delete(`subscription-pauses/${t}`)}}({apiHandler:e}),this.subscriptionReactivations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-reactivations",o)},reactivate:({data:t})=>e.post("subscription-reactivations",t),get:({id:t})=>e.get(`subscription-reactivations/${t}`)}}({apiHandler:e}),this.subscriptions=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("subscriptions",s)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`subscriptions/${t}`,t,n,a)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`subscriptions/${t}`,r)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`subscriptions/${t}`,n,a)},delete:({id:t})=>e.delete(`subscriptions/${t}`),void:({id:t})=>e.post(`subscriptions/${t}/void`),changeItems({id:t,data:n,expand:r=null}){const a={expand:r};return e.post(`subscriptions/${t}/change-items`,n,a)},updateItem:({id:t,itemId:n,data:r})=>e.patch(`subscriptions/${t}/items/${n}`,r),createInterimInvoice:({id:t,data:n})=>e.post(`subscriptions/${t}/interim-invoice`,n),getAllUpcomingInvoices({id:t,expand:n=null}){const r={expand:n};return e.getAll(`subscriptions/${t}/upcoming-invoices`,r)},getUpcomingInvoice({id:t,expand:n=null}){const r={expand:n};return e.get(`subscriptions/${t}/upcoming-invoice`,r)},issueEarlyUpcomingInvoice:({id:t,data:n})=>e.post(`subscriptions/${t}/upcoming-invoice/issue`,n),issueUpcomingInvoice:({id:t,invoiceId:n,data:r})=>e.post(`subscriptions/${t}/upcoming-invoices/${n}/issue`,r),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`subscriptions/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`subscriptions/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`subscriptions/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`subscriptions/${t}/timeline/${n}`)}}({apiHandler:e}),this.tags=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("tags",i)},create:({data:t})=>e.post("tags",t),get:({tag:t})=>e.get(`tags/${t}`),delete:({tag:t})=>e.delete(`tags/${t}`),update:({tag:t,data:n})=>e.patch(`tags/${t}`,n),tagCustomers:({tag:t,data:n})=>e.post(`tags/${t}/customers`,n),untagCustomers:({tag:t,data:n})=>e.delete(`tags/${t}/customers`,n),tagCustomer:({tag:t,customerId:n})=>e.post(`tags/${t}/customers/${n}`),untagCustomer:({tag:t,customerId:n})=>e.delete(`tags/${t}/customers/${n}`),tagKycDocuments:({tag:t,data:n})=>e.post(`tags/${t}/kyc-documents`,n),untagKycDocuments:({tag:t,data:n})=>e.delete(`tags/${t}/kyc-documents`,n),tagKycDocument:({tag:t,kycDocumentId:n})=>e.post(`tags/${t}/kyc-documents/${n}`),untagKycDocument:({tag:t,kycDocumentId:n})=>e.delete(`tags/${t}/kyc-documents/${n}`),tagAmlChecks:({tag:t,data:n})=>e.post(`tags/${t}/aml-checks`,n),untagAmlChecks:({tag:t,data:n})=>e.delete(`tags/${t}/aml-checks`,n),tagAmlCheck:({tag:t,amlCheckId:n})=>e.post(`tags/${t}/aml-checks/${n}`),untagAmlCheck:({tag:t,amlCheckId:n})=>e.delete(`tags/${t}/aml-checks/${n}`)}}({apiHandler:e}),this.tagsRules=function({apiHandler:e}){return{getAllTagsRules({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tags-rules",i)},createTagsRule:({id:t="",data:n})=>e.create(`tags-rules/${t}`,t,n),getTagsRule:({id:t})=>e.get(`tags-rules/${t}`),updateTagsRule:({id:t,data:n})=>e.put(`tags-rules/${t}`,n),deleteTagsRule:({id:t})=>e.delete(`tags-rules/${t}`)}}({apiHandler:e}),this.tracking=function({apiHandler:e}){return{getAllApiLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null,expand:i=null}={}){const s={limit:t,offset:n,sort:r,filter:a,q:o,expand:i};return e.getAll("tracking/api",s)},getApiLog:({id:t})=>e.get(`tracking/api/${t}`),getAllTaxTrackingLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/taxes",i)},getTaxTrackingLog:({id:t})=>e.get(`tracking/taxes/${t}`),getAllListsChangesHistory({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/lists",i)},getAllWebhookTrackingLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/webhooks",i)},getWebhookTrackingLog:({id:t})=>e.get(`tracking/webhooks/${t}`),resendWebhook:({id:t})=>e.post(`tracking/webhooks/${t}/resend`)}}({apiHandler:e}),this.transactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null,expand:i=null}={}){const s={limit:t,offset:n,filter:r,q:a,sort:o,expand:i};return e.getAll("transactions",s)},create({data:t,expand:n=null}){const r={expand:n};return e.post("transactions",t,r)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`transactions/${t}`,r)},patch:({id:t,data:n})=>e.patch(`transactions/${t}`,n),query:({id:t})=>e.post(`transactions/${t}/query`),update:({id:t,data:n})=>e.post(`transactions/${t}/update`,n),refund:({id:t,data:n})=>e.post(`transactions/${t}/refund`,n),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`transactions/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`transactions/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`transactions/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`transactions/${t}/timeline/${n}`)}}({apiHandler:e}),this.usages=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("usages",i)},create:({id:t="",data:n})=>e.create(`usages/${t}`,t,n),get:({id:t})=>e.get(`usages/${t}`),update:({id:t,data:n})=>e.put(`usages/${t}`,n),delete:({id:t})=>e.delete(`usages/${t}`)}}({apiHandler:e}),this.users=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("users",i)},create:({id:t="",data:n})=>e.create(`users/${t}`,t,n),get:({id:t})=>e.get(`users/${t}`),update:({id:t,data:n})=>e.put(`users/${t}`,n),getMfa:({id:t})=>e.get(`users/${t}/mfa`)}}({apiHandler:e}),this.webhooks=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null}={}){const a={limit:t,offset:n,filter:r};return e.getAll("webhooks",a)},create:({id:t="",data:n})=>e.create(`webhooks/${t}`,t,n),get:({id:t})=>e.get(`webhooks/${t}`),update:({id:t,data:n})=>e.put(`webhooks/${t}`,n)}}({apiHandler:e}),this.websites=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,q:r=null,filter:a=null,sort:o=null}={}){const i={limit:t,offset:n,q:r,filter:a,sort:o};return e.getAll("websites",i)},create:({id:t="",data:n})=>e.create(`websites/${t}`,t,n),get:({id:t})=>e.get(`websites/${t}`),update:({id:t,data:n})=>e.put(`websites/${t}`,n),delete:({id:t})=>e.delete(`websites/${t}`)}}({apiHandler:e}),this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setPublishableKey=e.setPublishableKey,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken,this.generateSignature=e.generateSignature}};const cp={CustomersResource:function({apiHandler:e}){return{getCustomerLifetimeSummaryMetrics:({customerId:t})=>e.get(`customers/${t}/summary-metrics`)}},DataExportsResource:function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,expand:a=null,filter:o=null,q:i=null,criteria:s=null}={}){const l={limit:t,offset:n,sort:r,expand:a,filter:o,q:i,criteria:s};return e.getAll("data-exports",l)},queue({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`data-exports/${t}`,t,n,a)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`data-exports/${t}`,r)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`data-exports/${t}`,n,a)},delete:({id:t})=>e.delete(`data-exports/${t}`)}},HistogramsResource:function({apiHandler:e}){return{getTransactionHistogramReport({periodStart:t,periodEnd:n,aggregationPeriod:r,metric:a,filter:o=null}){const i={periodStart:t,periodEnd:n,aggregationPeriod:r,metric:a,filter:o};return e.get("histograms/transactions",i)}}},ReportsResource:function({apiHandler:e}){return{getApiLogSummary({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/api-log-summary",o)},getCumulativeSubscriptions({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/cumulative-subscriptions",s)},getDashboardMetrics({periodStart:t,periodEnd:n,metrics:r=null,segments:a=null}){const o={periodStart:t,periodEnd:n,metrics:r,segments:a};return e.get("reports/dashboard",o)},getDccMarkup({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/dcc-markup",s)},getDeclinedTransactions({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/declined-transactions",s)},getDisputes({aggregationField:t,periodMonth:n,limit:r=null,offset:a=null,filter:o=null}){const i={aggregationField:t,periodMonth:n,limit:r,offset:a,filter:o};return e.get("reports/disputes",i)},getEventsTriggeredSummary({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/events-triggered",o)},getTriggeredEventRuleReport({eventType:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null}){const i={periodStart:n,periodEnd:r,limit:a,offset:o};return e.get(`reports/events-triggered/${t}/rules`,i)},getFutureRenewals({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/future-renewals",o)},getJournal({currency:t,bookedFrom:n=null,bookedTo:r=null,recognizedAt:a,aggregationField:o,limit:i=null,offset:s=null,filter:l=null}){const c={currency:t,bookedFrom:n,bookedTo:r,recognizedAt:a,aggregationField:o,limit:i,offset:s,filter:l};return e.get("reports/journal",c)},getKycAcceptanceSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-acceptance-summary",r)},getKycRejectionSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-rejection-summary",r)},getKycRequestSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-request-summary",r)},getMonthlyRecurringRevenue({currency:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null}){const i={currency:t,periodStart:n,periodEnd:r,limit:a,offset:o};return e.get("reports/monthly-recurring-revenue",i)},getRenewalSales({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/renewal-sales",o)},getRetentionPercentage({aggregationField:t,aggregationPeriod:n,includeSwitchedSubscriptions:r=null,periodStart:a,periodEnd:o,limit:i=null,offset:s=null,filter:l=null,criteria:c=null}){const u={aggregationField:t,aggregationPeriod:n,includeSwitchedSubscriptions:r,periodStart:a,periodEnd:o,limit:i,offset:s,filter:l,criteria:c};return e.get("reports/retention-percentage",u)},getRetentionValue({aggregationField:t,aggregationPeriod:n,includeRefunds:r=null,includeDisputes:a=null,periodStart:o,periodEnd:i,limit:s=null,offset:l=null,filter:c=null,sort:u=null,criteria:d=null}){const p={aggregationField:t,aggregationPeriod:n,includeRefunds:r,includeDisputes:a,periodStart:o,periodEnd:i,limit:s,offset:l,filter:c,sort:u,criteria:d};return e.get("reports/retention-value",p)},getRevenueWaterfall({currency:t,issuedFrom:n,issuedTo:r,recognizedTo:a}){const o={currency:t,issuedFrom:n,issuedTo:r,recognizedTo:a};return e.get("reports/revenue-waterfall",o)},getRevenueAudit({filter:t=null,sort:n=null,limit:r=null,offset:a=null}){const o={filter:t,sort:n,limit:r,offset:a};return e.get("reports/revenue-audit",o)},getSubscriptionCancellation({periodStart:t,periodEnd:n,aggregationField:r,limit:a=null,offset:o=null,filter:i=null}){const s={periodStart:t,periodEnd:n,aggregationField:r,limit:a,offset:o,filter:i};return e.get("reports/subscription-cancellation",s)},getSubscriptionRenewal({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/subscription-renewal",o)},getTax({periodStart:t,periodEnd:n,accountingMethod:r,limit:a=null,offset:o=null}){const i={periodStart:t,periodEnd:n,accountingMethod:r,limit:a,offset:o};return e.get("reports/tax",i)},getTimeSeriesTransaction({type:t,subaggregate:n,periodStart:r,periodEnd:a,limit:o=null,offset:i=null}){const s={type:t,subaggregate:n,periodStart:r,periodEnd:a,limit:o,offset:i};return e.get("reports/time-series-transaction",s)},getTransactionsTimeDispute({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/transactions-time-dispute",s)},getTransactions({periodStart:t,periodEnd:n,aggregationField:r,limit:a=null,offset:o=null,filter:i=null}){const s={periodStart:t,periodEnd:n,aggregationField:r,limit:a,offset:o,filter:i};return e.get("reports/transactions",s)}}},SubscriptionsResource:function({apiHandler:e}){return{getSubscriptionSummaryMetrics:({subscriptionId:t})=>e.get(`subscriptions/${t}/summary-metrics`)}},TimelinesResource:function({apiHandler:e}){return{getActivityFeed({eventTypes:t=null,limit:n=1e3,offset:r=0}){const a={eventTypes:t,limit:n,offset:r};return e.getAll("activity-feed",a)},getTransaction({id:t="",eventTypes:n=null,limit:r=1e3,offset:a=0}){const o={eventTypes:n,limit:r,offset:a};return e.getAll(`transactions/${t}/timeline`,o)},getCustomer({id:t="",eventTypes:n=null,limit:r=1e3,offset:a=0}){const o={eventTypes:n,limit:r,offset:a};return e.getAll(`customers/${t}/timeline`,o)}}},LocationResource:function({apiHandler:e}){return{query:()=>e.get("location")}}};class up{constructor({apiHandler:e}){this.customers=cp.CustomersResource({apiHandler:e}),this.dataExports=cp.DataExportsResource({apiHandler:e}),this.histograms=cp.HistogramsResource({apiHandler:e}),this.reports=cp.ReportsResource({apiHandler:e}),this.subscriptions=cp.SubscriptionsResource({apiHandler:e}),this.timelines=cp.TimelinesResource({apiHandler:e}),this.location=cp.LocationResource({apiHandler:e}),this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken}}class dp{constructor({apiHandler:e}){this.account=function({apiHandler:e}){return{get({expand:t=null}={}){const n={expand:t};return e.get("account",n)},update:({data:t})=>e.patch("account",t),requestPasswordReset:({data:t})=>e.post("account/forgot-password",t),changePassword:({data:t})=>e.patch("account/password",t),resendEmailVerification:({data:t})=>e.post("account/resend-verification",t),confirmPasswordReset:({token:t,data:n})=>e.post(`account/reset-password/${t}`,n),verifyEmail:({token:t})=>e.post(`account/verification/${t}`),register:({data:t})=>e.post("register",t)}}({apiHandler:e}),this.authorization=function({apiHandler:e}){return{login:({data:t})=>e.post("login",t),logout:()=>e.post("logout")}}({apiHandler:e}),this.billingPortals=function({apiHandler:e}){return{get:({slug:t})=>e.get(`billing-portals/${t}`)}}({apiHandler:e}),this.checkoutForms=function({apiHandler:e}){return{get:({id:t})=>e.get(`checkout-forms/${t}`)}}({apiHandler:e}),this.customFields=function({apiHandler:e}){return{getAll({resource:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`custom-fields/${t}`,a)}}}({apiHandler:e}),this.depositRequests=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`deposit-requests/${t}`,r)}}}({apiHandler:e}),this.deposit=function({apiHandler:e}){return{create:({data:t})=>e.post("deposit",t)}}({apiHandler:e}),this.depositStrategies=function({apiHandler:e}){return{get:({id:t})=>e.get(`deposit-strategies/${t}`)}}({apiHandler:e}),this.invoices=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("invoices",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`invoices/${t}`,r)},downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`invoices/${t}`,n)}}}({apiHandler:e}),this.kycDocuments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("kyc-documents",r)},create:({data:t})=>e.post("kyc-documents",t),get:({id:t})=>e.get(`kyc-documents/${t}`),update:({id:t,data:n})=>e.patch(`kyc-documents/${t}`,n)}}({apiHandler:e}),this.kycLivenessSessions=function({apiHandler:e}){return{create:({data:t})=>e.post("kyc-liveness-sessions",t),get:({id:t})=>e.get(`kyc-liveness-sessions/${t}`),finish:({id:t})=>e.post(`kyc-liveness-sessions/${t}/finish`)}}({apiHandler:e}),this.kycRequests=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`kyc-requests/${t}`,r)}}}({apiHandler:e}),this.orders=function({apiHandler:e}){return{getUpcomingInvoice({id:t,expand:n=null}){const r={expand:n};return e.get(`orders/${t}/upcoming-invoice`,r)},getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("orders",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`orders/${t}`,r)},update:({id:t,data:n})=>e.patch(`orders/${t}`,n),cancel:({id:t,data:n})=>e.post(`orders/${t}/cancellation`,n),pause:({id:t,data:n})=>e.post(`orders/${t}/pause`,n)}}({apiHandler:e}),this.paymentInstruments=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("payment-instruments",i)},create:({data:t})=>e.post("payment-instruments",t),get({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.get(`payment-instruments/${t}`,a)},update:({id:t,data:n})=>e.patch(`payment-instruments/${t}`,n),deactivate:({id:t})=>e.post(`payment-instruments/${t}/deactivation`),getSetupTransaction:({id:t})=>e.get(`payment-instruments/${t}/setup`),setup:({id:t,data:n})=>e.post(`payment-instruments/${t}/setup`,n)}}({apiHandler:e}),this.payoutRequests=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("payout-requests",i)},get:({id:t})=>e.get(`payout-requests/${t}`),update:({id:t,data:n})=>e.patch(`payout-requests/${t}`,n)}}({apiHandler:e}),this.plans=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("plans",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`plans/${t}`,r)}}}({apiHandler:e}),this.products=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("products",i)},get:({id:t})=>e.get(`products/${t}`)}}({apiHandler:e}),this.purchase=function({apiHandler:e}){return{payment:({data:t})=>e.post("payment",t),purchase:({data:t})=>e.post("purchase",t),preview:({data:t})=>e.post("preview-purchase",t),readyToPay:({data:t})=>e.post("ready-to-pay",t)}}({apiHandler:e}),this.quotes=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`quotes/${t}`,r)},accept:({id:t})=>e.post(`quotes/${t}/accept`),reject:({id:t})=>e.post(`quotes/${t}/reject`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`quotes/${t}`,n)}}}({apiHandler:e}),this.readyToPayout=function({apiHandler:e}){return{readyToPayout:({data:t})=>e.post("ready-to-payout",t)}}({apiHandler:e}),this.subscriptionReactivations=function({apiHandler:e}){return{reactivation:({data:t})=>e.post("subscription-reactivations",t)}}({apiHandler:e}),this.subscriptions=function({apiHandler:e}){return{changeItems:({id:t,data:n})=>e.post(`subscriptions/${t}/change-items`,n),create:({data:t})=>e.post("subscriptions",t)}}({apiHandler:e}),this.transactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("transactions",i)},get:({id:t})=>e.get(`transactions/${t}`),finishKyc:({id:t,token:n})=>e.post(`transactions/${t}/${n}/continue`),skipKyc:({id:t,token:n})=>e.post(`transactions/${t}/${n}/bypass`),update:({id:t,data:n})=>e.patch(`transactions/${t}`,n)}}({apiHandler:e}),this.websites=function({apiHandler:e}){return{get:({id:t})=>e.get(`websites/${t}`)}}({apiHandler:e}),this.checkoutForm=this.checkoutForms,this.billingPortal=this.billingPortals,this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setPublishableKey=e.setPublishableKey,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken,this.generateSignature=e.generateSignature}}const pp={live:"https://api.rebilly.com",sandbox:"https://api-sandbox.rebilly.com"},mp=6e3;function fp({apiKey:e=null,sandbox:t=!1,timeout:n=mp,organizationId:r=null,urls:a=pp,internalOptions:o=null}={}){if(!a.live||!a.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof a.live||"string"!=typeof a.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");return function({apiHandler:e}){return new lp({apiHandler:e})}({apiHandler:ip({options:{apiEndpoints:a,apiKey:e,apiVersion:"",isSandbox:t,requestTimeout:n,jwt:null,organizationId:r,appName:(null==o?void 0:o.appName)??null}})})}function hp({apiKey:e=null,sandbox:t=!1,timeout:n=mp,organizationId:r=null,urls:a=pp,internalOptions:o=null}={}){if(!a.live||!a.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof a.live||"string"!=typeof a.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");return function({apiHandler:e}){return new up({apiHandler:e})}({apiHandler:ip({options:{apiEndpoints:a,apiKey:e,apiVersion:"experimental",isSandbox:t,requestTimeout:n,jwt:null,organizationId:r,appName:(null==o?void 0:o.appName)??null}})})}function yp({publishableKey:e=null,jwt:t=null,sandbox:n=!1,timeout:r=mp,organizationId:a=null,urls:o=pp,internalOptions:i=null}={}){if(!o.live||!o.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof o.live||"string"!=typeof o.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");const s={apiEndpoints:o,publishableKey:e,jwt:t,apiVersion:"storefront",isSandbox:n,requestTimeout:r,organizationId:a,appName:(null==i?void 0:i.appName)??null},l=ip({options:s});return l.setSessionToken(s.jwt),function({apiHandler:e}){return new dp({apiHandler:e})}({apiHandler:l})}async function gp(e){try{return io(lo.storefront),so(lo.options),await e()}catch(t){throw ns(t),t}}class bp{constructor({publishableKey:e=null,jwt:t=null,organizationId:n=null,mode:r="live",timeout:a=6e4,liveUrl:o=null,sandboxUrl:i=null,appName:s}={}){const l={live:o||"https://api.rebilly.com",sandbox:i||"https://api-sandbox.rebilly.com"},c="string"==typeof a?parseInt(a,10):a,u={organizationId:n||void 0,sandbox:"sandbox"===r,timeout:Number.isNaN(c)?6e4:c,urls:l,internalOptions:{appName:s?`${s}/instruments`:"instruments"}},d=yp(u),p="function"==typeof fp.default?fp.default(u):fp(u),m=hp(u);return d.setSessionToken(e||t),p.setSessionToken(e||t),m.setSessionToken(e||t),this.api=d,this.api.rebilly=p,this.api.rebilly&&(this.api.rebilly.experimental=m),this.api}}const vp=e=>null!=e&&"object"==typeof e,wp={default:1,minimum:1,maximum:Number.MAX_SAFE_INTEGER,multipleOf:1};function kp({quantity:e}){return vp(e)?{...wp,...e}:e}function $p(e){return vp(e)?e.default:e}function Sp(e){return e.map((({planId:e,quantity:t})=>({planId:e,quantity:t&&$p(t)})))}function Ep(e){return e.reduce(((e,t)=>t.planId&&t.quantity?(e.set(t.planId,de(t.quantity)),e):e),new Map)}async function xp({data:e=null}={}){return gp((async()=>{var t,n,r,a,o,i,s,l,c,u,d,p,m,f,h,y,g,b,v,w,k,$,S,E,x,P;const _=null==(t=lo.options)?void 0:t.items,A=(null==(n=lo.options)?void 0:n.websiteId)||null,I=(null==(a=null==(r=lo.options)?void 0:r.bumpOffer)?void 0:a.map((({planId:e})=>e)))||[],T={data:{websiteId:A??void 0}};var L,C;if((null==(C=null==(L=lo.data)?void 0:L.summaryLineItems)?void 0:C.every((e=>null!=e.planId&&I.includes(e.planId))))||(null==(o=lo.data)?void 0:o.acceptBumpOffer)||!(null==(i=lo.data)?void 0:i.summaryLineItems)?_?(null==(l=lo.data)?void 0:l.acceptBumpOffer)?T.data.items=null==(c=lo.options)?void 0:c.bumpOffer:T.data.items=Sp(_??[]):((null==(u=lo.data)?void 0:u.summaryLineItems)&&(T.data.items=Sp(lo.data.summaryLineItems)),!(null==(d=lo.data)?void 0:d.acceptBumpOffer)&&(null==(f=null==(m=null==(p=lo.data)?void 0:p.previewPurchase)?void 0:m.addonLineItems)?void 0:f.length)>0&&(T.data.items=null==(y=null==(h=T.data)?void 0:h.items)?void 0:y.concat(lo.data.previewPurchase.addonLineItems))):T.data.items=Sp(null==(s=lo.data)?void 0:s.summaryLineItems),!(null==(g=lo.data)?void 0:g.acceptBumpOffer)&&(null==(w=null==(v=null==(b=lo.data)?void 0:b.previewPurchase)?void 0:v.addonLineItems)?void 0:w.length)>0&&(T.data.items=null==(k=T.data.items)?void 0:k.concat(lo.data.previewPurchase.addonLineItems)),T.data.items&&T.data.items.length>1){const e=T.data.items.map((e=>JSON.stringify(e))),t=new Set(e),n=Array.from(t).map((e=>JSON.parse(e)));T.data.items=n}(null==($=lo.data)?void 0:$.amountAndCurrency)&&(T.data={...T.data,...lo.data.amountAndCurrency}),(null==e?void 0:e.billingAddress)&&(T.data.billingAddress=e.billingAddress),(null==e?void 0:e.deliveryAddress)&&(T.data.deliveryAddress=e.deliveryAddress),(null==(S=lo.data)?void 0:S.couponIds)&&(T.data.couponIds=lo.data.couponIds),io(lo.storefront);const{fields:R}=await lo.storefront.purchase.preview(T);let j=R;if(!(null==(E=lo.data)?void 0:E.acceptBumpOffer)){const e=Ep(_??[]);if(j=bc(R),j.lineItems){if(null==(P=null==(x=lo.data)?void 0:x.previewPurchase)?void 0:P.addonLineItems){const e=lo.data.previewPurchase.addonLineItems.reduce(((e,t)=>(e.set(t.planId,t),e)),new Map);j.lineItems=j.lineItems.filter((t=>!e.has(t.planId))),j.addonLineItems=lo.data.previewPurchase.addonLineItems}j.lineItems.forEach(function(e){return function(t){if(!t.planId)return;const n=e.get(t.planId)||t.quantity;t.quantity&&vp(n)&&(n.default=$p(t.quantity),t.quantity=n)}}(e))}}return lo.data&&(lo.data.previewPurchase=j),new Sc(j)}))}let Pp=!1;async function _p(){var e,t;const n=lo.toModel(),r={options:n.options,data:n.data,mainStyleVars:n.mainStyleVars},a=null==(t=null==(e=lo.options)?void 0:e._computed)?void 0:t.paymentMethodsUrl,o="rebilly-instruments-summary",i=await new ss({name:o,url:`${a}?name=${o}`,container:lo.summary,model:r,route:{name:"summary"}});return i.bindEventListeners({loader:lo.loader}),oo.summary=i,async function(e){e.component.on(`${e.name}-update-items`,(async e=>{try{if(Pp)return;Pp=!0;const t=Ep(e);lo.data.summaryLineItems.forEach((e=>{const n=$p(t.get(e.planId));vp(e.quantity)?e.quantity.default=n:e.quantity=n})),await xp(),lo.updateModel(),Pp=!1}catch(t){console.error(t),Pp=!1}}))}(i),{then:e=>e()}}async function Ap({instrument:e}={}){await xp({data:e}),lo.updateModel()}var Ip={NODE_ENV:"production"},Tp=function(){return Tp=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e},Tp.apply(this,arguments)};function Lp(e,t,n,r){return new(n||(n=Promise))((function(t,a){function o(e){try{s(r.next(e))}catch(t){a(t)}}function i(e){try{s(r.throw(e))}catch(t){a(t)}}function s(e){e.done?t(e.value):function(e){return e instanceof n?e:new n((function(t){t(e)}))}(e.value).then(o,i)}s((r=r.apply(e,[])).next())}))}function Cp(e,t){var n,r,a,o,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(i=0)),i;)try{if(n=1,r&&(a=2&s[0]?r.return:s[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,s[1])).done)return a;switch(r=0,a&&(s=[2&s[0],a.value]),s[0]){case 0:case 1:a=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(a=(a=i.trys).length>0&&a[a.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!a||s[1]>a[0]&&s[1]<a[3])){i.label=s[1];break}if(6===s[0]&&i.label<a[1]){i.label=a[1],a=s;break}if(a&&i.label<a[2]){i.label=a[2],i.ops.push(s);break}a[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(l){s=[6,l],r=0}finally{n=a=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}function Rp(e,t,n){for(var r,a=0,o=t.length;a<o;a++)(r||!(a in t))&&(r||(r=Array.prototype.slice.call(t,0,a)),r[a]=t[a]);return e.concat(r||Array.prototype.slice.call(t))}var jp="3.4.2";function Np(e,t){return new Promise((function(n){return setTimeout(n,e,t)}))}function Op(e){return!!e&&"function"==typeof e.then}function Fp(e,t){try{var n=e();Op(n)?n.then((function(e){return t(!0,e)}),(function(e){return t(!1,e)})):t(!0,n)}catch(r){t(!1,r)}}function Mp(e,t,n){return void 0===n&&(n=16),Lp(this,0,void 0,(function(){var r,a,o,i;return Cp(this,(function(s){switch(s.label){case 0:r=Array(e.length),a=Date.now(),o=0,s.label=1;case 1:return o<e.length?(r[o]=t(e[o],o),(i=Date.now())>=a+n?(a=i,[4,Np(0)]):[3,3]):[3,4];case 2:s.sent(),s.label=3;case 3:return++o,[3,1];case 4:return[2,r]}}))}))}function Hp(e){e.then(void 0,(function(){}))}function Bp(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]+t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]+t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]+t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]+t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function qp(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]*t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]*t[3],n[1]+=n[2]>>>16,n[2]&=65535,n[2]+=e[3]*t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]*t[3],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[2]*t[2],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[3]*t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]*t[3]+e[1]*t[2]+e[2]*t[1]+e[3]*t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function Dp(e,t){return 32===(t%=64)?[e[1],e[0]]:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t|e[0]>>>32-t]:(t-=32,[e[1]<<t|e[0]>>>32-t,e[0]<<t|e[1]>>>32-t])}function zp(e,t){return 0===(t%=64)?e:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t]:[e[1]<<t-32,0]}function Vp(e,t){return[e[0]^t[0],e[1]^t[1]]}function Wp(e){return e=Vp(e,[0,e[0]>>>1]),e=Vp(e=qp(e,[4283543511,3981806797]),[0,e[0]>>>1]),e=Vp(e=qp(e,[3301882366,444984403]),[0,e[0]>>>1])}function Up(e){return parseInt(e)}function Gp(e){return parseFloat(e)}function Kp(e,t){return"number"==typeof e&&isNaN(e)?t:e}function Zp(e){return e.reduce((function(e,t){return e+(t?1:0)}),0)}function Xp(e,t){if(void 0===t&&(t=1),Math.abs(t)>=1)return Math.round(e/t)*t;var n=1/t;return Math.round(e*n)/n}function Jp(e){return e&&"object"==typeof e&&"message"in e?e:{message:e}}function Yp(e,t,n){var r=Object.keys(e).filter((function(e){return function(e,t){return!function(e,t){for(var n=0,r=e.length;n<r;++n)if(e[n]===t)return!0;return!1}(e,t)}(n,e)})),a=Mp(r,(function(n){return function(e,t){var n=new Promise((function(n){var r=Date.now();Fp(e.bind(null,t),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var a=Date.now()-r;if(!e[0])return n((function(){return{error:Jp(e[1]),duration:a}}));var o=e[1];if(function(e){return"function"!=typeof e}(o))return n((function(){return{value:o,duration:a}}));n((function(){return new Promise((function(e){var t=Date.now();Fp(o,(function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=a+Date.now()-t;if(!n[0])return e({error:Jp(n[1]),duration:o});e({value:n[1],duration:o})}))}))}))}))}));return Hp(n),function(){return n.then((function(e){return e()}))}}(e[n],t)}));return Hp(a),function(){return Lp(this,0,void 0,(function(){var e,t,n,o;return Cp(this,(function(i){switch(i.label){case 0:return[4,a];case 1:return[4,Mp(i.sent(),(function(e){var t=e();return Hp(t),t}))];case 2:return e=i.sent(),[4,Promise.all(e)];case 3:for(t=i.sent(),n={},o=0;o<r.length;++o)n[r[o]]=t[o];return[2,n]}}))}))}}function Qp(){var e=window,t=navigator;return Zp(["MSCSSMatrix"in e,"msSetImmediate"in e,"msIndexedDB"in e,"msMaxTouchPoints"in t,"msPointerEnabled"in t])>=4}function em(){var e=window,t=navigator;return Zp(["webkitPersistentStorage"in t,"webkitTemporaryStorage"in t,0===t.vendor.indexOf("Google"),"webkitResolveLocalFileSystemURL"in e,"BatteryManager"in e,"webkitMediaStream"in e,"webkitSpeechGrammar"in e])>=5}function tm(){var e=window,t=navigator;return Zp(["ApplePayError"in e,"CSSPrimitiveValue"in e,"Counter"in e,0===t.vendor.indexOf("Apple"),"getStorageUpdates"in t,"WebKitMediaKeys"in e])>=4}function nm(){var e=window;return Zp(["safari"in e,!("DeviceMotionEvent"in e),!("ongestureend"in e),!("standalone"in navigator)])>=3}function rm(){var e=document;return(e.exitFullscreen||e.msExitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen).call(e)}function am(){var e=em(),t=function(){var e,t,n=window;return Zp(["buildID"in navigator,"MozAppearance"in(null!==(t=null===(e=document.documentElement)||void 0===e?void 0:e.style)&&void 0!==t?t:{}),"onmozfullscreenchange"in n,"mozInnerScreenX"in n,"CSSMozDocumentRule"in n,"CanvasCaptureMediaStream"in n])>=4}();if(!e&&!t)return!1;var n=window;return Zp(["onorientationchange"in n,"orientation"in n,e&&!("SharedWorker"in n),t&&/android/i.test(navigator.appVersion)])>=2}function om(e){var t=new Error(e);return t.name=e,t}function im(e,t,n){var r,a,o;return void 0===n&&(n=50),Lp(this,0,void 0,(function(){var i,s;return Cp(this,(function(l){switch(l.label){case 0:i=document,l.label=1;case 1:return i.body?[3,3]:[4,Np(n)];case 2:return l.sent(),[3,1];case 3:s=i.createElement("iframe"),l.label=4;case 4:return l.trys.push([4,,10,11]),[4,new Promise((function(e,n){var r=!1,a=function(){r=!0,e()};s.onload=a,s.onerror=function(e){r=!0,n(e)};var o=s.style;o.setProperty("display","block","important"),o.position="absolute",o.top="0",o.left="0",o.visibility="hidden",t&&"srcdoc"in s?s.srcdoc=t:s.src="about:blank",i.body.appendChild(s);var l=function(){var e,t;r||("complete"===(null===(t=null===(e=s.contentWindow)||void 0===e?void 0:e.document)||void 0===t?void 0:t.readyState)?a():setTimeout(l,10))};l()}))];case 5:l.sent(),l.label=6;case 6:return null!==(a=null===(r=s.contentWindow)||void 0===r?void 0:r.document)&&void 0!==a&&a.body?[3,8]:[4,Np(n)];case 7:return l.sent(),[3,6];case 8:return[4,e(s,s.contentWindow)];case 9:return[2,l.sent()];case 10:return null===(o=s.parentNode)||void 0===o||o.removeChild(s),[7];case 11:return[2]}}))}))}function sm(e){for(var t=function(e){for(var t,n,r="Unexpected syntax '".concat(e,"'"),a=/^\s*([a-z-]*)(.*)$/i.exec(e),o=a[1]||void 0,i={},s=/([.:#][\w-]+|\[.+?\])/gi,l=function(e,t){i[e]=i[e]||[],i[e].push(t)};;){var c=s.exec(a[2]);if(!c)break;var u=c[0];switch(u[0]){case".":l("class",u.slice(1));break;case"#":l("id",u.slice(1));break;case"[":var d=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(u);if(!d)throw new Error(r);l(d[1],null!==(n=null!==(t=d[4])&&void 0!==t?t:d[5])&&void 0!==n?n:"");break;default:throw new Error(r)}}return[o,i]}(e),n=t[0],r=t[1],a=document.createElement(n??"div"),o=0,i=Object.keys(r);o<i.length;o++){var s=i[o],l=r[s].join(" ");"style"===s?lm(a.style,l):a.setAttribute(s,l)}return a}function lm(e,t){for(var n=0,r=t.split(";");n<r.length;n++){var a=r[n],o=/^\s*([\w-]+)\s*:\s*(.+?)(\s*!([\w-]+))?\s*$/.exec(a);if(o){var i=o[1],s=o[2],l=o[4];e.setProperty(i,s,l||"")}}}var cm=["monospace","sans-serif","serif"],um=["sans-serif-thin","ARNO PRO","Agency FB","Arabic Typesetting","Arial Unicode MS","AvantGarde Bk BT","BankGothic Md BT","Batang","Bitstream Vera Sans Mono","Calibri","Century","Century Gothic","Clarendon","EUROSTILE","Franklin Gothic","Futura Bk BT","Futura Md BT","GOTHAM","Gill Sans","HELV","Haettenschweiler","Helvetica Neue","Humanst521 BT","Leelawadee","Letter Gothic","Levenim MT","Lucida Bright","Lucida Sans","Menlo","MS Mincho","MS Outlook","MS Reference Specialty","MS UI Gothic","MT Extra","MYRIAD PRO","Marlett","Meiryo UI","Microsoft Uighur","Minion Pro","Monotype Corsiva","PMingLiU","Pristina","SCRIPTINA","Segoe UI Light","Serifa","SimHei","Small Fonts","Staccato222 BT","TRAJAN PRO","Univers CE 55 Medium","Vrinda","ZWAdobeF"];function dm(e){return e.toDataURL()}var pm,mm,fm=2500;function hm(){var e=this;return function(){if(void 0===mm){var e=function(){var t=ym();gm(t)?mm=setTimeout(e,fm):(pm=t,mm=void 0)};e()}}(),function(){return Lp(e,0,void 0,(function(){var e;return Cp(this,(function(t){switch(t.label){case 0:return gm(e=ym())?pm?[2,Rp([],pm)]:function(){var e=document;return e.fullscreenElement||e.msFullscreenElement||e.mozFullScreenElement||e.webkitFullscreenElement||null}()?[4,rm()]:[3,2]:[3,2];case 1:t.sent(),e=ym(),t.label=2;case 2:return gm(e)||(pm=e),[2,e]}}))}))}}function ym(){var e=screen;return[Kp(Gp(e.availTop),null),Kp(Gp(e.width)-Gp(e.availWidth)-Kp(Gp(e.availLeft),0),null),Kp(Gp(e.height)-Gp(e.availHeight)-Kp(Gp(e.availTop),0),null),Kp(Gp(e.availLeft),null)]}function gm(e){for(var t=0;t<4;++t)if(e[t])return!1;return!0}function bm(e){var t;return Lp(this,0,void 0,(function(){var n,r,a,o,i,s,l;return Cp(this,(function(c){switch(c.label){case 0:for(n=document,r=n.createElement("div"),a=new Array(e.length),o={},vm(r),l=0;l<e.length;++l)"DIALOG"===(i=sm(e[l])).tagName&&i.show(),vm(s=n.createElement("div")),s.appendChild(i),r.appendChild(s),a[l]=i;c.label=1;case 1:return n.body?[3,3]:[4,Np(50)];case 2:return c.sent(),[3,1];case 3:n.body.appendChild(r);try{for(l=0;l<e.length;++l)a[l].offsetParent||(o[e[l]]=!0)}finally{null===(t=r.parentNode)||void 0===t||t.removeChild(r)}return[2,o]}}))}))}function vm(e){e.style.setProperty("display","block","important")}function wm(e){return matchMedia("(inverted-colors: ".concat(e,")")).matches}function km(e){return matchMedia("(forced-colors: ".concat(e,")")).matches}function $m(e){return matchMedia("(prefers-contrast: ".concat(e,")")).matches}function Sm(e){return matchMedia("(prefers-reduced-motion: ".concat(e,")")).matches}function Em(e){return matchMedia("(dynamic-range: ".concat(e,")")).matches}var xm=Math,Pm=function(){return 0};var _m={default:[],apple:[{font:"-apple-system-body"}],serif:[{fontFamily:"serif"}],sans:[{fontFamily:"sans-serif"}],mono:[{fontFamily:"monospace"}],min:[{fontSize:"1px"}],system:[{fontFamily:"system-ui"}]};var Am={fonts:function(){return im((function(e,t){var n=t.document,r=n.body;r.style.fontSize="48px";var a=n.createElement("div"),o={},i={},s=function(e){var t=n.createElement("span"),r=t.style;return r.position="absolute",r.top="0",r.left="0",r.fontFamily=e,t.textContent="mmMwWLliI0O&1",a.appendChild(t),t},l=cm.map(s),c=function(){for(var e={},t=function(t){e[t]=cm.map((function(e){return function(e,t){return s("'".concat(e,"',").concat(t))}(t,e)}))},n=0,r=um;n<r.length;n++){t(r[n])}return e}();r.appendChild(a);for(var u=0;u<cm.length;u++)o[cm[u]]=l[u].offsetWidth,i[cm[u]]=l[u].offsetHeight;return um.filter((function(e){return function(e){return cm.some((function(t,n){return e[n].offsetWidth!==o[t]||e[n].offsetHeight!==i[t]}))}(c[e])}))}))},domBlockers:function(e){var t=(void 0===e?{}:e).debug;return Lp(this,0,void 0,(function(){var e,n,r,a,o;return Cp(this,(function(i){switch(i.label){case 0:return tm()||am()?(e=function(){var e=atob;return{abpIndo:["#Iklan-Melayang","#Kolom-Iklan-728","#SidebarIklan-wrapper",'[title="ALIENBOLA" i]',e("I0JveC1CYW5uZXItYWRz")],abpvn:[".quangcao","#mobileCatfish",e("LmNsb3NlLWFkcw=="),'[id^="bn_bottom_fixed_"]',"#pmadv"],adBlockFinland:[".mainostila",e("LnNwb25zb3JpdA=="),".ylamainos",e("YVtocmVmKj0iL2NsaWNrdGhyZ2guYXNwPyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hcHAucmVhZHBlYWsuY29tL2FkcyJd")],adBlockPersian:["#navbar_notice_50",".kadr",'TABLE[width="140px"]',"#divAgahi",e("YVtocmVmXj0iaHR0cDovL2cxLnYuZndtcm0ubmV0L2FkLyJd")],adBlockWarningRemoval:["#adblock-honeypot",".adblocker-root",".wp_adblock_detect",e("LmhlYWRlci1ibG9ja2VkLWFk"),e("I2FkX2Jsb2NrZXI=")],adGuardAnnoyances:[".hs-sosyal","#cookieconsentdiv",'div[class^="app_gdpr"]',".as-oil",'[data-cypress="soft-push-notification-modal"]'],adGuardBase:[".BetterJsPopOverlay",e("I2FkXzMwMFgyNTA="),e("I2Jhbm5lcmZsb2F0MjI="),e("I2NhbXBhaWduLWJhbm5lcg=="),e("I0FkLUNvbnRlbnQ=")],adGuardChinese:[e("LlppX2FkX2FfSA=="),e("YVtocmVmKj0iLmh0aGJldDM0LmNvbSJd"),"#widget-quan",e("YVtocmVmKj0iLzg0OTkyMDIwLnh5eiJd"),e("YVtocmVmKj0iLjE5NTZobC5jb20vIl0=")],adGuardFrench:["#pavePub",e("LmFkLWRlc2t0b3AtcmVjdGFuZ2xl"),".mobile_adhesion",".widgetadv",e("LmFkc19iYW4=")],adGuardGerman:['aside[data-portal-id="leaderboard"]'],adGuardJapanese:["#kauli_yad_1",e("YVtocmVmXj0iaHR0cDovL2FkMi50cmFmZmljZ2F0ZS5uZXQvIl0="),e("Ll9wb3BJbl9pbmZpbml0ZV9hZA=="),e("LmFkZ29vZ2xl"),e("Ll9faXNib29zdFJldHVybkFk")],adGuardMobile:[e("YW1wLWF1dG8tYWRz"),e("LmFtcF9hZA=="),'amp-embed[type="24smi"]',"#mgid_iframe1",e("I2FkX2ludmlld19hcmVh")],adGuardRussian:[e("YVtocmVmXj0iaHR0cHM6Ly9hZC5sZXRtZWFkcy5jb20vIl0="),e("LnJlY2xhbWE="),'div[id^="smi2adblock"]',e("ZGl2W2lkXj0iQWRGb3hfYmFubmVyXyJd"),"#psyduckpockeball"],adGuardSocial:[e("YVtocmVmXj0iLy93d3cuc3R1bWJsZXVwb24uY29tL3N1Ym1pdD91cmw9Il0="),e("YVtocmVmXj0iLy90ZWxlZ3JhbS5tZS9zaGFyZS91cmw/Il0="),".etsy-tweet","#inlineShare",".popup-social"],adGuardSpanishPortuguese:["#barraPublicidade","#Publicidade","#publiEspecial","#queTooltip",".cnt-publi"],adGuardTrackingProtection:["#qoo-counter",e("YVtocmVmXj0iaHR0cDovL2NsaWNrLmhvdGxvZy5ydS8iXQ=="),e("YVtocmVmXj0iaHR0cDovL2hpdGNvdW50ZXIucnUvdG9wL3N0YXQucGhwIl0="),e("YVtocmVmXj0iaHR0cDovL3RvcC5tYWlsLnJ1L2p1bXAiXQ=="),"#top100counter"],adGuardTurkish:["#backkapat",e("I3Jla2xhbWk="),e("YVtocmVmXj0iaHR0cDovL2Fkc2Vydi5vbnRlay5jb20udHIvIl0="),e("YVtocmVmXj0iaHR0cDovL2l6bGVuemkuY29tL2NhbXBhaWduLyJd"),e("YVtocmVmXj0iaHR0cDovL3d3dy5pbnN0YWxsYWRzLm5ldC8iXQ==")],bulgarian:[e("dGQjZnJlZW5ldF90YWJsZV9hZHM="),"#ea_intext_div",".lapni-pop-over","#xenium_hot_offers"],easyList:[".yb-floorad",e("LndpZGdldF9wb19hZHNfd2lkZ2V0"),e("LnRyYWZmaWNqdW5reS1hZA=="),".textad_headline",e("LnNwb25zb3JlZC10ZXh0LWxpbmtz")],easyListChina:[e("LmFwcGd1aWRlLXdyYXBbb25jbGljayo9ImJjZWJvcy5jb20iXQ=="),e("LmZyb250cGFnZUFkdk0="),"#taotaole","#aafoot.top_box",".cfa_popup"],easyListCookie:[".ezmob-footer",".cc-CookieWarning","[data-cookie-number]",e("LmF3LWNvb2tpZS1iYW5uZXI="),".sygnal24-gdpr-modal-wrap"],easyListCzechSlovak:["#onlajny-stickers",e("I3Jla2xhbW5pLWJveA=="),e("LnJla2xhbWEtbWVnYWJvYXJk"),".sklik",e("W2lkXj0ic2tsaWtSZWtsYW1hIl0=")],easyListDutch:[e("I2FkdmVydGVudGll"),e("I3ZpcEFkbWFya3RCYW5uZXJCbG9jaw=="),".adstekst",e("YVtocmVmXj0iaHR0cHM6Ly94bHR1YmUubmwvY2xpY2svIl0="),"#semilo-lrectangle"],easyListGermany:["#SSpotIMPopSlider",e("LnNwb25zb3JsaW5rZ3J1ZW4="),e("I3dlcmJ1bmdza3k="),e("I3Jla2xhbWUtcmVjaHRzLW1pdHRl"),e("YVtocmVmXj0iaHR0cHM6Ly9iZDc0Mi5jb20vIl0=")],easyListItaly:[e("LmJveF9hZHZfYW5udW5jaQ=="),".sb-box-pubbliredazionale",e("YVtocmVmXj0iaHR0cDovL2FmZmlsaWF6aW9uaWFkcy5zbmFpLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZHNlcnZlci5odG1sLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZmZpbGlhemlvbmlhZHMuc25haS5pdC8iXQ==")],easyListLithuania:[e("LnJla2xhbW9zX3RhcnBhcw=="),e("LnJla2xhbW9zX251b3JvZG9z"),e("aW1nW2FsdD0iUmVrbGFtaW5pcyBza3lkZWxpcyJd"),e("aW1nW2FsdD0iRGVkaWt1b3RpLmx0IHNlcnZlcmlhaSJd"),e("aW1nW2FsdD0iSG9zdGluZ2FzIFNlcnZlcmlhaS5sdCJd")],estonian:[e("QVtocmVmKj0iaHR0cDovL3BheTRyZXN1bHRzMjQuZXUiXQ==")],fanboyAnnoyances:["#ac-lre-player",".navigate-to-top","#subscribe_popup",".newsletter_holder","#back-top"],fanboyAntiFacebook:[".util-bar-module-firefly-visible"],fanboyEnhancedTrackers:[".open.pushModal","#issuem-leaky-paywall-articles-zero-remaining-nag","#sovrn_container",'div[class$="-hide"][zoompage-fontsize][style="display: block;"]',".BlockNag__Card"],fanboySocial:["#FollowUs","#meteored_share","#social_follow",".article-sharer",".community__social-desc"],frellwitSwedish:[e("YVtocmVmKj0iY2FzaW5vcHJvLnNlIl1bdGFyZ2V0PSJfYmxhbmsiXQ=="),e("YVtocmVmKj0iZG9rdG9yLXNlLm9uZWxpbmsubWUiXQ=="),"article.category-samarbete",e("ZGl2LmhvbGlkQWRz"),"ul.adsmodern"],greekAdBlock:[e("QVtocmVmKj0iYWRtYW4ub3RlbmV0LmdyL2NsaWNrPyJd"),e("QVtocmVmKj0iaHR0cDovL2F4aWFiYW5uZXJzLmV4b2R1cy5nci8iXQ=="),e("QVtocmVmKj0iaHR0cDovL2ludGVyYWN0aXZlLmZvcnRobmV0LmdyL2NsaWNrPyJd"),"DIV.agores300","TABLE.advright"],hungarian:["#cemp_doboz",".optimonk-iframe-container",e("LmFkX19tYWlu"),e("W2NsYXNzKj0iR29vZ2xlQWRzIl0="),"#hirdetesek_box"],iDontCareAboutCookies:['.alert-info[data-block-track*="CookieNotice"]',".ModuleTemplateCookieIndicator",".o--cookies--container","#cookies-policy-sticky","#stickyCookieBar"],icelandicAbp:[e("QVtocmVmXj0iL2ZyYW1ld29yay9yZXNvdXJjZXMvZm9ybXMvYWRzLmFzcHgiXQ==")],latvian:[e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMjBweDsgaGVpZ2h0OiA0MHB4OyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7Il0="),e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4OHB4OyBoZWlnaHQ6IDMxcHg7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsiXQ==")],listKr:[e("YVtocmVmKj0iLy9hZC5wbGFuYnBsdXMuY28ua3IvIl0="),e("I2xpdmVyZUFkV3JhcHBlcg=="),e("YVtocmVmKj0iLy9hZHYuaW1hZHJlcC5jby5rci8iXQ=="),e("aW5zLmZhc3R2aWV3LWFk"),".revenue_unit_item.dable"],listeAr:[e("LmdlbWluaUxCMUFk"),".right-and-left-sponsers",e("YVtocmVmKj0iLmFmbGFtLmluZm8iXQ=="),e("YVtocmVmKj0iYm9vcmFxLm9yZyJd"),e("YVtocmVmKj0iZHViaXp6bGUuY29tL2FyLz91dG1fc291cmNlPSJd")],listeFr:[e("YVtocmVmXj0iaHR0cDovL3Byb21vLnZhZG9yLmNvbS8iXQ=="),e("I2FkY29udGFpbmVyX3JlY2hlcmNoZQ=="),e("YVtocmVmKj0id2Vib3JhbWEuZnIvZmNnaS1iaW4vIl0="),".site-pub-interstitiel",'div[id^="crt-"][data-criteo-id]'],officialPolish:["#ceneo-placeholder-ceneo-12",e("W2hyZWZePSJodHRwczovL2FmZi5zZW5kaHViLnBsLyJd"),e("YVtocmVmXj0iaHR0cDovL2Fkdm1hbmFnZXIudGVjaGZ1bi5wbC9yZWRpcmVjdC8iXQ=="),e("YVtocmVmXj0iaHR0cDovL3d3dy50cml6ZXIucGwvP3V0bV9zb3VyY2UiXQ=="),e("ZGl2I3NrYXBpZWNfYWQ=")],ro:[e("YVtocmVmXj0iLy9hZmZ0cmsuYWx0ZXgucm8vQ291bnRlci9DbGljayJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ibGFja2ZyaWRheXNhbGVzLnJvL3Ryay9zaG9wLyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ldmVudC4ycGVyZm9ybWFudC5jb20vZXZlbnRzL2NsaWNrIl0="),e("YVtocmVmXj0iaHR0cHM6Ly9sLnByb2ZpdHNoYXJlLnJvLyJd"),'a[href^="/url/"]'],ruAd:[e("YVtocmVmKj0iLy9mZWJyYXJlLnJ1LyJd"),e("YVtocmVmKj0iLy91dGltZy5ydS8iXQ=="),e("YVtocmVmKj0iOi8vY2hpa2lkaWtpLnJ1Il0="),"#pgeldiz",".yandex-rtb-block"],thaiAds:["a[href*=macau-uta-popup]",e("I2Fkcy1nb29nbGUtbWlkZGxlX3JlY3RhbmdsZS1ncm91cA=="),e("LmFkczMwMHM="),".bumq",".img-kosana"],webAnnoyancesUltralist:["#mod-social-share-2","#social-tools",e("LmN0cGwtZnVsbGJhbm5lcg=="),".zergnet-recommend",".yt.btn-link.btn-md.btn"]}}(),n=Object.keys(e),[4,bm((o=[]).concat.apply(o,n.map((function(t){return e[t]}))))]):[2,void 0];case 1:return r=i.sent(),t&&function(e,t){for(var n="DOM blockers debug:\n```",r=0,a=Object.keys(e);r<a.length;r++){var o=a[r];n+="\n".concat(o,":");for(var i=0,s=e[o];i<s.length;i++){var l=s[i];n+="\n ".concat(t[l]?"🚫":"➡️"," ").concat(l)}}console.log("".concat(n,"\n```"))}(e,r),(a=n.filter((function(t){var n=e[t];return Zp(n.map((function(e){return r[e]})))>.6*n.length}))).sort(),[2,a]}}))}))},fontPreferences:function(){return e=function(e,t){for(var n={},r={},a=0,o=Object.keys(_m);a<o.length;a++){var i=o[a],s=_m[i],l=s[0],c=void 0===l?{}:l,u=s[1],d=void 0===u?"mmMwWLliI0fiflO&1":u,p=e.createElement("span");p.textContent=d,p.style.whiteSpace="nowrap";for(var m=0,f=Object.keys(c);m<f.length;m++){var h=f[m],y=c[h];void 0!==y&&(p.style[h]=y)}n[i]=p,t.appendChild(e.createElement("br")),t.appendChild(p)}for(var g=0,b=Object.keys(_m);g<b.length;g++)r[i=b[g]]=n[i].getBoundingClientRect().width;return r},void 0===t&&(t=4e3),im((function(n,r){var a=r.document,o=a.body,i=o.style;i.width="".concat(t,"px"),i.webkitTextSizeAdjust=i.textSizeAdjust="none",em()?o.style.zoom="".concat(1/r.devicePixelRatio):tm()&&(o.style.zoom="reset");var s=a.createElement("div");return s.textContent=Rp([],Array(t/20|0)).map((function(){return"word"})).join(" "),o.appendChild(s),e(a,o)}),'<!doctype html><html><head><meta name="viewport" content="width=device-width, initial-scale=1">');var e,t},audio:function(){var e=window,t=e.OfflineAudioContext||e.webkitOfflineAudioContext;if(!t)return-2;if(tm()&&!nm()&&!function(){var e=window;return Zp(["DOMRectList"in e,"RTCPeerConnectionIceEvent"in e,"SVGGeometryElement"in e,"ontransitioncancel"in e])>=3}())return-1;var n=new t(1,5e3,44100),r=n.createOscillator();r.type="triangle",r.frequency.value=1e4;var a=n.createDynamicsCompressor();a.threshold.value=-50,a.knee.value=40,a.ratio.value=12,a.attack.value=0,a.release.value=.25,r.connect(a),a.connect(n.destination),r.start(0);var o=function(e){var t=3,n=500,r=500,a=5e3,o=function(){},i=new Promise((function(i,s){var l=!1,c=0,u=0;e.oncomplete=function(e){return i(e.renderedBuffer)};var d=function(){setTimeout((function(){return s(om("timeout"))}),Math.min(r,u+a-Date.now()))},p=function(){try{var r=e.startRendering();switch(Op(r)&&Hp(r),e.state){case"running":u=Date.now(),l&&d();break;case"suspended":document.hidden||c++,l&&c>=t?s(om("suspended")):setTimeout(p,n)}}catch(a){s(a)}};p(),o=function(){l||(l=!0,u>0&&d())}}));return[i,o]}(n),i=o[0],s=o[1],l=i.then((function(e){return function(e){for(var t=0,n=0;n<e.length;++n)t+=Math.abs(e[n]);return t}(e.getChannelData(0).subarray(4500))}),(function(e){if("timeout"===e.name||"suspended"===e.name)return-3;throw e}));return Hp(l),function(){return s(),l}},screenFrame:function(){var e=this,t=hm();return function(){return Lp(e,0,void 0,(function(){var e,n;return Cp(this,(function(r){switch(r.label){case 0:return[4,t()];case 1:return e=r.sent(),[2,[(n=function(e){return null===e?null:Xp(e,10)})(e[0]),n(e[1]),n(e[2]),n(e[3])]]}}))}))}},osCpu:function(){return navigator.oscpu},languages:function(){var e=navigator,t=[],n=e.language||e.userLanguage||e.browserLanguage||e.systemLanguage;if(void 0!==n&&t.push([n]),Array.isArray(e.languages))em()&&function(){var e=window;return Zp([!("MediaSettingsRange"in e),"RTCEncodedAudioFrame"in e,""+e.Intl=="[object Intl]",""+e.Reflect=="[object Reflect]"])>=3}()||t.push(e.languages);else if("string"==typeof e.languages){var r=e.languages;r&&t.push(r.split(","))}return t},colorDepth:function(){return window.screen.colorDepth},deviceMemory:function(){return Kp(Gp(navigator.deviceMemory),void 0)},screenResolution:function(){var e=screen,t=function(e){return Kp(Up(e),null)},n=[t(e.width),t(e.height)];return n.sort().reverse(),n},hardwareConcurrency:function(){return Kp(Up(navigator.hardwareConcurrency),void 0)},timezone:function(){var e,t=null===(e=window.Intl)||void 0===e?void 0:e.DateTimeFormat;if(t){var n=(new t).resolvedOptions().timeZone;if(n)return n}var r=-function(){var e=(new Date).getFullYear();return Math.max(Gp(new Date(e,0,1).getTimezoneOffset()),Gp(new Date(e,6,1).getTimezoneOffset()))}();return"UTC".concat(r>=0?"+":"").concat(Math.abs(r))},sessionStorage:function(){try{return!!window.sessionStorage}catch{return!0}},localStorage:function(){try{return!!window.localStorage}catch{return!0}},indexedDB:function(){if(!(Qp()||(e=window,t=navigator,Zp(["msWriteProfilerMark"in e,"MSStream"in e,"msLaunchUri"in t,"msSaveBlob"in t])>=3&&!Qp())))try{return!!window.indexedDB}catch{return!0}var e,t},openDatabase:function(){return!!window.openDatabase},cpuClass:function(){return navigator.cpuClass},platform:function(){var e=navigator.platform;return"MacIntel"===e&&tm()&&!nm()?function(){if("iPad"===navigator.platform)return!0;var e=screen,t=e.width/e.height;return Zp(["MediaSource"in window,!!Element.prototype.webkitRequestFullscreen,t>.65&&t<1.53])>=2}()?"iPad":"iPhone":e},plugins:function(){var e=navigator.plugins;if(e){for(var t=[],n=0;n<e.length;++n){var r=e[n];if(r){for(var a=[],o=0;o<r.length;++o){var i=r[o];a.push({type:i.type,suffixes:i.suffixes})}t.push({name:r.name,description:r.description,mimeTypes:a})}}return t}},canvas:function(){var e,t,n=!1,r=function(){var e=document.createElement("canvas");return e.width=1,e.height=1,[e,e.getContext("2d")]}(),a=r[0],o=r[1];if(function(e,t){return!(!t||!e.toDataURL)}(a,o)){n=function(e){return e.rect(0,0,10,10),e.rect(2,2,6,6),!e.isPointInPath(5,5,"evenodd")}(o),function(e,t){e.width=240,e.height=60,t.textBaseline="alphabetic",t.fillStyle="#f60",t.fillRect(100,1,62,20),t.fillStyle="#069",t.font='11pt "Times New Roman"';var n="Cwm fjordbank gly ".concat("😃");t.fillText(n,2,15),t.fillStyle="rgba(102, 204, 0, 0.2)",t.font="18pt Arial",t.fillText(n,4,45)}(a,o);var i=dm(a);i!==dm(a)?e=t="unstable":(t=i,function(e,t){e.width=122,e.height=110,t.globalCompositeOperation="multiply";for(var n=0,r=[["#f2f",40,40],["#2ff",80,40],["#ff2",60,80]];n<r.length;n++){var a=r[n],o=a[0],i=a[1],s=a[2];t.fillStyle=o,t.beginPath(),t.arc(i,s,40,0,2*Math.PI,!0),t.closePath(),t.fill()}t.fillStyle="#f9c",t.arc(60,60,60,0,2*Math.PI,!0),t.arc(60,60,20,0,2*Math.PI,!0),t.fill("evenodd")}(a,o),e=dm(a))}else e=t="";return{winding:n,geometry:e,text:t}},touchSupport:function(){var e,t=navigator,n=0;void 0!==t.maxTouchPoints?n=Up(t.maxTouchPoints):void 0!==t.msMaxTouchPoints&&(n=t.msMaxTouchPoints);try{document.createEvent("TouchEvent"),e=!0}catch{e=!1}return{maxTouchPoints:n,touchEvent:e,touchStart:"ontouchstart"in window}},vendor:function(){return navigator.vendor||""},vendorFlavors:function(){for(var e=[],t=0,n=["chrome","safari","__crWeb","__gCrWeb","yandex","__yb","__ybro","__firefox__","__edgeTrackingPreventionStatistics","webkit","oprt","samsungAr","ucweb","UCShellJava","puffinDevice"];t<n.length;t++){var r=n[t],a=window[r];a&&"object"==typeof a&&e.push(r)}return e.sort()},cookiesEnabled:function(){var e=document;try{e.cookie="cookietest=1; SameSite=Strict;";var t=-1!==e.cookie.indexOf("cookietest=");return e.cookie="cookietest=1; SameSite=Strict; expires=Thu, 01-Jan-1970 00:00:01 GMT",t}catch{return!1}},colorGamut:function(){for(var e=0,t=["rec2020","p3","srgb"];e<t.length;e++){var n=t[e];if(matchMedia("(color-gamut: ".concat(n,")")).matches)return n}},invertedColors:function(){return!!wm("inverted")||!wm("none")&&void 0},forcedColors:function(){return!!km("active")||!km("none")&&void 0},monochrome:function(){if(matchMedia("(min-monochrome: 0)").matches){for(var e=0;e<=100;++e)if(matchMedia("(max-monochrome: ".concat(e,")")).matches)return e;throw new Error("Too high value")}},contrast:function(){return $m("no-preference")?0:$m("high")||$m("more")?1:$m("low")||$m("less")?-1:$m("forced")?10:void 0},reducedMotion:function(){return!!Sm("reduce")||!Sm("no-preference")&&void 0},hdr:function(){return!!Em("high")||!Em("standard")&&void 0},math:function(){var e,t=xm.acos||Pm,n=xm.acosh||Pm,r=xm.asin||Pm,a=xm.asinh||Pm,o=xm.atanh||Pm,i=xm.atan||Pm,s=xm.sin||Pm,l=xm.sinh||Pm,c=xm.cos||Pm,u=xm.cosh||Pm,d=xm.tan||Pm,p=xm.tanh||Pm,m=xm.exp||Pm,f=xm.expm1||Pm,h=xm.log1p||Pm;return{acos:t(.12312423423423424),acosh:n(1e308),acoshPf:(e=1e154,xm.log(e+xm.sqrt(e*e-1))),asin:r(.12312423423423424),asinh:a(1),asinhPf:function(e){return xm.log(e+xm.sqrt(e*e+1))}(1),atanh:o(.5),atanhPf:function(e){return xm.log((1+e)/(1-e))/2}(.5),atan:i(.5),sin:s(-1e300),sinh:l(1),sinhPf:function(e){return xm.exp(e)-1/xm.exp(e)/2}(1),cos:c(10.000000000123),cosh:u(1),coshPf:function(e){return(xm.exp(e)+1/xm.exp(e))/2}(1),tan:d(-1e300),tanh:p(1),tanhPf:function(e){return(xm.exp(2*e)-1)/(xm.exp(2*e)+1)}(1),exp:m(1),expm1:f(1),expm1Pf:function(e){return xm.exp(e)-1}(1),log1p:h(10),log1pPf:function(e){return xm.log(1+e)}(10),powPI:function(e){return xm.pow(xm.PI,e)}(-100)}},videoCard:function(){var e,t=document.createElement("canvas"),n=null!==(e=t.getContext("webgl"))&&void 0!==e?e:t.getContext("experimental-webgl");if(n&&"getExtension"in n){var r=n.getExtension("WEBGL_debug_renderer_info");if(r)return{vendor:(n.getParameter(r.UNMASKED_VENDOR_WEBGL)||"").toString(),renderer:(n.getParameter(r.UNMASKED_RENDERER_WEBGL)||"").toString()}}},pdfViewerEnabled:function(){return navigator.pdfViewerEnabled},architecture:function(){var e=new Float32Array(1),t=new Uint8Array(e.buffer);return e[0]=1/0,e[0]=e[0]-e[0],t[3]}};var Im="$ if upgrade to Pro: https://fpjs.dev/pro";function Tm(e){var t=function(e){if(am())return.4;if(tm())return nm()?.5:.3;var t=e.platform.value||"";return/^Win/.test(t)?.6:/^Mac/.test(t)?.5:.7}(e),n=function(e){return Xp(.99+.01*e,1e-4)}(t);return{score:t,comment:Im.replace(/\$/g,"".concat(n))}}function Lm(e){return JSON.stringify(e,(function(e,t){return t instanceof Error?function(e){var t;return Tp({name:e.name,message:e.message,stack:null===(t=e.stack)||void 0===t?void 0:t.split("\n")},e)}(t):t}),2)}function Cm(e){return function(e,t){t=t||0;var n,r=(e=e||"").length%16,a=e.length-r,o=[0,t],i=[0,t],s=[0,0],l=[0,0],c=[2277735313,289559509],u=[1291169091,658871167];for(n=0;n<a;n+=16)s=[255&e.charCodeAt(n+4)|(255&e.charCodeAt(n+5))<<8|(255&e.charCodeAt(n+6))<<16|(255&e.charCodeAt(n+7))<<24,255&e.charCodeAt(n)|(255&e.charCodeAt(n+1))<<8|(255&e.charCodeAt(n+2))<<16|(255&e.charCodeAt(n+3))<<24],l=[255&e.charCodeAt(n+12)|(255&e.charCodeAt(n+13))<<8|(255&e.charCodeAt(n+14))<<16|(255&e.charCodeAt(n+15))<<24,255&e.charCodeAt(n+8)|(255&e.charCodeAt(n+9))<<8|(255&e.charCodeAt(n+10))<<16|(255&e.charCodeAt(n+11))<<24],s=Dp(s=qp(s,c),31),o=Bp(o=Dp(o=Vp(o,s=qp(s,u)),27),i),o=Bp(qp(o,[0,5]),[0,1390208809]),l=Dp(l=qp(l,u),33),i=Bp(i=Dp(i=Vp(i,l=qp(l,c)),31),o),i=Bp(qp(i,[0,5]),[0,944331445]);switch(s=[0,0],l=[0,0],r){case 15:l=Vp(l,zp([0,e.charCodeAt(n+14)],48));case 14:l=Vp(l,zp([0,e.charCodeAt(n+13)],40));case 13:l=Vp(l,zp([0,e.charCodeAt(n+12)],32));case 12:l=Vp(l,zp([0,e.charCodeAt(n+11)],24));case 11:l=Vp(l,zp([0,e.charCodeAt(n+10)],16));case 10:l=Vp(l,zp([0,e.charCodeAt(n+9)],8));case 9:l=qp(l=Vp(l,[0,e.charCodeAt(n+8)]),u),i=Vp(i,l=qp(l=Dp(l,33),c));case 8:s=Vp(s,zp([0,e.charCodeAt(n+7)],56));case 7:s=Vp(s,zp([0,e.charCodeAt(n+6)],48));case 6:s=Vp(s,zp([0,e.charCodeAt(n+5)],40));case 5:s=Vp(s,zp([0,e.charCodeAt(n+4)],32));case 4:s=Vp(s,zp([0,e.charCodeAt(n+3)],24));case 3:s=Vp(s,zp([0,e.charCodeAt(n+2)],16));case 2:s=Vp(s,zp([0,e.charCodeAt(n+1)],8));case 1:s=qp(s=Vp(s,[0,e.charCodeAt(n)]),c),o=Vp(o,s=qp(s=Dp(s,31),u))}return o=Bp(o=Vp(o,[0,e.length]),i=Vp(i,[0,e.length])),i=Bp(i,o),o=Bp(o=Wp(o),i=Wp(i)),i=Bp(i,o),("00000000"+(o[0]>>>0).toString(16)).slice(-8)+("00000000"+(o[1]>>>0).toString(16)).slice(-8)+("00000000"+(i[0]>>>0).toString(16)).slice(-8)+("00000000"+(i[1]>>>0).toString(16)).slice(-8)}(function(e){for(var t="",n=0,r=Object.keys(e).sort();n<r.length;n++){var a=r[n],o=e[a],i=o.error?"error":JSON.stringify(o.value);t+="".concat(t?"|":"").concat(a.replace(/([:|\\])/g,"\\$1"),":").concat(i)}return t}(e))}function Rm(e){return void 0===e&&(e=50),function(e,t){void 0===t&&(t=1/0);var n=window.requestIdleCallback;return n?new Promise((function(e){return n.call(window,(function(){return e()}),{timeout:t})})):Np(Math.min(e,t))}(e,2*e)}function jm(e,t){var n=Date.now();return{get:function(r){return Lp(this,0,void 0,(function(){var a,o,i;return Cp(this,(function(s){switch(s.label){case 0:return a=Date.now(),[4,e()];case 1:return o=s.sent(),i=function(e){var t,n=Tm(e);return{get visitorId(){return void 0===t&&(t=Cm(this.components)),t},set visitorId(e){t=e},confidence:n,components:e,version:jp}}(o),(t||null!=r&&r.debug)&&console.log("Copy the text below to get the debug data:\n\n```\nversion: ".concat(i.version,"\nuserAgent: ").concat(navigator.userAgent,"\ntimeBetweenLoadAndGet: ").concat(a-n,"\nvisitorId: ").concat(i.visitorId,"\ncomponents: ").concat(Lm(o),"\n```")),[2,i]}}))}))}}}var Nm={load:function(e){var t=void 0===e?{}:e,n=t.delayFallback,r=t.debug,a=t.monitoring,o=void 0===a||a;return Lp(this,0,void 0,(function(){var e;return Cp(this,(function(a){switch(a.label){case 0:return o&&function(){if(!(window.__fpjs_d_m||Math.random()>=.001))try{var e=new XMLHttpRequest;e.open("get","https://m1.openfpcdn.io/fingerprintjs/v".concat(jp,"/npm-monitoring"),!0),e.send()}catch(t){console.error(t)}}(),[4,Rm(n)];case 1:return a.sent(),e=function(e){return Yp(Am,e,[])}({debug:r}),[2,jm(e,r)]}}))}))},hashComponents:Cm,componentsToDebugString:Lm};async function Om(){try{const e="object"==typeof Cypress,t="object"==typeof process&&"test"===Ip.NODE_ENV;return e||t?"a-mock-visitor-id":(await(await Nm.load()).get()).visitorId}catch(e){return console.error(e),{}}}async function Fm(){return new Promise((e=>{window.requestIdleCallback?requestIdleCallback((async()=>{const t=await Om();e(t)})):setTimeout((async()=>{const t=await Om();e(t)}),500)}))}const Mm=({env:e,kountAccountId:t,kountSessionId:n})=>{const r=(e=>"production"===e)(e)?"https://ssl.kaptcha.com":"https://tst.kaptcha.com",a=new URL(`${r}/collect/sdk`);a.searchParams.append("m",t),n&&a.searchParams.append("m",n);const o=document.createElement("script");return o.setAttribute("class","kaxsdc"),o.setAttribute("data-event","load"),o.setAttribute("type","text/javascript"),o.setAttribute("src",a.href),document.body.append(o),o};async function Hm({env:e,kountAccountId:t,kountSessionId:n}){return new Promise(((r,a)=>{const o=Mm({env:e,kountAccountId:t,kountSessionId:n});o.onload=()=>{const e=new ka.ClientSDK;e.setupCallback({"collect-begin":e=>{const{MercSessId:t}=e;r(t)}}),e.autoLoadEvents()},o.onerror=()=>{a(new Error("Error attempting to mount Kount script"))}}))}const Bm=()=>{const e=document.createElement("script");return e.src="https://cdn.rebilly.com/risk-data-collector/@latest/google-adsense.js",new Promise((t=>{e.onload=()=>{t(null===document.getElementById("fj2xFkdsoQIQna"))},e.onerror=()=>t(!0),document.head.appendChild(e)})).catch((()=>!0))};async function qm({env:e=null,kountAccountId:t=null,kountSessionId:n=null}={}){return async function({env:e=null,screen:t,navigator:n,kountAccountId:r=null,kountSessionId:a=null,getFingerprint:o,getFraudSessionId:i}){const{colorDepth:s,height:l,width:c}=t||{},{javaEnabled:u,language:d}=n||{};let p,m,f;try{[f,p,m]=await Promise.all([Bm(),null==o?void 0:o(),r?i({env:e,kountAccountId:r,kountSessionId:a}):void 0])}catch(h){console.error(h)}return{riskMetadata:{fingerprint:p||null,extraData:{kountFraudSessionId:m||null},browserData:{colorDepth:s||null,isJavaEnabled:u?u.call(n):null,language:d||null,screenHeight:l||null,screenWidth:c||null,timeZoneOffset:(new Date).getTimezoneOffset(),isAdBlockEnabled:f}}}}({env:e,screen:screen,navigator:navigator,kountAccountId:t,kountSessionId:n,getFingerprint:Fm,getFraudSessionId:Hm})}function Dm(){var e;const t={expressMethods:[],methods:[]};let n=lo.data.readyToPay;return(null==(e=lo.options)?void 0:e.payout)&&(n=lo.data.readyToPayout),null==n||n.forEach((e=>{e.metadata.isExpressMethod?t.expressMethods.push(e):t.methods.push(e)})),window.ApplePaySession||(t.expressMethods=t.expressMethods.filter((e=>{var t;return"Apple Pay"!==(null==(t=null==e?void 0:e.feature)?void 0:t.name)})),lo.loader.stopLoading({id:"applePay-express"})),t}class zm extends vc{}function Vm(e){return null==e?null:"string"==typeof e?Number.isNaN(parseFloat(e))?null:parseFloat(e):e}class Wm{constructor({maxQuantity:e=null,price:t=null}={}){this.maxQuantity=e||Number.MAX_SAFE_INTEGER,this.price=Vm(t)}}const Um=class e{constructor(t={}){switch(this.formula=t.formula??e.Formulas.fixedFee,t.formula){case e.Formulas.stairstep:case e.Formulas.tiered:case e.Formulas.volume:if(null==t.brackets)throw new Error("Invalid brackets.");this.brackets=t.brackets.map((e=>new Wm(e)));break;case e.Formulas.flatRate:this.price=Vm(t.price)??0,this.maxQuantity=t.maxQuantity??null;break;case e.Formulas.fixedFee:default:this.price=Vm(t.price)??0}}get isSimple(){return Object.values(e.SimpleFormulas).includes(this.formula)}get isBracket(){return Object.values(e.BracketFormulas).includes(this.formula)}toPayload(){return{...this,isSimple:this.isSimple,isBracket:this.isBracket}}};Um.SimpleFormulas={fixedFee:"fixed-fee",flatRate:"flat-rate"},Um.BracketFormulas={stairstep:"stairstep",tiered:"tiered",volume:"volume"},Um.Formulas={...Um.SimpleFormulas,...Um.BracketFormulas};let Gm=Um;class Km extends vc{constructor(e={}){super(e),this.pricing=new Gm(e.pricing||{})}toPayload(){return{...this,pricing:this.pricing.toPayload()}}}const Zm=[{apiName:"ach",name:"ACH",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/BankAccount.svg",summary:"ACH is a network used for processing transactions across the United States.",description:"ACH is a network used for processing transactions across the United States.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ach"}]},{apiName:"AdvCash",name:"AdvCash",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/AdvCash.svg",summary:"AdvCash is an online payment system offering prepaid cards for individuals and\nonline businesses.\n",description:"AdvCash is an online payment system offering prepaid cards for individuals and\nonline businesses.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AdvCash"}]},{apiName:"Aircash",name:"Aircash",landscapeLogo:null,portraitLogo:null,summary:"Aircash is a mobile payment wallet that allows customers to pay for goods and services using their mobile phone.\n",description:"Aircash is a mobile payment wallet that allows customers to pay for goods and services using their mobile phone.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Aircash"}]},{apiName:"Airpay",name:"Airpay",landscapeLogo:null,portraitLogo:null,summary:"Airpay is an e-wallet that elevates you to an easier and more convenient\nlifestyle with all in one services.\n",description:"Airpay is an e-wallet that elevates you to an easier and more convenient\nlifestyle with all in one services.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Airpay"}]},{apiName:"Alfa-click",name:"Alfa-click",landscapeLogo:null,portraitLogo:null,summary:"Alfa-click combines digital and physical payment experiences and is among the\nhighest ranking Russian private banks.\n",description:"Alfa-click combines digital and physical payment experiences and is among the\nhighest ranking Russian private banks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Alfa-click"}]},{apiName:"Alipay",name:"Alipay",landscapeLogo:null,portraitLogo:null,summary:"Alipay is the most popular e-wallet and payment platform in Asia. Millions of\ntransactions are processed each day in China.\n",description:"Alipay is the most popular e-wallet and payment platform in Asia. Millions of\ntransactions are processed each day in China.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Alipay"}]},{apiName:"AmazonPay",name:"AmazonPay",landscapeLogo:null,portraitLogo:null,summary:"The AmazonPay method.",description:"The AmazonPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AmazonPay"}]},{apiName:"Apple Pay",name:"Apple Pay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Applepay.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Applepay.svg",summary:"Apple Pay is a digital wallet that also allows users to make payments in\nperson using a one-step payment process.\n",description:"Apple Pay is a digital wallet that also allows users to make payments in\nperson using a one-step payment process.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Apple%20Pay"}]},{apiName:"AstroPay Card",name:"AstroPay Card",landscapeLogo:null,portraitLogo:null,summary:"AstroPay Card allows consumers to purchase online at international websites,\nusing the most effective local payment methods in local currency.\n",description:"AstroPay Card allows consumers to purchase online at international websites,\nusing the most effective local payment methods in local currency.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AstroPay%20Card"}]},{apiName:"AstroPay-GO",name:"AstroPay Go",landscapeLogo:null,portraitLogo:null,summary:"AstroPay allows consumers to purchase online at international websites, using\nthe most effective local payment methods in local currency.\n",description:"AstroPay allows consumers to purchase online at international websites, using\nthe most effective local payment methods in local currency.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AstroPay-GO"}]},{apiName:"Baloto",name:"Baloto",landscapeLogo:null,portraitLogo:null,summary:"Baloto is Colombia's largest lottery and payment service and is used by 80% of\nthe Colombian population.\n",description:"Baloto is Colombia's largest lottery and payment service and is used by 80% of\nthe Colombian population.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Baloto"}]},{apiName:"Bancontact-mobile",name:"Bancontact-mobile",landscapeLogo:null,portraitLogo:null,summary:"Bancontact mobile allows the shopper to complete a payment with the mobile\napp. installed on their device.\n",description:"Bancontact mobile allows the shopper to complete a payment with the mobile\napp. installed on their device.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bancontact-mobile"}]},{apiName:"Bancontact",name:"Bancontact",landscapeLogo:null,portraitLogo:null,summary:"Bancontact is a payment system offered by more than 80% of online Belgian\nbusinesses and functions like a regular card payment.\n",description:"Bancontact is a payment system offered by more than 80% of online Belgian\nbusinesses and functions like a regular card payment.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bancontact"}]},{apiName:"BankReferenced",name:"BankReferenced",landscapeLogo:null,portraitLogo:null,summary:"The BankReferenced method.",description:"The BankReferenced method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/BankReferenced"}]},{apiName:"BankSEND",name:"BankSEND",landscapeLogo:null,portraitLogo:null,summary:"With the BankSEND platform, customers pay with their online banking data using direct bank transfer.\n",description:"With the BankSEND platform, customers pay with their online banking data using direct bank transfer.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/BankSEND"}]},{apiName:"bank-transfer",name:"Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"A bank transfer is the direct, electronic transfer of funds from one bank\naccount to another.\n",description:"A bank transfer is the direct, electronic transfer of funds from one bank\naccount to another.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/bank-transfer"}]},{apiName:"Beeline",name:"Beeline",landscapeLogo:null,portraitLogo:null,summary:"Beeline offers a universal payment card and a mobile prepaid network system\nthat allows money transfers between Beeline subscribers.\n",description:"Beeline offers a universal payment card and a mobile prepaid network system\nthat allows money transfers between Beeline subscribers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Beeline"}]},{apiName:"Belfius-direct-net",name:"Belfius Direct Net",landscapeLogo:null,portraitLogo:null,summary:"Belfius is one of the leading online private banks in Belgium. They are used\nby 1 in 3 Belgians and have over 3.6 million customers.\n",description:"Belfius is one of the leading online private banks in Belgium. They are used\nby 1 in 3 Belgians and have over 3.6 million customers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Belfius-direct-net"}]},{apiName:"bitcoin",name:"Bitcoin",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Bitcoin.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Bitcoin.svg",summary:"Bitcoin payment method provides a borderless payment network and a seamless\ntransfer of bitcoins from anywhere in the world through any online devices.\n",description:"Bitcoin payment method provides a borderless payment network and a seamless\ntransfer of bitcoins from anywhere in the world through any online devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/bitcoin"}]},{apiName:"Bizum",name:"Bizum",landscapeLogo:null,portraitLogo:null,summary:"Bizum is the immediate, fast, convenient and universal mobile payment solution promoted by Spanish banks.",description:"Bizum is the immediate, fast, convenient and universal mobile payment solution promoted by Spanish banks.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bizum"}]},{apiName:"Blik",name:"Blik",landscapeLogo:null,portraitLogo:null,summary:"Blik is a Polish payment system that allows users to make instant payments and\nwithdraw cash using a mobile banking app.\n",description:"Blik is a Polish payment system that allows users to make instant payments and\nwithdraw cash using a mobile banking app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Blik"}]},{apiName:"Boleto",name:"Boleto",landscapeLogo:null,portraitLogo:null,summary:"Boleto is Brazil's most popular cash-based payment method. It's the only\npayment option available for 35% of Brazillian consumers without a bank\naccount.\n",description:"Boleto is Brazil's most popular cash-based payment method. It's the only\npayment option available for 35% of Brazillian consumers without a bank\naccount.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Boleto"}]},{apiName:"CASHlib",name:"CASHlib",landscapeLogo:null,portraitLogo:null,summary:"CASHlib is a voucher based payment method that allows you to make online\npayments without the need of a credit or debit card.\n",description:"CASHlib is a voucher based payment method that allows you to make online\npayments without the need of a credit or debit card.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CASHlib"}]},{apiName:"CCAvenue",name:"CCAvenue",landscapeLogo:"https://app.rebilly.com/static/payment-methods/portrait/PaymentCard.svg",portraitLogo:null,summary:"CCAvenue Checkout offers a smooth, fast and frictionless buying experience.\n",description:"CCAvenue Checkout offers a smooth, fast and frictionless buying experience.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CCAvenue"}]},{apiName:"CODVoucher",name:"CODVoucher",landscapeLogo:null,portraitLogo:null,summary:"CODVoucher offers a digital voucher that the customer can scan at an\nauthorized location and pay with cash.\n",description:"CODVoucher offers a digital voucher that the customer can scan at an\nauthorized location and pay with cash.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CODVoucher"}]},{apiName:"cash",name:"Cash",landscapeLogo:null,portraitLogo:null,summary:"Cash is money in a physical form like coins or notes.",description:"Cash is money in a physical form like coins or notes.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cash"}]},{apiName:"cash-deposit",name:"Cash Deposit",landscapeLogo:null,portraitLogo:null,summary:"A cash deposit is money put into a bank account in the form of cash, checks,\nor bank transfers.\n",description:"A cash deposit is money put into a bank account in the form of cash, checks,\nor bank transfers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cash-deposit"}]},{apiName:"CashToCode",name:"CashToCode",landscapeLogo:null,portraitLogo:null,summary:"CashToCode is an instant cash payment service that does not require a bank\naccount or credit card.\n",description:"CashToCode is an instant cash payment service that does not require a bank\naccount or credit card.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CashToCode"}]},{apiName:"Cashterminal",name:"Cash Terminal",landscapeLogo:null,portraitLogo:null,summary:"A Bulgarian based service, which provides the ability to pay in cash and in real time.\n",description:"A Bulgarian based service, which provides the ability to pay in cash and in real time.\n",countries:{mode:"subset",values:["BG"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Cashterminal"}]},{apiName:"check",name:"Check",landscapeLogo:null,portraitLogo:null,summary:"Checks are physical documents that direct a bank to pay a specific amount of\nmoney to the recipient of the check.\n",description:"Checks are physical documents that direct a bank to pay a specific amount of\nmoney to the recipient of the check.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/check"}]},{apiName:"China UnionPay",name:"China UnionPay",landscapeLogo:null,portraitLogo:null,summary:"China UnionPay is the largest card scheme in China while also offering mobile\nand online payments. China UnionPay has over 7 billion cards in use and is\nconnected to all the ATMs across the country.\n",description:"China UnionPay is the largest card scheme in China while also offering mobile\nand online payments. China UnionPay has over 7 billion cards in use and is\nconnected to all the ATMs across the country.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/China%20UnionPay"}]},{apiName:"Conekta-oxxo",name:"Conekta OXXO",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/ConektaOxxo.svg",portraitLogo:null,summary:"Conekta OXXO Pay allows customers to purchase online or instore with a\ncash-based voucher. 30% of transactions in Mexico are with OXXO and they offer\nreal-time payment confirmation.\n",description:"Conekta OXXO Pay allows customers to purchase online or instore with a\ncash-based voucher. 30% of transactions in Mexico are with OXXO and they offer\nreal-time payment confirmation.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Conekta-oxxo"}]},{apiName:"Conekta-spei",name:"Conekta SPEI",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/ConektaOxxo.svg",portraitLogo:null,summary:"Conekta SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",description:"Conekta SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Conekta-spei"}]},{apiName:"cryptocurrency",name:"Cryptocurrency",landscapeLogo:null,portraitLogo:null,summary:"Cryptocurrency is a decentralized, digital currency based on blockchain\ntechnology which makes it nearly impossible to counterfeit or double-spend.\n",description:"Cryptocurrency is a decentralized, digital currency based on blockchain\ntechnology which makes it nearly impossible to counterfeit or double-spend.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cryptocurrency"}]},{apiName:"Cupon-de-pagos",name:"Cupon de Pagos",landscapeLogo:null,portraitLogo:null,summary:"The Cupon de Pagos method.",description:"The Cupon de Pagos method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Cupon-de-pagos"}]},{apiName:"CyberSource",name:"CyberSource",landscapeLogo:null,portraitLogo:null,summary:"CyberSource ia an e-commerce credit card payment system that allows customers\nto process online payments.\n",description:"CyberSource ia an e-commerce credit card payment system that allows customers\nto process online payments.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CyberSource"}]},{apiName:"Dimoco-pay-smart",name:"Dimoco pay smart",landscapeLogo:null,portraitLogo:null,summary:"The Dimoco pay smart method.\n",description:"The Dimoco pay smart method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Dimoco-pay-smart"}]},{apiName:"Directa24Card",name:"Directa24Card",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Directa24Card.svg",portraitLogo:null,summary:"Directa24 was formerly known as Astropay and specialized in Latin American local payment methods. They have expanded to include other emerging markets.\n",description:"Directa24 was formerly known as Astropay and specialized in Latin American local payment methods. They have expanded to include other emerging markets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Directa24Card"}]},{apiName:"domestic-cards",name:"Domestic Cards",landscapeLogo:null,portraitLogo:null,summary:"The Domestic Cards method.",description:"The Domestic Cards method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/domestic-cards"}]},{apiName:"EPS",name:"EPS",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/EPS.svg",portraitLogo:null,summary:"EPS is an online transfer payment method accepted by 80% of all online\nbusinesses in Austria.\n",description:"EPS is an online transfer payment method accepted by 80% of all online\nbusinesses in Austria.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/EPS"}]},{apiName:"e-wallet",name:"eWallet",landscapeLogo:null,portraitLogo:null,summary:"An e-Wallet is an electronic system that securely stores payment information\nthat allows for quick and easy digital transactions.\n",description:"An e-Wallet is an electronic system that securely stores payment information\nthat allows for quick and easy digital transactions.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/e-wallet"}]},{apiName:"eZeeWallet",name:"eZeeWallet",landscapeLogo:null,portraitLogo:null,summary:"eZeeWallet is a digital wallet that offers secure, customer-focused payment services that make paying\nand getting paid simple and hassle-free.\n",description:"eZeeWallet is a digital wallet that offers secure, customer-focused payment services that make paying\nand getting paid simple and hassle-free.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/eZeeWallet"}]},{apiName:"echeck",name:"eCheck",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Echeck.svg",portraitLogo:null,summary:"An eCheck is a digital version of a traditional paper check.",description:"An eCheck is a digital version of a traditional paper check.",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/echeck"}]},{apiName:"ecoPayz",name:"ecoPayz",landscapeLogo:null,portraitLogo:null,summary:"ecoPAYZ is one of the oldest e-wallets and allows its customers to receive,\nsend, and spend money worldwide all from one online account.\n",description:"ecoPAYZ is one of the oldest e-wallets and allows its customers to receive,\nsend, and spend money worldwide all from one online account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ecoPayz"}]},{apiName:"ecoVoucher",name:"ecoVoucher",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Ecovoucher.svg",portraitLogo:null,summary:"ecoVoucher is offered by ecoPayz and is a prepaid payment method that allows\ncustomers to pay online securely.\n",description:"ecoVoucher is offered by ecoPayz and is a prepaid payment method that allows\ncustomers to pay online securely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ecoVoucher"}]},{apiName:"Efecty",name:"Efecty",landscapeLogo:null,portraitLogo:null,summary:"Efecty is a Colombian-based offline cash payment voucher option. It is one of\nthe most popular payment methods in Colombia to pay utility bills and online\npurchases.\n",description:"Efecty is a Colombian-based offline cash payment voucher option. It is one of\nthe most popular payment methods in Colombia to pay utility bills and online\npurchases.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Efecty"}]},{apiName:"Ethereum",name:"Ethereum",landscapeLogo:null,portraitLogo:null,summary:"Ethereum is a decentralizaed blockchain platform that offers open access to\ndigital money and data-friendly services. It is the second largest\ncryptocurrency in the market after Bitcoin.\n",description:"Ethereum is a decentralizaed blockchain platform that offers open access to\ndigital money and data-friendly services. It is the second largest\ncryptocurrency in the market after Bitcoin.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Ethereum"}]},{apiName:"FasterPay",name:"FasterPay",landscapeLogo:null,portraitLogo:null,summary:"The FasterPay method\n",description:"The FasterPay method\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/FasterPay"}]},{apiName:"Flexepin",name:"Flexepin",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Flexepin.svg",portraitLogo:null,summary:"Flexepin is owned and operated by FlexeWallet and their vouchers are issued\nunder an Australian Financial Services License.\n",description:"Flexepin is owned and operated by FlexeWallet and their vouchers are issued\nunder an Australian Financial Services License.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Flexepin"}]},{apiName:"Giropay",name:"Giropay",landscapeLogo:null,portraitLogo:null,summary:"Giropay is an online payment method offered by more than 1,500 banks in\nGermany. Giropay uses real-time bank transfers and thier payments are 100%\nguaranteed.\n",description:"Giropay is an online payment method offered by more than 1,500 banks in\nGermany. Giropay uses real-time bank transfers and thier payments are 100%\nguaranteed.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Giropay"}]},{apiName:"Google Pay",name:"Google Pay",landscapeLogo:null,portraitLogo:null,summary:"Google Pay enables customers to pay with any payment method that is saved to\ntheir Google account.\n",description:"Google Pay enables customers to pay with any payment method that is saved to\ntheir Google account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Google%20Pay"}]},{apiName:"Gpaysafe",name:"Gpaysafe",landscapeLogo:null,portraitLogo:null,summary:"Gpaysafe allows merchants to do business globally with a single API solution.",description:"Gpaysafe allows merchants to do business globally with a single API solution.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Gpaysafe"}]},{apiName:"iDEAL",name:"iDEAL",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/iDEAL.svg",summary:"iDEAL allows customers to complete transactions online using their bank\ncredentials. It is the most popular payment method in the Netherlands with a\nuse of nearly 55%.\n",description:"iDEAL allows customers to complete transactions online using their bank\ncredentials. It is the most popular payment method in the Netherlands with a\nuse of nearly 55%.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/iDEAL"}]},{apiName:"iDebit",name:"iDebit",landscapeLogo:null,portraitLogo:null,summary:"iDebit is an online banking based payment method made available to consumers\nin Canada, connecting them to secure, real-time payments without a credit\ncard.\n",description:"iDebit is an online banking based payment method made available to consumers\nin Canada, connecting them to secure, real-time payments without a credit\ncard.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/iDebit"}]},{apiName:"ING-homepay",name:"ING Homepay",landscapeLogo:null,portraitLogo:null,summary:"ING Homepay is an online payment method that allows payments over online\nbanking with the Belgian ING branch.\n",description:"ING Homepay is an online payment method that allows payments over online\nbanking with the Belgian ING branch.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ING-homepay"}]},{apiName:"INOVAPAY-pin",name:"INOVAPAY Pin",landscapeLogo:null,portraitLogo:null,summary:"The INOVAPAY Pin method.",description:"The INOVAPAY Pin method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/INOVAPAY-pin"}]},{apiName:"INOVAPAY-wallet",name:"INOVAPAY Wallet",landscapeLogo:null,portraitLogo:null,summary:"INOVAPAY Wallet is an international e-money transfer service used to transfer\nmoney to and from merchants.\n",description:"INOVAPAY Wallet is an international e-money transfer service used to transfer\nmoney to and from merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/INOVAPAY-wallet"}]},{apiName:"InstaDebit",name:"InsataDebit",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Instadebit.svg",portraitLogo:null,summary:"The InstaDebit method.\n",description:"The InstaDebit method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/InstaDebit"}]},{apiName:"instant-bank-transfer",name:"Instant Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"Instant bank transfers allow consumers to make payments instantly. Both\nconsumers and merchants can receive and send funds immediately.\n",description:"Instant bank transfers allow consumers to make payments instantly. Both\nconsumers and merchants can receive and send funds immediately.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/instant-bank-transfer"}]},{apiName:"Instant Banking",name:"Instant Banking",landscapeLogo:null,portraitLogo:null,summary:"Instant Banking enables consumers to make payments to merchants using funds from their bank account.\n",description:"Instant Banking enables consumers to make payments to merchants using funds from their bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Instant%20Banking"}]},{apiName:"InstantPayments",name:"Instant Payments",landscapeLogo:null,portraitLogo:null,summary:"Instant Payments enables consumers to make payments to merchants using funds from their bank account.\n",description:"Instant Payments enables consumers to make payments to merchants using funds from their bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/InstantPayments"}]},{apiName:"Interac",name:"Interac",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac is a Canadian debit card system that allows funds to be sent via its\ne-Transfer service.\n",description:"Interac is a Canadian debit card system that allows funds to be sent via its\ne-Transfer service.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac"}]},{apiName:"Interac-eTransfer",name:"Interac eTransfer",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac eTransfer is a Canadian interbank network that allows merchants,\nfinancial institutions, and consumers to exchange electronic funds.\n",description:"Interac eTransfer is a Canadian interbank network that allows merchants,\nfinancial institutions, and consumers to exchange electronic funds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-eTransfer"}]},{apiName:"Interac-express-connect",name:"Interac Express Connect",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac Express Connect is an e-wallet that allows payments via multiple\nchannels including paypal, Interac e-transfer, and credit cards.\n",description:"Interac Express Connect is an e-wallet that allows payments via multiple\nchannels including paypal, Interac e-transfer, and credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-express-connect"}]},{apiName:"Interac-online",name:"Interac Online",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac Online is a payment option that enables consumers to shop online and\npay for goods through the RBC online banking account.\n",description:"Interac Online is a payment option that enables consumers to shop online and\npay for goods through the RBC online banking account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-online"}]},{apiName:"invoice",name:"Invoice",landscapeLogo:null,portraitLogo:null,summary:"An invoice is a document issued by a merchant to a consumer relating to a sale\ntransaction and can inform products, prices, quantities, or services.\n",description:"An invoice is a document issued by a merchant to a consumer relating to a sale\ntransaction and can inform products, prices, quantities, or services.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/invoice"}]},{apiName:"Jeton",name:"Jeton",landscapeLogo:null,portraitLogo:null,summary:"Jeton is a digital wallet that allows users to exchange money, make secure\nmoney transfers and purchases online.\n",description:"Jeton is a digital wallet that allows users to exchange money, make secure\nmoney transfers and purchases online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Jeton"}]},{apiName:"jpay",name:"Jpay",landscapeLogo:null,portraitLogo:null,summary:"The Jpay method.",description:"The Jpay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/jpay"}]},{apiName:"KNET",name:"KNET",landscapeLogo:null,portraitLogo:null,summary:"The KNET method.\n",description:"The KNET method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/KNET"}]},{apiName:"KakaoPay",name:"KakaoPay",landscapeLogo:null,portraitLogo:null,summary:"KakaoPay is a mobile payment and digital wallet service by Kakao and based in South Korea. It enables users make mobile payments and online transactions.\n",description:"KakaoPay is a mobile payment and digital wallet service by Kakao and based in South Korea. It enables users make mobile payments and online transactions.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/KakaoPay"}]},{apiName:"Khelocard",name:"Khelocard",landscapeLogo:null,portraitLogo:null,summary:"Khelo Card is a virtual prepaid card that allows for deposits and withdrawals\nand is accepted at partnered online sites around the world.\n",description:"Khelo Card is a virtual prepaid card that allows for deposits and withdrawals\nand is accepted at partnered online sites around the world.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Khelocard"}]},{apiName:"Klarna",name:"Klarna",landscapeLogo:null,portraitLogo:null,summary:"Klarna offers flexible payment plans that provides payment solutions for 85\nmillion customers and over 200,000 merchants across 19 markets.\n",description:"Klarna offers flexible payment plans that provides payment solutions for 85\nmillion customers and over 200,000 merchants across 19 markets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Klarna"}]},{apiName:"LPG-online",name:"LPG Online",landscapeLogo:null,portraitLogo:null,summary:"Latam Payment Group (LPG Online) specializes in the development of\ntechnological solutions for the operation of eCommerce in the Latin American\nmarket.\n",description:"Latam Payment Group (LPG Online) specializes in the development of\ntechnological solutions for the operation of eCommerce in the Latin American\nmarket.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/LPG-online"}]},{apiName:"LPG-payment-card",name:"LPG Payment Card",landscapeLogo:null,portraitLogo:null,summary:"The LPG Payment Card method.",description:"The LPG Payment Card method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/LPG-payment-card"}]},{apiName:"Litecoin",name:"Litecoin",landscapeLogo:null,portraitLogo:null,summary:"Litecoin is a peer-to-peer cryptocurrency and open-source software project.",description:"Litecoin is a peer-to-peer cryptocurrency and open-source software project.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Litecoin"}]},{apiName:"MTS",name:"MTS",landscapeLogo:null,portraitLogo:null,summary:"MTS allows users to make payments and money transfers from their e-wallet\nthrough a smartphone or MTS website.\n",description:"MTS allows users to make payments and money transfers from their e-wallet\nthrough a smartphone or MTS website.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MTS"}]},{apiName:"Matrix",name:"Matrix",landscapeLogo:null,portraitLogo:null,summary:"The Matrix method.",description:"The Matrix method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Matrix"}]},{apiName:"MaxiCash",name:"MaxiCash",landscapeLogo:null,portraitLogo:null,summary:"The MaxiCash method.",description:"The MaxiCash method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MaxiCash"}]},{apiName:"Megafon",name:"Megafon",landscapeLogo:null,portraitLogo:null,summary:"Megafon can be used to pay like a normal bank card online and in person at\nphysical locations.\n",description:"Megafon can be used to pay like a normal bank card online and in person at\nphysical locations.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Megafon"}]},{apiName:"MercadoPago",name:"MercadoPago",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/MercadoPago.svg",portraitLogo:null,summary:"Mercado hosts the largest online commerce and payments ecosystem in Latin America. They are present in 18 countries including: Argentina, Brazil, Mexico, Colombia, Chile, Venezuela and Peru. [www.mercadopago.com](https://www.mercadopago.com/)\n",description:"Mercado hosts the largest online commerce and payments ecosystem in Latin America. They are present in 18 countries including: Argentina, Brazil, Mexico, Colombia, Chile, Venezuela and Peru. [www.mercadopago.com](https://www.mercadopago.com/)\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MercadoPago"}]},{apiName:"MiFinity-eWallet",name:"MiFinity-eWallet",landscapeLogo:null,portraitLogo:null,summary:"MiFinity eWallet allows users to send money from their account directly to a\nrecipient's bank account.\n",description:"MiFinity eWallet allows users to send money from their account directly to a\nrecipient's bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MiFinity-eWallet"}]},{apiName:"miscellaneous",name:"Miscellaneous",landscapeLogo:null,portraitLogo:null,summary:"The miscellaneous method.\n",description:"The miscellaneous method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/miscellaneous"}]},{apiName:"MobilePay",name:"MobilePay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/MobilePay.svg",portraitLogo:null,summary:"Fast, easy payments are handled with a simple swipe, and all that’s needed to make them is a phone number.\n",description:"Fast, easy payments are handled with a simple swipe, and all that’s needed to make them is a phone number.\n",countries:{mode:"subset",values:["DK"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MobilePay"}]},{apiName:"MuchBetter",name:"MuchBetter",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Muchbetter.svg",portraitLogo:null,summary:"MuchBetter is a payment application with free transfers and multiple contact\npayment devices.\n",description:"MuchBetter is a payment application with free transfers and multiple contact\npayment devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MuchBetter"}]},{apiName:"Multibanco",name:"Multibanco",landscapeLogo:null,portraitLogo:null,summary:"The Multibanco method.\n",description:"The Multibanco method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Multibanco"}]},{apiName:"MyFatoorah",name:"MyFatoorah",landscapeLogo:null,portraitLogo:null,summary:"The MyFatoorah method.",description:"The MyFatoorah method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MyFatoorah"}]},{apiName:"Neosurf",name:"Neosurf",landscapeLogo:null,portraitLogo:null,summary:"Neosurf vouchers make online payments possible for thoe without bank accounts\nor credit cards.\n",description:"Neosurf vouchers make online payments possible for thoe without bank accounts\nor credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Neosurf"}]},{apiName:"Netbanking",name:"Netbanking",landscapeLogo:null,portraitLogo:null,summary:"Netbanking allows merchants to accept UPI transactions in India.",description:"Netbanking allows merchants to accept UPI transactions in India.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Netbanking"}]},{apiName:"Neteller",name:"Neteller",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Neteller.svg",portraitLogo:null,summary:"Neteller offers payments or withdrawals via bank transfer, member wires, money\ntransfers, and merchant sites.\n",description:"Neteller offers payments or withdrawals via bank transfer, member wires, money\ntransfers, and merchant sites.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Neteller"}]},{apiName:"Nordea-Solo",name:"Nordea Solo",landscapeLogo:null,portraitLogo:null,summary:"The Nordea Solo method.",description:"The Nordea Solo method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Nordea-Solo"}]},{apiName:"NordikCoin",name:"NordikCoin",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/NordikCoin.svg",summary:"NordikCoin customers can buy Bitcoin in under 5 minutes.",description:"NordikCoin is a crypto currency exchange that specializes in Bitcoin.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/NordikCoin"}]},{apiName:"OXXO",name:"OXXO",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/OXXO.svg",portraitLogo:null,summary:"OXXO is a Mexican convenience store chain with thousands of locations across\nLatin America. OXXO enables customers to pay bills and online purchases with\ncash.\n",description:"OXXO is a Mexican convenience store chain with thousands of locations across\nLatin America. OXXO enables customers to pay bills and online purchases with\ncash.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/OXXO"}]},{apiName:"OchaPay",name:"OchaPay",landscapeLogo:null,portraitLogo:null,summary:"The OchaPay method.",description:"The OchaPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/OchaPay"}]},{apiName:"online-bank-transfer",name:"Online Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"An online bank transfer is an electronic funds transfer of money from one bank\naccount to another.\n",description:"An online bank transfer is an electronic funds transfer of money from one bank\naccount to another.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/online-bank-transfer"}]},{apiName:"Onlineueberweisen",name:"OnlineUeberweisen",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Onlineueberweisen.svg",portraitLogo:null,summary:"OnlineUeberweisen is an online banking ePayment company located in Munich,\nGermany.\n",description:"OnlineUeberweisen is an online banking ePayment company located in Munich,\nGermany.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Onlineueberweisen"}]},{apiName:"oriental-wallet",name:"Oriental Wallet",landscapeLogo:null,portraitLogo:null,summary:"The Oriental Wallet method.",description:"The Oriental Wallet method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/oriental-wallet"}]},{apiName:"P24",name:"P24",landscapeLogo:null,portraitLogo:null,summary:"Przelewy24 (P24) is a payment method in Poland that allows the transfer of funds\nbetween more than 90,000 businesses and Polish banks.\n",description:"Przelewy24 (P24) is a payment method in Poland that allows the transfer of funds\nbetween more than 90,000 businesses and Polish banks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/P24"}]},{apiName:"PIX",name:"PIX",landscapeLogo:null,portraitLogo:null,summary:"PIX is a new payment method in Brazil for instant bank transfers and is\noperated by Brazilian banks, digital accounts, and wallets.\n",description:"PIX is a new payment method in Brazil for instant bank transfers and is\noperated by Brazilian banks, digital accounts, and wallets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PIX"}]},{apiName:"POLi",name:"POLi",landscapeLogo:null,portraitLogo:null,summary:"The POLi method.",description:"The POLi method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/POLi"}]},{apiName:"Pagadito",name:"Pagadito",landscapeLogo:null,portraitLogo:null,summary:"The Pagadito method.",description:"The Pagadito method.",countries:{mode:"subset",values:["BZ","CR","DO","GT","HN","NI","PA","PR","SV","US"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagadito"}]},{apiName:"PagoEffectivo",name:"PagoEffectivo",landscapeLogo:null,portraitLogo:null,summary:"The PagoEffectivo method.",description:"The PagoEffectivo method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PagoEffectivo"}]},{apiName:"Pagsmile-deposit-express",name:"Pagsmile Deposit Express",landscapeLogo:null,portraitLogo:null,summary:"Pagsmile Deposit Express is a money transfer system. After an online purchase,\nthe client can pay at a bank, ATM, or via internet banking.\n",description:"Pagsmile Deposit Express is a money transfer system. After an online purchase,\nthe client can pay at a bank, ATM, or via internet banking.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagsmile-deposit-express"}]},{apiName:"Pagsmile-lottery",name:"Pagsmile Lottery",landscapeLogo:null,portraitLogo:null,summary:"Pagsmile Lottery offers betting services as well as banking services such as\nwithdrawals, deposits, and bank checking.\n",description:"Pagsmile Lottery offers betting services as well as banking services such as\nwithdrawals, deposits, and bank checking.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagsmile-lottery"}]},{apiName:"Pay4Fun",name:"Pay4Fun",landscapeLogo:null,portraitLogo:null,summary:"Pay4Fun is a prepaid e-wallet that is connected to a bank account and can be\nused for deposits and withdrawls.\n",description:"Pay4Fun is a prepaid e-wallet that is connected to a bank account and can be\nused for deposits and withdrawls.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pay4Fun"}]},{apiName:"PayCash",name:"PayCash",landscapeLogo:null,portraitLogo:null,summary:"PayCash is an electronic payment platformfor making anonymous internet\npurchases with cash via kiosks.\n",description:"PayCash is an electronic payment platformfor making anonymous internet\npurchases with cash via kiosks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayCash"}]},{apiName:"PayRedeem",name:"PayRedeem",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/PayRedeem.svg",portraitLogo:null,summary:"PayRedeem eCards can be purchased online with credit/debit card, wire transfer, cryptocurrency, and over 200 alternative payment methods.\n",description:"PayRedeem eCards can be purchased online with credit/debit card, wire transfer, cryptocurrency, and over 200 alternative payment methods.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayRedeem"}]},{apiName:"PayTabs",name:"PayTabs",landscapeLogo:null,portraitLogo:null,summary:"The PayTabs method.",description:"The PayTabs method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayTabs"}]},{apiName:"PayU",name:"PayU",landscapeLogo:null,portraitLogo:null,summary:"The PayU method.",description:"The PayU method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayU"}]},{apiName:"PayULatam",name:"PayULatam",landscapeLogo:null,portraitLogo:null,summary:"The PayULatam method.",description:"The PayULatam method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayULatam"}]},{apiName:"Payco",name:"Payco",landscapeLogo:null,portraitLogo:null,summary:"Payco is one of the most popular forms of payment in South Korea and offers your shoppers convenience and familiarity when shopping online.\n",description:"Payco is one of the most popular forms of payment in South Korea and offers your shoppers convenience and familiarity when shopping online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Payco"}]},{apiName:"Payeer",name:"Payeer",landscapeLogo:null,portraitLogo:null,summary:"Payeer is an e-wallet designed to manage cryptocurrencies and fiat currencies\nwith a built-in payment exchange for systems such as MasterCard, VISA, or\nPaypal.\n",description:"Payeer is an e-wallet designed to manage cryptocurrencies and fiat currencies\nwith a built-in payment exchange for systems such as MasterCard, VISA, or\nPaypal.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Payeer"}]},{apiName:"PaymentAsia-crypto",name:"PaymentAsia-crypto",landscapeLogo:null,portraitLogo:null,summary:"The PaymentAsia-crypto method.",description:"The PaymentAsia-crypto method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PaymentAsia-crypto"}]},{apiName:"payment-card",name:"Payment Card",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/PaymentCard.svg",summary:"Payment cards are physical cards used for cashless payments and are issued by\nfinancial institiutions, such as banks, to a customer.\n",description:"Payment cards are physical cards used for cashless payments and are issued by\nfinancial institiutions, such as banks, to a customer.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/payment-card"}]},{apiName:"Paymero-QR",name:"Paymero-QR",landscapeLogo:null,portraitLogo:null,summary:"Paymero-QR helps online merchants to accept alternative methods such as\ncontactless payments through a QR code.\n",description:"Paymero-QR helps online merchants to accept alternative methods such as\ncontactless payments through a QR code.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paymero-QR"}]},{apiName:"Paymero",name:"Paymero",landscapeLogo:null,portraitLogo:null,summary:"Paymero is an instant bank transfer that allows customers to make UnionPay\nbank transfers to merchants.\n",description:"Paymero is an instant bank transfer that allows customers to make UnionPay\nbank transfers to merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paymero"}]},{apiName:"paypal",name:"Paypal",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Paypal.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Paypal.svg",summary:"Paypal is currently one of the most popular online payment processors, with\nover 300 million account holders.\n",description:"Paypal is currently one of the most popular online payment processors, with\nover 300 million account holders.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/paypal"}]},{apiName:"Paysafecard",name:"Paysafecard",landscapeLogo:null,portraitLogo:null,summary:"Paysafecard is a closed loop gift card that allows users to pay safely online.",description:"Paysafecard is a closed loop gift card that allows users to pay safely online.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paysafecard"}]},{apiName:"Paysafecash",name:"Paysafecash",landscapeLogo:null,portraitLogo:null,summary:"Paysafecash is an online payment method that allows users to make secure digital payments using cash.",description:"Paysafecash is an online payment method that allows users to make secure digital payments using cash.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paysafecash"}]},{apiName:"Perfect-money",name:"Perfect Money",landscapeLogo:null,portraitLogo:null,summary:"Perfect oney allows users to make instant payments and money transfers\nsecurely online through an online portal.\n",description:"Perfect oney allows users to make instant payments and money transfers\nsecurely online through an online portal.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Perfect-money"}]},{apiName:"phone",name:"Phone",landscapeLogo:null,portraitLogo:null,summary:"A phone is a telecommunications device that allows users to conduct a\nconversation.\n",description:"A phone is a telecommunications device that allows users to conduct a\nconversation.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/phone"}]},{apiName:"PhonePe",name:"PhonePe",landscapeLogo:null,portraitLogo:null,summary:"PhonePe is a digital wallet and online payments application that allows users\nto make instant money transfers with UPI.\n",description:"PhonePe is a digital wallet and online payments application that allows users\nto make instant money transfers with UPI.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PhonePe"}]},{apiName:"Piastrix",name:"Piastrix",landscapeLogo:null,portraitLogo:null,summary:"Piastrix is a Russian payment method that allows merchants to accept credit\ncard purchases via e-wallet.\n",description:"Piastrix is a Russian payment method that allows merchants to accept credit\ncard purchases via e-wallet.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Piastrix"}]},{apiName:"PinPay",name:"PinPay",landscapeLogo:null,portraitLogo:null,summary:"The PinPay method.",description:"The PinPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PinPay"}]},{apiName:"QIWI",name:"QIWI",landscapeLogo:null,portraitLogo:null,summary:"QIWI is an e-wallet that allows users to transfer money, receive payments, and\nhas over 149,000 kiosks and terminals.\n",description:"QIWI is an e-wallet that allows users to transfer money, receive payments, and\nhas over 149,000 kiosks and terminals.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QIWI"}]},{apiName:"QPay",name:"QPay",landscapeLogo:null,portraitLogo:null,summary:"The QPay method.\n",description:"The QPay method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QPay"}]},{apiName:"QQPay",name:"QQPay",landscapeLogo:null,portraitLogo:null,summary:"QQPay is an e-wallet that allows users to pay for online services quickly an\nsecurely.\n",description:"QQPay is an e-wallet that allows users to pay for online services quickly an\nsecurely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QQPay"}]},{apiName:"rapyd-checkout",name:"Rapyd Checkout",landscapeLogo:null,portraitLogo:null,summary:"Rapyd Checkout is a platform that allows businesses to accept payment in the\nform of instant UPI payments from bank accounts, e-wallets, and credit cards.\n",description:"Rapyd Checkout is a platform that allows businesses to accept payment in the\nform of instant UPI payments from bank accounts, e-wallets, and credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/rapyd-checkout"}]},{apiName:"Resurs",name:"Resurs",landscapeLogo:null,portraitLogo:null,summary:"The Resurs method.",description:"The Resurs method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Resurs"}]},{apiName:"SEPA",name:"SEPA",landscapeLogo:null,portraitLogo:null,summary:"SEPA simplifies payments within the European Union and facilitates the direct\ndebiting of every Euro-denominated bank account.\n",description:"SEPA simplifies payments within the European Union and facilitates the direct\ndebiting of every Euro-denominated bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SEPA"}]},{apiName:"SMSVoucher",name:"SMSVoucher",landscapeLogo:null,portraitLogo:null,summary:"SMS Voucher is a mobile voucher that can be used to transfer funds via a\nmobile phone.\n",description:"SMS Voucher is a mobile voucher that can be used to transfer funds via a\nmobile phone.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SMSVoucher"}]},{apiName:"SPEI",name:"SPEI",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/spei.svg",portraitLogo:null,summary:"SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",description:"SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SPEI"}]},{apiName:"SafetyPay",name:"SafetyPay",landscapeLogo:null,portraitLogo:null,summary:"SafetyPay operates the largest network of banks and cash collection points in Latin America, the result of 10+ years effort, with presence in 16 countries consolidated with 380 bank partners and 180,000 collection points.\n",description:"SafetyPay operates the largest network of banks and cash collection points in Latin America, the result of 10+ years effort, with presence in 16 countries consolidated with 380 bank partners and 180,000 collection points.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SafetyPay"}]},{apiName:"Samsung Pay",name:"Samsung Pay",landscapeLogo:null,portraitLogo:null,summary:"Samsung Pay is a mobile payment and digital wallet service by Samsung Electronics that enables users to make payments using\ncompatible phones and other Samsung-produced devices.\n",description:"Samsung Pay is a mobile payment and digital wallet service by Samsung Electronics that enables users to make payments using\ncompatible phones and other Samsung-produced devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Samsung%20Pay"}]},{apiName:"Siirto",name:"Siirto",landscapeLogo:null,portraitLogo:null,summary:"Siirto allows users to transfer money easily to other Siirto users by using\ntheir phone numbers.\n",description:"Siirto allows users to transfer money easily to other Siirto users by using\ntheir phone numbers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Siirto"}]},{apiName:"Skrill",name:"Skrill",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Skrill.svg",portraitLogo:null,summary:"Skrill is a digital wallet for money transfers and online payments that offers\na safe way to pay across different platforms.\n",description:"Skrill is a digital wallet for money transfers and online payments that offers\na safe way to pay across different platforms.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Skrill"}]},{apiName:"Skrill Rapid Transfer",name:"Skrill Rapid Transfer",landscapeLogo:null,portraitLogo:null,summary:"Skrill Rapid Transfer allows users to deposit money into their Skrill wallet\nor to pay online directly.\n",description:"Skrill Rapid Transfer allows users to deposit money into their Skrill wallet\nor to pay online directly.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Skrill%20Rapid%20Transfer"}]},{apiName:"Sofort",name:"Sofort",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Sofort.svg",portraitLogo:null,summary:"Sofort is a payment method acquired by Klarna that redirects customers to\ninitiate a transfer with their bank.\n",description:"Sofort is a payment method acquired by Klarna that redirects customers to\ninitiate a transfer with their bank.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Sofort"}]},{apiName:"SparkPay",name:"SparkPay",landscapeLogo:null,portraitLogo:null,summary:"The SparkPay method.",description:"The SparkPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SparkPay"}]},{apiName:"swift-dbt",name:"SWIFT Debit",landscapeLogo:null,portraitLogo:null,summary:"The SWIFT Debit method.",description:"The SWIFT Debit method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/swift-dbt"}]},{apiName:"TWINT",name:"TWINT",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/TWINT.svg",portraitLogo:null,summary:"TWINT allows customers to make convenient and secure payments via a smartpone.",description:"TWINT allows customers to make convenient and secure payments via a smartpone.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/TWINT"}]},{apiName:"Tele2",name:"Tele2",landscapeLogo:null,portraitLogo:null,summary:"Tele2 is an intergrated e-wallet that allows users to instantly receive\ndigital payments frmi TalkBank.\n",description:"Tele2 is an intergrated e-wallet that allows users to instantly receive\ndigital payments frmi TalkBank.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tele2"}]},{apiName:"Telr",name:"Telr",landscapeLogo:null,portraitLogo:null,summary:"The Telr method.",description:"The Telr method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Telr"}]},{apiName:"Terminaly-RF",name:"Terminaly RF",landscapeLogo:null,portraitLogo:null,summary:"The Terminaly RF method.",description:"The Terminaly RF method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Terminaly-RF"}]},{apiName:"Tether",name:"Tether",landscapeLogo:null,portraitLogo:null,summary:"Tether is a cryptocurrency with tokens issued by Tether Limited.",description:"Tether is a cryptocurrency with tokens issued by Tether Limited.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tether"}]},{apiName:"ToditoCash-card",name:"ToditoCash Card",landscapeLogo:null,portraitLogo:null,summary:"ToditoCash Card is a prepaid card service used in Mexico that allows customers\nto use the card for purchasing goods and services online.\n",description:"ToditoCash Card is a prepaid card service used in Mexico that allows customers\nto use the card for purchasing goods and services online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ToditoCash-card"}]},{apiName:"Trustly",name:"Trustly",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Trustly.svg",portraitLogo:null,summary:"Trustly an open banking payment method that allows customers to shop and pay\nfrom their online bank account, without the use of a card or app.\n",description:"Trustly an open banking payment method that allows customers to shop and pay\nfrom their online bank account, without the use of a card or app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Trustly"}]},{apiName:"Tupay",name:"Tupay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Tupay.svg",portraitLogo:null,summary:"Tupay is a one-stop-shop payment platform. It enables you to make everyday purchases in an easy, convenient, and secure manner through your favorite wallets.\nPay seamlessly, in-app, from anywhere your money is. Whether it is mobile money, a card, or bank without the need to transfer to various wallets.\n",description:"Tupay is a one-stop-shop payment platform. It enables you to make everyday purchases in an easy, convenient, and secure manner through your favorite wallets.\nPay seamlessly, in-app, from anywhere your money is. Whether it is mobile money, a card, or bank without the need to transfer to various wallets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tupay"}]},{apiName:"UPI",name:"UPI",landscapeLogo:null,portraitLogo:null,summary:"Unified Payments Interface (UPI) is a payment system that powers multiple bank\naccounts into a single mobile application.\n",description:"Unified Payments Interface (UPI) is a payment system that powers multiple bank\naccounts into a single mobile application.\n",countries:{mode:"subset",values:["IN"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UPI"}]},{apiName:"UPayCard",name:"UPayCard",landscapeLogo:null,portraitLogo:null,summary:"The UPayCard method.",description:"The UPayCard method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UPayCard"}]},{apiName:"USD-coin",name:"USD coin",landscapeLogo:null,portraitLogo:null,summary:"The USD coin (USDC ERC20) method.\n",description:"The USD coin (USDC ERC20) method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/USD-coin"}]},{apiName:"UniCrypt",name:"UniCrypt",landscapeLogo:null,portraitLogo:null,summary:"The UniCrypt method.",description:"The UniCrypt method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UniCrypt"}]},{apiName:"VCreditos",name:"VCreditos",landscapeLogo:null,portraitLogo:null,summary:"VCreditos is an e-wallet for online transfers and withdrawals. The customer\ncan acquire exclusive advantages, points, and benefits.\n",description:"VCreditos is an e-wallet for online transfers and withdrawals. The customer\ncan acquire exclusive advantages, points, and benefits.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VCreditos"}]},{apiName:"VegaWallet",name:"VegaWallet",landscapeLogo:null,portraitLogo:null,summary:"VegaWallet is an e-wallet that allows users to purchase, receive, send, and convert funds (points) between users and merchants.\n",description:"VegaWallet is an e-wallet that allows users to purchase, receive, send, and convert funds (points) between users and merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VegaWallet"}]},{apiName:"VenusPoint",name:"VenusPoint",landscapeLogo:null,portraitLogo:null,summary:"The VenusPoint method.",description:"The VenusPoint method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VenusPoint"}]},{apiName:"voucher",name:"Voucher",landscapeLogo:null,portraitLogo:null,summary:"The voucher method.\n",description:"The voucher method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/voucher"}]},{apiName:"Wallet88",name:"Wallet88",landscapeLogo:null,portraitLogo:null,summary:"Wallet88 payment method.",description:"Wallet88 payment method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Wallet88"}]},{apiName:"WeChat Pay",name:"WeChat Pay",landscapeLogo:null,portraitLogo:null,summary:"WeChat Pay is an e-Wallet within the Chinese social media app WeChat.",description:"WeChat Pay is an e-Wallet within the Chinese social media app WeChat.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/WeChat%20Pay"}]},{apiName:"Webmoney",name:"Webmoney",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Webmoney.svg",portraitLogo:null,summary:"The Webmoney method.",description:"The Webmoney method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webmoney"}]},{apiName:"Webpay",name:"Webpay",landscapeLogo:null,portraitLogo:null,summary:"The Webpay method.",description:"The Webpay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webpay"}]},{apiName:"Webpay Card",name:"Webpay Card",landscapeLogo:null,portraitLogo:null,summary:"Webpay Card allows consumers in Chile to securely use their debit and credit\ncards online.\n",description:"Webpay Card allows consumers in Chile to securely use their debit and credit\ncards online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webpay%20Card"}]},{apiName:"XPay-P2P",name:"XPay-P2P",landscapeLogo:null,portraitLogo:null,summary:"XPAY-P2P is a payment service provider with online merchant services & payment\ngateway integration for retailers.\n",description:"XPAY-P2P is a payment service provider with online merchant services & payment\ngateway integration for retailers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/XPay-P2P"}]},{apiName:"XPay-QR",name:"XPay-QR",landscapeLogo:null,portraitLogo:null,summary:"XPay-QR is a contactless payment method where payments are completed by\nscannign a QR code from a mobile app.\n",description:"XPay-QR is a contactless payment method where payments are completed by\nscannign a QR code from a mobile app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/XPay-QR"}]},{apiName:"Yandex-money",name:"Yandex Money",landscapeLogo:null,portraitLogo:null,summary:"Yandex Money serves both merchants and individual users as the largest\nelectronic payment service in Russia.\n",description:"Yandex Money serves both merchants and individual users as the largest\nelectronic payment service in Russia.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Yandex-money"}]},{apiName:"Zimpler",name:"Zimpler",landscapeLogo:null,portraitLogo:null,summary:"The Zimpler method.",description:"The Zimpler method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Zimpler"}]},{apiName:"Zotapay",name:"Zotapay",landscapeLogo:null,portraitLogo:null,summary:"Zotapay is a global payment service provider that facilitates online payment\nprocessing solutions for emerging markets worldwide.\n",description:"Zotapay is a global payment service provider that facilitates online payment\nprocessing solutions for emerging markets worldwide.\n",countries:{mode:"all",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Zotapay"}]},{apiName:"ePay.bg",name:"ePay.bg",landscapeLogo:null,portraitLogo:null,summary:"ePay.bg is a free mobile application allowing customers to pay and receive\nmoney quickly and safely.\n",description:"ePay.bg is a free mobile application allowing customers to pay and receive\nmoney quickly and safely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ePay.bg"}]},{apiName:"ePayCard",name:"ePayCard",landscapeLogo:null,portraitLogo:null,summary:"ePay is a free mobile application that provides a quick and safe way to pay and receive money.\n",description:"ePay is a free mobile application that provides a quick and safe way to pay and receive money.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ePayCard"}]},{apiName:"ezyEFT",name:"ezyEFT",landscapeLogo:null,portraitLogo:null,summary:"ezyEFT is an easy to use software application that offers customers the option\nof paying by direct debit.\n",description:"ezyEFT is an easy to use software application that offers customers the option\nof paying by direct debit.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ezyEFT"}]},{apiName:"loonie",name:"loonie",landscapeLogo:null,portraitLogo:null,summary:"The loonie method.",description:"The loonie method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/loonie"}]}];class Xm extends vc{get logo(){return this.landscapeLogo||this.portraitLogo}}const Jm=class{constructor({name:e="",expirationTime:t="",displayName:n="",country:r="",merchantName:a="",merchantOrigin:o="",paypalMerchantId:i="",billingAgreementToken:s="",paypalClientId:l="",linkToken:c=""}={}){this.name=e,this.expirationTime=t,this.displayName=n,this.country=r,this.merchantName=a,this.merchantOrigin=o,this.paypalMerchantId=i,this.billingAgreementToken=s,this.paypalClientId=l,this.linkToken=c}};Jm.FeatureName={paypalBillingAgreement:"PayPal billing agreement",googlePay:"Google Pay",applePay:"Apple Pay"};let Ym=Jm;class Qm{constructor({index:e=null,method:t="",feature:n=null,brands:r=[],filters:a=[],metadata:o=null}={}){this.index=e,this.method=t,this.feature=n?new Ym(n):null,this.brands=r,this.filters=a,this.metadata=o?new Xm(o):null}get optionsPaymentInstrumentsKey(){var e;switch(null==(e=this.feature)?void 0:e.name){case Ym.FeatureName.paypalBillingAgreement:return"paypal";case Ym.FeatureName.googlePay:return"googlePay";case Ym.FeatureName.applePay:return"applePay";default:return}}}function ef(e){const t=[...Zm],n=["Google Pay","Apple Pay","paypal"],r=["echeck","Khelocard","Klarna","Apple Pay","China UnionPay","Google Pay","KakaoPay","Payco","Samsung Pay"];return e.filter((e=>{const t="paypal"===e.method&&!e.feature,n="ach"===e.method&&e.feature,a=r.includes(e.method);return!t&&!n&&!a})).map(((e,r)=>{const a=t.find((t=>t.apiName===e.method))||{};return a.isExpressMethod=(({method:e,feature:t})=>n.includes(e)||n.includes(null==t?void 0:t.name))(e),new Qm({index:r,metadata:a,...e})}))}async function tf(){return gp((async()=>{var e,t,n,r,a,o,i,s,l;if(!lo.data.riskMetadata){const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}const c={riskMetadata:lo.data.riskMetadata};if(c.websiteId=(null==(e=lo.options)?void 0:e.websiteId)||null,(null==(t=lo.options)?void 0:t.items)&&(c.items=Sp(lo.options.items)),((null==(n=lo.options)?void 0:n.money)||(null==(r=lo.data)?void 0:r.invoice)||(null==(a=lo.data)?void 0:a.transaction))&&(null==(o=lo.data)?void 0:o.amountAndCurrency)){const{amount:e,currency:t}=lo.data.amountAndCurrency;c.amount=e,c.currency=t}(null==(s=null==(i=lo.data)?void 0:i.account)?void 0:s.address)&&(c.billingAddress=lo.data.account.address),(null==(l=lo.data)?void 0:l.deposit)&&(c.amount=lo.data.deposit.amount,c.currency=lo.data.deposit.currency);const{fields:u}=await lo.storefront.purchase.readyToPay({data:c});return ef(Object.values(u))}))}function nf(e){const t=[...Zm],n=["Google Pay","Apple Pay","paypal"],r=["echeck","Khelocard","Klarna"];return e.filter((e=>{const t="paypal"===e.method&&!e.feature,n="ach"===e.method&&e.feature,a=r.includes(e.method);return!t&&!n&&!a})).map(((e,r)=>{const a=t.find((t=>t.apiName===e.method))||{};return a.isExpressMethod=(({method:e,feature:t})=>n.includes(e)||n.includes(null==t?void 0:t.name))(e),new Qm({index:r,metadata:a,...e})})).filter((({metadata:e})=>e.storefrontEnabled))}async function rf(){return gp((async()=>{var e,t,n;if(so(lo.options),function(e){if(null==e)throw new Error("Could not access data instance")}(lo.data),io(lo.storefront),!(null==(e=null==lo?void 0:lo.data)?void 0:e.riskMetadata)){const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}const r={riskMetadata:lo.data.riskMetadata,websiteId:lo.options.websiteId||null};(null==(n=null==(t=null==lo?void 0:lo.data)?void 0:t.account)?void 0:n.address)&&(r.billingAddress=lo.data.account.address),lo.data.payout&&(r.amount=lo.data.payout.amount,r.currency=lo.data.payout.currency);const{fields:a}=await lo.storefront.readyToPayout.readyToPayout({data:r});return nf(Object.values(a))}))}const af=class e extends vc{get isPaid(){return this.status===e.Status.paid}get isVoid(){return this.status===e.Status.voided}get isRefunded(){return this.status===e.Status.refunded}get isAbandoned(){return this.status===e.Status.abandoned}};af.Status={draft:"draft",unpaid:"unpaid",paid:"paid",partiallyPaid:"partially-paid",pastDue:"past-due",abandoned:"abandoned",voided:"voided",partiallyRefunded:"partially-refunded",refunded:"refunded",disputed:"disputed"};let of=af;async function sf({data:e}){return gp((async()=>{var t;io(lo.storefront),so(lo.options),lo.storefront.setSessionToken(lo.options.jwt);const{fields:n}=await lo.storefront.invoices.get({...e,expand:"items.*.product"});return{products:null==(t=n.items)?void 0:t.filter((e=>e._embedded)).map((e=>{var t;return new zm(null==(t=e._embedded)?void 0:t.product)})),invoice:new of(n)}}))}const lf=class e extends vc{constructor({invoiceIds:e=[],...t}){super(t),this.invoiceIds=e||[]}get invoiceId(){return this.invoiceIds[0]||null}get hasInvoice(){return Boolean(this.invoiceId)}get transactionIsCompleted(){return this.status===e.Status.completed}};lf.Status={completed:"completed"};let cf=lf;async function uf({data:e=null}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.transactions.get(e);return new cf(t)}))}class df{constructor({firstName:e=null,lastName:t=null,organization:n=null,address:r=null,address2:a=null,city:o=null,region:i=null,country:s=null,postalCode:l=null,emails:c=[],phoneNumbers:u=[]}={}){this.firstName=e,this.lastName=t,this.organization=n,this.address=r,this.address2=a,this.city=o,this.region=i,this.country=s,this.postalCode=l,this.emails=c,this.phoneNumbers=u}}class pf extends vc{constructor({primaryAddress:e={},...t}={}){super(t),this.address=new df({...e})}}class mf extends vc{}async function ff(){return gp((async()=>{var e;io(lo.storefront),so(lo.options),lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.account.get({expand:"website"});return{website:new mf(null==(e=t._embedded)?void 0:e.website),account:new pf(t)}}))}async function hf(){return gp((async()=>{io(lo.storefront);const{items:e}=await lo.storefront.paymentInstruments.getAll({filter:"status:active,inactive,verification-needed"});return e.map((({fields:e})=>e))}))}class yf extends vc{constructor(e){super(e),this.amount=Array.isArray(e.amounts)?e.amounts[0]:e.amount,e.buttons?this.buttons=e.buttons:e.amounts?this.buttons=[...e.amounts]:this.buttons=[],this.editable="boolean"==typeof e.editable?e.editable:Boolean(e.customAmount),this.customAmount=to({minimum:1,maximum:1e12,multipleOf:1},e.customAmount||{})}}async function gf({data:e=null}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.depositRequests.get(e);return new yf(t)}))}const bf=class e extends vc{constructor(e={}){super(e)}get isPending(){return this.status===e.Status.pending}};bf.Status={pending:"pending",instrumentSelected:"instrument-selected",partiallyFulfilled:"partially-fulfilled",fulfilled:"fulfilled",canceled:"canceled"};let vf=bf;async function wf(e){return gp((async()=>{io(lo.storefront),so(lo.options);const{fields:t}=await lo.storefront.payoutRequests.get(e);return new vf(t)}))}function kf(e){return null!=e&&"depositRequestId"in e&&"string"==typeof e.depositRequestId}const $f={type:"object",oneOf:[{type:"object",properties:{depositRequestId:{type:"string"}},required:["depositRequestId"]},{type:"object",properties:{currency:{type:"string",minLength:3,maxLength:3},amount:{type:"number"},buttons:{type:"array",items:{type:"number"}},editable:{type:"boolean"},customAmount:{type:"object",properties:{minimum:{type:"number"},maximum:{type:"number"},multipleOf:{type:"number"}},required:[]}},anyOf:[{required:["amount"]},{required:["buttons"]}],required:["currency"]}]},Sf=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","affiliate","subAffiliate","clickId","salesAgent"],Ef=/utm_/g,xf=()=>{const{href:e,origin:t,pathname:n,search:r}=window.location,a={path:e.length<=255?e:`${t}${n}`};return r.replace("?","").split("&").map((e=>e.split("="))).filter((e=>{const[t]=e;return Sf.indexOf(t)>-1})).reduce(((e,t)=>{const[n,r=null]=t,a=n.replace(Ef,"");return a&&(e[a]=r),e}),a)};class Pf{constructor({...e}={}){var t;Object.entries({...lo.data||{},...e}).forEach((([e,t])=>{this[e]=t})),this.money=(null==(t=lo.options)?void 0:t.money)||null,this.couponIds=[],this.addons=[],this.acceptBumpOffer=!1}get amountAndCurrency(){let e,t,n;this.previewPurchase?(e=this.previewPurchase.currency,t=this.previewPurchase.total):this.invoice?(e=this.invoice.currency,t=this.invoice.amount,n=this.invoice.amountDue):this.transaction?(e=this.transaction.currency,t=this.transaction.amount):this.money&&(e=this.money.currency,t=this.money.amount);const r={amount:t,currency:e};return n&&(r.amountDue=n),r}get isPayment(){return Boolean(this.invoice||this.transaction||this.money)}get isDepositTransaction(){var e;return Boolean(null==(e=this.transaction)?void 0:e.depositRequestId)}get isInvoice(){return Boolean(this.invoice)}get isPurchase(){return Boolean(this.previewPurchase)}get hasAmountDue(){return Boolean(this.amountAndCurrency.amountDue&&this.amountAndCurrency.amountDue!==this.amountAndCurrency.amount)}get summaryItems(){const{discountsAmount:e=null,shippingAmount:t=null,subtotalAmount:n=null,taxAmount:r=null}=this.previewPurchase||this.invoice||{};return{discountsAmount:e,shippingAmount:t,subtotalAmount:n,taxAmount:r}}get summaryLineItems(){let e=[];return this.invoice?({items:e=[]}=this.invoice):({lineItems:e=[]}=this.previewPurchase||{}),e}get isShippingRequired(){return(this.products||[]).some((e=>e.requiresShipping))}get hasPurchaseData(){var e,t;return Boolean(this.isPayment||this.inPurchase||(null==(e=lo.options)?void 0:e.deposit)||(null==(t=lo.options)?void 0:t.payout))}toPostmatesModel(){return JSON.parse(JSON.stringify({...this,hasPurchaseData:this.hasPurchaseData,amountAndCurrency:this.amountAndCurrency,isPayment:this.isPayment,isInvoice:this.isInvoice,isPurchase:this.isPurchase,isDepositTransaction:this.isDepositTransaction,hasAmountDue:this.hasAmountDue,summaryItems:this.summaryItems,summaryLineItems:this.summaryLineItems,isShippingRequired:this.isShippingRequired,leadSource:xf()}))}}async function _f({riskMetadata:e=null,fetchInvoiceAndProducts:t=sf,fetchTransaction:n=uf,fetchAccountAndWebsite:r=ff,fetchInstruments:a=hf,fetchDepositRequest:o=gf,fetchPayoutRequest:i=wf}={}){var s,l,c,u,d,p,m,f,h,y,g,b,v,w,k,$,S,E,x,P,_;try{if(lo.data=new Pf,lo.storefront&&(null==(s=lo.options)?void 0:s.jwt)&&lo.storefront.setSessionToken(lo.options.jwt),e)lo.data.riskMetadata=e;else{const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}let A;(null==(l=lo.options)?void 0:l.deposit)&&(kf(lo.options.deposit)?lo.data.deposit=await o({data:{id:lo.options.deposit.depositRequestId}}):lo.data.deposit=new yf(lo.options.deposit)),(null==(c=lo.options)?void 0:c.payout)&&(lo.data.payout=await i({id:lo.options.payout.payoutRequestId})),(null==(u=lo.options)?void 0:u.transactionId)&&(lo.data.transaction=await n({data:{id:lo.options.transactionId}}));const I=(null==(d=lo.options)?void 0:d.invoiceId)||(null==(m=null==(p=lo.data)?void 0:p.transaction)?void 0:m.invoiceId);if(I){const{invoice:e,products:n}=await t({data:{id:I}});A=Promise.resolve(n),lo.data.invoice=e}const T=[null==(h=null==(f=lo.options)?void 0:f.paymentInstruments)?void 0:h.allowDeactivate,null==(g=null==(y=lo.options)?void 0:y.paymentInstruments)?void 0:g.allowUpdate,null==(v=null==(b=lo.options)?void 0:b.paymentInstruments)?void 0:v.allowMakeDefault].some((e=>e));let L=Promise.resolve(null),C=Promise.resolve(null),R=Promise.resolve(),j=null;(null==(w=lo.options)?void 0:w.jwt)?(R=r().then((({account:e,website:t})=>{if(null==lo.data)throw new Error("Invalid data instance");lo.data.account=e,lo.data.website=t})),(null==(k=lo.options)?void 0:k.payout)?C=R.then((()=>rf())):(lo.data.money||lo.data.invoice||lo.data.transaction||lo.data.payout||lo.data.deposit)&&(L=R.then((()=>tf()))),j=a()):(null==($=lo.options)?void 0:$.payout)?C=rf():L=tf();const N=(null==(S=lo.options)?void 0:S.items)?xp():null;(null==(E=lo.options)?void 0:E.jwt)||(A=async function(){return gp((async()=>{var e,t,n,r;let a;a=(null==(e=lo.data)?void 0:e.summaryLineItems)&&lo.data.summaryLineItems.length>0?lo.data.summaryLineItems:(null==(t=lo.options)?void 0:t.items)??[];const o={filter:"",expand:"product"};if(a.length){let e=a.map((e=>e.planId));(null==(n=lo.options)?void 0:n.addons)&&(e=e.concat(lo.options.addons.map((e=>e.planId)))),(null==(r=lo.options)?void 0:r.bumpOffer)&&(e=e.concat(lo.options.bumpOffer.map((e=>e.planId)))),o.filter=`id:${Array.from(new Set(e)).join(",")}`}if(o.filter.length)try{io(lo.storefront);const{items:e}=await lo.storefront.plans.getAll(o),t=[];return e.map((({fields:e})=>{var t;return new zm(null==(t=e._embedded)?void 0:t.product)})).forEach((e=>{t.every((t=>t.id!==e.id))&&t.push(e)})),t}catch(i){}return[]}))}());let O=new Promise((e=>{e([])}));((null==(x=lo.options)?void 0:x.addons)||(null==(P=lo.options)?void 0:P.bumpOffer))&&(O=async function(){return gp((async()=>{var e,t;let n=[];if((null==(e=lo.options)?void 0:e.addons)&&(n=n.concat(lo.options.addons.map((e=>e.planId)))),(null==(t=lo.options)?void 0:t.bumpOffer)&&(n=n.concat(lo.options.bumpOffer.map((e=>e.planId)))),n.length>0){io(lo.storefront);const{items:e}=await lo.storefront.plans.getAll({filter:`id:${n.join(",")}`});return e.map((({fields:e})=>new Km(e).toPayload()))}return[]}))}());let[F,M,H,B,q,D]=await Promise.all([C,L,N,A,O,j]);if(T&&D&&!M&&!(null==(_=lo.options)?void 0:_.payout)){const e=new Set;D.forEach((t=>{e.add(t.method)})),M=ef(Array.from(e).map((e=>({method:e}))))}return new Pf({readyToPayout:F,readyToPay:M,previewPurchase:H,products:B,plans:q,availableInstruments:D,isManageInstruments:T})}catch(A){console.error(A)}return new Pf({})}function Af({state:e,id:t}){const{Framepay:n}=window,r=e.form.querySelector(`.rebilly-instruments-${t}-method`);return function(){if(!r.children.length){const r={"google-pay":"googlePay","pay-pal-billing-agreement":"paypal","apple-pay":"applePay"},a=e.form.querySelector(`.rebilly-instruments-${t}-method`);r[t]?(n[r[t]].mount(a),"apple-pay"===t&&function(){const t=e.form.querySelector("#rebilly-apple-pay-button"),{applePayDisplayOptions:{buttonHeight:n}}=e.options.digitalWallet.applePay;t.style.margin="0px",t.style.width="100%",t.style.height=n,t.style.cursor="pointer"}()):console.warn(`method '${t}' is not supported`)}}}const If=e=>{var t,n;return{METHOD_ID:Ki((null==(t=e.feature)?void 0:t.name)||e.method),METHOD_TYPE:Gi((null==(n=e.feature)?void 0:n.name)||e.method).replace("-","")}},Tf=()=>window.ApplePaySession;async function Lf({methods:e,container:t}){const n=e.map((e=>{const{METHOD_ID:t}=If(e);return t})),{Framepay:r}=window;(null==r?void 0:r.initialized)||await(null==r?void 0:r.initialize(function({methodIds:e}={}){var t,n;const{options:r,data:a}=lo,o={style:r.themeFramepay,locale:(null==r?void 0:r.locale)||"auto",organizationId:r.organizationId,websiteId:r.websiteId,methods:r.payout?a.readyToPayout:a.readyToPay};return e.includes("pay-pal-billing-agreement")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},a.amountAndCurrency),o.paypal=r.paymentInstruments.paypal),e.includes("google-pay")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},null==(t=r.digitalWallet.googlePay)?void 0:t.transactionData),o.googlePay=r.digitalWallet.googlePay.googlePayDisplayOptions),e.includes("apple-pay")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},null==(n=r.digitalWallet.applePay)?void 0:n.transactionData),o.applePay=r.digitalWallet.applePay.applePayDisplayOptions),r.publishableKey&&(o.publishableKey=r.publishableKey),r.jwt&&(o.jwt=r.jwt,o.sandbox="sandbox"===r.apiMode),a.riskMetadata&&(o.riskMetadata=a.riskMetadata),o}({methodIds:n}))),null==r||r.on("ready",(()=>{const n=[];e.map((e=>{const{METHOD_ID:r}=If(e);("apple-pay"!==r||Tf())&&(t.innerHTML+=`\n <div class="rebilly-instruments-${r}-method" style="height: ${function(e){var t,n;let r;const a=e.optionsPaymentInstrumentsKey;if(!a)return"48px";const{buttonHeight:o,displayOptions:i}=(null==(n=null==(t=lo.options)?void 0:t.paymentInstruments)?void 0:n[a])||{};return r=i?i.buttonHeight:o,"number"==typeof r&&(r=`${o}px`),r}(e)}"></div>\n `,n.push(Af({state:lo,id:r})))})),n.forEach((e=>e()))})),null==r||r.on("error",(e=>{if("paypal-error"===e.code){const e=document.querySelector(".rebilly-instruments-pay-pal-billing-agreement-method");if(e&&(e.remove(),t.children.length<=0)){const e=document.querySelector('[data-rebilly-instruments="divider"]');e&&e.remove()}}else console.error(e)}));const a="sandbox"===lo.options.apiMode?"https://forms-sandbox.secure-payments.app/approval-url?close=true":"https://forms.secure-payments.app/approval-url?close=true";null==r||r.on("token-ready",(e=>{var t,n,r;const o={websiteId:lo.options.websiteId,billingAddress:e.billingAddress,redirectUrl:a,_raw:e};if((null==(t=lo.data)?void 0:t.isShippingRequired)&&(e.shippingAddress?o.deliveryAddress=e.shippingAddress:o.deliveryAddress=o.billingAddress),Array.isArray(null==(n=o.billingAddress)?void 0:n.emails)){const e=o.billingAddress.emails.find((e=>"main"===e.label));(null==e?void 0:e.value)&&(o.billingAddress.email=e.value)}if(Array.isArray(null==(r=o.deliveryAddress)?void 0:r.emails)){const e=o.deliveryAddress.emails.find((e=>"main"===e.label));(null==e?void 0:e.value)&&(o.deliveryAddress.email=e.value)}Ji.instrumentReady.dispatch(o)}))}function Cf({offer:e}){const t=lo.data.plans.find((t=>t.id===e.planId)),n=lo.data.products.find((e=>e.id===t.productId)),r=(e,t)=>e?t:"";const a={...e,quantity:t.pricing.isBracket?null:e.quantity,name:n.name,description:t.name,unitPrice:function(){const e=function(e,t="USD"){const n=Number(e);return Number.isNaN(n)||null==e?"-":new Intl.NumberFormat("en-US",{style:"currency",currency:t}).format(n)}(t.pricing.isBracket?t.pricing.brackets[0].price:t.pricing.price,t.currency);return t.pricing.isBracket?lo.translate.getTranslation("form.bumpOffer.startingAt").replace("{basePrice}",e):e}()};return`\n <div class="rebilly-instruments-bump-offer-line-item">\n ${o=a,r(o.thumbnail,`\n <figure class="rebilly-instruments-bump-offer-line-item-figure">\n <img src="${o.thumbnail}" :alt="${o.name}"/>\n </figure>\n `)}\n ${(e=>`\n <div class="rebilly-instruments-bump-offer-line-item-synopsis">\n <p class="rebilly-instruments-bump-offer-line-item-synopsis-title">\n ${e.name}\n </p>\n ${r(e.description,`\n <p class="rebilly-instruments-bump-offer-line-item-synopsis-description">\n ${e.description}\n </p>\n `)}\n </div>\n `)(a)}\n ${(e=>`\n <div class="rebilly-instruments-bump-offer-line-item-price-breakdown">\n ${r(e.quantity,`\n <p class="rebilly-instruments-bump-offer-line-item-price-breakdown-quantity">\n ${e.quantity}\n </p>\n <svg class="rebilly-instruments-icon" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n <path d="M12 10.5858l2.8284-2.8284c.3906-.3906 1.0237-.3906 1.4142 0 .3906.3905.3906 1.0236 0 1.4142L13.4142 12l2.8284 2.8284c.3906.3906.3906 1.0237 0 1.4142-.3905.3906-1.0236.3906-1.4142 0L12 13.4142l-2.8284 2.8284c-.3906.3906-1.0237.3906-1.4142 0-.3906-.3905-.3906-1.0236 0-1.4142L10.5858 12 7.7574 9.1716c-.3906-.3906-.3906-1.0237 0-1.4142.3905-.3906 1.0236-.3906 1.4142 0L12 10.5858z" fill-rule="nonzero"/>\n </svg>\n `)}\n <p class="rebilly-instruments-bump-offer-line-item-price-breakdown-unit-price">\n ${e.unitPrice}\n </p>\n <div>\n `)(a)}\n </div>\n `;var o}async function Rf({data:e}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.deposit.create({data:e});return new cf(t)}))}function jf(e,t=lo.form){return t.querySelector(`[data-rebilly-instruments="${e}"]`)}const Nf=()=>{const e=document.createElement("div");return e.classList.add("rebilly-instruments-bump-offers"),e.setAttribute("data-rebilly-instruments","bump-offer"),e};function Of(){var e,t,n;const{expressMethods:r}=Dm();if(null==(e=lo.options)?void 0:e.deposit){const e=jf("deposit-back");e&&(e.style.height="0px",e.style.overflow="hidden")}if(r.length){const e=jf("express-methods");e&&(e.style.height="0px",e.style.overflow="hidden")}if(null==(n=null==(t=lo.options)?void 0:t.bumpOffer)?void 0:n.length){const e=jf("bump-offer");e&&(e.style.height="0px",e.style.overflow="hidden",e.style.marginBottom="0px")}}const Ff=({expressMethods:e})=>{const t=document.createElement("div");t.classList.add("rebilly-instruments-method-selector"),t.setAttribute("data-rebilly-instruments","express-methods"),t.innerHTML='\n <div class="rebilly-instruments-express-methods ">\n <span data-rebilly-i18n="form.expressCheckout" class="rebilly-instruments-express-methods-label">Express checkout</span>\n <div class="rebilly-instruments-express-methods-container" data-rebilly-instruments="express-methods-container"></div>\n </div>\n <div data-rebilly-instruments="divider" class="rebilly-instruments-divider">\n <span class="rebilly-instruments-divider-label" data-rebilly-i18n="form.or">Or</span>\n </div>\n ';const n=jf("express-methods-container",t);return lo.options.paymentInstruments.compactExpressInstruments&&e.length&&(t.classList.add("has-express-compact"),n.classList.add("is-compact")),t};async function Mf(){var e,t,n,r,a,o,i;const s=jf("content"),l=jf("form"),{expressMethods:c,methods:u}=Dm();if(c.length){const e=jf("express-methods");if(e)e.style.height="auto";else{s.insertBefore(Ff({expressMethods:c}),l),lo.options.digitalWallet=function({expressMethods:e=[]}){var t;const n={},{paymentInstruments:r}=lo.options,a={countryCode:lo.options.countryCode,label:lo.options.websiteId};if(null==(t=lo.data)?void 0:t.amountAndCurrency){const{amount:e,currency:t}=lo.data.amountAndCurrency;a.amount=e,a.currency=t}return e.forEach((e=>{var t,o,i,s;const{METHOD_TYPE:l}=If(e);"Google Pay"===(null==(t=e.feature)?void 0:t.name)&&(n[l]={transactionData:a,merchantConfig:{merchantName:e.feature.merchantName,merchantOrigin:e.feature.merchantOrigin},googlePayDisplayOptions:r.googlePay.displayOptions}),"Apple Pay"===(null==(o=e.feature)?void 0:o.name)&&(n[l]={transactionData:a,merchantConfig:{merchantName:null==(s=null==(i=r.applePay)?void 0:i.merchantConfig)?void 0:s.merchantName,merchantOrigin:window.location.hostname},applePayDisplayOptions:r.applePay.displayOptions})})),n}({expressMethods:c});Lf({methods:c,container:lo.form.querySelector('[data-rebilly-instruments="express-methods-container"]')})}}if(null==(t=null==(e=lo.options)?void 0:e.bumpOffer)?void 0:t.length){const e=jf("bump-offer");if(e)e.style.height="auto",e.style.marginBottom="calc(var(--rebilly-spacingM) + var(--rebilly-fontSizeS))";else{s.insertBefore(Nf(),l);!function({container:e}){e.insertAdjacentHTML("beforeEnd",`\n <label for="rebilly-instruments-bump-offer" class="rebilly-instruments-form-field-checkbox">\n <div class="rebilly-instruments-bump-offer-label" data-rebilly-i18n="form.bumpOffer.title">\n ${lo.translate.getTranslation("form.bumpOffer.title")}\n </div>\n <input\n type="checkbox"\n id="rebilly-instruments-bump-offer"\n />\n <span></span>\n </label>\n `);const t=document.getElementById("rebilly-instruments-bump-offer");t.addEventListener("click",(async()=>{lo.data.acceptBumpOffer=t.checked,await xp(),lo.updateModel()})),t.checked=lo.data.acceptBumpOffer,lo.options.bumpOffer.forEach((t=>{const n=document.createElement("div");n.classList.add("rebilly-instruments-bump-offer"),n.insertAdjacentHTML("beforeEnd",Cf({offer:t})),e.appendChild(n)}))}({container:jf("bump-offer")})}}if(u.length){const e=oo.form;e||await Bf();const t=lo.toModel(),s={options:t.options,data:t.data};null==(n=null==e?void 0:e.component)||n.call("route",{name:"method-switch"}),null==(r=null==e?void 0:e.component)||r.call("update",s),(null==(o=null==(a=null==e?void 0:e.component)?void 0:a.events)?void 0:o["restart-payment-flow"])||null==(i=null==e?void 0:e.component)||i.on("restart-payment-flow",(async e=>{if(null==e?void 0:e.createNewDeposit){const t=await Rf({data:{depositRequestId:e.depositRequestId,amount:e.amount}});if(t.approvalUrl)return void window.location.assign(t.approvalUrl)}lo.data.isPurchase&&Ap(),Mf()}))}else lo.loader.stopLoading({id:"rebilly-instruments-form"}),lo.form.querySelector('[data-rebilly-instruments="form"]').style.display="none",document.querySelectorAll('[data-rebilly-instruments="divider"]').forEach((e=>{e.style.display="none"}));lo.translate.translateItems()}const Hf=()=>'\n<div data-rebilly-instruments="content" class="rebilly-instruments-content">\n <div data-rebilly-instruments="content-error" id="rebilly-instruments-error"></div>\n <div data-rebilly-instruments="form"></div>\n</div>\n';async function Bf(){var e;lo.form.innerHTML+=Hf();const t=lo.form.querySelector('[data-rebilly-instruments="form"]'),{paymentMethodsUrl:n}=(null==(e=null==lo?void 0:lo.options)?void 0:e._computed)||{},r="rebilly-instruments-form",a=lo.toModel(),o={name:r,url:`${n}?name=${r}`,container:t,model:{options:a.options,data:a.data,mainStyleVars:a.mainStyleVars}},i=await new ss(o);return i.bindEventListeners({loader:lo.loader}),oo.form=i,lo.loader.stopLoading({id:"rebilly-instruments-form"}),{then:e=>e()}}function qf(){var e;(null==(e=lo.options)?void 0:e.deposit)?async function(){var e,t,n;lo.data.money&&(lo.data.money.amount=null,lo.data.money.currency=null,lo.updateModel());const r=oo.form;r||await Bf();const a=lo.toModel(),o={options:a.options,data:a.data};null==(e=r.component)||e.call("route",{name:"amount-selector"}),null==(t=r.component)||t.call("update",o),null==(n=null==r?void 0:r.component)||n.on("confirm-amount",(async e=>{const{amount:t,currency:n}=e,{depositRequestId:r}=lo.options.deposit;lo.data.money={amount:t,currency:n};const a=await Rf({data:{depositRequestId:r,amount:t}});a&&(lo.data.transaction=a,lo.options.transactionId=a.id);const o=await tf();lo.data.readyToPay=o,lo.updateModel(),Mf()}))}():Mf()}function Df({element:e="div",attributes:t={},content:n=null,target:r="body",insertMethod:a="append"}={}){const o=document.createElement(e);Object.entries(t).forEach((([e,t])=>{o.setAttribute(e,t)})),n&&(o.innerHTML=n),r instanceof ShadowRoot?r.prepend(o):document[r][a](o)}const zf=({element:e=""})=>{const{options:t}=lo;if("form"!==e&&"summary"!==e)throw new Error('element must be "form", or "summary"');return function({prop:e,propName:t="Mounting",isRequired:n=!0}={}){let r;if(void 0===e)throw new Error('processPropertyDOMElement: Missing argument "prop"');if(he(e))r=e;else{if("string"!=typeof e||"string"!=typeof(a=e)||!a.match(/([.#][_a-z]+[_a-z0-9-:\\]*)/gi))throw new Error(`Please provide a valid CSS class, id or DOM element for "${t}" property`);r=document.querySelector(e)}var a;if(!r&&n)throw new Error(`Could not find DOM element with CSS class or id "${e}" to mount ${t}`);return r}({prop:null!=t&&t[e]?t[e]:"summary"===e?".rebilly-instruments-summary":".rebilly-instruments",propName:e,isRequired:["form"].includes(e)})},Vf=()=>{so(lo.options);const{publishableKey:e,organizationId:t,apiMode:n,_dev:r,_internalOptions:a}=lo.options,o={organizationId:t,mode:n||"live",appName:null==a?void 0:a.appName};return e&&(o.publishableKey=e),r&&(o.liveUrl=r.liveUrl||"https://api.rebilly.com",o.sandboxUrl=r.sandboxUrl||"https://api-sandbox.rebilly.com"),((e={})=>new bp(e))(o)};function Wf(e){this.message=e}Wf.prototype=new Error,Wf.prototype.name="InvalidCharacterError";var Uf="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new Wf("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,r,a=0,o=0,i="";r=t.charAt(o++);~r&&(n=a%4?64*n+r:r,a++%4)?i+=String.fromCharCode(255&n>>(-2*a&6)):0)r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(r);return i};function Gf(e){this.message=e}function Kf(e,t){if("string"!=typeof e)throw new Gf("Invalid token specified");var n=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return decodeURIComponent(Uf(t).replace(/(.)/g,(function(e,t){var n=t.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}catch(n){return Uf(t)}}(e.split(".")[n]))}catch(r){throw new Gf("Invalid token specified: "+r.message)}}Gf.prototype=new Error,Gf.prototype.name="InvalidTokenError";var Zf={exports:{}},Xf={},Jf={},Yf={},Qf={},eh={},th={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;class t{}e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class n extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}e.Name=n;class r extends t{constructor(e){super(),this._items="string"==typeof e?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const e=this._items[0];return""===e||'""'===e}get str(){var e;return null!==(e=this._str)&&void 0!==e?e:this._str=this._items.reduce(((e,t)=>`${e}${t}`),"")}get names(){var e;return null!==(e=this._names)&&void 0!==e?e:this._names=this._items.reduce(((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e)),{})}}function a(e,...t){const n=[e[0]];let a=0;for(;a<t.length;)s(n,t[a]),n.push(e[++a]);return new r(n)}e._Code=r,e.nil=new r(""),e._=a;const o=new r("+");function i(e,...t){const n=[c(e[0])];let a=0;for(;a<t.length;)n.push(o),s(n,t[a]),n.push(o,c(e[++a]));return function(e){let t=1;for(;t<e.length-1;){if(e[t]===o){const n=l(e[t-1],e[t+1]);if(void 0!==n){e.splice(t-1,3,n);continue}e[t++]="+"}t++}}(n),new r(n)}function s(e,t){var a;t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push("number"==typeof(a=t)||"boolean"==typeof a||null===a?a:c(Array.isArray(a)?a.join(","):a))}function l(e,t){if('""'===t)return e;if('""'===e)return t;if("string"==typeof e){if(t instanceof n||'"'!==e[e.length-1])return;return"string"!=typeof t?`${e.slice(0,-1)}${t}"`:'"'===t[0]?e.slice(0,-1)+t.slice(1):void 0}return"string"!=typeof t||'"'!==t[0]||e instanceof n?void 0:`"${e}${t.slice(1)}`}function c(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}e.str=i,e.addCodeArg=s,e.strConcat=function(e,t){return t.emptyStr()?e:e.emptyStr()?t:i`${e}${t}`},e.stringify=function(e){return new r(c(e))},e.safeStringify=c,e.getProperty=function(t){return"string"==typeof t&&e.IDENTIFIER.test(t)?new r(`.${t}`):a`[${t}]`},e.getEsmExportName=function(t){if("string"==typeof t&&e.IDENTIFIER.test(t))return new r(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)},e.regexpCode=function(e){return new r(e.toString())}}(th);var nh={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;const t=th;class n extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}}var r,a;(a=r||(e.UsedValueState=r={}))[a.Started=0]="Started",a[a.Completed=1]="Completed",e.varKinds={const:new t.Name("const"),let:new t.Name("let"),var:new t.Name("var")};class o{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){return`${e}${(this._names[e]||this._nameGroup(e)).index++}`}_nameGroup(e){var t,n;if((null===(n=null===(t=this._parent)||void 0===t?void 0:t._prefixes)||void 0===n?void 0:n.has(e))||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}e.Scope=o;class i extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=t._`.${new t.Name(n)}[${r}]`}}e.ValueScopeName=i;const s=t._`\n`;e.ValueScope=class extends o{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?s:t.nil}}get(){return this._scope}name(e){return new i(e,this._newName(e))}value(e,t){var n;if(void 0===t.ref)throw new Error("CodeGen: ref must be passed in value");const r=this.toName(e),{prefix:a}=r,o=null!==(n=t.key)&&void 0!==n?n:t.ref;let i=this._values[a];if(i){const e=i.get(o);if(e)return e}else i=this._values[a]=new Map;i.set(o,r);const s=this._scope[a]||(this._scope[a]=[]),l=s.length;return s[l]=t.ref,r.setValue(t,{property:a,itemIndex:l}),r}getValue(e,t){const n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,(n=>{if(void 0===n.scopePath)throw new Error(`CodeGen: name "${n}" has no value`);return t._`${e}${n.scopePath}`}))}scopeCode(e=this._values,t,n){return this._reduceValues(e,(e=>{if(void 0===e.value)throw new Error(`CodeGen: name "${e}" has no value`);return e.value.code}),t,n)}_reduceValues(a,o,i={},s){let l=t.nil;for(const c in a){const u=a[c];if(!u)continue;const d=i[c]=i[c]||new Map;u.forEach((a=>{if(d.has(a))return;d.set(a,r.Started);let i=o(a);if(i){const n=this.opts.es5?e.varKinds.var:e.varKinds.const;l=t._`${l}${n} ${a} = ${i};${this.opts._n}`}else{if(!(i=null==s?void 0:s(a)))throw new n(a);l=t._`${l}${i}${this.opts._n}`}d.set(a,r.Completed)}))}return l}}}(nh),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;const t=th,n=nh;var r=th;Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}});var a=nh;Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return a.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return a.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return a.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return a.varKinds}}),e.operators={GT:new t._Code(">"),GTE:new t._Code(">="),LT:new t._Code("<"),LTE:new t._Code("<="),EQ:new t._Code("==="),NEQ:new t._Code("!=="),NOT:new t._Code("!"),OR:new t._Code("||"),AND:new t._Code("&&"),ADD:new t._Code("+")};class o{optimizeNodes(){return this}optimizeNames(e,t){return this}}class i extends o{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){const r=e?n.varKinds.var:this.varKind,a=void 0===this.rhs?"":` = ${this.rhs}`;return`${r} ${this.name}${a};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&(this.rhs=I(this.rhs,e,t)),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}}class s extends o{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name)||e[this.lhs.str]||this.sideEffects)return this.rhs=I(this.rhs,e,n),this}get names(){return A(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}}class l extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class c extends o{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class u extends o{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class d extends o{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class p extends o{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=I(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}}class m extends o{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce(((t,n)=>t+n.render(e)),"")}optimizeNodes(){const{nodes:e}=this;let t=e.length;for(;t--;){const n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){const{nodes:n}=this;let r=n.length;for(;r--;){const a=n[r];a.optimizeNames(e,t)||(T(e,a.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce(((e,t)=>_(e,t.names)),{})}}class f extends m{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class h extends m{}class y extends f{}y.kind="else";class g extends f{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+="else "+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();const e=this.condition;if(!0===e)return this.nodes;let t=this.else;if(t){const e=t.optimizeNodes();t=this.else=Array.isArray(e)?new y(e):e}return t?!1===e?t instanceof g?t:t.nodes:this.nodes.length?this:new g(L(e),t instanceof g?[t]:t.nodes):!1!==e&&this.nodes.length?this:void 0}optimizeNames(e,t){var n;if(this.else=null===(n=this.else)||void 0===n?void 0:n.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=I(this.condition,e,t),this}get names(){const e=super.names;return A(e,this.condition),this.else&&_(e,this.else.names),e}}g.kind="if";class b extends f{}b.kind="for";class v extends b{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=I(this.iteration,e,t),this}get names(){return _(super.names,this.iteration.names)}}class w extends b{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){const t=e.es5?n.varKinds.var:this.varKind,{name:r,from:a,to:o}=this;return`for(${t} ${r}=${a}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){const e=A(super.names,this.from);return A(e,this.to)}}class k extends b{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=I(this.iterable,e,t),this}get names(){return _(super.names,this.iterable.names)}}class $ extends f{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}$.kind="func";class S extends m{render(e){return"return "+super.render(e)}}S.kind="return";class E extends f{render(e){let t="try"+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),null===(e=this.catch)||void 0===e||e.optimizeNodes(),null===(t=this.finally)||void 0===t||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),null===(n=this.catch)||void 0===n||n.optimizeNames(e,t),null===(r=this.finally)||void 0===r||r.optimizeNames(e,t),this}get names(){const e=super.names;return this.catch&&_(e,this.catch.names),this.finally&&_(e,this.finally.names),e}}class x extends f{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}x.kind="catch";class P extends f{render(e){return"finally"+super.render(e)}}P.kind="finally";function _(e,t){for(const n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function A(e,n){return n instanceof t._CodeOrName?_(e,n.names):e}function I(e,n,r){return e instanceof t.Name?o(e):(a=e)instanceof t._Code&&a._items.some((e=>e instanceof t.Name&&1===n[e.str]&&void 0!==r[e.str]))?new t._Code(e._items.reduce(((e,n)=>(n instanceof t.Name&&(n=o(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e)),[])):e;var a;function o(e){const t=r[e.str];return void 0===t||1!==n[e.str]?e:(delete n[e.str],t)}}function T(e,t){for(const n in t)e[n]=(e[n]||0)-(t[n]||0)}function L(e){return"boolean"==typeof e||"number"==typeof e||null===e?!e:t._`!${N(e)}`}e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?"\n":""},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){const n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){const a=this._scope.toName(t);return void 0!==n&&r&&(this._constants[a.str]=n),this._leafNode(new i(e,a,n)),a}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new l(t,e.operators.ADD,n))}code(e){return"function"==typeof e?e():e!==t.nil&&this._leafNode(new p(e)),this}object(...e){const n=["{"];for(const[r,a]of e)n.length>1&&n.push(","),n.push(r),(r!==a||this.opts.es5)&&(n.push(":"),(0,t.addCodeArg)(n,a));return n.push("}"),new t._Code(n)}if(e,t,n){if(this._blockNode(new g(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new g(e))}else(){return this._elseNode(new y)}endIf(){return this._endBlockNode(g,y)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new v(e),t)}forRange(e,t,r,a,o=(this.opts.es5?n.varKinds.var:n.varKinds.let)){const i=this._scope.toName(e);return this._for(new w(o,i,t,r),(()=>a(i)))}forOf(e,r,a,o=n.varKinds.const){const i=this._scope.toName(e);if(this.opts.es5){const e=r instanceof t.Name?r:this.var("_arr",r);return this.forRange("_i",0,t._`${e}.length`,(n=>{this.var(i,t._`${e}[${n}]`),a(i)}))}return this._for(new k("of",o,i,r),(()=>a(i)))}forIn(e,r,a,o=(this.opts.es5?n.varKinds.var:n.varKinds.const)){if(this.opts.ownProperties)return this.forOf(e,t._`Object.keys(${r})`,a);const i=this._scope.toName(e);return this._for(new k("in",o,i,r),(()=>a(i)))}endFor(){return this._endBlockNode(b)}label(e){return this._leafNode(new c(e))}break(e){return this._leafNode(new u(e))}return(e){const t=new S;if(this._blockNode(t),this.code(e),1!==t.nodes.length)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(S)}try(e,t,n){if(!t&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');const r=new E;if(this._blockNode(r),this.code(e),t){const e=this.name("e");this._currNode=r.catch=new x(e),t(e)}return n&&(this._currNode=r.finally=new P,this.code(n)),this._endBlockNode(x,P)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){const t=this._blockStarts.pop();if(void 0===t)throw new Error("CodeGen: not in self-balancing block");const n=this._nodes.length-t;if(n<0||void 0!==e&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,a){return this._blockNode(new $(e,n,r)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode($)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){const n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){const t=this._currNode;if(!(t instanceof g))throw new Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){const e=this._nodes;return e[e.length-1]}set _currNode(e){const t=this._nodes;t[t.length-1]=e}},e.not=L;const C=j(e.operators.AND);e.and=function(...e){return e.reduce(C)};const R=j(e.operators.OR);function j(e){return(n,r)=>n===t.nil?r:r===t.nil?n:t._`${N(n)} ${e} ${N(r)}`}function N(e){return e instanceof t.Name?e:t._`(${e})`}e.or=function(...e){return e.reduce(R)}}(eh);var rh={};Object.defineProperty(rh,"__esModule",{value:!0}),rh.checkStrictMode=rh.getErrorPath=rh.Type=rh.useFunc=rh.setEvaluated=rh.evaluatedPropsToName=rh.mergeEvaluated=rh.eachItem=rh.unescapeJsonPointer=rh.escapeJsonPointer=rh.escapeFragment=rh.unescapeFragment=rh.schemaRefOrVal=rh.schemaHasRulesButRef=rh.schemaHasRules=rh.checkUnknownRules=rh.alwaysValidSchema=rh.toHash=void 0;const ah=eh,oh=th;function ih(e,t=e.schema){const{opts:n,self:r}=e;if(!n.strictSchema)return;if("boolean"==typeof t)return;const a=r.RULES.keywords;for(const o in t)a[o]||yh(e,`unknown keyword: "${o}"`)}function sh(e,t){if("boolean"==typeof e)return!e;for(const n in e)if(t[n])return!0;return!1}function lh(e){return"number"==typeof e?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}function ch(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function uh({mergeNames:e,mergeToName:t,mergeValues:n,resultToName:r}){return(a,o,i,s)=>{const l=void 0===i?o:i instanceof ah.Name?(o instanceof ah.Name?e(a,o,i):t(a,o,i),i):o instanceof ah.Name?(t(a,i,o),o):n(o,i);return s!==ah.Name||l instanceof ah.Name?l:r(a,l)}}function dh(e,t){if(!0===t)return e.var("props",!0);const n=e.var("props",ah._`{}`);return void 0!==t&&ph(e,n,t),n}function ph(e,t,n){Object.keys(n).forEach((n=>e.assign(ah._`${t}${(0,ah.getProperty)(n)}`,!0)))}rh.toHash=function(e){const t={};for(const n of e)t[n]=!0;return t},rh.alwaysValidSchema=function(e,t){return"boolean"==typeof t?t:0===Object.keys(t).length||(ih(e,t),!sh(t,e.self.RULES.all))},rh.checkUnknownRules=ih,rh.schemaHasRules=sh,rh.schemaHasRulesButRef=function(e,t){if("boolean"==typeof e)return!e;for(const n in e)if("$ref"!==n&&t.all[n])return!0;return!1},rh.schemaRefOrVal=function({topSchemaRef:e,schemaPath:t},n,r,a){if(!a){if("number"==typeof n||"boolean"==typeof n)return n;if("string"==typeof n)return ah._`${n}`}return ah._`${e}${t}${(0,ah.getProperty)(r)}`},rh.unescapeFragment=function(e){return ch(decodeURIComponent(e))},rh.escapeFragment=function(e){return encodeURIComponent(lh(e))},rh.escapeJsonPointer=lh,rh.unescapeJsonPointer=ch,rh.eachItem=function(e,t){if(Array.isArray(e))for(const n of e)t(n);else t(e)},rh.mergeEvaluated={props:uh({mergeNames:(e,t,n)=>e.if(ah._`${n} !== true && ${t} !== undefined`,(()=>{e.if(ah._`${t} === true`,(()=>e.assign(n,!0)),(()=>e.assign(n,ah._`${n} || {}`).code(ah._`Object.assign(${n}, ${t})`)))})),mergeToName:(e,t,n)=>e.if(ah._`${n} !== true`,(()=>{!0===t?e.assign(n,!0):(e.assign(n,ah._`${n} || {}`),ph(e,n,t))})),mergeValues:(e,t)=>!0===e||{...e,...t},resultToName:dh}),items:uh({mergeNames:(e,t,n)=>e.if(ah._`${n} !== true && ${t} !== undefined`,(()=>e.assign(n,ah._`${t} === true ? true : ${n} > ${t} ? ${n} : ${t}`))),mergeToName:(e,t,n)=>e.if(ah._`${n} !== true`,(()=>e.assign(n,!0===t||ah._`${n} > ${t} ? ${n} : ${t}`))),mergeValues:(e,t)=>!0===e||Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})},rh.evaluatedPropsToName=dh,rh.setEvaluated=ph;const mh={};var fh,hh;function yh(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,!0===n)throw new Error(t);e.self.logger.warn(t)}}rh.useFunc=function(e,t){return e.scopeValue("func",{ref:t,code:mh[t.code]||(mh[t.code]=new oh._Code(t.code))})},(hh=fh||(rh.Type=fh={}))[hh.Num=0]="Num",hh[hh.Str=1]="Str",rh.getErrorPath=function(e,t,n){if(e instanceof ah.Name){const r=t===fh.Num;return n?r?ah._`"[" + ${e} + "]"`:ah._`"['" + ${e} + "']"`:r?ah._`"/" + ${e}`:ah._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,ah.getProperty)(e).toString():"/"+lh(e)},rh.checkStrictMode=yh;var gh={};Object.defineProperty(gh,"__esModule",{value:!0});const bh=eh,vh={data:new bh.Name("data"),valCxt:new bh.Name("valCxt"),instancePath:new bh.Name("instancePath"),parentData:new bh.Name("parentData"),parentDataProperty:new bh.Name("parentDataProperty"),rootData:new bh.Name("rootData"),dynamicAnchors:new bh.Name("dynamicAnchors"),vErrors:new bh.Name("vErrors"),errors:new bh.Name("errors"),this:new bh.Name("this"),self:new bh.Name("self"),scope:new bh.Name("scope"),json:new bh.Name("json"),jsonPos:new bh.Name("jsonPos"),jsonLen:new bh.Name("jsonLen"),jsonPart:new bh.Name("jsonPart")};gh.default=vh,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;const t=eh,n=rh,r=gh;function a(e,n){const a=e.const("err",n);e.if(t._`${r.default.vErrors} === null`,(()=>e.assign(r.default.vErrors,t._`[${a}]`)),t._`${r.default.vErrors}.push(${a})`),e.code(t._`${r.default.errors}++`)}function o(e,n){const{gen:r,validateName:a,schemaEnv:o}=e;o.$async?r.throw(t._`new ${e.ValidationError}(${n})`):(r.assign(t._`${a}.errors`,n),r.return(!1))}e.keywordError={message:({keyword:e})=>t.str`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?t.str`"${e}" keyword must be ${n} ($data)`:t.str`"${e}" keyword is invalid ($data)`},e.reportError=function(n,r=e.keywordError,i,l){const{it:c}=n,{gen:u,compositeRule:d,allErrors:p}=c,m=s(n,r,i);(null!=l?l:d||p)?a(u,m):o(c,t._`[${m}]`)},e.reportExtraError=function(t,n=e.keywordError,i){const{it:l}=t,{gen:c,compositeRule:u,allErrors:d}=l;a(c,s(t,n,i)),u||d||o(l,r.default.vErrors)},e.resetErrorsCount=function(e,n){e.assign(r.default.errors,n),e.if(t._`${r.default.vErrors} !== null`,(()=>e.if(n,(()=>e.assign(t._`${r.default.vErrors}.length`,n)),(()=>e.assign(r.default.vErrors,null)))))},e.extendErrors=function({gen:e,keyword:n,schemaValue:a,data:o,errsCount:i,it:s}){if(void 0===i)throw new Error("ajv implementation error");const l=e.name("err");e.forRange("i",i,r.default.errors,(i=>{e.const(l,t._`${r.default.vErrors}[${i}]`),e.if(t._`${l}.instancePath === undefined`,(()=>e.assign(t._`${l}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath)))),e.assign(t._`${l}.schemaPath`,t.str`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign(t._`${l}.schema`,a),e.assign(t._`${l}.data`,o))}))};const i={keyword:new t.Name("keyword"),schemaPath:new t.Name("schemaPath"),params:new t.Name("params"),propertyName:new t.Name("propertyName"),message:new t.Name("message"),schema:new t.Name("schema"),parentSchema:new t.Name("parentSchema")};function s(e,n,a){const{createErrors:o}=e.it;return!1===o?t._`{}`:function(e,n,a={}){const{gen:o,it:s}=e,u=[l(s,a),c(e,a)];return function(e,{params:n,message:a},o){const{keyword:s,data:l,schemaValue:c,it:u}=e,{opts:d,propertyName:p,topSchemaRef:m,schemaPath:f}=u;o.push([i.keyword,s],[i.params,"function"==typeof n?n(e):n||t._`{}`]),d.messages&&o.push([i.message,"function"==typeof a?a(e):a]);d.verbose&&o.push([i.schema,c],[i.parentSchema,t._`${m}${f}`],[r.default.data,l]);p&&o.push([i.propertyName,p])}(e,n,u),o.object(...u)}(e,n,a)}function l({errorPath:e},{instancePath:a}){const o=a?t.str`${e}${(0,n.getErrorPath)(a,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,o)]}function c({keyword:e,it:{errSchemaPath:r}},{schemaPath:a,parentSchema:o}){let s=o?r:t.str`${r}/${e}`;return a&&(s=t.str`${s}${(0,n.getErrorPath)(a,n.Type.Str)}`),[i.schemaPath,s]}}(Qf),Object.defineProperty(Yf,"__esModule",{value:!0}),Yf.boolOrEmptySchema=Yf.topBoolOrEmptySchema=void 0;const wh=Qf,kh=eh,$h=gh,Sh={message:"boolean schema is false"};function Eh(e,t){const{gen:n,data:r}=e,a={gen:n,keyword:"false schema",data:r,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,wh.reportError)(a,Sh,void 0,t)}Yf.topBoolOrEmptySchema=function(e){const{gen:t,schema:n,validateName:r}=e;!1===n?Eh(e,!1):"object"==typeof n&&!0===n.$async?t.return($h.default.data):(t.assign(kh._`${r}.errors`,null),t.return(!0))},Yf.boolOrEmptySchema=function(e,t){const{gen:n,schema:r}=e;!1===r?(n.var(t,!1),Eh(e)):n.var(t,!0)};var xh={},Ph={};Object.defineProperty(Ph,"__esModule",{value:!0}),Ph.getRules=Ph.isJSONType=void 0;const _h=new Set(["string","number","integer","boolean","null","object","array"]);Ph.isJSONType=function(e){return"string"==typeof e&&_h.has(e)},Ph.getRules=function(){const e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}};var Ah={};function Ih(e,t){return t.rules.some((t=>Th(e,t)))}function Th(e,t){var n;return void 0!==e[t.keyword]||(null===(n=t.definition.implements)||void 0===n?void 0:n.some((t=>void 0!==e[t])))}Object.defineProperty(Ah,"__esModule",{value:!0}),Ah.shouldUseRule=Ah.shouldUseGroup=Ah.schemaHasRulesForType=void 0,Ah.schemaHasRulesForType=function({schema:e,self:t},n){const r=t.RULES.types[n];return r&&!0!==r&&Ih(e,r)},Ah.shouldUseGroup=Ih,Ah.shouldUseRule=Th,Object.defineProperty(xh,"__esModule",{value:!0}),xh.reportTypeError=xh.checkDataTypes=xh.checkDataType=xh.coerceAndCheckDataType=xh.getJSONTypes=xh.getSchemaTypes=xh.DataType=void 0;const Lh=Ph,Ch=Ah,Rh=Qf,jh=eh,Nh=rh;var Oh,Fh;function Mh(e){const t=Array.isArray(e)?e:e?[e]:[];if(t.every(Lh.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}(Fh=Oh||(xh.DataType=Oh={}))[Fh.Correct=0]="Correct",Fh[Fh.Wrong=1]="Wrong",xh.getSchemaTypes=function(e){const t=Mh(e.type);if(t.includes("null")){if(!1===e.nullable)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&void 0!==e.nullable)throw new Error('"nullable" cannot be used without "type"');!0===e.nullable&&t.push("null")}return t},xh.getJSONTypes=Mh,xh.coerceAndCheckDataType=function(e,t){const{gen:n,data:r,opts:a}=e,o=function(e,t){return t?e.filter((e=>Hh.has(e)||"array"===t&&"array"===e)):[]}(t,a.coerceTypes),i=t.length>0&&!(0===o.length&&1===t.length&&(0,Ch.schemaHasRulesForType)(e,t[0]));if(i){const i=qh(t,r,a.strictNumbers,Oh.Wrong);n.if(i,(()=>{o.length?function(e,t,n){const{gen:r,data:a,opts:o}=e,i=r.let("dataType",jh._`typeof ${a}`),s=r.let("coerced",jh._`undefined`);"array"===o.coerceTypes&&r.if(jh._`${i} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,(()=>r.assign(a,jh._`${a}[0]`).assign(i,jh._`typeof ${a}`).if(qh(t,a,o.strictNumbers),(()=>r.assign(s,a)))));r.if(jh._`${s} !== undefined`);for(const c of n)(Hh.has(c)||"array"===c&&"array"===o.coerceTypes)&&l(c);function l(e){switch(e){case"string":return void r.elseIf(jh._`${i} == "number" || ${i} == "boolean"`).assign(s,jh._`"" + ${a}`).elseIf(jh._`${a} === null`).assign(s,jh._`""`);case"number":return void r.elseIf(jh._`${i} == "boolean" || ${a} === null
20
+ */function Gd(e){return!0===Ud(e)&&"[object Object]"===Object.prototype.toString.call(e)}const Kd=function(e,t){switch(Wd(e)){case"array":return e.slice();case"object":return Object.assign({},e);case"date":return new e.constructor(Number(e));case"map":return new Map(e);case"set":return new Set(e);case"buffer":return function(e){const t=e.length,n=Buffer.allocUnsafe?Buffer.allocUnsafe(t):Buffer.from(t);return e.copy(n),n}(e);case"symbol":return function(e){return Vd?Object(Vd.call(e)):{}}(e);case"arraybuffer":return function(e){const t=new e.constructor(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}(e);case"float32array":case"float64array":case"int16array":case"int32array":case"int8array":case"uint16array":case"uint32array":case"uint8clampedarray":case"uint8array":return function(e){return new e.constructor(e.buffer,e.byteOffset,e.length)}(e);case"regexp":return function(e){const t=void 0!==e.flags?e.flags:/\w+$/.exec(e)||void 0,n=new e.constructor(e.source,t);return n.lastIndex=e.lastIndex,n}(e);case"error":return Object.create(e);default:return e}},Zd=Dd,Xd=function(e){var t,n;return!(!1===Gd(e)||(t=e.constructor,"function"!=typeof t)||(n=t.prototype,!1===Gd(n))||!1===n.hasOwnProperty("isPrototypeOf"))};function Jd(e,t){switch(Zd(e)){case"object":return function(e,t){if("function"==typeof t)return t(e);if(t||Xd(e)){const n=new e.constructor;for(let r in e)n[r]=Jd(e[r],t);return n}return e}(e,t);case"array":return function(e,t){const n=new e.constructor(e.length);for(let r=0;r<e.length;r++)n[r]=Jd(e[r],t);return n}(e,t);default:return Kd(e)}}const Yd=Bd(Jd);let Qd=class{constructor({id:e=null,created:t=null}={}){this.id=e||((e=21)=>{let t="",n=e;for(;n--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t})(),this.created=t||(new Date).getTime(),this.cancelSource=Td.CancelToken.source(),this.cancel=this.cancelSource.cancel,this.cancelToken=this.cancelSource.token,Rd(this,{exclude:["cancelSource","cancelToken","cancel"]})}};class ep{constructor(){if(ep.instance)return ep.instance;this.requests={},ep.instance=this}getAll(){return Object.values(this.requests)}getById(e){return this.requests[e]}deleteById(e){this.requests[e]&&delete this.requests[e]}save(){const e=new Qd;return this.requests[e.id]=e,{id:e.id,cancelToken:e.cancelToken}}}const tp=new ep;class np{}Cd(np,"cancelById",((e,t)=>{try{tp.getById(e).cancel(t),tp.deleteById(e)}catch{}})),Cd(np,"cancelAll",(async e=>{for(const t of tp.getAll())await t.cancel(e),tp.deleteById(t.id)}));const rp={cancelAll:async(...e)=>await np.cancelAll(...e)},ap={request:"request",response:"response"},op=e=>{if(!Object.values(ap).includes(e))throw new Error(`There is no such interceptor type as "${e}"`);return!0};function ip({options:e}){const t=Td.create({baseURL:n(),timeout:e.requestTimeout,headers:r()});function n(){let t=e.isSandbox?e.apiEndpoints.sandbox:e.apiEndpoints.live;return e.apiVersion&&(t=`${t}/${e.apiVersion}`),e.organizationId&&(t=`${t}/organizations/${e.organizationId}`),`${t}`}function r(){const t={"REB-API-CONSUMER":`${["Rebilly",e.appName,"js-sdk"].filter((e=>e)).join("/")}@28e0469`};return e.apiKey&&(t["REB-APIKEY"]=e.apiKey),t}function a(){return Yd(t.defaults.headers)}function o(e,{thenDelegate:n,catchDelegate:r=()=>{}}){return op(e)&&t.interceptors[ap[e]].use(n,r)}function i(e,n){return op(e)&&t.interceptors[ap[e]].eject(n)}function s({request:e,isCollection:t,config:n}){const r=u(n),{id:a,cancelToken:o}=tp.save();r.cancelToken=o;const i=async function(){try{return function({response:e,isCollection:t,config:n}){return t?new Od(e,n):new jd(e,n)}({response:await e(r),isCollection:t,config:r})}catch(n){return l({error:n,config:r})}finally{tp.deleteById(a)}}();return i.cancel=e=>np.cancelById(a,e),i}function l({error:e}){if(Td.isCancel(e))throw new Hd.RebillyCanceledError(e);if(e.response)switch(Number(e.response.status)){case 401:throw new Hd.RebillyForbiddenError(e);case 404:throw new Hd.RebillyNotFoundError(e);case 405:throw new Hd.RebillyMethodNotAllowedError(e);case 409:throw new Hd.RebillyConflictError(e);case 422:throw new Hd.RebillyValidationError(e);default:throw new Hd.RebillyRequestError(e)}throw"ECONNABORTED"===e.code?new Hd.RebillyTimeoutError(e):new Hd.RebillyRequestError(e)}function c(e){return void 0!==e.params&&(e.params=Object.keys(e.params).filter((t=>null!==e.params[t]&&""!==e.params[t])).reduce(((t,n)=>(t[n]=e.params[n],t)),{})),e}function u(e={}){return{...c(e)}}function d(e,n={}){return s({request:n=>t.get(e,n),config:{params:n}})}function p(e,n,r={}){let o={};return!1===r.authenticate&&(o={headers:a()},delete o.headers.common["REB-APIKEY"],delete o.headers.common.Authorization),r.params&&(o.params={...r.params}),s({request:r=>t.post(e,n,r),config:o})}function m(e,n,r={}){return s({request:r=>t.put(e,n,r),config:{params:r}})}return{getInstance:function(){return t},addRequestInterceptor:function({thenDelegate:e,catchDelegate:t=()=>{}}){return o(ap.request,{thenDelegate:e,catchDelegate:t})},removeRequestInterceptor:function(e){i(ap.request,e)},addResponseInterceptor:function({thenDelegate:e,catchDelegate:t=()=>{}}){return o(ap.response,{thenDelegate:e,catchDelegate:t})},removeResponseInterceptor:function(e){i(ap.response,e)},setTimeout:function(n){e.requestTimeout=Number(n),t.defaults.timeout=e.requestTimeout},setProxyAgent:function({host:e,port:n,auth:r}){t.defaults.proxy={host:e,port:n,auth:r}},setSessionToken:function(n=e.jwt){const r=a();e.apiKey=null,e.jwt=n,delete r.common["REB-APIKEY"],r.common.Authorization=`Bearer ${n}`,t.defaults.headers=r},setPublishableKey:function(n=e.publishableKey){const r=a();e.publishableKey=n,r.common.Authorization=`${n}`,t.defaults.headers=r},setEndpoints:function({live:r=null,sandbox:a=null}){r&&(e.apiEndpoints.live=r),a&&(e.apiEndpoints.sandbox=a),t.defaults.baseURL=n()},get:d,getAll:function(e,n){return s({request:n=>t.get(e,n),config:{params:n},isCollection:!0})},post:p,put:m,patch:function(e,n){return s({request:r=>t.patch(e,n,r),config:{}})},delete:function(e){return s({request:n=>t.delete(e,n),config:{}})},deleteAll:function(e,n){return s({request:n=>t.delete(e,n),config:{data:{...n}}})},create:async function(e,t,n,r={}){if(""===t)return p(e,n,{params:r});try{if(200===(await d(e)).response.status)throw new Hd.RebillyConflictError({message:"A resource already exists with this ID. Please use a different ID."})}catch(a){if("RebillyNotFoundError"===a.name)return m(e,n,r);throw a}},download:async function(e,n){const r=u(n);try{const n=await t.get(e,r);return new Fd(n,r)}catch(a){return l({error:a,config:r})}}}}const sp={Accept:"application/pdf"};let lp=class{constructor({apiHandler:e}){this.account=function({apiHandler:e}){return{forgotPassword:({data:t})=>e.post("forgot-password",t,{authenticate:!1})}}({apiHandler:e}),this.allowlists=function({apiHandler:e}){return{getAllowlistCollection({filter:t=null,sort:n=null,limit:r=null,offset:a=null}={}){const o={filter:t,sort:n,limit:r,offset:a};return e.getAll("allowlists",o)},storeAllowlist:({data:t})=>e.post("allowlists",t),getAllowlist:({id:t})=>e.get(`allowlists/${t}`),delete:({id:t})=>e.delete(`allowlists/${t}`)}}({apiHandler:e}),this.amlChecks=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("aml-checks",i)},get:({id:t})=>e.get(`aml-checks/${t}`),startReview:({id:t})=>e.post(`aml-checks/${t}/start-review`),stopReview:({id:t})=>e.post(`aml-checks/${t}/stop-review`),review:({id:t,data:n})=>e.post(`aml-checks/${t}/review`,n)}}({apiHandler:e}),this.amlSettings=function({apiHandler:e}){return{getAmlSettings:()=>e.get("aml-settings"),putAmlSettings:({data:t})=>e.put("aml-settings",t)}}({apiHandler:e}),this.apiKeys=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null}={}){const a={limit:t,offset:n,sort:r};return e.getAll("api-keys",a)},create:({id:t="",data:n})=>e.create(`api-keys/${t}`,t,n),get:({id:t})=>e.get(`api-keys/${t}`),update:({id:t,data:n})=>e.put(`api-keys/${t}`,n),delete:({id:t})=>e.delete(`api-keys/${t}`)}}({apiHandler:e}),this.applicationInstances=function({apiHandler:e}){return{get:({applicationId:t})=>e.get(`application-instances/${t}`),upsert:({applicationId:t,data:n})=>e.put(`application-instances/${t}`,n),delete:({applicationId:t})=>e.delete(`application-instances/${t}`),getConfiguration:({applicationId:t})=>e.get(`application-instances/${t}/configuration`),upsertConfiguration:({applicationId:t,data:n})=>e.put(`application-instances/${t}/configuration`,n)}}({apiHandler:e}),this.applications=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("applications",l)},create:({data:t})=>e.post("applications",t),get:({id:t})=>e.get(`applications/${t}`),getInstances({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`applications/${t}/instances`,a)},getInstance:({id:t,organizationId:n})=>e.get(`applications/${t}/instances/${n}`)}}({apiHandler:e}),this.balanceTransactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("balance-transactions",o)},get:({id:t})=>e.get(`balance-transactions/${t}`)}}({apiHandler:e}),this.billingPortals=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("billing-portals",i)},create:({id:t="",data:n})=>e.create(`billing-portals/${t}`,t,n),get:({id:t})=>e.get(`billing-portals/${t}`),update:({id:t,data:n})=>e.put(`billing-portals/${t}`,n),delete:({id:t})=>e.delete(`billing-portals/${t}`)}}({apiHandler:e}),this.blocklists=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("blocklists",i)},create:({id:t="",data:n})=>e.create(`blocklists/${t}`,t,n),get:({id:t})=>e.get(`blocklists/${t}`),delete:({id:t})=>e.delete(`blocklists/${t}`)}}({apiHandler:e}),this.broadcastMessages=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null}={}){const o={limit:t,offset:n,sort:r,filter:a};return e.getAll("broadcast-messages",o)},create:({data:t})=>e.post("broadcast-messages",t),get:({id:t})=>e.get(`broadcast-messages/${t}`),delete:({id:t})=>e.delete(`broadcast-messages/${t}`),update:({id:t,data:n})=>e.patch(`broadcast-messages/${t}`,n)}}({apiHandler:e}),this.checkoutForms=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("checkout-forms",i)},create:({id:t="",data:n})=>e.create(`checkout-forms/${t}`,t,n),get:({id:t})=>e.get(`checkout-forms/${t}`),update:({id:t,data:n})=>e.put(`checkout-forms/${t}`,n),delete:({id:t})=>e.delete(`checkout-forms/${t}`)}}({apiHandler:e}),this.coupons=function({apiHandler:e}){return{getAllRedemptions({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("coupons-redemptions",i)},redeem:({data:t})=>e.post("coupons-redemptions",t),getRedemption:({id:t})=>e.get(`coupons-redemptions/${t}`),cancelRedemption:({id:t})=>e.post(`coupons-redemptions/${t}/cancel`),getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("coupons",i)},create:({id:t="",data:n})=>e.create(`coupons/${t}`,t,n),get:({id:t})=>e.get(`coupons/${t}`),update:({id:t,data:n})=>e.put(`coupons/${t}`,n),setExpiration:({id:t,data:n})=>e.post(`coupons/${t}/expiration`,n)}}({apiHandler:e}),this.creditMemos=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("credit-memos",i)},create:({id:t="",data:n})=>e.create(`credit-memos/${t}`,t,n),get:({id:t})=>e.get(`credit-memos/${t}`),update:({id:t,data:n})=>e.put(`credit-memos/${t}`,n),patch:({id:t,data:n})=>e.patch(`credit-memos/${t}`,n),void:({id:t})=>e.post(`credit-memos/${t}/void`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`credit-memos/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`credit-memos/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`credit-memos/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`credit-memos/${t}/timeline/${n}`)}}({apiHandler:e}),this.customDomains=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("custom-domains",i)},create:({data:t})=>e.post("custom-domains",t),get:({domain:t})=>e.get(`custom-domains/${t}`),delete:({domain:t})=>e.delete(`custom-domains/${t}`)}}({apiHandler:e}),this.customFields=function({apiHandler:e}){return{getAll({resource:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`custom-fields/${t}`,a)},get:({resource:t,name:n})=>e.get(`custom-fields/${t}/${n}`),create:({resource:t,name:n,data:r})=>e.put(`custom-fields/${t}/${n}`,r),update:({resource:t,name:n,data:r})=>e.put(`custom-fields/${t}/${n}`,r)}}({apiHandler:e}),this.customerAuthentication=function({apiHandler:e}){return{getAuthOptions:()=>e.get("authentication-options"),updateAuthOptions:({data:t})=>e.put("authentication-options",t),getAllAuthTokens({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("authentication-tokens",r)},login:({data:t})=>e.post("authentication-tokens",t),verify:({token:t})=>e.get(`authentication-tokens/${t}`),logout:({token:t})=>e.delete(`authentication-tokens/${t}`),exchangeToken:({token:t,data:n})=>e.post(`authentication-tokens/${t}/exchange`,n),getAllCredentials({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("credentials",r)},createCredential:({id:t="",data:n})=>e.create(`credentials/${t}`,t,n),getCredential:({id:t})=>e.get(`credentials/${t}`),updateCredential:({id:t,data:n})=>e.put(`credentials/${t}`,n),deleteCredential:({id:t})=>e.delete(`credentials/${t}`),getAllResetPasswordTokens({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("password-tokens",r)},createResetPasswordToken:({data:t})=>e.post("password-tokens",t),getResetPasswordToken:({id:t})=>e.get(`password-tokens/${t}`),deleteResetPasswordToken:({id:t})=>e.delete(`password-tokens/${t}`)}}({apiHandler:e}),this.customers=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("customers",l)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`customers/${t}`,t,n,a)},get({id:t,expand:n=null,fields:r=null}){const a={expand:n,fields:r};return e.get(`customers/${t}`,a)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`customers/${t}`,n,a)},merge:({id:t,targetCustomerId:n})=>e.delete(`customers/${t}?targetCustomerId=${n}`),getLeadSource:({id:t})=>e.get(`customers/${t}/lead-source`),createLeadSource:({id:t,data:n})=>e.put(`customers/${t}/lead-source`,n),updateLeadSource:({id:t,data:n})=>e.put(`customers/${t}/lead-source`,n),deleteLeadSource:({id:t})=>e.delete(`customers/${t}/lead-source`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`customers/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`customers/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`customers/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`customers/${t}/timeline/${n}`),getCustomerEddScore:({id:t})=>e.get(`customers/${t}/edd-score`),patchCustomerEddScore:({id:t,data:n})=>e.patch(`customers/${t}/edd-score`,n),getEddTimelineCollection({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`customers/${t}/edd-timeline`,s)},createEddTimelineComment:({id:t,data:n})=>e.post(`customers/${t}/edd-timeline`,n),getEddTimelineMessage:({id:t,messageId:n})=>e.get(`customers/${t}/edd-timeline/${n}`),deleteEddTimelineMessage:({id:t,messageId:n})=>e.delete(`customers/${t}/edd-timeline/${n}`),getAllEddSearchResults({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`customers/${t}/edd-search-results`,a)},getEddSearchResult:({id:t,searchResultId:n})=>e.get(`customers/${t}/edd-search-results/${n}`)}}({apiHandler:e}),this.depositCustomPropertySets=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-custom-property-sets",o)},create:({id:t="",data:n})=>e.create(`deposit-custom-property-sets/${t}`,t,n),get:({id:t})=>e.get(`deposit-custom-property-sets/${t}`),update:({id:t,data:n})=>e.put(`deposit-custom-property-sets/${t}`,n),delete:({id:t})=>e.delete(`deposit-custom-property-sets/${t}`)}}({apiHandler:e}),this.depositRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-requests",o)},create:({data:t})=>e.post("deposit-requests",t),get({id:t,expand:n=null}){const r={expand:n};return e.get(`deposit-requests/${t}`,r)}}}({apiHandler:e}),this.depositStrategies=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("deposit-strategies",o)},create:({id:t="",data:n})=>e.create(`deposit-strategies/${t}`,t,n),get:({id:t})=>e.get(`deposit-strategies/${t}`),update:({id:t,data:n})=>e.put(`deposit-strategies/${t}`,n),delete:({id:t})=>e.delete(`deposit-strategies/${t}`)}}({apiHandler:e}),this.digitalWallets=function({apiHandler:e}){return{validate:({data:t})=>e.post("digital-wallets/validation",t),create:({data:t})=>e.post("digital-wallets/onboarding/apple-pay",t)}}({apiHandler:e}),this.disputes=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("disputes",s)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`disputes/${t}`,t,n,a)},get:({id:t})=>e.get(`disputes/${t}`),update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`disputes/${t}`,n,a)}}}({apiHandler:e}),this.emailDeliverySettings=function({apiHandler:e}){return{verify:({token:t})=>e.put(`email-delivery-setting-verifications/${t}`),getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("email-delivery-settings",i)},create:({data:t})=>e.post("email-delivery-settings",t),get:({id:t})=>e.get(`email-delivery-settings/${t}`),delete:({id:t})=>e.delete(`email-delivery-settings/${t}`),update:({id:t,data:n})=>e.patch(`email-delivery-settings/${t}`,n),resendVerification:({id:t})=>e.post(`email-delivery-settings/${t}/resend-email-verification`)}}({apiHandler:e}),this.emailMessages=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,q:r=null,sort:a=null,filter:o=null}={}){const i={limit:t,offset:n,q:r,sort:a,filter:o};return e.getAll("email-messages",i)},create:({data:t})=>e.post("email-messages",t),get:({id:t})=>e.get(`email-messages/${t}`),delete:({id:t})=>e.delete(`email-messages/${t}`),send:({id:t,data:n={status:"outbox"}})=>e.patch(`email-messages/${t}`,n)}}({apiHandler:e}),this.emailNotifications=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("email-notifications",r)}}}({apiHandler:e}),this.events=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null}={}){const o={limit:t,offset:n,filter:r,q:a};return e.getAll("events",o)},get:({eventType:t})=>e.get(`events/${t}`),getRules:({eventType:t})=>e.get(`events/${t}/rules`),createRules:({eventType:t,data:n})=>e.put(`events/${t}/rules`,n),updateRules:({eventType:t,data:n})=>e.put(`events/${t}/rules`,n),getAllTimelineMessages({eventType:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`events/${t}/timeline`,s)},createTimelineComment:({eventType:t,data:n})=>e.post(`events/${t}/timeline`,n),getTimelineMessage:({eventType:t,messageId:n})=>e.get(`events/${t}/timeline/${n}`),deleteTimelineMessage:({eventType:t,messageId:n})=>e.delete(`events/${t}/timeline/${n}`),getRulesHistory({eventType:t,limit:n=null,offset:r=null,filter:a=null,q:o=null,sort:i=null,fields:s=null}){const l={limit:n,offset:r,filter:a,q:o,sort:i,fields:s};return e.getAll(`events/${t}/rules/history`,l)},getRulesVersionNumber({eventType:t,version:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/history/${n}`,a)},getRulesVersionDetail({eventType:t,version:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/versions/${n}`,a)},getAllDraftRulesets({eventType:t,limit:n=null,offset:r=null,filter:a=null,q:o=null,sort:i=null,fields:s=null}){const l={limit:n,offset:r,filter:a,q:o,sort:i,fields:s};return e.getAll(`events/${t}/rules/drafts`,l)},createDraftRuleset:({eventType:t,data:n})=>e.post(`events/${t}/rules/drafts`,n),getDraftRuleset({eventType:t,id:n,fields:r=null}){const a={fields:r};return e.get(`events/${t}/rules/drafts/${n}`,a)},updateDraftRuleset:({eventType:t,id:n,data:r})=>e.put(`events/${t}/rules/drafts/${n}`,r),deleteDraftRuleset:({eventType:t,id:n})=>e.delete(`events/${t}/rules/drafts/${n}`)}}({apiHandler:e}),this.externalIdentifiers=function({apiHandler:e}){return{get:({resource:t,resourceId:n,service:r})=>e.get(`${t}/${n}/external-identifiers/${r}`),sync:({resource:t,resourceId:n,service:r})=>e.post(`${t}/${n}/external-identifiers/${r}`),update:({resource:t,resourceId:n,service:r,data:a})=>e.put(`${t}/${n}/external-identifiers/${r}`,a),delete:({resource:t,resourceId:n,service:r})=>e.delete(`${t}/${n}/external-identifiers/${r}`)}}({apiHandler:e}),this.externalServicesSettings=function({apiHandler:e}){return{getExternalServiceSettings:()=>e.get("external-services-settings"),updateExternalServiceSettings:({data:t})=>e.put("external-services-settings",t)}}({apiHandler:e}),this.fees=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("fees",o)},create:({id:t="",data:n})=>e.create(`fees/${t}`,t,n),get:({id:t})=>e.get(`fees/${t}`),upsert:({id:t,data:n})=>e.put(`fees/${t}`,n),delete:({id:t})=>e.delete(`fees/${t}`),patch:({id:t,data:n})=>e.patch(`fees/${t}`,n)}}({apiHandler:e}),this.files=function({apiHandler:e}){return{getAllAttachments({limit:t=null,offset:n=null,filter:r=null,q:a=null,expand:o=null,fields:i=null,sort:s=null}={}){const l={limit:t,offset:n,filter:r,q:a,expand:o,fields:i,sort:s};return e.getAll("attachments",l)},attach({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`attachments/${t}`,t,n,a)},getAttachment:({id:t})=>e.get(`attachments/${t}`),updateAttachment({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`attachments/${t}`,n,a)},detach:({id:t})=>e.delete(`attachments/${t}`),getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,fields:o=null,sort:i=null}={}){const s={limit:t,offset:n,filter:r,q:a,fields:o,sort:i};return e.getAll("files",s)},upload:({fileObject:t})=>e.post("files",t),get:({id:t})=>e.get(`files/${t}`),update:({id:t,data:n})=>e.put(`files/${t}`,n),delete:({id:t})=>e.delete(`files/${t}`),download:({id:t})=>e.download(`files/${t}/download`,{responseType:"arraybuffer"}),detachAndDelete({id:t}){const n={filter:`fileId:${t}`};let r=[];const a=(async()=>{const a=this.getAllAttachments(n);r.push(a);const o=(await a).items.map((e=>this.detach({id:e.fields.id})));r=[...r,o],await Promise.all(o);const i=e.delete(`files/${t}`);return r.push(i),i})();return a.cancel=()=>{r.forEach((e=>e.cancel()))},a},uploadAndUpdate({fileObject:e,data:t={description:"",tags:[""]}}){const n=[],r=(async()=>{const r=this.upload({fileObject:e});n.push(r),await r;const a={name:r.name,extension:r.extension,description:t.description,tags:t.tags,url:""},o=this.update({id:r.fields.id,data:a});return n.push(o),o})();return r.cancel=()=>{n.forEach((e=>e.cancel()))},r}}}({apiHandler:e}),this.gatewayAccounts=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null,fields:i=null}={}){const s={limit:t,offset:n,sort:r,filter:a,q:o,fields:i};return e.getAll("gateway-accounts",s)},create:({id:t="",data:n})=>e.create(`gateway-accounts/${t}`,t,n),get:({id:t})=>e.get(`gateway-accounts/${t}`),upsert:({id:t,data:n})=>e.put(`gateway-accounts/${t}`,n),delete:({id:t})=>e.delete(`gateway-accounts/${t}`),update:({id:t,data:n})=>e.patch(`gateway-accounts/${t}`,n),close:({id:t})=>e.post(`gateway-accounts/${t}/close`),disable:({id:t})=>e.post(`gateway-accounts/${t}/disable`),getAllDowntimeSchedules({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null}){const i={limit:n,offset:r,filter:a,sort:o};return e.getAll(`gateway-accounts/${t}/downtime-schedules`,i)},createDowntimeSchedule:({id:t,data:n})=>e.post(`gateway-accounts/${t}/downtime-schedules`,n),getDowntimeSchedule:({id:t,downtimeId:n})=>e.get(`gateway-accounts/${t}/downtime-schedules/${n}`),updateDowntimeSchedule:({id:t,downtimeId:n,data:r})=>e.put(`gateway-accounts/${t}/downtime-schedules/${n}`,r),deleteDowntimeSchedule:({id:t,downtimeId:n})=>e.delete(`gateway-accounts/${t}/downtime-schedules/${n}`),enable:({id:t})=>e.post(`gateway-accounts/${t}/enable`),getAllVolumeLimits:({id:t})=>e.getAll(`gateway-accounts/${t}/limits`),getVolumeLimit:({id:t,limitId:n})=>e.get(`gateway-accounts/${t}/limits/${n}`),updateVolumeLimit:({id:t,limitId:n,data:r})=>e.put(`gateway-accounts/${t}/limits/${n}`,r),deleteVolumeLimit:({id:t,limitId:n})=>e.delete(`gateway-accounts/${t}/limits/${n}`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`gateway-accounts/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`gateway-accounts/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`gateway-accounts/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`gateway-accounts/${t}/timeline/${n}`),checkCredentials:({id:t})=>e.post(`gateway-accounts/${t}/check-credentials`),getFinancialSettings:({id:t})=>e.get(`gateway-accounts/${t}/financial-settings`),setFinancialSettings:({id:t,data:n})=>e.put(`gateway-accounts/${t}/financial-settings`,n)}}({apiHandler:e}),this.integrations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("integrations",r)},get:({label:t})=>e.get(`integrations/${t}`)}}({apiHandler:e}),this.invoices=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("invoices",s)},create:({id:t="",data:n})=>e.create(`invoices/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`invoices/${t}`,r)},update:({id:t,data:n})=>e.put(`invoices/${t}`,n),getAllInvoiceItems({id:t,limit:n=null,offset:r=null,expand:a=null}){const o={limit:n,offset:r,expand:a};return e.getAll(`invoices/${t}/items`,o)},createInvoiceItem:({id:t,data:n})=>e.post(`invoices/${t}/items`,n),getInvoiceItem:({id:t,itemId:n})=>e.get(`invoices/${t}/items/${n}`),updateInvoiceItem:({id:t,itemId:n,data:r})=>e.put(`invoices/${t}/items/${n}`,r),deleteInvoiceItem:({id:t,itemId:n})=>e.delete(`invoices/${t}/items/${n}`),issue:({id:t,data:n})=>e.post(`invoices/${t}/issue`,n),abandon:({id:t})=>e.post(`invoices/${t}/abandon`),void:({id:t})=>e.post(`invoices/${t}/void`),recalculate:({id:t})=>e.post(`invoices/${t}/recalculate`),reissue:({id:t,data:n})=>e.post(`invoices/${t}/reissue`,n),getAllTransactionAllocations({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`invoices/${t}/transaction-allocations`,a)},applyTransaction:({id:t,data:n})=>e.post(`invoices/${t}/transaction`,n),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`invoices/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`invoices/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`invoices/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`invoices/${t}/timeline/${n}`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`invoices/${t}`,n)}}}({apiHandler:e}),this.journalAccounts=function({apiHandler:e}){return{getAllAccounts({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("journal-accounts",o)},createAccount:({id:t="",data:n})=>e.create(`journal-accounts/${t}`,t,n),getAccount:({id:t})=>e.get(`journal-accounts/${t}`),updateAccount:({id:t,data:n})=>e.put(`journal-accounts/${t}`,n)}}({apiHandler:e}),this.journalEntries=function({apiHandler:e}){return{getAllEntries({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("journal-entries",o)},createEntry:({id:t="",data:n})=>e.create(`journal-entries/${t}`,t,n),getEntry:({id:t})=>e.get(`journal-entries/${t}`),updateEntry:({id:t,data:n})=>e.put(`journal-entries/${t}`,n),getAllRecords({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,expand:i=null}){const s={limit:n,offset:r,filter:a,sort:o,expand:i};return e.getAll(`journal-entries/${t}/records`,s)},createRecord:({id:t,data:n})=>e.post(`journal-entries/${t}/records`,n),getRecord:({id:t,journalRecordId:n})=>e.get(`journal-entries/${t}/records/${n}`),updateRecord:({id:t,journalRecordId:n,data:r})=>e.put(`journal-entries/${t}/records/${n}`,r),deleteRecord:({id:t,journalRecordId:n})=>e.delete(`journal-entries/${t}/records/${n}`)}}({apiHandler:e}),this.kycDocuments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,expand:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,expand:o};return e.getAll("kyc-documents",i)},create:({id:t="",data:n})=>e.create(`kyc-documents/${t}`,t,n),get:({id:t})=>e.get(`kyc-documents/${t}`),update:({id:t,data:n})=>e.put(`kyc-documents/${t}`,n),accept:({id:t})=>e.post(`kyc-documents/${t}/acceptance`),matches:({id:t,data:n})=>e.post(`kyc-documents/${t}/matches`,n),reject:({id:t,data:n})=>e.post(`kyc-documents/${t}/rejection`,n),review:({id:t})=>e.post(`kyc-documents/${t}/review`),startReview:({id:t})=>e.post(`kyc-documents/${t}/start-review`),stopReview:({id:t})=>e.post(`kyc-documents/${t}/stop-review`)}}({apiHandler:e}),this.kycRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,expand:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,expand:o};return e.getAll("kyc-requests",i)},create:({data:t})=>e.post("kyc-requests",t),get:({id:t})=>e.get(`kyc-requests/${t}`),delete:({id:t})=>e.delete(`kyc-requests/${t}`),update:({id:t,data:n})=>e.patch(`kyc-requests/${t}`,n)}}({apiHandler:e}),this.kycSettings=function({apiHandler:e}){return{getKycSettings:()=>e.get("kyc-settings"),updateKycSettings:({data:t})=>e.put("kyc-settings",t)}}({apiHandler:e}),this.lists=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,fields:o=null,q:i=null}={}){const s={limit:t,offset:n,filter:r,sort:a,fields:o,q:i};return e.getAll("lists",s)},create:({id:t="",data:n})=>e.create(`lists/${t}`,t,n),getLatestVersion:({id:t})=>e.get(`lists/${t}`),update:({id:t,data:n})=>e.put(`lists/${t}`,n),delete:({id:t})=>e.delete(`lists/${t}`),getByVersion:({id:t,version:n})=>e.get(`lists/${t}/${n}`)}}({apiHandler:e}),this.memberships=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("memberships",o)},get:({organizationId:t,userId:n})=>e.get(`memberships/${t}/${n}`),update:({organizationId:t,userId:n,data:r})=>e.put(`memberships/${t}/${n}`,r),delete:({organizationId:t,userId:n})=>e.delete(`memberships/${t}/${n}`)}}({apiHandler:e}),this.organizationExports=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("organization-exports",i)},create:({data:t})=>e.post("organization-exports",t),get:({id:t})=>e.get(`organization-exports/${t}`)}}({apiHandler:e}),this.organizations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("organizations",i)},create:({data:t})=>e.post("organizations",t),get:({id:t})=>e.get(`organizations/${t}`),update:({id:t,data:n})=>e.patch(`organizations/${t}`,n)}}({apiHandler:e}),this.paymentCardsBankNames=function({apiHandler:e}){return{getAll({limit:t=null,q:n=null}={}){const r={limit:t,q:n};return e.getAll("payment-cards-bank-names",r)}}}({apiHandler:e}),this.paymentInstruments=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("payment-instruments",s)},create:({data:t})=>e.post("payment-instruments",t),get:({id:t})=>e.get(`payment-instruments/${t}`),update:({id:t,data:n})=>e.patch(`payment-instruments/${t}`,n),deactivate:({id:t})=>e.post(`payment-instruments/${t}/deactivation`),nameInquiry:({id:t,data:n})=>e.post(`payment-instruments/${t}/name-inquiry`,n)}}({apiHandler:e}),this.paymentMethods=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("payment-methods",r)},get:({apiName:t})=>e.get(`payment-methods/${t}`)}}({apiHandler:e}),this.paymentTokens=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("tokens",r)},create:({data:t})=>e.post("tokens",t),get:({token:t})=>e.get(`tokens/${t}`)}}({apiHandler:e}),this.payoutRequests=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("payout-requests",o)},create:({id:t="",data:n})=>e.create(`payout-requests/${t}`,t,n),get:({id:t})=>e.get(`payout-requests/${t}`),update:({id:t,data:n})=>e.put(`payout-requests/${t}`,n),cancel:({id:t,data:n})=>e.post(`payout-requests/${t}/cancel`,n),getPaymentInstruments:({id:t})=>e.get(`payout-requests/${t}/payment-instruments`)}}({apiHandler:e}),this.payouts=function({apiHandler:e}){return{create:({data:t})=>e.post("payouts",t)}}({apiHandler:e}),this.plans=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("plans",i)},create:({id:t="",data:n})=>e.create(`plans/${t}`,t,n),get:({id:t})=>e.get(`plans/${t}`),update:({id:t,data:n})=>e.put(`plans/${t}`,n),delete:({id:t})=>e.delete(`plans/${t}`)}}({apiHandler:e}),this.previews=function({apiHandler:e}){return{order:({data:t})=>e.post("previews/orders",t),sendEmailRuleAction:({data:t})=>e.post("previews/rule-actions/send-email",t),webhook:({data:t})=>e.post("previews/webhooks",t)}}({apiHandler:e}),this.products=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("products",i)},create:({id:t="",data:n})=>e.create(`products/${t}`,t,n),get:({id:t})=>e.get(`products/${t}`),update:({id:t,data:n})=>e.put(`products/${t}`,n),delete:({id:t})=>e.delete(`products/${t}`)}}({apiHandler:e}),this.profile=function({apiHandler:e}){return{startPermissionsEmulation:({data:t})=>e.post("permissions-emulation",t),stopPermissionsEmulation:()=>e.delete("permissions-emulation"),get:()=>e.get("profile"),update:({data:t})=>e.put("profile",t),getMfa:()=>e.get("profile/mfa"),updateMfa:()=>e.post("profile/mfa"),deleteMfa:()=>e.delete("profile/mfa")}}({apiHandler:e}),this.purchase=function({apiHandler:e}){return{readyToPay:({data:t})=>e.post("ready-to-pay",t)}}({apiHandler:e}),this.quotes=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,expand:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,expand:o};return e.getAll("quotes",i)},create:({id:t="",data:n})=>e.create(`quotes/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`quotes/${t}`,r)},update:({id:t,data:n})=>e.put(`quotes/${t}`,n),patch:({id:t,data:n})=>e.patch(`quotes/${t}`,n),accept:({id:t})=>e.post(`quotes/${t}/accept`),cancel:({id:t})=>e.post(`quotes/${t}/cancel`),issue:({id:t})=>e.post(`quotes/${t}/issue`),recall:({id:t})=>e.post(`quotes/${t}/recall`),reject:({id:t})=>e.post(`quotes/${t}/reject`),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`quotes/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`quotes/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`quotes/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`quotes/${t}/timeline/${n}`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`quotes/${t}`,n)}}}({apiHandler:e}),this.resource=function({apiHandler:e}){return{get:({resource:t,resourceId:n,service:r})=>e.get(`${t}/${n}/external-identifiers/${r}`),sync:({resource:t,resourceId:n,service:r})=>e.post(`${t}/${n}/external-identifiers/${r}`),update:({resource:t,resourceId:n,service:r,data:a})=>e.put(`${t}/${n}/external-identifiers/${r}`,a),delete:({resource:t,resourceId:n,service:r})=>e.delete(`${t}/${n}/external-identifiers/${r}`)}}({apiHandler:e}),this.riskScoreRules=function({apiHandler:e}){return{getAll:()=>e.get("risk-score-rules"),updateRiskScoreRules:({data:t})=>e.put("risk-score-rules",t),getAllBlocklistRules:()=>e.get("risk-score-rules/blocklists"),updateRiskScoreBlocklistRules:({data:t})=>e.put("risk-score-rules/blocklists",t)}}({apiHandler:e}),this.riskScoreSimulationJobs=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null}={}){const o={filter:t,sort:n,limit:r,offset:a};return e.getAll("risk-score-simulation-jobs",o)},create:({data:t})=>e.post("risk-score-simulation-jobs",t),get:({id:t})=>e.get(`risk-score-simulation-jobs/${t}`),stop:({id:t})=>e.post(`risk-score-simulation-jobs/${t}/stop`),getTransactions({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`risk-score-simulation-jobs/${t}/transactions`,a)}}}({apiHandler:e}),this.roles=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null,expand:i=null}={}){const s={limit:t,offset:n,filter:r,sort:a,q:o,expand:i};return e.getAll("roles",s)},create:({id:t="",data:n})=>e.create(`roles/${t}`,t,n),get({id:t,expand:n=null}){const r={expand:n};return e.get(`roles/${t}`,r)},update:({id:t,data:n})=>e.put(`roles/${t}`,n),delete:({id:t})=>e.delete(`roles/${t}`)}}({apiHandler:e}),this.search=function({apiHandler:e}){return{get({sort:t=null,limit:n=null,offset:r=null,q:a=null}){const o={sort:t,limit:n,offset:r,q:a};return e.get("search",o)}}}({apiHandler:e}),this.segments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("grid-segments",i)},create:({id:t="",data:n})=>e.create(`grid-segments/${t}`,t,n),get:({id:t})=>e.get(`grid-segments/${t}`),update:({id:t,data:n})=>e.put(`grid-segments/${t}`,n),delete:({id:t})=>e.delete(`grid-segments/${t}`)}}({apiHandler:e}),this.sendThroughAttribution=function({apiHandler:e}){return{getAll:({eventType:t})=>e.getAll(`send-through-attribution/${t}`)}}({apiHandler:e}),this.serviceCredentials=function({apiHandler:e}){return{getAll({type:t,filter:n=null,limit:r=null,offset:a=null,sort:o=null,q:i=null}){const s={filter:n,limit:r,offset:a,sort:o,q:i};return e.getAll(`service-credentials/${t}`,s)},create:({type:t,data:n})=>e.post(`service-credentials/${t}`,n),get:({type:t,id:n})=>e.get(`service-credentials/${t}/${n}`),update:({type:t,id:n,data:r})=>e.patch(`service-credentials/${t}/${n}`,r),getItems({type:t,id:n,limit:r=null,offset:a=null,filter:o=null,q:i=null,fields:s=null,sort:l=null}){const c={limit:r,offset:a,filter:o,q:i,fields:s,sort:l};return e.getAll(`service-credentials/${t}/${n}/items`,c)}}}({apiHandler:e}),this.shippingRates=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null,q:o=null}={}){const i={limit:t,offset:n,filter:r,sort:a,q:o};return e.getAll("shipping-rates",i)},create:({id:t="",data:n})=>e.create(`shipping-rates/${t}`,t,n),get:({id:t})=>e.get(`shipping-rates/${t}`),update:({id:t,data:n})=>e.put(`shipping-rates/${t}`,n),delete:({id:t})=>e.delete(`shipping-rates/${t}`)}}({apiHandler:e}),this.status=function({apiHandler:e}){return{get:()=>e.get("status")}}({apiHandler:e}),this.subscriptionCancellations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-cancellations",o)},create:({id:t="",data:n})=>e.create(`subscription-cancellations/${t}`,t,n),get:({id:t})=>e.get(`subscription-cancellations/${t}`),delete:({id:t})=>e.delete(`subscription-cancellations/${t}`),patch:({id:t,data:n})=>e.patch(`subscription-cancellations/${t}`,n)}}({apiHandler:e}),this.subscriptionPauses=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-pauses",o)},pause:({id:t="",data:n})=>e.create(`subscription-pauses/${t}`,t,n),get:({id:t})=>e.get(`subscription-pauses/${t}`),update:({id:t,data:n})=>e.put(`subscription-pauses/${t}`,n),delete:({id:t})=>e.delete(`subscription-pauses/${t}`)}}({apiHandler:e}),this.subscriptionReactivations=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,sort:a=null}={}){const o={limit:t,offset:n,filter:r,sort:a};return e.getAll("subscription-reactivations",o)},reactivate:({data:t})=>e.post("subscription-reactivations",t),get:({id:t})=>e.get(`subscription-reactivations/${t}`)}}({apiHandler:e}),this.subscriptions=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("subscriptions",s)},create({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`subscriptions/${t}`,t,n,a)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`subscriptions/${t}`,r)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`subscriptions/${t}`,n,a)},delete:({id:t})=>e.delete(`subscriptions/${t}`),void:({id:t})=>e.post(`subscriptions/${t}/void`),changeItems({id:t,data:n,expand:r=null}){const a={expand:r};return e.post(`subscriptions/${t}/change-items`,n,a)},updateItem:({id:t,itemId:n,data:r})=>e.patch(`subscriptions/${t}/items/${n}`,r),createInterimInvoice:({id:t,data:n})=>e.post(`subscriptions/${t}/interim-invoice`,n),getAllUpcomingInvoices({id:t,expand:n=null}){const r={expand:n};return e.getAll(`subscriptions/${t}/upcoming-invoices`,r)},getUpcomingInvoice({id:t,expand:n=null}){const r={expand:n};return e.get(`subscriptions/${t}/upcoming-invoice`,r)},issueEarlyUpcomingInvoice:({id:t,data:n})=>e.post(`subscriptions/${t}/upcoming-invoice/issue`,n),issueUpcomingInvoice:({id:t,invoiceId:n,data:r})=>e.post(`subscriptions/${t}/upcoming-invoices/${n}/issue`,r),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`subscriptions/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`subscriptions/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`subscriptions/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`subscriptions/${t}/timeline/${n}`)}}({apiHandler:e}),this.tags=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("tags",i)},create:({data:t})=>e.post("tags",t),get:({tag:t})=>e.get(`tags/${t}`),delete:({tag:t})=>e.delete(`tags/${t}`),update:({tag:t,data:n})=>e.patch(`tags/${t}`,n),tagCustomers:({tag:t,data:n})=>e.post(`tags/${t}/customers`,n),untagCustomers:({tag:t,data:n})=>e.delete(`tags/${t}/customers`,n),tagCustomer:({tag:t,customerId:n})=>e.post(`tags/${t}/customers/${n}`),untagCustomer:({tag:t,customerId:n})=>e.delete(`tags/${t}/customers/${n}`),tagKycDocuments:({tag:t,data:n})=>e.post(`tags/${t}/kyc-documents`,n),untagKycDocuments:({tag:t,data:n})=>e.delete(`tags/${t}/kyc-documents`,n),tagKycDocument:({tag:t,kycDocumentId:n})=>e.post(`tags/${t}/kyc-documents/${n}`),untagKycDocument:({tag:t,kycDocumentId:n})=>e.delete(`tags/${t}/kyc-documents/${n}`),tagAmlChecks:({tag:t,data:n})=>e.post(`tags/${t}/aml-checks`,n),untagAmlChecks:({tag:t,data:n})=>e.delete(`tags/${t}/aml-checks`,n),tagAmlCheck:({tag:t,amlCheckId:n})=>e.post(`tags/${t}/aml-checks/${n}`),untagAmlCheck:({tag:t,amlCheckId:n})=>e.delete(`tags/${t}/aml-checks/${n}`)}}({apiHandler:e}),this.tagsRules=function({apiHandler:e}){return{getAllTagsRules({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tags-rules",i)},createTagsRule:({id:t="",data:n})=>e.create(`tags-rules/${t}`,t,n),getTagsRule:({id:t})=>e.get(`tags-rules/${t}`),updateTagsRule:({id:t,data:n})=>e.put(`tags-rules/${t}`,n),deleteTagsRule:({id:t})=>e.delete(`tags-rules/${t}`)}}({apiHandler:e}),this.tracking=function({apiHandler:e}){return{getAllApiLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null,expand:i=null}={}){const s={limit:t,offset:n,sort:r,filter:a,q:o,expand:i};return e.getAll("tracking/api",s)},getApiLog:({id:t})=>e.get(`tracking/api/${t}`),getAllTaxTrackingLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/taxes",i)},getTaxTrackingLog:({id:t})=>e.get(`tracking/taxes/${t}`),getAllListsChangesHistory({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/lists",i)},getAllWebhookTrackingLogs({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("tracking/webhooks",i)},getWebhookTrackingLog:({id:t})=>e.get(`tracking/webhooks/${t}`),resendWebhook:({id:t})=>e.post(`tracking/webhooks/${t}/resend`)}}({apiHandler:e}),this.transactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null,expand:i=null}={}){const s={limit:t,offset:n,filter:r,q:a,sort:o,expand:i};return e.getAll("transactions",s)},create({data:t,expand:n=null}){const r={expand:n};return e.post("transactions",t,r)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`transactions/${t}`,r)},patch:({id:t,data:n})=>e.patch(`transactions/${t}`,n),query:({id:t})=>e.post(`transactions/${t}/query`),update:({id:t,data:n})=>e.post(`transactions/${t}/update`,n),refund:({id:t,data:n})=>e.post(`transactions/${t}/refund`,n),getAllTimelineMessages({id:t,limit:n=null,offset:r=null,filter:a=null,sort:o=null,q:i=null}){const s={limit:n,offset:r,filter:a,sort:o,q:i};return e.getAll(`transactions/${t}/timeline`,s)},createTimelineComment:({id:t,data:n})=>e.post(`transactions/${t}/timeline`,n),getTimelineMessage:({id:t,messageId:n})=>e.get(`transactions/${t}/timeline/${n}`),deleteTimelineMessage:({id:t,messageId:n})=>e.delete(`transactions/${t}/timeline/${n}`)}}({apiHandler:e}),this.usages=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("usages",i)},create:({id:t="",data:n})=>e.create(`usages/${t}`,t,n),get:({id:t})=>e.get(`usages/${t}`),update:({id:t,data:n})=>e.put(`usages/${t}`,n),delete:({id:t})=>e.delete(`usages/${t}`)}}({apiHandler:e}),this.users=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,filter:a=null,q:o=null}={}){const i={limit:t,offset:n,sort:r,filter:a,q:o};return e.getAll("users",i)},create:({id:t="",data:n})=>e.create(`users/${t}`,t,n),get:({id:t})=>e.get(`users/${t}`),update:({id:t,data:n})=>e.put(`users/${t}`,n),getMfa:({id:t})=>e.get(`users/${t}/mfa`)}}({apiHandler:e}),this.webhooks=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null}={}){const a={limit:t,offset:n,filter:r};return e.getAll("webhooks",a)},create:({id:t="",data:n})=>e.create(`webhooks/${t}`,t,n),get:({id:t})=>e.get(`webhooks/${t}`),update:({id:t,data:n})=>e.put(`webhooks/${t}`,n)}}({apiHandler:e}),this.websites=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,q:r=null,filter:a=null,sort:o=null}={}){const i={limit:t,offset:n,q:r,filter:a,sort:o};return e.getAll("websites",i)},create:({id:t="",data:n})=>e.create(`websites/${t}`,t,n),get:({id:t})=>e.get(`websites/${t}`),update:({id:t,data:n})=>e.put(`websites/${t}`,n),delete:({id:t})=>e.delete(`websites/${t}`)}}({apiHandler:e}),this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setPublishableKey=e.setPublishableKey,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken,this.generateSignature=e.generateSignature}};const cp={CustomersResource:function({apiHandler:e}){return{getCustomerLifetimeSummaryMetrics:({customerId:t})=>e.get(`customers/${t}/summary-metrics`)}},DataExportsResource:function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,sort:r=null,expand:a=null,filter:o=null,q:i=null,criteria:s=null}={}){const l={limit:t,offset:n,sort:r,expand:a,filter:o,q:i,criteria:s};return e.getAll("data-exports",l)},queue({id:t="",data:n,expand:r=null}){const a={expand:r};return e.create(`data-exports/${t}`,t,n,a)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`data-exports/${t}`,r)},update({id:t,data:n,expand:r=null}){const a={expand:r};return e.put(`data-exports/${t}`,n,a)},delete:({id:t})=>e.delete(`data-exports/${t}`)}},HistogramsResource:function({apiHandler:e}){return{getTransactionHistogramReport({periodStart:t,periodEnd:n,aggregationPeriod:r,metric:a,filter:o=null}){const i={periodStart:t,periodEnd:n,aggregationPeriod:r,metric:a,filter:o};return e.get("histograms/transactions",i)}}},ReportsResource:function({apiHandler:e}){return{getApiLogSummary({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/api-log-summary",o)},getCumulativeSubscriptions({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/cumulative-subscriptions",s)},getDashboardMetrics({periodStart:t,periodEnd:n,metrics:r=null,segments:a=null}){const o={periodStart:t,periodEnd:n,metrics:r,segments:a};return e.get("reports/dashboard",o)},getDccMarkup({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/dcc-markup",s)},getDeclinedTransactions({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/declined-transactions",s)},getDisputes({aggregationField:t,periodMonth:n,limit:r=null,offset:a=null,filter:o=null}){const i={aggregationField:t,periodMonth:n,limit:r,offset:a,filter:o};return e.get("reports/disputes",i)},getEventsTriggeredSummary({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/events-triggered",o)},getTriggeredEventRuleReport({eventType:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null}){const i={periodStart:n,periodEnd:r,limit:a,offset:o};return e.get(`reports/events-triggered/${t}/rules`,i)},getFutureRenewals({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/future-renewals",o)},getJournal({currency:t,bookedFrom:n=null,bookedTo:r=null,recognizedAt:a,aggregationField:o,limit:i=null,offset:s=null,filter:l=null}){const c={currency:t,bookedFrom:n,bookedTo:r,recognizedAt:a,aggregationField:o,limit:i,offset:s,filter:l};return e.get("reports/journal",c)},getKycAcceptanceSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-acceptance-summary",r)},getKycRejectionSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-rejection-summary",r)},getKycRequestSummary({periodStart:t,periodEnd:n}){const r={periodStart:t,periodEnd:n};return e.get("reports/kyc-request-summary",r)},getMonthlyRecurringRevenue({currency:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null}){const i={currency:t,periodStart:n,periodEnd:r,limit:a,offset:o};return e.get("reports/monthly-recurring-revenue",i)},getRenewalSales({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/renewal-sales",o)},getRetentionPercentage({aggregationField:t,aggregationPeriod:n,includeSwitchedSubscriptions:r=null,periodStart:a,periodEnd:o,limit:i=null,offset:s=null,filter:l=null,criteria:c=null}){const u={aggregationField:t,aggregationPeriod:n,includeSwitchedSubscriptions:r,periodStart:a,periodEnd:o,limit:i,offset:s,filter:l,criteria:c};return e.get("reports/retention-percentage",u)},getRetentionValue({aggregationField:t,aggregationPeriod:n,includeRefunds:r=null,includeDisputes:a=null,periodStart:o,periodEnd:i,limit:s=null,offset:l=null,filter:c=null,sort:u=null,criteria:d=null}){const p={aggregationField:t,aggregationPeriod:n,includeRefunds:r,includeDisputes:a,periodStart:o,periodEnd:i,limit:s,offset:l,filter:c,sort:u,criteria:d};return e.get("reports/retention-value",p)},getRevenueWaterfall({currency:t,issuedFrom:n,issuedTo:r,recognizedTo:a}){const o={currency:t,issuedFrom:n,issuedTo:r,recognizedTo:a};return e.get("reports/revenue-waterfall",o)},getRevenueAudit({filter:t=null,sort:n=null,limit:r=null,offset:a=null}){const o={filter:t,sort:n,limit:r,offset:a};return e.get("reports/revenue-audit",o)},getSubscriptionCancellation({periodStart:t,periodEnd:n,aggregationField:r,limit:a=null,offset:o=null,filter:i=null}){const s={periodStart:t,periodEnd:n,aggregationField:r,limit:a,offset:o,filter:i};return e.get("reports/subscription-cancellation",s)},getSubscriptionRenewal({periodStart:t,periodEnd:n,limit:r=null,offset:a=null}){const o={periodStart:t,periodEnd:n,limit:r,offset:a};return e.get("reports/subscription-renewal",o)},getTax({periodStart:t,periodEnd:n,accountingMethod:r,limit:a=null,offset:o=null}){const i={periodStart:t,periodEnd:n,accountingMethod:r,limit:a,offset:o};return e.get("reports/tax",i)},getTimeSeriesTransaction({type:t,subaggregate:n,periodStart:r,periodEnd:a,limit:o=null,offset:i=null}){const s={type:t,subaggregate:n,periodStart:r,periodEnd:a,limit:o,offset:i};return e.get("reports/time-series-transaction",s)},getTransactionsTimeDispute({aggregationField:t,periodStart:n,periodEnd:r,limit:a=null,offset:o=null,filter:i=null}){const s={aggregationField:t,periodStart:n,periodEnd:r,limit:a,offset:o,filter:i};return e.get("reports/transactions-time-dispute",s)},getTransactions({periodStart:t,periodEnd:n,aggregationField:r,limit:a=null,offset:o=null,filter:i=null}){const s={periodStart:t,periodEnd:n,aggregationField:r,limit:a,offset:o,filter:i};return e.get("reports/transactions",s)}}},SubscriptionsResource:function({apiHandler:e}){return{getSubscriptionSummaryMetrics:({subscriptionId:t})=>e.get(`subscriptions/${t}/summary-metrics`)}},TimelinesResource:function({apiHandler:e}){return{getActivityFeed({eventTypes:t=null,limit:n=1e3,offset:r=0}){const a={eventTypes:t,limit:n,offset:r};return e.getAll("activity-feed",a)},getTransaction({id:t="",eventTypes:n=null,limit:r=1e3,offset:a=0}){const o={eventTypes:n,limit:r,offset:a};return e.getAll(`transactions/${t}/timeline`,o)},getCustomer({id:t="",eventTypes:n=null,limit:r=1e3,offset:a=0}){const o={eventTypes:n,limit:r,offset:a};return e.getAll(`customers/${t}/timeline`,o)}}},LocationResource:function({apiHandler:e}){return{query:()=>e.get("location")}}};class up{constructor({apiHandler:e}){this.customers=cp.CustomersResource({apiHandler:e}),this.dataExports=cp.DataExportsResource({apiHandler:e}),this.histograms=cp.HistogramsResource({apiHandler:e}),this.reports=cp.ReportsResource({apiHandler:e}),this.subscriptions=cp.SubscriptionsResource({apiHandler:e}),this.timelines=cp.TimelinesResource({apiHandler:e}),this.location=cp.LocationResource({apiHandler:e}),this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken}}class dp{constructor({apiHandler:e}){this.account=function({apiHandler:e}){return{get({expand:t=null}={}){const n={expand:t};return e.get("account",n)},update:({data:t})=>e.patch("account",t),requestPasswordReset:({data:t})=>e.post("account/forgot-password",t),changePassword:({data:t})=>e.patch("account/password",t),resendEmailVerification:({data:t})=>e.post("account/resend-verification",t),confirmPasswordReset:({token:t,data:n})=>e.post(`account/reset-password/${t}`,n),verifyEmail:({token:t})=>e.post(`account/verification/${t}`),register:({data:t})=>e.post("register",t)}}({apiHandler:e}),this.authorization=function({apiHandler:e}){return{login:({data:t})=>e.post("login",t),logout:()=>e.post("logout")}}({apiHandler:e}),this.billingPortals=function({apiHandler:e}){return{get:({slug:t})=>e.get(`billing-portals/${t}`)}}({apiHandler:e}),this.checkoutForms=function({apiHandler:e}){return{get:({id:t})=>e.get(`checkout-forms/${t}`)}}({apiHandler:e}),this.customFields=function({apiHandler:e}){return{getAll({resource:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.getAll(`custom-fields/${t}`,a)}}}({apiHandler:e}),this.depositRequests=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`deposit-requests/${t}`,r)}}}({apiHandler:e}),this.deposit=function({apiHandler:e}){return{create:({data:t})=>e.post("deposit",t)}}({apiHandler:e}),this.depositStrategies=function({apiHandler:e}){return{get:({id:t})=>e.get(`deposit-strategies/${t}`)}}({apiHandler:e}),this.invoices=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("invoices",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`invoices/${t}`,r)},downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`invoices/${t}`,n)}}}({apiHandler:e}),this.kycDocuments=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null}={}){const r={limit:t,offset:n};return e.getAll("kyc-documents",r)},create:({data:t})=>e.post("kyc-documents",t),get:({id:t})=>e.get(`kyc-documents/${t}`),update:({id:t,data:n})=>e.patch(`kyc-documents/${t}`,n)}}({apiHandler:e}),this.kycLivenessSessions=function({apiHandler:e}){return{create:({data:t})=>e.post("kyc-liveness-sessions",t),get:({id:t})=>e.get(`kyc-liveness-sessions/${t}`),finish:({id:t})=>e.post(`kyc-liveness-sessions/${t}/finish`)}}({apiHandler:e}),this.kycRequests=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`kyc-requests/${t}`,r)}}}({apiHandler:e}),this.orders=function({apiHandler:e}){return{getUpcomingInvoice({id:t,expand:n=null}){const r={expand:n};return e.get(`orders/${t}/upcoming-invoice`,r)},getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("orders",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`orders/${t}`,r)},update:({id:t,data:n})=>e.patch(`orders/${t}`,n),cancel:({id:t,data:n})=>e.post(`orders/${t}/cancellation`,n),pause:({id:t,data:n})=>e.post(`orders/${t}/pause`,n)}}({apiHandler:e}),this.paymentInstruments=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("payment-instruments",i)},create:({data:t})=>e.post("payment-instruments",t),get({id:t,limit:n=null,offset:r=null}){const a={limit:n,offset:r};return e.get(`payment-instruments/${t}`,a)},update:({id:t,data:n})=>e.patch(`payment-instruments/${t}`,n),deactivate:({id:t})=>e.post(`payment-instruments/${t}/deactivation`),getSetupTransaction:({id:t})=>e.get(`payment-instruments/${t}/setup`),setup:({id:t,data:n})=>e.post(`payment-instruments/${t}/setup`,n)}}({apiHandler:e}),this.payoutRequests=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("payout-requests",i)},get:({id:t})=>e.get(`payout-requests/${t}`),update:({id:t,data:n})=>e.patch(`payout-requests/${t}`,n)}}({apiHandler:e}),this.plans=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null,expand:i=null}={}){const s={filter:t,sort:n,limit:r,offset:a,q:o,expand:i};return e.getAll("plans",s)},get({id:t,expand:n=null}){const r={expand:n};return e.get(`plans/${t}`,r)}}}({apiHandler:e}),this.products=function({apiHandler:e}){return{getAll({filter:t=null,sort:n=null,limit:r=null,offset:a=null,q:o=null}={}){const i={filter:t,sort:n,limit:r,offset:a,q:o};return e.getAll("products",i)},get:({id:t})=>e.get(`products/${t}`)}}({apiHandler:e}),this.purchase=function({apiHandler:e}){return{payment:({data:t})=>e.post("payment",t),purchase:({data:t})=>e.post("purchase",t),preview:({data:t})=>e.post("preview-purchase",t),readyToPay:({data:t})=>e.post("ready-to-pay",t)}}({apiHandler:e}),this.quotes=function({apiHandler:e}){return{get({id:t,expand:n=null}){const r={expand:n};return e.get(`quotes/${t}`,r)},accept:({id:t})=>e.post(`quotes/${t}/accept`),reject:({id:t})=>e.post(`quotes/${t}/reject`),downloadPDF({id:t}){const n={headers:sp,responseType:"arraybuffer"};return e.download(`quotes/${t}`,n)}}}({apiHandler:e}),this.readyToPayout=function({apiHandler:e}){return{readyToPayout:({data:t})=>e.post("ready-to-payout",t)}}({apiHandler:e}),this.subscriptionReactivations=function({apiHandler:e}){return{reactivation:({data:t})=>e.post("subscription-reactivations",t)}}({apiHandler:e}),this.subscriptions=function({apiHandler:e}){return{changeItems:({id:t,data:n})=>e.post(`subscriptions/${t}/change-items`,n),create:({data:t})=>e.post("subscriptions",t)}}({apiHandler:e}),this.transactions=function({apiHandler:e}){return{getAll({limit:t=null,offset:n=null,filter:r=null,q:a=null,sort:o=null}={}){const i={limit:t,offset:n,filter:r,q:a,sort:o};return e.getAll("transactions",i)},get:({id:t})=>e.get(`transactions/${t}`),finishKyc:({id:t,token:n})=>e.post(`transactions/${t}/${n}/continue`),skipKyc:({id:t,token:n})=>e.post(`transactions/${t}/${n}/bypass`),update:({id:t,data:n})=>e.patch(`transactions/${t}`,n)}}({apiHandler:e}),this.websites=function({apiHandler:e}){return{get:({id:t})=>e.get(`websites/${t}`)}}({apiHandler:e}),this.checkoutForm=this.checkoutForms,this.billingPortal=this.billingPortals,this.addRequestInterceptor=e.addRequestInterceptor,this.removeRequestInterceptor=e.removeRequestInterceptor,this.addResponseInterceptor=e.addResponseInterceptor,this.removeResponseInterceptor=e.removeResponseInterceptor,this.setTimeout=e.setTimeout,this.setProxyAgent=e.setProxyAgent,this.setSessionToken=e.setSessionToken,this.setPublishableKey=e.setPublishableKey,this.setEndpoints=e.setEndpoints,this.getCancellationToken=e.getCancellationToken,this.generateSignature=e.generateSignature}}const pp={live:"https://api.rebilly.com",sandbox:"https://api-sandbox.rebilly.com"},mp=6e3;function fp({apiKey:e=null,sandbox:t=!1,timeout:n=mp,organizationId:r=null,urls:a=pp,internalOptions:o=null}={}){if(!a.live||!a.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof a.live||"string"!=typeof a.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");return function({apiHandler:e}){return new lp({apiHandler:e})}({apiHandler:ip({options:{apiEndpoints:a,apiKey:e,apiVersion:"",isSandbox:t,requestTimeout:n,jwt:null,organizationId:r,appName:(null==o?void 0:o.appName)??null}})})}function hp({apiKey:e=null,sandbox:t=!1,timeout:n=mp,organizationId:r=null,urls:a=pp,internalOptions:o=null}={}){if(!a.live||!a.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof a.live||"string"!=typeof a.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");return function({apiHandler:e}){return new up({apiHandler:e})}({apiHandler:ip({options:{apiEndpoints:a,apiKey:e,apiVersion:"experimental",isSandbox:t,requestTimeout:n,jwt:null,organizationId:r,appName:(null==o?void 0:o.appName)??null}})})}function yp({publishableKey:e=null,jwt:t=null,sandbox:n=!1,timeout:r=mp,organizationId:a=null,urls:o=pp,internalOptions:i=null}={}){if(!o.live||!o.sandbox)throw new Error("RebillyAPI urls config must include a key for both `live` and `sandbox`");if("string"!=typeof o.live||"string"!=typeof o.sandbox)throw new Error("RebillyAPI urls config `live` and `sandbox` must be strings");const s={apiEndpoints:o,publishableKey:e,jwt:t,apiVersion:"storefront",isSandbox:n,requestTimeout:r,organizationId:a,appName:(null==i?void 0:i.appName)??null},l=ip({options:s});return l.setSessionToken(s.jwt),function({apiHandler:e}){return new dp({apiHandler:e})}({apiHandler:l})}async function gp(e){try{return io(lo.storefront),so(lo.options),await e()}catch(t){throw ns(t),t}}class bp{constructor({publishableKey:e=null,jwt:t=null,organizationId:n=null,mode:r="live",timeout:a=6e4,liveUrl:o=null,sandboxUrl:i=null,appName:s}={}){const l={live:o||"https://api.rebilly.com",sandbox:i||"https://api-sandbox.rebilly.com"},c="string"==typeof a?parseInt(a,10):a,u={organizationId:n||void 0,sandbox:"sandbox"===r,timeout:Number.isNaN(c)?6e4:c,urls:l,internalOptions:{appName:s?`${s}/instruments`:"instruments"}},d=yp(u),p="function"==typeof fp.default?fp.default(u):fp(u),m=hp(u);return d.setSessionToken(e||t),p.setSessionToken(e||t),m.setSessionToken(e||t),this.api=d,this.api.rebilly=p,this.api.rebilly&&(this.api.rebilly.experimental=m),this.api}}const vp=e=>null!=e&&"object"==typeof e,wp={default:1,minimum:1,maximum:Number.MAX_SAFE_INTEGER,multipleOf:1};function kp({quantity:e}){return vp(e)?{...wp,...e}:e}function $p(e){return vp(e)?e.default:e}function Sp(e){return e.map((({planId:e,quantity:t})=>({planId:e,quantity:t&&$p(t)})))}function Ep(e){return e.reduce(((e,t)=>t.planId&&t.quantity?(e.set(t.planId,de(t.quantity)),e):e),new Map)}async function xp({data:e=null}={}){return gp((async()=>{var t,n,r,a,o,i,s,l,c,u,d,p,m,f,h,y,g,b,v,w,k,$,S,E,x,P;const _=null==(t=lo.options)?void 0:t.items,A=(null==(n=lo.options)?void 0:n.websiteId)||null,I=(null==(a=null==(r=lo.options)?void 0:r.bumpOffer)?void 0:a.map((({planId:e})=>e)))||[],T={data:{websiteId:A??void 0}};var L,C;if((null==(C=null==(L=lo.data)?void 0:L.summaryLineItems)?void 0:C.every((e=>null!=e.planId&&I.includes(e.planId))))||(null==(o=lo.data)?void 0:o.acceptBumpOffer)||!(null==(i=lo.data)?void 0:i.summaryLineItems)?_?(null==(l=lo.data)?void 0:l.acceptBumpOffer)?T.data.items=null==(c=lo.options)?void 0:c.bumpOffer:T.data.items=Sp(_??[]):((null==(u=lo.data)?void 0:u.summaryLineItems)&&(T.data.items=Sp(lo.data.summaryLineItems)),!(null==(d=lo.data)?void 0:d.acceptBumpOffer)&&(null==(f=null==(m=null==(p=lo.data)?void 0:p.previewPurchase)?void 0:m.addonLineItems)?void 0:f.length)>0&&(T.data.items=null==(y=null==(h=T.data)?void 0:h.items)?void 0:y.concat(lo.data.previewPurchase.addonLineItems))):T.data.items=Sp(null==(s=lo.data)?void 0:s.summaryLineItems),!(null==(g=lo.data)?void 0:g.acceptBumpOffer)&&(null==(w=null==(v=null==(b=lo.data)?void 0:b.previewPurchase)?void 0:v.addonLineItems)?void 0:w.length)>0&&(T.data.items=null==(k=T.data.items)?void 0:k.concat(lo.data.previewPurchase.addonLineItems)),T.data.items&&T.data.items.length>1){const e=T.data.items.map((e=>JSON.stringify(e))),t=new Set(e),n=Array.from(t).map((e=>JSON.parse(e)));T.data.items=n}(null==($=lo.data)?void 0:$.amountAndCurrency)&&(T.data={...T.data,...lo.data.amountAndCurrency}),(null==e?void 0:e.billingAddress)&&(T.data.billingAddress=e.billingAddress),(null==e?void 0:e.deliveryAddress)&&(T.data.deliveryAddress=e.deliveryAddress),(null==(S=lo.data)?void 0:S.couponIds)&&(T.data.couponIds=lo.data.couponIds),io(lo.storefront);const{fields:R}=await lo.storefront.purchase.preview(T);let j=R;if(!(null==(E=lo.data)?void 0:E.acceptBumpOffer)){const e=Ep(_??[]);if(j=bc(R),j.lineItems){if(null==(P=null==(x=lo.data)?void 0:x.previewPurchase)?void 0:P.addonLineItems){const e=lo.data.previewPurchase.addonLineItems.reduce(((e,t)=>(e.set(t.planId,t),e)),new Map);j.lineItems=j.lineItems.filter((t=>!e.has(t.planId))),j.addonLineItems=lo.data.previewPurchase.addonLineItems}j.lineItems.forEach(function(e){return function(t){if(!t.planId)return;const n=e.get(t.planId)||t.quantity;t.quantity&&vp(n)&&(n.default=$p(t.quantity),t.quantity=n)}}(e))}}return lo.data&&(lo.data.previewPurchase=j),new Sc(j)}))}let Pp=!1;async function _p(){var e,t;const n=lo.toModel(),r={options:n.options,data:n.data,mainStyleVars:n.mainStyleVars},a=null==(t=null==(e=lo.options)?void 0:e._computed)?void 0:t.paymentMethodsUrl,o="rebilly-instruments-summary",i=await new ss({name:o,url:`${a}?name=${o}`,container:lo.summary,model:r,route:{name:"summary"}});return i.bindEventListeners({loader:lo.loader}),oo.summary=i,async function(e){e.component.on(`${e.name}-update-items`,(async e=>{try{if(Pp)return;Pp=!0;const t=Ep(e);lo.data.summaryLineItems.forEach((e=>{const n=$p(t.get(e.planId));vp(e.quantity)?e.quantity.default=n:e.quantity=n})),await xp(),lo.updateModel(),Pp=!1}catch(t){console.error(t),Pp=!1}}))}(i),{then:e=>e()}}async function Ap({instrument:e}={}){await xp({data:e}),lo.updateModel()}var Ip={NODE_ENV:"production"},Tp=function(){return Tp=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e},Tp.apply(this,arguments)};function Lp(e,t,n,r){return new(n||(n=Promise))((function(t,a){function o(e){try{s(r.next(e))}catch(t){a(t)}}function i(e){try{s(r.throw(e))}catch(t){a(t)}}function s(e){e.done?t(e.value):function(e){return e instanceof n?e:new n((function(t){t(e)}))}(e.value).then(o,i)}s((r=r.apply(e,[])).next())}))}function Cp(e,t){var n,r,a,o,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(i=0)),i;)try{if(n=1,r&&(a=2&s[0]?r.return:s[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,s[1])).done)return a;switch(r=0,a&&(s=[2&s[0],a.value]),s[0]){case 0:case 1:a=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(a=(a=i.trys).length>0&&a[a.length-1])&&(6===s[0]||2===s[0])){i=0;continue}if(3===s[0]&&(!a||s[1]>a[0]&&s[1]<a[3])){i.label=s[1];break}if(6===s[0]&&i.label<a[1]){i.label=a[1],a=s;break}if(a&&i.label<a[2]){i.label=a[2],i.ops.push(s);break}a[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(l){s=[6,l],r=0}finally{n=a=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}function Rp(e,t,n){for(var r,a=0,o=t.length;a<o;a++)(r||!(a in t))&&(r||(r=Array.prototype.slice.call(t,0,a)),r[a]=t[a]);return e.concat(r||Array.prototype.slice.call(t))}var jp="3.4.2";function Np(e,t){return new Promise((function(n){return setTimeout(n,e,t)}))}function Op(e){return!!e&&"function"==typeof e.then}function Fp(e,t){try{var n=e();Op(n)?n.then((function(e){return t(!0,e)}),(function(e){return t(!1,e)})):t(!0,n)}catch(r){t(!1,r)}}function Mp(e,t,n){return void 0===n&&(n=16),Lp(this,0,void 0,(function(){var r,a,o,i;return Cp(this,(function(s){switch(s.label){case 0:r=Array(e.length),a=Date.now(),o=0,s.label=1;case 1:return o<e.length?(r[o]=t(e[o],o),(i=Date.now())>=a+n?(a=i,[4,Np(0)]):[3,3]):[3,4];case 2:s.sent(),s.label=3;case 3:return++o,[3,1];case 4:return[2,r]}}))}))}function Hp(e){e.then(void 0,(function(){}))}function Bp(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]+t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]+t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]+t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]+t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function qp(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]*t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]*t[3],n[1]+=n[2]>>>16,n[2]&=65535,n[2]+=e[3]*t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]*t[3],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[2]*t[2],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[3]*t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]*t[3]+e[1]*t[2]+e[2]*t[1]+e[3]*t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function Dp(e,t){return 32===(t%=64)?[e[1],e[0]]:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t|e[0]>>>32-t]:(t-=32,[e[1]<<t|e[0]>>>32-t,e[0]<<t|e[1]>>>32-t])}function zp(e,t){return 0===(t%=64)?e:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t]:[e[1]<<t-32,0]}function Vp(e,t){return[e[0]^t[0],e[1]^t[1]]}function Wp(e){return e=Vp(e,[0,e[0]>>>1]),e=Vp(e=qp(e,[4283543511,3981806797]),[0,e[0]>>>1]),e=Vp(e=qp(e,[3301882366,444984403]),[0,e[0]>>>1])}function Up(e){return parseInt(e)}function Gp(e){return parseFloat(e)}function Kp(e,t){return"number"==typeof e&&isNaN(e)?t:e}function Zp(e){return e.reduce((function(e,t){return e+(t?1:0)}),0)}function Xp(e,t){if(void 0===t&&(t=1),Math.abs(t)>=1)return Math.round(e/t)*t;var n=1/t;return Math.round(e*n)/n}function Jp(e){return e&&"object"==typeof e&&"message"in e?e:{message:e}}function Yp(e,t,n){var r=Object.keys(e).filter((function(e){return function(e,t){return!function(e,t){for(var n=0,r=e.length;n<r;++n)if(e[n]===t)return!0;return!1}(e,t)}(n,e)})),a=Mp(r,(function(n){return function(e,t){var n=new Promise((function(n){var r=Date.now();Fp(e.bind(null,t),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var a=Date.now()-r;if(!e[0])return n((function(){return{error:Jp(e[1]),duration:a}}));var o=e[1];if(function(e){return"function"!=typeof e}(o))return n((function(){return{value:o,duration:a}}));n((function(){return new Promise((function(e){var t=Date.now();Fp(o,(function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=a+Date.now()-t;if(!n[0])return e({error:Jp(n[1]),duration:o});e({value:n[1],duration:o})}))}))}))}))}));return Hp(n),function(){return n.then((function(e){return e()}))}}(e[n],t)}));return Hp(a),function(){return Lp(this,0,void 0,(function(){var e,t,n,o;return Cp(this,(function(i){switch(i.label){case 0:return[4,a];case 1:return[4,Mp(i.sent(),(function(e){var t=e();return Hp(t),t}))];case 2:return e=i.sent(),[4,Promise.all(e)];case 3:for(t=i.sent(),n={},o=0;o<r.length;++o)n[r[o]]=t[o];return[2,n]}}))}))}}function Qp(){var e=window,t=navigator;return Zp(["MSCSSMatrix"in e,"msSetImmediate"in e,"msIndexedDB"in e,"msMaxTouchPoints"in t,"msPointerEnabled"in t])>=4}function em(){var e=window,t=navigator;return Zp(["webkitPersistentStorage"in t,"webkitTemporaryStorage"in t,0===t.vendor.indexOf("Google"),"webkitResolveLocalFileSystemURL"in e,"BatteryManager"in e,"webkitMediaStream"in e,"webkitSpeechGrammar"in e])>=5}function tm(){var e=window,t=navigator;return Zp(["ApplePayError"in e,"CSSPrimitiveValue"in e,"Counter"in e,0===t.vendor.indexOf("Apple"),"getStorageUpdates"in t,"WebKitMediaKeys"in e])>=4}function nm(){var e=window;return Zp(["safari"in e,!("DeviceMotionEvent"in e),!("ongestureend"in e),!("standalone"in navigator)])>=3}function rm(){var e=document;return(e.exitFullscreen||e.msExitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen).call(e)}function am(){var e=em(),t=function(){var e,t,n=window;return Zp(["buildID"in navigator,"MozAppearance"in(null!==(t=null===(e=document.documentElement)||void 0===e?void 0:e.style)&&void 0!==t?t:{}),"onmozfullscreenchange"in n,"mozInnerScreenX"in n,"CSSMozDocumentRule"in n,"CanvasCaptureMediaStream"in n])>=4}();if(!e&&!t)return!1;var n=window;return Zp(["onorientationchange"in n,"orientation"in n,e&&!("SharedWorker"in n),t&&/android/i.test(navigator.appVersion)])>=2}function om(e){var t=new Error(e);return t.name=e,t}function im(e,t,n){var r,a,o;return void 0===n&&(n=50),Lp(this,0,void 0,(function(){var i,s;return Cp(this,(function(l){switch(l.label){case 0:i=document,l.label=1;case 1:return i.body?[3,3]:[4,Np(n)];case 2:return l.sent(),[3,1];case 3:s=i.createElement("iframe"),l.label=4;case 4:return l.trys.push([4,,10,11]),[4,new Promise((function(e,n){var r=!1,a=function(){r=!0,e()};s.onload=a,s.onerror=function(e){r=!0,n(e)};var o=s.style;o.setProperty("display","block","important"),o.position="absolute",o.top="0",o.left="0",o.visibility="hidden",t&&"srcdoc"in s?s.srcdoc=t:s.src="about:blank",i.body.appendChild(s);var l=function(){var e,t;r||("complete"===(null===(t=null===(e=s.contentWindow)||void 0===e?void 0:e.document)||void 0===t?void 0:t.readyState)?a():setTimeout(l,10))};l()}))];case 5:l.sent(),l.label=6;case 6:return null!==(a=null===(r=s.contentWindow)||void 0===r?void 0:r.document)&&void 0!==a&&a.body?[3,8]:[4,Np(n)];case 7:return l.sent(),[3,6];case 8:return[4,e(s,s.contentWindow)];case 9:return[2,l.sent()];case 10:return null===(o=s.parentNode)||void 0===o||o.removeChild(s),[7];case 11:return[2]}}))}))}function sm(e){for(var t=function(e){for(var t,n,r="Unexpected syntax '".concat(e,"'"),a=/^\s*([a-z-]*)(.*)$/i.exec(e),o=a[1]||void 0,i={},s=/([.:#][\w-]+|\[.+?\])/gi,l=function(e,t){i[e]=i[e]||[],i[e].push(t)};;){var c=s.exec(a[2]);if(!c)break;var u=c[0];switch(u[0]){case".":l("class",u.slice(1));break;case"#":l("id",u.slice(1));break;case"[":var d=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(u);if(!d)throw new Error(r);l(d[1],null!==(n=null!==(t=d[4])&&void 0!==t?t:d[5])&&void 0!==n?n:"");break;default:throw new Error(r)}}return[o,i]}(e),n=t[0],r=t[1],a=document.createElement(n??"div"),o=0,i=Object.keys(r);o<i.length;o++){var s=i[o],l=r[s].join(" ");"style"===s?lm(a.style,l):a.setAttribute(s,l)}return a}function lm(e,t){for(var n=0,r=t.split(";");n<r.length;n++){var a=r[n],o=/^\s*([\w-]+)\s*:\s*(.+?)(\s*!([\w-]+))?\s*$/.exec(a);if(o){var i=o[1],s=o[2],l=o[4];e.setProperty(i,s,l||"")}}}var cm=["monospace","sans-serif","serif"],um=["sans-serif-thin","ARNO PRO","Agency FB","Arabic Typesetting","Arial Unicode MS","AvantGarde Bk BT","BankGothic Md BT","Batang","Bitstream Vera Sans Mono","Calibri","Century","Century Gothic","Clarendon","EUROSTILE","Franklin Gothic","Futura Bk BT","Futura Md BT","GOTHAM","Gill Sans","HELV","Haettenschweiler","Helvetica Neue","Humanst521 BT","Leelawadee","Letter Gothic","Levenim MT","Lucida Bright","Lucida Sans","Menlo","MS Mincho","MS Outlook","MS Reference Specialty","MS UI Gothic","MT Extra","MYRIAD PRO","Marlett","Meiryo UI","Microsoft Uighur","Minion Pro","Monotype Corsiva","PMingLiU","Pristina","SCRIPTINA","Segoe UI Light","Serifa","SimHei","Small Fonts","Staccato222 BT","TRAJAN PRO","Univers CE 55 Medium","Vrinda","ZWAdobeF"];function dm(e){return e.toDataURL()}var pm,mm,fm=2500;function hm(){var e=this;return function(){if(void 0===mm){var e=function(){var t=ym();gm(t)?mm=setTimeout(e,fm):(pm=t,mm=void 0)};e()}}(),function(){return Lp(e,0,void 0,(function(){var e;return Cp(this,(function(t){switch(t.label){case 0:return gm(e=ym())?pm?[2,Rp([],pm)]:function(){var e=document;return e.fullscreenElement||e.msFullscreenElement||e.mozFullScreenElement||e.webkitFullscreenElement||null}()?[4,rm()]:[3,2]:[3,2];case 1:t.sent(),e=ym(),t.label=2;case 2:return gm(e)||(pm=e),[2,e]}}))}))}}function ym(){var e=screen;return[Kp(Gp(e.availTop),null),Kp(Gp(e.width)-Gp(e.availWidth)-Kp(Gp(e.availLeft),0),null),Kp(Gp(e.height)-Gp(e.availHeight)-Kp(Gp(e.availTop),0),null),Kp(Gp(e.availLeft),null)]}function gm(e){for(var t=0;t<4;++t)if(e[t])return!1;return!0}function bm(e){var t;return Lp(this,0,void 0,(function(){var n,r,a,o,i,s,l;return Cp(this,(function(c){switch(c.label){case 0:for(n=document,r=n.createElement("div"),a=new Array(e.length),o={},vm(r),l=0;l<e.length;++l)"DIALOG"===(i=sm(e[l])).tagName&&i.show(),vm(s=n.createElement("div")),s.appendChild(i),r.appendChild(s),a[l]=i;c.label=1;case 1:return n.body?[3,3]:[4,Np(50)];case 2:return c.sent(),[3,1];case 3:n.body.appendChild(r);try{for(l=0;l<e.length;++l)a[l].offsetParent||(o[e[l]]=!0)}finally{null===(t=r.parentNode)||void 0===t||t.removeChild(r)}return[2,o]}}))}))}function vm(e){e.style.setProperty("display","block","important")}function wm(e){return matchMedia("(inverted-colors: ".concat(e,")")).matches}function km(e){return matchMedia("(forced-colors: ".concat(e,")")).matches}function $m(e){return matchMedia("(prefers-contrast: ".concat(e,")")).matches}function Sm(e){return matchMedia("(prefers-reduced-motion: ".concat(e,")")).matches}function Em(e){return matchMedia("(dynamic-range: ".concat(e,")")).matches}var xm=Math,Pm=function(){return 0};var _m={default:[],apple:[{font:"-apple-system-body"}],serif:[{fontFamily:"serif"}],sans:[{fontFamily:"sans-serif"}],mono:[{fontFamily:"monospace"}],min:[{fontSize:"1px"}],system:[{fontFamily:"system-ui"}]};var Am={fonts:function(){return im((function(e,t){var n=t.document,r=n.body;r.style.fontSize="48px";var a=n.createElement("div"),o={},i={},s=function(e){var t=n.createElement("span"),r=t.style;return r.position="absolute",r.top="0",r.left="0",r.fontFamily=e,t.textContent="mmMwWLliI0O&1",a.appendChild(t),t},l=cm.map(s),c=function(){for(var e={},t=function(t){e[t]=cm.map((function(e){return function(e,t){return s("'".concat(e,"',").concat(t))}(t,e)}))},n=0,r=um;n<r.length;n++){t(r[n])}return e}();r.appendChild(a);for(var u=0;u<cm.length;u++)o[cm[u]]=l[u].offsetWidth,i[cm[u]]=l[u].offsetHeight;return um.filter((function(e){return function(e){return cm.some((function(t,n){return e[n].offsetWidth!==o[t]||e[n].offsetHeight!==i[t]}))}(c[e])}))}))},domBlockers:function(e){var t=(void 0===e?{}:e).debug;return Lp(this,0,void 0,(function(){var e,n,r,a,o;return Cp(this,(function(i){switch(i.label){case 0:return tm()||am()?(e=function(){var e=atob;return{abpIndo:["#Iklan-Melayang","#Kolom-Iklan-728","#SidebarIklan-wrapper",'[title="ALIENBOLA" i]',e("I0JveC1CYW5uZXItYWRz")],abpvn:[".quangcao","#mobileCatfish",e("LmNsb3NlLWFkcw=="),'[id^="bn_bottom_fixed_"]',"#pmadv"],adBlockFinland:[".mainostila",e("LnNwb25zb3JpdA=="),".ylamainos",e("YVtocmVmKj0iL2NsaWNrdGhyZ2guYXNwPyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hcHAucmVhZHBlYWsuY29tL2FkcyJd")],adBlockPersian:["#navbar_notice_50",".kadr",'TABLE[width="140px"]',"#divAgahi",e("YVtocmVmXj0iaHR0cDovL2cxLnYuZndtcm0ubmV0L2FkLyJd")],adBlockWarningRemoval:["#adblock-honeypot",".adblocker-root",".wp_adblock_detect",e("LmhlYWRlci1ibG9ja2VkLWFk"),e("I2FkX2Jsb2NrZXI=")],adGuardAnnoyances:[".hs-sosyal","#cookieconsentdiv",'div[class^="app_gdpr"]',".as-oil",'[data-cypress="soft-push-notification-modal"]'],adGuardBase:[".BetterJsPopOverlay",e("I2FkXzMwMFgyNTA="),e("I2Jhbm5lcmZsb2F0MjI="),e("I2NhbXBhaWduLWJhbm5lcg=="),e("I0FkLUNvbnRlbnQ=")],adGuardChinese:[e("LlppX2FkX2FfSA=="),e("YVtocmVmKj0iLmh0aGJldDM0LmNvbSJd"),"#widget-quan",e("YVtocmVmKj0iLzg0OTkyMDIwLnh5eiJd"),e("YVtocmVmKj0iLjE5NTZobC5jb20vIl0=")],adGuardFrench:["#pavePub",e("LmFkLWRlc2t0b3AtcmVjdGFuZ2xl"),".mobile_adhesion",".widgetadv",e("LmFkc19iYW4=")],adGuardGerman:['aside[data-portal-id="leaderboard"]'],adGuardJapanese:["#kauli_yad_1",e("YVtocmVmXj0iaHR0cDovL2FkMi50cmFmZmljZ2F0ZS5uZXQvIl0="),e("Ll9wb3BJbl9pbmZpbml0ZV9hZA=="),e("LmFkZ29vZ2xl"),e("Ll9faXNib29zdFJldHVybkFk")],adGuardMobile:[e("YW1wLWF1dG8tYWRz"),e("LmFtcF9hZA=="),'amp-embed[type="24smi"]',"#mgid_iframe1",e("I2FkX2ludmlld19hcmVh")],adGuardRussian:[e("YVtocmVmXj0iaHR0cHM6Ly9hZC5sZXRtZWFkcy5jb20vIl0="),e("LnJlY2xhbWE="),'div[id^="smi2adblock"]',e("ZGl2W2lkXj0iQWRGb3hfYmFubmVyXyJd"),"#psyduckpockeball"],adGuardSocial:[e("YVtocmVmXj0iLy93d3cuc3R1bWJsZXVwb24uY29tL3N1Ym1pdD91cmw9Il0="),e("YVtocmVmXj0iLy90ZWxlZ3JhbS5tZS9zaGFyZS91cmw/Il0="),".etsy-tweet","#inlineShare",".popup-social"],adGuardSpanishPortuguese:["#barraPublicidade","#Publicidade","#publiEspecial","#queTooltip",".cnt-publi"],adGuardTrackingProtection:["#qoo-counter",e("YVtocmVmXj0iaHR0cDovL2NsaWNrLmhvdGxvZy5ydS8iXQ=="),e("YVtocmVmXj0iaHR0cDovL2hpdGNvdW50ZXIucnUvdG9wL3N0YXQucGhwIl0="),e("YVtocmVmXj0iaHR0cDovL3RvcC5tYWlsLnJ1L2p1bXAiXQ=="),"#top100counter"],adGuardTurkish:["#backkapat",e("I3Jla2xhbWk="),e("YVtocmVmXj0iaHR0cDovL2Fkc2Vydi5vbnRlay5jb20udHIvIl0="),e("YVtocmVmXj0iaHR0cDovL2l6bGVuemkuY29tL2NhbXBhaWduLyJd"),e("YVtocmVmXj0iaHR0cDovL3d3dy5pbnN0YWxsYWRzLm5ldC8iXQ==")],bulgarian:[e("dGQjZnJlZW5ldF90YWJsZV9hZHM="),"#ea_intext_div",".lapni-pop-over","#xenium_hot_offers"],easyList:[".yb-floorad",e("LndpZGdldF9wb19hZHNfd2lkZ2V0"),e("LnRyYWZmaWNqdW5reS1hZA=="),".textad_headline",e("LnNwb25zb3JlZC10ZXh0LWxpbmtz")],easyListChina:[e("LmFwcGd1aWRlLXdyYXBbb25jbGljayo9ImJjZWJvcy5jb20iXQ=="),e("LmZyb250cGFnZUFkdk0="),"#taotaole","#aafoot.top_box",".cfa_popup"],easyListCookie:[".ezmob-footer",".cc-CookieWarning","[data-cookie-number]",e("LmF3LWNvb2tpZS1iYW5uZXI="),".sygnal24-gdpr-modal-wrap"],easyListCzechSlovak:["#onlajny-stickers",e("I3Jla2xhbW5pLWJveA=="),e("LnJla2xhbWEtbWVnYWJvYXJk"),".sklik",e("W2lkXj0ic2tsaWtSZWtsYW1hIl0=")],easyListDutch:[e("I2FkdmVydGVudGll"),e("I3ZpcEFkbWFya3RCYW5uZXJCbG9jaw=="),".adstekst",e("YVtocmVmXj0iaHR0cHM6Ly94bHR1YmUubmwvY2xpY2svIl0="),"#semilo-lrectangle"],easyListGermany:["#SSpotIMPopSlider",e("LnNwb25zb3JsaW5rZ3J1ZW4="),e("I3dlcmJ1bmdza3k="),e("I3Jla2xhbWUtcmVjaHRzLW1pdHRl"),e("YVtocmVmXj0iaHR0cHM6Ly9iZDc0Mi5jb20vIl0=")],easyListItaly:[e("LmJveF9hZHZfYW5udW5jaQ=="),".sb-box-pubbliredazionale",e("YVtocmVmXj0iaHR0cDovL2FmZmlsaWF6aW9uaWFkcy5zbmFpLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZHNlcnZlci5odG1sLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZmZpbGlhemlvbmlhZHMuc25haS5pdC8iXQ==")],easyListLithuania:[e("LnJla2xhbW9zX3RhcnBhcw=="),e("LnJla2xhbW9zX251b3JvZG9z"),e("aW1nW2FsdD0iUmVrbGFtaW5pcyBza3lkZWxpcyJd"),e("aW1nW2FsdD0iRGVkaWt1b3RpLmx0IHNlcnZlcmlhaSJd"),e("aW1nW2FsdD0iSG9zdGluZ2FzIFNlcnZlcmlhaS5sdCJd")],estonian:[e("QVtocmVmKj0iaHR0cDovL3BheTRyZXN1bHRzMjQuZXUiXQ==")],fanboyAnnoyances:["#ac-lre-player",".navigate-to-top","#subscribe_popup",".newsletter_holder","#back-top"],fanboyAntiFacebook:[".util-bar-module-firefly-visible"],fanboyEnhancedTrackers:[".open.pushModal","#issuem-leaky-paywall-articles-zero-remaining-nag","#sovrn_container",'div[class$="-hide"][zoompage-fontsize][style="display: block;"]',".BlockNag__Card"],fanboySocial:["#FollowUs","#meteored_share","#social_follow",".article-sharer",".community__social-desc"],frellwitSwedish:[e("YVtocmVmKj0iY2FzaW5vcHJvLnNlIl1bdGFyZ2V0PSJfYmxhbmsiXQ=="),e("YVtocmVmKj0iZG9rdG9yLXNlLm9uZWxpbmsubWUiXQ=="),"article.category-samarbete",e("ZGl2LmhvbGlkQWRz"),"ul.adsmodern"],greekAdBlock:[e("QVtocmVmKj0iYWRtYW4ub3RlbmV0LmdyL2NsaWNrPyJd"),e("QVtocmVmKj0iaHR0cDovL2F4aWFiYW5uZXJzLmV4b2R1cy5nci8iXQ=="),e("QVtocmVmKj0iaHR0cDovL2ludGVyYWN0aXZlLmZvcnRobmV0LmdyL2NsaWNrPyJd"),"DIV.agores300","TABLE.advright"],hungarian:["#cemp_doboz",".optimonk-iframe-container",e("LmFkX19tYWlu"),e("W2NsYXNzKj0iR29vZ2xlQWRzIl0="),"#hirdetesek_box"],iDontCareAboutCookies:['.alert-info[data-block-track*="CookieNotice"]',".ModuleTemplateCookieIndicator",".o--cookies--container","#cookies-policy-sticky","#stickyCookieBar"],icelandicAbp:[e("QVtocmVmXj0iL2ZyYW1ld29yay9yZXNvdXJjZXMvZm9ybXMvYWRzLmFzcHgiXQ==")],latvian:[e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMjBweDsgaGVpZ2h0OiA0MHB4OyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7Il0="),e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4OHB4OyBoZWlnaHQ6IDMxcHg7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsiXQ==")],listKr:[e("YVtocmVmKj0iLy9hZC5wbGFuYnBsdXMuY28ua3IvIl0="),e("I2xpdmVyZUFkV3JhcHBlcg=="),e("YVtocmVmKj0iLy9hZHYuaW1hZHJlcC5jby5rci8iXQ=="),e("aW5zLmZhc3R2aWV3LWFk"),".revenue_unit_item.dable"],listeAr:[e("LmdlbWluaUxCMUFk"),".right-and-left-sponsers",e("YVtocmVmKj0iLmFmbGFtLmluZm8iXQ=="),e("YVtocmVmKj0iYm9vcmFxLm9yZyJd"),e("YVtocmVmKj0iZHViaXp6bGUuY29tL2FyLz91dG1fc291cmNlPSJd")],listeFr:[e("YVtocmVmXj0iaHR0cDovL3Byb21vLnZhZG9yLmNvbS8iXQ=="),e("I2FkY29udGFpbmVyX3JlY2hlcmNoZQ=="),e("YVtocmVmKj0id2Vib3JhbWEuZnIvZmNnaS1iaW4vIl0="),".site-pub-interstitiel",'div[id^="crt-"][data-criteo-id]'],officialPolish:["#ceneo-placeholder-ceneo-12",e("W2hyZWZePSJodHRwczovL2FmZi5zZW5kaHViLnBsLyJd"),e("YVtocmVmXj0iaHR0cDovL2Fkdm1hbmFnZXIudGVjaGZ1bi5wbC9yZWRpcmVjdC8iXQ=="),e("YVtocmVmXj0iaHR0cDovL3d3dy50cml6ZXIucGwvP3V0bV9zb3VyY2UiXQ=="),e("ZGl2I3NrYXBpZWNfYWQ=")],ro:[e("YVtocmVmXj0iLy9hZmZ0cmsuYWx0ZXgucm8vQ291bnRlci9DbGljayJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ibGFja2ZyaWRheXNhbGVzLnJvL3Ryay9zaG9wLyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ldmVudC4ycGVyZm9ybWFudC5jb20vZXZlbnRzL2NsaWNrIl0="),e("YVtocmVmXj0iaHR0cHM6Ly9sLnByb2ZpdHNoYXJlLnJvLyJd"),'a[href^="/url/"]'],ruAd:[e("YVtocmVmKj0iLy9mZWJyYXJlLnJ1LyJd"),e("YVtocmVmKj0iLy91dGltZy5ydS8iXQ=="),e("YVtocmVmKj0iOi8vY2hpa2lkaWtpLnJ1Il0="),"#pgeldiz",".yandex-rtb-block"],thaiAds:["a[href*=macau-uta-popup]",e("I2Fkcy1nb29nbGUtbWlkZGxlX3JlY3RhbmdsZS1ncm91cA=="),e("LmFkczMwMHM="),".bumq",".img-kosana"],webAnnoyancesUltralist:["#mod-social-share-2","#social-tools",e("LmN0cGwtZnVsbGJhbm5lcg=="),".zergnet-recommend",".yt.btn-link.btn-md.btn"]}}(),n=Object.keys(e),[4,bm((o=[]).concat.apply(o,n.map((function(t){return e[t]}))))]):[2,void 0];case 1:return r=i.sent(),t&&function(e,t){for(var n="DOM blockers debug:\n```",r=0,a=Object.keys(e);r<a.length;r++){var o=a[r];n+="\n".concat(o,":");for(var i=0,s=e[o];i<s.length;i++){var l=s[i];n+="\n ".concat(t[l]?"🚫":"➡️"," ").concat(l)}}console.log("".concat(n,"\n```"))}(e,r),(a=n.filter((function(t){var n=e[t];return Zp(n.map((function(e){return r[e]})))>.6*n.length}))).sort(),[2,a]}}))}))},fontPreferences:function(){return e=function(e,t){for(var n={},r={},a=0,o=Object.keys(_m);a<o.length;a++){var i=o[a],s=_m[i],l=s[0],c=void 0===l?{}:l,u=s[1],d=void 0===u?"mmMwWLliI0fiflO&1":u,p=e.createElement("span");p.textContent=d,p.style.whiteSpace="nowrap";for(var m=0,f=Object.keys(c);m<f.length;m++){var h=f[m],y=c[h];void 0!==y&&(p.style[h]=y)}n[i]=p,t.appendChild(e.createElement("br")),t.appendChild(p)}for(var g=0,b=Object.keys(_m);g<b.length;g++)r[i=b[g]]=n[i].getBoundingClientRect().width;return r},void 0===t&&(t=4e3),im((function(n,r){var a=r.document,o=a.body,i=o.style;i.width="".concat(t,"px"),i.webkitTextSizeAdjust=i.textSizeAdjust="none",em()?o.style.zoom="".concat(1/r.devicePixelRatio):tm()&&(o.style.zoom="reset");var s=a.createElement("div");return s.textContent=Rp([],Array(t/20|0)).map((function(){return"word"})).join(" "),o.appendChild(s),e(a,o)}),'<!doctype html><html><head><meta name="viewport" content="width=device-width, initial-scale=1">');var e,t},audio:function(){var e=window,t=e.OfflineAudioContext||e.webkitOfflineAudioContext;if(!t)return-2;if(tm()&&!nm()&&!function(){var e=window;return Zp(["DOMRectList"in e,"RTCPeerConnectionIceEvent"in e,"SVGGeometryElement"in e,"ontransitioncancel"in e])>=3}())return-1;var n=new t(1,5e3,44100),r=n.createOscillator();r.type="triangle",r.frequency.value=1e4;var a=n.createDynamicsCompressor();a.threshold.value=-50,a.knee.value=40,a.ratio.value=12,a.attack.value=0,a.release.value=.25,r.connect(a),a.connect(n.destination),r.start(0);var o=function(e){var t=3,n=500,r=500,a=5e3,o=function(){},i=new Promise((function(i,s){var l=!1,c=0,u=0;e.oncomplete=function(e){return i(e.renderedBuffer)};var d=function(){setTimeout((function(){return s(om("timeout"))}),Math.min(r,u+a-Date.now()))},p=function(){try{var r=e.startRendering();switch(Op(r)&&Hp(r),e.state){case"running":u=Date.now(),l&&d();break;case"suspended":document.hidden||c++,l&&c>=t?s(om("suspended")):setTimeout(p,n)}}catch(a){s(a)}};p(),o=function(){l||(l=!0,u>0&&d())}}));return[i,o]}(n),i=o[0],s=o[1],l=i.then((function(e){return function(e){for(var t=0,n=0;n<e.length;++n)t+=Math.abs(e[n]);return t}(e.getChannelData(0).subarray(4500))}),(function(e){if("timeout"===e.name||"suspended"===e.name)return-3;throw e}));return Hp(l),function(){return s(),l}},screenFrame:function(){var e=this,t=hm();return function(){return Lp(e,0,void 0,(function(){var e,n;return Cp(this,(function(r){switch(r.label){case 0:return[4,t()];case 1:return e=r.sent(),[2,[(n=function(e){return null===e?null:Xp(e,10)})(e[0]),n(e[1]),n(e[2]),n(e[3])]]}}))}))}},osCpu:function(){return navigator.oscpu},languages:function(){var e=navigator,t=[],n=e.language||e.userLanguage||e.browserLanguage||e.systemLanguage;if(void 0!==n&&t.push([n]),Array.isArray(e.languages))em()&&function(){var e=window;return Zp([!("MediaSettingsRange"in e),"RTCEncodedAudioFrame"in e,""+e.Intl=="[object Intl]",""+e.Reflect=="[object Reflect]"])>=3}()||t.push(e.languages);else if("string"==typeof e.languages){var r=e.languages;r&&t.push(r.split(","))}return t},colorDepth:function(){return window.screen.colorDepth},deviceMemory:function(){return Kp(Gp(navigator.deviceMemory),void 0)},screenResolution:function(){var e=screen,t=function(e){return Kp(Up(e),null)},n=[t(e.width),t(e.height)];return n.sort().reverse(),n},hardwareConcurrency:function(){return Kp(Up(navigator.hardwareConcurrency),void 0)},timezone:function(){var e,t=null===(e=window.Intl)||void 0===e?void 0:e.DateTimeFormat;if(t){var n=(new t).resolvedOptions().timeZone;if(n)return n}var r=-function(){var e=(new Date).getFullYear();return Math.max(Gp(new Date(e,0,1).getTimezoneOffset()),Gp(new Date(e,6,1).getTimezoneOffset()))}();return"UTC".concat(r>=0?"+":"").concat(Math.abs(r))},sessionStorage:function(){try{return!!window.sessionStorage}catch{return!0}},localStorage:function(){try{return!!window.localStorage}catch{return!0}},indexedDB:function(){if(!(Qp()||(e=window,t=navigator,Zp(["msWriteProfilerMark"in e,"MSStream"in e,"msLaunchUri"in t,"msSaveBlob"in t])>=3&&!Qp())))try{return!!window.indexedDB}catch{return!0}var e,t},openDatabase:function(){return!!window.openDatabase},cpuClass:function(){return navigator.cpuClass},platform:function(){var e=navigator.platform;return"MacIntel"===e&&tm()&&!nm()?function(){if("iPad"===navigator.platform)return!0;var e=screen,t=e.width/e.height;return Zp(["MediaSource"in window,!!Element.prototype.webkitRequestFullscreen,t>.65&&t<1.53])>=2}()?"iPad":"iPhone":e},plugins:function(){var e=navigator.plugins;if(e){for(var t=[],n=0;n<e.length;++n){var r=e[n];if(r){for(var a=[],o=0;o<r.length;++o){var i=r[o];a.push({type:i.type,suffixes:i.suffixes})}t.push({name:r.name,description:r.description,mimeTypes:a})}}return t}},canvas:function(){var e,t,n=!1,r=function(){var e=document.createElement("canvas");return e.width=1,e.height=1,[e,e.getContext("2d")]}(),a=r[0],o=r[1];if(function(e,t){return!(!t||!e.toDataURL)}(a,o)){n=function(e){return e.rect(0,0,10,10),e.rect(2,2,6,6),!e.isPointInPath(5,5,"evenodd")}(o),function(e,t){e.width=240,e.height=60,t.textBaseline="alphabetic",t.fillStyle="#f60",t.fillRect(100,1,62,20),t.fillStyle="#069",t.font='11pt "Times New Roman"';var n="Cwm fjordbank gly ".concat("😃");t.fillText(n,2,15),t.fillStyle="rgba(102, 204, 0, 0.2)",t.font="18pt Arial",t.fillText(n,4,45)}(a,o);var i=dm(a);i!==dm(a)?e=t="unstable":(t=i,function(e,t){e.width=122,e.height=110,t.globalCompositeOperation="multiply";for(var n=0,r=[["#f2f",40,40],["#2ff",80,40],["#ff2",60,80]];n<r.length;n++){var a=r[n],o=a[0],i=a[1],s=a[2];t.fillStyle=o,t.beginPath(),t.arc(i,s,40,0,2*Math.PI,!0),t.closePath(),t.fill()}t.fillStyle="#f9c",t.arc(60,60,60,0,2*Math.PI,!0),t.arc(60,60,20,0,2*Math.PI,!0),t.fill("evenodd")}(a,o),e=dm(a))}else e=t="";return{winding:n,geometry:e,text:t}},touchSupport:function(){var e,t=navigator,n=0;void 0!==t.maxTouchPoints?n=Up(t.maxTouchPoints):void 0!==t.msMaxTouchPoints&&(n=t.msMaxTouchPoints);try{document.createEvent("TouchEvent"),e=!0}catch{e=!1}return{maxTouchPoints:n,touchEvent:e,touchStart:"ontouchstart"in window}},vendor:function(){return navigator.vendor||""},vendorFlavors:function(){for(var e=[],t=0,n=["chrome","safari","__crWeb","__gCrWeb","yandex","__yb","__ybro","__firefox__","__edgeTrackingPreventionStatistics","webkit","oprt","samsungAr","ucweb","UCShellJava","puffinDevice"];t<n.length;t++){var r=n[t],a=window[r];a&&"object"==typeof a&&e.push(r)}return e.sort()},cookiesEnabled:function(){var e=document;try{e.cookie="cookietest=1; SameSite=Strict;";var t=-1!==e.cookie.indexOf("cookietest=");return e.cookie="cookietest=1; SameSite=Strict; expires=Thu, 01-Jan-1970 00:00:01 GMT",t}catch{return!1}},colorGamut:function(){for(var e=0,t=["rec2020","p3","srgb"];e<t.length;e++){var n=t[e];if(matchMedia("(color-gamut: ".concat(n,")")).matches)return n}},invertedColors:function(){return!!wm("inverted")||!wm("none")&&void 0},forcedColors:function(){return!!km("active")||!km("none")&&void 0},monochrome:function(){if(matchMedia("(min-monochrome: 0)").matches){for(var e=0;e<=100;++e)if(matchMedia("(max-monochrome: ".concat(e,")")).matches)return e;throw new Error("Too high value")}},contrast:function(){return $m("no-preference")?0:$m("high")||$m("more")?1:$m("low")||$m("less")?-1:$m("forced")?10:void 0},reducedMotion:function(){return!!Sm("reduce")||!Sm("no-preference")&&void 0},hdr:function(){return!!Em("high")||!Em("standard")&&void 0},math:function(){var e,t=xm.acos||Pm,n=xm.acosh||Pm,r=xm.asin||Pm,a=xm.asinh||Pm,o=xm.atanh||Pm,i=xm.atan||Pm,s=xm.sin||Pm,l=xm.sinh||Pm,c=xm.cos||Pm,u=xm.cosh||Pm,d=xm.tan||Pm,p=xm.tanh||Pm,m=xm.exp||Pm,f=xm.expm1||Pm,h=xm.log1p||Pm;return{acos:t(.12312423423423424),acosh:n(1e308),acoshPf:(e=1e154,xm.log(e+xm.sqrt(e*e-1))),asin:r(.12312423423423424),asinh:a(1),asinhPf:function(e){return xm.log(e+xm.sqrt(e*e+1))}(1),atanh:o(.5),atanhPf:function(e){return xm.log((1+e)/(1-e))/2}(.5),atan:i(.5),sin:s(-1e300),sinh:l(1),sinhPf:function(e){return xm.exp(e)-1/xm.exp(e)/2}(1),cos:c(10.000000000123),cosh:u(1),coshPf:function(e){return(xm.exp(e)+1/xm.exp(e))/2}(1),tan:d(-1e300),tanh:p(1),tanhPf:function(e){return(xm.exp(2*e)-1)/(xm.exp(2*e)+1)}(1),exp:m(1),expm1:f(1),expm1Pf:function(e){return xm.exp(e)-1}(1),log1p:h(10),log1pPf:function(e){return xm.log(1+e)}(10),powPI:function(e){return xm.pow(xm.PI,e)}(-100)}},videoCard:function(){var e,t=document.createElement("canvas"),n=null!==(e=t.getContext("webgl"))&&void 0!==e?e:t.getContext("experimental-webgl");if(n&&"getExtension"in n){var r=n.getExtension("WEBGL_debug_renderer_info");if(r)return{vendor:(n.getParameter(r.UNMASKED_VENDOR_WEBGL)||"").toString(),renderer:(n.getParameter(r.UNMASKED_RENDERER_WEBGL)||"").toString()}}},pdfViewerEnabled:function(){return navigator.pdfViewerEnabled},architecture:function(){var e=new Float32Array(1),t=new Uint8Array(e.buffer);return e[0]=1/0,e[0]=e[0]-e[0],t[3]}};var Im="$ if upgrade to Pro: https://fpjs.dev/pro";function Tm(e){var t=function(e){if(am())return.4;if(tm())return nm()?.5:.3;var t=e.platform.value||"";return/^Win/.test(t)?.6:/^Mac/.test(t)?.5:.7}(e),n=function(e){return Xp(.99+.01*e,1e-4)}(t);return{score:t,comment:Im.replace(/\$/g,"".concat(n))}}function Lm(e){return JSON.stringify(e,(function(e,t){return t instanceof Error?function(e){var t;return Tp({name:e.name,message:e.message,stack:null===(t=e.stack)||void 0===t?void 0:t.split("\n")},e)}(t):t}),2)}function Cm(e){return function(e,t){t=t||0;var n,r=(e=e||"").length%16,a=e.length-r,o=[0,t],i=[0,t],s=[0,0],l=[0,0],c=[2277735313,289559509],u=[1291169091,658871167];for(n=0;n<a;n+=16)s=[255&e.charCodeAt(n+4)|(255&e.charCodeAt(n+5))<<8|(255&e.charCodeAt(n+6))<<16|(255&e.charCodeAt(n+7))<<24,255&e.charCodeAt(n)|(255&e.charCodeAt(n+1))<<8|(255&e.charCodeAt(n+2))<<16|(255&e.charCodeAt(n+3))<<24],l=[255&e.charCodeAt(n+12)|(255&e.charCodeAt(n+13))<<8|(255&e.charCodeAt(n+14))<<16|(255&e.charCodeAt(n+15))<<24,255&e.charCodeAt(n+8)|(255&e.charCodeAt(n+9))<<8|(255&e.charCodeAt(n+10))<<16|(255&e.charCodeAt(n+11))<<24],s=Dp(s=qp(s,c),31),o=Bp(o=Dp(o=Vp(o,s=qp(s,u)),27),i),o=Bp(qp(o,[0,5]),[0,1390208809]),l=Dp(l=qp(l,u),33),i=Bp(i=Dp(i=Vp(i,l=qp(l,c)),31),o),i=Bp(qp(i,[0,5]),[0,944331445]);switch(s=[0,0],l=[0,0],r){case 15:l=Vp(l,zp([0,e.charCodeAt(n+14)],48));case 14:l=Vp(l,zp([0,e.charCodeAt(n+13)],40));case 13:l=Vp(l,zp([0,e.charCodeAt(n+12)],32));case 12:l=Vp(l,zp([0,e.charCodeAt(n+11)],24));case 11:l=Vp(l,zp([0,e.charCodeAt(n+10)],16));case 10:l=Vp(l,zp([0,e.charCodeAt(n+9)],8));case 9:l=qp(l=Vp(l,[0,e.charCodeAt(n+8)]),u),i=Vp(i,l=qp(l=Dp(l,33),c));case 8:s=Vp(s,zp([0,e.charCodeAt(n+7)],56));case 7:s=Vp(s,zp([0,e.charCodeAt(n+6)],48));case 6:s=Vp(s,zp([0,e.charCodeAt(n+5)],40));case 5:s=Vp(s,zp([0,e.charCodeAt(n+4)],32));case 4:s=Vp(s,zp([0,e.charCodeAt(n+3)],24));case 3:s=Vp(s,zp([0,e.charCodeAt(n+2)],16));case 2:s=Vp(s,zp([0,e.charCodeAt(n+1)],8));case 1:s=qp(s=Vp(s,[0,e.charCodeAt(n)]),c),o=Vp(o,s=qp(s=Dp(s,31),u))}return o=Bp(o=Vp(o,[0,e.length]),i=Vp(i,[0,e.length])),i=Bp(i,o),o=Bp(o=Wp(o),i=Wp(i)),i=Bp(i,o),("00000000"+(o[0]>>>0).toString(16)).slice(-8)+("00000000"+(o[1]>>>0).toString(16)).slice(-8)+("00000000"+(i[0]>>>0).toString(16)).slice(-8)+("00000000"+(i[1]>>>0).toString(16)).slice(-8)}(function(e){for(var t="",n=0,r=Object.keys(e).sort();n<r.length;n++){var a=r[n],o=e[a],i=o.error?"error":JSON.stringify(o.value);t+="".concat(t?"|":"").concat(a.replace(/([:|\\])/g,"\\$1"),":").concat(i)}return t}(e))}function Rm(e){return void 0===e&&(e=50),function(e,t){void 0===t&&(t=1/0);var n=window.requestIdleCallback;return n?new Promise((function(e){return n.call(window,(function(){return e()}),{timeout:t})})):Np(Math.min(e,t))}(e,2*e)}function jm(e,t){var n=Date.now();return{get:function(r){return Lp(this,0,void 0,(function(){var a,o,i;return Cp(this,(function(s){switch(s.label){case 0:return a=Date.now(),[4,e()];case 1:return o=s.sent(),i=function(e){var t,n=Tm(e);return{get visitorId(){return void 0===t&&(t=Cm(this.components)),t},set visitorId(e){t=e},confidence:n,components:e,version:jp}}(o),(t||null!=r&&r.debug)&&console.log("Copy the text below to get the debug data:\n\n```\nversion: ".concat(i.version,"\nuserAgent: ").concat(navigator.userAgent,"\ntimeBetweenLoadAndGet: ").concat(a-n,"\nvisitorId: ").concat(i.visitorId,"\ncomponents: ").concat(Lm(o),"\n```")),[2,i]}}))}))}}}var Nm={load:function(e){var t=void 0===e?{}:e,n=t.delayFallback,r=t.debug,a=t.monitoring,o=void 0===a||a;return Lp(this,0,void 0,(function(){var e;return Cp(this,(function(a){switch(a.label){case 0:return o&&function(){if(!(window.__fpjs_d_m||Math.random()>=.001))try{var e=new XMLHttpRequest;e.open("get","https://m1.openfpcdn.io/fingerprintjs/v".concat(jp,"/npm-monitoring"),!0),e.send()}catch(t){console.error(t)}}(),[4,Rm(n)];case 1:return a.sent(),e=function(e){return Yp(Am,e,[])}({debug:r}),[2,jm(e,r)]}}))}))},hashComponents:Cm,componentsToDebugString:Lm};async function Om(){try{const e="object"==typeof Cypress,t="object"==typeof process&&"test"===Ip.NODE_ENV;return e||t?"a-mock-visitor-id":(await(await Nm.load()).get()).visitorId}catch(e){return console.error(e),{}}}async function Fm(){return new Promise((e=>{window.requestIdleCallback?requestIdleCallback((async()=>{const t=await Om();e(t)})):setTimeout((async()=>{const t=await Om();e(t)}),500)}))}const Mm=({env:e,kountAccountId:t,kountSessionId:n})=>{const r=(e=>"production"===e)(e)?"https://ssl.kaptcha.com":"https://tst.kaptcha.com",a=new URL(`${r}/collect/sdk`);a.searchParams.append("m",t),n&&a.searchParams.append("m",n);const o=document.createElement("script");return o.setAttribute("class","kaxsdc"),o.setAttribute("data-event","load"),o.setAttribute("type","text/javascript"),o.setAttribute("src",a.href),document.body.append(o),o};async function Hm({env:e,kountAccountId:t,kountSessionId:n}){return new Promise(((r,a)=>{const o=Mm({env:e,kountAccountId:t,kountSessionId:n});o.onload=()=>{const e=new ka.ClientSDK;e.setupCallback({"collect-begin":e=>{const{MercSessId:t}=e;r(t)}}),e.autoLoadEvents()},o.onerror=()=>{a(new Error("Error attempting to mount Kount script"))}}))}const Bm=()=>{const e=document.createElement("script");return e.src="https://cdn.rebilly.com/risk-data-collector/@latest/google-adsense.js",new Promise((t=>{e.onload=()=>{t(null===document.getElementById("fj2xFkdsoQIQna"))},e.onerror=()=>t(!0),document.head.appendChild(e)})).catch((()=>!0))};async function qm({env:e=null,kountAccountId:t=null,kountSessionId:n=null}={}){return async function({env:e=null,screen:t,navigator:n,kountAccountId:r=null,kountSessionId:a=null,getFingerprint:o,getFraudSessionId:i}){const{colorDepth:s,height:l,width:c}=t||{},{javaEnabled:u,language:d}=n||{};let p,m,f;try{[f,p,m]=await Promise.all([Bm(),null==o?void 0:o(),r?i({env:e,kountAccountId:r,kountSessionId:a}):void 0])}catch(h){console.error(h)}return{riskMetadata:{fingerprint:p||null,extraData:{kountFraudSessionId:m||null},browserData:{colorDepth:s||null,isJavaEnabled:u?u.call(n):null,language:d||null,screenHeight:l||null,screenWidth:c||null,timeZoneOffset:(new Date).getTimezoneOffset(),isAdBlockEnabled:f}}}}({env:e,screen:screen,navigator:navigator,kountAccountId:t,kountSessionId:n,getFingerprint:Fm,getFraudSessionId:Hm})}function Dm(){var e;const t={expressMethods:[],methods:[]};let n=lo.data.readyToPay;return(null==(e=lo.options)?void 0:e.payout)&&(n=lo.data.readyToPayout),null==n||n.forEach((e=>{e.metadata.isExpressMethod?t.expressMethods.push(e):t.methods.push(e)})),window.ApplePaySession||(t.expressMethods=t.expressMethods.filter((e=>{var t;return"Apple Pay"!==(null==(t=null==e?void 0:e.feature)?void 0:t.name)})),lo.loader.stopLoading({id:"applePay-express"})),t}class zm extends vc{}function Vm(e){return null==e?null:"string"==typeof e?Number.isNaN(parseFloat(e))?null:parseFloat(e):e}class Wm{constructor({maxQuantity:e=null,price:t=null}={}){this.maxQuantity=e||Number.MAX_SAFE_INTEGER,this.price=Vm(t)}}const Um=class e{constructor(t={}){switch(this.formula=t.formula??e.Formulas.fixedFee,t.formula){case e.Formulas.stairstep:case e.Formulas.tiered:case e.Formulas.volume:if(null==t.brackets)throw new Error("Invalid brackets.");this.brackets=t.brackets.map((e=>new Wm(e)));break;case e.Formulas.flatRate:this.price=Vm(t.price)??0,this.maxQuantity=t.maxQuantity??null;break;case e.Formulas.fixedFee:default:this.price=Vm(t.price)??0}}get isSimple(){return Object.values(e.SimpleFormulas).includes(this.formula)}get isBracket(){return Object.values(e.BracketFormulas).includes(this.formula)}toPayload(){return{...this,isSimple:this.isSimple,isBracket:this.isBracket}}};Um.SimpleFormulas={fixedFee:"fixed-fee",flatRate:"flat-rate"},Um.BracketFormulas={stairstep:"stairstep",tiered:"tiered",volume:"volume"},Um.Formulas={...Um.SimpleFormulas,...Um.BracketFormulas};let Gm=Um;class Km extends vc{constructor(e={}){super(e),this.pricing=new Gm(e.pricing||{})}toPayload(){return{...this,pricing:this.pricing.toPayload()}}}const Zm=[{apiName:"ach",name:"ACH",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/BankAccount.svg",summary:"ACH is a network used for processing transactions across the United States.",description:"ACH is a network used for processing transactions across the United States.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ach"}]},{apiName:"AdvCash",name:"AdvCash",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/AdvCash.svg",summary:"AdvCash is an online payment system offering prepaid cards for individuals and\nonline businesses.\n",description:"AdvCash is an online payment system offering prepaid cards for individuals and\nonline businesses.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AdvCash"}]},{apiName:"Aircash",name:"Aircash",landscapeLogo:null,portraitLogo:null,summary:"Aircash is a mobile payment wallet that allows customers to pay for goods and services using their mobile phone.\n",description:"Aircash is a mobile payment wallet that allows customers to pay for goods and services using their mobile phone.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Aircash"}]},{apiName:"Airpay",name:"Airpay",landscapeLogo:null,portraitLogo:null,summary:"Airpay is an e-wallet that elevates you to an easier and more convenient\nlifestyle with all in one services.\n",description:"Airpay is an e-wallet that elevates you to an easier and more convenient\nlifestyle with all in one services.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Airpay"}]},{apiName:"Alfa-click",name:"Alfa-click",landscapeLogo:null,portraitLogo:null,summary:"Alfa-click combines digital and physical payment experiences and is among the\nhighest ranking Russian private banks.\n",description:"Alfa-click combines digital and physical payment experiences and is among the\nhighest ranking Russian private banks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Alfa-click"}]},{apiName:"Alipay",name:"Alipay",landscapeLogo:null,portraitLogo:null,summary:"Alipay is the most popular e-wallet and payment platform in Asia. Millions of\ntransactions are processed each day in China.\n",description:"Alipay is the most popular e-wallet and payment platform in Asia. Millions of\ntransactions are processed each day in China.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Alipay"}]},{apiName:"AmazonPay",name:"AmazonPay",landscapeLogo:null,portraitLogo:null,summary:"The AmazonPay method.",description:"The AmazonPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AmazonPay"}]},{apiName:"Apple Pay",name:"Apple Pay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Applepay.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Applepay.svg",summary:"Apple Pay is a digital wallet that also allows users to make payments in\nperson using a one-step payment process.\n",description:"Apple Pay is a digital wallet that also allows users to make payments in\nperson using a one-step payment process.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Apple%20Pay"}]},{apiName:"AstroPay Card",name:"AstroPay Card",landscapeLogo:null,portraitLogo:null,summary:"AstroPay Card allows consumers to purchase online at international websites,\nusing the most effective local payment methods in local currency.\n",description:"AstroPay Card allows consumers to purchase online at international websites,\nusing the most effective local payment methods in local currency.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AstroPay%20Card"}]},{apiName:"AstroPay-GO",name:"AstroPay Go",landscapeLogo:null,portraitLogo:null,summary:"AstroPay allows consumers to purchase online at international websites, using\nthe most effective local payment methods in local currency.\n",description:"AstroPay allows consumers to purchase online at international websites, using\nthe most effective local payment methods in local currency.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/AstroPay-GO"}]},{apiName:"Baloto",name:"Baloto",landscapeLogo:null,portraitLogo:null,summary:"Baloto is Colombia's largest lottery and payment service and is used by 80% of\nthe Colombian population.\n",description:"Baloto is Colombia's largest lottery and payment service and is used by 80% of\nthe Colombian population.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Baloto"}]},{apiName:"Bancontact-mobile",name:"Bancontact-mobile",landscapeLogo:null,portraitLogo:null,summary:"Bancontact mobile allows the shopper to complete a payment with the mobile\napp. installed on their device.\n",description:"Bancontact mobile allows the shopper to complete a payment with the mobile\napp. installed on their device.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bancontact-mobile"}]},{apiName:"Bancontact",name:"Bancontact",landscapeLogo:null,portraitLogo:null,summary:"Bancontact is a payment system offered by more than 80% of online Belgian\nbusinesses and functions like a regular card payment.\n",description:"Bancontact is a payment system offered by more than 80% of online Belgian\nbusinesses and functions like a regular card payment.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bancontact"}]},{apiName:"BankReferenced",name:"BankReferenced",landscapeLogo:null,portraitLogo:null,summary:"The BankReferenced method.",description:"The BankReferenced method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/BankReferenced"}]},{apiName:"BankSEND",name:"BankSEND",landscapeLogo:null,portraitLogo:null,summary:"With the BankSEND platform, customers pay with their online banking data using direct bank transfer.\n",description:"With the BankSEND platform, customers pay with their online banking data using direct bank transfer.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/BankSEND"}]},{apiName:"bank-transfer",name:"Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"A bank transfer is the direct, electronic transfer of funds from one bank\naccount to another.\n",description:"A bank transfer is the direct, electronic transfer of funds from one bank\naccount to another.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/bank-transfer"}]},{apiName:"Beeline",name:"Beeline",landscapeLogo:null,portraitLogo:null,summary:"Beeline offers a universal payment card and a mobile prepaid network system\nthat allows money transfers between Beeline subscribers.\n",description:"Beeline offers a universal payment card and a mobile prepaid network system\nthat allows money transfers between Beeline subscribers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Beeline"}]},{apiName:"Belfius-direct-net",name:"Belfius Direct Net",landscapeLogo:null,portraitLogo:null,summary:"Belfius is one of the leading online private banks in Belgium. They are used\nby 1 in 3 Belgians and have over 3.6 million customers.\n",description:"Belfius is one of the leading online private banks in Belgium. They are used\nby 1 in 3 Belgians and have over 3.6 million customers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Belfius-direct-net"}]},{apiName:"bitcoin",name:"Bitcoin",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Bitcoin.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Bitcoin.svg",summary:"Bitcoin payment method provides a borderless payment network and a seamless\ntransfer of bitcoins from anywhere in the world through any online devices.\n",description:"Bitcoin payment method provides a borderless payment network and a seamless\ntransfer of bitcoins from anywhere in the world through any online devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/bitcoin"}]},{apiName:"Bizum",name:"Bizum",landscapeLogo:null,portraitLogo:null,summary:"Bizum is the immediate, fast, convenient and universal mobile payment solution promoted by Spanish banks.",description:"Bizum is the immediate, fast, convenient and universal mobile payment solution promoted by Spanish banks.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Bizum"}]},{apiName:"Blik",name:"Blik",landscapeLogo:null,portraitLogo:null,summary:"Blik is a Polish payment system that allows users to make instant payments and\nwithdraw cash using a mobile banking app.\n",description:"Blik is a Polish payment system that allows users to make instant payments and\nwithdraw cash using a mobile banking app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Blik"}]},{apiName:"Boleto",name:"Boleto",landscapeLogo:null,portraitLogo:null,summary:"Boleto is Brazil's most popular cash-based payment method. It's the only\npayment option available for 35% of Brazillian consumers without a bank\naccount.\n",description:"Boleto is Brazil's most popular cash-based payment method. It's the only\npayment option available for 35% of Brazillian consumers without a bank\naccount.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Boleto"}]},{apiName:"CASHlib",name:"CASHlib",landscapeLogo:null,portraitLogo:null,summary:"CASHlib is a voucher based payment method that allows you to make online\npayments without the need of a credit or debit card.\n",description:"CASHlib is a voucher based payment method that allows you to make online\npayments without the need of a credit or debit card.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CASHlib"}]},{apiName:"CCAvenue",name:"CCAvenue",landscapeLogo:"https://app.rebilly.com/static/payment-methods/portrait/PaymentCard.svg",portraitLogo:null,summary:"CCAvenue Checkout offers a smooth, fast and frictionless buying experience.\n",description:"CCAvenue Checkout offers a smooth, fast and frictionless buying experience.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CCAvenue"}]},{apiName:"CODVoucher",name:"CODVoucher",landscapeLogo:null,portraitLogo:null,summary:"CODVoucher offers a digital voucher that the customer can scan at an\nauthorized location and pay with cash.\n",description:"CODVoucher offers a digital voucher that the customer can scan at an\nauthorized location and pay with cash.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CODVoucher"}]},{apiName:"cash",name:"Cash",landscapeLogo:null,portraitLogo:null,summary:"Cash is money in a physical form like coins or notes.",description:"Cash is money in a physical form like coins or notes.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cash"}]},{apiName:"cash-deposit",name:"Cash Deposit",landscapeLogo:null,portraitLogo:null,summary:"A cash deposit is money put into a bank account in the form of cash, checks,\nor bank transfers.\n",description:"A cash deposit is money put into a bank account in the form of cash, checks,\nor bank transfers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cash-deposit"}]},{apiName:"CashToCode",name:"CashToCode",landscapeLogo:null,portraitLogo:null,summary:"CashToCode is an instant cash payment service that does not require a bank\naccount or credit card.\n",description:"CashToCode is an instant cash payment service that does not require a bank\naccount or credit card.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CashToCode"}]},{apiName:"Cashterminal",name:"Cash Terminal",landscapeLogo:null,portraitLogo:null,summary:"A Bulgarian based service, which provides the ability to pay in cash and in real time.\n",description:"A Bulgarian based service, which provides the ability to pay in cash and in real time.\n",countries:{mode:"subset",values:["BG"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Cashterminal"}]},{apiName:"check",name:"Check",landscapeLogo:null,portraitLogo:null,summary:"Checks are physical documents that direct a bank to pay a specific amount of\nmoney to the recipient of the check.\n",description:"Checks are physical documents that direct a bank to pay a specific amount of\nmoney to the recipient of the check.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/check"}]},{apiName:"China UnionPay",name:"China UnionPay",landscapeLogo:null,portraitLogo:null,summary:"China UnionPay is the largest card scheme in China while also offering mobile\nand online payments. China UnionPay has over 7 billion cards in use and is\nconnected to all the ATMs across the country.\n",description:"China UnionPay is the largest card scheme in China while also offering mobile\nand online payments. China UnionPay has over 7 billion cards in use and is\nconnected to all the ATMs across the country.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/China%20UnionPay"}]},{apiName:"Conekta-oxxo",name:"Conekta OXXO",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/ConektaOxxo.svg",portraitLogo:null,summary:"Conekta OXXO Pay allows customers to purchase online or instore with a\ncash-based voucher. 30% of transactions in Mexico are with OXXO and they offer\nreal-time payment confirmation.\n",description:"Conekta OXXO Pay allows customers to purchase online or instore with a\ncash-based voucher. 30% of transactions in Mexico are with OXXO and they offer\nreal-time payment confirmation.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Conekta-oxxo"}]},{apiName:"Conekta-spei",name:"Conekta SPEI",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/ConektaOxxo.svg",portraitLogo:null,summary:"Conekta SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",description:"Conekta SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Conekta-spei"}]},{apiName:"cryptocurrency",name:"Cryptocurrency",landscapeLogo:null,portraitLogo:null,summary:"Cryptocurrency is a decentralized, digital currency based on blockchain\ntechnology which makes it nearly impossible to counterfeit or double-spend.\n",description:"Cryptocurrency is a decentralized, digital currency based on blockchain\ntechnology which makes it nearly impossible to counterfeit or double-spend.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/cryptocurrency"}]},{apiName:"Cupon-de-pagos",name:"Cupon de Pagos",landscapeLogo:null,portraitLogo:null,summary:"The Cupon de Pagos method.",description:"The Cupon de Pagos method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Cupon-de-pagos"}]},{apiName:"CyberSource",name:"CyberSource",landscapeLogo:null,portraitLogo:null,summary:"CyberSource ia an e-commerce credit card payment system that allows customers\nto process online payments.\n",description:"CyberSource ia an e-commerce credit card payment system that allows customers\nto process online payments.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/CyberSource"}]},{apiName:"Dimoco-pay-smart",name:"Dimoco pay smart",landscapeLogo:null,portraitLogo:null,summary:"The Dimoco pay smart method.\n",description:"The Dimoco pay smart method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Dimoco-pay-smart"}]},{apiName:"Directa24Card",name:"Directa24Card",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Directa24Card.svg",portraitLogo:null,summary:"Directa24 was formerly known as Astropay and specialized in Latin American local payment methods. They have expanded to include other emerging markets.\n",description:"Directa24 was formerly known as Astropay and specialized in Latin American local payment methods. They have expanded to include other emerging markets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Directa24Card"}]},{apiName:"domestic-cards",name:"Domestic Cards",landscapeLogo:null,portraitLogo:null,summary:"The Domestic Cards method.",description:"The Domestic Cards method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/domestic-cards"}]},{apiName:"EPS",name:"EPS",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/EPS.svg",portraitLogo:null,summary:"EPS is an online transfer payment method accepted by 80% of all online\nbusinesses in Austria.\n",description:"EPS is an online transfer payment method accepted by 80% of all online\nbusinesses in Austria.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/EPS"}]},{apiName:"e-wallet",name:"eWallet",landscapeLogo:null,portraitLogo:null,summary:"An e-Wallet is an electronic system that securely stores payment information\nthat allows for quick and easy digital transactions.\n",description:"An e-Wallet is an electronic system that securely stores payment information\nthat allows for quick and easy digital transactions.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/e-wallet"}]},{apiName:"eZeeWallet",name:"eZeeWallet",landscapeLogo:null,portraitLogo:null,summary:"eZeeWallet is a digital wallet that offers secure, customer-focused payment services that make paying\nand getting paid simple and hassle-free.\n",description:"eZeeWallet is a digital wallet that offers secure, customer-focused payment services that make paying\nand getting paid simple and hassle-free.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/eZeeWallet"}]},{apiName:"echeck",name:"eCheck",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Echeck.svg",portraitLogo:null,summary:"An eCheck is a digital version of a traditional paper check.",description:"An eCheck is a digital version of a traditional paper check.",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/echeck"}]},{apiName:"ecoPayz",name:"ecoPayz",landscapeLogo:null,portraitLogo:null,summary:"ecoPAYZ is one of the oldest e-wallets and allows its customers to receive,\nsend, and spend money worldwide all from one online account.\n",description:"ecoPAYZ is one of the oldest e-wallets and allows its customers to receive,\nsend, and spend money worldwide all from one online account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ecoPayz"}]},{apiName:"ecoVoucher",name:"ecoVoucher",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Ecovoucher.svg",portraitLogo:null,summary:"ecoVoucher is offered by ecoPayz and is a prepaid payment method that allows\ncustomers to pay online securely.\n",description:"ecoVoucher is offered by ecoPayz and is a prepaid payment method that allows\ncustomers to pay online securely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ecoVoucher"}]},{apiName:"Efecty",name:"Efecty",landscapeLogo:null,portraitLogo:null,summary:"Efecty is a Colombian-based offline cash payment voucher option. It is one of\nthe most popular payment methods in Colombia to pay utility bills and online\npurchases.\n",description:"Efecty is a Colombian-based offline cash payment voucher option. It is one of\nthe most popular payment methods in Colombia to pay utility bills and online\npurchases.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Efecty"}]},{apiName:"Ethereum",name:"Ethereum",landscapeLogo:null,portraitLogo:null,summary:"Ethereum is a decentralizaed blockchain platform that offers open access to\ndigital money and data-friendly services. It is the second largest\ncryptocurrency in the market after Bitcoin.\n",description:"Ethereum is a decentralizaed blockchain platform that offers open access to\ndigital money and data-friendly services. It is the second largest\ncryptocurrency in the market after Bitcoin.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Ethereum"}]},{apiName:"FasterPay",name:"FasterPay",landscapeLogo:null,portraitLogo:null,summary:"The FasterPay method\n",description:"The FasterPay method\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/FasterPay"}]},{apiName:"Flexepin",name:"Flexepin",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Flexepin.svg",portraitLogo:null,summary:"Flexepin is owned and operated by FlexeWallet and their vouchers are issued\nunder an Australian Financial Services License.\n",description:"Flexepin is owned and operated by FlexeWallet and their vouchers are issued\nunder an Australian Financial Services License.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Flexepin"}]},{apiName:"Giropay",name:"Giropay",landscapeLogo:null,portraitLogo:null,summary:"Giropay is an online payment method offered by more than 1,500 banks in\nGermany. Giropay uses real-time bank transfers and thier payments are 100%\nguaranteed.\n",description:"Giropay is an online payment method offered by more than 1,500 banks in\nGermany. Giropay uses real-time bank transfers and thier payments are 100%\nguaranteed.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Giropay"}]},{apiName:"Google Pay",name:"Google Pay",landscapeLogo:null,portraitLogo:null,summary:"Google Pay enables customers to pay with any payment method that is saved to\ntheir Google account.\n",description:"Google Pay enables customers to pay with any payment method that is saved to\ntheir Google account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Google%20Pay"}]},{apiName:"Gpaysafe",name:"Gpaysafe",landscapeLogo:null,portraitLogo:null,summary:"Gpaysafe allows merchants to do business globally with a single API solution.",description:"Gpaysafe allows merchants to do business globally with a single API solution.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Gpaysafe"}]},{apiName:"iDEAL",name:"iDEAL",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/iDEAL.svg",summary:"iDEAL allows customers to complete transactions online using their bank\ncredentials. It is the most popular payment method in the Netherlands with a\nuse of nearly 55%.\n",description:"iDEAL allows customers to complete transactions online using their bank\ncredentials. It is the most popular payment method in the Netherlands with a\nuse of nearly 55%.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/iDEAL"}]},{apiName:"iDebit",name:"iDebit",landscapeLogo:null,portraitLogo:null,summary:"iDebit is an online banking based payment method made available to consumers\nin Canada, connecting them to secure, real-time payments without a credit\ncard.\n",description:"iDebit is an online banking based payment method made available to consumers\nin Canada, connecting them to secure, real-time payments without a credit\ncard.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/iDebit"}]},{apiName:"ING-homepay",name:"ING Homepay",landscapeLogo:null,portraitLogo:null,summary:"ING Homepay is an online payment method that allows payments over online\nbanking with the Belgian ING branch.\n",description:"ING Homepay is an online payment method that allows payments over online\nbanking with the Belgian ING branch.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ING-homepay"}]},{apiName:"INOVAPAY-pin",name:"INOVAPAY Pin",landscapeLogo:null,portraitLogo:null,summary:"The INOVAPAY Pin method.",description:"The INOVAPAY Pin method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/INOVAPAY-pin"}]},{apiName:"INOVAPAY-wallet",name:"INOVAPAY Wallet",landscapeLogo:null,portraitLogo:null,summary:"INOVAPAY Wallet is an international e-money transfer service used to transfer\nmoney to and from merchants.\n",description:"INOVAPAY Wallet is an international e-money transfer service used to transfer\nmoney to and from merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/INOVAPAY-wallet"}]},{apiName:"InstaDebit",name:"InsataDebit",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Instadebit.svg",portraitLogo:null,summary:"The InstaDebit method.\n",description:"The InstaDebit method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/InstaDebit"}]},{apiName:"instant-bank-transfer",name:"Instant Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"Instant bank transfers allow consumers to make payments instantly. Both\nconsumers and merchants can receive and send funds immediately.\n",description:"Instant bank transfers allow consumers to make payments instantly. Both\nconsumers and merchants can receive and send funds immediately.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/instant-bank-transfer"}]},{apiName:"Instant Banking",name:"Instant Banking",landscapeLogo:null,portraitLogo:null,summary:"Instant Banking enables consumers to make payments to merchants using funds from their bank account.\n",description:"Instant Banking enables consumers to make payments to merchants using funds from their bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Instant%20Banking"}]},{apiName:"InstantPayments",name:"Instant Payments",landscapeLogo:null,portraitLogo:null,summary:"Instant Payments enables consumers to make payments to merchants using funds from their bank account.\n",description:"Instant Payments enables consumers to make payments to merchants using funds from their bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/InstantPayments"}]},{apiName:"Interac",name:"Interac",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac is a Canadian debit card system that allows funds to be sent via its\ne-Transfer service.\n",description:"Interac is a Canadian debit card system that allows funds to be sent via its\ne-Transfer service.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac"}]},{apiName:"Interac-eTransfer",name:"Interac eTransfer",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac eTransfer is a Canadian interbank network that allows merchants,\nfinancial institutions, and consumers to exchange electronic funds.\n",description:"Interac eTransfer is a Canadian interbank network that allows merchants,\nfinancial institutions, and consumers to exchange electronic funds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-eTransfer"}]},{apiName:"Interac-express-connect",name:"Interac Express Connect",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac Express Connect is an e-wallet that allows payments via multiple\nchannels including paypal, Interac e-transfer, and credit cards.\n",description:"Interac Express Connect is an e-wallet that allows payments via multiple\nchannels including paypal, Interac e-transfer, and credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-express-connect"}]},{apiName:"Interac-online",name:"Interac Online",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Interac.svg",summary:"Interac Online is a payment option that enables consumers to shop online and\npay for goods through the RBC online banking account.\n",description:"Interac Online is a payment option that enables consumers to shop online and\npay for goods through the RBC online banking account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Interac-online"}]},{apiName:"invoice",name:"Invoice",landscapeLogo:null,portraitLogo:null,summary:"An invoice is a document issued by a merchant to a consumer relating to a sale\ntransaction and can inform products, prices, quantities, or services.\n",description:"An invoice is a document issued by a merchant to a consumer relating to a sale\ntransaction and can inform products, prices, quantities, or services.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/invoice"}]},{apiName:"Jeton",name:"Jeton",landscapeLogo:null,portraitLogo:null,summary:"Jeton is a digital wallet that allows users to exchange money, make secure\nmoney transfers and purchases online.\n",description:"Jeton is a digital wallet that allows users to exchange money, make secure\nmoney transfers and purchases online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Jeton"}]},{apiName:"jpay",name:"Jpay",landscapeLogo:null,portraitLogo:null,summary:"The Jpay method.",description:"The Jpay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/jpay"}]},{apiName:"KNET",name:"KNET",landscapeLogo:null,portraitLogo:null,summary:"The KNET method.\n",description:"The KNET method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/KNET"}]},{apiName:"KakaoPay",name:"KakaoPay",landscapeLogo:null,portraitLogo:null,summary:"KakaoPay is a mobile payment and digital wallet service by Kakao and based in South Korea. It enables users make mobile payments and online transactions.\n",description:"KakaoPay is a mobile payment and digital wallet service by Kakao and based in South Korea. It enables users make mobile payments and online transactions.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/KakaoPay"}]},{apiName:"Khelocard",name:"Khelocard",landscapeLogo:null,portraitLogo:null,summary:"Khelo Card is a virtual prepaid card that allows for deposits and withdrawals\nand is accepted at partnered online sites around the world.\n",description:"Khelo Card is a virtual prepaid card that allows for deposits and withdrawals\nand is accepted at partnered online sites around the world.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Khelocard"}]},{apiName:"Klarna",name:"Klarna",landscapeLogo:null,portraitLogo:null,summary:"Klarna offers flexible payment plans that provides payment solutions for 85\nmillion customers and over 200,000 merchants across 19 markets.\n",description:"Klarna offers flexible payment plans that provides payment solutions for 85\nmillion customers and over 200,000 merchants across 19 markets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Klarna"}]},{apiName:"LPG-online",name:"LPG Online",landscapeLogo:null,portraitLogo:null,summary:"Latam Payment Group (LPG Online) specializes in the development of\ntechnological solutions for the operation of eCommerce in the Latin American\nmarket.\n",description:"Latam Payment Group (LPG Online) specializes in the development of\ntechnological solutions for the operation of eCommerce in the Latin American\nmarket.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/LPG-online"}]},{apiName:"LPG-payment-card",name:"LPG Payment Card",landscapeLogo:null,portraitLogo:null,summary:"The LPG Payment Card method.",description:"The LPG Payment Card method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/LPG-payment-card"}]},{apiName:"Litecoin",name:"Litecoin",landscapeLogo:null,portraitLogo:null,summary:"Litecoin is a peer-to-peer cryptocurrency and open-source software project.",description:"Litecoin is a peer-to-peer cryptocurrency and open-source software project.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Litecoin"}]},{apiName:"MTS",name:"MTS",landscapeLogo:null,portraitLogo:null,summary:"MTS allows users to make payments and money transfers from their e-wallet\nthrough a smartphone or MTS website.\n",description:"MTS allows users to make payments and money transfers from their e-wallet\nthrough a smartphone or MTS website.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MTS"}]},{apiName:"Matrix",name:"Matrix",landscapeLogo:null,portraitLogo:null,summary:"The Matrix method.",description:"The Matrix method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Matrix"}]},{apiName:"MaxiCash",name:"MaxiCash",landscapeLogo:null,portraitLogo:null,summary:"The MaxiCash method.",description:"The MaxiCash method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MaxiCash"}]},{apiName:"Megafon",name:"Megafon",landscapeLogo:null,portraitLogo:null,summary:"Megafon can be used to pay like a normal bank card online and in person at\nphysical locations.\n",description:"Megafon can be used to pay like a normal bank card online and in person at\nphysical locations.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Megafon"}]},{apiName:"MercadoPago",name:"MercadoPago",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/MercadoPago.svg",portraitLogo:null,summary:"Mercado hosts the largest online commerce and payments ecosystem in Latin America. They are present in 18 countries including: Argentina, Brazil, Mexico, Colombia, Chile, Venezuela and Peru. [www.mercadopago.com](https://www.mercadopago.com/)\n",description:"Mercado hosts the largest online commerce and payments ecosystem in Latin America. They are present in 18 countries including: Argentina, Brazil, Mexico, Colombia, Chile, Venezuela and Peru. [www.mercadopago.com](https://www.mercadopago.com/)\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MercadoPago"}]},{apiName:"MiFinity-eWallet",name:"MiFinity-eWallet",landscapeLogo:null,portraitLogo:null,summary:"MiFinity eWallet allows users to send money from their account directly to a\nrecipient's bank account.\n",description:"MiFinity eWallet allows users to send money from their account directly to a\nrecipient's bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MiFinity-eWallet"}]},{apiName:"miscellaneous",name:"Miscellaneous",landscapeLogo:null,portraitLogo:null,summary:"The miscellaneous method.\n",description:"The miscellaneous method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/miscellaneous"}]},{apiName:"MobilePay",name:"MobilePay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/MobilePay.svg",portraitLogo:null,summary:"Fast, easy payments are handled with a simple swipe, and all that’s needed to make them is a phone number.\n",description:"Fast, easy payments are handled with a simple swipe, and all that’s needed to make them is a phone number.\n",countries:{mode:"subset",values:["DK"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MobilePay"}]},{apiName:"MuchBetter",name:"MuchBetter",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Muchbetter.svg",portraitLogo:null,summary:"MuchBetter is a payment application with free transfers and multiple contact\npayment devices.\n",description:"MuchBetter is a payment application with free transfers and multiple contact\npayment devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MuchBetter"}]},{apiName:"Multibanco",name:"Multibanco",landscapeLogo:null,portraitLogo:null,summary:"The Multibanco method.\n",description:"The Multibanco method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Multibanco"}]},{apiName:"MyFatoorah",name:"MyFatoorah",landscapeLogo:null,portraitLogo:null,summary:"The MyFatoorah method.",description:"The MyFatoorah method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/MyFatoorah"}]},{apiName:"Neosurf",name:"Neosurf",landscapeLogo:null,portraitLogo:null,summary:"Neosurf vouchers make online payments possible for thoe without bank accounts\nor credit cards.\n",description:"Neosurf vouchers make online payments possible for thoe without bank accounts\nor credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Neosurf"}]},{apiName:"Netbanking",name:"Netbanking",landscapeLogo:null,portraitLogo:null,summary:"Netbanking allows merchants to accept UPI transactions in India.",description:"Netbanking allows merchants to accept UPI transactions in India.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Netbanking"}]},{apiName:"Neteller",name:"Neteller",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Neteller.svg",portraitLogo:null,summary:"Neteller offers payments or withdrawals via bank transfer, member wires, money\ntransfers, and merchant sites.\n",description:"Neteller offers payments or withdrawals via bank transfer, member wires, money\ntransfers, and merchant sites.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Neteller"}]},{apiName:"Nordea-Solo",name:"Nordea Solo",landscapeLogo:null,portraitLogo:null,summary:"The Nordea Solo method.",description:"The Nordea Solo method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Nordea-Solo"}]},{apiName:"NordikCoin",name:"NordikCoin",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/NordikCoin.svg",summary:"NordikCoin customers can buy Bitcoin in under 5 minutes.",description:"NordikCoin is a crypto currency exchange that specializes in Bitcoin.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/NordikCoin"}]},{apiName:"OXXO",name:"OXXO",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/OXXO.svg",portraitLogo:null,summary:"OXXO is a Mexican convenience store chain with thousands of locations across\nLatin America. OXXO enables customers to pay bills and online purchases with\ncash.\n",description:"OXXO is a Mexican convenience store chain with thousands of locations across\nLatin America. OXXO enables customers to pay bills and online purchases with\ncash.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/OXXO"}]},{apiName:"OchaPay",name:"OchaPay",landscapeLogo:null,portraitLogo:null,summary:"The OchaPay method.",description:"The OchaPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/OchaPay"}]},{apiName:"online-bank-transfer",name:"Online Bank Transfer",landscapeLogo:null,portraitLogo:null,summary:"An online bank transfer is an electronic funds transfer of money from one bank\naccount to another.\n",description:"An online bank transfer is an electronic funds transfer of money from one bank\naccount to another.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/online-bank-transfer"}]},{apiName:"Onlineueberweisen",name:"OnlineUeberweisen",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Onlineueberweisen.svg",portraitLogo:null,summary:"OnlineUeberweisen is an online banking ePayment company located in Munich,\nGermany.\n",description:"OnlineUeberweisen is an online banking ePayment company located in Munich,\nGermany.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Onlineueberweisen"}]},{apiName:"oriental-wallet",name:"Oriental Wallet",landscapeLogo:null,portraitLogo:null,summary:"The Oriental Wallet method.",description:"The Oriental Wallet method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/oriental-wallet"}]},{apiName:"P24",name:"P24",landscapeLogo:null,portraitLogo:null,summary:"Przelewy24 (P24) is a payment method in Poland that allows the transfer of funds\nbetween more than 90,000 businesses and Polish banks.\n",description:"Przelewy24 (P24) is a payment method in Poland that allows the transfer of funds\nbetween more than 90,000 businesses and Polish banks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/P24"}]},{apiName:"PIX",name:"PIX",landscapeLogo:null,portraitLogo:null,summary:"PIX is a new payment method in Brazil for instant bank transfers and is\noperated by Brazilian banks, digital accounts, and wallets.\n",description:"PIX is a new payment method in Brazil for instant bank transfers and is\noperated by Brazilian banks, digital accounts, and wallets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PIX"}]},{apiName:"POLi",name:"POLi",landscapeLogo:null,portraitLogo:null,summary:"The POLi method.",description:"The POLi method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/POLi"}]},{apiName:"Pagadito",name:"Pagadito",landscapeLogo:null,portraitLogo:null,summary:"The Pagadito method.",description:"The Pagadito method.",countries:{mode:"subset",values:["BZ","CR","DO","GT","HN","NI","PA","PR","SV","US"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagadito"}]},{apiName:"PagoEffectivo",name:"PagoEffectivo",landscapeLogo:null,portraitLogo:null,summary:"The PagoEffectivo method.",description:"The PagoEffectivo method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PagoEffectivo"}]},{apiName:"Pagsmile-deposit-express",name:"Pagsmile Deposit Express",landscapeLogo:null,portraitLogo:null,summary:"Pagsmile Deposit Express is a money transfer system. After an online purchase,\nthe client can pay at a bank, ATM, or via internet banking.\n",description:"Pagsmile Deposit Express is a money transfer system. After an online purchase,\nthe client can pay at a bank, ATM, or via internet banking.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagsmile-deposit-express"}]},{apiName:"Pagsmile-lottery",name:"Pagsmile Lottery",landscapeLogo:null,portraitLogo:null,summary:"Pagsmile Lottery offers betting services as well as banking services such as\nwithdrawals, deposits, and bank checking.\n",description:"Pagsmile Lottery offers betting services as well as banking services such as\nwithdrawals, deposits, and bank checking.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pagsmile-lottery"}]},{apiName:"Pay4Fun",name:"Pay4Fun",landscapeLogo:null,portraitLogo:null,summary:"Pay4Fun is a prepaid e-wallet that is connected to a bank account and can be\nused for deposits and withdrawls.\n",description:"Pay4Fun is a prepaid e-wallet that is connected to a bank account and can be\nused for deposits and withdrawls.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Pay4Fun"}]},{apiName:"PayCash",name:"PayCash",landscapeLogo:null,portraitLogo:null,summary:"PayCash is an electronic payment platformfor making anonymous internet\npurchases with cash via kiosks.\n",description:"PayCash is an electronic payment platformfor making anonymous internet\npurchases with cash via kiosks.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayCash"}]},{apiName:"PayRedeem",name:"PayRedeem",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/PayRedeem.svg",portraitLogo:null,summary:"PayRedeem eCards can be purchased online with credit/debit card, wire transfer, cryptocurrency, and over 200 alternative payment methods.\n",description:"PayRedeem eCards can be purchased online with credit/debit card, wire transfer, cryptocurrency, and over 200 alternative payment methods.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayRedeem"}]},{apiName:"PayTabs",name:"PayTabs",landscapeLogo:null,portraitLogo:null,summary:"The PayTabs method.",description:"The PayTabs method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayTabs"}]},{apiName:"PayU",name:"PayU",landscapeLogo:null,portraitLogo:null,summary:"The PayU method.",description:"The PayU method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayU"}]},{apiName:"PayULatam",name:"PayULatam",landscapeLogo:null,portraitLogo:null,summary:"The PayULatam method.",description:"The PayULatam method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PayULatam"}]},{apiName:"Payco",name:"Payco",landscapeLogo:null,portraitLogo:null,summary:"Payco is one of the most popular forms of payment in South Korea and offers your shoppers convenience and familiarity when shopping online.\n",description:"Payco is one of the most popular forms of payment in South Korea and offers your shoppers convenience and familiarity when shopping online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Payco"}]},{apiName:"Payeer",name:"Payeer",landscapeLogo:null,portraitLogo:null,summary:"Payeer is an e-wallet designed to manage cryptocurrencies and fiat currencies\nwith a built-in payment exchange for systems such as MasterCard, VISA, or\nPaypal.\n",description:"Payeer is an e-wallet designed to manage cryptocurrencies and fiat currencies\nwith a built-in payment exchange for systems such as MasterCard, VISA, or\nPaypal.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Payeer"}]},{apiName:"PaymentAsia-crypto",name:"PaymentAsia-crypto",landscapeLogo:null,portraitLogo:null,summary:"The PaymentAsia-crypto method.",description:"The PaymentAsia-crypto method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PaymentAsia-crypto"}]},{apiName:"payment-card",name:"Payment Card",landscapeLogo:null,portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/PaymentCard.svg",summary:"Payment cards are physical cards used for cashless payments and are issued by\nfinancial institiutions, such as banks, to a customer.\n",description:"Payment cards are physical cards used for cashless payments and are issued by\nfinancial institiutions, such as banks, to a customer.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/payment-card"}]},{apiName:"Paymero-QR",name:"Paymero-QR",landscapeLogo:null,portraitLogo:null,summary:"Paymero-QR helps online merchants to accept alternative methods such as\ncontactless payments through a QR code.\n",description:"Paymero-QR helps online merchants to accept alternative methods such as\ncontactless payments through a QR code.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paymero-QR"}]},{apiName:"Paymero",name:"Paymero",landscapeLogo:null,portraitLogo:null,summary:"Paymero is an instant bank transfer that allows customers to make UnionPay\nbank transfers to merchants.\n",description:"Paymero is an instant bank transfer that allows customers to make UnionPay\nbank transfers to merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paymero"}]},{apiName:"paypal",name:"Paypal",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Paypal.svg",portraitLogo:"https://app.rebilly.com/static/payment-methods/portrait/Paypal.svg",summary:"Paypal is currently one of the most popular online payment processors, with\nover 300 million account holders.\n",description:"Paypal is currently one of the most popular online payment processors, with\nover 300 million account holders.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/paypal"}]},{apiName:"Paysafecard",name:"Paysafecard",landscapeLogo:null,portraitLogo:null,summary:"Paysafecard is a closed loop gift card that allows users to pay safely online.",description:"Paysafecard is a closed loop gift card that allows users to pay safely online.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paysafecard"}]},{apiName:"Paysafecash",name:"Paysafecash",landscapeLogo:null,portraitLogo:null,summary:"Paysafecash is an online payment method that allows users to make secure digital payments using cash.",description:"Paysafecash is an online payment method that allows users to make secure digital payments using cash.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Paysafecash"}]},{apiName:"Perfect-money",name:"Perfect Money",landscapeLogo:null,portraitLogo:null,summary:"Perfect oney allows users to make instant payments and money transfers\nsecurely online through an online portal.\n",description:"Perfect oney allows users to make instant payments and money transfers\nsecurely online through an online portal.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Perfect-money"}]},{apiName:"phone",name:"Phone",landscapeLogo:null,portraitLogo:null,summary:"A phone is a telecommunications device that allows users to conduct a\nconversation.\n",description:"A phone is a telecommunications device that allows users to conduct a\nconversation.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/phone"}]},{apiName:"PhonePe",name:"PhonePe",landscapeLogo:null,portraitLogo:null,summary:"PhonePe is a digital wallet and online payments application that allows users\nto make instant money transfers with UPI.\n",description:"PhonePe is a digital wallet and online payments application that allows users\nto make instant money transfers with UPI.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PhonePe"}]},{apiName:"Piastrix",name:"Piastrix",landscapeLogo:null,portraitLogo:null,summary:"Piastrix is a Russian payment method that allows merchants to accept credit\ncard purchases via e-wallet.\n",description:"Piastrix is a Russian payment method that allows merchants to accept credit\ncard purchases via e-wallet.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Piastrix"}]},{apiName:"PinPay",name:"PinPay",landscapeLogo:null,portraitLogo:null,summary:"The PinPay method.",description:"The PinPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/PinPay"}]},{apiName:"QIWI",name:"QIWI",landscapeLogo:null,portraitLogo:null,summary:"QIWI is an e-wallet that allows users to transfer money, receive payments, and\nhas over 149,000 kiosks and terminals.\n",description:"QIWI is an e-wallet that allows users to transfer money, receive payments, and\nhas over 149,000 kiosks and terminals.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QIWI"}]},{apiName:"QPay",name:"QPay",landscapeLogo:null,portraitLogo:null,summary:"The QPay method.\n",description:"The QPay method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QPay"}]},{apiName:"QQPay",name:"QQPay",landscapeLogo:null,portraitLogo:null,summary:"QQPay is an e-wallet that allows users to pay for online services quickly an\nsecurely.\n",description:"QQPay is an e-wallet that allows users to pay for online services quickly an\nsecurely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/QQPay"}]},{apiName:"rapyd-checkout",name:"Rapyd Checkout",landscapeLogo:null,portraitLogo:null,summary:"Rapyd Checkout is a platform that allows businesses to accept payment in the\nform of instant UPI payments from bank accounts, e-wallets, and credit cards.\n",description:"Rapyd Checkout is a platform that allows businesses to accept payment in the\nform of instant UPI payments from bank accounts, e-wallets, and credit cards.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/rapyd-checkout"}]},{apiName:"Resurs",name:"Resurs",landscapeLogo:null,portraitLogo:null,summary:"The Resurs method.",description:"The Resurs method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Resurs"}]},{apiName:"SEPA",name:"SEPA",landscapeLogo:null,portraitLogo:null,summary:"SEPA simplifies payments within the European Union and facilitates the direct\ndebiting of every Euro-denominated bank account.\n",description:"SEPA simplifies payments within the European Union and facilitates the direct\ndebiting of every Euro-denominated bank account.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SEPA"}]},{apiName:"SMSVoucher",name:"SMSVoucher",landscapeLogo:null,portraitLogo:null,summary:"SMS Voucher is a mobile voucher that can be used to transfer funds via a\nmobile phone.\n",description:"SMS Voucher is a mobile voucher that can be used to transfer funds via a\nmobile phone.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SMSVoucher"}]},{apiName:"SPEI",name:"SPEI",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/spei.svg",portraitLogo:null,summary:"SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",description:"SPEI allows its customers to send and receive interbank electronic\ntransfers and obtain real-time payment confirmation in seconds.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SPEI"}]},{apiName:"SafetyPay",name:"SafetyPay",landscapeLogo:null,portraitLogo:null,summary:"SafetyPay operates the largest network of banks and cash collection points in Latin America, the result of 10+ years effort, with presence in 16 countries consolidated with 380 bank partners and 180,000 collection points.\n",description:"SafetyPay operates the largest network of banks and cash collection points in Latin America, the result of 10+ years effort, with presence in 16 countries consolidated with 380 bank partners and 180,000 collection points.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SafetyPay"}]},{apiName:"Samsung Pay",name:"Samsung Pay",landscapeLogo:null,portraitLogo:null,summary:"Samsung Pay is a mobile payment and digital wallet service by Samsung Electronics that enables users to make payments using\ncompatible phones and other Samsung-produced devices.\n",description:"Samsung Pay is a mobile payment and digital wallet service by Samsung Electronics that enables users to make payments using\ncompatible phones and other Samsung-produced devices.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!1,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Samsung%20Pay"}]},{apiName:"Siirto",name:"Siirto",landscapeLogo:null,portraitLogo:null,summary:"Siirto allows users to transfer money easily to other Siirto users by using\ntheir phone numbers.\n",description:"Siirto allows users to transfer money easily to other Siirto users by using\ntheir phone numbers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Siirto"}]},{apiName:"Skrill",name:"Skrill",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Skrill.svg",portraitLogo:null,summary:"Skrill is a digital wallet for money transfers and online payments that offers\na safe way to pay across different platforms.\n",description:"Skrill is a digital wallet for money transfers and online payments that offers\na safe way to pay across different platforms.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Skrill"}]},{apiName:"Skrill Rapid Transfer",name:"Skrill Rapid Transfer",landscapeLogo:null,portraitLogo:null,summary:"Skrill Rapid Transfer allows users to deposit money into their Skrill wallet\nor to pay online directly.\n",description:"Skrill Rapid Transfer allows users to deposit money into their Skrill wallet\nor to pay online directly.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Skrill%20Rapid%20Transfer"}]},{apiName:"Sofort",name:"Sofort",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Sofort.svg",portraitLogo:null,summary:"Sofort is a payment method acquired by Klarna that redirects customers to\ninitiate a transfer with their bank.\n",description:"Sofort is a payment method acquired by Klarna that redirects customers to\ninitiate a transfer with their bank.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Sofort"}]},{apiName:"SparkPay",name:"SparkPay",landscapeLogo:null,portraitLogo:null,summary:"The SparkPay method.",description:"The SparkPay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/SparkPay"}]},{apiName:"swift-dbt",name:"SWIFT Debit",landscapeLogo:null,portraitLogo:null,summary:"The SWIFT Debit method.",description:"The SWIFT Debit method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/swift-dbt"}]},{apiName:"TWINT",name:"TWINT",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/TWINT.svg",portraitLogo:null,summary:"TWINT allows customers to make convenient and secure payments via a smartpone.",description:"TWINT allows customers to make convenient and secure payments via a smartpone.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/TWINT"}]},{apiName:"Tele2",name:"Tele2",landscapeLogo:null,portraitLogo:null,summary:"Tele2 is an intergrated e-wallet that allows users to instantly receive\ndigital payments frmi TalkBank.\n",description:"Tele2 is an intergrated e-wallet that allows users to instantly receive\ndigital payments frmi TalkBank.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tele2"}]},{apiName:"Telr",name:"Telr",landscapeLogo:null,portraitLogo:null,summary:"The Telr method.",description:"The Telr method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Telr"}]},{apiName:"Terminaly-RF",name:"Terminaly RF",landscapeLogo:null,portraitLogo:null,summary:"The Terminaly RF method.",description:"The Terminaly RF method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Terminaly-RF"}]},{apiName:"Tether",name:"Tether",landscapeLogo:null,portraitLogo:null,summary:"Tether is a cryptocurrency with tokens issued by Tether Limited.",description:"Tether is a cryptocurrency with tokens issued by Tether Limited.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tether"}]},{apiName:"ToditoCash-card",name:"ToditoCash Card",landscapeLogo:null,portraitLogo:null,summary:"ToditoCash Card is a prepaid card service used in Mexico that allows customers\nto use the card for purchasing goods and services online.\n",description:"ToditoCash Card is a prepaid card service used in Mexico that allows customers\nto use the card for purchasing goods and services online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ToditoCash-card"}]},{apiName:"Trustly",name:"Trustly",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Trustly.svg",portraitLogo:null,summary:"Trustly an open banking payment method that allows customers to shop and pay\nfrom their online bank account, without the use of a card or app.\n",description:"Trustly an open banking payment method that allows customers to shop and pay\nfrom their online bank account, without the use of a card or app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Trustly"}]},{apiName:"Tupay",name:"Tupay",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Tupay.svg",portraitLogo:null,summary:"Tupay is a one-stop-shop payment platform. It enables you to make everyday purchases in an easy, convenient, and secure manner through your favorite wallets.\nPay seamlessly, in-app, from anywhere your money is. Whether it is mobile money, a card, or bank without the need to transfer to various wallets.\n",description:"Tupay is a one-stop-shop payment platform. It enables you to make everyday purchases in an easy, convenient, and secure manner through your favorite wallets.\nPay seamlessly, in-app, from anywhere your money is. Whether it is mobile money, a card, or bank without the need to transfer to various wallets.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Tupay"}]},{apiName:"UPI",name:"UPI",landscapeLogo:null,portraitLogo:null,summary:"Unified Payments Interface (UPI) is a payment system that powers multiple bank\naccounts into a single mobile application.\n",description:"Unified Payments Interface (UPI) is a payment system that powers multiple bank\naccounts into a single mobile application.\n",countries:{mode:"subset",values:["IN"]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UPI"}]},{apiName:"UPayCard",name:"UPayCard",landscapeLogo:null,portraitLogo:null,summary:"The UPayCard method.",description:"The UPayCard method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UPayCard"}]},{apiName:"USD-coin",name:"USD coin",landscapeLogo:null,portraitLogo:null,summary:"The USD coin (USDC ERC20) method.\n",description:"The USD coin (USDC ERC20) method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/USD-coin"}]},{apiName:"UniCrypt",name:"UniCrypt",landscapeLogo:null,portraitLogo:null,summary:"The UniCrypt method.",description:"The UniCrypt method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/UniCrypt"}]},{apiName:"VCreditos",name:"VCreditos",landscapeLogo:null,portraitLogo:null,summary:"VCreditos is an e-wallet for online transfers and withdrawals. The customer\ncan acquire exclusive advantages, points, and benefits.\n",description:"VCreditos is an e-wallet for online transfers and withdrawals. The customer\ncan acquire exclusive advantages, points, and benefits.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VCreditos"}]},{apiName:"VegaWallet",name:"VegaWallet",landscapeLogo:null,portraitLogo:null,summary:"VegaWallet is an e-wallet that allows users to purchase, receive, send, and convert funds (points) between users and merchants.\n",description:"VegaWallet is an e-wallet that allows users to purchase, receive, send, and convert funds (points) between users and merchants.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VegaWallet"}]},{apiName:"VenusPoint",name:"VenusPoint",landscapeLogo:null,portraitLogo:null,summary:"The VenusPoint method.",description:"The VenusPoint method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/VenusPoint"}]},{apiName:"voucher",name:"Voucher",landscapeLogo:null,portraitLogo:null,summary:"The voucher method.\n",description:"The voucher method.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/voucher"}]},{apiName:"Wallet88",name:"Wallet88",landscapeLogo:null,portraitLogo:null,summary:"Wallet88 payment method.",description:"Wallet88 payment method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Wallet88"}]},{apiName:"WeChat Pay",name:"WeChat Pay",landscapeLogo:null,portraitLogo:null,summary:"WeChat Pay is an e-Wallet within the Chinese social media app WeChat.",description:"WeChat Pay is an e-Wallet within the Chinese social media app WeChat.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/WeChat%20Pay"}]},{apiName:"Webmoney",name:"Webmoney",landscapeLogo:"https://app.rebilly.com/static/payment-methods/landscape/Webmoney.svg",portraitLogo:null,summary:"The Webmoney method.",description:"The Webmoney method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webmoney"}]},{apiName:"Webpay",name:"Webpay",landscapeLogo:null,portraitLogo:null,summary:"The Webpay method.",description:"The Webpay method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webpay"}]},{apiName:"Webpay Card",name:"Webpay Card",landscapeLogo:null,portraitLogo:null,summary:"Webpay Card allows consumers in Chile to securely use their debit and credit\ncards online.\n",description:"Webpay Card allows consumers in Chile to securely use their debit and credit\ncards online.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Webpay%20Card"}]},{apiName:"XPay-P2P",name:"XPay-P2P",landscapeLogo:null,portraitLogo:null,summary:"XPAY-P2P is a payment service provider with online merchant services & payment\ngateway integration for retailers.\n",description:"XPAY-P2P is a payment service provider with online merchant services & payment\ngateway integration for retailers.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/XPay-P2P"}]},{apiName:"XPay-QR",name:"XPay-QR",landscapeLogo:null,portraitLogo:null,summary:"XPay-QR is a contactless payment method where payments are completed by\nscannign a QR code from a mobile app.\n",description:"XPay-QR is a contactless payment method where payments are completed by\nscannign a QR code from a mobile app.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/XPay-QR"}]},{apiName:"Yandex-money",name:"Yandex Money",landscapeLogo:null,portraitLogo:null,summary:"Yandex Money serves both merchants and individual users as the largest\nelectronic payment service in Russia.\n",description:"Yandex Money serves both merchants and individual users as the largest\nelectronic payment service in Russia.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Yandex-money"}]},{apiName:"Zimpler",name:"Zimpler",landscapeLogo:null,portraitLogo:null,summary:"The Zimpler method.",description:"The Zimpler method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Zimpler"}]},{apiName:"Zotapay",name:"Zotapay",landscapeLogo:null,portraitLogo:null,summary:"Zotapay is a global payment service provider that facilitates online payment\nprocessing solutions for emerging markets worldwide.\n",description:"Zotapay is a global payment service provider that facilitates online payment\nprocessing solutions for emerging markets worldwide.\n",countries:{mode:"all",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/Zotapay"}]},{apiName:"ePay.bg",name:"ePay.bg",landscapeLogo:null,portraitLogo:null,summary:"ePay.bg is a free mobile application allowing customers to pay and receive\nmoney quickly and safely.\n",description:"ePay.bg is a free mobile application allowing customers to pay and receive\nmoney quickly and safely.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ePay.bg"}]},{apiName:"ePayCard",name:"ePayCard",landscapeLogo:null,portraitLogo:null,summary:"ePay is a free mobile application that provides a quick and safe way to pay and receive money.\n",description:"ePay is a free mobile application that provides a quick and safe way to pay and receive money.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ePayCard"}]},{apiName:"ezyEFT",name:"ezyEFT",landscapeLogo:null,portraitLogo:null,summary:"ezyEFT is an easy to use software application that offers customers the option\nof paying by direct debit.\n",description:"ezyEFT is an easy to use software application that offers customers the option\nof paying by direct debit.\n",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/ezyEFT"}]},{apiName:"loonie",name:"loonie",landscapeLogo:null,portraitLogo:null,summary:"The loonie method.",description:"The loonie method.",countries:{mode:"unknown",values:[]},storefrontEnabled:!0,_links:[{rel:"self",href:"https://api.rebilly.com/payment-methods/loonie"}]}];class Xm extends vc{get logo(){return this.landscapeLogo||this.portraitLogo}}const Jm=class{constructor({name:e="",expirationTime:t="",displayName:n="",country:r="",merchantName:a="",merchantOrigin:o="",paypalMerchantId:i="",billingAgreementToken:s="",paypalClientId:l="",linkToken:c=""}={}){this.name=e,this.expirationTime=t,this.displayName=n,this.country=r,this.merchantName=a,this.merchantOrigin=o,this.paypalMerchantId=i,this.billingAgreementToken=s,this.paypalClientId=l,this.linkToken=c}};Jm.FeatureName={paypalBillingAgreement:"PayPal billing agreement",googlePay:"Google Pay",applePay:"Apple Pay"};let Ym=Jm;class Qm{constructor({index:e=null,method:t="",feature:n=null,brands:r=[],filters:a=[],metadata:o=null}={}){this.index=e,this.method=t,this.feature=n?new Ym(n):null,this.brands=r,this.filters=a,this.metadata=o?new Xm(o):null}get optionsPaymentInstrumentsKey(){var e;switch(null==(e=this.feature)?void 0:e.name){case Ym.FeatureName.paypalBillingAgreement:return"paypal";case Ym.FeatureName.googlePay:return"googlePay";case Ym.FeatureName.applePay:return"applePay";default:return}}}function ef(e){const t=[...Zm],n=["Google Pay","Apple Pay","paypal"],r=["echeck","Khelocard","Klarna","Apple Pay","China UnionPay","Google Pay","KakaoPay","Payco","Samsung Pay"];return e.filter((e=>{const t="paypal"===e.method&&!e.feature,n="ach"===e.method&&e.feature,a=r.includes(e.method);return!t&&!n&&!a})).map(((e,r)=>{const a=t.find((t=>t.apiName===e.method))||{};return a.isExpressMethod=(({method:e,feature:t})=>n.includes(e)||n.includes(null==t?void 0:t.name))(e),new Qm({index:r,metadata:a,...e})}))}async function tf(){return gp((async()=>{var e,t,n,r,a,o,i,s,l;if(!lo.data.riskMetadata){const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}const c={riskMetadata:lo.data.riskMetadata};if(c.websiteId=(null==(e=lo.options)?void 0:e.websiteId)||null,(null==(t=lo.options)?void 0:t.items)&&(c.items=Sp(lo.options.items)),((null==(n=lo.options)?void 0:n.money)||(null==(r=lo.data)?void 0:r.invoice)||(null==(a=lo.data)?void 0:a.transaction))&&(null==(o=lo.data)?void 0:o.amountAndCurrency)){const{amount:e,currency:t}=lo.data.amountAndCurrency;c.amount=e,c.currency=t}(null==(s=null==(i=lo.data)?void 0:i.account)?void 0:s.address)&&(c.billingAddress=lo.data.account.address),(null==(l=lo.data)?void 0:l.deposit)&&(c.amount=lo.data.deposit.amount,c.currency=lo.data.deposit.currency);const{fields:u}=await lo.storefront.purchase.readyToPay({data:c});return ef(Object.values(u))}))}function nf(e){const t=[...Zm],n=["Google Pay","Apple Pay","paypal"],r=["echeck","Khelocard","Klarna"];return e.filter((e=>{const t="paypal"===e.method&&!e.feature,n="ach"===e.method&&e.feature,a=r.includes(e.method);return!t&&!n&&!a})).map(((e,r)=>{const a=t.find((t=>t.apiName===e.method))||{};return a.isExpressMethod=(({method:e,feature:t})=>n.includes(e)||n.includes(null==t?void 0:t.name))(e),new Qm({index:r,metadata:a,...e})})).filter((({metadata:e})=>e.storefrontEnabled))}async function rf(){return gp((async()=>{var e,t,n;if(so(lo.options),function(e){if(null==e)throw new Error("Could not access data instance")}(lo.data),io(lo.storefront),!(null==(e=null==lo?void 0:lo.data)?void 0:e.riskMetadata)){const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}const r={riskMetadata:lo.data.riskMetadata,websiteId:lo.options.websiteId||null};(null==(n=null==(t=null==lo?void 0:lo.data)?void 0:t.account)?void 0:n.address)&&(r.billingAddress=lo.data.account.address),lo.data.payout&&(r.amount=lo.data.payout.amount,r.currency=lo.data.payout.currency);const{fields:a}=await lo.storefront.readyToPayout.readyToPayout({data:r});return nf(Object.values(a))}))}const af=class e extends vc{get isPaid(){return this.status===e.Status.paid}get isVoid(){return this.status===e.Status.voided}get isRefunded(){return this.status===e.Status.refunded}get isAbandoned(){return this.status===e.Status.abandoned}};af.Status={draft:"draft",unpaid:"unpaid",paid:"paid",partiallyPaid:"partially-paid",pastDue:"past-due",abandoned:"abandoned",voided:"voided",partiallyRefunded:"partially-refunded",refunded:"refunded",disputed:"disputed"};let of=af;async function sf({data:e}){return gp((async()=>{var t;io(lo.storefront),so(lo.options),lo.storefront.setSessionToken(lo.options.jwt);const{fields:n}=await lo.storefront.invoices.get({...e,expand:"items.*.product"});return{products:null==(t=n.items)?void 0:t.filter((e=>e._embedded)).map((e=>{var t;return new zm(null==(t=e._embedded)?void 0:t.product)})),invoice:new of(n)}}))}const lf=class e extends vc{constructor({invoiceIds:e=[],...t}){super(t),this.invoiceIds=e||[]}get invoiceId(){return this.invoiceIds[0]||null}get hasInvoice(){return Boolean(this.invoiceId)}get transactionIsCompleted(){return this.status===e.Status.completed}};lf.Status={completed:"completed"};let cf=lf;async function uf({data:e=null}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.transactions.get(e);return new cf(t)}))}class df{constructor({firstName:e=null,lastName:t=null,organization:n=null,address:r=null,address2:a=null,city:o=null,region:i=null,country:s=null,postalCode:l=null,emails:c=[],phoneNumbers:u=[]}={}){this.firstName=e,this.lastName=t,this.organization=n,this.address=r,this.address2=a,this.city=o,this.region=i,this.country=s,this.postalCode=l,this.emails=c,this.phoneNumbers=u}}class pf extends vc{constructor({primaryAddress:e={},...t}={}){super(t),this.address=new df({...e})}}class mf extends vc{}async function ff(){return gp((async()=>{var e;io(lo.storefront),so(lo.options),lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.account.get({expand:"website"});return{website:new mf(null==(e=t._embedded)?void 0:e.website),account:new pf(t)}}))}async function hf(){return gp((async()=>{io(lo.storefront);const{items:e}=await lo.storefront.paymentInstruments.getAll({filter:"status:active,inactive,verification-needed"});return e.map((({fields:e})=>e))}))}class yf extends vc{constructor(e){super(e),this.amount=Array.isArray(e.amounts)?e.amounts[0]:e.amount,e.buttons?this.buttons=e.buttons:e.amounts?this.buttons=[...e.amounts]:this.buttons=[],this.editable="boolean"==typeof e.editable?e.editable:Boolean(e.customAmount),this.customAmount=to({minimum:1,maximum:1e12,multipleOf:1},e.customAmount||{})}}async function gf({data:e=null}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.depositRequests.get(e);return new yf(t)}))}const bf=class e extends vc{constructor(e={}){super(e)}get isPending(){return this.status===e.Status.pending}};bf.Status={pending:"pending",instrumentSelected:"instrument-selected",partiallyFulfilled:"partially-fulfilled",fulfilled:"fulfilled",canceled:"canceled"};let vf=bf;async function wf(e){return gp((async()=>{io(lo.storefront),so(lo.options);const{fields:t}=await lo.storefront.payoutRequests.get(e);return new vf(t)}))}function kf(e){return null!=e&&"depositRequestId"in e&&"string"==typeof e.depositRequestId}const $f={type:"object",oneOf:[{type:"object",properties:{depositRequestId:{type:"string"}},required:["depositRequestId"]},{type:"object",properties:{currency:{type:"string",minLength:3,maxLength:3},amount:{type:"number"},buttons:{type:"array",items:{type:"number"}},editable:{type:"boolean"},customAmount:{type:"object",properties:{minimum:{type:"number"},maximum:{type:"number"},multipleOf:{type:"number"}},required:[]}},anyOf:[{required:["amount"]},{required:["buttons"]}],required:["currency"]}]},Sf=["utm_source","utm_medium","utm_campaign","utm_term","utm_content","affiliate","subAffiliate","clickId","salesAgent"],Ef=/utm_/g,xf=()=>{const{href:e,origin:t,pathname:n,search:r}=window.location,a={path:e.length<=255?e:`${t}${n}`};return r.replace("?","").split("&").map((e=>e.split("="))).filter((e=>{const[t]=e;return Sf.indexOf(t)>-1})).reduce(((e,t)=>{const[n,r=null]=t,a=n.replace(Ef,"");return a&&(e[a]=r),e}),a)};class Pf{constructor({...e}={}){var t;Object.entries({...lo.data||{},...e}).forEach((([e,t])=>{this[e]=t})),this.money=(null==(t=lo.options)?void 0:t.money)||null,this.couponIds=[],this.addons=[],this.acceptBumpOffer=!1}get amountAndCurrency(){let e,t,n;this.previewPurchase?(e=this.previewPurchase.currency,t=this.previewPurchase.total):this.invoice?(e=this.invoice.currency,t=this.invoice.amount,n=this.invoice.amountDue):this.transaction?(e=this.transaction.currency,t=this.transaction.amount):this.money&&(e=this.money.currency,t=this.money.amount);const r={amount:t,currency:e};return n&&(r.amountDue=n),r}get isPayment(){return Boolean(this.invoice||this.transaction||this.money)}get isDepositTransaction(){var e;return Boolean(null==(e=this.transaction)?void 0:e.depositRequestId)}get isInvoice(){return Boolean(this.invoice)}get isPurchase(){return Boolean(this.previewPurchase)}get hasAmountDue(){return Boolean(this.amountAndCurrency.amountDue&&this.amountAndCurrency.amountDue!==this.amountAndCurrency.amount)}get summaryItems(){const{discountsAmount:e=null,shippingAmount:t=null,subtotalAmount:n=null,taxAmount:r=null}=this.previewPurchase||this.invoice||{};return{discountsAmount:e,shippingAmount:t,subtotalAmount:n,taxAmount:r}}get summaryLineItems(){let e=[];return this.invoice?({items:e=[]}=this.invoice):({lineItems:e=[]}=this.previewPurchase||{}),e}get isShippingRequired(){return(this.products||[]).some((e=>e.requiresShipping))}get hasPurchaseData(){var e,t;return Boolean(this.isPayment||this.inPurchase||(null==(e=lo.options)?void 0:e.deposit)||(null==(t=lo.options)?void 0:t.payout))}toPostmatesModel(){return JSON.parse(JSON.stringify({...this,hasPurchaseData:this.hasPurchaseData,amountAndCurrency:this.amountAndCurrency,isPayment:this.isPayment,isInvoice:this.isInvoice,isPurchase:this.isPurchase,isDepositTransaction:this.isDepositTransaction,hasAmountDue:this.hasAmountDue,summaryItems:this.summaryItems,summaryLineItems:this.summaryLineItems,isShippingRequired:this.isShippingRequired,leadSource:xf()}))}}async function _f({riskMetadata:e=null,fetchInvoiceAndProducts:t=sf,fetchTransaction:n=uf,fetchAccountAndWebsite:r=ff,fetchInstruments:a=hf,fetchDepositRequest:o=gf,fetchPayoutRequest:i=wf}={}){var s,l,c,u,d,p,m,f,h,y,g,b,v,w,k,$,S,E,x,P,_;try{if(lo.data=new Pf,lo.storefront&&(null==(s=lo.options)?void 0:s.jwt)&&lo.storefront.setSessionToken(lo.options.jwt),e)lo.data.riskMetadata=e;else{const{riskMetadata:e}=await qm();lo.data.riskMetadata=e}let A;(null==(l=lo.options)?void 0:l.deposit)&&(kf(lo.options.deposit)?lo.data.deposit=await o({data:{id:lo.options.deposit.depositRequestId}}):lo.data.deposit=new yf(lo.options.deposit)),(null==(c=lo.options)?void 0:c.payout)&&(lo.data.payout=await i({id:lo.options.payout.payoutRequestId})),(null==(u=lo.options)?void 0:u.transactionId)&&(lo.data.transaction=await n({data:{id:lo.options.transactionId}}));const I=(null==(d=lo.options)?void 0:d.invoiceId)||(null==(m=null==(p=lo.data)?void 0:p.transaction)?void 0:m.invoiceId);if(I){const{invoice:e,products:n}=await t({data:{id:I}});A=Promise.resolve(n),lo.data.invoice=e}const T=[null==(h=null==(f=lo.options)?void 0:f.paymentInstruments)?void 0:h.allowDeactivate,null==(g=null==(y=lo.options)?void 0:y.paymentInstruments)?void 0:g.allowUpdate,null==(v=null==(b=lo.options)?void 0:b.paymentInstruments)?void 0:v.allowMakeDefault].some((e=>e));let L=Promise.resolve(null),C=Promise.resolve(null),R=Promise.resolve(),j=null;(null==(w=lo.options)?void 0:w.jwt)?(R=r().then((({account:e,website:t})=>{if(null==lo.data)throw new Error("Invalid data instance");lo.data.account=e,lo.data.website=t})),(null==(k=lo.options)?void 0:k.payout)?C=R.then((()=>rf())):(lo.data.money||lo.data.invoice||lo.data.transaction||lo.data.payout||lo.data.deposit)&&(L=R.then((()=>tf()))),j=a()):(null==($=lo.options)?void 0:$.payout)?C=rf():L=tf();const N=(null==(S=lo.options)?void 0:S.items)?xp():null;(null==(E=lo.options)?void 0:E.jwt)||(A=async function(){return gp((async()=>{var e,t,n,r;let a;a=(null==(e=lo.data)?void 0:e.summaryLineItems)&&lo.data.summaryLineItems.length>0?lo.data.summaryLineItems:(null==(t=lo.options)?void 0:t.items)??[];const o={filter:"",expand:"product"};if(a.length){let e=a.map((e=>e.planId));(null==(n=lo.options)?void 0:n.addons)&&(e=e.concat(lo.options.addons.map((e=>e.planId)))),(null==(r=lo.options)?void 0:r.bumpOffer)&&(e=e.concat(lo.options.bumpOffer.map((e=>e.planId)))),o.filter=`id:${Array.from(new Set(e)).join(",")}`}if(o.filter.length)try{io(lo.storefront);const{items:e}=await lo.storefront.plans.getAll(o),t=[];return e.map((({fields:e})=>{var t;return new zm(null==(t=e._embedded)?void 0:t.product)})).forEach((e=>{t.every((t=>t.id!==e.id))&&t.push(e)})),t}catch(i){}return[]}))}());let O=new Promise((e=>{e([])}));((null==(x=lo.options)?void 0:x.addons)||(null==(P=lo.options)?void 0:P.bumpOffer))&&(O=async function(){return gp((async()=>{var e,t;let n=[];if((null==(e=lo.options)?void 0:e.addons)&&(n=n.concat(lo.options.addons.map((e=>e.planId)))),(null==(t=lo.options)?void 0:t.bumpOffer)&&(n=n.concat(lo.options.bumpOffer.map((e=>e.planId)))),n.length>0){io(lo.storefront);const{items:e}=await lo.storefront.plans.getAll({filter:`id:${n.join(",")}`});return e.map((({fields:e})=>new Km(e).toPayload()))}return[]}))}());let[F,M,H,B,q,D]=await Promise.all([C,L,N,A,O,j]);if(T&&D&&!M&&!(null==(_=lo.options)?void 0:_.payout)){const e=new Set;D.forEach((t=>{e.add(t.method)})),M=ef(Array.from(e).map((e=>({method:e}))))}return new Pf({readyToPayout:F,readyToPay:M,previewPurchase:H,products:B,plans:q,availableInstruments:D,isManageInstruments:T})}catch(A){console.error(A)}return new Pf({})}function Af({state:e,id:t}){const{Framepay:n}=window,r=e.form.querySelector(`.rebilly-instruments-${t}-method`);return function(){if(!r.children.length){const r={"google-pay":"googlePay","pay-pal-billing-agreement":"paypal","apple-pay":"applePay"},a=e.form.querySelector(`.rebilly-instruments-${t}-method`);r[t]?(n[r[t]].mount(a),"apple-pay"===t&&function(){const t=e.form.querySelector("#rebilly-apple-pay-button"),{applePayDisplayOptions:{buttonHeight:n}}=e.options.digitalWallet.applePay;t.style.margin="0px",t.style.width="100%",t.style.height=n,t.style.cursor="pointer"}()):console.warn(`method '${t}' is not supported`)}}}const If=e=>{var t,n;return{METHOD_ID:Ki((null==(t=e.feature)?void 0:t.name)||e.method),METHOD_TYPE:Gi((null==(n=e.feature)?void 0:n.name)||e.method).replace("-","")}},Tf=()=>window.ApplePaySession;async function Lf({methods:e,container:t}){const n=e.map((e=>{const{METHOD_ID:t}=If(e);return t})),{Framepay:r}=window;(null==r?void 0:r.initialized)||await(null==r?void 0:r.initialize(function({methodIds:e}={}){var t,n;const{options:r,data:a}=lo,o={style:r.themeFramepay,locale:(null==r?void 0:r.locale)||"auto",organizationId:r.organizationId,websiteId:r.websiteId,methods:r.payout?a.readyToPayout:a.readyToPay};return e.includes("pay-pal-billing-agreement")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},a.amountAndCurrency),o.paypal=r.paymentInstruments.paypal),e.includes("google-pay")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},null==(t=r.digitalWallet.googlePay)?void 0:t.transactionData),o.googlePay=r.digitalWallet.googlePay.googlePayDisplayOptions),e.includes("apple-pay")&&(o.transactionData=to("object"==typeof o.transactionData?o.transactionData:{},null==(n=r.digitalWallet.applePay)?void 0:n.transactionData),o.applePay=r.digitalWallet.applePay.applePayDisplayOptions),r.publishableKey&&(o.publishableKey=r.publishableKey),r.jwt&&(o.jwt=r.jwt,o.sandbox="sandbox"===r.apiMode),a.riskMetadata&&(o.riskMetadata=a.riskMetadata),o}({methodIds:n}))),null==r||r.on("ready",(()=>{const n=[];e.map((e=>{const{METHOD_ID:r}=If(e);("apple-pay"!==r||Tf())&&(t.innerHTML+=`\n <div class="rebilly-instruments-${r}-method" style="height: ${function(e){var t,n;let r;const a=e.optionsPaymentInstrumentsKey;if(!a)return"48px";const{buttonHeight:o,displayOptions:i}=(null==(n=null==(t=lo.options)?void 0:t.paymentInstruments)?void 0:n[a])||{};return r=i?i.buttonHeight:o,"number"==typeof r&&(r=`${o}px`),r}(e)}"></div>\n `,n.push(Af({state:lo,id:r})))})),n.forEach((e=>e()))})),null==r||r.on("error",(e=>{if("paypal-error"===e.code){const e=document.querySelector(".rebilly-instruments-pay-pal-billing-agreement-method");if(e&&(e.remove(),t.children.length<=0)){const e=document.querySelector('[data-rebilly-instruments="divider"]');e&&e.remove()}}else console.error(e)}));const a="sandbox"===lo.options.apiMode?"https://forms-sandbox.secure-payments.app/approval-url?close=true":"https://forms.secure-payments.app/approval-url?close=true";null==r||r.on("token-ready",(e=>{var t,n,r;const o={websiteId:lo.options.websiteId,billingAddress:e.billingAddress,redirectUrl:a,_raw:e};if((null==(t=lo.data)?void 0:t.isShippingRequired)&&(e.shippingAddress?o.deliveryAddress=e.shippingAddress:o.deliveryAddress=o.billingAddress),Array.isArray(null==(n=o.billingAddress)?void 0:n.emails)){const e=o.billingAddress.emails.find((e=>"main"===e.label));(null==e?void 0:e.value)&&(o.billingAddress.email=e.value)}if(Array.isArray(null==(r=o.deliveryAddress)?void 0:r.emails)){const e=o.deliveryAddress.emails.find((e=>"main"===e.label));(null==e?void 0:e.value)&&(o.deliveryAddress.email=e.value)}Ji.instrumentReady.dispatch(o)}))}function Cf({offer:e}){const t=lo.data.plans.find((t=>t.id===e.planId)),n=lo.data.products.find((e=>e.id===t.productId)),r=(e,t)=>e?t:"";const a={...e,quantity:t.pricing.isBracket?null:e.quantity,name:n.name,description:t.name,unitPrice:function(){const e=function(e,t="USD"){const n=Number(e);return Number.isNaN(n)||null==e?"-":new Intl.NumberFormat("en-US",{style:"currency",currency:t}).format(n)}(t.pricing.isBracket?t.pricing.brackets[0].price:t.pricing.price,t.currency);return t.pricing.isBracket?lo.translate.getTranslation("form.bumpOffer.startingAt").replace("{basePrice}",e):e}()};return`\n <div class="rebilly-instruments-bump-offer-line-item">\n ${o=a,r(o.thumbnail,`\n <figure class="rebilly-instruments-bump-offer-line-item-figure">\n <img src="${o.thumbnail}" :alt="${o.name}"/>\n </figure>\n `)}\n ${(e=>`\n <div class="rebilly-instruments-bump-offer-line-item-synopsis">\n <p class="rebilly-instruments-bump-offer-line-item-synopsis-title">\n ${e.name}\n </p>\n ${r(e.description,`\n <p class="rebilly-instruments-bump-offer-line-item-synopsis-description">\n ${e.description}\n </p>\n `)}\n </div>\n `)(a)}\n ${(e=>`\n <div class="rebilly-instruments-bump-offer-line-item-price-breakdown">\n ${r(e.quantity,`\n <p class="rebilly-instruments-bump-offer-line-item-price-breakdown-quantity">\n ${e.quantity}\n </p>\n <svg class="rebilly-instruments-icon" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n <path d="M12 10.5858l2.8284-2.8284c.3906-.3906 1.0237-.3906 1.4142 0 .3906.3905.3906 1.0236 0 1.4142L13.4142 12l2.8284 2.8284c.3906.3906.3906 1.0237 0 1.4142-.3905.3906-1.0236.3906-1.4142 0L12 13.4142l-2.8284 2.8284c-.3906.3906-1.0237.3906-1.4142 0-.3906-.3905-.3906-1.0236 0-1.4142L10.5858 12 7.7574 9.1716c-.3906-.3906-.3906-1.0237 0-1.4142.3905-.3906 1.0236-.3906 1.4142 0L12 10.5858z" fill-rule="nonzero"/>\n </svg>\n `)}\n <p class="rebilly-instruments-bump-offer-line-item-price-breakdown-unit-price">\n ${e.unitPrice}\n </p>\n <div>\n `)(a)}\n </div>\n `;var o}async function Rf({data:e}){return gp((async()=>{if(io(lo.storefront),so(lo.options),null==e)throw new Error("Invalid payload.");lo.storefront.setSessionToken(lo.options.jwt);const{fields:t}=await lo.storefront.deposit.create({data:e});return new cf(t)}))}function jf(e,t=lo.form){return t.querySelector(`[data-rebilly-instruments="${e}"]`)}const Nf=()=>{const e=document.createElement("div");return e.classList.add("rebilly-instruments-bump-offers"),e.setAttribute("data-rebilly-instruments","bump-offer"),e};function Of(){var e,t,n;const{expressMethods:r}=Dm();if(null==(e=lo.options)?void 0:e.deposit){const e=jf("deposit-back");e&&(e.style.height="0px",e.style.overflow="hidden")}if(r.length){const e=jf("express-methods");e&&(e.style.height="0px",e.style.overflow="hidden")}if(null==(n=null==(t=lo.options)?void 0:t.bumpOffer)?void 0:n.length){const e=jf("bump-offer");e&&(e.style.height="0px",e.style.overflow="hidden",e.style.marginBottom="0px")}}const Ff=({expressMethods:e})=>{const t=document.createElement("div");t.classList.add("rebilly-instruments-method-selector"),t.setAttribute("data-rebilly-instruments","express-methods"),t.innerHTML='\n <div class="rebilly-instruments-express-methods ">\n <span data-rebilly-i18n="form.expressCheckout" class="rebilly-instruments-express-methods-label">Express checkout</span>\n <div class="rebilly-instruments-express-methods-container" data-rebilly-instruments="express-methods-container"></div>\n </div>\n <div data-rebilly-instruments="divider" class="rebilly-instruments-divider">\n <span class="rebilly-instruments-divider-label" data-rebilly-i18n="form.or">Or</span>\n </div>\n ';const n=jf("express-methods-container",t);return lo.options.paymentInstruments.compactExpressInstruments&&e.length&&(t.classList.add("has-express-compact"),n.classList.add("is-compact")),t};async function Mf(){var e,t,n,r,a,o,i;const s=jf("content"),l=jf("form"),{expressMethods:c,methods:u}=Dm();if(c.length){const e=jf("express-methods");if(e)e.style.height="auto";else{s.insertBefore(Ff({expressMethods:c}),l),lo.options.digitalWallet=function({expressMethods:e=[]}){var t;const n={},{paymentInstruments:r}=lo.options,a={countryCode:lo.options.countryCode,label:lo.options.websiteId};if(null==(t=lo.data)?void 0:t.amountAndCurrency){const{amount:e,currency:t}=lo.data.amountAndCurrency;a.amount=e,a.currency=t}return e.forEach((e=>{var t,o,i,s;const{METHOD_TYPE:l}=If(e);"Google Pay"===(null==(t=e.feature)?void 0:t.name)&&(n[l]={transactionData:a,merchantConfig:{merchantName:e.feature.merchantName,merchantOrigin:e.feature.merchantOrigin},googlePayDisplayOptions:r.googlePay.displayOptions}),"Apple Pay"===(null==(o=e.feature)?void 0:o.name)&&(n[l]={transactionData:a,merchantConfig:{merchantName:null==(s=null==(i=r.applePay)?void 0:i.merchantConfig)?void 0:s.merchantName,merchantOrigin:window.location.hostname},applePayDisplayOptions:r.applePay.displayOptions})})),n}({expressMethods:c});Lf({methods:c,container:lo.form.querySelector('[data-rebilly-instruments="express-methods-container"]')})}}if(null==(t=null==(e=lo.options)?void 0:e.bumpOffer)?void 0:t.length){const e=jf("bump-offer");if(e)e.style.height="auto",e.style.marginBottom="calc(var(--rebilly-spacingM) + var(--rebilly-fontSizeS))";else{s.insertBefore(Nf(),l);!function({container:e}){e.insertAdjacentHTML("beforeEnd",`\n <label for="rebilly-instruments-bump-offer" class="rebilly-instruments-form-field-checkbox">\n <div class="rebilly-instruments-bump-offer-label" data-rebilly-i18n="form.bumpOffer.title">\n ${lo.translate.getTranslation("form.bumpOffer.title")}\n </div>\n <input\n type="checkbox"\n id="rebilly-instruments-bump-offer"\n />\n <span></span>\n </label>\n `);const t=document.getElementById("rebilly-instruments-bump-offer");t.addEventListener("click",(async()=>{lo.data.acceptBumpOffer=t.checked,await xp(),lo.updateModel()})),t.checked=lo.data.acceptBumpOffer,lo.options.bumpOffer.forEach((t=>{const n=document.createElement("div");n.classList.add("rebilly-instruments-bump-offer"),n.insertAdjacentHTML("beforeEnd",Cf({offer:t})),e.appendChild(n)}))}({container:jf("bump-offer")})}}if(u.length){const e=oo.form;e||await Bf();const t=lo.toModel(),s={options:t.options,data:t.data};null==(n=null==e?void 0:e.component)||n.call("route",{name:"method-switch"}),null==(r=null==e?void 0:e.component)||r.call("update",s),(null==(o=null==(a=null==e?void 0:e.component)?void 0:a.events)?void 0:o["restart-payment-flow"])||null==(i=null==e?void 0:e.component)||i.on("restart-payment-flow",(async e=>{if(null==e?void 0:e.createNewDeposit){const t=await Rf({data:{depositRequestId:e.depositRequestId,amount:e.amount}});if(t.approvalUrl)return void window.location.assign(t.approvalUrl)}lo.data.isPurchase&&Ap(),Mf()}))}else lo.loader.stopLoading({id:"rebilly-instruments-form"}),lo.form.querySelector('[data-rebilly-instruments="form"]').style.display="none",document.querySelectorAll('[data-rebilly-instruments="divider"]').forEach((e=>{e.style.display="none"}));lo.translate.translateItems()}const Hf=()=>'\n<div data-rebilly-instruments="content" class="rebilly-instruments-content">\n <div data-rebilly-instruments="content-error" id="rebilly-instruments-error"></div>\n <div data-rebilly-instruments="form"></div>\n</div>\n';async function Bf(){var e;lo.form.innerHTML+=Hf();const t=lo.form.querySelector('[data-rebilly-instruments="form"]'),{paymentMethodsUrl:n}=(null==(e=null==lo?void 0:lo.options)?void 0:e._computed)||{},r="rebilly-instruments-form",a=lo.toModel(),o={name:r,url:`${n}?name=${r}`,container:t,model:{options:a.options,data:a.data,mainStyleVars:a.mainStyleVars}},i=await new ss(o);return i.bindEventListeners({loader:lo.loader}),oo.form=i,lo.loader.stopLoading({id:"rebilly-instruments-form"}),{then:e=>e()}}function qf(){var e;(null==(e=lo.options)?void 0:e.deposit)?async function(){var e,t,n;lo.data.money&&(lo.data.money.amount=null,lo.data.money.currency=null,lo.updateModel());const r=oo.form;r||await Bf();const a=lo.toModel(),o={options:a.options,data:a.data};null==(e=r.component)||e.call("route",{name:"amount-selector"}),null==(t=r.component)||t.call("update",o),null==(n=null==r?void 0:r.component)||n.on("confirm-amount",(async e=>{const{amount:t,currency:n}=e,{depositRequestId:r}=lo.options.deposit;lo.data.money={amount:t,currency:n};const a=await Rf({data:{depositRequestId:r,amount:t}});a&&(lo.data.transaction=a,lo.options.transactionId=a.id);const o=await tf();lo.data.readyToPay=o,lo.updateModel(),Mf()}))}():Mf()}function Df({element:e="div",attributes:t={},content:n=null,target:r="body",insertMethod:a="append"}={}){const o=document.createElement(e);Object.entries(t).forEach((([e,t])=>{o.setAttribute(e,t)})),n&&(o.innerHTML=n),r instanceof ShadowRoot?r.prepend(o):document[r][a](o)}const zf=({element:e=""})=>{const{options:t}=lo;if("form"!==e&&"summary"!==e)throw new Error('element must be "form", or "summary"');return function({prop:e,propName:t="Mounting",isRequired:n=!0}={}){let r;if(void 0===e)throw new Error('processPropertyDOMElement: Missing argument "prop"');if(he(e))r=e;else{if("string"!=typeof e||"string"!=typeof(a=e)||!a.match(/([.#][_a-z]+[_a-z0-9-:\\]*)/gi))throw new Error(`Please provide a valid CSS class, id or DOM element for "${t}" property`);r=document.querySelector(e)}var a;if(!r&&n)throw new Error(`Could not find DOM element with CSS class or id "${e}" to mount ${t}`);return r}({prop:null!=t&&t[e]?t[e]:"summary"===e?".rebilly-instruments-summary":".rebilly-instruments",propName:e,isRequired:["form"].includes(e)})},Vf=()=>{so(lo.options);const{publishableKey:e,organizationId:t,apiMode:n,_dev:r,_internalOptions:a}=lo.options,o={organizationId:t,mode:n||"live",appName:null==a?void 0:a.appName};return e&&(o.publishableKey=e),r&&(o.liveUrl=r.liveUrl||"https://api.rebilly.com",o.sandboxUrl=r.sandboxUrl||"https://api-sandbox.rebilly.com"),((e={})=>new bp(e))(o)};function Wf(e){this.message=e}Wf.prototype=new Error,Wf.prototype.name="InvalidCharacterError";var Uf="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new Wf("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,r,a=0,o=0,i="";r=t.charAt(o++);~r&&(n=a%4?64*n+r:r,a++%4)?i+=String.fromCharCode(255&n>>(-2*a&6)):0)r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(r);return i};function Gf(e){this.message=e}function Kf(e,t){if("string"!=typeof e)throw new Gf("Invalid token specified");var n=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return decodeURIComponent(Uf(t).replace(/(.)/g,(function(e,t){var n=t.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}catch(n){return Uf(t)}}(e.split(".")[n]))}catch(r){throw new Gf("Invalid token specified: "+r.message)}}Gf.prototype=new Error,Gf.prototype.name="InvalidTokenError";var Zf={exports:{}},Xf={},Jf={},Yf={},Qf={},eh={},th={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;class t{}e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class n extends t{constructor(t){if(super(),!e.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}e.Name=n;class r extends t{constructor(e){super(),this._items="string"==typeof e?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const e=this._items[0];return""===e||'""'===e}get str(){var e;return null!==(e=this._str)&&void 0!==e?e:this._str=this._items.reduce(((e,t)=>`${e}${t}`),"")}get names(){var e;return null!==(e=this._names)&&void 0!==e?e:this._names=this._items.reduce(((e,t)=>(t instanceof n&&(e[t.str]=(e[t.str]||0)+1),e)),{})}}function a(e,...t){const n=[e[0]];let a=0;for(;a<t.length;)s(n,t[a]),n.push(e[++a]);return new r(n)}e._Code=r,e.nil=new r(""),e._=a;const o=new r("+");function i(e,...t){const n=[c(e[0])];let a=0;for(;a<t.length;)n.push(o),s(n,t[a]),n.push(o,c(e[++a]));return function(e){let t=1;for(;t<e.length-1;){if(e[t]===o){const n=l(e[t-1],e[t+1]);if(void 0!==n){e.splice(t-1,3,n);continue}e[t++]="+"}t++}}(n),new r(n)}function s(e,t){var a;t instanceof r?e.push(...t._items):t instanceof n?e.push(t):e.push("number"==typeof(a=t)||"boolean"==typeof a||null===a?a:c(Array.isArray(a)?a.join(","):a))}function l(e,t){if('""'===t)return e;if('""'===e)return t;if("string"==typeof e){if(t instanceof n||'"'!==e[e.length-1])return;return"string"!=typeof t?`${e.slice(0,-1)}${t}"`:'"'===t[0]?e.slice(0,-1)+t.slice(1):void 0}return"string"!=typeof t||'"'!==t[0]||e instanceof n?void 0:`"${e}${t.slice(1)}`}function c(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}e.str=i,e.addCodeArg=s,e.strConcat=function(e,t){return t.emptyStr()?e:e.emptyStr()?t:i`${e}${t}`},e.stringify=function(e){return new r(c(e))},e.safeStringify=c,e.getProperty=function(t){return"string"==typeof t&&e.IDENTIFIER.test(t)?new r(`.${t}`):a`[${t}]`},e.getEsmExportName=function(t){if("string"==typeof t&&e.IDENTIFIER.test(t))return new r(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)},e.regexpCode=function(e){return new r(e.toString())}}(th);var nh={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;const t=th;class n extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}}var r,a;(a=r||(e.UsedValueState=r={}))[a.Started=0]="Started",a[a.Completed=1]="Completed",e.varKinds={const:new t.Name("const"),let:new t.Name("let"),var:new t.Name("var")};class o{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof t.Name?e:this.name(e)}name(e){return new t.Name(this._newName(e))}_newName(e){return`${e}${(this._names[e]||this._nameGroup(e)).index++}`}_nameGroup(e){var t,n;if((null===(n=null===(t=this._parent)||void 0===t?void 0:t._prefixes)||void 0===n?void 0:n.has(e))||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}e.Scope=o;class i extends t.Name{constructor(e,t){super(t),this.prefix=e}setValue(e,{property:n,itemIndex:r}){this.value=e,this.scopePath=t._`.${new t.Name(n)}[${r}]`}}e.ValueScopeName=i;const s=t._`\n`;e.ValueScope=class extends o{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?s:t.nil}}get(){return this._scope}name(e){return new i(e,this._newName(e))}value(e,t){var n;if(void 0===t.ref)throw new Error("CodeGen: ref must be passed in value");const r=this.toName(e),{prefix:a}=r,o=null!==(n=t.key)&&void 0!==n?n:t.ref;let i=this._values[a];if(i){const e=i.get(o);if(e)return e}else i=this._values[a]=new Map;i.set(o,r);const s=this._scope[a]||(this._scope[a]=[]),l=s.length;return s[l]=t.ref,r.setValue(t,{property:a,itemIndex:l}),r}getValue(e,t){const n=this._values[e];if(n)return n.get(t)}scopeRefs(e,n=this._values){return this._reduceValues(n,(n=>{if(void 0===n.scopePath)throw new Error(`CodeGen: name "${n}" has no value`);return t._`${e}${n.scopePath}`}))}scopeCode(e=this._values,t,n){return this._reduceValues(e,(e=>{if(void 0===e.value)throw new Error(`CodeGen: name "${e}" has no value`);return e.value.code}),t,n)}_reduceValues(a,o,i={},s){let l=t.nil;for(const c in a){const u=a[c];if(!u)continue;const d=i[c]=i[c]||new Map;u.forEach((a=>{if(d.has(a))return;d.set(a,r.Started);let i=o(a);if(i){const n=this.opts.es5?e.varKinds.var:e.varKinds.const;l=t._`${l}${n} ${a} = ${i};${this.opts._n}`}else{if(!(i=null==s?void 0:s(a)))throw new n(a);l=t._`${l}${i}${this.opts._n}`}d.set(a,r.Completed)}))}return l}}}(nh),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;const t=th,n=nh;var r=th;Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return r.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return r.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return r.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}});var a=nh;Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return a.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return a.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return a.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return a.varKinds}}),e.operators={GT:new t._Code(">"),GTE:new t._Code(">="),LT:new t._Code("<"),LTE:new t._Code("<="),EQ:new t._Code("==="),NEQ:new t._Code("!=="),NOT:new t._Code("!"),OR:new t._Code("||"),AND:new t._Code("&&"),ADD:new t._Code("+")};class o{optimizeNodes(){return this}optimizeNames(e,t){return this}}class i extends o{constructor(e,t,n){super(),this.varKind=e,this.name=t,this.rhs=n}render({es5:e,_n:t}){const r=e?n.varKinds.var:this.varKind,a=void 0===this.rhs?"":` = ${this.rhs}`;return`${r} ${this.name}${a};`+t}optimizeNames(e,t){if(e[this.name.str])return this.rhs&&(this.rhs=I(this.rhs,e,t)),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}}class s extends o{constructor(e,t,n){super(),this.lhs=e,this.rhs=t,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof t.Name)||e[this.lhs.str]||this.sideEffects)return this.rhs=I(this.rhs,e,n),this}get names(){return A(this.lhs instanceof t.Name?{}:{...this.lhs.names},this.rhs)}}class l extends s{constructor(e,t,n,r){super(e,n,r),this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class c extends o{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class u extends o{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class d extends o{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class p extends o{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=I(this.code,e,t),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}}class m extends o{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce(((t,n)=>t+n.render(e)),"")}optimizeNodes(){const{nodes:e}=this;let t=e.length;for(;t--;){const n=e[t].optimizeNodes();Array.isArray(n)?e.splice(t,1,...n):n?e[t]=n:e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){const{nodes:n}=this;let r=n.length;for(;r--;){const a=n[r];a.optimizeNames(e,t)||(T(e,a.names),n.splice(r,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce(((e,t)=>_(e,t.names)),{})}}class f extends m{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class h extends m{}class y extends f{}y.kind="else";class g extends f{constructor(e,t){super(t),this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);return this.else&&(t+="else "+this.else.render(e)),t}optimizeNodes(){super.optimizeNodes();const e=this.condition;if(!0===e)return this.nodes;let t=this.else;if(t){const e=t.optimizeNodes();t=this.else=Array.isArray(e)?new y(e):e}return t?!1===e?t instanceof g?t:t.nodes:this.nodes.length?this:new g(L(e),t instanceof g?[t]:t.nodes):!1!==e&&this.nodes.length?this:void 0}optimizeNames(e,t){var n;if(this.else=null===(n=this.else)||void 0===n?void 0:n.optimizeNames(e,t),super.optimizeNames(e,t)||this.else)return this.condition=I(this.condition,e,t),this}get names(){const e=super.names;return A(e,this.condition),this.else&&_(e,this.else.names),e}}g.kind="if";class b extends f{}b.kind="for";class v extends b{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iteration=I(this.iteration,e,t),this}get names(){return _(super.names,this.iteration.names)}}class w extends b{constructor(e,t,n,r){super(),this.varKind=e,this.name=t,this.from=n,this.to=r}render(e){const t=e.es5?n.varKinds.var:this.varKind,{name:r,from:a,to:o}=this;return`for(${t} ${r}=${a}; ${r}<${o}; ${r}++)`+super.render(e)}get names(){const e=A(super.names,this.from);return A(e,this.to)}}class k extends b{constructor(e,t,n,r){super(),this.loop=e,this.varKind=t,this.name=n,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(super.optimizeNames(e,t))return this.iterable=I(this.iterable,e,t),this}get names(){return _(super.names,this.iterable.names)}}class $ extends f{constructor(e,t,n){super(),this.name=e,this.args=t,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}$.kind="func";class S extends m{render(e){return"return "+super.render(e)}}S.kind="return";class E extends f{render(e){let t="try"+super.render(e);return this.catch&&(t+=this.catch.render(e)),this.finally&&(t+=this.finally.render(e)),t}optimizeNodes(){var e,t;return super.optimizeNodes(),null===(e=this.catch)||void 0===e||e.optimizeNodes(),null===(t=this.finally)||void 0===t||t.optimizeNodes(),this}optimizeNames(e,t){var n,r;return super.optimizeNames(e,t),null===(n=this.catch)||void 0===n||n.optimizeNames(e,t),null===(r=this.finally)||void 0===r||r.optimizeNames(e,t),this}get names(){const e=super.names;return this.catch&&_(e,this.catch.names),this.finally&&_(e,this.finally.names),e}}class x extends f{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}x.kind="catch";class P extends f{render(e){return"finally"+super.render(e)}}P.kind="finally";function _(e,t){for(const n in t)e[n]=(e[n]||0)+(t[n]||0);return e}function A(e,n){return n instanceof t._CodeOrName?_(e,n.names):e}function I(e,n,r){return e instanceof t.Name?o(e):(a=e)instanceof t._Code&&a._items.some((e=>e instanceof t.Name&&1===n[e.str]&&void 0!==r[e.str]))?new t._Code(e._items.reduce(((e,n)=>(n instanceof t.Name&&(n=o(n)),n instanceof t._Code?e.push(...n._items):e.push(n),e)),[])):e;var a;function o(e){const t=r[e.str];return void 0===t||1!==n[e.str]?e:(delete n[e.str],t)}}function T(e,t){for(const n in t)e[n]=(e[n]||0)-(t[n]||0)}function L(e){return"boolean"==typeof e||"number"==typeof e||null===e?!e:t._`!${N(e)}`}e.CodeGen=class{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?"\n":""},this._extScope=e,this._scope=new n.Scope({parent:e}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){const n=this._extScope.value(e,t);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,n,r){const a=this._scope.toName(t);return void 0!==n&&r&&(this._constants[a.str]=n),this._leafNode(new i(e,a,n)),a}const(e,t,r){return this._def(n.varKinds.const,e,t,r)}let(e,t,r){return this._def(n.varKinds.let,e,t,r)}var(e,t,r){return this._def(n.varKinds.var,e,t,r)}assign(e,t,n){return this._leafNode(new s(e,t,n))}add(t,n){return this._leafNode(new l(t,e.operators.ADD,n))}code(e){return"function"==typeof e?e():e!==t.nil&&this._leafNode(new p(e)),this}object(...e){const n=["{"];for(const[r,a]of e)n.length>1&&n.push(","),n.push(r),(r!==a||this.opts.es5)&&(n.push(":"),(0,t.addCodeArg)(n,a));return n.push("}"),new t._Code(n)}if(e,t,n){if(this._blockNode(new g(e)),t&&n)this.code(t).else().code(n).endIf();else if(t)this.code(t).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new g(e))}else(){return this._elseNode(new y)}endIf(){return this._endBlockNode(g,y)}_for(e,t){return this._blockNode(e),t&&this.code(t).endFor(),this}for(e,t){return this._for(new v(e),t)}forRange(e,t,r,a,o=(this.opts.es5?n.varKinds.var:n.varKinds.let)){const i=this._scope.toName(e);return this._for(new w(o,i,t,r),(()=>a(i)))}forOf(e,r,a,o=n.varKinds.const){const i=this._scope.toName(e);if(this.opts.es5){const e=r instanceof t.Name?r:this.var("_arr",r);return this.forRange("_i",0,t._`${e}.length`,(n=>{this.var(i,t._`${e}[${n}]`),a(i)}))}return this._for(new k("of",o,i,r),(()=>a(i)))}forIn(e,r,a,o=(this.opts.es5?n.varKinds.var:n.varKinds.const)){if(this.opts.ownProperties)return this.forOf(e,t._`Object.keys(${r})`,a);const i=this._scope.toName(e);return this._for(new k("in",o,i,r),(()=>a(i)))}endFor(){return this._endBlockNode(b)}label(e){return this._leafNode(new c(e))}break(e){return this._leafNode(new u(e))}return(e){const t=new S;if(this._blockNode(t),this.code(e),1!==t.nodes.length)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(S)}try(e,t,n){if(!t&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');const r=new E;if(this._blockNode(r),this.code(e),t){const e=this.name("e");this._currNode=r.catch=new x(e),t(e)}return n&&(this._currNode=r.finally=new P,this.code(n)),this._endBlockNode(x,P)}throw(e){return this._leafNode(new d(e))}block(e,t){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(t),this}endBlock(e){const t=this._blockStarts.pop();if(void 0===t)throw new Error("CodeGen: not in self-balancing block");const n=this._nodes.length-t;if(n<0||void 0!==e&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=t,this}func(e,n=t.nil,r,a){return this._blockNode(new $(e,n,r)),a&&this.code(a).endFunc(),this}endFunc(){return this._endBlockNode($)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){const n=this._currNode;if(n instanceof e||t&&n instanceof t)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){const t=this._currNode;if(!(t instanceof g))throw new Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){const e=this._nodes;return e[e.length-1]}set _currNode(e){const t=this._nodes;t[t.length-1]=e}},e.not=L;const C=j(e.operators.AND);e.and=function(...e){return e.reduce(C)};const R=j(e.operators.OR);function j(e){return(n,r)=>n===t.nil?r:r===t.nil?n:t._`${N(n)} ${e} ${N(r)}`}function N(e){return e instanceof t.Name?e:t._`(${e})`}e.or=function(...e){return e.reduce(R)}}(eh);var rh={};Object.defineProperty(rh,"__esModule",{value:!0}),rh.checkStrictMode=rh.getErrorPath=rh.Type=rh.useFunc=rh.setEvaluated=rh.evaluatedPropsToName=rh.mergeEvaluated=rh.eachItem=rh.unescapeJsonPointer=rh.escapeJsonPointer=rh.escapeFragment=rh.unescapeFragment=rh.schemaRefOrVal=rh.schemaHasRulesButRef=rh.schemaHasRules=rh.checkUnknownRules=rh.alwaysValidSchema=rh.toHash=void 0;const ah=eh,oh=th;function ih(e,t=e.schema){const{opts:n,self:r}=e;if(!n.strictSchema)return;if("boolean"==typeof t)return;const a=r.RULES.keywords;for(const o in t)a[o]||yh(e,`unknown keyword: "${o}"`)}function sh(e,t){if("boolean"==typeof e)return!e;for(const n in e)if(t[n])return!0;return!1}function lh(e){return"number"==typeof e?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}function ch(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function uh({mergeNames:e,mergeToName:t,mergeValues:n,resultToName:r}){return(a,o,i,s)=>{const l=void 0===i?o:i instanceof ah.Name?(o instanceof ah.Name?e(a,o,i):t(a,o,i),i):o instanceof ah.Name?(t(a,i,o),o):n(o,i);return s!==ah.Name||l instanceof ah.Name?l:r(a,l)}}function dh(e,t){if(!0===t)return e.var("props",!0);const n=e.var("props",ah._`{}`);return void 0!==t&&ph(e,n,t),n}function ph(e,t,n){Object.keys(n).forEach((n=>e.assign(ah._`${t}${(0,ah.getProperty)(n)}`,!0)))}rh.toHash=function(e){const t={};for(const n of e)t[n]=!0;return t},rh.alwaysValidSchema=function(e,t){return"boolean"==typeof t?t:0===Object.keys(t).length||(ih(e,t),!sh(t,e.self.RULES.all))},rh.checkUnknownRules=ih,rh.schemaHasRules=sh,rh.schemaHasRulesButRef=function(e,t){if("boolean"==typeof e)return!e;for(const n in e)if("$ref"!==n&&t.all[n])return!0;return!1},rh.schemaRefOrVal=function({topSchemaRef:e,schemaPath:t},n,r,a){if(!a){if("number"==typeof n||"boolean"==typeof n)return n;if("string"==typeof n)return ah._`${n}`}return ah._`${e}${t}${(0,ah.getProperty)(r)}`},rh.unescapeFragment=function(e){return ch(decodeURIComponent(e))},rh.escapeFragment=function(e){return encodeURIComponent(lh(e))},rh.escapeJsonPointer=lh,rh.unescapeJsonPointer=ch,rh.eachItem=function(e,t){if(Array.isArray(e))for(const n of e)t(n);else t(e)},rh.mergeEvaluated={props:uh({mergeNames:(e,t,n)=>e.if(ah._`${n} !== true && ${t} !== undefined`,(()=>{e.if(ah._`${t} === true`,(()=>e.assign(n,!0)),(()=>e.assign(n,ah._`${n} || {}`).code(ah._`Object.assign(${n}, ${t})`)))})),mergeToName:(e,t,n)=>e.if(ah._`${n} !== true`,(()=>{!0===t?e.assign(n,!0):(e.assign(n,ah._`${n} || {}`),ph(e,n,t))})),mergeValues:(e,t)=>!0===e||{...e,...t},resultToName:dh}),items:uh({mergeNames:(e,t,n)=>e.if(ah._`${n} !== true && ${t} !== undefined`,(()=>e.assign(n,ah._`${t} === true ? true : ${n} > ${t} ? ${n} : ${t}`))),mergeToName:(e,t,n)=>e.if(ah._`${n} !== true`,(()=>e.assign(n,!0===t||ah._`${n} > ${t} ? ${n} : ${t}`))),mergeValues:(e,t)=>!0===e||Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})},rh.evaluatedPropsToName=dh,rh.setEvaluated=ph;const mh={};var fh,hh;function yh(e,t,n=e.opts.strictSchema){if(n){if(t=`strict mode: ${t}`,!0===n)throw new Error(t);e.self.logger.warn(t)}}rh.useFunc=function(e,t){return e.scopeValue("func",{ref:t,code:mh[t.code]||(mh[t.code]=new oh._Code(t.code))})},(hh=fh||(rh.Type=fh={}))[hh.Num=0]="Num",hh[hh.Str=1]="Str",rh.getErrorPath=function(e,t,n){if(e instanceof ah.Name){const r=t===fh.Num;return n?r?ah._`"[" + ${e} + "]"`:ah._`"['" + ${e} + "']"`:r?ah._`"/" + ${e}`:ah._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,ah.getProperty)(e).toString():"/"+lh(e)},rh.checkStrictMode=yh;var gh={};Object.defineProperty(gh,"__esModule",{value:!0});const bh=eh,vh={data:new bh.Name("data"),valCxt:new bh.Name("valCxt"),instancePath:new bh.Name("instancePath"),parentData:new bh.Name("parentData"),parentDataProperty:new bh.Name("parentDataProperty"),rootData:new bh.Name("rootData"),dynamicAnchors:new bh.Name("dynamicAnchors"),vErrors:new bh.Name("vErrors"),errors:new bh.Name("errors"),this:new bh.Name("this"),self:new bh.Name("self"),scope:new bh.Name("scope"),json:new bh.Name("json"),jsonPos:new bh.Name("jsonPos"),jsonLen:new bh.Name("jsonLen"),jsonPart:new bh.Name("jsonPart")};gh.default=vh,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;const t=eh,n=rh,r=gh;function a(e,n){const a=e.const("err",n);e.if(t._`${r.default.vErrors} === null`,(()=>e.assign(r.default.vErrors,t._`[${a}]`)),t._`${r.default.vErrors}.push(${a})`),e.code(t._`${r.default.errors}++`)}function o(e,n){const{gen:r,validateName:a,schemaEnv:o}=e;o.$async?r.throw(t._`new ${e.ValidationError}(${n})`):(r.assign(t._`${a}.errors`,n),r.return(!1))}e.keywordError={message:({keyword:e})=>t.str`must pass "${e}" keyword validation`},e.keyword$DataError={message:({keyword:e,schemaType:n})=>n?t.str`"${e}" keyword must be ${n} ($data)`:t.str`"${e}" keyword is invalid ($data)`},e.reportError=function(n,r=e.keywordError,i,l){const{it:c}=n,{gen:u,compositeRule:d,allErrors:p}=c,m=s(n,r,i);(null!=l?l:d||p)?a(u,m):o(c,t._`[${m}]`)},e.reportExtraError=function(t,n=e.keywordError,i){const{it:l}=t,{gen:c,compositeRule:u,allErrors:d}=l;a(c,s(t,n,i)),u||d||o(l,r.default.vErrors)},e.resetErrorsCount=function(e,n){e.assign(r.default.errors,n),e.if(t._`${r.default.vErrors} !== null`,(()=>e.if(n,(()=>e.assign(t._`${r.default.vErrors}.length`,n)),(()=>e.assign(r.default.vErrors,null)))))},e.extendErrors=function({gen:e,keyword:n,schemaValue:a,data:o,errsCount:i,it:s}){if(void 0===i)throw new Error("ajv implementation error");const l=e.name("err");e.forRange("i",i,r.default.errors,(i=>{e.const(l,t._`${r.default.vErrors}[${i}]`),e.if(t._`${l}.instancePath === undefined`,(()=>e.assign(t._`${l}.instancePath`,(0,t.strConcat)(r.default.instancePath,s.errorPath)))),e.assign(t._`${l}.schemaPath`,t.str`${s.errSchemaPath}/${n}`),s.opts.verbose&&(e.assign(t._`${l}.schema`,a),e.assign(t._`${l}.data`,o))}))};const i={keyword:new t.Name("keyword"),schemaPath:new t.Name("schemaPath"),params:new t.Name("params"),propertyName:new t.Name("propertyName"),message:new t.Name("message"),schema:new t.Name("schema"),parentSchema:new t.Name("parentSchema")};function s(e,n,a){const{createErrors:o}=e.it;return!1===o?t._`{}`:function(e,n,a={}){const{gen:o,it:s}=e,u=[l(s,a),c(e,a)];return function(e,{params:n,message:a},o){const{keyword:s,data:l,schemaValue:c,it:u}=e,{opts:d,propertyName:p,topSchemaRef:m,schemaPath:f}=u;o.push([i.keyword,s],[i.params,"function"==typeof n?n(e):n||t._`{}`]),d.messages&&o.push([i.message,"function"==typeof a?a(e):a]);d.verbose&&o.push([i.schema,c],[i.parentSchema,t._`${m}${f}`],[r.default.data,l]);p&&o.push([i.propertyName,p])}(e,n,u),o.object(...u)}(e,n,a)}function l({errorPath:e},{instancePath:a}){const o=a?t.str`${e}${(0,n.getErrorPath)(a,n.Type.Str)}`:e;return[r.default.instancePath,(0,t.strConcat)(r.default.instancePath,o)]}function c({keyword:e,it:{errSchemaPath:r}},{schemaPath:a,parentSchema:o}){let s=o?r:t.str`${r}/${e}`;return a&&(s=t.str`${s}${(0,n.getErrorPath)(a,n.Type.Str)}`),[i.schemaPath,s]}}(Qf),Object.defineProperty(Yf,"__esModule",{value:!0}),Yf.boolOrEmptySchema=Yf.topBoolOrEmptySchema=void 0;const wh=Qf,kh=eh,$h=gh,Sh={message:"boolean schema is false"};function Eh(e,t){const{gen:n,data:r}=e,a={gen:n,keyword:"false schema",data:r,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,wh.reportError)(a,Sh,void 0,t)}Yf.topBoolOrEmptySchema=function(e){const{gen:t,schema:n,validateName:r}=e;!1===n?Eh(e,!1):"object"==typeof n&&!0===n.$async?t.return($h.default.data):(t.assign(kh._`${r}.errors`,null),t.return(!0))},Yf.boolOrEmptySchema=function(e,t){const{gen:n,schema:r}=e;!1===r?(n.var(t,!1),Eh(e)):n.var(t,!0)};var xh={},Ph={};Object.defineProperty(Ph,"__esModule",{value:!0}),Ph.getRules=Ph.isJSONType=void 0;const _h=new Set(["string","number","integer","boolean","null","object","array"]);Ph.isJSONType=function(e){return"string"==typeof e&&_h.has(e)},Ph.getRules=function(){const e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}};var Ah={};function Ih(e,t){return t.rules.some((t=>Th(e,t)))}function Th(e,t){var n;return void 0!==e[t.keyword]||(null===(n=t.definition.implements)||void 0===n?void 0:n.some((t=>void 0!==e[t])))}Object.defineProperty(Ah,"__esModule",{value:!0}),Ah.shouldUseRule=Ah.shouldUseGroup=Ah.schemaHasRulesForType=void 0,Ah.schemaHasRulesForType=function({schema:e,self:t},n){const r=t.RULES.types[n];return r&&!0!==r&&Ih(e,r)},Ah.shouldUseGroup=Ih,Ah.shouldUseRule=Th,Object.defineProperty(xh,"__esModule",{value:!0}),xh.reportTypeError=xh.checkDataTypes=xh.checkDataType=xh.coerceAndCheckDataType=xh.getJSONTypes=xh.getSchemaTypes=xh.DataType=void 0;const Lh=Ph,Ch=Ah,Rh=Qf,jh=eh,Nh=rh;var Oh,Fh;function Mh(e){const t=Array.isArray(e)?e:e?[e]:[];if(t.every(Lh.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}(Fh=Oh||(xh.DataType=Oh={}))[Fh.Correct=0]="Correct",Fh[Fh.Wrong=1]="Wrong",xh.getSchemaTypes=function(e){const t=Mh(e.type);if(t.includes("null")){if(!1===e.nullable)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&void 0!==e.nullable)throw new Error('"nullable" cannot be used without "type"');!0===e.nullable&&t.push("null")}return t},xh.getJSONTypes=Mh,xh.coerceAndCheckDataType=function(e,t){const{gen:n,data:r,opts:a}=e,o=function(e,t){return t?e.filter((e=>Hh.has(e)||"array"===t&&"array"===e)):[]}(t,a.coerceTypes),i=t.length>0&&!(0===o.length&&1===t.length&&(0,Ch.schemaHasRulesForType)(e,t[0]));if(i){const i=qh(t,r,a.strictNumbers,Oh.Wrong);n.if(i,(()=>{o.length?function(e,t,n){const{gen:r,data:a,opts:o}=e,i=r.let("dataType",jh._`typeof ${a}`),s=r.let("coerced",jh._`undefined`);"array"===o.coerceTypes&&r.if(jh._`${i} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,(()=>r.assign(a,jh._`${a}[0]`).assign(i,jh._`typeof ${a}`).if(qh(t,a,o.strictNumbers),(()=>r.assign(s,a)))));r.if(jh._`${s} !== undefined`);for(const c of n)(Hh.has(c)||"array"===c&&"array"===o.coerceTypes)&&l(c);function l(e){switch(e){case"string":return void r.elseIf(jh._`${i} == "number" || ${i} == "boolean"`).assign(s,jh._`"" + ${a}`).elseIf(jh._`${a} === null`).assign(s,jh._`""`);case"number":return void r.elseIf(jh._`${i} == "boolean" || ${a} === null
21
21
  || (${i} == "string" && ${a} && ${a} == +${a})`).assign(s,jh._`+${a}`);case"integer":return void r.elseIf(jh._`${i} === "boolean" || ${a} === null
22
22
  || (${i} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(s,jh._`+${a}`);case"boolean":return void r.elseIf(jh._`${a} === "false" || ${a} === 0 || ${a} === null`).assign(s,!1).elseIf(jh._`${a} === "true" || ${a} === 1`).assign(s,!0);case"null":return r.elseIf(jh._`${a} === "" || ${a} === 0 || ${a} === false`),void r.assign(s,null);case"array":r.elseIf(jh._`${i} === "string" || ${i} === "number"
23
23
  || ${i} === "boolean" || ${a} === null`).assign(s,jh._`[${a}]`)}}r.else(),zh(e),r.endIf(),r.if(jh._`${s} !== undefined`,(()=>{r.assign(a,s),function({gen:e,parentData:t,parentDataProperty:n},r){e.if(jh._`${t} !== undefined`,(()=>e.assign(jh._`${t}[${n}]`,r)))}(e,s)}))}(e,t,o):zh(e)}))}return i};const Hh=new Set(["string","number","integer","boolean","null"]);function Bh(e,t,n,r=Oh.Correct){const a=r===Oh.Correct?jh.operators.EQ:jh.operators.NEQ;let o;switch(e){case"null":return jh._`${t} ${a} null`;case"array":o=jh._`Array.isArray(${t})`;break;case"object":o=jh._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":o=i(jh._`!(${t} % 1) && !isNaN(${t})`);break;case"number":o=i();break;default:return jh._`typeof ${t} ${a} ${e}`}return r===Oh.Correct?o:(0,jh.not)(o);function i(e=jh.nil){return(0,jh.and)(jh._`typeof ${t} == "number"`,e,n?jh._`isFinite(${t})`:jh.nil)}}function qh(e,t,n,r){if(1===e.length)return Bh(e[0],t,n,r);let a;const o=(0,Nh.toHash)(e);if(o.array&&o.object){const e=jh._`typeof ${t} != "object"`;a=o.null?e:jh._`!${t} || ${e}`,delete o.null,delete o.array,delete o.object}else a=jh.nil;o.number&&delete o.integer;for(const i in o)a=(0,jh.and)(a,Bh(i,t,n,r));return a}xh.checkDataType=Bh,xh.checkDataTypes=qh;const Dh={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>"string"==typeof e?jh._`{type: ${e}}`:jh._`{type: ${t}}`};function zh(e){const t=function(e){const{gen:t,data:n,schema:r}=e,a=(0,Nh.schemaRefOrVal)(e,r,"type");return{gen:t,keyword:"type",data:n,schema:r.type,schemaCode:a,schemaValue:a,parentSchema:r,params:{},it:e}}(e);(0,Rh.reportError)(t,Dh)}xh.reportTypeError=zh;var Vh={};Object.defineProperty(Vh,"__esModule",{value:!0}),Vh.assignDefaults=void 0;const Wh=eh,Uh=rh;function Gh(e,t,n){const{gen:r,compositeRule:a,data:o,opts:i}=e;if(void 0===n)return;const s=Wh._`${o}${(0,Wh.getProperty)(t)}`;if(a)return void(0,Uh.checkStrictMode)(e,`default is ignored for: ${s}`);let l=Wh._`${s} === undefined`;"empty"===i.useDefaults&&(l=Wh._`${l} || ${s} === null || ${s} === ""`),r.if(l,Wh._`${s} = ${(0,Wh.stringify)(n)}`)}Vh.assignDefaults=function(e,t){const{properties:n,items:r}=e.schema;if("object"===t&&n)for(const a in n)Gh(e,a,n[a].default);else"array"===t&&Array.isArray(r)&&r.forEach(((t,n)=>Gh(e,n,t.default)))};var Kh={},Zh={};Object.defineProperty(Zh,"__esModule",{value:!0}),Zh.validateUnion=Zh.validateArray=Zh.usePattern=Zh.callValidateCode=Zh.schemaProperties=Zh.allSchemaProperties=Zh.noPropertyInData=Zh.propertyInData=Zh.isOwnProperty=Zh.hasPropFunc=Zh.reportMissingProp=Zh.checkMissingProp=Zh.checkReportMissingProp=void 0;const Xh=eh,Jh=rh,Yh=gh,Qh=rh;function ey(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:Xh._`Object.prototype.hasOwnProperty`})}function ty(e,t,n){return Xh._`${ey(e)}.call(${t}, ${n})`}function ny(e,t,n,r){const a=Xh._`${t}${(0,Xh.getProperty)(n)} === undefined`;return r?(0,Xh.or)(a,(0,Xh.not)(ty(e,t,n))):a}function ry(e){return e?Object.keys(e).filter((e=>"__proto__"!==e)):[]}Zh.checkReportMissingProp=function(e,t){const{gen:n,data:r,it:a}=e;n.if(ny(n,r,t,a.opts.ownProperties),(()=>{e.setParams({missingProperty:Xh._`${t}`},!0),e.error()}))},Zh.checkMissingProp=function({gen:e,data:t,it:{opts:n}},r,a){return(0,Xh.or)(...r.map((r=>(0,Xh.and)(ny(e,t,r,n.ownProperties),Xh._`${a} = ${r}`))))},Zh.reportMissingProp=function(e,t){e.setParams({missingProperty:t},!0),e.error()},Zh.hasPropFunc=ey,Zh.isOwnProperty=ty,Zh.propertyInData=function(e,t,n,r){const a=Xh._`${t}${(0,Xh.getProperty)(n)} !== undefined`;return r?Xh._`${a} && ${ty(e,t,n)}`:a},Zh.noPropertyInData=ny,Zh.allSchemaProperties=ry,Zh.schemaProperties=function(e,t){return ry(t).filter((n=>!(0,Jh.alwaysValidSchema)(e,t[n])))},Zh.callValidateCode=function({schemaCode:e,data:t,it:{gen:n,topSchemaRef:r,schemaPath:a,errorPath:o},it:i},s,l,c){const u=c?Xh._`${e}, ${t}, ${r}${a}`:t,d=[[Yh.default.instancePath,(0,Xh.strConcat)(Yh.default.instancePath,o)],[Yh.default.parentData,i.parentData],[Yh.default.parentDataProperty,i.parentDataProperty],[Yh.default.rootData,Yh.default.rootData]];i.opts.dynamicRef&&d.push([Yh.default.dynamicAnchors,Yh.default.dynamicAnchors]);const p=Xh._`${u}, ${n.object(...d)}`;return l!==Xh.nil?Xh._`${s}.call(${l}, ${p})`:Xh._`${s}(${p})`};const ay=Xh._`new RegExp`;Zh.usePattern=function({gen:e,it:{opts:t}},n){const r=t.unicodeRegExp?"u":"",{regExp:a}=t.code,o=a(n,r);return e.scopeValue("pattern",{key:o.toString(),ref:o,code:Xh._`${"new RegExp"===a.code?ay:(0,Qh.useFunc)(e,a)}(${n}, ${r})`})},Zh.validateArray=function(e){const{gen:t,data:n,keyword:r,it:a}=e,o=t.name("valid");if(a.allErrors){const e=t.let("valid",!0);return i((()=>t.assign(e,!1))),e}return t.var(o,!0),i((()=>t.break())),o;function i(a){const i=t.const("len",Xh._`${n}.length`);t.forRange("i",0,i,(n=>{e.subschema({keyword:r,dataProp:n,dataPropType:Jh.Type.Num},o),t.if((0,Xh.not)(o),a)}))}},Zh.validateUnion=function(e){const{gen:t,schema:n,keyword:r,it:a}=e;if(!Array.isArray(n))throw new Error("ajv implementation error");if(n.some((e=>(0,Jh.alwaysValidSchema)(a,e)))&&!a.opts.unevaluated)return;const o=t.let("valid",!1),i=t.name("_valid");t.block((()=>n.forEach(((n,a)=>{const s=e.subschema({keyword:r,schemaProp:a,compositeRule:!0},i);t.assign(o,Xh._`${o} || ${i}`);e.mergeValidEvaluated(s,i)||t.if((0,Xh.not)(o))})))),e.result(o,(()=>e.reset()),(()=>e.error(!0)))},Object.defineProperty(Kh,"__esModule",{value:!0}),Kh.validateKeywordUsage=Kh.validSchemaType=Kh.funcKeywordCode=Kh.macroKeywordCode=void 0;const oy=eh,iy=gh,sy=Zh,ly=Qf;function cy(e){const{gen:t,data:n,it:r}=e;t.if(r.parentData,(()=>t.assign(n,oy._`${r.parentData}[${r.parentDataProperty}]`)))}function uy(e,t,n){if(void 0===n)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword","function"==typeof n?{ref:n}:{ref:n,code:(0,oy.stringify)(n)})}Kh.macroKeywordCode=function(e,t){const{gen:n,keyword:r,schema:a,parentSchema:o,it:i}=e,s=t.macro.call(i.self,a,o,i),l=uy(n,r,s);!1!==i.opts.validateSchema&&i.self.validateSchema(s,!0);const c=n.name("valid");e.subschema({schema:s,schemaPath:oy.nil,errSchemaPath:`${i.errSchemaPath}/${r}`,topSchemaRef:l,compositeRule:!0},c),e.pass(c,(()=>e.error(!0)))},Kh.funcKeywordCode=function(e,t){var n;const{gen:r,keyword:a,schema:o,parentSchema:i,$data:s,it:l}=e;!function({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}(l,t);const c=!s&&t.compile?t.compile.call(l.self,o,i,l):t.validate,u=uy(r,a,c),d=r.let("valid");function p(n=(t.async?oy._`await `:oy.nil)){const a=l.opts.passContext?iy.default.this:iy.default.self,o=!("compile"in t&&!s||!1===t.schema);r.assign(d,oy._`${n}${(0,sy.callValidateCode)(e,u,a,o)}`,t.modifying)}function m(e){var n;r.if((0,oy.not)(null!==(n=t.valid)&&void 0!==n?n:d),e)}e.block$data(d,(function(){if(!1===t.errors)p(),t.modifying&&cy(e),m((()=>e.error()));else{const n=t.async?function(){const e=r.let("ruleErrs",null);return r.try((()=>p(oy._`await `)),(t=>r.assign(d,!1).if(oy._`${t} instanceof ${l.ValidationError}`,(()=>r.assign(e,oy._`${t}.errors`)),(()=>r.throw(t))))),e}():function(){const e=oy._`${u}.errors`;return r.assign(e,null),p(oy.nil),e}();t.modifying&&cy(e),m((()=>function(e,t){const{gen:n}=e;n.if(oy._`Array.isArray(${t})`,(()=>{n.assign(iy.default.vErrors,oy._`${iy.default.vErrors} === null ? ${t} : ${iy.default.vErrors}.concat(${t})`).assign(iy.default.errors,oy._`${iy.default.vErrors}.length`),(0,ly.extendErrors)(e)}),(()=>e.error()))}(e,n)))}})),e.ok(null!==(n=t.valid)&&void 0!==n?n:d)},Kh.validSchemaType=function(e,t,n=!1){return!t.length||t.some((t=>"array"===t?Array.isArray(e):"object"===t?e&&"object"==typeof e&&!Array.isArray(e):typeof e==t||n&&void 0===e))},Kh.validateKeywordUsage=function({schema:e,opts:t,self:n,errSchemaPath:r},a,o){if(Array.isArray(a.keyword)?!a.keyword.includes(o):a.keyword!==o)throw new Error("ajv implementation error");const i=a.dependencies;if(null==i?void 0:i.some((t=>!Object.prototype.hasOwnProperty.call(e,t))))throw new Error(`parent schema must have dependencies of ${o}: ${i.join(",")}`);if(a.validateSchema){if(!a.validateSchema(e[o])){const e=`keyword "${o}" value is invalid at path "${r}": `+n.errorsText(a.validateSchema.errors);if("log"!==t.validateSchema)throw new Error(e);n.logger.error(e)}}};var dy={};Object.defineProperty(dy,"__esModule",{value:!0}),dy.extendSubschemaMode=dy.extendSubschemaData=dy.getSubschema=void 0;const py=eh,my=rh;dy.getSubschema=function(e,{keyword:t,schemaProp:n,schema:r,schemaPath:a,errSchemaPath:o,topSchemaRef:i}){if(void 0!==t&&void 0!==r)throw new Error('both "keyword" and "schema" passed, only one allowed');if(void 0!==t){const r=e.schema[t];return void 0===n?{schema:r,schemaPath:py._`${e.schemaPath}${(0,py.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:r[n],schemaPath:py._`${e.schemaPath}${(0,py.getProperty)(t)}${(0,py.getProperty)(n)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,my.escapeFragment)(n)}`}}if(void 0!==r){if(void 0===a||void 0===o||void 0===i)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:r,schemaPath:a,topSchemaRef:i,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')},dy.extendSubschemaData=function(e,t,{dataProp:n,dataPropType:r,data:a,dataTypes:o,propertyName:i}){if(void 0!==a&&void 0!==n)throw new Error('both "data" and "dataProp" passed, only one allowed');const{gen:s}=t;if(void 0!==n){const{errorPath:a,dataPathArr:o,opts:i}=t;l(s.let("data",py._`${t.data}${(0,py.getProperty)(n)}`,!0)),e.errorPath=py.str`${a}${(0,my.getErrorPath)(n,r,i.jsPropertySyntax)}`,e.parentDataProperty=py._`${n}`,e.dataPathArr=[...o,e.parentDataProperty]}if(void 0!==a){l(a instanceof py.Name?a:s.let("data",a,!0)),void 0!==i&&(e.propertyName=i)}function l(n){e.data=n,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,n]}o&&(e.dataTypes=o)},dy.extendSubschemaMode=function(e,{jtdDiscriminator:t,jtdMetadata:n,compositeRule:r,createErrors:a,allErrors:o}){void 0!==r&&(e.compositeRule=r),void 0!==a&&(e.createErrors=a),void 0!==o&&(e.allErrors=o),e.jtdDiscriminator=t,e.jtdMetadata=n};var fy={},hy=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;var r,a,o;if(Array.isArray(t)){if((r=t.length)!=n.length)return!1;for(a=r;0!=a--;)if(!e(t[a],n[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((r=(o=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(a=r;0!=a--;)if(!Object.prototype.hasOwnProperty.call(n,o[a]))return!1;for(a=r;0!=a--;){var i=o[a];if(!e(t[i],n[i]))return!1}return!0}return t!=t&&n!=n},yy={exports:{}},gy=yy.exports=function(e,t,n){"function"==typeof t&&(n=t,t={}),by(t,"function"==typeof(n=t.cb||n)?n:n.pre||function(){},n.post||function(){},e,"",e)};function by(e,t,n,r,a,o,i,s,l,c){if(r&&"object"==typeof r&&!Array.isArray(r)){for(var u in t(r,a,o,i,s,l,c),r){var d=r[u];if(Array.isArray(d)){if(u in gy.arrayKeywords)for(var p=0;p<d.length;p++)by(e,t,n,d[p],a+"/"+u+"/"+p,o,a,u,r,p)}else if(u in gy.propsKeywords){if(d&&"object"==typeof d)for(var m in d)by(e,t,n,d[m],a+"/"+u+"/"+m.replace(/~/g,"~0").replace(/\//g,"~1"),o,a,u,r,m)}else(u in gy.keywords||e.allKeys&&!(u in gy.skipKeywords))&&by(e,t,n,d,a+"/"+u,o,a,u,r)}n(r,a,o,i,s,l,c)}}gy.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},gy.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},gy.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},gy.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};var vy=yy.exports;Object.defineProperty(fy,"__esModule",{value:!0}),fy.getSchemaRefs=fy.resolveUrl=fy.normalizeId=fy._getFullPath=fy.getFullPath=fy.inlineRef=void 0;const wy=rh,ky=hy,$y=vy,Sy=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);fy.inlineRef=function(e,t=!0){return"boolean"==typeof e||(!0===t?!xy(e):!!t&&Py(e)<=t)};const Ey=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function xy(e){for(const t in e){if(Ey.has(t))return!0;const n=e[t];if(Array.isArray(n)&&n.some(xy))return!0;if("object"==typeof n&&xy(n))return!0}return!1}function Py(e){let t=0;for(const n in e){if("$ref"===n)return 1/0;if(t++,!Sy.has(n)&&("object"==typeof e[n]&&(0,wy.eachItem)(e[n],(e=>t+=Py(e))),t===1/0))return 1/0}return t}function _y(e,t="",n){!1!==n&&(t=Ty(t));const r=e.parse(t);return Ay(e,r)}function Ay(e,t){return e.serialize(t).split("#")[0]+"#"}fy.getFullPath=_y,fy._getFullPath=Ay;const Iy=/#\/?$/;function Ty(e){return e?e.replace(Iy,""):""}fy.normalizeId=Ty,fy.resolveUrl=function(e,t,n){return n=Ty(n),e.resolve(t,n)};const Ly=/^[a-z_][-a-z0-9._]*$/i;fy.getSchemaRefs=function(e,t){if("boolean"==typeof e)return{};const{schemaId:n,uriResolver:r}=this.opts,a=Ty(e[n]||t),o={"":a},i=_y(r,a,!1),s={},l=new Set;return $y(e,{allKeys:!0},((e,t,r,a)=>{if(void 0===a)return;const d=i+t;let p=o[a];function m(t){const n=this.opts.uriResolver.resolve;if(t=Ty(p?n(p,t):t),l.has(t))throw u(t);l.add(t);let r=this.refs[t];return"string"==typeof r&&(r=this.refs[r]),"object"==typeof r?c(e,r.schema,t):t!==Ty(d)&&("#"===t[0]?(c(e,s[t],t),s[t]=e):this.refs[t]=d),t}function f(e){if("string"==typeof e){if(!Ly.test(e))throw new Error(`invalid anchor "${e}"`);m.call(this,`#${e}`)}}"string"==typeof e[n]&&(p=m.call(this,e[n])),f.call(this,e.$anchor),f.call(this,e.$dynamicAnchor),o[t]=p})),s;function c(e,t,n){if(void 0!==t&&!ky(e,t))throw u(n)}function u(e){return new Error(`reference "${e}" resolves to more than one schema`)}},Object.defineProperty(Jf,"__esModule",{value:!0}),Jf.getData=Jf.KeywordCxt=Jf.validateFunctionCode=void 0;const Cy=Yf,Ry=xh,jy=Ah,Ny=xh,Oy=Vh,Fy=Kh,My=dy,Hy=eh,By=gh,qy=fy,Dy=rh,zy=Qf;function Vy({gen:e,validateName:t,schema:n,schemaEnv:r,opts:a},o){a.code.es5?e.func(t,Hy._`${By.default.data}, ${By.default.valCxt}`,r.$async,(()=>{e.code(Hy._`"use strict"; ${Wy(n,a)}`),function(e,t){e.if(By.default.valCxt,(()=>{e.var(By.default.instancePath,Hy._`${By.default.valCxt}.${By.default.instancePath}`),e.var(By.default.parentData,Hy._`${By.default.valCxt}.${By.default.parentData}`),e.var(By.default.parentDataProperty,Hy._`${By.default.valCxt}.${By.default.parentDataProperty}`),e.var(By.default.rootData,Hy._`${By.default.valCxt}.${By.default.rootData}`),t.dynamicRef&&e.var(By.default.dynamicAnchors,Hy._`${By.default.valCxt}.${By.default.dynamicAnchors}`)}),(()=>{e.var(By.default.instancePath,Hy._`""`),e.var(By.default.parentData,Hy._`undefined`),e.var(By.default.parentDataProperty,Hy._`undefined`),e.var(By.default.rootData,By.default.data),t.dynamicRef&&e.var(By.default.dynamicAnchors,Hy._`{}`)}))}(e,a),e.code(o)})):e.func(t,Hy._`${By.default.data}, ${function(e){return Hy._`{${By.default.instancePath}="", ${By.default.parentData}, ${By.default.parentDataProperty}, ${By.default.rootData}=${By.default.data}${e.dynamicRef?Hy._`, ${By.default.dynamicAnchors}={}`:Hy.nil}}={}`}(a)}`,r.$async,(()=>e.code(Wy(n,a)).code(o)))}function Wy(e,t){const n="object"==typeof e&&e[t.schemaId];return n&&(t.code.source||t.code.process)?Hy._`/*# sourceURL=${n} */`:Hy.nil}function Uy(e,t){Ky(e)&&(Zy(e),Gy(e))?function(e,t){const{schema:n,gen:r,opts:a}=e;a.$comment&&n.$comment&&Jy(e);(function(e){const t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,qy.resolveUrl)(e.opts.uriResolver,e.baseId,t))})(e),function(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}(e);const o=r.const("_errs",By.default.errors);Xy(e,o),r.var(t,Hy._`${o} === ${By.default.errors}`)}(e,t):(0,Cy.boolOrEmptySchema)(e,t)}function Gy({schema:e,self:t}){if("boolean"==typeof e)return!e;for(const n in e)if(t.RULES.all[n])return!0;return!1}function Ky(e){return"boolean"!=typeof e.schema}function Zy(e){(0,Dy.checkUnknownRules)(e),function(e){const{schema:t,errSchemaPath:n,opts:r,self:a}=e;t.$ref&&r.ignoreKeywordsWithRef&&(0,Dy.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}(e)}function Xy(e,t){if(e.opts.jtd)return Yy(e,[],!1,t);const n=(0,Ry.getSchemaTypes)(e.schema);Yy(e,n,!(0,Ry.coerceAndCheckDataType)(e,n),t)}function Jy({gen:e,schemaEnv:t,schema:n,errSchemaPath:r,opts:a}){const o=n.$comment;if(!0===a.$comment)e.code(Hy._`${By.default.self}.logger.log(${o})`);else if("function"==typeof a.$comment){const n=Hy.str`${r}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(Hy._`${By.default.self}.opts.$comment(${o}, ${n}, ${a}.schema)`)}}function Yy(e,t,n,r){const{gen:a,schema:o,data:i,allErrors:s,opts:l,self:c}=e,{RULES:u}=c;function d(c){(0,jy.shouldUseGroup)(o,c)&&(c.type?(a.if((0,Ny.checkDataType)(c.type,i,l.strictNumbers)),Qy(e,c),1===t.length&&t[0]===c.type&&n&&(a.else(),(0,Ny.reportTypeError)(e)),a.endIf()):Qy(e,c),s||a.if(Hy._`${By.default.errors} === ${r||0}`))}!o.$ref||!l.ignoreKeywordsWithRef&&(0,Dy.schemaHasRulesButRef)(o,u)?(l.jtd||function(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;(function(e,t){if(!t.length)return;if(!e.dataTypes.length)return void(e.dataTypes=t);t.forEach((t=>{tg(e.dataTypes,t)||ng(e,`type "${t}" not allowed by context "${e.dataTypes.join(",")}"`)})),function(e,t){const n=[];for(const r of e.dataTypes)tg(t,r)?n.push(r):t.includes("integer")&&"number"===r&&n.push("integer");e.dataTypes=n}(e,t)})(e,t),e.opts.allowUnionTypes||function(e,t){t.length>1&&(2!==t.length||!t.includes("null"))&&ng(e,"use allowUnionTypes to allow union type keyword")}(e,t);!function(e,t){const n=e.self.RULES.all;for(const r in n){const a=n[r];if("object"==typeof a&&(0,jy.shouldUseRule)(e.schema,a)){const{type:n}=a.definition;n.length&&!n.some((e=>eg(t,e)))&&ng(e,`missing type "${n.join(",")}" for keyword "${r}"`)}}}(e,e.dataTypes)}(e,t),a.block((()=>{for(const e of u.rules)d(e);d(u.post)}))):a.block((()=>ag(e,"$ref",u.all.$ref.definition)))}function Qy(e,t){const{gen:n,schema:r,opts:{useDefaults:a}}=e;a&&(0,Oy.assignDefaults)(e,t.type),n.block((()=>{for(const n of t.rules)(0,jy.shouldUseRule)(r,n)&&ag(e,n.keyword,n.definition,t.type)}))}function eg(e,t){return e.includes(t)||"number"===t&&e.includes("integer")}function tg(e,t){return e.includes(t)||"integer"===t&&e.includes("number")}function ng(e,t){t+=` at "${e.schemaEnv.baseId+e.errSchemaPath}" (strictTypes)`,(0,Dy.checkStrictMode)(e,t,e.opts.strictTypes)}Jf.validateFunctionCode=function(e){Ky(e)&&(Zy(e),Gy(e))?function(e){const{schema:t,opts:n,gen:r}=e;Vy(e,(()=>{n.$comment&&t.$comment&&Jy(e),function(e){const{schema:t,opts:n}=e;void 0!==t.default&&n.useDefaults&&n.strictSchema&&(0,Dy.checkStrictMode)(e,"default is ignored in the schema root")}(e),r.let(By.default.vErrors,null),r.let(By.default.errors,0),n.unevaluated&&function(e){const{gen:t,validateName:n}=e;e.evaluated=t.const("evaluated",Hy._`${n}.evaluated`),t.if(Hy._`${e.evaluated}.dynamicProps`,(()=>t.assign(Hy._`${e.evaluated}.props`,Hy._`undefined`))),t.if(Hy._`${e.evaluated}.dynamicItems`,(()=>t.assign(Hy._`${e.evaluated}.items`,Hy._`undefined`)))}(e),Xy(e),function(e){const{gen:t,schemaEnv:n,validateName:r,ValidationError:a,opts:o}=e;n.$async?t.if(Hy._`${By.default.errors} === 0`,(()=>t.return(By.default.data)),(()=>t.throw(Hy._`new ${a}(${By.default.vErrors})`))):(t.assign(Hy._`${r}.errors`,By.default.vErrors),o.unevaluated&&function({gen:e,evaluated:t,props:n,items:r}){n instanceof Hy.Name&&e.assign(Hy._`${t}.props`,n);r instanceof Hy.Name&&e.assign(Hy._`${t}.items`,r)}(e),t.return(Hy._`${By.default.errors} === 0`))}(e)}))}(e):Vy(e,(()=>(0,Cy.topBoolOrEmptySchema)(e)))};class rg{constructor(e,t,n){if((0,Fy.validateKeywordUsage)(e,t,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Dy.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const("vSchema",sg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Fy.validSchemaType)(this.schema,t.schemaType,t.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(t.schemaType)}`);("code"in t?t.trackErrors:!1!==t.errors)&&(this.errsCount=e.gen.const("_errs",By.default.errors))}result(e,t,n){this.failResult((0,Hy.not)(e),t,n)}failResult(e,t,n){this.gen.if(e),n?n():this.error(),t?(this.gen.else(),t(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,t){this.failResult((0,Hy.not)(e),void 0,t)}fail(e){if(void 0===e)return this.error(),void(this.allErrors||this.gen.if(!1));this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);const{schemaCode:t}=this;this.fail(Hy._`${t} !== undefined && (${(0,Hy.or)(this.invalid$data(),e)})`)}error(e,t,n){if(t)return this.setParams(t),this._error(e,n),void this.setParams({});this._error(e,n)}_error(e,t){(e?zy.reportExtraError:zy.reportError)(this,this.def.error,t)}$dataError(){(0,zy.reportError)(this,this.def.$dataError||zy.keyword$DataError)}reset(){if(void 0===this.errsCount)throw new Error('add "trackErrors" to keyword definition');(0,zy.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,t){t?Object.assign(this.params,e):this.params=e}block$data(e,t,n=Hy.nil){this.gen.block((()=>{this.check$data(e,n),t()}))}check$data(e=Hy.nil,t=Hy.nil){if(!this.$data)return;const{gen:n,schemaCode:r,schemaType:a,def:o}=this;n.if((0,Hy.or)(Hy._`${r} === undefined`,t)),e!==Hy.nil&&n.assign(e,!0),(a.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==Hy.nil&&n.assign(e,!1)),n.else()}invalid$data(){const{gen:e,schemaCode:t,schemaType:n,def:r,it:a}=this;return(0,Hy.or)(function(){if(n.length){if(!(t instanceof Hy.Name))throw new Error("ajv implementation error");const e=Array.isArray(n)?n:[n];return Hy._`${(0,Ny.checkDataTypes)(e,t,a.opts.strictNumbers,Ny.DataType.Wrong)}`}return Hy.nil}(),function(){if(r.validateSchema){const n=e.scopeValue("validate$data",{ref:r.validateSchema});return Hy._`!${n}(${t})`}return Hy.nil}())}subschema(e,t){const n=(0,My.getSubschema)(this.it,e);(0,My.extendSubschemaData)(n,this.it,e),(0,My.extendSubschemaMode)(n,e);const r={...this.it,...n,items:void 0,props:void 0};return Uy(r,t),r}mergeEvaluated(e,t){const{it:n,gen:r}=this;n.opts.unevaluated&&(!0!==n.props&&void 0!==e.props&&(n.props=Dy.mergeEvaluated.props(r,e.props,n.props,t)),!0!==n.items&&void 0!==e.items&&(n.items=Dy.mergeEvaluated.items(r,e.items,n.items,t)))}mergeValidEvaluated(e,t){const{it:n,gen:r}=this;if(n.opts.unevaluated&&(!0!==n.props||!0!==n.items))return r.if(t,(()=>this.mergeEvaluated(e,Hy.Name))),!0}}function ag(e,t,n,r){const a=new rg(e,n,t);"code"in n?n.code(a,r):a.$data&&n.validate?(0,Fy.funcKeywordCode)(a,n):"macro"in n?(0,Fy.macroKeywordCode)(a,n):(n.compile||n.validate)&&(0,Fy.funcKeywordCode)(a,n)}Jf.KeywordCxt=rg;const og=/^\/(?:[^~]|~0|~1)*$/,ig=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function sg(e,{dataLevel:t,dataNames:n,dataPathArr:r}){let a,o;if(""===e)return By.default.rootData;if("/"===e[0]){if(!og.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,o=By.default.rootData}else{const i=ig.exec(e);if(!i)throw new Error(`Invalid JSON-pointer: ${e}`);const s=+i[1];if(a=i[2],"#"===a){if(s>=t)throw new Error(l("property/index",s));return r[t-s]}if(s>t)throw new Error(l("data",s));if(o=n[t-s],!a)return o}let i=o;const s=a.split("/");for(const c of s)c&&(o=Hy._`${o}${(0,Hy.getProperty)((0,Dy.unescapeJsonPointer)(c))}`,i=Hy._`${i} && ${o}`);return i;function l(e,n){return`Cannot access ${e} ${n} levels up, current level is ${t}`}}Jf.getData=sg;var lg={};Object.defineProperty(lg,"__esModule",{value:!0});class cg extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}}lg.default=cg;var ug={};Object.defineProperty(ug,"__esModule",{value:!0});const dg=fy;class pg extends Error{constructor(e,t,n,r){super(r||`can't resolve reference ${n} from id ${t}`),this.missingRef=(0,dg.resolveUrl)(e,t,n),this.missingSchema=(0,dg.normalizeId)((0,dg.getFullPath)(e,this.missingRef))}}ug.default=pg;var mg={};Object.defineProperty(mg,"__esModule",{value:!0}),mg.resolveSchema=mg.getCompilingSchema=mg.resolveRef=mg.compileSchema=mg.SchemaEnv=void 0;const fg=eh,hg=lg,yg=gh,gg=fy,bg=rh,vg=Jf;class wg{constructor(e){var t;let n;this.refs={},this.dynamicAnchors={},"object"==typeof e.schema&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=null!==(t=e.baseId)&&void 0!==t?t:(0,gg.normalizeId)(null==n?void 0:n[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=null==n?void 0:n.$async,this.refs={}}}function kg(e){const t=Sg.call(this,e);if(t)return t;const n=(0,gg.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:r,lines:a}=this.opts.code,{ownProperties:o}=this.opts,i=new fg.CodeGen(this.scope,{es5:r,lines:a,ownProperties:o});let s;e.$async&&(s=i.scopeValue("Error",{ref:hg.default,code:fg._`require("ajv/dist/runtime/validation_error").default`}));const l=i.scopeName("validate");e.validateName=l;const c={gen:i,allErrors:this.opts.allErrors,data:yg.default.data,parentData:yg.default.parentData,parentDataProperty:yg.default.parentDataProperty,dataNames:[yg.default.data],dataPathArr:[fg.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",!0===this.opts.code.source?{ref:e.schema,code:(0,fg.stringify)(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:s,schema:e.schema,schemaEnv:e,rootId:n,baseId:e.baseId||n,schemaPath:fg.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:fg._`""`,opts:this.opts,self:this};let u;try{this._compilations.add(e),(0,vg.validateFunctionCode)(c),i.optimize(this.opts.code.optimize);const t=i.toString();u=`${i.scopeRefs(yg.default.scope)}return ${t}`,this.opts.code.process&&(u=this.opts.code.process(u,e));const n=new Function(`${yg.default.self}`,`${yg.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:n}),n.errors=null,n.schema=e.schema,n.schemaEnv=e,e.$async&&(n.$async=!0),!0===this.opts.code.source&&(n.source={validateName:l,validateCode:t,scopeValues:i._values}),this.opts.unevaluated){const{props:e,items:t}=c;n.evaluated={props:e instanceof fg.Name?void 0:e,items:t instanceof fg.Name?void 0:t,dynamicProps:e instanceof fg.Name,dynamicItems:t instanceof fg.Name},n.source&&(n.source.evaluated=(0,fg.stringify)(n.evaluated))}return e.validate=n,e}catch(d){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(e)}}function $g(e){return(0,gg.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:kg.call(this,e)}function Sg(e){for(const r of this._compilations)if(n=e,(t=r).schema===n.schema&&t.root===n.root&&t.baseId===n.baseId)return r;var t,n}function Eg(e,t){let n;for(;"string"==typeof(n=this.refs[t]);)t=n;return n||this.schemas[t]||xg.call(this,e,t)}function xg(e,t){const n=this.opts.uriResolver.parse(t),r=(0,gg._getFullPath)(this.opts.uriResolver,n);let a=(0,gg.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&r===a)return _g.call(this,n,e);const o=(0,gg.normalizeId)(r),i=this.refs[o]||this.schemas[o];if("string"==typeof i){const t=xg.call(this,e,i);if("object"!=typeof(null==t?void 0:t.schema))return;return _g.call(this,n,t)}if("object"==typeof(null==i?void 0:i.schema)){if(i.validate||kg.call(this,i),o===(0,gg.normalizeId)(t)){const{schema:t}=i,{schemaId:n}=this.opts,r=t[n];return r&&(a=(0,gg.resolveUrl)(this.opts.uriResolver,a,r)),new wg({schema:t,schemaId:n,root:e,baseId:a})}return _g.call(this,n,i)}}mg.SchemaEnv=wg,mg.compileSchema=kg,mg.resolveRef=function(e,t,n){var r;n=(0,gg.resolveUrl)(this.opts.uriResolver,t,n);const a=e.refs[n];if(a)return a;let o=Eg.call(this,e,n);if(void 0===o){const a=null===(r=e.localRefs)||void 0===r?void 0:r[n],{schemaId:i}=this.opts;a&&(o=new wg({schema:a,schemaId:i,root:e,baseId:t}))}return void 0!==o?e.refs[n]=$g.call(this,o):void 0},mg.getCompilingSchema=Sg,mg.resolveSchema=xg;const Pg=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function _g(e,{baseId:t,schema:n,root:r}){var a;if("/"!==(null===(a=e.fragment)||void 0===a?void 0:a[0]))return;for(const s of e.fragment.slice(1).split("/")){if("boolean"==typeof n)return;const e=n[(0,bg.unescapeFragment)(s)];if(void 0===e)return;const r="object"==typeof(n=e)&&n[this.opts.schemaId];!Pg.has(s)&&r&&(t=(0,gg.resolveUrl)(this.opts.uriResolver,t,r))}let o;if("boolean"!=typeof n&&n.$ref&&!(0,bg.schemaHasRulesButRef)(n,this.RULES)){const e=(0,gg.resolveUrl)(this.opts.uriResolver,t,n.$ref);o=xg.call(this,r,e)}const{schemaId:i}=this.opts;return o=o||new wg({schema:n,schemaId:i,root:r,baseId:t}),o.schema!==o.root.schema?o:void 0}const Ag={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1};var Ig={},Tg={exports:{}};var Lg={HEX:{0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15}};const{HEX:Cg}=Lg;function Rg(e){if(Fg(e,".")<3)return{host:e,isIPV4:!1};const t=e.match(/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/u)||[],[n]=t;return n?{host:Og(n,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function jg(e,t=!1){let n="",r=!0;for(const a of e){if(void 0===Cg[a])return;"0"!==a&&!0===r&&(r=!1),r||(n+=a)}return t&&0===n.length&&(n="0"),n}function Ng(e,t={}){if(Fg(e,":")<2)return{host:e,isIPV6:!1};const n=function(e){let t=0;const n={error:!1,address:"",zone:""},r=[],a=[];let o=!1,i=!1,s=!1;function l(){if(a.length){if(!1===o){const e=jg(a);if(void 0===e)return n.error=!0,!1;r.push(e)}a.length=0}return!0}for(let c=0;c<e.length;c++){const u=e[c];if("["!==u&&"]"!==u)if(":"!==u)if("%"===u){if(!l())break;o=!0}else a.push(u);else{if(!0===i&&(s=!0),!l())break;if(t++,r.push(":"),t>7){n.error=!0;break}c-1>=0&&":"===e[c-1]&&(i=!0)}}return a.length&&(o?n.zone=a.join(""):s?r.push(a.join("")):r.push(jg(a))),n.address=r.join(""),n}(e);if(n.error)return{host:e,isIPV6:!1};{let e=n.address,t=n.address;return n.zone&&(e+="%"+n.zone,t+="%25"+n.zone),{host:e,escapedHost:t,isIPV6:!0}}}function Og(e,t){let n="",r=!0;const a=e.length;for(let o=0;o<a;o++){const i=e[o];"0"===i&&r?(o+1<=a&&e[o+1]===t||o+1===a)&&(n+=i,r=!1):(r=i===t,n+=i)}return n}function Fg(e,t){let n=0;for(let r=0;r<e.length;r++)e[r]===t&&n++;return n}const Mg=/^\.\.?\//u,Hg=/^\/\.(?:\/|$)/u,Bg=/^\/\.\.(?:\/|$)/u,qg=/^\/?(?:.|\n)*?(?=\/|$)/u;var Dg={recomposeAuthority:function(e,t){const n=[];if(void 0!==e.userinfo&&(n.push(e.userinfo),n.push("@")),void 0!==e.host){let t=unescape(e.host);const r=Rg(t);if(r.isIPV4)t=r.host;else{const n=Ng(r.host,{isIPV4:!1});t=!0===n.isIPV6?`[${n.escapedHost}]`:e.host}n.push(t)}return"number"!=typeof e.port&&"string"!=typeof e.port||(n.push(":"),n.push(String(e.port))),n.length?n.join(""):void 0},normalizeComponentEncoding:function(e,t){const n=!0!==t?escape:unescape;return void 0!==e.scheme&&(e.scheme=n(e.scheme)),void 0!==e.userinfo&&(e.userinfo=n(e.userinfo)),void 0!==e.host&&(e.host=n(e.host)),void 0!==e.path&&(e.path=n(e.path)),void 0!==e.query&&(e.query=n(e.query)),void 0!==e.fragment&&(e.fragment=n(e.fragment)),e},removeDotSegments:function(e){const t=[];for(;e.length;)if(e.match(Mg))e=e.replace(Mg,"");else if(e.match(Hg))e=e.replace(Hg,"/");else if(e.match(Bg))e=e.replace(Bg,"/"),t.pop();else if("."===e||".."===e)e="";else{const n=e.match(qg);if(!n)throw new Error("Unexpected dot segment condition");{const r=n[0];e=e.slice(r.length),t.push(r)}}return t.join("")},normalizeIPv4:Rg,normalizeIPv6:Ng,stringArrayToHexStripped:jg};const zg=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,Vg=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Wg(e){return"boolean"==typeof e.secure?e.secure:"wss"===String(e.scheme).toLowerCase()}function Ug(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function Gg(e){const t="https"===String(e.scheme).toLowerCase();return e.port!==(t?443:80)&&""!==e.port||(e.port=void 0),e.path||(e.path="/"),e}const Kg={scheme:"http",domainHost:!0,parse:Ug,serialize:Gg},Zg={scheme:"ws",domainHost:!0,parse:function(e){return e.secure=Wg(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e},serialize:function(e){if(e.port!==(Wg(e)?443:80)&&""!==e.port||(e.port=void 0),"boolean"==typeof e.secure&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){const[t,n]=e.resourceName.split("?");e.path=t&&"/"!==t?t:void 0,e.query=n,e.resourceName=void 0}return e.fragment=void 0,e}},Xg={http:Kg,https:{scheme:"https",domainHost:Kg.domainHost,parse:Ug,serialize:Gg},ws:Zg,wss:{scheme:"wss",domainHost:Zg.domainHost,parse:Zg.parse,serialize:Zg.serialize},urn:{scheme:"urn",parse:function(e,t){if(!e.path)return e.error="URN can not be parsed",e;const n=e.path.match(Vg);if(n){const r=t.scheme||e.scheme||"urn";e.nid=n[1].toLowerCase(),e.nss=n[2];const a=`${r}:${t.nid||e.nid}`,o=Xg[a];e.path=void 0,o&&(e=o.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e},serialize:function(e,t){const n=t.scheme||e.scheme||"urn",r=e.nid.toLowerCase(),a=`${n}:${t.nid||r}`,o=Xg[a];o&&(e=o.serialize(e,t));const i=e,s=e.nss;return i.path=`${r||t.nid}:${s}`,t.skipEscape=!0,i},skipNormalize:!0},"urn:uuid":{scheme:"urn:uuid",parse:function(e,t){const n=e;return n.uuid=n.nss,n.nss=void 0,t.tolerant||n.uuid&&zg.test(n.uuid)||(n.error=n.error||"UUID is not valid."),n},serialize:function(e){const t=e;return t.nss=(e.uuid||"").toLowerCase(),t},skipNormalize:!0}};var Jg=Xg;const{normalizeIPv6:Yg,normalizeIPv4:Qg,removeDotSegments:eb,recomposeAuthority:tb,normalizeComponentEncoding:nb}=Dg,rb=Jg;function ab(e,t,n,r){const a={};return r||(e=lb(ob(e,n),n),t=lb(ob(t,n),n)),!(n=n||{}).tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=eb(t.path||""),a.query=t.query):(void 0!==t.userinfo||void 0!==t.host||void 0!==t.port?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=eb(t.path||""),a.query=t.query):(t.path?("/"===t.path.charAt(0)?a.path=eb(t.path):(void 0===e.userinfo&&void 0===e.host&&void 0===e.port||e.path?e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path:a.path="/"+t.path,a.path=eb(a.path)),a.query=t.query):(a.path=e.path,void 0!==t.query?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function ob(e,t){const n={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},r=Object.assign({},t),a=[],o=rb[(r.scheme||n.scheme||"").toLowerCase()];o&&o.serialize&&o.serialize(n,r),void 0!==n.path&&(r.skipEscape?n.path=unescape(n.path):(n.path=escape(n.path),void 0!==n.scheme&&(n.path=n.path.split("%3A").join(":")))),"suffix"!==r.reference&&n.scheme&&(a.push(n.scheme),a.push(":"));const i=tb(n,r);if(void 0!==i&&("suffix"!==r.reference&&a.push("//"),a.push(i),n.path&&"/"!==n.path.charAt(0)&&a.push("/")),void 0!==n.path){let e=n.path;r.absolutePath||o&&o.absolutePath||(e=eb(e)),void 0===i&&(e=e.replace(/^\/\//u,"/%2F")),a.push(e)}return void 0!==n.query&&(a.push("?"),a.push(n.query)),void 0!==n.fragment&&(a.push("#"),a.push(n.fragment)),a.join("")}const ib=Array.from({length:127},((e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t))));const sb=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function lb(e,t){const n=Object.assign({},t),r={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=-1!==e.indexOf("%");let o=!1;"suffix"===n.reference&&(e=(n.scheme?n.scheme+":":"")+"//"+e);const i=e.match(sb);if(i){if(r.scheme=i[1],r.userinfo=i[3],r.host=i[4],r.port=parseInt(i[5],10),r.path=i[6]||"",r.query=i[7],r.fragment=i[8],isNaN(r.port)&&(r.port=i[5]),r.host){const e=Qg(r.host);if(!1===e.isIPV4){const t=Yg(e.host,{isIPV4:!1});r.host=t.host.toLowerCase(),o=t.isIPV6}else r.host=e.host,o=!0}void 0!==r.scheme||void 0!==r.userinfo||void 0!==r.host||void 0!==r.port||r.path||void 0!==r.query?void 0===r.scheme?r.reference="relative":void 0===r.fragment?r.reference="absolute":r.reference="uri":r.reference="same-document",n.reference&&"suffix"!==n.reference&&n.reference!==r.reference&&(r.error=r.error||"URI is not a "+n.reference+" reference.");const e=rb[(n.scheme||r.scheme||"").toLowerCase()];if(!(n.unicodeSupport||e&&e.unicodeSupport)&&r.host&&(n.domainHost||e&&e.domainHost)&&!1===o&&function(e){let t=0;for(let n=0,r=e.length;n<r;++n)if(t=e.charCodeAt(n),t>126||ib[t])return!0;return!1}(r.host))try{r.host=URL.domainToASCII(r.host.toLowerCase())}catch(s){r.error=r.error||"Host's domain name can not be converted to ASCII: "+s}(!e||e&&!e.skipNormalize)&&(a&&void 0!==r.scheme&&(r.scheme=unescape(r.scheme)),a&&void 0!==r.userinfo&&(r.userinfo=unescape(r.userinfo)),a&&void 0!==r.host&&(r.host=unescape(r.host)),void 0!==r.path&&r.path.length&&(r.path=escape(unescape(r.path))),void 0!==r.fragment&&r.fragment.length&&(r.fragment=encodeURI(decodeURIComponent(r.fragment)))),e&&e.parse&&e.parse(r,n)}else r.error=r.error||"URI can not be parsed.";return r}const cb={SCHEMES:rb,normalize:function(e,t){return"string"==typeof e?e=ob(lb(e,t),t):"object"==typeof e&&(e=lb(ob(e,t),t)),e},resolve:function(e,t,n){const r=Object.assign({scheme:"null"},n);return ob(ab(lb(e,r),lb(t,r),r,!0),{...r,skipEscape:!0})},resolveComponents:ab,equal:function(e,t,n){return"string"==typeof e?(e=unescape(e),e=ob(nb(lb(e,n),!0),{...n,skipEscape:!0})):"object"==typeof e&&(e=ob(nb(e,!0),{...n,skipEscape:!0})),"string"==typeof t?(t=unescape(t),t=ob(nb(lb(t,n),!0),{...n,skipEscape:!0})):"object"==typeof t&&(t=ob(nb(t,!0),{...n,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()},serialize:ob,parse:lb};Tg.exports=cb,Tg.exports.default=cb,Tg.exports.fastUri=cb;var ub=Tg.exports;Object.defineProperty(Ig,"__esModule",{value:!0});const db=ub;db.code='require("ajv/dist/runtime/uri").default',Ig.default=db,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=void 0;var t=Jf;Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return t.KeywordCxt}});var n=eh;Object.defineProperty(e,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return n.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return n.CodeGen}});const r=lg,a=ug,o=Ph,i=mg,s=eh,l=fy,c=xh,u=rh,d=Ag,p=Ig,m=(e,t)=>new RegExp(e,t);m.code="new RegExp";const f=["removeAdditional","useDefaults","coerceTypes"],h=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},g={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'};function b(e){var t,n,r,a,o,i,s,l,c,u,d,f,h,y,g,b,v,w,k,$,S,E,x,P,_;const A=e.strict,I=null===(t=e.code)||void 0===t?void 0:t.optimize,T=!0===I||void 0===I?1:I||0,L=null!==(r=null===(n=e.code)||void 0===n?void 0:n.regExp)&&void 0!==r?r:m,C=null!==(a=e.uriResolver)&&void 0!==a?a:p.default;return{strictSchema:null===(i=null!==(o=e.strictSchema)&&void 0!==o?o:A)||void 0===i||i,strictNumbers:null===(l=null!==(s=e.strictNumbers)&&void 0!==s?s:A)||void 0===l||l,strictTypes:null!==(u=null!==(c=e.strictTypes)&&void 0!==c?c:A)&&void 0!==u?u:"log",strictTuples:null!==(f=null!==(d=e.strictTuples)&&void 0!==d?d:A)&&void 0!==f?f:"log",strictRequired:null!==(y=null!==(h=e.strictRequired)&&void 0!==h?h:A)&&void 0!==y&&y,code:e.code?{...e.code,optimize:T,regExp:L}:{optimize:T,regExp:L},loopRequired:null!==(g=e.loopRequired)&&void 0!==g?g:200,loopEnum:null!==(b=e.loopEnum)&&void 0!==b?b:200,meta:null===(v=e.meta)||void 0===v||v,messages:null===(w=e.messages)||void 0===w||w,inlineRefs:null===(k=e.inlineRefs)||void 0===k||k,schemaId:null!==($=e.schemaId)&&void 0!==$?$:"$id",addUsedSchema:null===(S=e.addUsedSchema)||void 0===S||S,validateSchema:null===(E=e.validateSchema)||void 0===E||E,validateFormats:null===(x=e.validateFormats)||void 0===x||x,unicodeRegExp:null===(P=e.unicodeRegExp)||void 0===P||P,int32range:null===(_=e.int32range)||void 0===_||_,uriResolver:C}}class v{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...b(e)};const{es5:t,lines:n}=this.opts.code;this.scope=new s.ValueScope({scope:{},prefixes:h,es5:t,lines:n}),this.logger=function(e){if(!1===e)return P;if(void 0===e)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}(e.logger);const r=e.validateFormats;e.validateFormats=!1,this.RULES=(0,o.getRules)(),w.call(this,y,e,"NOT SUPPORTED"),w.call(this,g,e,"DEPRECATED","warn"),this._metaOpts=x.call(this),e.formats&&S.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&E.call(this,e.keywords),"object"==typeof e.meta&&this.addMetaSchema(e.meta),$.call(this),e.validateFormats=r}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){const{$data:e,meta:t,schemaId:n}=this.opts;let r=d;"id"===n&&(r={...d},r.id=r.$id,delete r.$id),t&&e&&this.addMetaSchema(r,r[n],!1)}defaultMeta(){const{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta="object"==typeof e?e[t]||e:void 0}validate(e,t){let n;if("string"==typeof e){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);const r=n(t);return"$async"in n||(this.errors=n.errors),r}compile(e,t){const n=this._addSchema(e,t);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,t){if("function"!=typeof this.opts.loadSchema)throw new Error("options.loadSchema should be a function");const{loadSchema:n}=this.opts;return r.call(this,e,t);async function r(e,t){await o.call(this,e.$schema);const n=this._addSchema(e,t);return n.validate||i.call(this,n)}async function o(e){e&&!this.getSchema(e)&&await r.call(this,{$ref:e},!0)}async function i(e){try{return this._compileSchemaEnv(e)}catch(t){if(!(t instanceof a.default))throw t;return s.call(this,t),await l.call(this,t.missingSchema),i.call(this,e)}}function s({missingSchema:e,missingRef:t}){if(this.refs[e])throw new Error(`AnySchema ${e} is loaded but ${t} cannot be resolved`)}async function l(e){const n=await c.call(this,e);this.refs[e]||await o.call(this,n.$schema),this.refs[e]||this.addSchema(n,e,t)}async function c(e){const t=this._loading[e];if(t)return t;try{return await(this._loading[e]=n(e))}finally{delete this._loading[e]}}}addSchema(e,t,n,r=this.opts.validateSchema){if(Array.isArray(e)){for(const t of e)this.addSchema(t,void 0,n,r);return this}let a;if("object"==typeof e){const{schemaId:t}=this.opts;if(a=e[t],void 0!==a&&"string"!=typeof a)throw new Error(`schema ${t} must be string`)}return t=(0,l.normalizeId)(t||a),this._checkUnique(t),this.schemas[t]=this._addSchema(e,n,t,r,!0),this}addMetaSchema(e,t,n=this.opts.validateSchema){return this.addSchema(e,t,!0,n),this}validateSchema(e,t){if("boolean"==typeof e)return!0;let n;if(n=e.$schema,void 0!==n&&"string"!=typeof n)throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;const r=this.validate(n,e);if(!r&&t){const e="schema is invalid: "+this.errorsText();if("log"!==this.opts.validateSchema)throw new Error(e);this.logger.error(e)}return r}getSchema(e){let t;for(;"string"==typeof(t=k.call(this,e));)e=t;if(void 0===t){const{schemaId:n}=this.opts,r=new i.SchemaEnv({schema:{},schemaId:n});if(t=i.resolveSchema.call(this,r,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{const t=k.call(this,e);return"object"==typeof t&&this._cache.delete(t.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{const t=e;this._cache.delete(t);let n=e[this.opts.schemaId];return n&&(n=(0,l.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(const t of e)this.addKeyword(t);return this}addKeyword(e,t){let n;if("string"==typeof e)n=e,"object"==typeof t&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=n);else{if("object"!=typeof e||void 0!==t)throw new Error("invalid addKeywords parameters");if(n=(t=e).keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}if(A.call(this,n,t),!t)return(0,u.eachItem)(n,(e=>I.call(this,e))),this;L.call(this,t);const r={...t,type:(0,c.getJSONTypes)(t.type),schemaType:(0,c.getJSONTypes)(t.schemaType)};return(0,u.eachItem)(n,0===r.type.length?e=>I.call(this,e,r):e=>r.type.forEach((t=>I.call(this,e,r,t)))),this}getKeyword(e){const t=this.RULES.all[e];return"object"==typeof t?t.definition:!!t}removeKeyword(e){const{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(const n of t.rules){const t=n.rules.findIndex((t=>t.keyword===e));t>=0&&n.rules.splice(t,1)}return this}addFormat(e,t){return"string"==typeof t&&(t=new RegExp(t)),this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:n="data"}={}){return e&&0!==e.length?e.map((e=>`${n}${e.instancePath} ${e.message}`)).reduce(((e,n)=>e+t+n)):"No errors"}$dataMetaSchema(e,t){const n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(const r of t){const t=r.split("/").slice(1);let a=e;for(const e of t)a=a[e];for(const e in n){const t=n[e];if("object"!=typeof t)continue;const{$data:r}=t.definition,o=a[e];r&&o&&(a[e]=R(o))}}return e}_removeAllSchemas(e,t){for(const n in e){const r=e[n];t&&!t.test(n)||("string"==typeof r?delete e[n]:r&&!r.meta&&(this._cache.delete(r.schema),delete e[n]))}}_addSchema(e,t,n,r=this.opts.validateSchema,a=this.opts.addUsedSchema){let o;const{schemaId:s}=this.opts;if("object"==typeof e)o=e[s];else{if(this.opts.jtd)throw new Error("schema must be object");if("boolean"!=typeof e)throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(void 0!==c)return c;n=(0,l.normalizeId)(o||n);const u=l.getSchemaRefs.call(this,e,n);return c=new i.SchemaEnv({schema:e,schemaId:s,meta:t,baseId:n,localRefs:u}),this._cache.set(c.schema,c),a&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),r&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):i.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){const t=this.opts;this.opts=this._metaOpts;try{i.compileSchema.call(this,e)}finally{this.opts=t}}}function w(e,t,n,r="error"){for(const a in e){const o=a;o in t&&this.logger[r](`${n}: option ${a}. ${e[o]}`)}}function k(e){return e=(0,l.normalizeId)(e),this.schemas[e]||this.refs[e]}function $(){const e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(const t in e)this.addSchema(e[t],t)}function S(){for(const e in this.opts.formats){const t=this.opts.formats[e];t&&this.addFormat(e,t)}}function E(e){if(Array.isArray(e))this.addVocabulary(e);else{this.logger.warn("keywords option as map is deprecated, pass array");for(const t in e){const n=e[t];n.keyword||(n.keyword=t),this.addKeyword(n)}}}function x(){const e={...this.opts};for(const t of f)delete e[t];return e}v.ValidationError=r.default,v.MissingRefError=a.default,e.default=v;const P={log(){},warn(){},error(){}};const _=/^[a-z_$][a-z0-9_$:-]*$/i;function A(e,t){const{RULES:n}=this;if((0,u.eachItem)(e,(e=>{if(n.keywords[e])throw new Error(`Keyword ${e} is already defined`);if(!_.test(e))throw new Error(`Keyword ${e} has invalid name`)})),t&&t.$data&&!("code"in t)&&!("validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function I(e,t,n){var r;const a=null==t?void 0:t.post;if(n&&a)throw new Error('keyword with "post" flag cannot have "type"');const{RULES:o}=this;let i=a?o.post:o.rules.find((({type:e})=>e===n));if(i||(i={type:n,rules:[]},o.rules.push(i)),o.keywords[e]=!0,!t)return;const s={keyword:e,definition:{...t,type:(0,c.getJSONTypes)(t.type),schemaType:(0,c.getJSONTypes)(t.schemaType)}};t.before?T.call(this,i,s,t.before):i.rules.push(s),o.all[e]=s,null===(r=t.implements)||void 0===r||r.forEach((e=>this.addKeyword(e)))}function T(e,t,n){const r=e.rules.findIndex((e=>e.keyword===n));r>=0?e.rules.splice(r,0,t):(e.rules.push(t),this.logger.warn(`rule ${n} is not defined`))}function L(e){let{metaSchema:t}=e;void 0!==t&&(e.$data&&this.opts.$data&&(t=R(t)),e.validateSchema=this.compile(t,!0))}const C={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function R(e){return{anyOf:[e,C]}}}(Xf);var pb={},mb={},fb={};Object.defineProperty(fb,"__esModule",{value:!0});const hb={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};fb.default=hb;var yb={};Object.defineProperty(yb,"__esModule",{value:!0}),yb.callRef=yb.getValidate=void 0;const gb=ug,bb=Zh,vb=eh,wb=gh,kb=mg,$b=rh,Sb={keyword:"$ref",schemaType:"string",code(e){const{gen:t,schema:n,it:r}=e,{baseId:a,schemaEnv:o,validateName:i,opts:s,self:l}=r,{root:c}=o;if(("#"===n||"#/"===n)&&a===c.baseId)return function(){if(o===c)return xb(e,i,o,o.$async);const n=t.scopeValue("root",{ref:c});return xb(e,vb._`${n}.validate`,c,c.$async)}();const u=kb.resolveRef.call(l,c,a,n);if(void 0===u)throw new gb.default(r.opts.uriResolver,a,n);return u instanceof kb.SchemaEnv?function(t){const n=Eb(e,t);xb(e,n,t,t.$async)}(u):function(r){const a=t.scopeValue("schema",!0===s.code.source?{ref:r,code:(0,vb.stringify)(r)}:{ref:r}),o=t.name("valid"),i=e.subschema({schema:r,dataTypes:[],schemaPath:vb.nil,topSchemaRef:a,errSchemaPath:n},o);e.mergeEvaluated(i),e.ok(o)}(u)}};function Eb(e,t){const{gen:n}=e;return t.validate?n.scopeValue("validate",{ref:t.validate}):vb._`${n.scopeValue("wrapper",{ref:t})}.validate`}function xb(e,t,n,r){const{gen:a,it:o}=e,{allErrors:i,schemaEnv:s,opts:l}=o,c=l.passContext?wb.default.this:vb.nil;function u(e){const t=vb._`${e}.errors`;a.assign(wb.default.vErrors,vb._`${wb.default.vErrors} === null ? ${t} : ${wb.default.vErrors}.concat(${t})`),a.assign(wb.default.errors,vb._`${wb.default.vErrors}.length`)}function d(e){var t;if(!o.opts.unevaluated)return;const r=null===(t=null==n?void 0:n.validate)||void 0===t?void 0:t.evaluated;if(!0!==o.props)if(r&&!r.dynamicProps)void 0!==r.props&&(o.props=$b.mergeEvaluated.props(a,r.props,o.props));else{const t=a.var("props",vb._`${e}.evaluated.props`);o.props=$b.mergeEvaluated.props(a,t,o.props,vb.Name)}if(!0!==o.items)if(r&&!r.dynamicItems)void 0!==r.items&&(o.items=$b.mergeEvaluated.items(a,r.items,o.items));else{const t=a.var("items",vb._`${e}.evaluated.items`);o.items=$b.mergeEvaluated.items(a,t,o.items,vb.Name)}}r?function(){if(!s.$async)throw new Error("async schema referenced by sync schema");const n=a.let("valid");a.try((()=>{a.code(vb._`await ${(0,bb.callValidateCode)(e,t,c)}`),d(t),i||a.assign(n,!0)}),(e=>{a.if(vb._`!(${e} instanceof ${o.ValidationError})`,(()=>a.throw(e))),u(e),i||a.assign(n,!1)})),e.ok(n)}():e.result((0,bb.callValidateCode)(e,t,c),(()=>d(t)),(()=>u(t)))}yb.getValidate=Eb,yb.callRef=xb,yb.default=Sb,Object.defineProperty(mb,"__esModule",{value:!0});const Pb=yb,_b=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",fb.default,Pb.default];mb.default=_b;var Ab={},Ib={};Object.defineProperty(Ib,"__esModule",{value:!0});const Tb=eh,Lb=Tb.operators,Cb={maximum:{okStr:"<=",ok:Lb.LTE,fail:Lb.GT},minimum:{okStr:">=",ok:Lb.GTE,fail:Lb.LT},exclusiveMaximum:{okStr:"<",ok:Lb.LT,fail:Lb.GTE},exclusiveMinimum:{okStr:">",ok:Lb.GT,fail:Lb.LTE}},Rb={message:({keyword:e,schemaCode:t})=>Tb.str`must be ${Cb[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Tb._`{comparison: ${Cb[e].okStr}, limit: ${t}}`},jb={keyword:Object.keys(Cb),type:"number",schemaType:"number",$data:!0,error:Rb,code(e){const{keyword:t,data:n,schemaCode:r}=e;e.fail$data(Tb._`${n} ${Cb[t].fail} ${r} || isNaN(${n})`)}};Ib.default=jb;var Nb={};Object.defineProperty(Nb,"__esModule",{value:!0});const Ob=eh,Fb={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:{message:({schemaCode:e})=>Ob.str`must be multiple of ${e}`,params:({schemaCode:e})=>Ob._`{multipleOf: ${e}}`},code(e){const{gen:t,data:n,schemaCode:r,it:a}=e,o=a.opts.multipleOfPrecision,i=t.let("res"),s=o?Ob._`Math.abs(Math.round(${i}) - ${i}) > 1e-${o}`:Ob._`${i} !== parseInt(${i})`;e.fail$data(Ob._`(${r} === 0 || (${i} = ${n}/${r}, ${s}))`)}};Nb.default=Fb;var Mb={},Hb={};function Bb(e){const t=e.length;let n,r=0,a=0;for(;a<t;)r++,n=e.charCodeAt(a++),n>=55296&&n<=56319&&a<t&&(n=e.charCodeAt(a),56320==(64512&n)&&a++);return r}Object.defineProperty(Hb,"__esModule",{value:!0}),Hb.default=Bb,Bb.code='require("ajv/dist/runtime/ucs2length").default',Object.defineProperty(Mb,"__esModule",{value:!0});const qb=eh,Db=rh,zb=Hb,Vb={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:{message:({keyword:e,schemaCode:t})=>qb.str`must NOT have ${"maxLength"===e?"more":"fewer"} than ${t} characters`,params:({schemaCode:e})=>qb._`{limit: ${e}}`},code(e){const{keyword:t,data:n,schemaCode:r,it:a}=e,o="maxLength"===t?qb.operators.GT:qb.operators.LT,i=!1===a.opts.unicode?qb._`${n}.length`:qb._`${(0,Db.useFunc)(e.gen,zb.default)}(${n})`;e.fail$data(qb._`${i} ${o} ${r}`)}};Mb.default=Vb;var Wb={};Object.defineProperty(Wb,"__esModule",{value:!0});const Ub=Zh,Gb=eh,Kb={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:{message:({schemaCode:e})=>Gb.str`must match pattern "${e}"`,params:({schemaCode:e})=>Gb._`{pattern: ${e}}`},code(e){const{data:t,$data:n,schema:r,schemaCode:a,it:o}=e,i=o.opts.unicodeRegExp?"u":"",s=n?Gb._`(new RegExp(${a}, ${i}))`:(0,Ub.usePattern)(e,r);e.fail$data(Gb._`!${s}.test(${t})`)}};Wb.default=Kb;var Zb={};Object.defineProperty(Zb,"__esModule",{value:!0});const Xb=eh,Jb={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:{message:({keyword:e,schemaCode:t})=>Xb.str`must NOT have ${"maxProperties"===e?"more":"fewer"} than ${t} properties`,params:({schemaCode:e})=>Xb._`{limit: ${e}}`},code(e){const{keyword:t,data:n,schemaCode:r}=e,a="maxProperties"===t?Xb.operators.GT:Xb.operators.LT;e.fail$data(Xb._`Object.keys(${n}).length ${a} ${r}`)}};Zb.default=Jb;var Yb={};Object.defineProperty(Yb,"__esModule",{value:!0});const Qb=Zh,ev=eh,tv=rh,nv={keyword:"required",type:"object",schemaType:"array",$data:!0,error:{message:({params:{missingProperty:e}})=>ev.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>ev._`{missingProperty: ${e}}`},code(e){const{gen:t,schema:n,schemaCode:r,data:a,$data:o,it:i}=e,{opts:s}=i;if(!o&&0===n.length)return;const l=n.length>=s.loopRequired;if(i.allErrors?function(){if(l||o)e.block$data(ev.nil,c);else for(const t of n)(0,Qb.checkReportMissingProp)(e,t)}():function(){const i=t.let("missing");if(l||o){const n=t.let("valid",!0);e.block$data(n,(()=>function(n,o){e.setParams({missingProperty:n}),t.forOf(n,r,(()=>{t.assign(o,(0,Qb.propertyInData)(t,a,n,s.ownProperties)),t.if((0,ev.not)(o),(()=>{e.error(),t.break()}))}),ev.nil)}(i,n))),e.ok(n)}else t.if((0,Qb.checkMissingProp)(e,n,i)),(0,Qb.reportMissingProp)(e,i),t.else()}(),s.strictRequired){const t=e.parentSchema.properties,{definedProperties:r}=e.it;for(const e of n)if(void 0===(null==t?void 0:t[e])&&!r.has(e)){const t=`required property "${e}" is not defined at "${i.schemaEnv.baseId+i.errSchemaPath}" (strictRequired)`;(0,tv.checkStrictMode)(i,t,i.opts.strictRequired)}}function c(){t.forOf("prop",r,(n=>{e.setParams({missingProperty:n}),t.if((0,Qb.noPropertyInData)(t,a,n,s.ownProperties),(()=>e.error()))}))}}};Yb.default=nv;var rv={};Object.defineProperty(rv,"__esModule",{value:!0});const av=eh,ov={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:{message:({keyword:e,schemaCode:t})=>av.str`must NOT have ${"maxItems"===e?"more":"fewer"} than ${t} items`,params:({schemaCode:e})=>av._`{limit: ${e}}`},code(e){const{keyword:t,data:n,schemaCode:r}=e,a="maxItems"===t?av.operators.GT:av.operators.LT;e.fail$data(av._`${n}.length ${a} ${r}`)}};rv.default=ov;var iv={},sv={};Object.defineProperty(sv,"__esModule",{value:!0});const lv=hy;lv.code='require("ajv/dist/runtime/equal").default',sv.default=lv,Object.defineProperty(iv,"__esModule",{value:!0});const cv=xh,uv=eh,dv=rh,pv=sv,mv={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:{message:({params:{i:e,j:t}})=>uv.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>uv._`{i: ${e}, j: ${t}}`},code(e){const{gen:t,data:n,$data:r,schema:a,parentSchema:o,schemaCode:i,it:s}=e;if(!r&&!a)return;const l=t.let("valid"),c=o.items?(0,cv.getSchemaTypes)(o.items):[];function u(r,a){const o=t.name("item"),i=(0,cv.checkDataTypes)(c,o,s.opts.strictNumbers,cv.DataType.Wrong),u=t.const("indices",uv._`{}`);t.for(uv._`;${r}--;`,(()=>{t.let(o,uv._`${n}[${r}]`),t.if(i,uv._`continue`),c.length>1&&t.if(uv._`typeof ${o} == "string"`,uv._`${o} += "_"`),t.if(uv._`typeof ${u}[${o}] == "number"`,(()=>{t.assign(a,uv._`${u}[${o}]`),e.error(),t.assign(l,!1).break()})).code(uv._`${u}[${o}] = ${r}`)}))}function d(r,a){const o=(0,dv.useFunc)(t,pv.default),i=t.name("outer");t.label(i).for(uv._`;${r}--;`,(()=>t.for(uv._`${a} = ${r}; ${a}--;`,(()=>t.if(uv._`${o}(${n}[${r}], ${n}[${a}])`,(()=>{e.error(),t.assign(l,!1).break(i)}))))))}e.block$data(l,(function(){const r=t.let("i",uv._`${n}.length`),a=t.let("j");e.setParams({i:r,j:a}),t.assign(l,!0),t.if(uv._`${r} > 1`,(()=>(c.length>0&&!c.some((e=>"object"===e||"array"===e))?u:d)(r,a)))}),uv._`${i} === false`),e.ok(l)}};iv.default=mv;var fv={};Object.defineProperty(fv,"__esModule",{value:!0});const hv=eh,yv=rh,gv=sv,bv={keyword:"const",$data:!0,error:{message:"must be equal to constant",params:({schemaCode:e})=>hv._`{allowedValue: ${e}}`},code(e){const{gen:t,data:n,$data:r,schemaCode:a,schema:o}=e;r||o&&"object"==typeof o?e.fail$data(hv._`!${(0,yv.useFunc)(t,gv.default)}(${n}, ${a})`):e.fail(hv._`${o} !== ${n}`)}};fv.default=bv;var vv={};Object.defineProperty(vv,"__esModule",{value:!0});const wv=eh,kv=rh,$v=sv,Sv={keyword:"enum",schemaType:"array",$data:!0,error:{message:"must be equal to one of the allowed values",params:({schemaCode:e})=>wv._`{allowedValues: ${e}}`},code(e){const{gen:t,data:n,$data:r,schema:a,schemaCode:o,it:i}=e;if(!r&&0===a.length)throw new Error("enum must have non-empty array");const s=a.length>=i.opts.loopEnum;let l;const c=()=>null!=l?l:l=(0,kv.useFunc)(t,$v.default);let u;if(s||r)u=t.let("valid"),e.block$data(u,(function(){t.assign(u,!1),t.forOf("v",o,(e=>t.if(wv._`${c()}(${n}, ${e})`,(()=>t.assign(u,!0).break()))))}));else{if(!Array.isArray(a))throw new Error("ajv implementation error");const e=t.const("vSchema",o);u=(0,wv.or)(...a.map(((t,r)=>function(e,t){const r=a[t];return"object"==typeof r&&null!==r?wv._`${c()}(${n}, ${e}[${t}])`:wv._`${n} === ${r}`}(e,r))))}e.pass(u)}};vv.default=Sv,Object.defineProperty(Ab,"__esModule",{value:!0});const Ev=Nb,xv=Mb,Pv=Wb,_v=Zb,Av=Yb,Iv=rv,Tv=iv,Lv=fv,Cv=vv,Rv=[Ib.default,Ev.default,xv.default,Pv.default,_v.default,Av.default,Iv.default,Tv.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Lv.default,Cv.default];Ab.default=Rv;var jv={},Nv={};Object.defineProperty(Nv,"__esModule",{value:!0}),Nv.validateAdditionalItems=void 0;const Ov=eh,Fv=rh,Mv={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:{message:({params:{len:e}})=>Ov.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Ov._`{limit: ${e}}`},code(e){const{parentSchema:t,it:n}=e,{items:r}=t;Array.isArray(r)?Hv(e,r):(0,Fv.checkStrictMode)(n,'"additionalItems" is ignored when "items" is not an array of schemas')}};function Hv(e,t){const{gen:n,schema:r,data:a,keyword:o,it:i}=e;i.items=!0;const s=n.const("len",Ov._`${a}.length`);if(!1===r)e.setParams({len:t.length}),e.pass(Ov._`${s} <= ${t.length}`);else if("object"==typeof r&&!(0,Fv.alwaysValidSchema)(i,r)){const r=n.var("valid",Ov._`${s} <= ${t.length}`);n.if((0,Ov.not)(r),(()=>function(r){n.forRange("i",t.length,s,(t=>{e.subschema({keyword:o,dataProp:t,dataPropType:Fv.Type.Num},r),i.allErrors||n.if((0,Ov.not)(r),(()=>n.break()))}))}(r))),e.ok(r)}}Nv.validateAdditionalItems=Hv,Nv.default=Mv;var Bv={},qv={};Object.defineProperty(qv,"__esModule",{value:!0}),qv.validateTuple=void 0;const Dv=eh,zv=rh,Vv=Zh,Wv={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){const{schema:t,it:n}=e;if(Array.isArray(t))return Uv(e,"additionalItems",t);n.items=!0,(0,zv.alwaysValidSchema)(n,t)||e.ok((0,Vv.validateArray)(e))}};function Uv(e,t,n=e.schema){const{gen:r,parentSchema:a,data:o,keyword:i,it:s}=e;!function(e){const{opts:r,errSchemaPath:a}=s,o=n.length,l=o===e.minItems&&(o===e.maxItems||!1===e[t]);if(r.strictTuples&&!l){const e=`"${i}" is ${o}-tuple, but minItems or maxItems/${t} are not specified or different at path "${a}"`;(0,zv.checkStrictMode)(s,e,r.strictTuples)}}(a),s.opts.unevaluated&&n.length&&!0!==s.items&&(s.items=zv.mergeEvaluated.items(r,n.length,s.items));const l=r.name("valid"),c=r.const("len",Dv._`${o}.length`);n.forEach(((t,n)=>{(0,zv.alwaysValidSchema)(s,t)||(r.if(Dv._`${c} > ${n}`,(()=>e.subschema({keyword:i,schemaProp:n,dataProp:n},l))),e.ok(l))}))}qv.validateTuple=Uv,qv.default=Wv,Object.defineProperty(Bv,"__esModule",{value:!0});const Gv=qv,Kv={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,Gv.validateTuple)(e,"items")};Bv.default=Kv;var Zv={};Object.defineProperty(Zv,"__esModule",{value:!0});const Xv=eh,Jv=rh,Yv=Zh,Qv=Nv,ew={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:e}})=>Xv.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Xv._`{limit: ${e}}`},code(e){const{schema:t,parentSchema:n,it:r}=e,{prefixItems:a}=n;r.items=!0,(0,Jv.alwaysValidSchema)(r,t)||(a?(0,Qv.validateAdditionalItems)(e,a):e.ok((0,Yv.validateArray)(e)))}};Zv.default=ew;var tw={};Object.defineProperty(tw,"__esModule",{value:!0});const nw=eh,rw=rh,aw={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:{message:({params:{min:e,max:t}})=>void 0===t?nw.str`must contain at least ${e} valid item(s)`:nw.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>void 0===t?nw._`{minContains: ${e}}`:nw._`{minContains: ${e}, maxContains: ${t}}`},code(e){const{gen:t,schema:n,parentSchema:r,data:a,it:o}=e;let i,s;const{minContains:l,maxContains:c}=r;o.opts.next?(i=void 0===l?1:l,s=c):i=1;const u=t.const("len",nw._`${a}.length`);if(e.setParams({min:i,max:s}),void 0===s&&0===i)return void(0,rw.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');if(void 0!==s&&i>s)return(0,rw.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),void e.fail();if((0,rw.alwaysValidSchema)(o,n)){let t=nw._`${u} >= ${i}`;return void 0!==s&&(t=nw._`${t} && ${u} <= ${s}`),void e.pass(t)}o.items=!0;const d=t.name("valid");function p(){const e=t.name("_valid"),n=t.let("count",0);m(e,(()=>t.if(e,(()=>function(e){t.code(nw._`${e}++`),void 0===s?t.if(nw._`${e} >= ${i}`,(()=>t.assign(d,!0).break())):(t.if(nw._`${e} > ${s}`,(()=>t.assign(d,!1).break())),1===i?t.assign(d,!0):t.if(nw._`${e} >= ${i}`,(()=>t.assign(d,!0))))}(n)))))}function m(n,r){t.forRange("i",0,u,(t=>{e.subschema({keyword:"contains",dataProp:t,dataPropType:rw.Type.Num,compositeRule:!0},n),r()}))}void 0===s&&1===i?m(d,(()=>t.if(d,(()=>t.break())))):0===i?(t.let(d,!0),void 0!==s&&t.if(nw._`${a}.length > 0`,p)):(t.let(d,!1),p()),e.result(d,(()=>e.reset()))}};tw.default=aw;var ow={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.validateSchemaDeps=e.validatePropertyDeps=e.error=void 0;const t=eh,n=rh,r=Zh;e.error={message:({params:{property:e,depsCount:n,deps:r}})=>t.str`must have ${1===n?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:n,deps:r,missingProperty:a}})=>t._`{property: ${e},