(function(c){functionk(a){returna.replace(/^\s+|\s+$/g,"")}functionn(){if(!c.publishableKey)throw"No Publishable API Key: Call Stripe.setPublishableKey to provide your key.";}vard=null,l={};typeofwindow!=="undefined"&&!window.JSON&&(window.JSON={});(function(){if(typeofJSON.parse!=="function")JSON.parse=function(a,b){functiond(a,e){varc,h,f=a[e];if(f&&typeoff==="object")for(cinf)Object.hasOwnProperty.call(f,c)&&(h=d(f,c),h!==void0?f[c]=h:deletef[c]);returnb.call(a,e,f)}vare=RegExp("[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]",
c()};b.attachEvent?b.attachEvent("onload",i):b.onload=i;a.appendChild(b)}functionc(){if(d){varb=o.length;if(b>0){for(vare=0;e<b;++e){vari=o[e].message,r=i.id;h[r]=o[e].callback;a.postMessage(i,j.apiURL,q,d);f[r]=window.setTimeout(function(a){h[a](504,{error:{message:"There was an error processing your card"}});deleteh[a];deletef[a]},6E4,r)}o=[]}}}if(typeofa==="undefined"){vara={},e=function(a){if(typeofa==="undefined"){vara={},b=function(){vara={};a.serialize=function(b,e){vard=[],c;for(cinb)if(b.hasOwnProperty(c)){varu=
e}vard=null,o=[],l=0,h={},f={},k=!1,m,q,j={apiURL:"https://api.stripe.com",onMessage:function(a){varb=a.id,c=null,c=a.response===null||a.response===""?{error:{message:"There was an error processing your card"}}:JSON.parse(a.response);h[b](parseInt(a.status),c);window.clearTimeout(f[b]);deleteh[b];deletef[b]}},n=!1,s=function(){b();n||(a.receiveMessage(j.onMessage,j.apiURL),n=!0)};j.init=function(){if(!m||!document.getElementById(m))typeofdocument!=="undefined"&&document&&document.body?s():typeofwindow!==
"undefined"&&window&&!k&&(window.addEventListener?window.addEventListener("load",s,!1):window.attachEvent&&window.attachEvent("onload",s)),k=!0};j.callAPI=function(a,b,d,e,f){if(a!=="POST"&&a!=="GET"&&a!=="DELETE")throw"You can only call the API with POST, GET or DELETE";j.init();varh=(l++).toString();o.push({message:{id:h,method:a,url:"/v1/"+b,params:d,key:e},callback:f});c()};returnj};typeofl!=="undefined"?l=v():exports.createTransport=v;c.transport=l;c.validateCardNumber=function(a){vara=a.replace(/\s+|-/g,