var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

function isBHTestCard(n) {
  return ["341234567890127", "375000026600004", "375001000000005", "375001014000009", "6011010140000004", "5445840176552850", "5500000254444445", "5587755665222179", "5590409551104142", "5592106621450897", "5112000100000003", "5112000200000002", "5112000300000001", "5112000400000000", "5112000600000008", "5112000900000005", "5112002100000009", "5112002200000008", "5112010140000004", "5112010201000109", "5112010202000108", "5112010400000009", "5194560012341234", "5390016478904678", "4457010140000141", "4457010200000247", "4457012400000001", "4457013200000001", "4457119922390123", "4005550000081019", "4024720001231239", "4100200300012009", "4100200300013007", "4100200310000002", "4457000100000009", "445700020000008", "4457000300000007", "4457000400000006", "4457000800000002", "4457000900000001", "4457001000000008", "4457003100000003", "4000000000000001", "375001010000003", "6011010100000002", "5112010100000002", "4457010100000008"].indexOf(n) > -1;
}function abbrState(n, t) {
  if (t || (t = "abbr"), !n) return "";var u = n,
      r = [["AZ", "AZ"], ["AL", "AL"], ["AK", "AK"], ["AR", "AR"], ["CA", "CA"], ["CO", "CO"], ["CT", "CT"], ["DE", "DE"], ["FL", "FL"], ["GA", "GA"], ["HI", "HI"], ["ID", "ID"], ["IL", "IL"], ["IN", "IN"], ["IA", "IA"], ["KS", "KS"], ["KY", "KY"], ["LA", "LA"], ["ME", "ME"], ["MD", "MD"], ["MA", "MA"], ["MI", "MI"], ["MN", "MN"], ["MS", "MS"], ["MO", "MO"], ["MT", "MT"], ["NE", "NE"], ["NV", "NV"], ["NH", "NH"], ["NJ", "NJ"], ["NM", "NM"], ["NY", "NY"], ["NC", "NC"], ["ND", "ND"], ["OH", "OH"], ["OK", "OK"], ["OR", "OR"], ["PA", "PA"], ["RI", "RI"], ["SC", "SC"], ["SD", "SD"], ["TN", "TN"], ["TX", "TX"], ["UT", "UT"], ["VT", "VT"], ["VA", "VA"], ["WA", "WA"], ["WV", "WV"], ["WI", "WI"], ["WY", "WY"]];if (t == "abbr") {
    for (n = n.replace(/\w\S*/g, function (n) {
      return n.charAt(0).toUpperCase() + n.substr(1).toLowerCase();
    }), i = 0; i < r.length; i++) {
      if (r[i][0] == n) return r[i][1];
    }return u;
  }if (t == "name") {
    for (n = n.toUpperCase(), i = 0; i < r.length; i++) {
      if (r[i][1] == n) return r[i][0];
    }return u;
  }
}function roundEven(n) {
  return (n = n * 100, n % .5 != 0) ? Math.round(n) / 100 : Math.floor(n) % 2 == 0 ? Math.floor(n) / 100 : Math.round(n) / 100;
}function roundAwayFromZero(n) {
  return (n = n * 100, n % .5 != 0) ? Math.round(n) / 100 : Math.ceil(n) % 2 == 0 ? Math.ceil(n) / 100 : Math.round(n) / 100;
}var MNI, _MNIPayWidget, paymentProcessingUtils;!function (n, t) {
  "object" == (typeof exports === "undefined" ? "undefined" : _typeof(exports)) && "undefined" != typeof module ? t() : "function" == typeof define && define.amd ? define(t) : t();
}(0, function () {
  "use strict";
  function f(n) {
    var t = this.constructor;return this.then(function (i) {
      return t.resolve(n()).then(function () {
        return i;
      });
    }, function (i) {
      return t.resolve(n()).then(function () {
        return t.reject(i);
      });
    });
  }function e(n) {
    return !(!n || "undefined" == typeof n.length);
  }function h() {}function n(t) {
    if (!(this instanceof n)) throw new TypeError("Promises must be constructed via new");if ("function" != typeof t) throw new TypeError("not a function");this._state = 0;this._handled = !1;this._value = undefined;this._deferreds = [];s(t, this);
  }function o(i, u) {
    for (; 3 === i._state;) {
      i = i._value;
    }0 !== i._state ? (i._handled = !0, n._immediateFn(function () {
      var n = 1 === i._state ? u.onFulfilled : u.onRejected,
          f;if (null !== n) {
        try {
          f = n(i._value);
        } catch (e) {
          return void t(u.promise, e);
        }r(u.promise, f);
      } else (1 === i._state ? r : t)(u.promise, i._value);
    })) : i._deferreds.push(u);
  }function r(i, r) {
    try {
      if (r === i) throw new TypeError("A promise cannot be resolved with itself.");if (r && ("object" == (typeof r === "undefined" ? "undefined" : _typeof(r)) || "function" == typeof r)) {
        var f = r.then;if (r instanceof n) return i._state = 3, i._value = r, void u(i);if ("function" == typeof f) return void s(function (n, t) {
          return function () {
            n.apply(t, arguments);
          };
        }(f, r), i);
      }i._state = 1;i._value = r;u(i);
    } catch (e) {
      t(i, e);
    }
  }function t(n, t) {
    n._state = 2;n._value = t;u(n);
  }function u(t) {
    2 === t._state && 0 === t._deferreds.length && n._immediateFn(function () {
      t._handled || n._unhandledRejectionFn(t._value);
    });for (var i = 0, r = t._deferreds.length; r > i; i++) {
      o(t, t._deferreds[i]);
    }t._deferreds = null;
  }function s(n, i) {
    var u = !1;try {
      n(function (n) {
        u || (u = !0, r(i, n));
      }, function (n) {
        u || (u = !0, t(i, n));
      });
    } catch (f) {
      if (u) return;u = !0;t(i, f);
    }
  }var c = setTimeout,
      i;n.prototype["catch"] = function (n) {
    return this.then(null, n);
  };n.prototype.then = function (n, t) {
    var i = new this.constructor(h);return o(this, new function (n, t, i) {
      this.onFulfilled = "function" == typeof n ? n : null;this.onRejected = "function" == typeof t ? t : null;this.promise = i;
    }(n, t, i)), i;
  };n.prototype["finally"] = f;n.all = function (t) {
    return new n(function (n, i) {
      function f(t, u) {
        try {
          if (u && ("object" == (typeof u === "undefined" ? "undefined" : _typeof(u)) || "function" == typeof u)) {
            var e = u.then;if ("function" == typeof e) return void e.call(u, function (n) {
              f(t, n);
            }, i);
          }r[t] = u;0 == --o && n(r);
        } catch (s) {
          i(s);
        }
      }var r, o, u;if (!e(t)) return i(new TypeError("Promise.all accepts an array"));if (r = Array.prototype.slice.call(t), 0 === r.length) return n([]);for (o = r.length, u = 0; r.length > u; u++) {
        f(u, r[u]);
      }
    });
  };n.resolve = function (t) {
    return t && "object" == (typeof t === "undefined" ? "undefined" : _typeof(t)) && t.constructor === n ? t : new n(function (n) {
      n(t);
    });
  };n.reject = function (t) {
    return new n(function (n, i) {
      i(t);
    });
  };n.race = function (t) {
    return new n(function (i, r) {
      if (!e(t)) return r(new TypeError("Promise.race accepts an array"));for (var u = 0, f = t.length; f > u; u++) {
        n.resolve(t[u]).then(i, r);
      }
    });
  };n._immediateFn = "function" == typeof setImmediate && function (n) {
    setImmediate(n);
  } || function (n) {
    c(n, 0);
  };n._unhandledRejectionFn = function (n) {
    void 0 !== console && console && console.warn("Possible Unhandled Promise Rejection:", n);
  };i = function () {
    if ("undefined" != typeof self) return self;if ("undefined" != typeof window) return window;if ("undefined" != typeof global) return global;throw Error("unable to locate global object");
  }();"Promise" in i ? i.Promise.prototype["finally"] || (i.Promise.prototype["finally"] = f) : i.Promise = n;
});MNI = MNI || {};_MNIPayWidget = {}, function (n, t, i) {
  function e(n, t) {
    var i, r;n = n || {};for (i in t) {
      (r = t[i]) !== undefined && (n[i] = r);
    }return n;
  }function l(n, t) {
    n.className += " " + t;
  }function a(t, i, r) {
    var u = n.createElement(t);for (var f in i) {
      u.setAttribute(f, i[f]);
    }return r && l(u, r), u;
  }function o() {
    for (var u, i, f = n.getElementsByTagName("script"), r = 0; r < f.length; r++) {
      if (u = f[r], i = u.src.match(/^(https?:)?\/\/([^/]+)\/.+\/publicwidgets\/paymentwidget\.(min\.)?js/i), i) return { protocol: i[1] || t.location.protocol, domain: i[2] };
    }return {};
  }function v(t) {
    var i = n.createElement("link");i.setAttribute("rel", "stylesheet");i.setAttribute("href", t);n.getElementsByTagName("head")[0].appendChild(i);
  }function r(t, i) {
    var r = n.createElement("script");r.setAttribute("type", "text/javascript");r.setAttribute("src", t);r.setAttribute("async", !1);i && (r.onload = function () {
      i();
    }, r.onreadystatechange = function () {
      (this.readyState == "complete" || this.readyState == "loaded") && i();
    });n.getElementsByTagName("head")[0].appendChild(r);
  }function f(t) {
    var i = n.createElement("div");return i.innerHTML = t, i.childNodes.length === 0 ? "" : i.childNodes[0].nodeValue;
  }function s(i, r) {
    i = n.getElementById(i);r = e({ buttonText: "Pay Now", buttonClass: "btn btn-default", scheduledbillingsText: "Use for existing scheduled payments", confirmationMessage: null, membershipTerm: "membership", membershipsTerm: "memberships", orgTerm: "organization", capture: !0, paymentGatewayId: null, paymentGateways: null, contactId: null, purchasedByContactId: null, organizationId: null, hash: null, name: null, email: null, address1: null, address2: null, city: null, state: null, zip: null, country: null, phone: null, paymentProfileId: null, allowUseOfProfiles: !0, allowSavingCard: !1, allowBankPayments: !1, allowAddingBankAccounts: !1, filterCaptureOnlyPayMethods: !1, forceSaveCard: !1, forceAutopay: !1, showSaveCard: !1, onlySaveCard: !1, forceShowSaveCard: !1, deferCharges: !1, showScheduledBillings: !1, preSubmitFunction: null, allowUseShippingAddress: !1, shippingAddressGetCallback: null, trackOn: h.Organization, disableOrgSaveOnSCBilling: !1, widgetLoaded: null, widgetLoadFailed: this._showError, callback: null, purchases: null, cancelCallback: null, saveCardDisclaimer: "", saveCardDisclaimerNotAllowAutopayLaterChargeEnabled: "", allowPartialPayments: !0, hideSaveCardToOrg: !1, capturePaymentProfileAndChargeOnApproval: !1, allowPaymentProfileInAutoPayText: null, showAllowPaymentProfileInAutoPayCheckbox: !1, allowStripeLinkPayments: !0, payOnBehalfOfSomebodyElse: !1, stripeConnectPaymentMethodConfigId: null, stripeConnectOnlyAchPaymentMethodConfigId: null }, r);this._element = i;this._amount = r.amount;this._voluntaryAmount = r.voluntaryAmount;this._paymentGatewayId = r.paymentGatewayId;this._capture = r.capture;this._paymentGateways = r.paymentGateways;this._gatewayAmts = {};this._saleableItemAmounts = {};this._tokens = [];this._contactId = r.contactId;this._purchasedByContactId = r.purchasedByContactId;this._organizationId = r.organizationId;this._hash = r.hash;this._name = r.name;this._email = r.email;this._address1 = r.address1;this._address2 = r.address2;this._city = r.city;this._state = r.state;this._zip = r.zip;this._country = r.country;this._phone = r.phone;this._domain = r.domain;this._secure = r.secure;this._buttonText = r.buttonText;this._buttonClass = r.buttonClass;this._scheduledbillingsText = r.scheduledbillingsText;this._confirmationMessage = r.confirmationMessage;this._membershipTerm = r.membershipTerm;this._membershipsTerm = r.membershipsTerm;this._OrgTerm = r.orgTerm;this._trackOn = r.trackOn;this._disableOrgSaveOnSCBilling = r.disableOrgSaveOnSCBilling;this._contactNrdsMemberId = null;this._nrdsDefaultMemberId = null;this._saveCardText = r.saveCardText;this._allowPaymentProfileInAutoPayText = r.allowPaymentProfileInAutoPayText;this._showAllowPaymentProfileInAutoPayCheckbox = r.showAllowPaymentProfileInAutoPayCheckbox;this._chargeOnApprovalText = r.chargeOnApprovalText;this._capturePaymentProfileAndChargeOnApproval = r.capturePaymentProfileAndChargeOnApproval;this._saveCardDisclaimer = f(r.saveCardDisclaimer);this._saveCardDisclaimerNotAllowAutopayLaterChargeEnabled = f(r.saveCardDisclaimerNotAllowAutopayLaterChargeEnabled);this._styleTemplate = r.styleTemplate;this._allowUseOfProfiles = r.allowUseOfProfiles;this._allowSavingCard = r.allowSavingCard;this._forceSaveCard = r.forceSaveCard;this._forceAutopay = r.forceAutopay;this._showSaveCard = r.showSaveCard;this._forceShowSaveCard = r.forceShowSaveCard;t.deferCharges = this._deferCharges = r.deferCharges;this._filterCaptureOnlyPayMethods = r.filterCaptureOnlyPayMethods;this._allowBankPayments = r.allowBankPayments && !r.filterCaptureOnlyPayMethods;this._allowAddingBankAccounts = r.allowAddingBankAccounts && !r.filterCaptureOnlyPayMethods;this._useNewCard = !0;this._onlySaveCard = r.onlySaveCard;this._showScheduledBillings = r.showScheduledBillings;this._preventScheduledBillingsChange = r.preventScheduledBillingsChange;this._paymentProfileId = r.paymentProfileId;this._preSubmitFunction = r.preSubmitFunction;this._allowUseShippingAddress = r.allowUseShippingAddress;this._shippingAddressGetCallback = r.shippingAddressGetCallback;this._validateControls = r.validateControls;this._setOnlySaveCard = r.setOnlySaveCard;this._callback = r.callback;this._cancelCallback = r.cancelCallback;this._purchases = r.purchases;this._receivedAuthResponse = !1;this._IsTestBank = !1;this._widgetLoaded = r.widgetLoaded;this._widgetLoadFailed = r.widgetLoadFailed;this._authProfileDialog = null;this._payingByBank = !1;this._customEventStorage = [];this._stripeLoaded = !1;this._plaidLoaded = !1;this._allowPartialPayments = r.allowPartialPayments;this._affiniPayLoaded = !1;this._payFieldsLoaded = !1;this._affiniPayCCHostedFields = {};this._affiniPayACHHostedFields = {};this.create();this._hideSaveCardToOrg = r.hideSaveCardToOrg;this._processing = !1;this._recaptchaSiteKey = null;this._recaptchaToken = null;this._recaptchaLoaded = !1;this._useStripePaymentIntents = !1;this._saveForFutureChecked = !1;this._saveForFutureDisabled = !1;this._useForSb = !1;this._currentPaymentMethod = "card";this._clientSecret = null;this._stripeOnBehalfOf = null;this._allowStripeLinkPayments = r.allowStripeLinkPayments;this._currency = "";this._payOnBehalfOfSomebodyElse = r.payOnBehalfOfSomebodyElse;this._stripeConnectPaymentMethodConfigId = r.stripeConnectPaymentMethodConfigId;this._stripeConnectOnlyAchPaymentMethodConfigId = r.stripeConnectOnlyAchPaymentMethodConfigId;this._skipStripeRefresh = !1;this._allowStripeConnectOnlyAchPaymentMethodConfig = !1;
  }var b = !!t.CMS,
      y = null,
      p = i.Widgets || (i.Widgets = {}),
      k = i.Callbacks || (i.Callbacks = {}),
      h = { Individual: 1, Organization: 2 },
      c = t.addEventListener ? "addEventListener" : "attachEvent",
      w = t.removeEventListener ? "removeEventListener" : "detachEvent",
      d = t[c],
      g = t[w],
      u = c == "attachEvent" ? "onmessage" : "message";e(s.prototype, { _cache: {}, create: function create() {
      var n = this;typeof MMP != "undefined" && MMP.jQuery ? this.jQuery = MMP.jQuery : t.jQuery === undefined ? r("https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js", n.scriptLoadHandler()) : this.jQuery = t.jQuery;var i = !0;return t.Stripe === undefined ? (i = !1, r("https://js.stripe.com/v3/", function () {
        n.create();
      }), n) : (n._stripeLoaded = !0, t.Plaid === undefined ? (i = !1, r("https://cdn.plaid.com/link/v2/stable/link-initialize.js", function () {
        return n.create(), n;
      })) : n._plaidLoaded = !0, this.jQuery.ui || (v("https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css"), r("https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js")), i && n._render(), n);
    }, scriptLoadHandler: function scriptLoadHandler() {
      this.jQuery = t.jQuery.noConflict(!0);
    }, _findRecordByElement: function _findRecordByElement(n) {
      var t, r, i;var u = this;for (t = 0, r = u._customEventStorage.length; t < r; t++) {
        if (i = u._customEventStorage[t], n == i.element) return i;
      }return !1;
    }, _insertListener: function _insertListener(n, t, i, r) {
      var f = this;var u = f._findRecordByElement(n);u ? u.listeners[t] = u.listeners[t] || [] : (u = { element: n, listeners: {} }, u.listeners[t] = [], f._customEventStorage.push(u));u.listeners[t].push(i);n[n.addEventListener ? "addEventListener" : "attachEvent"](t, i, r);
    }, _listenerExists: function _listenerExists(n) {
      var i = this;var t = i._findRecordByElement(n);return t && t.listeners.message.length > 0 ? !0 : !1;
    }, _removeListener: function _removeListener(n, t, i, r) {
      var u, f;var e = this;u = e._findRecordByElement(n);u && t in u.listeners && (f = u.listeners[t].indexOf(i), ~f && u.listeners[t].splice(f, 1), u.listeners[t].length || delete u.listeners[t]);n[n.removeEventListener ? "removeEventListener" : "detachEvent"](t, i, r);
    }, _render: function _render() {
      var i = this,
          c = i.jQuery(this._element),
          t,
          l,
          e,
          o,
          s,
          r,
          u;if (i._payFieldsLoaded = !1, !i._processing) {
        t = "";t += '<div class="mn-widget-payment-widget">';t += "    <style>";t += "        .bank-warn {";t += "            margin-left: 75px;";t += "        }";t += "        .mn-widget-payment-widget .mn-gt-8-field iframe {";t += "            width: 100%;";t += "            line-height: 1.42857143;";t += "            border: 1px solid #ccc;";t += "            border-radius: 4px;";t += "            height: 34px;";t += "            font-size: 14px;";t += "        }";t += "    <\/style>";t += '    <div id="mn-payment-form-loading">';t += '        <img id="mn-payment-form-loading-spinner" src="https://cdnjs.cloudflare.com/ajax/libs/timelinejs/2.25/css/loading.gif" alt="Loading" />';t += "    <\/div>";t += '    <div id="mn-payment-form-error" class="mn-widget-error container alert alert-danger" style="display: none;"><\/div>';t += '    <div id="mn-payment-form" style="display: none">';t += "";t += '        <div id="mn-saved-cards">';t += '            <div class="mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-3-field mn-gt-6-field mn-gt-7-field mn-gt-8-field form-group mn-row row">';t += '                <div class="mn-gt-3-field mn-col-1 col-sm-1 text-center mn-auth-profile-radio" style="display: none;">';t += '                    <input type="radio" name="mn-auth-existing-profile" value="true" checked="checked" aria-label="Existing Profile">';t += "                <\/div>";t += '                <div class="mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-7-field mn-gt-8-field mn-col-3 col-sm-3">';t += '                    <label class="control-label">Saved Payment method<\/label>';t += "                <\/div>";t += '                <div class="mn-gt-3-field mn-col-3 col-sm-3">';t += '                    <label class="control-label">Use Stored Payment Profile<\/label>';t += "                <\/div>";t += '                <div class="mn-col-6 col-sm-6">';t += '                    <select id="mn-saved-profiles" class="form-control" aria-label="Saved Profiles">';t += '                        <option value="">New Payment Method<\/option>';t += "                    <\/select>";t += "                <\/div>";t += '                <div class="mn-col-2 col-sm-2" id="mn-verify-bank-btn-wrapper" style="display: none">';t += '                    <input type="button" class="form-control btn btn-default" id="mn-verify-bank-btn" value="Verify">';t += "                <\/div>";t += '                <div class="mn-col-2 col-sm-2" id="mn-stripe-verification-url-wrapper" style="display: none">';t += '                    <input type="button" class="form-control btn btn-default" id="mn-stripe-verification-url-btn" value="Verify">';t += "                <\/div>";t += '                <div class="mn-col-3 col-sm-3 mn-gt-3-field" style="display: none">';t += '                    <input type="button" class="form-control btn btn-default" id="mn-auth-profiles-manage-btn" disabled="disabled" value="Manage Profiles">';t += "                <\/div>";t += '                <div class="mn-col-12 col-sm-12 form-group mn-row row" id="mn-verify-bank-message-wrapper" style="margin-top: 15px; display: none">';t += '                    <label for="mn-verify-bank-message" class="control-label mn-col-12 col-sm-12 save-lbl" id="mn-verify-bank-message-lbl">After completing verification of a bank account, it could take a few minutes for the account to show as verified. <\/label>';t += "                <\/div>";t += "            <\/div>";t += "        <\/div>";t += "";t += '        <div class="mn-gt-3-field form-group mn-row row mn-auth-profile-radio" style="display: none">';t += '            <div class="mn-col-1 col-sm-1 text-center"><input type="radio" name="mn-auth-existing-profile" value="false" aria-label="Existing Profile"><\/div>';t += '            <div class="mn-col-9 col-sm-9"><label class="control-label">One-Time Payment<\/label><\/div>';t += "        <\/div>";t += "";t += '        <div id="mn-add-bank-wrapper" class="mn-col-12 col-sm-12 mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-7-field form-group mn-row row">';t += '            <div class="mn-col-3 col-sm-3"><\/div>';t += '            <div class="mn-col-8 col-sm-8">';t += '                <div class="mn-gt-1-field">';t += '                    <input type="button" class="btn btn-default" id=\'mn-plaid-btn\' value="Add Bank Account" />';t += '                    <small><a id="mn-show-manual-bank" href="javascript://">Click here if your bank is not listed...<\/a><\/small><br />';t += '                    <span style="position: relative; top: 6px;">Or Add Card Information Below<\/span>';t += "                <\/div>";t += '                <div class="mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-7-field mn-gt-8-field">';t += '                    <span style="margin-right: 10px;" id="mn-add-bank-or">Or<\/span>';t += '                    <input id="mn-add-bh-bank" type="button" class="btn btn-default mn-gt-4-field mn-gt-5-field" value="Add Bank Account" />';t += '                    <input type="button" class="btn btn-default mn-gt-6-field mn-gt-7-field mn-gt-8-field" id=\'mn-telecheck-btn\' value="Pay by Electronic Check" />';t += '                    <br /><span style="position: relative; top: 6px;" id="mn-or-add-card">Or Add Card Information Below<\/span>';t += "                <\/div>";t += "            <\/div>";t += "        <\/div>";t += "";t += '        <div id="mn-new-bank-info" style="display: none;" class="mn-col-12 col-sm-12">';t += '            <div id="mn-bank-errors" style="display: none;" class="mn-col-12 col-sm-12 container alert alert-danger">';t += "                Sorry an error occurred.";t += "            <\/div>";t += '            <div id="mn-bank-nar-error-804" class="form-group mn-row row" style="display: none;">';t += '                <div class="mn-col-12 col-sm-12 alert alert-info">';t += '                    <div><img class="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += "                    <h3>Sorry, TeleCheck Cannot Approve This Transaction<\/h3><br/>";t += "";t += "                    We are sorry that we cannot complete your transaction. Our decision was based, in part, on information provided by TeleCheck.<br/><br/>";t += "";t += "                    What is TeleCheck? TeleCheck provides payment acceptance, account screening, and fraud prevention services to both merchants and";t += "                    financial institutions by reporting on check writing histories. Please visit";t += '                    <a href="https://getassistance.telecheck.com/index.html" target="_blank">https://getassistance.telecheck.com/index.html<\/a> to learn more about TeleCheck.<br/><br/>';t += "";t += "                    Why does TeleCheck need personal information about you before we can assist you? The use of some types of personal information,";t += "                    including bank account details and/or a driver's license number, is needed to verify TeleCheck is communicating with the right person";t += "                    about the right records. TeleCheck may even request a social security number in order to locate and verify records reported by a bank or";t += "                    credit union. To a consumer worried about identity theft, this may seem like a lot to ask. However, TeleCheck only requests what is needed";t += "                    to ensure the accuracy of data.<br/><br/>";t += "";t += "                    You may have received a decline because of unpaid debt associated with your checking account. TeleCheck will issue a decline alert if it";t += "                    has at least one record in its files of unpaid debt associated with your bank account and/or personal information. This type of a decline";t += '                    code is referred to as a "Code 4 (804)". We encourage you to contact TeleCheck to learn more details about the information in its records';t += "                    and what you can do to resolve any issues related to your receipt of a Code 4 decline.<br/><br/>";t += "";t += "                    You may have received a risk-based decline. TeleCheck analyzes transactions to determine whether they appear to be potentially high risk to";t += '                    protect consumers, merchants, and financial institutions from fraud and losses. How did TeleCheck determine this "potential risk?"';t += "                    Through the use of modeling tools built on the detection of common characteristic groupings observed in past transactions, TeleCheck";t += "                    statistically determines the likelihood that a payment may return. So, while there may have been nothing wrong with your transaction,";t += "                    it had certain characteristics that made TeleCheck question it. Receiving a risk decline does not signify to you – or anyone else –";t += "                    that TeleCheck holds records of bad check writing history on you. And, it does not mean you do not have enough money in the bank to";t += "                    cover your payment. TeleCheck has no visibility into your bank account balance. And finally, it has absolutely no effect on your credit.";t += "                    These risk models provide critical protection against fraud. A Code 3 (805) is often the first alert a consumer receives that their account";t += "                    has been fraudulently compromised. Risk modeling also enables merchants to continue to safely accept their customers' checks by minimizing";t += "                    fraud-related losses, and controlled loss brings cost benefits to customers.<br/><br/>";t += "";t += "                    <b>To learn more:<\/b> You may call or write TeleCheck for further information. You will need to provide (1) the declined transaction's";t += "                    record number (if provided), (2) your driver's license number and its state of issuance (3) if applicable, the bank routing and account";t += "                    number you used for the declined transaction, and (4) your social security number (if the declined transaction was with a financial institution).<br/><br/>";t += "";t += "                    <b>Contact information:<\/b><br/>";t += "                    TeleCheck Services, Inc.<br/>";t += "                    ATTN: Resolutions Department P. O. Box 6806<br/>";t += "                    Hagerstown, MD 21741-6806 Tel: 1-800-366-2425<br/><br/>";t += "";t += '                    <a href="https://getassistance.telecheck.com/index.html" target="_blank">https://getassistance.telecheck.com/index.html<\/a>';t += "";t += "                    Under the Fair Credit Reporting Act: Consumers have the right to a free copy of their information held in TeleCheck's files for a period";t += "                    of 60 days following an adverse action. Consumers also may dispute the accuracy or completeness of any information in TeleCheck's consumer report.";t += "                    TeleCheck did not make the decision to take an adverse action (i.e., to not accept a payment or approve the opening of an account) and is";t += "                    unable to provide you with specific reasons as to why an adverse action was taken.";t += "                <\/div>";t += "            <\/div>";t += '            <div id="mn-bank-nar-error-805" class="form-group mn-row row" style="display: none;">';t += '                <div class="mn-col-12 col-sm-12 alert alert-info">';t += '                    <div><img class="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += "                    <h3>Sorry, TeleCheck Cannot Approve This Transaction<\/h3><br/>";t += "";t += "                    We are sorry that we cannot complete your transaction. Our decision was based, in part, on information provided by TeleCheck.<br/><br/>";t += "";t += "                    What is TeleCheck? TeleCheck provides payment acceptance, account screening, and fraud prevention services to both merchants and";t += "                    financial institutions by reporting on check writing histories. Please visit";t += '                    <a href="https://getassistance.telecheck.com/index.html" target="_blank">https://getassistance.telecheck.com/index.html<\/a> to learn more about TeleCheck.<br/><br/>';t += "";t += "                    Why does TeleCheck need personal information about you before we can assist you? The use of some types of personal information,";t += "                    including bank account details and/or a driver's license number, is needed to verify TeleCheck is communicating with the right person";t += "                    about the right records. TeleCheck may even request a social security number in order to locate and verify records reported by a bank or";t += "                    credit union. To a consumer worried about identity theft, this may seem like a lot to ask. However, TeleCheck only requests what is needed";t += "                    to ensure the accuracy of data.<br/><br/>";t += "";t += "                    You may have received a decline because of unpaid debt associated with your checking account. TeleCheck will issue a decline alert if it";t += "                    has at least one record in its files of unpaid debt associated with your bank account and/or personal information. This type of a decline";t += '                    code is referred to as a "Code 4 (804)". We encourage you to contact TeleCheck to learn more details about the information in its records';t += "                    and what you can do to resolve any issues related to your receipt of a Code 4 decline.<br/><br/>";t += "";t += "                    You may have received a risk-based decline. TeleCheck analyzes transactions to determine whether they appear to be potentially high risk to";t += '                    protect consumers, merchants, and financial institutions from fraud and losses. How did TeleCheck determine this "potential risk?"';t += "                    Through the use of modeling tools built on the detection of common characteristic groupings observed in past transactions, TeleCheck";t += "                    statistically determines the likelihood that a payment may return. So, while there may have been nothing wrong with your transaction,";t += "                    it had certain characteristics that made TeleCheck question it. Receiving a risk decline does not signify to you – or anyone else –";t += "                    that TeleCheck holds records of bad check writing history on you. And, it does not mean you do not have enough money in the bank to";t += "                    cover your payment. TeleCheck has no visibility into your bank account balance. And finally, it has absolutely no effect on your credit.";t += "                    These risk models provide critical protection against fraud. A Code 3 (805) is often the first alert a consumer receives that their account";t += "                    has been fraudulently compromised. Risk modeling also enables merchants to continue to safely accept their customers' checks by minimizing";t += "                    fraud-related losses, and controlled loss brings cost benefits to customers.<br/><br/>";t += "";t += "                    <b>To learn more:<\/b> You may call or write TeleCheck for further information. You will need to provide (1) the declined transaction's";t += "                    record number (if provided), (2) your driver's license number and its state of issuance (3) if applicable, the bank routing and account";t += "                    number you used for the declined transaction, and (4) your social security number (if the declined transaction was with a financial institution).<br/><br/>";t += "";t += "                    <b>Contact information:<\/b><br/>";t += "                    TeleCheck Services, Inc.<br/>";t += "                    ATTN: Resolutions Department P. O. Box 6806<br/>";t += "                    Hagerstown, MD 21741-6806 Tel: 1-800-366-2425<br/><br/>";t += "";t += '                    <a href="https://getassistance.telecheck.com/index.html" target="_blank">https://getassistance.telecheck.com/index.html<\/a>';t += "";t += "                    Under the Fair Credit Reporting Act: Consumers have the right to a free copy of their information held in TeleCheck's files for a period";t += "                    of 60 days following an adverse action. Consumers also may dispute the accuracy or completeness of any information in TeleCheck's consumer report.";t += "                    TeleCheck did not make the decision to take an adverse action (i.e., to not accept a payment or approve the opening of an account) and is";t += "                    unable to provide you with specific reasons as to why an adverse action was taken.";t += "                <\/div>";t += "            <\/div>";t += '            <div id="mn-bank-nar-error-807" class="form-group mn-row row" style="display: none;">';t += '                <div class="mn-col-12 col-sm-12 alert alert-info">';t += '                    <div><img class="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += "                    <h3>Data Entry Error<\/h3><br/>";t += "                    We are unable to process the information as entered. Please make certain that the information you entered is correct";t += "                    and submit it again, or select another payment method.";t += "                    <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row ro mn-gt-6-field"><img class="mn-pay-widget-telecheck" id="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-7-field mn-gt-8-field">';t += '                <label class="control-label mn-col-3 col-sm-3" for="mn-bank-account-holder-type">Bank Account Type<\/label>';t += '                <div class="mn-col-2 col-sm-2">';t += '                    <select name="mn-bank-account-holder-type" id="mn-bank-account-holder-type" class="form-control required">';t += '                        <option value="individual">Personal<\/option>';t += '                        <option value="company">Corporate<\/option>';t += "                    <\/select>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-gt-6-field form-group mn-row row mn-required" id="nar-bank-nrds-id-q">';t += '                <label for="nar-bank-member-id" class="control-label mn-col-3 col-sm-3">Do you have a NRDS Member Id<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <div class="mn-col-1 col-sm-1"><input type="radio" name="nar-bank-has-nrds-id" value="yes"aria-label="Yes NRDS Member Id"/>&nbsp;Yes<\/div>';t += '                    <div class="mn-col-1 col-sm-1"><input type="radio" name="nar-bank-has-nrds-id" value="no" aria-label="No NRDS Member Id"/>&nbsp;No<\/div>';t += '                    <div class="mn-col-10 col-sm-10"><input style="display: none;" type="text" name="nar-bank-member-id" id="nar-bank-member-id" class="form-control" value=""/><\/div>';t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-gt-6-field form-group mn-row row" id="mn-nar-bank-contribution-type-row">';t += '                <label for="nar-has-nrds-card-type" class="control-label mn-col-3 col-sm-3">Contribution Type<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <div class="mn-col-1 col-sm-1" style="min-width: 120px;">';t += '                        <input type="radio" name="nar-nrds-contribution-type" value="Personal" aria-label="Personal"/>&nbsp;Personal';t += "                    <\/div>";t += '                    <div class="mn-col-1 col-sm-1" style="min-width: 120px;">';t += '                        <input type="radio" name="nar-nrds-contribution-type" value="Corporate" aria-label="Corporate"/>&nbsp;Corporate';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-6-field mn-gt-8-field">';t += '                <label for="mn-bank-account-holder-name" class="control-label mn-col-3 col-sm-3">Account Holder Name<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-account-holder-name" id="mn-bank-account-holder-name" class="form-control required" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-4-field mn-gt-5-field mn-gt-7-field mn-gt-8-field mn-required">';t += '                <label for="mn-bank-account-holder-first-name" class="control-label mn-col-3 col-sm-3">First Name<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-account-holder-first-name" id="mn-bank-account-holder-first-name" class="form-control required" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-4-field mn-gt-5-field mn-gt-7-field mn-gt-8-field mn-required">';t += '                <label for="mn-bank-account-holder-last-name" class="control-label mn-col-3 col-sm-3">Last Name<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-account-holder-last-name" id="mn-bank-account-holder-last-name" class="form-control required" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-7-field mn-gt-8-field mn-required">';t += '                <label for="mn-bank-account-number" class="control-label mn-col-3 col-sm-3">Account Number<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-account-number" id="mn-bank-account-number" autocomplete="off" class="form-control required mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-7-field" />';t += '                    <div id="mn-affinipay-bank-account-number" class="required mn-gt-8-field"><\/div>';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-7-field mn-gt-8-field mn-required">';t += '                <label for="mn-bank-routing-number" class="control-label mn-col-3 col-sm-3">Routing Number<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-routing-number" id="mn-bank-routing-number" autocomplete="off" class="form-control required mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-7-field" />';t += '                    <div id="mn-affinipay-bank-routing-number" class="required mn-gt-8-field"><\/div>';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-6-field mn-required">';t += '                <label for="mn-bank-check-number" class="control-label mn-col-3 col-sm-3">Check Number<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" id="mn-bank-check-number" autocomplete="off" class="form-control required" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-6-field mn-required">';t += '                <label for="mn-bank-micr-number" class="control-label mn-col-3 col-sm-3">MICR Number<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" id="mn-bank-micr-number" autocomplete="off" class="form-control required" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-4-field mn-gt-5-field mn-gt-6-field">';t += '                <label for="mn-bank-email" class="control-label mn-col-3 col-sm-3">Email<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="text" name="mn-bank-email" id="mn-bank-email" class="form-control" maxlength="100" autocomplete="email" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-6-field mn-required">';t += '                <label for="mn-bank-drivers-license" class="control-label mn-col-3 col-sm-3">Drivers License Number/State<\/label>';t += '                <div class="mn-col-6 col-sm-6">';t += '                    <input type="text" id="mn-bank-drivers-license" class="form-control required"/>';t += "                <\/div>";t += '                <div class="mn-col-3 col-sm-3">';t += '                    <select class="form-control" name="mn-bank-drivers-license-state" id="mn-bank-drivers-license-state" autocomplete="address-level1" aria-label="Drivers License State">';t += '                        <option value="AL">AL<\/option>';t += '                        <option value="AK">AK<\/option>';t += '                        <option value="AZ">AZ<\/option>';t += '                        <option value="AR">AR<\/option>';t += '                        <option value="CA">CA<\/option>';t += '                        <option value="CO">CO<\/option>';t += '                        <option value="CT">CT<\/option>';t += '                        <option value="DE">DE<\/option>';t += '                        <option value="DC">DC<\/option>';t += '                        <option value="FL">FL<\/option>';t += '                        <option value="GA">GA<\/option>';t += '                        <option value="HI">HI<\/option>';t += '                        <option value="ID">ID<\/option>';t += '                        <option value="IL">IL<\/option>';t += '                        <option value="IN">IN<\/option>';t += '                        <option value="IA">IA<\/option>';t += '                        <option value="KS">KS<\/option>';t += '                        <option value="KY">KY<\/option>';t += '                        <option value="LA">LA<\/option>';t += '                        <option value="ME">ME<\/option>';t += '                        <option value="MD">MD<\/option>';t += '                        <option value="MA">MA<\/option>';t += '                        <option value="MI">MI<\/option>';t += '                        <option value="MN">MN<\/option>';t += '                        <option value="MS">MS<\/option>';t += '                        <option value="MO">MO<\/option>';t += '                        <option value="MT">MT<\/option>';t += '                        <option value="NE">NE<\/option>';t += '                        <option value="NV">NV<\/option>';t += '                        <option value="NH">NH<\/option>';t += '                        <option value="NJ">NJ<\/option>';t += '                        <option value="NM">NM<\/option>';t += '                        <option value="NY">NY<\/option>';t += '                        <option value="NC">NC<\/option>';t += '                        <option value="ND">ND<\/option>';t += '                        <option value="OH">OH<\/option>';t += '                        <option value="OK">OK<\/option>';t += '                        <option value="OR">OR<\/option>';t += '                        <option value="PA">PA<\/option>';t += '                        <option value="RI">RI<\/option>';t += '                        <option value="SC">SC<\/option>';t += '                        <option value="SD">SD<\/option>';t += '                        <option value="TN">TN<\/option>';t += '                        <option value="TX">TX<\/option>';t += '                        <option value="UT">UT<\/option>';t += '                        <option value="VT">VT<\/option>';t += '                        <option value="VA">VA<\/option>';t += '                        <option value="WA">WA<\/option>';t += '                        <option value="WV">WV<\/option>';t += '                        <option value="WI">WI<\/option>';t += '                        <option value="WY">WY<\/option>';t += "                    <\/select>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-6-field mn-required">';t += '                <label class="control-label mn-col-3 col-sm-3">Date of Birth<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <select class="form-control" style="width: 75px; display: inline;" id="mn-bank-dob-month" autocomplete="bday-month" aria-label="Month of Birth">';t += '                        <option value="01">1<\/option>';t += '                        <option value="02">2<\/option>';t += '                        <option value="03">3<\/option>';t += '                        <option value="04">4<\/option>';t += '                        <option value="05">5<\/option>';t += '                        <option value="06">6<\/option>';t += '                        <option value="07">7<\/option>';t += '                        <option value="08">8<\/option>';t += '                        <option value="09">9<\/option>';t += '                        <option value="10">10<\/option>';t += '                        <option value="11">11<\/option>';t += '                        <option value="12">12<\/option>';t += "                    <\/select>";t += '                    <select class="form-control" style="width: 75px; display: inline;" id="mn-bank-dob-day" autocomplete="bday-day" aria-label="Day of Birth">';t += '                        <option value="01">1<\/option>';t += '                        <option value="02">2<\/option>';t += '                        <option value="03">3<\/option>';t += '                        <option value="04">4<\/option>';t += '                        <option value="05">5<\/option>';t += '                        <option value="06">6<\/option>';t += '                        <option value="07">7<\/option>';t += '                        <option value="08">8<\/option>';t += '                        <option value="09">9<\/option>';t += '                        <option value="10">10<\/option>';t += '                        <option value="11">11<\/option>';t += '                        <option value="12">12<\/option>';t += '                        <option value="13">13<\/option>';t += '                        <option value="14">14<\/option>';t += '                        <option value="15">15<\/option>';t += '                        <option value="16">16<\/option>';t += '                        <option value="17">17<\/option>';t += '                        <option value="18">18<\/option>';t += '                        <option value="19">19<\/option>';t += '                        <option value="20">20<\/option>';t += '                        <option value="21">21<\/option>';t += '                        <option value="22">22<\/option>';t += '                        <option value="23">23<\/option>';t += '                        <option value="24">24<\/option>';t += '                        <option value="25">25<\/option>';t += '                        <option value="26">26<\/option>';t += '                        <option value="27">27<\/option>';t += '                        <option value="28">28<\/option>';t += '                        <option value="29">29<\/option>';t += '                        <option value="30">30<\/option>';t += '                        <option value="31">31<\/option>';t += "                    <\/select>";t += '                    <input type="text" class="form-control" style="width: 120px; display: inline;" id="mn-bank-dob-year" autocomplete="bday-year" aria-label="Year of Birth"/>';t += "                <\/div>";t += "            <\/div>";t += "";t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-4-field">';t += '                <label for="mn-bank-country" class="control-label mn-col-3 col-sm-3">Country<\/label>';t += '                <div class="mn-col-2 col-sm-2 expiry-wrapper">';t += '                    <select class="form-control required" name="mn-bank-country" id="mn-bank-country" autocomplete="country"><\/select>';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-1-field mn-gt-4-field">';t += '                <label for="mn-bank-currency" class="control-label mn-col-3 col-sm-3">Currency<\/label>';t += '                <div class="mn-col-2 col-sm-2 expiry-wrapper">';t += '                    <select class="form-control required" name="mn-bank-currency" id="mn-bank-currency" autocomplete="transaction-currency"><\/select>';t += "                <\/div>";t += "            <\/div>";t += '            <div class="form-group mn-row row mn-gt-4-field mn-gt-5-field mn-gt-7-field mn-gt-8-field">';t += '                <label for="mn-bank-is-savings" class="control-label mn-col-3 col-sm-3">Savings account<\/label>';t += '                <div class="mn-col-9 col-sm-9">';t += '                    <input type="checkbox" name="mn-bank-is-savings" id="mn-bank-is-savings" />';t += "                <\/div>";t += "            <\/div>";t += '            <div class="bank-warn form-group mn-row row mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-8-field" id="mn-bank-disclaimers">';t += '                <div class="col-sm-12 mn-gt-1-field">I authorize <span id="mn-bank-tenant-name"><\/span> to electronically debit my account and, if necessary, electronically credit my account to correct erroneous debits.<\/div>';t += '                <div class="col-sm-12 mn-gt-8-field" id="mn-bank-disclaimer"><\/div>';t += '                <div class="col-sm-12 mn-gt-4-field mn-gt-5-field">';t += "                    By submitting this request you verify you have read and agree to be bound by Billhighway's Terms and";t += "                    Conditions. Additionally, by completing this process you recognize you are making an electronic";t += "                    signature in accordance with the Uniform Electronic Signature Act and acknowledge that you";t += "                    understand you are authorizing an electronic debit of funds from your (or an authorized) checking";t += "                    account or credit card (payer) to Billhighway, a payment provider representing your group (payee). You";t += "                    acknowledge that this transaction may cause you to incur additional service charges from your bank or";t += "                    credit card provider. You also hereby authorize and accept full responsibility for any negligent claims,";t += "                    disputes, refunds or fraudulent use that may arise from your usage of this service.";t += "                <\/div>";t += '                <div class="col-sm-12 mn-gt-6-field">';t += "                    <b>Transaction Authorization:<\/b>";t += '                    Today, <span id="mn-e-check-date"><\/span>, I, <span id="mn-e-check-account"><\/span>, by entering my routing and account number below';t += '                    and clicking "I Authorize This Transaction," I authorize my payment in the amount indicated above to be processed as an electronic';t += "                    funds transfer (EFT) or draft drawn from my checking or savings account as indicated above and, if necessary, to have my account";t += "                    electronically credited to correct erroneous debits. I understand that my payment will be processed within 1 - 2 banking days.";t += "                    If the payment returns unpaid, I authorize you or your service provider to collect the payment and my state's return item fee and,";t += "                    if applicable, costs, by EFT(s) or draft(s) drawn from my account.";t += '                    <a href="http://www.firstdata.com/support/TeleCheck_returned_check/returned_check_fees.htm" target="_blank">Click here<\/a>';t += "                    to view your state's returned item fee and, if applicable, costs. I understand that this authorization will remain in full force";t += "                    and effect until I notify you that I wish to revoke it by calling my association to inquire on any refund policy and allow you";t += "                    reasonable opportunity to act on my notice. For more information on TeleCheck's process and privacy policy, see";t += '                    <a id="mn-e-check-faq-link" href="">Internet Check FAQ<\/a> and <a id="mn-telecheck-privacy-policy-link" href="">TeleCheck Privacy Policy<\/a>.';t += "                <\/div>";t += "                ";t += '            <div style="display: none" id="mn-e-check-faq" title="Internet Check FAQ">';t += '                <div class="container">';t += '                    <div><img class="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += "                    1. How is my check accepted over the Internet? An Internet check transaction is similar to a paper check transaction except";t += "                    that Internet checks are processed using the system banks use for electronic deposits and payments. This requires that you";t += "                    enter the full numbers imprinted on the bottom of your paper check (also known as the MICR numbers, which stands for magnetic";t += "                    ink character recognition). TeleCheck converts this information into an electronic item and then processes it through the Automated Clearing House (ACH).<br/><br/>";t += "";t += "                    2. What is the Automated Clearing House? The ACH Network has been in operation for more than 25 years and has proven to be a";t += "                    secure and economical payment system, processing billions of commercial transactions such as payroll deposits, insurance premiums";t += "                    and utility bill payments. Check transactions over the Internet are a natural extension of the capabilities of ACH.<br/><br/>";t += "";t += "                    3. How is the money being moved? Once your account information reaches TeleCheck, it is converted into a standard Automated";t += "                    Clearing House electronic funds transfer item, which is the same technology the ACH Network used to transfer more than $16.4";t += "                    trillion in electronic payments in 1998.<br/><br/>";t += "";t += "                    4. Are the funds immediately debited from my account? No. Consumers who authorize Internet check transactions will still enjoy";t += "                    the paper check benefit of the float. That's because the check is processed through the bank's electronic systems in about the";t += "                    same amount of time as a paper check.<br/><br/>";t += "";t += "                    5. How will an Internet check transaction appear on my bank statement? A complete description of the transaction will be included";t += "                    in your bank statement. This description will include most, if not all, of the following information: check number, merchant name,";t += "                    settlement date and check amount. This information appears on your statement where other electronic payments (such as direct payroll";t += "                    deposits and ATM transactions) are listed.<br/><br/>";t += "";t += "                    6. What happens if there is an error? Consumers must provide notice of the dispute or error to their bank no later than 60 days after";t += "                    their bank sends a statement on which the possible error is first reflected. The bank is then responsible for reviewing the dispute or error.<br/><br/>";t += "";t += "                    7. Is this process regulated and safe for consumers? Companies that process payments electronically (checks, credit cards, ATMs) must";t += "                    adhere to government-mandated guidelines. The electronic process is governed under Regulation E, which governs all electronic";t += "                    processing, including ATM and credit card transactions.<br/><br/>";t += "";t += "                    8. What happens if TeleCheck is unable to convert my check information into an electronic item? This happens in a very small";t += "                    percentage of cases and for various reasons. When the conversion cannot be made, TeleCheck prints a paper check draft with your";t += "                    account information and deposits it just like a regular check.";t += "                <\/div>";t += "            <\/div>";t += "                ";t += '                <div style="display: none" class="container" id="mn-telecheck-privacy-policy" title="TeleCheck Privacy Policy">';t += '                    <div class="container">';t += '                        <div><img class="mn-pay-widget-telecheck" src="" width="75" height="50" alt="TeleCheck"/><\/div>';t += "                        <h1><b>TeleCheck Online Privacy Statement<\/b><\/h1>";t += "";t += "                        <b>OUR COMMITMENT TO PRIVACY<\/b><br/>";t += "";t += "                        Protecting consumer privacy is very important to us. Our Online Privacy";t += "                        Statement is available to inform you about our collection and use of non-public personal information about consumers so that you,";t += "                        as a consumer, are aware of how your own non-public personal information is collected and used. We believe that information used";t += "                        responsibly benefits consumers and the economy, whether it is information we house on consumers conducting transactions or consumer";t += "                        information we collect on behalf of or from our customers. For example, we use consumer information every day to ensure fast and";t += "                        accurate approval and processing of payment transactions, including check and credit and debit card transactions.<br/>";t += "";t += "                        The policies outlined below guide us in the collection and use of non-public personal information as well as employee responsibilities";t += "                        in protecting your privacy. We use non-public personal information about consumers only in a manner consistent with these policies.";t += '                        TeleCheck is also a consumer reporting agency as defined in the Fair Credit Reporting Act ("FCRA"), a federal law enacted to protect';t += "                        consumers from inappropriate use of certain of their personal information. In addition to TeleCheck's own privacy policy, TeleCheck's";t += "                        use of certain personal information about consumers is also subject to the requirements of the FCRA.<br/><br/>";t += "";t += "";t += "                        <b>COLLECTION OF INFORMATION<\/b><br/>";t += "";t += "                        TeleCheck collects personal information about consumers in order to offer or provide fee items to consumers and our";t += "                        customers. The types of information TeleCheck collects include:<br/>";t += "";t += "                        Application information, including assets and income and credit and debit card and bank account information.";t += "                        Identifying information, including name, telephone number, street and/or email address, and social, driver's license or other";t += "                        identification numbers or data.";t += "                        Transaction information, including account balance, payment history, nonpayment history, collection history, parties to the transaction,";t += "                        time, date, location and dollar amount of transaction and check, debit and credit card usage and account information.";t += "                        Consumer Report information, including credit worthiness, credit standing, credit capacity, character, general reputation, personal";t += "                        characteristics, and mode of living.";t += "                        We may obtain this information from a variety of sources including:<br/>";t += "";t += "                        From consumers, including from consumer applications, questionnaires and other materials submitted directly or indirectly to us";t += "                        by consumers or our customers;";t += "                        From transactions and interactions in which TeleCheck and consumers, or our customers, affiliates or others and consumers are involved; and";t += "                        From a variety of third-party sources, such as our business customers, government repositories (including public record data), privately";t += "                        owned repositories, consumer reporting agencies and financial institutions.<br/><br/>";t += "";t += "                        <b>DISCLOSURE OF INFORMATION<\/b><br/>";t += "";t += "                        TeleCheck does not disclose nonpublic personal information to third parties except as authorized or permitted by law, including the";t += "                        FCRA. Uses of information expressly authorized by the FCRA include:<br/>";t += "";t += "                        Disclosure in response to the order of a court having jurisdiction to issue such an order or a subpoena issued in connection with";t += "                        proceedings before a Federal grand jury.";t += "                        Disclosure in accordance with the written instructions of the consumer to whom it relates.";t += "                        Disclosure to a person which TeleCheck has reason to believe - intends to use the information in connection with a credit transaction";t += "                        involving the consumer on whom the information is to be furnished and involving the extension of credit to, or review or collection of";t += "                        an account of, the consumer; or";t += "                        intends to use the information for employment purposes; or";t += "                        intends to use the information in connection with the underwriting of insurance involving the consumer; or";t += "                        intends to use the information in connection with a determination of the consumer's eligibility for a license or other benefit granted";t += "                        by a governmental instrumentality required by law to consider an applicant's financial responsibility or status; or";t += "                        intends to use the information, as a potential investor or servicer, or current insurer, in connection with a valuation of, or an";t += "                        assessment of the credit or prepayment risks associated with, an existing credit obligation; or";t += "                        otherwise has a legitimate business need for the information -";t += "                        (i) in connection with a business transaction that is initiated by the consumer; or";t += "                        (ii) to review an account to determine whether the consumer continues to meet the terms of the account.";t += "                        The foregoing disclosures may consist of the following:<br/>";t += "";t += "                        Financial background information describing a customer's financial status;";t += "                        Identification information, such as name and address data;";t += "                        Transaction information, such as account activity, debit activity or credit activity; and";t += "                        Other information relating to financial matters.<br/><br/>";t += "";t += "                        <b>RECIPIENTS OF INFORMATION<\/b><br/>";t += "";t += "                        TeleCheck will only disclose nonpublic personal information in the following situations:<br/>";t += "";t += "                        Disclosure to companies that perform services to TeleCheck or functions on behalf of TeleCheck.";t += "                        Disclosures necessary to effect, administer, or enforce a transaction requested or authorized by a consumer";t += "                        (including enforcing rights related to a financial transaction or product or service, or to authorize, bill,";t += "                        process, clear, transfer, reconcile or collect a financial transaction).";t += "                        Disclosures to service or process a financial product or service requested by the consumer.";t += "                        Disclosure to protect against or prevent actual or potential fraud, or unauthorized transactions, claims or liability.";t += "                        Disclosure to or from a consumer reporting agency (in accordance with the FCRA).";t += "                        In addition, under federal law TeleCheck is permitted to disclose personal information to certain recipients,";t += "                        including credit reporting agencies.<br/><br/>";t += "";t += "                        <b>WE ARE COMMITTED TO PROTECTING THE CONFIDENTIALITY OF PERSONAL CONSUMER INFORMATION<\/b><br/>";t += "";t += "                        TeleCheck limits access to nonpublic personal information regarding its current and former customers to those employees";t += "                        of TeleCheck and its affiliates who need it to fulfill their business responsibilities. Employees must adhere to the";t += "                        requirements of the FCRA and TeleCheck's privacy policies. Employees violating these laws or policies may be subject to";t += "                        disciplinary action, up to and including dismissal. Vendors and other outside contractors we engage are subject to our";t += "                        contractual requirements to ensure that sensitive nonpublic personal information is safeguarded.<br/><br/>";t += "";t += "                        <b>WE USE APPROPRIATE SECURITY SAFEGUARDS<\/b><br/>";t += "";t += "                        At TeleCheck, security is a priority. We employ appropriate measures to protect consumer information against";t += "                        unauthorized access, disclosure, alteration or destruction. These may include, among others, encryption, physical";t += "                        access security and other appropriate technologies. TeleCheck continually reviews and enhances its security systems, as necessary.<br/><br/>";t += "";t += "";t += "                        <b>WE MAINTAIN PROCEDURES TO ASSURE THE QUALITY OF INFORMATION WE COLLECT AND WHERE APPLICABLE, WE WILL INFORM CONSUMERS ABOUT HOW THEY";t += "                            CAN ACCESS THEIR PERSONAL INFORMATION AND MAKE CORRECTIONS, IF NECESSARY<\/b><br/>";t += "";t += "                        TeleCheck employs appropriate measures to assure the quality of information we collect. Pursuant to the FCRA, upon a";t += "                        consumer's request, TeleCheck permits a consumer to obtain a copy of their credit report and certain of the sources of";t += "                        the information contained in the consumer report TeleCheck maintains with respect to the consumer, and to dispute or";t += "                        correct inaccurate or incomplete information, or unverifiable information, contained in the credit report. You may request";t += "                        a copy of your consumer report by writing to<br/>";t += "                        TeleCheck Services, Inc.,<br/>";t += "                        5251 Westheimer, Houston, TX 77056<br/>";t += "                        or by contacting one of our customer service representatives at 1-800-366-2425. You will need to provide your state driver's license number,";t += "                        Social Security number, and/or bank (MICR) numbers from the bottom of your check so that we can access your credit report.";t += "                        To protect your privacy and security, we will require proper identification before granting access or making corrections.";t += "                        We reserve the right to assess a service charge for providing you with this information, subject to the FCRA.<br/><br/>";t += "";t += "                        <b>TELECHECK'S WEBSITE IS NOT DIRECTED AT CHILDREN UNDER THE AGE OF 13<\/b><br/>";t += "";t += "                        Our website is not directed at children under the age of 13 and TeleCheck does not collect or maintain information";t += "                        at our website from those we actually know are under the age of 13.<br/><br/>";t += "";t += "                        <b>TELECHECK'S WEBSITE MAY BE LINKED TO OTHER WEBSITES<\/b><br/>";t += "";t += "                        TeleCheck may create links to third party websites. TeleCheck is not responsible for the content or privacy practices";t += "                        employed by websites that are linked from our website.<br/><br/>";t += "";t += "                        <b>WE HOLD OURSELVES ACCOUNTABLE TO OUR PRIVACY PRINCIPLES<\/b><br/>";t += "";t += "                        TeleCheck is committed to meeting the highest standards for our privacy program. To that end, TeleCheck has appointed a";t += "                        senior official, who serves as the company-wide officer with responsibility for the administration and implementation of the TeleCheck privacy program.<br/>";t += "";t += "                        The TeleCheck officer, working closely with individual business units, is responsible for:<br/>";t += "";t += "                        Administering employee privacy training and employee compliance related to TeleCheck's Privacy Policies;";t += "                        Conducting periodic assessments of TeleCheck's compliance with its Privacy Policies, as well as specific implementation policies and procedures; and";t += "                        Ensuring that TeleCheck actively participates in appropriate privacy activities, including self-regulatory initiatives.";t += "                        If you have any questions or comments about the TeleCheck Online Privacy Statement, or for some reason believe we have not";t += "                        adhered to our statement, please contact:<br/><br/>";t += "";t += "                        TeleCheck Corporate Headquarters<br/>";t += "                        1-800-835-3243<br/><br/>";t += "";t += "                        This TeleCheck Online Privacy Statement is currently only applicable to our website customers and visitors in the United States.";t += "                        As we develop websites for international audiences, they may adopt additional rules and practices consistent with this statement";t += "                        to conform to the policies or requirements of those countries. We may alter this statement as needed for certain products and";t += "                        services and to abide by local laws or regulations around the world. TeleCheck reserves the right to amend or modify this";t += "                        statement from time to time. We urge you to review this statement whenever you visit in order to obtain the most current statement.";t += "                    <\/div>";t += "                <\/div>";t += "";t += '            <div class="col-sm-12"><input type="checkbox" name="mn-bank-authorization" id="mn-bank-authorization" aria-label="Bank Authorization checkbox"/><b id="mn-bank-auth-agree">I agree<\/b><\/div>';t += "            <\/div>";t += '            <div class="bank-warn form-group mn-row row mn-gt-1-field">';t += '                <div class="mn-col-9 col-sm-9 container alert alert-info">';t += "                    When you add a bank account using this method, you will not be able to use it until it is verified. 2 small deposits will be made on your bank account and you will need enter the amounts to verify the account.";t += "                <\/div>";t += "            <\/div>";t += '            <div class="bank-warn form-group mn-row row mn-gt-1-field">';t += '                <input type="button" class="btn btn-default" id="mn-add-bank-button" disabled="disabled" value="Add Bank" />';t += "            <\/div>";t += '            <div class="bank-warn form-group mn-row row mn-gt-4-field">';t += '                <input type="button" class="btn btn-default" id="mn-add-bh-bank-button" disabled="disabled" value="Add Bank" />';t += "            <\/div>";t += "        <\/div>";t += "    <style>@media(max-width: 481px){#mn-new-card-info {overflow-x: scroll;}}<\/style>";t += '    <div id="mn-new-card-info">';t += '        <div class="mn-gt-1-field mn-col-3 col-sm-3">';t += '            <label class="control-label">Payment Information<\/label>';t += "        <\/div>";t += '        <div class="mn-gt-1-field mn-col-7 col-sm-7" style="margin-bottom: 20px; min-width: 400px;" id="stripe-card-element">';t += "            <!-- a Stripe Element will be inserted here. -->";t += "        <\/div>";t += '        <div class="mn-gt-6-field form-group mn-row row" id="nar-nrds-id-q">';t += '            <label for="nar-member-id" class="control-label mn-col-3 col-sm-3">Do you have a NRDS Member Id<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <div class="mn-col-1 col-sm-1"><input type="radio" name="nar-has-nrds-id" value="yes" aria-label="Yes NRDS Member Id"/>&nbsp;Yes<\/div>';t += '                <div class="mn-col-1 col-sm-1"><input type="radio" name="nar-has-nrds-id" value="no" aria-label="No NRDS Member Id"/>&nbsp;No<\/div>';t += '                <div class="mn-col-10 col-sm-10"><input style="display: none;" type="text" name="nar-member-id" id="nar-member-id" class="form-control" value=""/><\/div>';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-6-field form-group mn-row row" id="mn-nar-card-account-type-row">';t += '            <label for="nar-has-nrds-card-type" class="control-label mn-col-3 col-sm-3">Contribution Type<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <div class="mn-col-1 col-sm-1" style="min-width: 120px;">';t += '                    <input type="radio" name="nar-has-nrds-card-type" value="Personal" aria-label="Personal"/>&nbsp;Personal';t += "                <\/div>";t += '                <div class="mn-col-1 col-sm-1" style="min-width: 120px;">';t += '                    <input type="radio" name="nar-has-nrds-card-type" value="Corporate" aria-label="Corporate"/>&nbsp;Corporate';t += "                <\/div>";t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-8-field form-group mn-row row">';t += '            <label for="mn-card-name" class="control-label mn-col-3 col-sm-3">Name on Card<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <input type="text" name="mn-card-name" id="mn-card-name" class="form-control" placeholder="Full Name" autocomplete="cc-name" />';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-4-field mn-gt-5-field mn-gt-8-field form-group mn-row row">';t += '            <label for="mn-card-email" class="control-label mn-col-3 col-sm-3">E-mail Address<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <input type="email" name="mn-card-email" id="mn-card-email" placeholder="name@example.com" autocomplete="email" value="" class="form-control" />';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-3-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-8-field mn-required form-group mn-row row">';t += '            <label for="mn-card-number" class="control-label mn-col-3 col-sm-3">Card Number<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <input type="text" maxlength="19" autocomplete="cc-number" placeholder="Numeric Values [0-9] only." id="mn-card-number" class="form-control mn-card-number mn-gt-3-field mn-gt-4-field mn-gt-5-field mn-gt-6-field" required="required" />';t += '                <div id="mn-affinipay-card-number" class="required mn-gt-8-field"><\/div>';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-3-field mn-required mn-gt-4-field mn-gt-5-field mn-gt-8-field form-group mn-row row">';t += '            <label for="mn-card-cvc" class="control-label mn-col-3 col-sm-3">CVC<\/label>';t += '            <div class="mn-col-9 col-sm-9">';t += '                <input type="text" maxlength="4" autocomplete="cc-csc" id="mn-card-cvc" class="form-control mn-card-cvc stripe-sensitive mn-gt-3-field mn-gt-4-field mn-gt-5-field" required="required" />';t += '                <div id="mn-affinipay-card-cvc" class="required mn-gt-8-field"><\/div>';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-gt-3-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-8-field mn-required form-group mn-row row">';t += '            <label class="control-label mn-col-3 col-sm-3">Expiration<\/label>';t += '            <div class="mn-col-9 col-sm-9 expiry-wrapper">';t += '                <select class="mn-card-expiry-month stripe-sensitive" required="required" autocomplete="cc-exp-month" aria-label="Credit Card Expiration Month"><\/select>';t += "                <span> / <\/span>";t += '                <select class="mn-card-expiry-year stripe-sensitive" required="required" autocomplete="cc-exp-year" aria-label="Credit Card Expiration Year"><\/select>';t += "            <\/div>";t += "        <\/div>";t += "";t += '    <iframe src="" name="PayrixFieldsIframe" id="PayrixFieldsIframe" class="mn-gt-7-field" style="border: none; min-height: 860px; min-width: 420px;"><\/iframe>';t += "    <\/div>";t += "";t += '    <div id="mn-demographics">';t += '        <div class="mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-8-field" id="stripe-customer" style="margin-left: -15px;">';t += '            <div class="mn-col-12 col-sm-12">';t += '                <label id="use-shipping-address-chk" class="control-label" style="margin-top: 5px;display: none"><input type="checkbox" id="mn-use-shipping-address-chk" style="width: 20px;" />Use Shipping Address<\/label>';t += '                <div class="form-group">';t += '                    <label for="stripe_address1" class="control-label">Address Line 1<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-stripe-addr-field form-control" name="stripe_address1" id="stripe_address1" placeholder="123 Any Street" autocomplete="address-line1" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-12 col-sm-12 mn-gt-4-field mn-gt-5-field mn-gt-6-field">';t += '                <div class="form-group">';t += '                    <label for="stripe_address2" class="control-label">Address Line 2<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-stripe-addr-field form-control" name="stripe_address2" id="stripe_address2" autocomplete="address-line2" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="stripe_city" class="control-label">City<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-stripe-addr-field form-control" name="stripe_city" id="stripe_city" placeholder="Anytown" autocomplete="address-level2" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-gt-1-field">';t += '                <div class="form-group">';t += '                    <label for="stripe_country" class="control-label">Country<span class="mn-gt-4-field mn-gt-5-field"> Code<\/span><\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field form-control" name="stripe_country" id="stripe_country" autocomplete="country" value=""><\/select>';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-gt-1-field">';t += '                <div class="form-group">';t += '                    <label for="stripe_state" class="control-label">State/Province<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field mn-stripe-addr-field form-control" name="stripe_state" id="stripe_state" autocomplete="address-level1" value=""><\/select>';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-gt-4-field mn-gt-5-field mn-gt-8-field mn-required">';t += '                <div class="form-group">';t += '                    <label for="mn-bh-state" class="control-label">State<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field mn-stripe-addr-field form-control" name="mn-bh-state" id="mn-bh-state" autocomplete="address-level1">';t += '                            <option value="AL">AL<\/option>';t += '                            <option value="AK">AK<\/option>';t += '                            <option value="AZ">AZ<\/option>';t += '                            <option value="AR">AR<\/option>';t += '                            <option value="CA">CA<\/option>';t += '                            <option value="CO">CO<\/option>';t += '                            <option value="CT">CT<\/option>';t += '                            <option value="DE">DE<\/option>';t += '                            <option value="DC">DC<\/option>';t += '                            <option value="FL">FL<\/option>';t += '                            <option value="GA">GA<\/option>';t += '                            <option value="HI">HI<\/option>';t += '                            <option value="ID">ID<\/option>';t += '                            <option value="IL">IL<\/option>';t += '                            <option value="IN">IN<\/option>';t += '                            <option value="IA">IA<\/option>';t += '                            <option value="KS">KS<\/option>';t += '                            <option value="KY">KY<\/option>';t += '                            <option value="LA">LA<\/option>';t += '                            <option value="ME">ME<\/option>';t += '                            <option value="MD">MD<\/option>';t += '                            <option value="MA">MA<\/option>';t += '                            <option value="MI">MI<\/option>';t += '                            <option value="MN">MN<\/option>';t += '                            <option value="MS">MS<\/option>';t += '                            <option value="MO">MO<\/option>';t += '                            <option value="MT">MT<\/option>';t += '                            <option value="NE">NE<\/option>';t += '                            <option value="NV">NV<\/option>';t += '                            <option value="NH">NH<\/option>';t += '                            <option value="NJ">NJ<\/option>';t += '                            <option value="NM">NM<\/option>';t += '                            <option value="NY">NY<\/option>';t += '                            <option value="NC">NC<\/option>';t += '                            <option value="ND">ND<\/option>';t += '                            <option value="OH">OH<\/option>';t += '                            <option value="OK">OK<\/option>';t += '                            <option value="OR">OR<\/option>';t += '                            <option value="PA">PA<\/option>';t += '                            <option value="RI">RI<\/option>';t += '                            <option value="SC">SC<\/option>';t += '                            <option value="SD">SD<\/option>';t += '                            <option value="TN">TN<\/option>';t += '                            <option value="TX">TX<\/option>';t += '                            <option value="UT">UT<\/option>';t += '                            <option value="VT">VT<\/option>';t += '                            <option value="VA">VA<\/option>';t += '                            <option value="WA">WA<\/option>';t += '                            <option value="WV">WV<\/option>';t += '                            <option value="WI">WI<\/option>';t += '                            <option value="WY">WY<\/option>';t += "                        <\/select>";t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-gt-6-field mn-required">';t += '                <div class="form-group">';t += '                    <label for="mn-nar-state" class="control-label">State/Region<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field mn-stripe-addr-field form-control" name="mn-nar-state" id="mn-nar-state">';t += '                            <option value="">Select a State/Region<\/option>';[{ code: "AL", name: "AL" }, { code: "AK", name: "AK" }, { code: "AZ", name: "AZ" }, { code: "AR", name: "AR" }, { code: "CA", name: "CA" }, { code: "CO", name: "CO" }, { code: "CT", name: "CT" }, { code: "DE", name: "DE" }, { code: "DC", name: "DC" }, { code: "FL", name: "FL" }, { code: "GA", name: "GA" }, { code: "GU", name: "GU" }, { code: "HI", name: "HI" }, { code: "ID", name: "ID" }, { code: "IL", name: "IL" }, { code: "IN", name: "IN" }, { code: "IA", name: "IA" }, { code: "KS", name: "KS" }, { code: "KY", name: "KY" }, { code: "LA", name: "LA" }, { code: "ME", name: "ME" }, { code: "MD", name: "MD" }, { code: "MA", name: "MA" }, { code: "MI", name: "MI" }, { code: "MN", name: "MN" }, { code: "MS", name: "MS" }, { code: "MO", name: "MO" }, { code: "MT", name: "MT" }, { code: "NE", name: "NE" }, { code: "NV", name: "NV" }, { code: "NH", name: "NH" }, { code: "NJ", name: "NJ" }, { code: "NM", name: "NM" }, { code: "NY", name: "NY" }, { code: "NC", name: "NC" }, { code: "ND", name: "ND" }, { code: "OH", name: "OH" }, { code: "OK", name: "OK" }, { code: "OR", name: "OR" }, { code: "PA", name: "PA" }, { code: "PR", name: "PR" }, { code: "RI", name: "RI" }, { code: "SC", name: "SC" }, { code: "SD", name: "SD" }, { code: "TN", name: "TN" }, { code: "TX", name: "TX" }, { code: "UT", name: "UT" }, { code: "VI", name: "VI" }, { code: "VT", name: "VT" }, { code: "VA", name: "VA" }, { code: "WA", name: "WA" }, { code: "WV", name: "WV" }, { code: "WI", name: "WI" }, { code: "WY", name: "WY" }].forEach(function (n) {
          t += "<option value=\"" + n.code + "\">" + n.name + "</option>";
        });t += "                        <\/select>";t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="stripe_zip" class="control-label">Zip/Postal Code<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-stripe-addr-field form-control" name="stripe_zip" id="stripe_zip" autocomplete="postal-code" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += "        <\/div>";t += "";t += '        <div class="mn-gt-3-field mn-col-12 col-sm-12" id="dpm-customer" style="margin-left: -15px;">';t += '            <div class="mn-col-12 col-sm-12">';t += '                <div class="form-group">';t += '                    <label for="x_company" class="control-label">Company Name<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field form-control" name="x_company" id="x_company" autocomplete="organization" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-required">';t += '                <div class="form-group">';t += '                    <label for="x_first_name" class="control-label">First Name<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field form-control" name="x_first_name" id="x_first_name"value="" autocomplete="given-name" required="required">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6 mn-required">';t += '                <div class="form-group">';t += '                    <label for="x_last_name" class="control-label">Last Name<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field form-control" name="x_last_name" id="x_last_name" autocomplete="family-name" value="" required="required">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-12 col-sm-12">';t += '                <div class="form-group">';t += '                    <label for="x_address" class="control-label">Address<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-dpm-addr-field form-control" name="x_address" id="x_address" placeholder="123 Any Street" autocomplete="address-line1" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_city" class="control-label">City<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-dpm-addr-field form-control" name="x_city" id="x_city" placeholder="Anytown" autocomplete="address-level2" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_country" class="control-label">Country Code<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field form-control" name="x_country" id="x_country" autocomplete="country" value=""><\/select>';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_state" class="control-label">State/Province<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <select class="mn-auth-field mn-dpm-addr-field form-control" name="x_state" id="x_state" autocomplete="address-level1" value=""><\/select>';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_zip" class="control-label">Zip/Postal Code<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field mn-dpm-addr-field form-control" name="x_zip" id="x_zip" autocomplete="postal-code" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_email" class="control-label">Email<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field form-control" name="x_email" id="x_email" placeholder="name@example.com" autocomplete="email" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += '            <div class="mn-col-6 col-sm-6">';t += '                <div class="form-group">';t += '                    <label for="x_phone" class="control-label">Phone<\/label>';t += '                    <div class="mn-col-12 col-sm-12 input-group">';t += '                        <input type="text" class="mn-auth-field form-control" name="x_phone" id="x_phone" placeholder="(123) 456-7890" autocomplete="tel" value="">';t += "                    <\/div>";t += "                <\/div>";t += "            <\/div>";t += "        <\/div>";t += "";t += "    <\/div>";t += "";t += '    <div id="mn-existing-card-cvc-wrapper" class="mn-col-12 col-sm-12 mn-gt-4-field mn-gt-5-field form-group mn-row row">';t += '        <label for="mn-existing-card-cvc" class="control-label mn-col-3 col-sm-3">CVC<\/label>';t += '        <div class="mn-col-9 col-sm-9">';t += '            <input type="text" maxlength="4" id="mn-existing-card-cvc" autocomplete="cc-csc" class="form-control" required="required" />';t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row" id="mn-scheduled-billings-wrapper" style="display: none;">';t += '        <label for="mn-use-for-sb" class="control-label mn-col-5 col-sm-5">Use for existing scheduled payments<\/label>';t += '        <div class="mn-col-1 col-sm-1 enroll-in-autopay-cb">';t += '            <input type="checkbox" checked="checked" id="mn-use-for-sb"  style="top: 5px;position: relative;" />';t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div class="fmn-col-12 col-sm-12 orm-group mn-row row" id="mn-scheduled-billings-detail-wrapper" style="display: none;">';t += '        <div class="mn-row row">';t += '            <label class="control-label mn-col-12 col-sm-12 save-to-lbl">Associate Payment Method with Scheduled Billing<\/label>';t += '            <div class="mn-col-12 col-sm-12">';t += '                <table class="table table-striped">';t += "                    <tr>";t += '                        <th><span class="hide">Check all<\/span><input type="checkbox" id="mn-sb-chk-all" disabled="disabled" aria-label="Check all Associate Payment Method with Scheduled Billing"/><\/th>';t += "                        <th>Next Bill Date<\/th>";t += "                        <th>Description<\/th>";t += "                        <th>Price<\/th>";t += "                        <th>Frequency<\/th>";t += "                        <th>Payment Method<\/th>";t += "                    <\/tr>";t += '                    <tbody id="mn-scheduled-billings"><\/tbody>';t += "                <\/table>";t += "            <\/div>";t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row" id="mn-wallet-confirm-row" style="display: none;">';t += '            <div class="mn-col-3 col-sm-9"><input type="button" class="btn btn-default" name="mn-payment-wallet-confirm" id="mn-payment-wallet-confirm" value="Continue"><\/div>';t += "    <\/div>";t += "";t += '    <div class="mn-col-12 col-sm-12 mn-gt-1-field mn-gt-4-field mn-gt-5-field mn-gt-6-field mn-gt-7-field mn-gt-8-field form-group mn-row row" id="mn-save-card-wrapper">';t += '        <label for="mn-save-card" class="control-label mn-col-5 col-sm-5 save-lbl" id="mn-save-card-lbl">Securely and conveniently store <span id="mn-save-card-pmt-type">card<\/span><\/label>';t += '        <div class="mn-col-7 col-sm-7">';t += '            <input type="checkbox" name="mn-save-card" checked="checked" id="mn-save-card" class="card-save"  style="top: 5px;position: relative;" />';t += '            <span id="mn-save-card-name-wrapper">';t += "            <\/span>";t += "        <\/div>";t += '        <label for="mn-save-card-charge-on-approve" class="control-label mn-col-12 col-sm-12 save-lbl" id="mn-save-card-charge-on-approve-lbl"><\/label>';t += '        <div class="mn-col-12 col-sm-12" id="mn-save-card-disclaimer">';t += "";t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row" id="mn-save-card-to-wrapper" style="display: none;">';t += '        <label class="control-label mn-col-6 col-sm-6 save-to-lbl">Save Card/Bank to my <span class="mn-save-card-org-term"><\/span> and make available for others in my <span class="mn-save-card-org-term"><\/span><\/label>';t += '        <div class="mn-col-1 col-sm-1">';t += '            <input type="checkbox" name="mn-save-card-to-org" id="mn-save-card-to-org" aria-label="Save Card/Bank checkbox"/>';t += "        <\/div>";t += '        <div class="mn-col-5 col-sm-5">';t += '            <select name="mn-save-to-orgs" id="mn-save-to-orgs" class="form-control" aria-label="Make Card/Bank available to others in org"><\/select>';t += "        <\/div>";t += "    <\/div>";t += "    ";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div class="mn-gt-6-field">';t += "            Payments made by credit card on this site will appear on your credit card billing statement under the name REALTOR Association/MLS";t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div id="mn-confirmation-msg-row" class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div class="mn-col-12 col-sm-12">';t += "        <\/div>";t += "    <\/div>";t += "    ";t += '    <div id="mn-payment-host-page-error" class="mn-widget-error mn-col-12 col-sm-12 mn-row row alert alert-danger" style="display: none;"><\/div>';t += '    <div class="form-group mn-col-12 col-sm-12"><\/div>';t += '    <div id="mn-nar-error-pac" class="form-group mn-row row" style="display: none;">';t += '        <div class="mn-col-12 col-sm-12 alert alert-info">';t += "            <h3>Attention: <\/h3>";t += "            You have indicated that you intend to pay your invoice using corporate funds and also";t += "            that you wish to make a voluntary contribution to the Realtors Political Action";t += "            Committee. Note that 30% of contributions made to RPAC are forwarded to National";t += "            RPAC for use in making contributions and otherwise providing direct support to";t += "            candidates for Federal office. The Federal Election Campaign Act prohibits a";t += "            federal PAC, such as National RPAC, from accepting a contribution from an";t += "            individual who uses corporate monies or corporate accounts to make that";t += "            contribution.<br/><br/>";t += "";t += "            If you wish to allow your RPAC contribution to be used by National RPAC to support";t += "            federal candidates directly, please click the button below 'I wish to choose another";t += "            payment method'. You may select a form of payment that uses your personal funds to";t += "            make the RPAC Contribution.<br/><br/>";t += "";t += "            If you still wish to pay with corporate funds, the National RPAC portion of your";t += "            contribution will be directed to NAR's Political Advocacy Fund, which utilizes the";t += "            funds to support issues advocacy efforts, other political programs and related";t += "            administrative costs. Please click the 'I wish to continue the payment process' button";t += "            below.<br/><br/>";t += "                    ";t += '            <input type="button" class="btn btn-default" id="mn-payment-nar-continue-pac" value="I wish to continue the payment process"><br/><br/>';t += '            <input type="button" class="btn btn-default" id="mn-payment-nar-cancel-pac" value="I wish to choose another payment method">';t += "        <\/div>";t += "    <\/div>";t += '        <div class="mn-col-12 col-sm-12 mn-gt-3-field" id="mn-save-card-disclaimer-authdpm">';t += "";t += "        <\/div>";t += '    <div id="mn-dual-pricing-msg" class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div class="mn-gt-1-field">';t += "            Pay using your bank account to receive discounted pricing.";t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div id="mn-terms-and-conditions" class="mn-col-12 col-sm-12 form-group mn-row row" style="display: none;">';t += "       ";t += '        <div class="mn-col-12 col-sm-12" id="mn-terms-and-conditions-title" style="display: none;font-weight: bold;"><\/div>';t += "        <br />";t += "        <br />";t += '        <div class="mn-col-12 col-sm-12" id="mn-terms-and-conditions-summary" style="display: none;"><\/div>';t += "        <br />";t += "        <br />";t += '        <div class="mn-col-12 col-sm-12" id="mn-terms-and-conditions-link" style="display: none;"><\/div>';t += "    <\/div>";t += '    <div id="mn-payment-submit-row" class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div class="mn-col-5 col-sm-5">';t += '            <div class="mn-col-3 col-sm-9"><input type="button" class="btn btn-default" name="mn-payment-submit-button" id="mn-payment-submit-button" value="Pay Now"><\/div>';t += '            <div class="mn-col-3 col-sm-3" id="mn-payment-cancel-wrapper" style="display: none;"><a id="mn-payment-cancel-button" href="javascript://">cancel<\/a><\/div>';t += "        <\/div>";t += '        <div class="mn-col-7 col-sm-7" id="mn-pay-widget-powered-by-stripe" style="display: none;">';t += '            <div style="text-align: center;">';t += '                <img style="width: 150px;" src="/GZContent/Images/public/powered_by_stripe.svg" alt="Powered By Stripe">';t += "            <\/div>";t += "        <\/div>";t += '        <div class="mn-col-7 col-sm-7 mn-gt-7-field" id="mn-pay-widget-powered-by-payrix" style="display: none;">';t += '            <div style="text-align: center;">';t += '                <img style="width: 100px;" src="/GZContent/Images/public/payrix_black_logo.png" alt="Powered By Payrix">';t += "            <\/div>";t += "        <\/div>";t += "    <\/div>";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div class="mn-payment-errors"><\/div>';t += "    <\/div>";t += '    <div class="mn-col-12 col-sm-12 form-group mn-row row">';t += '        <div id="mn-payment-form-info" class="mn-widget-info container alert alert-info" style="display: none;"><\/div>';t += "    <\/div>";t += "";t += '    <div style="display: none;" id="mn-bank-verify-dialog" title="Verify Bank Account">';t += "        <p>Enter the 2 amounts deposited to your bank account.<\/p>";t += '        <div class="mn-row row">';t += '            <label for="bank-verify-val-1" class="mn-col-6 col-sm-6">First Deposit<\/label><input class="mn-col-6 col-sm-6" id="bank-verify-val-1" type="number" />';t += "        <\/div>";t += '        <div class="mn-row row">';t += '            <label for="bank-verify-val-2" class="mn-col-6 col-sm-6">Second Deposit<\/label><input class="mn-col-6 col-sm-6" id="bank-verify-val-2" type="number" />';t += "        <\/div>";t += "    <\/div>";t += "";t += '    <div id="mn-progress-modal" style="display: none;">';t += "        <div>&nbsp;<\/div>";t += '        <div class="text-center">';t += '            <img id="img-spinner" src="https://cdnjs.cloudflare.com/ajax/libs/timelinejs/2.25/css/loading.gif" alt="Loading" />';t += "        <\/div>";t += "    <\/div>";t += "";t += "        <!-- second form used to submit to prevent having to clear credit card number when submitting form -->";t += '    <form action="" id="formPost" method="post" name="formPost" style="display: none;">';t += '        <input type="hidden" name="TenantId" value="" />';t += '        <input type="hidden" name="PaymentProfileId" value="" />';t += '        <input type="hidden" name="PaymentGatewayId" value="" />';t += '        <input type="hidden" name="PaymentGatewayTypeId" value="" />';t += '        <input type="hidden" name="PaymentGatewayType" value="" /> <!--Used by AddEditExternalPaymentProfile model-->';t += '        <input type="hidden" name="ContactId" value="" />';t += '        <input type="hidden" name="PurchasedByContactId" value="" />';t += '        <input type="hidden" name="PaymentContactId" value="" />';t += '        <input type="hidden" name="SaveOnOrganizationId" value="" />';t += '        <input type="hidden" name="SaveOnContactId" value="" />';t += '        <input type="hidden" name="OrganizationId" value="" />';t += '        <input type="hidden" name="Capture" value="" />';t += '        <input type="hidden" name="IsTestCard" value="" />';t += '        <input type="hidden" name="TokenId" value="" />';t += '        <input type="hidden" name="CardLast4" value="" />';t += '        <input type="hidden" name="CardExpMonth" value="" />';t += '        <input type="hidden" name="CardExpYear" value="" />';t += '        <input type="hidden" name="CardCvc" value="" />';t += '        <input type="hidden" name="Amount" value="" />';t += '        <input type="hidden" name="VoluntaryAmount" value="" />';t += '        <input type="hidden" name="CardType" value="" />';t += '        <input type="hidden" name="StorePaymentInfoForFuture" value="" />';t += '        <input type="hidden" name="UseStripePaymentIntents" value="" />';t += '        <input type="hidden" name="PaymentMethod" value="" />';t += '        <input type="hidden" name="PaymentProfilePaymentMethodConfigurationId" value="" />';t += '        <input type="hidden" name="OnlyAchPaymentProfilePaymentMethodConfigurationId" value="" />';t += '        <input type="hidden" name="SimResponse" value="" />';t += '        <input type="hidden" name="DataDescriptor" value="" />';t += '        <input type="hidden" name="DataValue" value="" />';t += '        <input type="hidden" name="EPaymentTransactionId" value="" />';t += '        <input type="hidden" name="ResponseData" value="" />';t += '        <input type="hidden" name="FailureReason" value="" />';t += '        <input type="hidden" name="ContactName" value="" />';t += '        <input type="hidden" name="FirstName" value="" />';t += '        <input type="hidden" name="LastName" value="" />';t += '        <input type="hidden" name="Address" value="" />';t += '        <input type="hidden" name="Address2" value="" />';t += '        <input type="hidden" name="City" value="" />';t += '        <input type="hidden" name="StateProvince" value="" />';t += '        <input type="hidden" name="State" value="" />';t += '        <input type="hidden" name="PostalCode" value="" />';t += '        <input type="hidden" name="CountryCode" value="" />';t += '        <input type="hidden" name="Phone" value="" />';t += '        <input type="hidden" name="Email" value="" />';t += '        <input type="hidden" name="InsuranceQuoteId" value="" />';t += '        <input type="hidden" name="InsuranceAmount" value="" />';t += "        ";t += "        <!--NAR Payments fields-->";t += '        <input type="hidden" name="NarPaymentsBaseUrl" value="" />';t += '        <input type="hidden" name="NRDSMemberId" value="" />';t += '        <input type="hidden" name="HasNRDSMemberId" value="" />';t += '        <input type="hidden" name="CardAccountType" value="" />';t += '        <input type="hidden" name="SessionKey" value="" />';t += "        ";t += "        <!--extra add/edit payment profile fields-->";t += '        <input type="hidden" name="OrganizationContactId" value="" />';t += '        <input type="hidden" name="Name" value="" />';t += '        <input type="hidden" name="AuditId" value="" />';t += '        <input type="hidden" name="ProfileKey" value="" />';t += '        <input type="hidden" name="ClientKey" value="" />';t += '        <input type="hidden" name="PaymentProfileTypeId" value="" />';t += "";t += "        <!--extra bank fields-->";t += '        <input type="hidden" name="AccountLast4" value="" />';t += '        <input type="hidden" name="IsBankCharge" value="" />';t += '        <input type="hidden" name="BankName" value="" />';t += '        <input type="hidden" name="IsSavingsAccount" value="" />';t += '        <input type="hidden" name="AccountNumber" value="" />';t += '        <input type="hidden" name="RoutingNumber" value="" />';t += '        <input type="hidden" name="AccountHolderType" value="" />';t += '        <input type="hidden" name="AssociationRequestId" value="" />';t += "    <\/form>";t += "";t += '    <iframe src="" id="AuthDpmSubmitterFrame" style="display:none;"><\/iframe>';t += "";t += '    <iframe src="/Views/NarPaymentsIframeCommunicator.html" name="NarPaymentsSubmitterFrame" id="NarPaymentsSubmitterFrame" style="display:none;"><\/iframe>';t += "";t += "    <\/div>";t += '    <div id="mn-payment-form-error" class="mn-widget-error container alert alert-danger" style="display: none;"><\/div>';t += "<\/div>";t += "";c.empty();c.append(t);i.jQuery("#mn-pay-widget-powered-by-stripe").find("img").attr("src", "//" + i._getDomain() + "/GZContent/Images/public/powered_by_stripe.svg");i.jQuery("#mn-pay-widget-powered-by-payrix").find("img").attr("src", "//" + i._getDomain() + "/GZContent/Images/public/payrix_black_logo.png");i.jQuery(".mn-pay-widget-telecheck").attr("src", "//" + i._getDomain() + "/GZContent/Images/public/telecheck-logo.jpg");i.jQuery("#AuthDpmSubmitterFrame").attr("src", "https://" + i._getDomain() + "/views/AuthDotNetIframeCommunicator.html");i.jQuery("#NarPaymentsSubmitterFrame").attr("src", "//" + i._getDomain() + i.jQuery("#NarPaymentsSubmitterFrame").attr("src"));i.jQuery("#PayrixFieldsIframe").attr("src", "//" + i._getDomain() + "/views/PayrixFieldsIframe.html");i.jQuery(".mn-save-card-org-term").text(i._OrgTerm);var h = new Date(),
            e = h.getMonth() + 1,
            v = h.getDate(),
            b = (e < 10 ? "0" : "") + e + "/" + (v < 10 ? "0" : "") + v + "/" + h.getFullYear();for (i.jQuery("#mn-e-check-date").text(b), l = i.jQuery("#mn-payment-submit-button"), i._buttonText || (i._buttonText = "Pay Now"), i.setButtonText(i._buttonText), i._buttonClass && l.attr("class", i._buttonClass), i._scheduledbillingsText && i.jQuery("#mn-scheduled-billings-wrapper label:first").text(i._scheduledbillingsText), i._showAllowPaymentProfileInAutoPayCheckbox && i.jQuery("#mn-scheduled-billings-wrapper label:first").text(i._allowPaymentProfileInAutoPayText), i._confirmationMessage && i.jQuery("#mn-confirmation-msg-row div:first").html(i._confirmationMessage), i._saveCardText && i.jQuery("#mn-save-card-lbl").text(i._saveCardText), i._chargeOnApprovalText && i.jQuery("#mn-save-card-charge-on-approve-lbl").text(i._chargeOnApprovalText), i._saveCardDisclaimer && i.jQuery("#mn-save-card-disclaimer").text(i._saveCardDisclaimer), i._onlySaveCard && i.jQuery("#mn-save-card").prop("disabled", "disabled"), i._allowSavingCard || i.jQuery("#mn-save-card").attr("checked", !1), i._cancelCallback && (i.jQuery("#mn-payment-cancel-wrapper").show(), i.jQuery("#mn-payment-cancel-button").unbind("click").click(function () {
          i._cancelCallback();
        })), o = i.jQuery(".mn-card-expiry-month"), e = new Date().getMonth() + 1, r = 1; r <= 12; r++) {
          o.append(i.jQuery("<option value='" + r + "' " + (e === r ? "selected" : "") + ">" + r + "<\/option>"));
        }for (o = i.jQuery(".mn-card-expiry-year"), s = new Date().getFullYear(), r = 0; r < 12; r++) {
          o.append(i.jQuery("<option value='" + (r + s) + "' " + (r === 0 ? "selected" : "") + ">" + (r + s) + "<\/option>"));
        }if (this._styleTemplate) {
          u = this._element.getAttribute("id");u || (u = "mni-payment-" + +new Date(), this._element.setAttribute("id", u));var p = n.getElementsByTagName("head")[0],
              f,
              k = { id: u },
              w = styleTemplate.replace(/@\w+/g, function (n) {
            return k[n.slice(1)] || n;
          });n.createStyleSheet ? (f = n.createStyleSheet(), f.cssText = w) : (f = a("style", { id: u + "-style" }, y), f.appendChild(n.createTextNode(w)), p && p.appendChild(f));
        }this._load();
      }
    }, loadStatesStripe: function loadStatesStripe() {
      var n = this,
          t = n.jQuery('[name="stripe_state"]'),
          i = n.jQuery('[name="stripe_country"]').val();n.loadStatesInner(t, i);
    }, loadStatesAuth: function loadStatesAuth() {
      var n = this,
          t = n.jQuery('[name="x_state"]'),
          i = n.jQuery('[name="x_country"]').val();n.loadStatesInner(t, i);
    }, loadStatesInner: function loadStatesInner(n, i) {
      var r = this;n.find("option").remove();i && (n.append('<option value=""><\/option>'), r.jQuery.each(t.allStatesList, function (t, r) {
        r.CountryCode == i && n.append('<option value="' + r.Abbreviation + '">' + r.Abbreviation + "<\/option>");
      }));
    }, loadCountries: function loadCountries(n) {
      var r = this,
          i = r.jQuery('[name="' + n + '"]');i && (i.find("option").remove(), i.append('<option value=""><\/option>'), r.jQuery.each(t.countriesList, function (n, t) {
        i.append('<option value="' + t.Code + '">' + t.Name + "<\/option>");
      }));
    }, _loadStripePayments: function _loadStripePayments(n) {
      var i = this;i._stripeElements = i._stripe.elements();var r = { classes: { base: "mn-stripe-element" }, value: { postalCode: i._zip ? i._zip : n.PostalCode } };if (i._stripeCard = i._stripeElements.create("card", r), i._stripeCard.mount("#stripe-card-element"), i._stripeCard.addEventListener("change", function (n) {
        n.error ? i._showError(n.error.message) : i._clearError();
      }), i.jQuery("#mn-pay-widget-powered-by-stripe").show(), i._stripeSettings = { decline_charge_on: { cvc_failure: "" } }, n.ConfigInfoJson != "") {
        i._stripeSettings = JSON.parse(n.ConfigInfoJson);try {
          i._stripeSettings.settings.card_payments.decline_on.cvc_failure && i.jQuery(".mn-card-cvc").prop("required", !0).parent().parent().addClass("mn-required");
        } catch (u) {}
      }i._allowSavingCard && i._allowAddingBankAccounts && i._contactId != null && i._contactId !== 0 || (i.jQuery("#mn-add-bank-wrapper").hide(), i.jQuery("#mn-new-bank-info").hide());i.loadCountries("stripe_country");i.loadStatesStripe();i.jQuery("#mn-card-email").val(i._email ? i._email : n.Email);i.jQuery('[name="stripe_address1"]').val(i._address1 ? i._address1 : n.Address);i.jQuery('[name="stripe_address2"]').val(i._address2 ? i._address2 : n.Address2);i.jQuery('[name="stripe_city"]').val(i._city ? i._city : n.City);i.jQuery('[name="stripe_zip"]').val(i._zip ? i._zip : n.PostalCode);i.jQuery('[name="stripe_country"]').change(function () {
        i.loadStatesStripe();
      }).val(i._country ? i._country : n.CountryCode).change();i.jQuery('[name="stripe_state"]').val(i._state ? i._state : n.StateProvince).prop("selected", !0);i._plaidKey = n.PlaidKey;i._plaidEnvironment = n.PlaidEnvironment;i._plaidHandler = t.Plaid ? t.Plaid.create({ env: i._plaidEnvironment, clientName: i._tenantName, key: i._plaidKey, apiVersion: "v2", product: "auth", selectAccount: !0, onSuccess: function onSuccess(n, t) {
          console.log("public_token: " + n);console.log("account ID: " + t.account_id);i._submitBank(n, t.account_id);
        } }) : { open: function open() {} };
    }, _loadStripeIntents: function _loadStripeIntents(t) {
      var i = this,
          o = i._getStripeIntentOptions(t);i._stripeElements = i._stripe.elements(o);i._name = i._name ? i._name : t.DisplayName;i._email = i._email ? i._email : t.Email;i._phone = i._phone ? i._phone : t.Phone;i._address1 = i._address1 ? i._address1 : t.Address;i._address2 = i._address2 ? i._address2 : t.Address2;i._city = i._city ? i._city : t.City;i._state = i._state ? i._state : t.StateProvince;i._country = i._country ? i._country : t.CountryCode;i._zip = i._zip ? i._zip : t.PostalCode;i._stripeCard = i._stripeElements.create("payment", i._getPaymentElementOptions());i._stripeCard.mount("#stripe-card-element");i.jQuery("#mn-payment-wallet-confirm").unbind("click").click(function () {
        i._stripeAppleAndGooglePaySetup();
      });var f = n.formPost;var e = i.jQuery("#mn-payment-submit-button"),
          r = i.jQuery("#mn-save-card"),
          u = i.jQuery("#mn-use-for-sb");i._saveForFutureChecked = r.is(":checked");i._saveForFutureDisabled = r.prop("disabled");i._useForSb = u.is(":checked");i._stripeCard.on("change", function (n) {
        var t = "card";i.jQuery("#mn-save-card-wrapper").show();i.jQuery("#mn-scheduled-billings-wrapper").show();i._forceShowSaveCard || i._allowSavingCard && (i._showSaveCard || i._contactId != null && i._contactId !== 0) && !i._onlySaveCard || i.jQuery("#mn-save-card-wrapper").hide();i._allowSavingCard && (i._showScheduledBillings || i._showAllowPaymentProfileInAutoPayCheckbox) || i.jQuery("#mn-scheduled-billings-wrapper").hide();var o = n.value.type === "google_pay" || n.value.type === "apple_pay";i.jQuery("#mn-wallet-confirm-row").toggle(o);i.jQuery("#mn-payment-submit-button").toggle(!o);n.value.type === "us_bank_account" ? (f.IsBankCharge.value = !0, i._payingByBank = !0, t = "bank", i._currentPaymentMethod === "card" && (i._saveForFutureChecked = r.is(":checked"), i._useForSb = u.is(":checked")), i._saveForFutureDisabled = r.prop("disabled"), r.prop("checked", !0), r.prop("disabled", !0)) : n.value.type === "google_pay" || n.value.type === "apple_pay" || n.value.type === "link" ? (f.IsBankCharge.value = !1, i._payingByBank = !1, i.jQuery("#mn-save-card-wrapper").hide(), i.jQuery("#mn-scheduled-billings-wrapper").hide(), i._currentPaymentMethod === "card" && (i._saveForFutureChecked = r.is(":checked"), i._useForSb = u.is(":checked")), i._setElementsAmount(), r.prop("checked", !1), u.prop("checked", !1)) : (f.IsBankCharge.value = !1, i._payingByBank = !1, r.prop("checked", i._saveForFutureChecked || i._forceAutopay), r.prop("disabled", i._saveForFutureDisabled || i._forceAutopay), u.prop("checked", i._useForSb || i._forceAutopay), u.prop("disabled", i._forceAutopay));i._currentPaymentMethod = n.value.type;i.setButtonText(i._buttonText);i.jQuery("#mn-save-card-pmt-type").text(t);n.complete ? e.prop("disabled", !1) : e.prop("disabled", !0);
      });e.prop("disabled", !0);
    }, toggleAutopay: function toggleAutopay(n) {
      var t = this;t._allowSavingCard && (t._forceSaveCard = n, t._forceAutopay = n, t._adjustAutopayCheckboxes());
    }, _adjustAutopayCheckboxes: function _adjustAutopayCheckboxes() {
      var n = this,
          i = n.jQuery("#mn-use-for-sb"),
          t = n.jQuery("#mn-save-card");n._forceAutopay && n._allowSavingCard ? (i.prop({ checked: n._forceAutopay, disabled: n._forceAutopay }), t.prop({ checked: n._forceAutopay, disabled: n._forceAutopay })) : (n._saveForFutureChecked = t.is(":checked"), n._saveForFutureDisabled = t.prop("disabled"), n._autopayCheck = i.is(":checked"), i.prop({ checked: n._forceAutopay || n._autopayCheck, disabled: n._forceAutopay }), t.prop({ checked: n._forceSaveCard || n._saveForFutureChecked || n._onlySaveCard || n._forceAutopay, disabled: n._forceSaveCard || n._capturePaymentProfileAndChargeOnApproval || n._saveForFutureDisabled || n._forceAutopay || n._onlySaveCard }));n.updateSaveCardDisclaimer(n.jQuery("#mn-save-card").is(":checked"));
    }, _getPaymentMethods: function _getPaymentMethods() {
      var t = this,
          n = ["card", "us_bank_account"];return t._isAchAllowed() || (n = ["card"]), n;
    }, _isAchAllowed: function _isAchAllowed() {
      var n = this;return !(!n._allowAddingBankAccounts || !n._allowBankPayments || !n._allowSavingCard || !n._acceptAch);
    }, _hideCCPaymentProfilesFromDropdown: function _hideCCPaymentProfilesFromDropdown() {
      var n = this;n._hideCCPaymentProfiles = !0;var t = n.jQuery("#mn-saved-profiles"),
          i = t.find(":selected");i.attr("data-profiletype") == "1" && t.find("option:first").prop("selected", !0);n.jQuery("#mn-saved-profiles").find("option[data-profiletype=1]").attr("hidden", !0);n._setProfileSelectChangeEvent(t, n);
    }, _getPaymentMethodOptions: function _getPaymentMethodOptions() {
      return this._capturePaymentProfileAndChargeOnApproval ? { us_bank_account: { verification_method: "instant" } } : null;
    }, _getStripeIntentOptions: function _getStripeIntentOptions(n) {
      var i = this;i._currency = n.Currency.toLowerCase();var r = n.Currency ? n.Currency.toLowerCase() : "usd",
          t = { currency: r, disallowedCardBrands: i._getDisallowedCardBrands() };return i._onlySaveCard ? (t.mode = "setup", t.paymentMethodOptions = i._getPaymentMethodOptions(), i._payOnBehalfOfSomebodyElse === !0 && i._paymentProfilePaymentMethodConfigurationId !== null ? t.payment_method_configuration = i._paymentProfilePaymentMethodConfigurationId : t = i._setStripePaymentSettingsForSetupMode(t)) : (this._stripeOnBehalfOf = n.MerchantId, t.mode = "payment", t.capture_method = "automatic_async", t.amount = 1099, t.onBehalfOf = n.MerchantId, t.paymentMethodOptions = { us_bank_account: { verification_method: "instant", financial_connections: { permissions: ["balances", "payment_method"] } } }, t.paymentMethodCreation = "manual", i._payOnBehalfOfSomebodyElse === !0 && i._stripeConnectPaymentMethodConfigId !== null ? t.payment_method_configuration = i._stripeConnectPaymentMethodConfigId : t = i._setStripePaymentSettingsForPaymentMode(t)), t;
    }, _getDisallowedCardBrands: function _getDisallowedCardBrands() {
      var n = this,
          t = [];return n._limitPaymentMethods && (n._stripeGatewaySettings.AcceptVisa === !1 && t.push("visa"), n._stripeGatewaySettings.AcceptMC === !1 && t.push("mastercard"), n._stripeGatewaySettings.AcceptAMX === !1 && t.push("american_express"), n._stripeGatewaySettings.AcceptDiscover === !1 && t.push("discover_global_network")), t;
    }, _refreshStripeIntentOptions: function _refreshStripeIntentOptions() {
      var n = this;if (n._allowStripeIntentRefresh() && (n._payOnBehalfOfSomebodyElse === !1 || n._stripeConnectPaymentMethodConfigId === null || n._onlyAchPaymentProfilePaymentMethodConfigurationId == null)) {
        var _t = { paymentMethodTypes: null, payment_method_configuration: null };_t = n._onlySaveCard ? n._setStripePaymentSettingsForSetupMode(_t) : n._setStripePaymentSettingsForPaymentMode(_t);n._stripeElements.update(_t);
      }
    }, setModeAndAmount: function setModeAndAmount(n, t) {
      var i = this;if (i._paymentGatewayTypeId === 1 && i._stripeElements && !n && t > 0) {
        var _n = { mode: "payment", amount: t * 100 };i._stripeElements.update(_n);
      }i.setOnlySaveCard(n);i.setAmount(t, i._paymentGatewayId);
    }, _setStripePaymentSettingsForPaymentMode: function _setStripePaymentSettingsForPaymentMode(n) {
      var t = this;return t._limitPaymentMethodToAch() && t._stripeConnectOnlyAchPaymentMethodConfigId != null ? (n.payment_method_configuration = t._stripeConnectOnlyAchPaymentMethodConfigId, t._allowStripeConnectOnlyAchPaymentMethodConfig = !0, t._hideCCPaymentProfilesFromDropdown()) : (n.paymentMethodTypes = t._getPaymentMethods(), t._allowStripeConnectOnlyAchPaymentMethodConfig = !1, t._hideCCPaymentProfiles = !1, t.jQuery("#mn-saved-profiles").find("option[data-profiletype=1]").attr("hidden", !1)), n;
    }, _setStripePaymentSettingsForSetupMode: function _setStripePaymentSettingsForSetupMode(n) {
      var t = this;return t._limitPaymentMethodToAch() && t._onlyAchPaymentProfilePaymentMethodConfigurationId != null ? (n.payment_method_configuration = t._onlyAchPaymentProfilePaymentMethodConfigurationId, t._allowStripeConnectOnlyAchPaymentMethodConfig = !0, t._hideCCPaymentProfilesFromDropdown()) : (n.paymentMethodTypes = t._getPaymentMethods(), t._hideCCPaymentProfiles = !1, t._allowStripeConnectOnlyAchPaymentMethodConfig = !1, t.jQuery("#mn-saved-profiles").find("option[data-profiletype=1]").attr("hidden", !1)), n;
    }, _allowStripeIntentRefresh: function _allowStripeIntentRefresh() {
      var n = this;return n._useStripePaymentIntents && n._limitPaymentMethods && n._paymentGatewayTypeId == 1 && n._stripeElements != undefined && n._stripeElements != null;
    }, _load: function _load() {
      var i = this;i.jQuery.getJSON(i._getGatewayUrl(), function (f) {
        var o, y, s, l, c, e, p, a, v;if (console.log("main widget data: ", f), !f) {
          i._showError("Sorry no payment gateway was found.");return;
        }if (f.PaymentGatewayTypeId === 0 || f.PaymentGatewayTypeId === 2) {
          i._showError("Sorry this gateway does not support payments");return;
        }for (i._recaptchaSiteKey = f.RecaptchaSiteKeyV3, i._recaptchaLoaded == !1 && (i._recaptchaLoaded = !0, r("https://www.google.com/recaptcha/api.js?render=" + i._recaptchaSiteKey)), i._isStaff = f.IsStaff, i._tenantName = f.TenantName, i.jQuery("#mn-bank-tenant-name").text(i._tenantName), i._tenantId = f.TenantId, i._organizationId = i._organizationId ? i._organizationId : f.OrganizationId, i._paymentGatewayId = f.PaymentGatewayId, i._paymentGatewayTypeId = f.PaymentGatewayTypeId, i._countryCode = f.CountryCode, i.updateFutureSaveMessage(f.DisplayName, f.SystemContactTypeId), i._allowSavingCard = i._allowSavingCard && f.AllowSaveProfile, i._allowUseOfProfiles = i._allowUseOfProfiles && f.AllowSaveProfile, i._forceShowSaveCard = i._forceShowSaveCard && f.AllowSaveProfile, i._showSaveCard = i._showSaveCard && f.AllowSaveProfile, i._defaultErrorMessage = "Sorry there was an error while recording the charge.", i._paymentTerms = f.PaymentTerms, i._stripeGatewaySettings = f.StripeGatewaySettings, i._payOnBehalfOfSomebodyElse = f.PayOnBehalfOfSomebodyElse, i._stripeConnectPaymentMethodConfigId = f.StripeConnectPaymentMethodConfigId, i._paymentProfilePaymentMethodConfigurationId = f.PaymentProfilePaymentMethodConfigurationId, i._stripeConnectOnlyAchPaymentMethodConfigId = f.StripeConnectOnlyAchPaymentMethodConfigId, i._onlyAchPaymentProfilePaymentMethodConfigurationId = f.OnlyAchPaymentProfilePaymentMethodConfigurationId, i._limitPaymentMethods = f.LimitPaymentMethods, i._limitDollarAmounts = f.LimitDollarAmounts, i._useStripePaymentIntents = f.UseStripePaymentIntents, i._allowWallets = f.LimitPaymentMethods ? f.StripeGatewaySettings.AcceptWallets : !0, i._acceptAch = f.EnableACH ? f.LimitPaymentMethods ? f.StripeGatewaySettings.AcceptAch : !0 : !1, i._splitOnFeeItems = f.SplitOnFeeItems, i._dualPricingEnabled = f.DualPricingEnabled, i._dualPricingRate = f.DualPricingRate, i._sessionKey = f.SessionKey, i.jQuery(".mn-widget-payment-widget").attr("gatewayType", f.PaymentGatewayTypeId), i._allowSavingCard && f.AutoSaveProfile || i._onlySaveCard ? i.jQuery("#mn-save-card").attr("checked", !0) : (i.jQuery("#mn-save-card").attr("checked", !1), i.jQuery("#mn-use-for-sb").attr("checked", !1)), i._paymentTerms.IsEnabled && (i.jQuery("#mn-terms-and-conditions").show(), i.jQuery("#mn-terms-and-conditions-title").text(i._paymentTerms.PaymentTermsTitle).show(), i.jQuery("#mn-terms-and-conditions-summary").text(i._paymentTerms.PaymentTermsSummary).show(), i.jQuery("#mn-terms-and-conditions-link").html('<a href="' + i._paymentTerms.FullTermsOfUseURL + '" target="_blank">Full Terms<\/a>').show()), i.jQuery("#mn-use-for-sb").unbind("click").click(function () {
          var n = this;i._showScheduledBillings = i.jQuery(n).is(":checked");i._showScheduledBillings || i._capturePaymentProfileAndChargeOnApproval ? i.jQuery("#mn-save-card").prop("checked", !0).attr("disabled", "disabled") : i._forceSaveCard || i._capturePaymentProfileAndChargeOnApproval || i._forceAutopay || i._onlySaveCard || i.jQuery("#mn-save-card").removeAttr("disabled");i.updateSaveCardDisclaimer(i.jQuery("#mn-save-card").is(":checked"));
        }), i.jQuery("#mn-use-for-sb").is(":checked") && (i._showScheduledBillings || i._showAllowPaymentProfileInAutoPayCheckbox) && i.jQuery("#mn-save-card").prop("checked", !0).attr("disabled", "disabled"), i._isStaff && (i.jQuery(".mn-card-cvc").removeAttr("required").parents("div.mn-row").removeClass("mn-required"), i.jQuery("#mn-existing-card-cvc").removeAttr("required")), o = 0; o <= 7; o++) {
          i.jQuery(".mn-gt-" + o + "-field").hide();
        }if (i.jQuery(".mn-gt-" + f.PaymentGatewayTypeId + "-field").show(), i._allowUseShippingAddress && i.jQuery("#use-shipping-address-chk").show(), i._allowPartialPayments || i.jQuery("#amount").attr("disabled", "disabled"), f.PaymentGatewayTypeId === 1) location.protocol !== "http:" || location.port && location.port != "80" || (t.location.href = "https:" + t.location.href.substring(5)), i._stripeKey = f.StripeKey, i._stripe = Stripe(i._stripeKey, { betas: ["blocked_card_brands_beta_2"] }), i._useStripePaymentIntents ? i._loadStripeIntents(f) : i._loadStripePayments(f);else if (f.PaymentGatewayTypeId === 3) {
          i.loadCountries("x_country");var w = i.jQuery("#mn-save-card-wrapper"),
              rt = i.jQuery("#mn-save-card-disclaimer"),
              ut = rt.text();i._onlySaveCard ? w.hide() : w.detach().appendTo("#mn-saved-cards");i.jQuery("#mn-save-card-disclaimer").text(ut.replace(/&#39;/g, "'"));i._initAuthProfile();f.ConfigInfoJson != "" && (i._authSettings = { UseSandbox: "", CaptureType: "", LoginId: "", TransactionKey: "", MD5Hash: "", PublicClientKey: "", AcceptVisa: "", AcceptMC: "", AcceptAMX: "", AcceptDiscover: "", RequirePhone: "", RequireEmail: "", RequireAddress: "", TestCard: !1 }, i._authSettings = JSON.parse(f.ConfigInfoJson), i._authSettings.RequirePhone && i.jQuery("#x_phone").prop("required", !0).parent().parent().addClass("mn-required"), i._authSettings.RequireEmail && i.jQuery("#x_email").prop("required", !0).parent().parent().addClass("mn-required"), i._authSettings.RequireAddress && i.jQuery(".mn-dpm-addr-field").prop("required", !0).parent().parent().addClass("mn-required"), i.jQuery('[name="x_first_name"]').val(f.FirstName), i.jQuery('[name="x_last_name"]').val(f.LastName), i.jQuery('[name="x_address"]').val(i._address1 ? i._address1 : f.Address), i.jQuery('[name="x_city"]').val(i._city ? i._city : f.City), i.jQuery('[name="x_zip"]').val(i._zip ? i._zip : f.PostalCode), i.jQuery('[name="x_email"]').val(i._email ? i._email : f.Email), i.jQuery('[name="x_phone"]').val(i._phone ? i._phone : f.Phone), i.jQuery('[name="x_country"]').change(function () {
            i.loadStatesAuth();
          }).val(i._country ? i._country : f.CountryCode).change(), i.jQuery('[name="x_state"]').val(i._state ? i._state : f.StateProvince).prop("selected", !0), i.jQuery("input[name='mn-auth-existing-profile']").unbind("click").click(function () {
            i._toggleAuthNewCard();
          }), i.jQuery("#mn-auth-profiles-manage-btn").unbind("click").click(function () {
            i._showAuthProfileManagement();
          }));i._onlySaveCard && (i.jQuery("input[name='mn-auth-existing-profile'][value='true']").click(), i.jQuery(".mn-auth-profile-radio").hide(), i.jQuery("#mn-new-card-info").hide(), i.jQuery("#mn-demographics").hide());
        } else if (f.PaymentGatewayTypeId === 4 || f.PaymentGatewayTypeId === 5) {
          i._billhighwayKey = f.BillhighwayKey;i._billhighwayV2Key = f.BillhighwayV2Key;i.jQuery("#mn-existing-card-cvc-wrapper").hide();i._paymentGatewayTypeId === 5 && i.jQuery("#mn-add-bh-bank").val("Pay by Bank Account");var b = i.jQuery('[name="stripe_address1"]'),
              k = i.jQuery('[name="stripe_city"]'),
              d = i.jQuery("#mn-bh-state"),
              g = i.jQuery('[name="stripe_zip"]'),
              e = i.jQuery("#mn-card-name");e.val(((f.FirstName ? f.FirstName : "") + " " + (f.LastName ? f.LastName : "")).trim()).prop("required", !0).parent().parent().addClass("mn-required");i.jQuery("#mn-bank-account-holder-first-name").val(f.FirstName ? f.FirstName : "");i.jQuery("#mn-bank-account-holder-last-name").val(f.LastName ? f.LastName : "");b.val(i._address1 ? i._address1 : f.Address).prop("required", !0).parent().parent().addClass("mn-required");k.val(i._city ? i._city : f.City).prop("required", !0).parent().parent().addClass("mn-required");y = abbrState(i._state ? i._state : f.StateProvince, "abbr");d.val(y).prop("selected", !0).prop("required", !0).parent().parent().addClass("mn-required");g.val(i._zip ? i._zip : f.PostalCode).prop("required", !0).parent().parent().addClass("mn-required");i.jQuery('[name="x_country"]').val(i._country ? i._country : f.CountryCode);s = i.jQuery("#mn-card-email");s.val(i._email ? i._email : f.Email);i.jQuery('[name="x_phone"]').val(i._phone ? i._phone : f.Phone);l = i.jQuery("#mn-bank-email");l.val(s.val());b.prop("required", !0);k.prop("required", !0);d.prop("required", !0);g.prop("required", !0);s.prop("required", !0);l.prop("required", !0);f.ConfigInfoJson != "" && (i._billhighwaySettings = { UseSandbox: "", GroupId: "", ClientId: "", ChapterId: "" }, i._billhighwaySettings = JSON.parse(f.ConfigInfoJson));
        } else if (f.PaymentGatewayTypeId === 6) {
          var e = i.jQuery("#mn-card-name"),
              ft = i.jQuery("#mn-card-number"),
              nt = i.jQuery('[name="stripe_address1"]'),
              et = i.jQuery('[name="stripe_address2"]'),
              tt = i.jQuery('[name="stripe_city"]'),
              it = i.jQuery('[name="stripe_zip"]');e.attr("maxlength", "50");nt.attr("maxlength", "30");et.attr("maxlength", "30");tt.attr("maxlength", "21");it.attr("maxlength", "5");i.jQuery("#nar-member-id").prop("required", !0).parent().parent().parent().addClass("mn-required");i.jQuery("#mn-nar-card-account-type-row").addClass("mn-required");i.jQuery("#mn-nar-bank-contribution-type-row").addClass("mn-required");e.prop("required", !0).parent().parent().addClass("mn-required");ft.prop("required", !0).parent().parent().addClass("mn-required");nt.prop("required", !0).parent().parent().addClass("mn-required");tt.prop("required", !0).parent().parent().addClass("mn-required");it.prop("required", !0).parent().parent().addClass("mn-required");i.jQuery("#mn-bank-email").parent().parent().addClass("mn-required");i.jQuery("#mn-bank-account-holder-name").parent().parent().addClass("mn-required");i.jQuery(".mn-card-cvc").removeAttr("required").parents("div.mn-row").removeClass("mn-required");i.jQuery("#nar-member-id").val(f.DefaultNRDSMemberId);i.jQuery("#nar-bank-member-id").val(f.DefaultNRDSMemberId);i._contactNrdsMemberId = f.NRDSMemberId;i._nrdsDefaultMemberId = f.DefaultNRDSMemberId;c = function c() {
            var r = i.jQuery('[name="nar-has-nrds-id"]:checked'),
                u = i.jQuery("#nar-member-id"),
                n,
                t;u.toggle(r.val() === "yes");u.val(r.val() === "yes" ? f.NRDSMemberId : f.DefaultNRDSMemberId);n = i.jQuery('[name="nar-bank-has-nrds-id"]:checked');t = i.jQuery("#nar-bank-member-id");t.toggle(n.val() === "yes");t.val(n.val() === "yes" ? f.NRDSMemberId : f.DefaultNRDSMemberId);
          };i.jQuery("#nar-bank-nrds-id-q").hide();i.jQuery("#nar-nrds-id-q").hide();i._contactNrdsMemberId && i._contactNrdsMemberId != "" ? (i.jQuery('[name="nar-has-nrds-id"][value=yes]').attr("checked", !0), i.jQuery('[name="nar-bank-has-nrds-id"][value=yes]').attr("checked", !0)) : (i.jQuery('[name="nar-has-nrds-id"][value=no]').attr("checked", !0), i.jQuery('[name="nar-bank-has-nrds-id"][value=no]').attr("checked", !0));c();i.jQuery('[name="nar-has-nrds-id"]').unbind("click").click(function () {
            i.jQuery('[name="nar-bank-has-nrds-id"][value="' + i.jQuery(this).val() + '"]').prop("checked", !0);c();
          });i.jQuery('[name="nar-bank-has-nrds-id"]').unbind("click").click(function () {
            i.jQuery('[name="nar-has-nrds-id"][value="' + i.jQuery(this).val() + '"]').prop("checked", !0);c();
          });i.jQuery('[name="nar-has-nrds-card-type"]').unbind("click").click(function () {
            i.jQuery('[name="nar-nrds-contribution-type"][value="' + i.jQuery(this).val() + '"]').prop("checked", !0);
          });i.jQuery('[name="nar-nrds-contribution-type"]').unbind("click").click(function () {
            i.jQuery('[name="nar-has-nrds-card-type"][value="' + i.jQuery(this).val() + '"]').prop("checked", !0);
          });i.jQuery("#mn-bank-account-holder-name").change(function () {
            i.jQuery("#mn-e-check-account").text(i.jQuery(this).val());
          });i.jQuery("#mn-payment-nar-continue-pac").unbind("click").click(function () {
            i._narPacContinue();
          });i.jQuery("#mn-payment-nar-cancel-pac").unbind("click").click(function () {
            i._narPacCancel();
          });i._narReadyToSubmit = !1;i.jQuery("#mn-e-check-faq").dialog({ resizable: !0, autoOpen: !1, height: "auto", width: "auto", modal: !0, buttons: { Done: function Done() {
                i.jQuery(this).dialog("close");
              } } });i.jQuery("#mn-e-check-faq-link").unbind("click").click(function (n) {
            n.preventDefault();i.jQuery("#mn-e-check-faq").dialog("open");
          });i.jQuery("#mn-bank-nar-error-805-faq-link").unbind("click").click(function (n) {
            n.preventDefault();i.jQuery("#mn-e-check-faq").dialog("open");
          });i.jQuery("#mn-telecheck-privacy-policy").dialog({ resizable: !0, autoOpen: !1, height: "auto", width: "auto", modal: !0, buttons: { Done: function Done() {
                i.jQuery(this).dialog("close");
              } } });i.jQuery("#mn-telecheck-privacy-policy-link").unbind("click").click(function (n) {
            n.preventDefault();i.jQuery("#mn-telecheck-privacy-policy").dialog("open");
          });i.narPaymentsProcessIframeResponse = function (r) {
            var o, s, u, f, e;(console.log("narPaymentsProcessIframeResponse called with: " + r.data.message), o = r.origin || r.originalEvent.origin, s = t.location.href.substr(0, t.location.href.substr(8).indexOf("/") + 8), o === s && r.data && r.data.message) && r.data.message != "PayrixLoaded" && (u = r.data.message, i.narResult = u, i.narResultCode = i._getUrlParameter("ResultCode", u), i.narResultMsg = i._getUrlParameter("ResultMessage", u), i.narEccCode = i._getUrlParameter("ECControlNumber", u), i._narPaymentsRequestId = Number(i._getUrlParameter("AssociationRequestID", u)), i.narResultCode === "0" ? i._narPaymentsAction === "auth" ? i._narCaptureAuthorization() : i._narPaymentsAction === "capture" || i._narPaymentsAction === "charge" || i._narPaymentsAction === "checkcharge" ? (e = n.formPost, e.FailureReason.value = "", i._narReadyToSubmit = !0, i._setNarPaymentsFormFields(), i.continuePayCardPost()) : i._narPaymentsAction === "addCard" && (i._narProfileKey = i._narPaymentsRequestId, i._narPaymentsRequestId = "", i._setNarPaymentsFormFields(), i._narPaymentsAddCardFinish()) : (i.narResultCode === "804" ? i.jQuery("#mn-bank-nar-error-804").show() : i.narResultCode === "805" ? i.jQuery("#mn-bank-nar-error-805").show() : i.narResultCode === "807" ? i.jQuery("#mn-bank-nar-error-807").show() : i.narResultCode === "5" ? i.narResultMsg = i._narPaymentsAction === "addCard" ? "NAR Ecommerce does not allow saving a payment profile if you are not an active member in NRDS." : "You are not a member in Active, Provisional or Suspended Status. Please contact staff to help resolve this issue." : i.narResultCode === "6" && (i._payingByBank ? i.narResultMsg = "The MICR or Check number you have entered is invalid. Please re-enter the numbers, omitting any dashes or spaces." : i.narResultMsg === "A Credit Card Number as it appears on your credit card statement is required. No dashes or spaces" && (i.narResultMsg = "The credit card number or expiration date you entered is not valid. Please re-enter the numbers, omitting any dashes or spaces.")), f = "Sorry there was an error.", i.narResultMsg && (f = i.narResultMsg), i._showError(f), i._narPacOnError(), e = n.formPost, e.FailureReason.value = f, i._narPaymentsAddUpdateEpayment(i._hideProgress)), i.enablePaymentButton());
          };i._listenerExists(t) || i._insertListener(t, u, i.narPaymentsProcessIframeResponse, !0);t.onbeforeunload = function () {
            i._removeListener(t, u, i.narPaymentsProcessIframeResponse, !0);
          };i._narPaymentsBaseUrl = f.NarPaymentsBaseUrl;f.ConfigInfoJson != "" && (i._narPaymentsSettings = { AssociationId: "", UserId: "", Password: "", DefaultId: "", AcceptVisa: "", AcceptMC: "", AcceptAMX: "", AcceptDiscover: "", AcceptTeleCheck: "" }, i._narPaymentsSettings = JSON.parse(f.ConfigInfoJson), i._narPaymentsSettings.AcceptTeleCheck || (i._allowBankPayments = !1, i._allowAddingBankAccounts = !1), i.jQuery("#mn-card-email").val(i._email ? i._email : f.Email), i.jQuery('[name="stripe_address1"]').val(i._address1 ? i._address1 : f.Address), i.jQuery('[name="stripe_address2"]').val(i._address2 ? i._address2 : f.Address2), i.jQuery('[name="stripe_city"]').val(i._city ? i._city : f.City), i.jQuery('[name="stripe_zip"]').val(i._zip ? i._zip : f.PostalCode), i.jQuery('[name="stripe_country"]').change(function () {
            i.loadStatesStripe();
          }).val(i._country ? i._country : f.CountryCode).change(), i.jQuery("#mn-bh-state").val(i._state ? i._state : f.StateProvince).prop("selected", !0));
        } else if (f.PaymentGatewayTypeId === 7) i.jQuery("#mn-telecheck-btn").val("Pay by ACH"), i.data = f, i.payrixIframeResponse = function (t) {
          console.log("payrixIframeResponse called with: " + t.data.message);i._payFieldsLoaded || t.data.message != "PayrixLoaded" || (i._payFieldsLoaded = !0, n.getElementById("PayrixFieldsIframe").contentWindow.setupPayFields(f, i));
        }, !i._payFieldsLoaded && n.getElementById("PayrixFieldsIframe").contentWindow.setupPayFields && (i._payFieldsLoaded = !0, n.getElementById("PayrixFieldsIframe").contentWindow.setupPayFields(f, i)), i._listenerExists(t) || i._insertListener(t, u, i.payrixIframeResponse, !0), t.onbeforeunload = function () {
          i._removeListener(t, u, i.payrixIframeResponse, !0);
        };else if (f.PaymentGatewayTypeId === 8) {
          e = i.jQuery("#mn-card-name");var _n2 = i.jQuery("#stripe_zip"),
              _t2 = i.jQuery("#mn-bank-account-holder-type"),
              _u = i.jQuery("#mn-bank-account-holder-first-name"),
              _o = i.jQuery("#mn-bank-account-holder-last-name"),
              _s = i.jQuery("#mn-bank-account-holder-name");_n2.attr("maxlength", "5");i.jQuery("#mn-telecheck-btn").parent().toggle(f.BankChargesEnabled);_n2.prop("required", !0).parent().parent().addClass("mn-required");e.prop("required", !0).parent().parent().addClass("mn-required");_t2.unbind("change").change(function () {
            i.jQuery(this).val() === "individual" ? (_u.parent().parent().addClass("mn-required").show(), _o.parent().parent().addClass("mn-required").show(), _s.parent().parent().removeClass("mn-required").hide()) : (_u.parent().parent().removeClass("mn-required").hide(), _o.parent().parent().removeClass("mn-required").hide(), _s.parent().parent().addClass("mn-required").show());
          });_t2.change();var _h = "By submitting this, I am authorizing " + f.TenantName + " to initiate a ACH/electronic debit in the amount indicated from the bank account I designated above. I understand that this Authorization will remain in full force and effect until the transaction is cancelled by me by contacting " + f.TenantName + ", or the ACH/electronic debit is processed from the designated account. I certify that (1) I am authorized to debit the bank account above and (2) the ACH/electronic payment I am authorizing complies with all applicable laws.";i.jQuery("#mn-bank-disclaimer").text(_h);typeof AffiniPay != "undefined" && AffiniPay !== null || i._affiniPayLoaded ? typeof AffiniPay != "undefined" && AffiniPay != null && i.setupAffiniPay(f) : (r("https://cdn.affinipay.com/hostedfields/1.1.1/fieldGen_1.1.1.js", function () {
            i.setupAffiniPay(f);
          }), i._affiniPayLoaded = !0);
        }i._allowUseOfProfiles && i._contactId != null && i._contactId !== 0 ? (f.PaymentGatewayTypeId === 3 && (i._toggleAuthNewCard(), p = i.jQuery("#mn-saved-profiles").parent(), p.removeClass("mn-col-6").removeClass("col-sm-6").addClass("mn-col-5").addClass("col-sm-5")), i._getProfiles()) : (i.jQuery("#mn-saved-cards").hide(), i.jQuery("#mn-add-bank-or").hide(), f.PaymentGatewayTypeId === 3 && i.jQuery(".mn-auth-profile-radio").hide());i.updateFutureSaveMessage(f.DisplayName, f.SystemContactTypeId);i.toggleForceShowSaveCard(i._forceShowSaveCard);i._allowSavingCard && i._allowAddingBankAccounts && i._contactId != null && i._contactId !== 0 && (i._paymentGatewayTypeId !== 1 || !i._useStripePaymentIntents) ? (i.jQuery("#mn-plaid-btn").unbind("click").click(function () {
          i._plaidHandler.open();
        }), i._getCountries(), i.jQuery("#mn-bank-authorization").unbind("click").click(function () {
          i._checkBankAuthorization();
        }), i.jQuery("#mn-add-bank-button").unbind("click").click(function () {
          if (i._validateBank()) {
            i.jQuery("#mn-add-bank-button").prop("disabled", !0);var n = { country: i.jQuery("#mn-bank-country").val(), currency: i.jQuery("#mn-bank-currency").val(), routing_number: i.jQuery("#mn-bank-routing-number").val(), account_number: i.jQuery("#mn-bank-account-number").val(), account_holder_name: i.jQuery("#mn-bank-account-holder-name").val(), account_holder_type: i.jQuery("#mn-bank-account-holder-type").val() };i._stripe.createToken("bank_account", n).then(function (n) {
              n.error ? (i._showError(n.error.errors.exceptions[0] ? n.error.errors.exceptions[0] : n.error.message, i.jQuery("#mn-bank-errors")), i._hideProgress(), i.jQuery("#mn-add-bank-button").prop("disabled", !1)) : (i.jQuery("#mn-show-manual-bank").click(), i._submitBank(n.token.id), i._clearError());
            });
          }
        }), i.jQuery("#mn-add-bh-bank-button").unbind("click").click(function () {
          var t, n, r;i._validateBHBank() && (i.jQuery("#mn-add-bh-bank-button").prop("disabled", !0), t = { ClientId: i._billhighwaySettings.ClientId, GroupId: i._billhighwaySettings.GroupId, AccountNumber: i.jQuery("#mn-bank-account-number").val(), RoutingNumber: i.jQuery("#mn-bank-routing-number").val() }, i._IsTestBank = !1, n = "https://api.billhighway.com", i._billhighwaySettings.UseSandbox && (i._IsTestBank = i.jQuery("#mn-bank-account-number").val() == "213456" || i.jQuery("#mn-bank-account-number").val() == "111111111"), i._IsTestBank && (n = "https://stagingapi.billhighway.com", i._billhighwaySettings.GroupId == 0 && (i._billhighwaySettings.ClientId = 1237, i._billhighwaySettings.GroupId = 99998)), r = new Date().getTime(), i.jQuery.support.cors = !0, i.jQuery.ajax({ url: n + "/payments/ach/token?a=" + encodeURIComponent(i._billhighwayKey) + "&n=" + r.toString(), data: JSON.stringify(t), contentType: "text/plain", type: "POST", dataType: "json" }).done(function (n) {
            n.IsError ? (console.log("billhighway token error errorCode: " + n.ErrorCode + " - " + n.ErrorMessage), i._hideProgress(), i._showError("Error: " + n.ErrorCode + " - " + n.ErrorMessage, i.jQuery("#mn-bank-errors")), i.jQuery("#mn-add-bh-bank-button").prop("disabled", !1)) : (i.jQuery("#mn-add-bh-bank").click(), i.jQuery("#mn-bank-account-number").val(""), i.jQuery("#mn-bank-routing-number").val(""), i._submitBank(n.BankAccountToken));
          }).fail(function (n) {
            var f = n.responseText,
                t = "-1",
                r = n.statusText,
                u;try {
              u = JSON.parse(f);t = u.ResponseStatus.ErrorCode;r = u.ResponseStatus.ErrorMessage;
            } catch (e) {}console.log("billhighway token error errorCode: " + t + " - " + r);i._hideProgress();i._showError("Error: " + t + " - " + r, i.jQuery("#mn-bank-errors"));i.jQuery("#mn-add-bh-bank-button").prop("disabled", !1);
          }));
        }), i.jQuery("#mn-add-bh-v2-bank-button").unbind("click").click(function () {
          var r, t, u;i._validateBHBank() && (i.jQuery("#mn-add-bh-v2-bank-button").prop("disabled", !0), r = { ClientId: i._billhighwaySettings.ClientId, GroupId: i._billhighwaySettings.GroupId, AccountNumber: parseInt(i.jQuery("#mn-bank-account-number").val()), RoutingNumber: parseInt(i.jQuery("#mn-bank-routing-number").val()) }, i._IsTestBank = !1, t = "https://api.billhighway.com", i._billhighwaySettings.UseSandbox && (t = "https://devgapi.billhighway.com", i._billhighwaySettings.ClientId = 1237, i._billhighwaySettings.GroupId = 99998, i._IsTestBank = !0, i._billhighwaySettings.BaseUrl && i._billhighwaySettings.BaseUrl == "https://stagingconnect.billhighway.com" && (t = "https://stagingapi.billhighway.com")), u = new Date().getTime(), jQuery.support.cors = !0, jQuery.ajax({ url: t + "/payments/ach/token?a=" + encodeURIComponent(i._billhighwayV2Key) + "&n=" + u.toString(), data: JSON.stringify(r), contentType: "text/plain", type: "POST", dataType: "json" }).done(function (t) {
            if (t.IsError) console.log("billhighway token error errorCode: " + t.ErrorCode + " - " + t.ErrorMessage), i._hideProgress(), i._showError("Error: " + t.ErrorCode + " - " + t.ErrorMessage, i.jQuery("#mn-bank-errors")), i.jQuery("#mn-add-bh-v2-bank-button").prop("disabled", !1);else {
              i.jQuery("#mn-add-bh-bank").click();var u = n.formPost,
                  r = i.jQuery("#mn-bank-account-number").val(),
                  f = r.substr(r.length - 4);u.AccountLast4.value = f;i.jQuery("#mn-bank-account-number").val("");i.jQuery("#mn-bank-routing-number").val("");i._submitBank(t.BankAccountToken);
            }
          }).fail(function (n) {
            var f = n.responseText,
                t = "-1",
                r = n.statusText,
                u;try {
              u = JSON.parse(f);t = u.ResponseStatus.ErrorCode;r = u.ResponseStatus.ErrorMessage;
            } catch (e) {}console.log("billhighway token error errorCode: " + t + " - " + r);i._hideProgress();i._showError("Error: " + t + " - " + r, i.jQuery("#mn-bank-errors"));i.jQuery("#mn-add-bh-v2-bank-button").prop("disabled", !1);
          }));
        })) : (i.jQuery("#mn-add-bank-wrapper").hide(), i.jQuery("#mn-new-bank-info").hide());i.jQuery("#mn-payment-form-loading").hide();i.jQuery("#mn-payment-form").show();(i._voluntaryAmount == undefined || i._voluntaryAmount <= 0) && i.toggleContributionType(!1);i.jQuery("#mn-show-manual-bank").unbind("click").click(function () {
          var t = i.jQuery("#mn-new-bank-info"),
              n,
              r;t.toggle();n = t.is(":visible");i.jQuery("#mn-payment-submit-row").toggle(!n);r = n ? "bank account" : "card";i.jQuery("#mn-save-card-pmt-type").text(r);
        });i.jQuery("#mn-add-bh-bank").unbind("click").click(function () {
          var t = i.jQuery("#mn-new-bank-info");if (t.toggle(), i._paymentGatewayTypeId === 5) {
            var n = t.is(":visible"),
                r = n ? "Pay by Card" : "Pay by Bank Account",
                u = n ? "Or Add Bank Information Below" : "Or Add Card Information Below",
                f = n ? "bank account" : "card";i.jQuery(this).val(r);i.jQuery("#mn-save-card-pmt-type").text(f);i._checkBankAuthorization();i.jQuery("#mn-new-card-info").toggle(!n);i.jQuery("#mn-or-add-card").text(u);n || i.jQuery("#mn-payment-submit-button").prop("disabled", !1);
          } else i.jQuery("#mn-payment-submit-row").toggle(!t.is(":visible"));
        });i.jQuery("#mn-telecheck-btn").unbind("click").click(function () {
          var t = i.jQuery("#mn-new-bank-info"),
              n;t.toggle();n = t.is(":visible");i._payingByBank = n;var r = "Pay by Electronic Check";i._paymentGatewayTypeId === 7 && (r = "Pay by ACH");var u = n ? "Pay by Card" : r,
              f = n ? "Or Add Checking Account Info Below" : "Or Add Card Information Below",
              e = n ? "checking account" : "card";i.jQuery(this).val(u);i.jQuery("#mn-save-card-pmt-type").text(e);i._checkBankAuthorization();i.jQuery("#mn-new-card-info").toggle(!n);i.jQuery("#mn-or-add-card").text(f);n || i.enablePaymentButton();i._paymentGatewayTypeId === 8 && i.jQuery("#mn-demographics").toggle(!n);i._paymentGatewayTypeId !== 7 && i._paymentGatewayTypeId !== 8 && (i.jQuery("#mn-scheduled-billings-wrapper").toggle(!n), i.jQuery("#mn-save-card-wrapper").toggle(!n));
        });i.jQuery("#mn-sb-chk-all").unbind("change").change(function () {
          i.jQuery('input[id^="mn-scheduled-billing-"]').prop("checked", this.checked);
        });i.jQuery("#mn-save-card").unbind("click").click(function () {
          var n = i.jQuery(this).is(":checked");i.jQuery("#mn-use-for-sb").prop("disabled", !n);i.jQuery("#mn-sb-chk-all").prop("disabled", !n);i.jQuery('input[id^="mn-scheduled-billing-"]').prop("disabled", !n);i.updateSaveCardDisclaimer(i.jQuery("#mn-save-card").is(":checked"));
        });f.Organizations && f.Organizations.length > 0 && i._trackOn == h.Organization && !(i._disableOrgSaveOnSCBilling && f.SystemContactTypeId == 1 && f.HasScheduledBillings) && (a = "", i.jQuery.each(f.Organizations, function (n, t) {
          a += '<option value="' + t.OrganizationId + '" ' + (t.IsDefault ? 'selected="selected"' : "") + ">" + t.Name + "<\/option>";
        }), v = i.jQuery("#mn-save-to-orgs"), v.find("option").remove().end(), v.append(a));i.jQuery("#mn-bank-verify-dialog").dialog({ autoOpen: !1, resizable: !1, height: "auto", width: 400, modal: !0, buttons: { Done: function Done() {
              i._showProgress();i.jQuery.ajax({ url: (i._getSecure() ? "https://" : "http://") + i._getDomain() + "/api/finance/bankaccount/verify", type: "post", dataType: "json", data: { PaymentProfileId: i._paymentProfileId, ProfileKey: i._profileKey, ClientKey: i._clientKey, Amount1: i.jQuery("#bank-verify-val-1").val(), Amount2: i.jQuery("#bank-verify-val-2").val() }, success: function success() {
                  i._showProgress();i._getProfiles();i._clearError();
                }, error: function error(n, t, r) {
                  var u = JSON.parse(n.responseText);console.log("bank verify error: " + n.responseText + " textStatus: " + t + " errorThrown: " + r);i._hideProgress();i._showError(u.errors && u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : n.responseText);i.enablePaymentButton();
                } });i.jQuery(this).dialog("close");
            }, Cancel: function Cancel() {
              i.jQuery(this).dialog("close");
            } }, open: function open(n, t) {
            i.jQuery(".ui-dialog-titlebar-close", t.dialog | t).hide();
          } });i.jQuery(".ui-dialog-titlebar-close").attr("aria-label", "close");i.jQuery("#mn-use-shipping-address-chk").unbind("change").click(function () {
          i._useShippingAddress();
        });i.jQuery("#mn-payment-submit-button").unbind("click").click(function (n) {
          i._submit(n);
        });i.jQuery("#mn-save-card-to-org").unbind("change").change(function () {
          i._getScheduledBillings();
        });i.jQuery("#mn-save-to-orgs").unbind("change").change(function () {
          i._getScheduledBillings();
        });i._getScheduledBillings();i._hideProgress();i._widgetLoaded && i._widgetLoaded();
      }).fail(function (n, t, r) {
        n.responseText != "" && (r = n.responseText);n.status === 404 && r === "" && (r = "Gateway could not be found.");var u = r;i._widgetLoadFailed && i._widgetLoadFailed(u);console.log("Request Failed: " + u);
      });
    }, setupAffiniPay: function setupAffiniPay(n) {
      var i = this;var r = { border: "1px solid rgb(204, 204, 204)", "border-style": "inset", color: "#000", "font-size": "14px", "font-weight": "400", padding: "8px", ":invalid": { color: "#FF0000", border: "3px solid red" }, width: "100%" },
          f = { publicKey: n.AffiniPayKey, fields: [{ selector: "#mn-affinipay-card-number", input: { type: "credit_card_number", placeholder: "Card Number", css: r } }, { selector: "#mn-affinipay-card-cvc", input: { type: "cvv", placeholder: "CVV", css: r } }] },
          e = { publicKey: n.AffiniPayKey, css: r, fields: [{ selector: "#mn-affinipay-bank-account-number", placeholder: "Bank Account Number", input: { type: "bank_account_number", css: r } }, { selector: "#mn-affinipay-bank-routing-number", input: { type: "routing_number", css: r } }] },
          u = function u() {};i.jQuery("#mn-affinipay-card-number").empty();i.jQuery("#mn-affinipay-card-cvc").empty();i.jQuery("#mn-affinipay-bank-account-number").empty();i.jQuery("#mn-affinipay-bank-routing-number").empty();i._affiniPayCCHostedFields = t.AffiniPay.HostedFields.initializeFields(f, u);i._affiniPayACHHostedFields = t.AffiniPay.HostedFields.initializeFields(e, u);
    }, toggleForceShowSaveCard: function toggleForceShowSaveCard(n) {
      var t = this;t._forceShowSaveCard = n;t._forceShowSaveCard || t._allowSavingCard && (t._showSaveCard || t._contactId != null && t._contactId !== 0) && !t._onlySaveCard ? t._allowSavingCard && (t._showSaveCard || t._onlySaveCard) && t._contactId !== null && t._contactId !== 0 && !t._hideSaveCardToOrg && (t._onlySaveCard && t._paymentGatewayTypeId === 3 || (t.jQuery("#mn-save-card-wrapper").show(), t._showAllowPaymentProfileInAutoPayCheckbox && t.jQuery("#mn-scheduled-billings-wrapper").show())) : (t.jQuery("#mn-save-card-wrapper").hide(), t.jQuery("#mn-scheduled-billings-wrapper").hide());
    }, _valueIsDefined: function _valueIsDefined(n) {
      return n != undefined && n != null && n !== "";
    }, _checkBankAuthorization: function _checkBankAuthorization() {
      var n = this,
          t = n.jQuery("#mn-bank-authorization").is(":checked");n.jQuery("#mn-add-bh-bank-button").prop("disabled", !t);n.jQuery("#mn-add-bank-button").prop("disabled", !t);(n._paymentGatewayTypeId === 5 || n._paymentGatewayTypeId === 6 || n._paymentGatewayTypeId === 8) && n.jQuery("#mn-payment-submit-button").prop("disabled", !t);
    }, _basicCardIsValid: function _basicCardIsValid() {
      var n = this,
          t = "",
          i = n.jQuery(".mn-card-cvc"),
          r = i.attr("required");return (n.jQuery(".mn-card-number").val() === "" && (t += "<br/>Card Number is required."), (n.jQuery(".mn-card-expiry-month").val() === "" || n.jQuery(".mn-card-expiry-year").val() === "") && (t += "<br/>Card Expiration is required."), (typeof r === "undefined" ? "undefined" : _typeof(r)) != (typeof undefined === "undefined" ? "undefined" : _typeof(undefined)) && r !== !1 && i.val() === "" && (t += "<br/>Card CVC is required."), n._paymentGatewayTypeId === 3 && (n._authSettings.RequirePhone && n.jQuery("#x_phone").val() === "" && (t += "<br/>Card Phone is required."), n._authSettings.RequireEmail && n.jQuery("#x_email").val() === "" && (t += "<br/>Card Email is required."), n._authSettings.RequireAddress && n.jQuery(".mn-dpm-addr-field").val() === "" && (t += "<br/>Card Address is required.")), t !== "") ? (t = "<b>Please review the following errors:<\/b>" + t, n._showError(t, null, !0), n._hideProgress(), n.enablePaymentButton(), !1) : !0;
    }, _advancedCardIsValid: function _advancedCardIsValid(n) {
      var t = paymentProcessingUtils.validateCreditCardNumber(n);return t ? "" : "<br/>Invalid card number.";
    }, _handleStripeIntentError: function _handleStripeIntentError(n) {
      var t = this;t._hideProgress();t._showError(n.message);t.enablePaymentButton();
    }, _submitStripeIntent: function _submitStripeIntent() {
      var t = this,
          i = t._currentPaymentMethod,
          r = t.jQuery("#mn-save-card").is(":checked");if (t._isWalletCharge()) {
        if (i === "google_pay") t._stripeSubmitWallet(t);else {
          t._stripeElements.update({ capture_method: "manual", amount: Math.round(t.getDualPriceAmount() * 100), paymentMethodTypes: ["card"] });var _i = n.formPost;_i.TokenId.value = "";t._stripeSubmitWallet(t);t._stripeGetIntent();
        }
      } else {
        var _n3 = { setupFutureUsage: r ? "off_session" : "on_session", capture_method: t._payingByBank ? "automatic_async" : "manual" };t._payOnBehalfOfSomebodyElse === !1 && t._allowStripeConnectOnlyAchPaymentMethodConfig === !1 && (_n3.paymentMethodTypes = [i]);t._stripeElements.update(_n3);t._stripeElements.submit().then(function (n) {
          n.error ? (t._stripeElements.update({ capture_method: "automatic_async", paymentMethodTypes: t._getPaymentMethods() }), t._handleStripeIntentError(n.error)) : t._preSubmitFunction ? t._preSubmitFunction() : t._onlySaveCard ? t.continueSaveCardPost() : t.continuePayCardPost();
        });
      }
    }, _stripeAppleAndGooglePaySetup: function _stripeAppleAndGooglePaySetup() {
      var t = this,
          i = t._validateControls ? Promise.resolve(t._validateControls()) : Promise.resolve(!0);i.then(function () {
        if (t.getAmount() == 0) {
          t._showError("<b>Amount cannot be 0<\/b>", null, !0);t._hideProgress();return;
        }t._clearError();t._stripeElements.update({ capture_method: "manual", amount: Math.round(t.getDualPriceAmount() * 100), paymentMethodTypes: ["card"] });var i = n.formPost;i.TokenId.value = "";t._currentPaymentMethod === "apple_pay" ? (t._stripeSubmitWallet(t), t._stripeGetIntent()) : t._stripeGetIntent(t._stripeGooglePayAutoSubmit);
      });
    }, _stripeGooglePayAutoSubmit: function _stripeGooglePayAutoSubmit(n) {
      n._hideProgress();n.enablePaymentButton();n.jQuery("#mn-wallet-confirm-row").hide();var t = n.jQuery("#mn-payment-submit-button");t.show();t.click();
    }, _stripeSubmitWallet: function _stripeSubmitWallet(n) {
      n._stripeElements.submit().then(function (t) {
        if (t.error) n._load(), n._handleStripeIntentError(t.error);else {
          var _t3 = !n._validateControls || n._currentPaymentMethod !== "google_pay" ? Promise.resolve(!0) : Promise.resolve(n._validateControls());_t3.then(function (t) {
            if (!t) {
              n.jQuery("#mn-payment-submit-button").removeAttr("disabled");n._hideProgress();return;
            }n._preSubmitFunction ? n._preSubmitFunction() : n.continuePayCardPost();
          });
        }
      });
    }, _stripeCreatePaymentMethod: function _stripeCreatePaymentMethod() {
      var t = this,
          i = n.formPost,
          r = t._stripeElements;t._stripe.createPaymentMethod({ elements: r }).then(function (n) {
        n.error ? t._handleStripeIntentError(n.error) : (n.paymentMethod.card && (i.CardType.value = n.paymentMethod.card.brand, i.CardLast4.value = n.paymentMethod.card.last4, i.CardExpMonth.value = n.paymentMethod.card.exp_month, i.CardExpYear.value = n.paymentMethod.card.exp_year), t._isWalletCharge() ? t._stripeConfirmPayment(t) : (i.TokenId.value = n.paymentMethod.id, t._stripeGetIntent(t._stripeConfirmPayment)));
      });
    }, _isWalletCharge: function _isWalletCharge() {
      return this._currentPaymentMethod === "google_pay" || this._currentPaymentMethod === "apple_pay" || this._currentPaymentMethod === "link";
    }, _stripeGetIntent: function _stripeGetIntent(n, t) {
      var i = this;grecaptcha.ready(function () {
        grecaptcha.execute(i._recaptchaSiteKey, { action: "getIntent" }).then(function (r) {
          i._recaptchaToken = r;i._stripeGetIntentInner(n, t);
        });
      });
    }, _stripeGetIntentInner: function _stripeGetIntentInner(t, i) {
      var r = this,
          u = n.formPost;u.StorePaymentInfoForFuture.value = r.jQuery("#mn-save-card").is(":checked");var f = "/api/widget/intent/";i && (f = "/api/widget/intent/paymentmethod");r.jQuery.ajax({ url: (r._getSecure() ? "https://" : "http://") + r._getDomain() + f, type: "post", dataType: "json", data: r._getFormData(), success: function success(n) {
          n ? (u.TokenId.value = n.Id, u.EPaymentTransactionId.value = n.EpaymentTransactionId, r._clientSecret = n.ClientSecret, t && t(r)) : (r._hideProgress(), r._showError("Something went wrong when trying to submit your request, you were not charged, please reload the page and try again."), r.enablePaymentButton());
        }, error: function error(n, t, i) {
          r.jQuery("#mn-payment-submit-button").show();var u = JSON.parse(n.responseText);console.log("Stripe intent error: " + n.responseText + " textStatus: " + t + " errorThrown: " + i);r._hideProgress();r._showError("Something went wrong when trying to submit your request, you were not charged, please reload the page and try again.");r.enablePaymentButton();
        } });
    }, _stripeConfirmPayment: function _stripeConfirmPayment(n) {
      n._stripe.confirmPayment({ elements: n._stripeElements, clientSecret: n._clientSecret, confirmParams: { return_url: "https://google.com" }, redirect: "if_required" }).then(function (t) {
        if (t.error) {
          var _i2 = { capture_method: "automatic_async", amount: Math.round(n.getDualPriceAmount() * 100) };n._stripeConnectPaymentMethodConfigId == null && n._stripeConnectOnlyAchPaymentMethodConfigId == null && (_i2.paymentMethodTypes = n._getPaymentMethods());n._stripeElements.update(_i2);n._handleStripeIntentError(t.error);
        } else n._submitWithRecaptchaToken();
      });
    }, _stripeConfirmSetup: function _stripeConfirmSetup(t) {
      t._stripe.confirmSetup({ elements: t._stripeElements, clientSecret: t._clientSecret, confirmParams: { return_url: "https://google.com" }, redirect: "if_required" }).then(function (i) {
        if (i.error) t._handleStripeIntentError(i.error);else {
          var _i3 = n.formPost;t._submitSaveCard(_i3.TokenId.value);
        }
      });
    }, _submit: function _submit(t) {
      var i = this,
          r = i.jQuery("#mn-payment-submit-button"),
          u;r.attr("disabled", "disabled");i.jQuery("#mn-bank-nar-error-804").hide();i.jQuery("#mn-bank-nar-error-805").hide();i.jQuery("#mn-bank-nar-error-807").hide();i._paymentGatewayTypeId === 6 && (n.formPost.EPaymentTransactionId.value = 0, n.formPost.FailureReason.value = "", i.EpaymentTransactionId = 0, i._narReadyToSubmit = !1, i._narSplitsModel = null);i._showProgress(!0);var f = i._currentPaymentMethod === "google_pay";return u = !i._validateControls || f ? Promise.resolve(!0) : Promise.resolve(i._validateControls(t)), u.then(function (t) {
        var u, e, h, o, f, s;if (!t) return r.removeAttr("disabled"), i._hideProgress(), !1;if (u = i.jQuery("#mn-saved-profiles").find(":selected"), e = i.jQuery("#mn-new-bank-info").is(":visible"), i._onlySaveCard) i._useStripePaymentIntents && u.val() === "" ? i._submitStripeIntent() : i._preSubmitFunction ? i._preSubmitFunction() : i.continueSaveCardPost();else {
          if ((u.val() === "" || i._paymentGatewayTypeId === 3 && i.jQuery("input[name='mn-auth-existing-profile']:checked").val() === "false") && i._paymentGatewayTypeId !== 1 && i._paymentGatewayTypeId !== 7 && i._paymentGatewayTypeId !== 8 && !e && !i._basicCardIsValid()) return;if (i._paymentGatewayTypeId === 1) {
            if (u.val() != "") i._postForm();else {
              if (i._useStripePaymentIntents) {
                i._submitStripeIntent();return;
              }f = n.formPost;f.PaymentProfileId.value = 0;h = 0;for (o in i._gatewayAmts) {
                i._gatewayAmts.hasOwnProperty(o) && i._gatewayAmts[o] != 0 && h++;
              }if (i.jQuery("#mn-save-card").is(":checked") || h == 0) i._stripe.createToken(i._stripeCard).then(function (t) {
                var u, f, r;if (t.error) i.enablePaymentButton(), i._showError(t.error.errors && t.error.errors.exceptions[0] ? t.error.errors.exceptions[0] : t.error.message), i._hideProgress();else {
                  u = !1;try {
                    u = i._stripeSettings.settings.card_payments.decline_on.cvc_failure && t.token.card.cvc_check == "fail";
                  } catch (e) {}u ? (i.enablePaymentButton(), i._showError("CVC check failed, please enter the correct CVC."), i._hideProgress()) : (f = t.token.id, r = n.formPost, r.CardType.value = t.token.card.brand, r.CardLast4.value = t.token.card.last4, r.CardExpMonth.value = t.token.card.exp_month, r.CardExpYear.value = t.token.card.exp_year, r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked"), r.TokenId.value = f, i._postForm());
                }
              });else {
                i._tokenresponses = 0;for (o in i._gatewayAmts) {
                  i._gatewayAmts[o] != 0 && i._stripe.createToken(i._stripeCard).then(function (t) {
                    var u, f, r;if (i._tokenresponses++, t.error) i.enablePaymentButton(), i._showError(t.error.errors && t.error.errors.exceptions[0] ? t.error.errors.exceptions[0] : t.error.message), i._hideProgress();else {
                      u = !1;try {
                        u = i._stripeSettings.settings.card_payments.decline_on.cvc_failure && t.token.card.cvc_check == "fail";
                      } catch (e) {}u ? (i.enablePaymentButton(), i._showError("CVC check failed, please enter the correct CVC."), i._hideProgress()) : (f = t.token.id, r = n.formPost, i._tokens[i._tokenresponses - 1] = f, r.CardType.value = t.token.card.brand, r.CardLast4.value = t.token.card.last4, r.CardExpMonth.value = t.token.card.exp_month, r.CardExpYear.value = t.token.card.exp_year, r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked"), r.TokenId.value = f, i._tokenresponses == h && i._postForm());
                    }
                  });
                }
              }
            }
          } else if (i._paymentGatewayTypeId === 4 || i._paymentGatewayTypeId === 5) {
            if (u.val() != "") {
              var f = n.formPost,
                  c = i.jQuery("#mn-existing-card-cvc").val(),
                  u = i.jQuery("#mn-saved-profiles").find(":selected");if (i._paymentGatewayTypeId === 4 && c == "" && u.data("profiletype") === 1) {
                i._showError("Please fill in CVC field.");i._hideProgress();i.enablePaymentButton();return;
              }f.CardCvc.value = c;i._postForm();
            } else {
              if (!e && !i._billhighwayCardIsValid()) return;i._paymentGatewayTypeId === 4 ? i._billhighwayTokenGeneration(i._billhighwayContinuePay) : i._billhighwayV2TokenGeneration(i._billhighwayV2ContinuePay);
            }
          } else if (i._paymentGatewayTypeId === 3) f = n.formPost, u.val() != "" && i.jQuery("input[name='mn-auth-existing-profile']:checked").val() === "true" ? (f.IsTestCard.value = i._authSettings.UseSandbox, i._postForm()) : (s = i.jQuery(".mn-card-number").val(), i._authSettings.UseSandbox && (i._authSettings.TestCard = s === "370000000000002" || s === "6011000000000012" || s === "4007000000027" || s === "4012888818888"), f.IsTestCard.value = i._authSettings.TestCard, i._authSettings.TestCard && (i._authSettings.LoginId = "8Gu64crDZ4", i._authSettings.PublicClientKey = "8KtddJ7472hkzM6wtZWF6r4tYuwk6ZcHJ93nx57Fqff966uK99Shbh3ErG56dPrq"), i._sendAuth(i));else if (i._paymentGatewayTypeId === 6) i._postForm();else if (i._paymentGatewayTypeId === 7) {
            if (u.val() != "") i._postForm();else if (e) {
              if (!i._validatePayrixBank()) return;i._setPayrixBankFields();i._postForm();
            } else n.getElementById("PayrixFieldsIframe").contentWindow.submit(i._amount, i.jQuery("#mn-save-card").is(":checked"));
          } else if (i._paymentGatewayTypeId === 8) if (u.val() != "") i._postForm();else if (e) {
            if (!i._validateAffiniPayBank()) return;i._setAffiniPayBankFields();var _r = i.jQuery("#mn-bank-account-holder-type").val() === "company",
                _u2 = i.jQuery("#mn-bank-account-holder-first-name").val(),
                _f = i.jQuery("#mn-bank-account-holder-last-name").val(),
                _e = i.jQuery("#mn-bank-account-holder-name").val(),
                _o2 = i.jQuery("#mn-bank-is-savings").is(":checked"),
                _t4 = {};_t4.account_holder_type = _r ? "business" : "individual";_t4.account_type = _o2 ? "savings" : "checking";_r ? _t4.name = _e : (_t4.given_name = _u2, _t4.surname = _f);console.log(JSON.stringify(_t4));i._affiniPayACHHostedFields.getPaymentToken(_t4).then(function (t) {
              console.log("AffiniPay Success Bank Token: " + t.id);var u = t.id,
                  r = n.formPost;r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked");r.TokenId.value = u;i._postForm();
            }).catch(function (n) {
              console.log("AffiniPay Bank Error: " + n);i._showError(n);i._hideProgress();i.enablePaymentButton();
            });
          } else {
            if (!i._validateAffiniPayCard()) return;var _t5 = i.jQuery("#mn-card-name").val(),
                _r2 = i.jQuery("#mn-card-email").val(),
                _u3 = i.jQuery("#stripe_address1").val(),
                _f2 = i.jQuery("#stripe_city").val(),
                _e2 = i.jQuery("#mn-bh-state").val(),
                _o3 = i.jQuery("#stripe_zip").val(),
                _s2 = i.jQuery(".mn-card-expiry-year").val(),
                _h2 = i.jQuery(".mn-card-expiry-month").val();i._affiniPayCCHostedFields.getPaymentToken({ name: _t5, email: _r2, address1: _u3, city: _f2, state: _e2, postal_code: _o3, exp_year: _s2, exp_month: _h2 }).then(function (t) {
              console.log("AffiniPay Success Token: " + t.id);var u = t.id,
                  r = n.formPost;r.CardLast4.value = t.number.substr(t.number.length - 4);r.CardExpMonth.value = t.exp_month;r.CardExpYear.value = t.exp_year;r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked");r.TokenId.value = u;i._postForm();
            }).catch(function (n) {
              console.log("AffiniPay Error: " + n);i._showError(n);i._hideProgress();i.enablePaymentButton();
            });
          }
        }return !1;
      });
    }, _validateAffiniPayCard: function _validateAffiniPayCard() {
      var t = this,
          n = "";return (t.jQuery("#mn-card-name").val() === "" && (n += "<br/>Name on Card is required."), t.jQuery("#mn-bh-state").val() === "" && (n += "<br/>State is required."), t.jQuery("#stripe_zip").val() === "" && (n += "<br/>Zip/Postal Code is required."), t.jQuery(".mn-card-expiry-year").val() === "" && (n += "<br/>Card expiration year is required."), t.jQuery(".mn-card-expiry-month").val() === "" && (n += "<br/>Card expiration month is required."), n !== "") ? (n = "<b>Please review the following errors:<\/b>" + n, t._showError(n, null, !0), t._hideProgress(), t.enablePaymentButton(), !1) : !0;
    }, _validateAffiniPayBank: function _validateAffiniPayBank() {
      var n = this,
          t = !0;return n.jQuery("#mn-bank-account-holder-first-name").val() === "" ? (n.jQuery("#mn-bank-account-holder-first-name").addClass("error"), n._showError("Please enter a first name.", n.jQuery("#mn-bank-errors")), t = !1) : n.jQuery("#mn-bank-account-holder-last-name").val() === "" && (n.jQuery("#mn-bank-account-holder-last-name").addClass("error"), n._showError("Please enter a last name.", n.jQuery("#mn-bank-errors")), t = !1), t ? n._clearError(n.jQuery("#mn-bank-errors")) : (n._hideProgress(), n.enablePaymentButton()), t;
    }, _setAffiniPayBankFields: function _setAffiniPayBankFields() {
      var n = this;return n._setBasicBankFields();
    }, _setBasicBankFields: function _setBasicBankFields() {
      var i = this,
          t = n.formPost;t.IsBankCharge.value = !0;t.AccountNumber.value = i.jQuery("#mn-bank-account-number").val();t.RoutingNumber.value = i.jQuery("#mn-bank-routing-number").val();t.AccountHolderType.value = i.jQuery("#mn-bank-account-holder-type").val();t.FirstName.value = i.jQuery("#mn-bank-account-holder-first-name").val();t.LastName.value = i.jQuery("#mn-bank-account-holder-last-name").val();t.ContactName.value = i.jQuery("#mn-bank-account-holder-name").val();t.IsSavingsAccount.value = i.jQuery("#mn-bank-is-savings").is(":checked");
    }, _validatePayrixBank: function _validatePayrixBank() {
      var n = this,
          t = !0,
          i = "US";return paymentProcessingUtils.validateAccountNumber(n.jQuery("#mn-bank-account-number").val(), i) ? paymentProcessingUtils.validateRoutingNumber(n.jQuery("#mn-bank-routing-number").val(), i) ? n.jQuery("#mn-bank-account-holder-first-name").val() === "" ? (n.jQuery("#mn-bank-account-holder-first-name").addClass("error"), n._showError("Please enter a first name.", n.jQuery("#mn-bank-errors")), t = !1) : n.jQuery("#mn-bank-account-holder-last-name").val() === "" && (n.jQuery("#mn-bank-account-holder-last-name").addClass("error"), n._showError("Please enter a last name.", n.jQuery("#mn-bank-errors")), t = !1) : (n.jQuery("#mn-bank-routing-number").addClass("error"), n._showError("Invalid routing number, please enter a valid routing number.", n.jQuery("#mn-bank-errors")), t = !1) : (n.jQuery("#mn-bank-account-number").addClass("error"), n._showError("Invalid bank account number, please enter a valid bank account number.", n.jQuery("#mn-bank-errors")), t = !1), t ? n._clearError(n.jQuery("#mn-bank-errors")) : (n._hideProgress(), n.enablePaymentButton()), t;
    }, _setPayrixBankFields: function _setPayrixBankFields() {
      var n = this;return n._setBasicBankFields();
    }, _billhighwayCardIsValid: function _billhighwayCardIsValid() {
      var n = this,
          t = "";return (n.jQuery("#mn-card-name").val() === "" && (t += "<br/>Name on Card is required."), n.jQuery('[name="stripe_address1"]').val() === "" && (t += "<br/>Address Line 1 is required."), n.jQuery('[name="stripe_city"]').val() === "" && (t += "<br/>City is required."), (n.jQuery('[name="mn-bh-state"]').val() == null || n.jQuery('[name="mn-bh-state"]').val() === "") && (t += "<br/>State is required."), n.jQuery('[name="stripe_zip"]').val() === "" && (t += "<br/>Zip/Postal Code is required."), t !== "") ? (t = "<b>Please review the following errors:<\/b>" + t, n._showError(t, null, !0), n._hideProgress(), n.enablePaymentButton(), !1) : !0;
    }, _sendAuth: function _sendAuth(n) {
      var i = {},
          r = {},
          t = {};if (t.cardNumber = n.jQuery(".mn-card-number").val(), t.month = ("0" + n.jQuery(".mn-card-expiry-month").val()).slice(-2), t.year = n.jQuery(".mn-card-expiry-year").val(), t.cardCode = n.jQuery(".mn-card-cvc").val(), t.zip = n.jQuery('[name="x_zip"]').val(), n.jQuery('[name="x_first_name"]').val() != "" && n.jQuery('[name="x_last_name"]').val() != "" && (t.fullName = (n.jQuery('[name="x_first_name"]').val() + " " + n.jQuery('[name="x_last_name"]').val()).substring(0, 64)), i.cardData = t, n._authSettings.PublicClientKey == "") {
        n._hideProgress();n._showError("Sorry a public client key is not set for this gateway.");return;
      }if (n._authSettings.LoginId == "") {
        n._hideProgress();n._showError("Sorry a login is not set for this gateway.");return;
      }r.clientKey = n._authSettings.PublicClientKey;r.apiLoginID = n._authSettings.LoginId;i.authData = r;_MNIPayWidget = n;Accept.dispatchData(i, n._authResponseHandler);
    }, _authResponseHandler: function _authResponseHandler(n) {
      var i = _MNIPayWidget,
          t;if (n.messages.resultCode === "Error") for (i._hideProgress(), i.jQuery("#mn-payment-submit-button").removeAttr("disabled"), t = 0; t < n.messages.message.length; t++) {
        console.log(n.messages.message[t].code + ":" + n.messages.message[t].text), i._showError("Sorry an error occurred while submitting your card. " + n.messages.message[t].code + ":" + n.messages.message[t].text);
      } else i._useOpaqueData(n.opaqueData);
    }, _useOpaqueData: function _useOpaqueData(t) {
      var r = this,
          i,
          u;console.log(t.dataDescriptor);console.log(t.dataValue);i = n.formPost;u = r.jQuery(".mn-card-number").val();i.CardLast4.value = u.substr(u.length - 4);i.ContactName.value = r.jQuery('[name="x_company"]').val();i.FirstName.value = r.jQuery('[name="x_first_name"]').val();i.LastName.value = r.jQuery('[name="x_last_name"]').val();i.Address.value = r.jQuery('[name="x_address"]').val();i.City.value = r.jQuery('[name="x_city"]').val();i.StateProvince.value = r.jQuery('[name="x_state"]').val();i.PostalCode.value = r.jQuery('[name="x_zip"]').val();i.CountryCode.value = r.jQuery('[name="x_country"]').val();i.Email.value = r.jQuery('[name="x_email"]').val();i.Phone.value = r.jQuery('[name="x_phone"]').val();i.DataDescriptor.value = t.dataDescriptor;i.DataValue.value = t.dataValue;r._postForm();
    }, _billhighwayContinuePay: function _billhighwayContinuePay(n, t) {
      t._setBillhighwayCardFields(n, t);t._postForm();
    }, _billhighwayV2ContinuePay: function _billhighwayV2ContinuePay(n, t) {
      var i = t.jQuery("#mn-new-bank-info").is(":visible");t._setBillhighwayV2CommonFields(n, t);i ? t._setBillhighwayV2BankFields(n, t) : t._setBillhighwayV2CardFields(n, t);t._postForm();
    }, _setBillhighwayCardFields: function _setBillhighwayCardFields(t, i) {
      var r = n.formPost;r.CardType.value = i._getBillhighwayCardTypeString(i.jQuery(".mn-card-number").val());r.CardLast4.value = t.CardRef.substr(t.CardRef.length - 4);r.CardExpMonth.value = i.jQuery(".mn-card-expiry-month").val();r.CardExpYear.value = i.jQuery(".mn-card-expiry-year").val();r.CardCvc.value = i.jQuery(".mn-card-cvc").val();r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked");r.TokenId.value = t.CardRef;r.ContactName.value = i.jQuery("#mn-card-name").val();r.Address.value = i.jQuery('[name="stripe_address1"]').val();r.Address2.value = i.jQuery('[name="stripe_address2"]').val();r.City.value = i.jQuery('[name="stripe_city"]').val();r.StateProvince.value = i.jQuery("#mn-bh-state").val();r.State.value = r.StateProvince.value;r.PostalCode.value = i.jQuery('[name="stripe_zip"]').val();r.CountryCode.value = "USA";
    }, _setBillhighwayV2CardFields: function _setBillhighwayV2CardFields(t, i) {
      var r = n.formPost,
          u = i.jQuery(".mn-card-number").val();r.CardType.value = i._getBillhighwayCardTypeString(u);r.CardLast4.value = u.substr(u.length - 4);r.CardExpMonth.value = i.jQuery(".mn-card-expiry-month").val();r.CardExpYear.value = i.jQuery(".mn-card-expiry-year").val();r.CardCvc.value = i.jQuery(".mn-card-cvc").val();r.TokenId.value = t.Token;r.ContactName.value = i.jQuery("#mn-card-name").val();
    }, _setBillhighwayV2BankFields: function _setBillhighwayV2BankFields(t, i) {
      var r = n.formPost;r.AccountLast4.value = t.AchDetails.AccountNumberLast4;r.BankName.value = t.AchDetails.BankName;r.IsSavingsAccount.value = i.jQuery("#mn-bank-is-savings").is(":checked");r.IsBankCharge.value = !0;r.TokenId.value = t.Token;r.Email.value = i.jQuery("#mn-bank-email").val();r.ContactName.value = i.jQuery("#mn-bank-account-holder-first-name").val() + " " + i.jQuery("#mn-bank-account-holder-last-name").val();
    }, _setBillhighwayV2CommonFields: function _setBillhighwayV2CommonFields(t, i) {
      var r = n.formPost;r.StorePaymentInfoForFuture.value = i.jQuery("#mn-save-card").is(":checked");r.Address.value = i.jQuery('[name="stripe_address1"]').val();r.Address2.value = i.jQuery('[name="stripe_address2"]').val();r.City.value = i.jQuery('[name="stripe_city"]').val();r.StateProvince.value = i.jQuery("#mn-bh-state").val();r.PostalCode.value = i.jQuery('[name="stripe_zip"]').val();r.CountryCode.value = "USA";
    }, _getBillhighwayCardType: function _getBillhighwayCardType(n) {
      var t = paymentProcessingUtils.cardType(n);switch (t) {case "Visa":
          return 3;case "MasterCard":
          return 2;case "American Express":
          return 0;case "Discover":
          return 1;case "Diners Club":
          return 4;default:
          return "Unknown";}
    }, _getBillhighwayCardTypeString: function _getBillhighwayCardTypeString(n) {
      var t = paymentProcessingUtils.cardType(n);switch (t) {case "Visa":
          return "VISA";case "MasterCard":
          return "MC";case "American Express":
          return "AMEX";case "Discover":
          return "DISC";case "Diners Club":
          return "DC";default:
          return "DCI";}
    }, _getNarPaymentsCardType: function _getNarPaymentsCardType(n) {
      var t = paymentProcessingUtils.cardType(n);switch (t) {case "Visa":
          return "Visa";case "MasterCard":
          return "Master Card";case "American Express":
          return "American Express";case "Discover":
          return "Discover";default:
          return "";}
    }, _billhighwayTokenGeneration: function _billhighwayTokenGeneration(t) {
      var i = this,
          o = n.formPost,
          r = !1,
          u = "https://api.billhighway.com",
          f,
          e;i._billhighwaySettings.UseSandbox && (r = isBHTestCard(i.jQuery(".mn-card-number").val()));r && (o.IsTestCard.value = !0, u = "https://stagingapi.billhighway.com", i._billhighwaySettings.GroupId == 0 && (i._billhighwaySettings.ClientId = 1237, i._billhighwaySettings.GroupId = 99998));f = { GroupId: 112860, Location: "1", CurrencyCode: "USD", CardType: i._getBillhighwayCardType(i.jQuery(".mn-card-number").val()), CardNumber: i.jQuery(".mn-card-number").val(), NameOnCard: i.jQuery("#mn-card-name").val(), ExpMonth: i.jQuery(".mn-card-expiry-month").val(), ExpYear: i.jQuery(".mn-card-expiry-year").val(), ValidationNum: i.jQuery(".mn-card-cvc").val(), Address1: i.jQuery('[name="stripe_address1"]').val(), Address2: i.jQuery('[name="stripe_address2"]').val(), City: i.jQuery('[name="stripe_city"]').val(), State: i.jQuery("#mn-bh-state").val(), PostalCode: i.jQuery('[name="stripe_zip"]').val(), Country: "USA", VerifyPostalCode: !0 };e = new Date().getTime();i.jQuery.support.cors = !0;i.jQuery.ajaxSettings && i.jQuery.ajaxSettings.headers && delete i.jQuery.ajaxSettings.headers.Authorization;i.jQuery.ajax({ url: u + "/API/v2/PaymentMethods/CC/Verification?a=" + encodeURIComponent(i._billhighwayKey) + "&n=" + e.toString(), data: JSON.stringify(f), contentType: "text/plain", type: "POST", dataType: "json", beforeSend: function beforeSend() {} }).done(function (n) {
        n.IsError ? (console.log("billhighway token error Message: " + n.Message), i._hideProgress(), i._showError("Error: " + n.Message), i.enablePaymentButton()) : t(n, i);
      }).fail(function (n) {
        var f = n.responseText,
            r = "-1",
            t = n.statusText,
            u;try {
          u = JSON.parse(f);r = u.ResponseStatus.ErrorCode;t = u.ResponseStatus.ErrorMessage;
        } catch (e) {}console.log("billhighway token error errorCode: " + r + " - " + t);n.status === 401 && (t = "Invalid card information. Please check fields and try again.");i._hideProgress();i._showError("Error: " + r + " - " + t);i.enablePaymentButton();
      });
    }, _billhighwayV2TokenGeneration: function _billhighwayV2TokenGeneration(t) {
      var i = this,
          a = n.formPost,
          u = "https://api.billhighway.com",
          r,
          f,
          o,
          e,
          s,
          h;i._billhighwaySettings.UseSandbox && (a.IsTestCard.value = !0, u = "https://devapi.billhighway.com", i._billhighwaySettings.BaseUrl && i._billhighwaySettings.BaseUrl == "https://stagingconnect.billhighway.com" && (u = "https://stagingapi.billhighway.com"));var c = null,
          l = null,
          v = i.jQuery("#mn-new-bank-info").is(":visible");if (v ? l = { AccountHolderName: i.jQuery("#mn-bank-account-holder-first-name").val() + " " + i.jQuery("#mn-bank-account-holder-last-name").val(), AccountNumber: i.jQuery("#mn-bank-account-number").val(), RoutingNumber: i.jQuery("#mn-bank-routing-number").val(), AccountType: i.jQuery("#mn-bank-is-savings").is(":checked") ? "Savings" : "Checking" } : c = { Cvv: i.jQuery(".mn-card-cvc").val(), Address: { Address1: i.jQuery('[name="stripe_address1"]').val(), Address2: i.jQuery('[name="stripe_address2"]').val(), City: i.jQuery('[name="stripe_city"]').val(), PostalCode: i.jQuery('[name="stripe_zip"]').val(), Region: i.jQuery("#mn-bh-state").val(), Country: "USA" }, NameOnCard: i.jQuery("#mn-card-name").val(), ExpMonth: i.jQuery(".mn-card-expiry-month").val(), ExpYear: i.jQuery(".mn-card-expiry-year").val(), CardNumber: i.jQuery(".mn-card-number").val() }, r = i.getAmount(), f = "standard", i.jQuery("#mn-save-card").is(":checked") || i._onlySaveCard) f = "chargeaccount", r = 0;else if (i._gatewayAmts) for (o in i._gatewayAmts) {
        if ((e = i._gatewayAmts[o], e != 0) && (r = e, r > 0)) break;
      }s = { Amount: Math.round(r * 100), Description: "widget token", Currency: "USD", CardInfo: c, AchInfo: l, ReferenceIds: [{ Type: "ChapterId", Value: i._billhighwaySettings.ChapterId }] };h = { url: u + "/integrations/api/" + f + "/charge/token", type: "POST", headers: { "content-type": "application/json", Authorization: "PublishableKey " + i._billhighwayV2Key }, data: JSON.stringify(s), dataType: "json" };i.jQuery.ajax(h).done(function (n) {
        n.IsError ? (console.log("billhighway v2 token error Message: " + n.Message), i._hideProgress(), i._showError("Error: " + n.Message), i.enablePaymentButton()) : t(n, i);
      }).fail(function (n) {
        var f = n.responseText,
            u = "-1",
            t = n.statusText,
            r;try {
          r = JSON.parse(f);r.Messages && (u = r.Messages[0].Code, t = r.Messages[0].Message);
        } catch (e) {}console.log("billhighway token error errorCode: " + u + " - " + t);n.status === 401 && (t === null || t === "") && (t = "Invalid card information. Please check fields and try again.");i._hideProgress();i._showError("Error: " + u + " - " + t);i.enablePaymentButton();
      });
    }, continueSaveCardPost: function continueSaveCardPost() {
      var t = this,
          i = t.jQuery("#mn-saved-profiles").find(":selected"),
          r = t.jQuery("#mn-new-bank-info").is(":visible");if (i.val() !== "" || r || t._paymentGatewayTypeId === 1 || t._paymentGatewayTypeId === 7 || t._paymentGatewayTypeId === 6 || t._paymentGatewayTypeId === 8 || t._basicCardIsValid()) if (t._paymentGatewayTypeId === 1) {
        if (i.val() != "") {
          t._saveExistingProfile();return;
        }if (t._useStripePaymentIntents) {
          t._stripeGetIntent(t._stripeConfirmSetup, !0);return;
        }t._stripe.createToken(t._stripeCard).then(function (i) {
          if (i.error) t.enablePaymentButton(), t._showError(i.error.errors && i.error.errors.exceptions[0] ? i.error.errors.exceptions[0] : i.error.message), t._hideProgress();else {
            var u = i.token.id,
                r = n.formPost;r.CardType.value = i.token.card.brand;r.CardLast4.value = i.token.card.last4;r.CardExpMonth.value = i.token.card.exp_month;r.CardExpYear.value = i.token.card.exp_year;t._submitSaveCard(u);
          }
        });
      } else if (t._paymentGatewayTypeId === 3) i.val() != "" ? t._saveExistingProfile() : t._showError("Please select a stored payment profile or click [Manage Profiles] to add a new one.");else if (t._paymentGatewayTypeId === 4) {
        if (i.val() != "") t._saveExistingProfile();else {
          if (!t._billhighwayCardIsValid()) return;t._billhighwayTokenGeneration(function (n) {
            var i = n.CardRef;t._setBillhighwayCardFields(n, t);t._submitSaveCard(i);
          });
        }
      } else if (t._paymentGatewayTypeId === 5) {
        if (i.val() != "") t._saveExistingProfile();else {
          if (!r && !t._billhighwayCardIsValid()) return;t._billhighwayV2TokenGeneration(function (n) {
            var i = n.Token;t._setBillhighwayV2CommonFields(n, t);r ? t._setBillhighwayV2BankFields(n, t) : t._setBillhighwayV2CardFields(n, t);t._submitSaveCard(i);
          });
        }
      } else t._paymentGatewayTypeId === 6 && (i.val() != "" ? t._saveExistingProfile() : t._narPaymentsAddCard(t));
    }, _saveExistingProfile: function _saveExistingProfile() {
      var t = this,
          r = t.jQuery("#mn-saved-profiles").find(":selected"),
          i,
          u;t._allowSavingCard && t._showScheduledBillings && t._contactId != null && t.jQuery("#mn-use-for-sb").is(":checked") ? (i = n.formPost, i.PaymentProfileId.value = r.data("id"), i.AuditId.value = r.data("auditid"), i.Name.value = r.data("name"), i.ProfileKey.value = r.val(), i.ClientKey.value = r.data("client"), i.PaymentProfileTypeId.value = r.data("profiletype"), i.TenantId.value = t._tenantId, i.ContactId.value = t._contactId, i.PurchasedByContactId.value = t._purchasedByContactId, i.OrganizationId.value = t._organizationId, i.OrganizationContactId.value = t._organizationId, t.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && t.jQuery("#mn-save-to-orgs").val() > 0 && (i.OrganizationId.value = t.jQuery("#mn-save-to-orgs").val(), i.OrganizationContactId.value = t.jQuery("#mn-save-to-orgs").val(), i.SaveOnOrganizationId.value = !0), i.StorePaymentInfoForFuture.value = t.jQuery("#mn-save-card").is(":checked"), i.PaymentGatewayId.value = t._paymentGatewayId, i.PaymentGatewayTypeId.value = t._paymentGatewayTypeId, i.PaymentGatewayType.value = t._paymentGatewayTypeId, u = t.jQuery("#formPost").serialize(), t.jQuery('input[id^="mn-scheduled-billing-"]').each(function (n) {
        var i = t.jQuery(this);u += "&ScheduledBillingItems[" + n + "].IsSelected=true";u += "&ScheduledBillingItems[" + n + "].ScheduledBillingId=" + i.data("id");u += "&ScheduledBillingItems[" + n + "].ContactId=" + i.data("contactid");
      }), t.jQuery.ajax({ url: t._getProfileSubmitUrl(), type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: u, success: function success(n) {
          if (console.log("add profile result: " + n), t._callback) {
            var i = { Name: n.Name, PaymentProfileId: n.PaymentProfileId, ProfileKey: n.ProfileKey, ClientKey: n.ClientKey, BankAccount: r.data("bank"), Success: !0, CapturePaymentProfileAndChargeOnApproval: t._capturePaymentProfileAndChargeOnApproval, AllowPaymentProfileInAutoPay: t.jQuery("#mn-use-for-sb").is(":checked") };t._callback(i);
          } else t._hideProgress(), t._showInfo("Payment Method Saved", 5e3, null, t._render()), t.enablePaymentButton();
        }, error: function error(n, i, r) {
          console.log("edit profile error: " + r);t._hideProgress();var u = JSON.parse(n.responseText);t._showError(u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : r);t.enablePaymentButton();
        } })) : t._callback ? t._callback({ Name: r.data("name"), PaymentProfileId: r.data("id"), ProfileKey: r.val(), ClientKey: r.data("client"), BankAccount: r.data("bank"), Success: !0, AllowPaymentProfileInAutoPay: t.jQuery("#mn-use-for-sb").is(":checked") }) : (t._hideProgress(), t._showInfo("Payment Method Saved", 5e3, null, t._render()), t.enablePaymentButton());
    }, _getSubmitCardFormData: function _getSubmitCardFormData() {
      var t = this,
          i = n.formPost,
          r;return i.PaymentProfileId.value = 0, i.StorePaymentInfoForFuture.value = t.jQuery("#mn-save-card").is(":checked"), i.TenantId.value = t._tenantId, i.ContactId.value = t._contactId, i.PurchasedByContactId.value = t._purchasedByContactId, i.OrganizationId.value = t._organizationId, i.OrganizationContactId.value = t._organizationId, t.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && t.jQuery("#mn-save-to-orgs").val() > 0 && (i.OrganizationId.value = t.jQuery("#mn-save-to-orgs").val(), i.OrganizationContactId.value = t.jQuery("#mn-save-to-orgs").val(), i.SaveOnOrganizationId.value = !0), i.PaymentGatewayId.value = t._paymentGatewayId, i.PaymentGatewayTypeId.value = t._paymentGatewayTypeId, i.PaymentGatewayType.value = t._paymentGatewayTypeId, i.PaymentProfileTypeId.value = 1, r = t.jQuery("#formPost").serialize(), t._allowSavingCard && t._showScheduledBillings && t._contactId != null && t.jQuery("#mn-use-for-sb").is(":checked") && t.jQuery('input[id^="mn-scheduled-billing-"]').each(function (n) {
        var i = t.jQuery(this);r += "&ScheduledBillingItems[" + n + "].IsSelected=true";r += "&ScheduledBillingItems[" + n + "].ScheduledBillingId=" + i.data("id");r += "&ScheduledBillingItems[" + n + "].ContactId=" + i.data("contactid");
      }), t._voluntaryItems && t.jQuery.each(t._voluntaryItems, function (n, t) {
        t && t.SaleableItemId != "" && (r += "&VoluntaryItems[" + n + "].SaleableItemId=" + t.SaleableItemId, r += "&VoluntaryItems[" + n + "].IsSelected=true", r += "&VoluntaryItems[" + n + "].Price=" + t.Price);
      }), r;
    }, _submitSaveCard: function _submitSaveCard(t) {
      var i = this,
          r = n.formPost;r.TokenId.value = t;i.jQuery.ajax({ url: i._getProfileSubmitUrl(), type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: i._getSubmitCardFormData(), success: function success(n) {
          if (console.log("add profile result: " + n), i._callback) {
            var t = { Name: n.Name, PaymentProfileId: n.PaymentProfileId, ProfileKey: n.ProfileKey, ClientKey: n.ClientKey, BankAccount: !1, Success: !0, CapturePaymentProfileAndChargeOnApproval: i._capturePaymentProfileAndChargeOnApproval, AllowPaymentProfileInAutoPay: i.jQuery("#mn-use-for-sb").is(":checked") };i._callback(t);
          } else i._hideProgress(), i._showInfo("Payment Method Saved", 5e3, null, i._render()), i.enablePaymentButton();
        }, error: function error(n, t, r) {
          console.log("add profile error: " + r);i._hideProgress();var u = JSON.parse(n.responseText);i._showError(u.errors && u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : r);i.enablePaymentButton();
        } });
    }, _postForm: function _postForm() {
      var n = this;n._preSubmitFunction ? n._preSubmitFunction() : n.continuePayCardPost();
    }, _getFormData: function _getFormData() {
      var i = this,
          r = n.formPost,
          c = i.jQuery("#mn-saved-profiles").find(":selected"),
          s,
          u,
          f,
          l,
          h,
          e,
          o;r.TenantId.value = i._tenantId;r.ContactId.value = i._contactId;r.PurchasedByContactId.value = i._purchasedByContactId;r.ContactName.value = i.jQuery("#mn-card-name").val();r.PaymentContactId.value = i._contactId;r.OrganizationId.value = i._organizationId;r.SaveOnOrganizationId.value = i.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && i.jQuery("#mn-save-to-orgs").val() > 0 ? i.jQuery("#mn-save-to-orgs").val() : null;i.jQuery("#mn-save-card:checked").not(":disabled").length > 0 && !r.SaveOnContactId.value ? r.SaveOnContactId.value = i._contactId : i.jQuery("#mn-save-card:checked").not(":disabled").length || (r.SaveOnContactId.value = null);i.jQuery("#mn-save-card:checked").not(":disabled").length > 0 && i.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && i.jQuery("#mn-save-to-orgs").val() > 0 && (r.SaveOnContactId.value = i.jQuery("#mn-save-to-orgs").val(), r.SaveOnOrganizationId.value = null);r.Email.value = i._paymentGatewayTypeId === 3 ? i.jQuery("#x_email").val() : i.jQuery("#mn-card-email").val();i._paymentGatewayTypeId == 3 && (s = i.jQuery(".mn-card-number").val(), r.CardLast4.value = s.substr(s.length - 4), r.CardExpMonth.value = i.jQuery(".mn-card-expiry-month").val(), r.CardExpYear.value = i.jQuery(".mn-card-expiry-year").val(), r.CardCvc.value = i.jQuery(".mn-card-cvc").val(), r.CardType.value = paymentProcessingUtils.cardType(s), r.ContactName.value = i.jQuery('[name="x_company"]').val());r.PaymentGatewayId.value = i._paymentGatewayId;r.PaymentGatewayTypeId.value = i._paymentGatewayTypeId;r.PaymentGatewayType.value = i._paymentGatewayTypeId;r.Amount.value = i.getAmount();r.VoluntaryAmount.value = i._voluntaryAmount;r.Capture.value = i._capture;r.UseStripePaymentIntents.value = i._useStripePaymentIntents;r.PaymentMethod.value = i._currentPaymentMethod;r.PaymentProfilePaymentMethodConfigurationId.value = i._getPaymentProfilePaymentMethodConfigurationId();r.OnlyAchPaymentProfilePaymentMethodConfigurationId.value = i._getOnlyAchPaymentProfilePaymentMethodConfigurationId();r.SessionKey.value = i._sessionKey;r.InsuranceQuoteId.value = i._insuranceQuoteId ? i._insuranceQuoteId : "";r.InsuranceAmount.value = i._insuranceAmount ? i._insuranceAmount : "";(i._paymentGatewayTypeId !== 3 && c.val() != "" || i._paymentGatewayTypeId === 3 && i.jQuery("input[name='mn-auth-existing-profile']:checked").val() === "true") && (r.PaymentProfileId.value = c.data("id"), r.IsBankCharge.value = c.data("bank"));u = i.jQuery("#formPost").serialize();i._purchases && i.jQuery.each(i._purchases, function (n, t) {
        if (t.purchaseId != "") {
          if (u += "&OpenInvoices[" + n + "].IsSelected=true", u += "&OpenInvoices[" + n + "].PurchaseId=" + t.purchaseId, u += "&OpenInvoices[" + n + "].InvoiceNumber=" + t.reference, u += "&OpenInvoices[" + n + "].ParentPurchaseId=" + t.parentPurchaseId, u += "&OpenInvoices[" + n + "].ParentPurchaseRelationshipTypeId=" + t.parentPurchaseRelationshipTypeId, total = parseFloat(t.balance), t.voluntaryItems) {
            var r = 0;i.jQuery.each(t.voluntaryItems, function (t, i) {
              i && (u += "&OpenInvoices[" + n + "].VoluntaryItems[" + r + "].PurchaseItemId=" + i.PurchaseItemId, u += "&OpenInvoices[" + n + "].VoluntaryItems[" + r + "].IsSelected=true", u += "&OpenInvoices[" + n + "].VoluntaryItems[" + r + "].Price=" + i.Price, r++, total += parseFloat(i.Price));
            });
          }u += "&OpenInvoices[" + n + "].Balance=" + roundAwayFromZero(total);
        }
      });f = 0;for (e in i._gatewayAmts) {
        (o = i._gatewayAmts[e], o != 0) && (l = i._tokens[f] ? i._tokens[f] : r.TokenId.value, u += "&GatewayAmounts[" + f + "].PaymentGatewayId=" + e, u += "&GatewayAmounts[" + f + "].Amount=" + o, u += "&GatewayAmounts[" + f + "].TokenId=" + encodeURIComponent(l), f++);
      }if (i._saleableItemAmounts) {
        h = 0;for (e in i._saleableItemAmounts) {
          (o = i._saleableItemAmounts[e], o != 0) && (u += "&SaleableItemAmounts[" + h + "].SaleableItemId=" + e, u += "&SaleableItemAmounts[" + h + "].Amount=" + o, h++);
        }
      }return i._allowSavingCard && i._showScheduledBillings && i._contactId != null && i.jQuery("#mn-use-for-sb").is(":checked") && i.jQuery('input[id^="mn-scheduled-billing-"]').each(function (n) {
        var t = i.jQuery(this);u += "&ScheduledBillingItems[" + n + "].IsSelected=true";u += "&ScheduledBillingItems[" + n + "].ScheduledBillingId=" + t.data("id");u += "&ScheduledBillingItems[" + n + "].ContactId=" + t.data("contactid");
      }), i._narSplitsModel && (u += "&NarSplitsInfo.MemberInvoice=" + i._narSplitsModel.MemberInvoice, u += "&NarSplitsInfo.BillingYear=" + i._narSplitsModel.BillingYear, i.jQuery.each(i._narSplitsModel.Splits, function (n, t) {
        t != "" && (u += "&NarSplitsInfo.Splits[" + n + "].AssociationId=" + t.AssociationId, u += "&NarSplitsInfo.Splits[" + n + "].AssociationTypeOptionId=" + t.AssociationTypeOptionId, u += "&NarSplitsInfo.Splits[" + n + "].Amount=" + t.Amount, u += "&NarSplitsInfo.Splits[" + n + "].BankId=" + t.BankId);
      })), u += "&HttpReferer=" + t.location.href, u += "&RecaptchaToken=" + i._recaptchaToken;
    }, _getPaymentProfilePaymentMethodConfigurationId: function _getPaymentProfilePaymentMethodConfigurationId() {
      var n = this;return n._payOnBehalfOfSomebodyElse === !0 && n._paymentProfilePaymentMethodConfigurationId !== null ? n._paymentProfilePaymentMethodConfigurationId : null;
    }, _getOnlyAchPaymentProfilePaymentMethodConfigurationId: function _getOnlyAchPaymentProfilePaymentMethodConfigurationId() {
      var n = this;return n._payOnBehalfOfSomebodyElse == !1 && n._limitPaymentMethodToAch() && n._onlyAchPaymentProfilePaymentMethodConfigurationId != null ? n._onlyAchPaymentProfilePaymentMethodConfigurationId : null;
    }, continuePayCardPost: function continuePayCardPost() {
      var n = this,
          t = 0,
          r,
          i;if (n._gatewayAmts) for (r in n._gatewayAmts) {
        if ((i = n._gatewayAmts[r], i != 0) && (t += i, t !== 0)) break;
      }if ((!n._amount || n._amount == 0 || n._amount == "0") && t === 0) {
        errors = "<b>Amount cannot be 0<\/b>";n._showError(errors, null, !0);n._hideProgress();n.enablePaymentButton();return;
      }n._validatePaymentAmount(n, function (n) {
        var t;if (n._paymentGatewayTypeId === 6 && !n._narReadyToSubmit && (t = n.jQuery("#mn-saved-profiles").find(":selected"), t.val() == "")) {
          if (!n._payingByBank && n.jQuery("#mn-save-card").is(":checked")) {
            n._narPaymentsGetSplits(n._narPaymentsAddCard, n);return;
          }n._narPaymentsGetSplits(n._narPaymentsChargeOrAuth, n);return;
        }if (n._useStripePaymentIntents) {
          if (t = n.jQuery("#mn-saved-profiles").find(":selected"), t.val() != "") {
            n._submitWithRecaptchaToken();return;
          }n._stripeCreatePaymentMethod();return;
        }n._submitWithRecaptchaToken();
      });
    }, _submitWithRecaptchaToken: function _submitWithRecaptchaToken() {
      var n = this;grecaptcha.ready(function () {
        grecaptcha.execute(n._recaptchaSiteKey, { action: "submitCharge" }).then(function (t) {
          n._recaptchaToken = t;n.jQuery.ajax({ url: n._getSubmitUrl(), type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: n._getFormData(), success: function success(t) {
              console.log("payment result: " + t);t.Email = n._paymentGatewayTypeId === 3 ? n.jQuery("#x_email").val() : n.jQuery("#mn-card-email").val();t.AllowPaymentProfileInAutoPay = n.jQuery("#mn-use-for-sb").is(":checked");n._callback ? n._callback(t) : (n._hideProgress(), n._showInfo("Payment Was successful", null, null, n._render()));
            }, error: function error(t, i, r) {
              console.log("payment error: " + t.responseText + " textStatus: " + i + " errorThrown: " + r);n._hideProgress();var u = null;try {
                u = JSON.parse(t.responseText);n._showError(u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : r);
              } catch (f) {
                n._showError(r);
              }n.enablePaymentButton();
            } });
        });
      });
    }, updateSaveOnContactId: function updateSaveOnContactId(t) {
      var r = this,
          i = n.formPost;i.SaveOnContactId.value = t;
    }, _useShippingAddress: function _useShippingAddress() {
      var t = this.jQuery("#mn-use-shipping-address-chk").is(":checked"),
          n;this._shippingAddressGetCallback && (t ? (n = this._shippingAddressGetCallback(), n && this.setAddress(n)) : this.clearAddress());
    }, _getSubmitUrl: function _getSubmitUrl() {
      return "//" + this._getDomain() + "/api/finance/paywithcard/" + this._contactId + "/";
    }, _getProfileSubmitUrl: function _getProfileSubmitUrl() {
      return "//" + this._getDomain() + "/api/finance/paymentprofile/";
    }, _getGatewaysParam: function _getGatewaysParam() {
      return this._paymentGateways && this._paymentGateways.length > 0 ? this._paymentGateways.join("-") : null;
    }, _getGatewayUrl: function _getGatewayUrl() {
      return "//" + this._getDomain() + "/api/widget/gatewayinfo/" + this._paymentGatewayId + "/" + this._getGatewaysParam() + "/" + (!this._contactId || this._contactId === "" ? null : this._contactId) + "/" + this._hash;
    }, _getProfilesUrl: function _getProfilesUrl() {
      return "//" + this._getDomain() + "/api/widget/paymentprofiles/" + this._hash;
    }, _getScheduledBillingsUrl: function _getScheduledBillingsUrl() {
      var n = this,
          t = null;return n.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && n.jQuery("#mn-save-to-orgs").val() > 0 && (t = n.jQuery("#mn-save-to-orgs").val()), t == null && n._organizationId && (t = n._organizationId), "//" + this._getDomain() + "/api/widget/scheduledbillings/" + this._contactId + "/" + t + "/" + this._hash;
    }, _getAuthProfilePageUrl: function _getAuthProfilePageUrl() {
      return "//" + this._getDomain() + "/api/widget/authorizedotnet/customerprofilepage/" + this._paymentGatewayId + "/" + this._contactId + "/" + this._hash + "/" + this._allowBankPayments;
    }, _getNarReturnUrl: function _getNarReturnUrl() {
      return (this._getSecure() ? "https://" : "http://") + this._getDomain() + "/views/NarPaymentsIframeCommunicator.html";
    }, _updateAuthProfiles: function _updateAuthProfiles() {
      return "//" + this._getDomain() + "/api/widget/authorizedotnet/updateprofiles/" + this._paymentGatewayId + "/" + this._contactId + "/" + this._hash + "/" + this._organizationId;
    }, _getDomain: function _getDomain() {
      return this._domain || o().domain || t.location.host;
    }, _getSecure: function _getSecure() {
      return this._secure !== undefined ? this._secure : (o().protocol || t.location.protocol) == "https:" ? !0 : undefined;
    }, _showError: function _showError(n, t, i) {
      var u = this,
          r;u.jQuery("#mn-payment-form-loading").hide();r = u.jQuery("#mn-payment-form-error");t && (r = t);i ? (r.empty(), r.append(n)) : r.text(n);r.show();u.jQuery("html, body").animate({ scrollTop: r.offset().top }, 600);
    }, showHostPageError: function showHostPageError(n, t) {
      var i = this,
          r = i.jQuery("#mn-payment-host-page-error");i._showError(n, r, t);
    }, clearHostPageError: function clearHostPageError() {
      var n = this,
          t = n.jQuery("#mn-payment-host-page-error");n._clearError(t);
    }, _showInfo: function _showInfo(n, t, i, r) {
      var f = this,
          u;f.jQuery("#mn-payment-form-loading").hide();u = f.jQuery("#mn-payment-form-info");i && (u = i);u.text(n);u.show();t ? setTimeout(function () {
        u.hide("blind", {}, 500);r && r();
      }, t) : r && r();
    }, _clearError: function _clearError(n) {
      var i = this,
          t = i.jQuery("#mn-payment-form-error");n && (t = n);t.hide();t.text("");
    }, _initAuthProfile: function _initAuthProfile() {
      var n = this;n._allowUseOfProfiles && n._contactId != null ? (n._showProgress(), n.jQuery.getJSON(n._getAuthProfilePageUrl(), function (t) {
        t && t != "" ? (n.jQuery("#mn-auth-profiles-manage-btn").removeAttr("disabled"), n._manageAuthProfile(t), n._hideProgress()) : n._hideAuthProfilesSection();
      }).fail(function () {
        n._hideAuthProfilesSection();n._hideProgress();
      })) : n._hideAuthProfilesSection();
    }, _manageAuthProfile: function _manageAuthProfile(n) {
      var i = this,
          r = "https://accept.authorize.net/customer/manage",
          u,
          f;i._authSettings.UseSandbox && (r = "https://test.authorize.net/customer/manage");u = "//" + i._getDomain() + "/views/AuthProfileForm.html?token=" + encodeURIComponent(n) + "&profileUrl=" + encodeURIComponent(r);f = i.jQuery('<iframe name="authprofileiframe" id="authprofileiframe" width="100%" height="95%" src="' + u + '"><\/iframe>');i._authProfileDialog = i.jQuery("<div><\/div>").append(f).dialog({ title: "Manage my payment information", autoOpen: !1, modal: !0, resizable: !0, draggable: !0, width: Math.min(1e3, i.jQuery(t).width() - 200), height: i.jQuery(t).height() - 100, dialogClass: "no-close auth-net-profiles-modal", open: function open(n, t) {
          i.jQuery(".ui-dialog-titlebar-close", t.dialog | t).hide();
        }, close: function close() {
          i._getAuthProfiles();
        }, buttons: [{ icon: "glyphicon glyphicon-close", text: "Done", cssClass: "btn-primary", click: function click() {
            i.jQuery(this).dialog("close");
          } }] });
    }, _hideAuthProfilesSection: function _hideAuthProfilesSection() {
      var n = this;n.jQuery("input[name='mn-auth-existing-profile'][value='false']").prop("checked", !0);n.jQuery("#mn-saved-cards").hide();n.jQuery(".mn-auth-profile-radio").hide();
    }, _showAuthProfileManagement: function _showAuthProfileManagement() {
      var n = this;n.jQuery("input[name='mn-auth-existing-profile'][value='true']").prop("checked", !0);n._authProfileDialog.dialog("open");
    }, _toggleAuthNewCard: function _toggleAuthNewCard() {
      var n = this,
          f = n.jQuery("input[name='mn-auth-existing-profile']:checked").val() === "true",
          i = n.jQuery("#mn-new-card-info"),
          r = n.jQuery("#mn-demographics"),
          t = n.jQuery("#mn-payment-submit-button");if (f) {
        i.hide();r.hide();var u = n.jQuery("#mn-saved-profiles").find("option"),
            e = n.jQuery("#mn-saved-profiles").find(":selected"),
            o = e.val();u.length === 0 || u.length === 1 && o === "0" ? t.attr("disabled", "disabled") : t.removeAttr("disabled");n.updateSaveCardDisclaimer(!0);
      } else i.show(), r.show(), t.removeAttr("disabled"), n.updateSaveCardDisclaimer(!1);
    }, _getAuthProfiles: function _getAuthProfiles() {
      var n = this;n._showProgress();n = this;n.jQuery.getJSON(n._updateAuthProfiles(), function () {
        n._getProfiles();
      });
    }, _getProfiles: function _getProfiles() {
      var n = this,
          i = { ContactId: n._contactId, PaymentGatewayType: n._paymentGatewayTypeId, PaymentGatewayId: n._paymentGatewayId, AllowBanks: n._allowBankPayments, PaymentGateways: n._paymentGateways };n.jQuery.ajax({ url: n._getProfilesUrl(), data: JSON.stringify(i), type: "POST", contentType: "application/json", dataType: "json" }).done(function (i) {
        var u, r;if (!i || i.length == 0) {
          r = n.jQuery("#mn-saved-profiles");n._paymentGatewayTypeId !== 3 ? (n.jQuery("#mn-saved-cards").hide(), n.jQuery("#mn-add-bank-or").hide()) : (r.show(), r.find("option").remove(), u = '<option value="0">Select Profile or Click [Manage Profiles]<\/option>', r.append(u), n._onlySaveCard ? n._toggleAuthNewCard() : (n.jQuery("input[name='mn-auth-existing-profile'][value='false']").prop("checked", !0), n._toggleAuthNewCard()));return;
        }u = "";n.jQuery.each(i, function (t, i) {
          var f = !1,
              r = !1,
              e;i.ProfileRawData && i.ProfileRawData != "" && i.PaymentProfileTypeId == 2 && (r = JSON.parse(i.ProfileRawData), f = r.status && r.status != "verified", r = !0);e = "";n._useStripePaymentIntents && r && (e = JSON.parse(i.ProfileRawData).hosted_verification_url);u += '<option value="' + i.ProfileKey + '" data-id="' + i.PaymentProfileId + '" data-name="' + i.Name + '" data-auditid="' + i.AuditId + '" data-client="' + i.ClientKey + '" " data-profiletype="' + i.PaymentProfileTypeId + '" " data-stripeverificationurl="' + e + '" data-bank="' + (r ? "true" : "false") + '" ' + (f ? 'data-disabled="true"' : "") + (n._hideCCPaymentProfiles && i.PaymentProfileTypeId == 1 ? "hidden" : "") + (n._paymentProfileId == i.PaymentProfileId ? 'selected="selected"' : "") + ">" + i.DisplayName + (f ? " (Un-Verified)" : "") + "<\/option>";
        });r = n.jQuery("#mn-saved-profiles");n._paymentGatewayTypeId !== 3 ? r.find("option").not(":first").remove() : r.find("option").remove();r.append(u);n._setProfileSelectChangeEvent(r, n);n.jQuery("#mn-stripe-verification-url-wrapper").unbind("click").click(function () {
          var i = n.jQuery("#mn-saved-profiles").find(":selected"),
              r = i.data("stripeverificationurl");t.open(r, "_blank");
        });n.jQuery("#mn-verify-bank-btn").unbind("click").click(function () {
          var t = n.jQuery("#mn-saved-profiles").find(":selected");n._paymentProfileId = t.data("id");n._profileKey = t.val();n._clientKey = t.data("client");n.jQuery("#mn-bank-verify-dialog").dialog("open");
        });n._paymentGatewayTypeId === 3 && n._toggleAuthNewCard();n._hideProgress();
      });n._hideProgress();
    }, _setProfileSelectChangeEvent: function _setProfileSelectChangeEvent(n, t) {
      n.unbind("change").change(function () {
        var n = t.jQuery(this).find(":selected"),
            r,
            u,
            i;t._disabledProfile = n.data("disabled") == !0;n.data("stripeverificationurl") === "" || n.data("stripeverificationurl") === undefined || n.data("stripeverificationurl") === "undefined" ? (t.jQuery("#mn-verify-bank-btn-wrapper").toggle(t._disabledProfile), t.jQuery("#mn-stripe-verification-url-wrapper").hide(), t.jQuery("#mn-verify-bank-message-wrapper").hide()) : (t.jQuery("#mn-stripe-verification-url-wrapper").toggle(t._disabledProfile), t.jQuery("#mn-verify-bank-btn-wrapper").hide(), t.jQuery("#mn-verify-bank-message-wrapper").show());t.jQuery("#mn-payment-submit-button").toggle(!t._disabledProfile);r = n.data("id");t.jQuery(this).val() != "" ? (t.jQuery("#mn-existing-card-cvc-wrapper").toggle(t._paymentGatewayTypeId === 4 && n.data("profiletype") === 1), t.jQuery("#mn-new-card-info").hide(), t.jQuery("#mn-demographics").hide(), t.jQuery("#mn-save-card-wrapper").hide(), t.jQuery("#mn-scheduled-billings-wrapper").hide(), t.jQuery("#mn-add-bank-wrapper").hide(), t.jQuery("#mn-new-bank-info").hide(), t.jQuery("#mn-sb-chk-all").prop("disabled", !1).prop("checked", !1), t.jQuery("mn-use-for-sb").prop("disabled", !1).prop("checked", !1), t.jQuery('input[id^="mn-scheduled-billing-"]').prop("disabled", !1), t.jQuery('input[id^="mn-scheduled-billing-"]').each(function () {
          var n = t.jQuery(this);n.prop("checked", r === n.data("profileid"));
        }), t._useNewCard = !1, t.enablePaymentButton(), t._paymentGatewayTypeId === 6 && t._payingByBank ? t._payingByBank = !1 : n.data("profiletype") === 2 && (t._payingByBank = !0)) : (u = t.jQuery("#mn-save-card").is(":checked"), i = !u && !t._onlySaveCard, t._paymentGatewayTypeId === 4 && t.jQuery("#mn-existing-card-cvc-wrapper").hide(), t.jQuery("#mn-sb-chk-all").prop("disabled", i).prop("checked", !1), t.jQuery("mn-use-for-sb").prop("disabled", i).prop("checked", !1), t.jQuery('input[id^="mn-scheduled-billing-"]').prop("disabled", i).prop("checked", !1), t.jQuery("#mn-new-card-info").show(), t.jQuery("#mn-demographics").show(), t._allowSavingCard && (t.jQuery("#mn-save-card-wrapper").show(), t._showAllowPaymentProfileInAutoPayCheckbox && t.jQuery("#mn-scheduled-billings-wrapper").show()), t.jQuery("#mn-add-bh-bank").click().click(), t._useNewCard = !0, !t._allowSavingCard || !t._allowAddingBankAccounts || t._contactId == null || t._contactId === 0 || t._paymentGatewayTypeId === 1 && t._useStripePaymentIntents || t.jQuery("#mn-add-bank-wrapper").show());t.setButtonText(t._buttonText);
      });n.change();
    }, _getScheduledBillings: function _getScheduledBillings() {
      var n = this;n._allowSavingCard && (n._showScheduledBillings || n._showAllowPaymentProfileInAutoPayCheckbox) ? (n.jQuery("#mn-scheduled-billings-wrapper").show(), n._preventScheduledBillingsChange && n.jQuery("#mn-scheduled-billings-wrapper :checkbox").attr("disabled", "disabled"), n.jQuery.getJSON(n._getScheduledBillingsUrl(), function (t) {
        var i, r;if ((!t || t.length == 0) && !n._showAllowPaymentProfileInAutoPayCheckbox) {
          n.jQuery("#mn-scheduled-billings-wrapper").hide();return;
        }i = "";n.jQuery.each(t, function (t, r) {
          i += '<tr"><td><input type="checkbox" name="mn-scheduled-billing-' + r.ScheduledBillingId + '" id="mn-scheduled-billing-' + r.ScheduledBillingId + '" data-profileid="' + r.PaymentProfileId + '" data-contactid="' + r.ContactId + '" data-id="' + r.ScheduledBillingId + '" ' + (n._onlySaveCard ? "" : 'disabled="disabled"') + " /><\/td><td>" + r.NextBillDate + "<\/td><td>" + r.Description + "<\/td><td>" + r.Price + "<\/td><td>" + r.Frequency + "<\/td><td>" + r.ProfileName + "<\/td><\/tr>";
        });r = n.jQuery("#mn-scheduled-billings");r.empty();r.append(i);n.jQuery("#mn-scheduled-billings-wrapper").show();n._hideProgress();
      })) : n.jQuery("#mn-scheduled-billings-wrapper").hide();
    }, _getCountries: function _getCountries() {
      var n = this,
          i,
          t;n._paymentGatewayTypeId === 1 ? n.jQuery.getJSON("//" + this._getDomain() + "/api/integration/stripe/countries", function (t) {
        var r = "",
            i;n.jQuery.each(t, function (t, i) {
          r += '<option data-currencies="' + i.Currencies + '" value="' + i.Country + '" ' + (n._countryCode == i.Country ? 'selected="selected"' : "") + ">" + i.Country + "<\/option>";
        });i = n.jQuery("#mn-bank-country");i.find("option").remove().end();i.append(r);i.change(function () {
          n._toggleCurrency();
        });i.change();
      }) : n._paymentGatewayTypeId === 4 && (i = "", i += '<option data-currencies="USD" value="USA" selected="selected">USA<\/option>', i += '<option data-currencies="CAD" value="CAN">CAN<\/option>', t = n.jQuery("#mn-bank-country"), t.find("option").remove().end(), t.append(i), t.change(function () {
        n._toggleCurrency();
      }), t.change());
    }, _submitBank: function _submitBank(n, t) {
      var i = this,
          f,
          u,
          e,
          r;i._showProgress();f = this._contactId;u = this._organizationId;i.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && i.jQuery("#mn-save-to-orgs").val() > 0 && (u = i.jQuery("#mn-save-to-orgs").val());i.jQuery("#mn-save-card-to-org:checked").not(":disabled").length > 0 && i.jQuery("#mn-save-to-orgs").val() > 0 && !i.jQuery("#mn-save-card").is(":checked") && (f = i.jQuery("#mn-save-to-orgs").val(), u = null);e = { TenantId: i._tenantId, Token: n, AccountId: t, ContactId: f, PurchasedByContactId: i._purchasedByContactId, OrganizationId: u, PaymentGatewayTypeId: i._paymentGatewayTypeId, PaymentGatewayId: i._paymentGatewayId, IsTestBank: i._IsTestBank, PayerName: i._paymentGatewayTypeId === 5 || i._paymentGatewayTypeId === 4 ? i.jQuery("#mn-bank-account-holder-first-name").val() + " " + i.jQuery("#mn-bank-account-holder-last-name").val() : i.jQuery("#mn-bank-account-holder-name").val(), Country: i.jQuery("#mn-bank-country").val(), CurrencyType: i.jQuery("#mn-bank-currency").val(), IsSavingsAccount: i.jQuery("#mn-bank-is-savings").is(":checked") };r = i.jQuery.param(e);i._voluntaryItems && i.jQuery.each(i._voluntaryItems, function (n, t) {
        t && t.SaleableItemId != "" && (r += "&VoluntaryItems[" + n + "].SaleableItemId=" + t.SaleableItemId, r += "&VoluntaryItems[" + n + "].IsSelected=true", r += "&VoluntaryItems[" + n + "].Price=" + t.Price);
      });i.jQuery.ajax({ url: (i._getSecure() ? "https://" : "http://") + i._getDomain() + "/api/finance/bankaccount", type: "post", dataType: "json", data: r, success: function success(n) {
          i._paymentProfileId = n.PaymentProfileId;i.jQuery("#mn-saved-cards").show();i._showProgress();i._getProfiles();i._clearError();i.enablePaymentButton();i.jQuery("#mn-add-bh-bank-button").prop("disabled", !1);
        }, error: function error(n, t, r) {
          i.jQuery("#mn-add-bh-bank-button").prop("disabled", !1);var u = JSON.parse(n.responseText);console.log("submit bank error: " + n.responseText + " textStatus: " + t + " errorThrown: " + r);i._hideProgress();i._showError(u.errors && u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : n.responseText, i.jQuery("#mn-bank-errors"));i.enablePaymentButton();
        } });
    }, _showProgress: function _showProgress(n) {
      var t = this;n && (t._processing = !0);t.jQuery("#mn-progress-modal").dialog({ resizable: !1, height: "auto", modal: !0, dialogClass: "no-close", open: function open(n, i) {
          t.jQuery(".ui-dialog-titlebar", i.dialog | i).hide();
        }, close: function close() {} });
    }, _hideProgress: function _hideProgress(n) {
      n || (n = this);n._processing = !1;var t = n.jQuery("#mn-progress-modal");t.hasClass("ui-dialog-content") && t.dialog("isOpen") && (t.dialog("close"), t.dialog("destroy"));
    }, _toggleCurrency: function _toggleCurrency() {
      var n = this,
          r = n.jQuery("#mn-bank-country"),
          t = n.jQuery("#mn-bank-currency"),
          i;t.find("option").remove().end();i = r.find("option:selected").data("currencies").split(",");n.jQuery.each(i, function (i, r) {
        t.append(n.jQuery("<option>").val(r).html(r));
      });
    }, _validateBank: function _validateBank() {
      var n = this,
          t = !0,
          i = n.jQuery("#mn-bank-country").val();return paymentProcessingUtils.validateAccountNumber(n.jQuery("#mn-bank-account-number").val(), i) ? paymentProcessingUtils.validateRoutingNumber(n.jQuery("#mn-bank-routing-number").val(), i) || (n.jQuery("#mn-bank-routing-number").addClass("error"), n._showError("Invalid routing number, please enter a valid routing number.", n.jQuery("#mn-bank-errors")), t = !1) : (n.jQuery("#mn-bank-account-number").addClass("error"), n._showError("Invalid bank account number, please enter a valid bank account number.", n.jQuery("#mn-bank-errors")), t = !1), t && n._clearError(n.jQuery("#mn-bank-errors")), t;
    }, _validateBHBank: function _validateBHBank() {
      var n = this,
          t = !0,
          i = n.jQuery("#mn-bank-country").val();return paymentProcessingUtils.validateAccountNumber(n.jQuery("#mn-bank-account-number").val(), i) ? n.jQuery("#mn-bank-account-number").val() == "111111111" || paymentProcessingUtils.validateRoutingNumber(n.jQuery("#mn-bank-routing-number").val(), i) ? n.jQuery("#mn-bank-account-holder-first-name").val() === "" ? (n.jQuery("#mn-bank-account-holder-first-name").addClass("error"), n._showError("Please enter a first name.", n.jQuery("#mn-bank-errors")), t = !1) : n.jQuery("#mn-bank-account-holder-last-name").val() === "" && (n.jQuery("#mn-bank-account-holder-last-name").addClass("error"), n._showError("Please enter a last name.", n.jQuery("#mn-bank-errors")), t = !1) : (n.jQuery("#mn-bank-routing-number").addClass("error"), n._showError("Invalid routing number, please enter a valid routing number.", n.jQuery("#mn-bank-errors")), t = !1) : (n.jQuery("#mn-bank-account-number").addClass("error"), n._showError("Invalid bank account number, please enter a valid bank account number.", n.jQuery("#mn-bank-errors")), t = !1), t && n._clearError(n.jQuery("#mn-bank-errors")), t;
    }, setAmount: function setAmount(n, t) {
      n = Math.round(n * 100) / 100;var i = this._splitOnFeeItems && this._paymentGatewayTypeId === 1;t && typeof t != "undefined" ? this._gatewayAmts["" + t] = n : this._amount = n;this._canUpdatePaymentIntentStripeElements() && this._setElementsAmount();this._skipStripeRefresh == !1 && this._refreshStripeIntentOptions();this.setButtonText(this._buttonText);
    }, _setElementsAmount: function _setElementsAmount() {
      var n = Math.round(this.getDualPriceAmount() * 100);this._canUpdatePaymentIntentStripeElements() && n > 0 && !this._onlySaveCard && this._stripeElements.update({ amount: n });
    }, _canUpdatePaymentIntentStripeElements: function _canUpdatePaymentIntentStripeElements() {
      return this._useStripePaymentIntents && this._stripeElements != undefined && this._stripeElements != null;
    }, setSaleableAmounts: function setSaleableAmounts(n) {
      this._saleableItemAmounts = n;
    }, getAmount: function getAmount() {
      var n = this,
          t = 0,
          i,
          r;if (n._gatewayAmts) for (i in n._gatewayAmts) {
        r = n._gatewayAmts[i], t += r;
      }return t !== 0 ? t : n._amount;
    }, getDualPriceAmount: function getDualPriceAmount() {
      var n = this,
          t = n.getAmount();return n._shouldChargeDualPricing() && (t += t * n._dualPricingRate), t;
    }, setVoluntaryAmount: function setVoluntaryAmount(n) {
      this._voluntaryAmount = n;
    }, setVoluntaryItems: function setVoluntaryItems(n) {
      this._voluntaryItems = n;
    }, setInsurance: function setInsurance(n) {
      this._insuranceQuoteId = n.quote_id;this._insuranceAmount = n.total || 0;
    }, updateDisplayContributionRow: function updateDisplayContributionRow() {
      this._paymentGatewayTypeId === 6 && (this._voluntaryAmount > 0 && this._voluntaryItems.length > 0 ? this.toggleContributionType(!0) : this.toggleContributionType(!1));
    }, _getPaymentElementOptions: function _getPaymentElementOptions() {
      var n = this;var t = "auto";(n._capturePaymentProfileAndChargeOnApproval || n._onlySaveCard || !n._allowWallets) && (t = "never");var i = { defaultValues: { billingDetails: { name: n._name, phone: n._phone, address: { line1: n._address1, line2: n._address2, city: n._city, state: n._state, country: n._country, postal_code: n._zip } } }, wallets: { applePay: t, googlePay: t }, terms: { card: "never" }, paymentMethodOrder: n._getPaymentMethodOrder() };return n._email && n._email != "" && (i.defaultValues.billingDetails.email = n._email), i;
    }, _getPaymentMethodOrder: function _getPaymentMethodOrder() {
      var n = this;if (n._stripeGatewaySettings != null && n._limitPaymentMethods) return n._stripeGatewaySettings.PaymentMethods.flatMap(function (n) {
        return n.PaymentMethod === "wallets" ? ["google_pay", "apple_pay"] : [n.PaymentMethod];
      });
    }, _limitPaymentMethodToAch: function _limitPaymentMethodToAch() {
      var n = this;return !n._allowAddingBankAccounts || !n._allowBankPayments ? !1 : n._limitPaymentMethods && n._limitDollarAmounts && n._stripeGatewaySettings.LimitPaymentMethodByDollarAmount && n._stripeGatewaySettings.DollarAmountThreshold < n.getAmount();
    }, _updateBillingDetails: function _updateBillingDetails() {
      this._useStripePaymentIntents && this._stripeCard.update({ defaultValues: { billingDetails: { name: this._name, email: this._email, phone: this._phone, address: { line1: this._address1, line2: this._address2, city: this._city, state: this._state, country: this._country, postal_code: this._zip } } } });
    }, setEmail: function setEmail(n) {
      this._processing || (this._email = n, this.jQuery("#mn-card-email").val(n), this.jQuery('[name="x_email"]').val(n), this._updateBillingDetails());
    }, setAddress: function setAddress(n) {
      if (!this._processing && n && (n.AddressLine1 || n.Address1)) {
        this._address1 = n.AddressLine1 || n.Address1;this._address2 = n.AddressLine2 || n.Address2;this._city = n.City;this._state = n.StateProvince;this._country = n.CountryCode || n.Country;this._zip = n.ZIPCode || n.PostalCode;var t = this.jQuery;t('[name="stripe_address1"]').val(n.AddressLine1 || n.Address1);t('[name="stripe_address2"]').val(n.AddressLine2 || n.Address2);t('[name="stripe_city"]').val(n.City);t('[name="stripe_country"]').val(n.CountryCode || n.Country).change();t('[name="x_country"]').val(n.CountryCode || n.Country).change();t('[name="stripe_state"]').val(n.StateProvince).prop("selected", !0);t('[name="stripe_zip"]').val(n.ZIPCode || n.PostalCode);t('[name="x_address"]').val(n.AddressLine1 || n.Address1);t('[name="x_city"]').val(n.City);t('[name="x_country"]').val(n.CountryCode || n.Country).change();t('[name="x_state"]').val(n.StateProvince).prop("selected", !0);t('[name="x_zip"]').val(n.ZIPCode || n.PostalCode);this._updateBillingDetails();
      }
    }, clearAddress: function clearAddress() {
      var n = this.jQuery;n('[name="stripe_address1"]').val("");n('[name="stripe_address2"]').val("");n('[name="stripe_city"]').val("");n('[name="stripe_country"]').val("");n('[name="stripe_state"]').val("");n('[name="stripe_zip"]').val("");n('[name="x_address"]').val("");n('[name="x_city"]').val("");n('[name="x_country"]').val("");n('[name="x_state"]').val("");n('[name="x_zip"]').val("");
    }, setContactId: function setContactId(n) {
      var t = this;t._processing || t._contactId != n && (t._contactId = n, t._render());
    }, updateFutureSaveMessage: function updateFutureSaveMessage(n, t) {
      if (n) {
        var i = this;i.jQuery("#mn-save-card-name-wrapper").text("for future use by " + n + (t == 2 ? " and others in my " + i._OrgTerm : ""));
      }
    }, updateSaveCardDisclaimer: function updateSaveCardDisclaimer(n) {
      var t = this,
          i = t._paymentGatewayTypeId === 3 ? "#mn-save-card-disclaimer-authdpm" : "#mn-save-card-disclaimer";n ? (t.jQuery("#mn-use-for-sb").is(":checked") && t._saveCardDisclaimer && t.jQuery(i).text(t._saveCardDisclaimer), !t.jQuery("#mn-use-for-sb").is(":checked") && t._saveCardDisclaimerNotAllowAutopayLaterChargeEnabled && t._capturePaymentProfileAndChargeOnApproval && t.jQuery(i).text(t._saveCardDisclaimerNotAllowAutopayLaterChargeEnabled), t.jQuery("#mn-use-for-sb").is(":checked") || !t._saveCardDisclaimerNotAllowAutopayLaterChargeEnabled || t._capturePaymentProfileAndChargeOnApproval || t.jQuery(i).text("")) : t.jQuery(i).text("");
    }, setSaveCardDisclaimer: function setSaveCardDisclaimer(n) {
      var t = this;t._saveCardDisclaimer = f(n);t._paymentGatewayTypeId === 3 ? t._toggleAuthNewCard() : t.updateSaveCardDisclaimer(t.jQuery("#mn-save-card").is(":checked"));
    }, setOnlySaveCard: function setOnlySaveCard(n, t) {
      var i = this;i._onlySaveCard = n;t && (i._buttonText = t);i._render();
    }, setDeferCharges: function setDeferCharges(n) {
      var i = this;t.deferCharges = this._deferCharges = n;
    }, setButtonText: function setButtonText(n, t) {
      var i = this;if (i._buttonText = n, !i._onlySaveCard || i._capturePaymentProfileAndChargeOnApproval) {
        var _n4 = i.getAmount();t && t > 0 && (_n4 = t);i._shouldChargeDualPricing() ? (_n4 += _n4 * i._dualPricingRate, i._isAchAllowed() && i.jQuery("#mn-dual-pricing-msg").show()) : i.jQuery("#mn-dual-pricing-msg").hide();t = _n4;
      } else i.jQuery("#mn-dual-pricing-msg").hide();var r = n;t && t > 0 && (!i._onlySaveCard || i._capturePaymentProfileAndChargeOnApproval) && (r += " " + t.toFixed(2));i.jQuery("#mn-payment-submit-button").val(r);
    }, _shouldChargeDualPricing: function _shouldChargeDualPricing() {
      var n = this,
          t = n.jQuery("#mn-saved-profiles").find(":selected");return n._dualPricingEnabled && t.val() != "" && t.data("profiletype") === 1 ? !0 : t.data("profiletype") === 2 ? !1 : n._dualPricingEnabled && (n._currentPaymentMethod === "card" || n._isWalletCharge()) ? !0 : !1;
    }, toggleContributionType: function toggleContributionType(n) {
      var t = this;t._paymentGatewayTypeId === 6 && (t.jQuery("#mn-nar-card-account-type-row").toggle(n == !0), t.jQuery("#mn-nar-bank-contribution-type-row").toggle(n == !0));
    }, setConfirmationMessage: function setConfirmationMessage(n) {
      var t = this;t._confirmationMessage = n;t._confirmationMessage && t.jQuery("#mn-confirmation-msg-row div:first").html(t._confirmationMessage);
    }, enablePaymentButton: function enablePaymentButton() {
      var n = this,
          t = n.jQuery("#mn-payment-submit-button");t.removeAttr("disabled");
    }, disablePaymentButton: function disablePaymentButton() {
      var n = this,
          t = n.jQuery("#mn-payment-submit-button");t.attr("disabled", "disabled");
    }, getPaymentGateways: function getPaymentGateways() {
      var i = [],
          n = this._gatewayAmts,
          t;if (n) for (t in n) {
        n.hasOwnProperty(t) && n[t] != 0 && i.push(t);
      }return i;
    }, destroy: function destroy() {
      var n = this,
          i = n.jQuery("#mn-payment-submit-button");i.unbind("click");try {
        n._removeListener(t, u, n.narPaymentsProcessIframeResponse, !0);
      } catch (r) {
        console.log(r);
      }
    }, _narPaymentsCleanPostString: function _narPaymentsCleanPostString(n) {
      return n ? n.replace("&", "and").replace(" ", "+").replace("#", "") : "";
    }, _getUrlParameter: function _getUrlParameter(n, t) {
      n = n.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");var r = new RegExp("[\\?&]" + n + "=([^&#]*)"),
          i = r.exec(t);return i === null ? "" : decodeURIComponent(i[1].replace(/\+/g, " "));
    }, _narPaymentsCheckIsValid: function _narPaymentsCheckIsValid() {
      var n = this,
          r = n.jQuery('[name="nar-bank-has-nrds-id"]:checked').val(),
          i = n.jQuery("#nar-bank-member-id"),
          u = i.val(),
          t = n._narValidateMemberIdInner(r, i, u);return (n.jQuery("#mn-bank-account-holder-name").val() === "" && (t += "<br/>Account Holder Name is required."), n.jQuery("#mn-bank-check-number").val() === "" && (t += "<br/>Check Number is required."), n.jQuery("#mn-bank-micr-number").val() === "" && (t += "<br/>MICR Number is required."), n.jQuery("#mn-bank-email").val() === "" && (t += "<br/>Email is required."), n.jQuery("#mn-bank-drivers-license").val() === "" && (t += "<br/>Drivers License Number is required."), n.jQuery("#mn-bank-dob-year").val() === "" && (t += "<br/>Date of Birth is required."), t !== "") ? (t = "<b>Please review the following errors:<\/b>" + t, n._showError(t, null, !0), n._hideProgress(), n.enablePaymentButton(), !1) : !0;
    }, _narValidateMemberIdInner: function _narValidateMemberIdInner(t, i, r) {
      var u = this,
          f = "",
          e,
          o;return t || (f += '<br/>Please answer the question "Do you have a NRDS Member Id".'), t === "no" && (r === "" || r == u._nrdsDefaultMemberId) && !!(u._narSplitsModel || {}).MemberInvoice && ((u._narSplitsModel || {}).Splits || []).some(function (n) {
        return n.AssociationId !== "0000";
      }) && (e = "You must have an Active M1 ID to pay for membership dues.", f += "<br/>" + e, o = n.formPost, o.FailureReason.value = e, u._narPaymentsAddUpdateEpayment()), t === "no" && r === "" && (i.val(u._nrdsDefaultMemberId), r = i.val()), t === "yes" && r === "" && (f += "<br/>NRDS Member ID is required."), t === "no" && r === "" && (f += "<br/>Sorry. Default NRDS Member ID not configured."), f;
    }, _narCheckPac: function _narCheckPac() {
      var n = this,
          t,
          i;return (n._narSplitsModel && n._narSplitsModel.Splits && n._narSplitsModel.Splits.length > 0 || n._voluntaryItems) && (t = !1, i = n._payingByBank ? n.jQuery('[name="nar-nrds-contribution-type"]:checked').val() === "Corporate" : n.jQuery('[name="nar-has-nrds-card-type"]:checked').val() === "Corporate", i && (n.jQuery.each(n._purchases, function (i, r) {
        r.voluntaryItems && n.jQuery.each(r.voluntaryItems, function (n, i) {
          /.*RPAC.*/gi.test(i.Description) && (t = !0);
        });
      }), n._voluntaryItems && n.jQuery.each(n._voluntaryItems, function (n, i) {
        /.*RPAC.*/gi.test(i.Description) && (t = !0);
      }), t)) ? (n._narPacPrompt(), !1) : !0;
    }, _narPaymentsCardIsValid: function _narPaymentsCardIsValid() {
      var n = this,
          e = n.jQuery('[name="nar-has-nrds-id"]:checked').val(),
          u = n.jQuery("#nar-member-id"),
          o = u.val(),
          t = n._narValidateMemberIdInner(e, u, o),
          r = n.jQuery(".mn-card-number").val(),
          i = n._getNarPaymentsCardType(r),
          f;return (r === "" && (t += "<br/>Please enter a valid card."), i !== "Visa" || n._narPaymentsSettings.AcceptVisa || (t += "<br/>Sorry Visa cards are not accepted."), i !== "Master Card" || n._narPaymentsSettings.AcceptMC || (t += "<br/>Sorry Master Card cards are not accepted."), i !== "American Express" || n._narPaymentsSettings.AcceptAMX || (t += "<br/>Sorry American Express cards are not accepted."), i !== "Discover" || n._narPaymentsSettings.AcceptDiscover || (t += "<br/>Sorry Discover cards are not accepted."), f = n.jQuery('[name="nar-has-nrds-card-type"]:checked').val(), f === undefined && n._voluntaryAmount > 0 && (t += "<br/>Please select a card type."), t += n._advancedCardIsValid(r), n.jQuery("#mn-card-name").val() === "" && (t += "<br/>Name on Card is required."), n.jQuery('[name="stripe_address1"]').val() === "" && (t += "<br/>Card Address Line 1 is required."), n.jQuery('[name="stripe_city"]').val() === "" && (t += "<br/>Card City is required."), n.jQuery('[name="stripe_zip"]').val() === "" && (t += "<br/>Card Zip/Postal Code is required."), n.jQuery('[name="mn-nar-state"]').val() === "" && (t += "<br/>State/Region is required."), t !== "") ? (t = "<b>Please review the following errors:<\/b>" + t, n._showError(t, null, !0), n._hideProgress(), n.enablePaymentButton(), !1) : !0;
    }, _narPaymentsSetBasicRequestParameters: function _narPaymentsSetBasicRequestParameters(n) {
      var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.AssociationID.value = n._narPaymentsSettings.AssociationId;t.MemberID.value = n._payingByBank ? n.jQuery("#nar-bank-member-id").val() : n.jQuery("#nar-member-id").val();t.AssociationUserID.value = n._narPaymentsSettings.UserId;t.AssociationPassword.value = n._narPaymentsSettings.Password;t.AssociationReturnURL.value = n._getNarReturnUrl();t.AssociationRequestID.value = n._narPaymentsRequestId;
    }, _narPaymentsSetCardRequestParameters: function _narPaymentsSetCardRequestParameters(n, t) {
      var e = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost"),
          i = e.get(0),
          u = n.jQuery(".mn-card-number").val(),
          r = n.jQuery(".mn-card-expiry-month").val(),
          f;r.length === 1 && (r = "0" + r);f = n.jQuery(".mn-card-expiry-year").val().substring(2);i.CreditCardType.value = n._getNarPaymentsCardType(u);i.CreditCardNumber.value = u;i.CreditCardExpirationDate.value = r + f;i.AccountName.value = n._narPaymentsCleanPostString(n.jQuery("#mn-card-name").val().substring(0, 50));n._narSetAddress(n);(typeof t == "undefined" || t === !1) && n._narSetSplits(n);
    }, _narPaymentsSetCheckRequestParameters: function _narPaymentsSetCheckRequestParameters(n) {
      var i = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost"),
          t = i.get(0);t.AccountType.value = "Electronic+Check";t.AccountName.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-account-holder-name").val().substring(0, 50));t.CheckNumber.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-check-number").val().substring(0, 8));t.MICRNumber.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-micr-number").val());t.EmailAddress.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-email").val());t.DriversLicenseNumber.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-drivers-license").val().substring(0, 30));t.DriversLicenseState.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-drivers-license-state").val());t.AccountName.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-account-holder-name").val().substring(0, 50));t.DateOfBirth.value = n._narPaymentsCleanPostString(n.jQuery("#mn-bank-dob-month").val() + n.jQuery("#mn-bank-dob-day").val() + n.jQuery("#mn-bank-dob-year").val());n._narSetAddress(n);n._narSetSplits(n);
    }, _narSetAddress: function _narSetAddress(n) {
      var i = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost"),
          t = i.get(0);t.AddressLine1.value = n._narPaymentsCleanPostString(n.jQuery('[name="stripe_address1"]').val().substring(0, 30));t.AddressLine2.value = n._narPaymentsCleanPostString(n.jQuery('[name="stripe_address2"]').val().substring(0, 30));t.City.value = n._narPaymentsCleanPostString(n.jQuery('[name="stripe_city"]').val().substring(0, 21));t.State.value = n.jQuery('[name="mn-nar-state"]').val();t.ZipCode.value = n._narPaymentsCleanPostString(n.jQuery('[name="stripe_zip"]').val().substring(0, 5));
    }, _narSetSplits: function _narSetSplits(n) {
      var r = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost"),
          o = r.get(0),
          t;if (n._narSplitsModel && n._narSplitsModel.Splits && n._narSplitsModel.Splits.length > 0) for (o.MemberInvoice.value = n._narSplitsModel.MemberInvoice ? "Y" : "N", o.BillingYear.value = n._narSplitsModel.BillingYear == 0 ? "" : n._narSplitsModel.BillingYear, t = 0; t < 6; t++) {
        var u = n._narSplitsModel.Splits.length > t ? n._narSplitsModel.Splits[t] : null,
            i = "",
            f = "",
            e = "";u && (i = u.AssociationId, f = u.BankId, e = u.Amount, i == "0000" && (i = n._narPaymentsSettings.AssociationId));i !== "" && n.jQuery("<input>").attr({ type: "hidden", name: "DistributionAssociation" + (t + 1), value: i }).appendTo(r);e !== "" && n.jQuery("<input>").attr({ type: "hidden", name: "DistributionAmount" + (t + 1), value: e }).appendTo(r);f !== "" && n.jQuery("<input>").attr({ type: "hidden", name: "DistributionAssocBankID" + (t + 1), value: f }).appendTo(r);
      }
    }, _narCaptureAuthorization: function _narCaptureAuthorization() {
      var n = this;n._narPaymentsGetRequestId(n._narCaptureAuthorizationInner, n);
    }, _narCaptureAuthorizationInner: function _narCaptureAuthorizationInner(n) {
      n._narPaymentsAction = "capture";var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.action = n._narPaymentsBaseUrl + "/recn/ext/ExtInterface?ServiceName=CreditCardSettlement";t.ECControlNumber.value = n.narEccCode;n._narPaymentsSetBasicRequestParameters(n);n._narPaymentsAddUpdateEpayment(n._narSubmitIframeForm);
    }, _narCheckPayment: function _narCheckPayment(n) {
      n._narPaymentsCheckIsValid() && n._narPaymentsGetRequestId(n._narCheckPaymentCardInner, n);
    }, _narSplitsPayment: function _narSplitsPayment(n) {
      if (!n._payingByBank) {
        if (!n._basicCardIsValid()) return;if (!n._narPaymentsCardIsValid()) return;
      }n._narPaymentsGetRequestId(n._narSplitsPaymentCardInner, n);
    }, _narCheckPaymentCardInner: function _narCheckPaymentCardInner(n) {
      n._narPaymentsAction = "checkcharge";var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.action = n._narPaymentsBaseUrl + "/recn/ext/ExtInterface?ServiceName=ACHOneTimePurchase";n._narPaymentsSetBasicRequestParameters(n);n._narPaymentsSetCheckRequestParameters(n);t.Amount.value = n.getAmount();n._narPaymentsAddUpdateEpayment(n._narSubmitIframeForm);
    }, _narSplitsPaymentCardInner: function _narSplitsPaymentCardInner(n) {
      n._narPaymentsAction = "charge";var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.action = n._narPaymentsBaseUrl + "/recn/ext/ExtInterface?ServiceName=CreditCardOneTimePurchase";n._narPaymentsSetBasicRequestParameters(n);n._narPaymentsSetCardRequestParameters(n);t.Amount.value = n.getAmount();n._narPaymentsAddUpdateEpayment(n._narSubmitIframeForm);
    }, _narSubmitIframeForm: function _narSubmitIframeForm(n) {
      var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.submit();
    }, _narPaymentsAuthorizeCard: function _narPaymentsAuthorizeCard() {
      var n = this;if (!n._payingByBank) {
        if (!n._basicCardIsValid()) return;if (!n._narPaymentsCardIsValid()) return;
      }n._narPaymentsGetRequestId(n._narPaymentsAuthorizeCardAddEpaymentCallback, n);
    }, _narPaymentsAuthorizeCardAddEpaymentCallback: function _narPaymentsAuthorizeCardAddEpaymentCallback(n) {
      n._narPaymentsAddUpdateEpayment(n._narPaymentsAuthorizeCardInner);
    }, _narPaymentsAuthorizeCardInner: function _narPaymentsAuthorizeCardInner(n) {
      n._narPaymentsAction = "auth";var t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.action = n._narPaymentsBaseUrl + "/recn/ext/ExtInterface?ServiceName=CreditCardOneTimeAuthorization";n._narPaymentsSetBasicRequestParameters(n);n._narPaymentsSetCardRequestParameters(n);t.Amount.value = n.getAmount();n._narPaymentsAddUpdateEpayment(n._narSubmitIframeForm);
    }, _narPaymentsAddCard: function _narPaymentsAddCard(n) {
      if (!n._payingByBank) {
        if (!n._basicCardIsValid()) return;if (!n._narPaymentsCardIsValid()) return;
      }n._narCheckPac() && n._narSaveCardProcess();
    }, _narPaymentsAddCardAddEpaymentCallback: function _narPaymentsAddCardAddEpaymentCallback(n) {
      n._narPaymentsGetRequestId(n._narPaymentsAddCardInner, n);
    }, _narPaymentsAddCardInner: function _narPaymentsAddCardInner(n) {
      var t, i;n._narPaymentsAction = "addCard";t = n.jQuery("#NarPaymentsSubmitterFrame").contents().find("#narPaymentsFormPost").get(0);t.action = n._narPaymentsBaseUrl + "/recn/ext/ExtInterface?ServiceName=AddPaymentProfile";i = !0;n._narPaymentsSetBasicRequestParameters(n);n._narPaymentsSetCardRequestParameters(n, i);t.ProfileID.value = n._narPaymentsRequestId;n._narPaymentsRequestId = "";n._narPaymentsAddUpdateEpayment(n._narSubmitIframeForm);
    }, _narPaymentsAddCardFinish: function _narPaymentsAddCardFinish() {
      var t = this,
          r = n.formPost,
          u,
          i,
          f;t._setNarPaymentsFormFields();u = t.jQuery(".mn-card-number").val();i = t.jQuery(".mn-card-expiry-month").val();i.length === 1 && (i = "0" + i);f = t.jQuery(".mn-card-expiry-year").val();r.PaymentProfileTypeId.value = 1;r.Name.value = paymentProcessingUtils.cardType(u) + ":*********" + u.substr(u.length - 4) + "-" + i + "/" + f;r.ProfileKey.value = t._narProfileKey;r.ClientKey.value = t.jQuery("#nar-member-id").val();t.jQuery.ajax({ url: t._getProfileSubmitUrl(), type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: t._getSubmitCardFormData(), success: function success(n) {
          var r, i, u;console.log("_narPaymentsAddCardFinish result: " + n);r = '<option value="' + n.ProfileKey + '" data-id="' + n.PaymentProfileId + '" data-name="' + n.Name + '" data-client="' + n.ClientKey + '" " data-profiletype="1" selected="selected">' + n.Name + "<\/option>";i = t.jQuery("#mn-saved-profiles");i.append(r);i.show();t.jQuery("#mn-saved-cards").show();t._setProfileSelectChangeEvent(i, t);t._onlySaveCard ? (t.setDeferCharges(!0), t._deferCharges ? t._callback && (t._setNarPaymentsFormFields(), u = { Success: "true", PaymentProfileId: n.PaymentProfileId, CapturePaymentProfileAndChargeOnApproval: t._capturePaymentProfileAndChargeOnApproval, AllowPaymentProfileInAutoPay: t.jQuery("#mn-use-for-sb").is(":checked") }, t._callback(u)) : (t._hideProgress(), t._showInfo("Payment Method Saved", 5e3, null, t._render()), t.enablePaymentButton())) : t.continuePayCardPost();
        }, error: function error(n, i, r) {
          console.log("_narPaymentsAddCardFinish error: " + i + " - " + r);t._hideProgress();t._showError(i ? i : r);t.enablePaymentButton();
        } });
    }, _setNarPaymentsFormFields: function _setNarPaymentsFormFields() {
      var t = this,
          i = n.formPost,
          r,
          u,
          f,
          e;i.Amount.value = t.getAmount();r = t.jQuery(".mn-card-number").val();i.CardType.value = paymentProcessingUtils.cardType(r);i.CardLast4.value = r.substr(r.length - 4);i.CardExpMonth.value = t.jQuery(".mn-card-expiry-month").val();i.CardExpYear.value = t.jQuery(".mn-card-expiry-year").val();i.StorePaymentInfoForFuture.value = t.jQuery("#mn-save-card").is(":checked");i.TokenId.value = t.narEccCode ? t.narEccCode : "";i.ResponseData.value = t.narResult;i.EPaymentTransactionId.value = t.EpaymentTransactionId;u = t.jQuery("#mn-saved-profiles").find(":selected");i.PaymentProfileId.value = u.val() != "" ? u.data("id") : 0;f = t.jQuery("#mn-bank-micr-number").val();e = f.substr(f.length - 4);i.AccountLast4.value = e;i.IsBankCharge.value = t._payingByBank;i.ContactName.value = t._payingByBank ? t.jQuery("#mn-bank-account-holder-name").val() : t.jQuery("#mn-card-name").val();i.Address.value = t.jQuery('[name="stripe_address1"]').val();i.Address2.value = t.jQuery('[name="stripe_address2"]').val();i.City.value = t.jQuery('[name="stripe_city"]').val();i.StateProvince.value = t.jQuery("#mn-nar-state").val();i.State.value = i.StateProvince.value;i.PostalCode.value = t.jQuery('[name="stripe_zip"]').val();i.CountryCode.value = "USA";i.NRDSMemberId.value = t._payingByBank ? t.jQuery("#nar-bank-member-id").val() : t.jQuery("#nar-member-id").val();i.NarPaymentsBaseUrl.value = t._narPaymentsBaseUrl;i.HasNRDSMemberId.value = t._payingByBank ? t.jQuery('[name="nar-bank-has-nrds-id"]:checked').val() : t.jQuery('[name="nar-has-nrds-id"]:checked').val();i.CardAccountType.value = t.jQuery('[name="nar-has-nrds-card-type"]:checked').val();i.AssociationRequestId.value = t._narPaymentsRequestId;
    }, _narPaymentsAddUpdateEpayment: function _narPaymentsAddUpdateEpayment(n) {
      var t = this;if (t._onlySaveCard) {
        n && n(t);return;
      }t._deferCharges ? n(t) : grecaptcha.ready(function () {
        grecaptcha.execute(t._recaptchaSiteKey, { action: "submitCharge" }).then(function (i) {
          t._recaptchaToken = i;t._setNarPaymentsFormFields();var r = t._getFormData();t.jQuery.ajax({ url: "//" + t._getDomain() + "/api/widget/narpayments/charge", type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: r, success: function success(i) {
              var u, r;i.Success === !1 || i.EpaymentTransactionId == 0 ? (u = i.UserMesage != "" ? i.UserMessage : t._defaultErrorMessage, t._narHandleError(u)) : (t.EpaymentTransactionId = i.EpaymentTransactionId, t._sessionKey = i.SessionKey, r = t.jQuery("#EpaymentTransactionId"), r.length ? r.val(i.EpaymentTransactionId) : t.jQuery('form[name="formPost"]').append('<input type="hidden" id="EpaymentTransactionId" value="' + i.EpaymentTransactionId + '" />'), n && n(t));
            }, error: function error(n, i, r) {
              console.log("_narPaymentsAddUpdateEpayment error: " + n + " textStatus: " + i + " errorThrown: " + r);var u = JSON.parse(n.responseText),
                  f = t._defaultErrorMessage;u.ExceptionMessage && (f = u.ExceptionMessage);t._narHandleError(f);
            } });
        });
      });
    }, _narHandleError: function _narHandleError(n) {
      var t = this;t._hideProgress();t._showError(n);t.enablePaymentButton();
    }, _narSaveCardProcess: function _narSaveCardProcess() {
      var n = this;n._onlySaveCard ? n._narPaymentsAddCardAddEpaymentCallback(n) : n._narPaymentsAddUpdateEpayment(n._narPaymentsAddCardAddEpaymentCallback);
    }, _narPacPrompt: function _narPacPrompt() {
      var n = this;n._hideProgress();n.jQuery("#mn-new-card-info").hide();n.jQuery("#mn-demographics").hide();n.jQuery("#mn-save-card-wrapper").hide();n.jQuery("#mn-scheduled-billings-wrapper").hide();n.jQuery("#mn-add-bank-wrapper").hide();n.jQuery("#mn-new-bank-info").hide();n.jQuery("#mn-payment-form-error").hide();n.jQuery("#mn-nar-error-pac").show();
    }, _narPacContinue: function _narPacContinue() {
      var n = this;!n._payingByBank && n.jQuery("#mn-save-card").is(":checked") ? n._narSaveCardProcess() : n._narPaymentsAddUpdateEpayment(n._payingByBank ? n._narCheckPayment : n._narSplitsPayment);
    }, _narPacCancel: function _narPacCancel() {
      var n = this;n.jQuery("#mn-new-card-info").show();n.jQuery("#mn-demographics").show();n._allowSavingCard && (n.jQuery("#mn-save-card-wrapper").show(), n._showAllowPaymentProfileInAutoPayCheckbox && n.jQuery("#mn-scheduled-billings-wrapper").show(), n.jQuery("#mn-add-bank-wrapper").show());n.jQuery("#mn-new-bank-info").show();n.jQuery("#mn-nar-error-pac").hide();n.enablePaymentButton();
    }, _narPacOnError: function _narPacOnError() {
      var n = this;n.jQuery("#mn-payment-form-error").show();n.jQuery("#mn-demographics").show();n._allowSavingCard && (n.jQuery("#mn-save-card-wrapper").show(), n._showAllowPaymentProfileInAutoPayCheckbox && n.jQuery("#mn-scheduled-billings-wrapper").show());n._payingByBank ? n.jQuery("#mn-new-bank-info").show() : n.jQuery("#mn-new-card-info").show();n.jQuery("#mn-nar-error-pac").hide();n.jQuery("#mn-add-bank-wrapper").hide();n.enablePaymentButton();
    }, _narPaymentsChargeOrAuth: function _narPaymentsChargeOrAuth(t) {
      var i = n.formPost;if (!t._payingByBank) {
        if (!t._basicCardIsValid()) return;if (!t._narPaymentsCardIsValid()) return;
      }t._narCheckPac() && (i.FailureReason.value = "", t._payingByBank ? t._narPaymentsAddUpdateEpayment(t._narCheckPayment) : t._narSplitsModel && t._narSplitsModel.Splits && t._narSplitsModel.Splits.length > 0 ? t._narPaymentsAddUpdateEpayment(t._narSplitsPayment) : t._narPaymentsAuthorizeCard());
    }, _narPaymentsGetSplits: function _narPaymentsGetSplits(n, t) {
      var i, r, u, f;if (t._setNarPaymentsFormFields(), t._showProgress(), i = t.jQuery("#formPost").serialize(), t._purchases && t.jQuery.each(t._purchases, function (n, r) {
        if (r.purchaseId != "") {
          if (i += "&OpenInvoices[" + n + "].IsSelected=true", i += "&OpenInvoices[" + n + "].PurchaseId=" + r.purchaseId, i += "&OpenInvoices[" + n + "].InvoiceNumber=" + r.reference, i += "&OpenInvoices[" + n + "].ParentPurchaseId=" + r.parentPurchaseId, i += "&OpenInvoices[" + n + "].ParentPurchaseRelationshipTypeId=" + r.parentPurchaseRelationshipTypeId, r.voluntaryItems) {
            var u = 0;t.jQuery.each(r.voluntaryItems, function (t, r) {
              r && (i += "&OpenInvoices[" + n + "].VoluntaryItems[" + u + "].PurchaseItemId=" + r.PurchaseItemId, i += "&OpenInvoices[" + n + "].VoluntaryItems[" + u + "].IsSelected=true", i += "&OpenInvoices[" + n + "].VoluntaryItems[" + u + "].Price=" + r.Price, u++);
            });
          }i += "&OpenInvoices[" + n + "].Balance=" + r.balance;
        }
      }), t._saleableItemAmounts) {
        r = 0;for (u in t._saleableItemAmounts) {
          (f = t._saleableItemAmounts[u], f != 0) && (i += "&SaleableItemAmounts[" + r + "].SaleableItemId=" + u, i += "&SaleableItemAmounts[" + r + "].Amount=" + f, r++);
        }
      }t.jQuery.ajax({ url: "//" + t._getDomain() + "/api/widget/narpayments/splits/", type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded", data: i, success: function success(i) {
          t._narSplitsModel = i;n(t);
        }, error: function error(n, i, r) {
          console.log("_narPaymentsGetSplits error: " + n + " textStatus: " + i + " errorThrown: " + r);t._hideProgress();t._showError("Sorry we were unable to gather information for the charge.");t.enablePaymentButton();
        } });
    }, _narPaymentsGetRequestId: function _narPaymentsGetRequestId(n, t) {
      t._showProgress();t.jQuery.ajax({ url: "//" + t._getDomain() + "/api/widget/narpayments/requestid/", type: "get", success: function success(i) {
          console.log("requestId: " + i);t._narPaymentsRequestId = Number(t._narPaymentsSettings.DefaultId + "00000000") + Number(i);n && n(t);
        }, error: function error(i, r, u) {
          console.log("_narPaymentsGetRequestId error: " + i + " textStatus: " + r + " errorThrown: " + u);t._hideProgress();t._showError("Sorry we were unable to obtain a request.");t.enablePaymentButton();n && n();
        } });
    }, _validatePaymentAmount: function _validatePaymentAmount(n, t) {
      var r = 0,
          i = n.jQuery("#mainForm"),
          u = 0;if (i.find('input[name^="OpenInvoices"]').remove(), n.jQuery("input[id^='chkPurchase']").each(function () {
        var f, t;if (n.jQuery(this).is(":checked")) {
          var e = n.jQuery(this).data("id"),
              o = n.jQuery(this).data("ref"),
              s = n.jQuery(this).data("parentpurchaseid"),
              h = n.jQuery(this).data("parentpurchaserelationshiptypeid"),
              c = n.jQuery(this).data("balance");u = parseFloat(c);i.append('<input type="hidden" name="OpenInvoices[' + r + '].IsSelected" value="true" />');i.append('<input type="hidden" name="OpenInvoices[' + r + '].PurchaseId" value="' + e + '" />');i.append('<input type="hidden" name="OpenInvoices[' + r + '].InvoiceNumber" value="' + o + '" />');i.append('<input type="hidden" name="OpenInvoices[' + r + '].ParentPurchaseId" value="' + s + '" />');i.append('<input type="hidden" name="OpenInvoices[' + r + '].ParentPurchaseRelationshipTypeId" value="' + h + '" />');f = null;t = 0;n.jQuery("input[data-pid='" + n.jQuery(this).data("id") + "']").each(function () {
            if (n.jQuery(this).is(":checked")) {
              var e = n.jQuery(this).data("id"),
                  f = n.jQuery("#volTxt" + e).val();!isNaN(f) && f > 0 && (u += parseFloat(f), i.append('<input type="hidden" name="OpenInvoices[' + r + "].VoluntaryItems[" + t + '].PurchaseItemId" value="' + e + '" />'), i.append('<input type="hidden" name="OpenInvoices[' + r + "].VoluntaryItems[" + t + '].IsSelected" value="true" />'), i.append('<input type="hidden" name="OpenInvoices[' + r + "].VoluntaryItems[" + t + '].Price" value="' + f + '" />'), t++);
            }
          });i.append('<input type="hidden" name="OpenInvoices[' + r + '].Balance" value="' + roundAwayFromZero(u) + '" />');r++;
        }
      }), i.find('input[name$="InvoiceNumber"]') == null || i.find('input[name$="InvoiceNumber"]').length == 0) {
        t(n);return;
      }n.jQuery.ajax({ url: (n._getSecure() ? "https://" : "http://") + n._getDomain() + "/api/finance/validatePaymentAmount/", type: "post", dataType: "json", data: n.jQuery("#mainForm").serialize(), success: function success(i) {
          if (i) {
            t(n);return;
          }i || (n._hideProgress(), n._showError("The price of one or more of the invoices you are paying has changed since you opened this page. Your credit card has not yet been charged. Please refresh the page, verify the new amount and resubmit payment."), n.enablePaymentButton());
        }, error: function error(t, i, r) {
          var u = JSON.parse(t.responseText);console.log("bank verify error: " + t.responseText + " textStatus: " + i + " errorThrown: " + r);n._hideProgress();n._showError(u.errors && u.errors.exceptions[0] ? u.errors.exceptions[0] : u.ExceptionMessage ? u.ExceptionMessage : t.responseText);n.enablePaymentButton();
        } });
    } });p.PaymentArea = s;
}(document, window, MNI);paymentProcessingUtils = function () {
  return { cardTypes: function () {
      for (var r, i, n = {}, t = r = 40; r <= 49; t = ++r) {
        n[t] = "Visa";
      }for (t = i = 20; i <= 29; t = ++i) {
        n[t] = "MasterCard";
      }for (t = i = 50; i <= 59; t = ++i) {
        n[t] = "MasterCard";
      }return n[34] = n[37] = "American Express", n[60] = n[62] = n[64] = n[65] = "Discover", n[35] = "JCB", n[30] = n[36] = n[38] = n[39] = "Diners Club", n;
    }(), cardType: function cardType(n) {
      return this.cardTypes[n.slice(0, 2)] || "Unknown";
    }, validateAccountNumber: function validateAccountNumber(n, t) {
      switch (n = this.trim(n), t) {case "US":
          return (/^\d+$/.test(n) && n.length >= 1 && n.length <= 17
          );default:
          return !0;}
    }, routingChecksum: function routingChecksum(n) {
      var i, r, t, u, e, f;for (t = 0, i = (n + "").split(""), f = [0, 3, 6], u = 0, e = f.length; u < e; u++) {
        r = f[u], t += 3 * parseInt(i[r]), t += 7 * parseInt(i[r + 1]), t += parseInt(i[r + 2]);
      }return 0 !== t && t % 10 == 0;
    }, validateRoutingNumber: function validateRoutingNumber(n, t) {
      switch (n = this.trim(n), t) {case "US":
          return (/^\d+$/.test(n) && 9 === n.length && this.routingChecksum(n)
          );case "CA":
          return (/\d{5}\-\d{3}/.test(n) && 9 === n.length
          );default:
          return !0;}
    }, trim: function trim(n) {
      return null === n ? "" : (n + "").replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/, "");
    }, checkCardNumberChecksum: function checkCardNumberChecksum(n) {
      var t = n.split("").map(Number).reverse();var i = t.reduce(function (n, t, i) {
        var r = i % 2 != 0;if (r) {
          var _i4 = t * 2;return n + (_i4 > 9 ? _i4 - 9 : _i4);
        }return n + t;
      }, 0);return i % 10 == 0;
    }, checkCardNumberLength: function checkCardNumberLength(n, t) {
      return n === "American Express" ? t === 15 : t === 16 || t === 19;
    }, checkCardNumberCharacters: function checkCardNumberCharacters(n) {
      return (/^\d+$/.test(n)
      );
    }, validateCreditCardNumber: function validateCreditCardNumber(n) {
      var t = !1,
          i = !1,
          r = !1,
          u = this.cardType(n);return (t = this.checkCardNumberCharacters(n), t) ? (i = this.checkCardNumberLength(u, n.length), r = this.checkCardNumberChecksum(n), i && r) : !1;
    } };
}();"".hashCode || Object.defineProperty(String.prototype, "hashCode", { value: function value() {
    for (var n = 0, i, t = 0; t < this.length; t++) {
      i = this.charCodeAt(t), n = (n << 5) - n + i | 0;
    }return n;
  } });Array.prototype.sum = function (n) {
  for (var i = 0, t = 0, r = this.length; t < r; t++) {
    i += this[t].isDeleted == !0 ? 0 : this[t][n] || 0;
  }return i;
};Array.prototype.sumMultiplied = function (n, t) {
  for (var r = 0, i = 0, u = this.length; i < u; i++) {
    r += this[i].isDeleted == !0 ? 0 : this[i][n] * (typeof t == "function" ? t(this[i]) : this[i][t]);
  }return r;
};Array.prototype.filter || (Array.prototype.filter = function (n) {
  var f = this.length >>> 0,
      i,
      u,
      t,
      r;if (typeof n != "function") throw new TypeError();for (i = [], u = arguments[1], t = 0; t < f; t++) {
    t in this && (r = this[t], n.call(u, r, t, this) && i.push(r));
  }return i;
});Array.prototype.isEmpty = function () {
  return !this.length;
};Array.prototype.any = function (n) {
  return this.some(n || function (n) {
    return n;
  });
};Array.prototype.min = function (n) {
  for (var t = Number.POSITIVE_INFINITY, r, i = this.length - 1; i >= 0; i--) {
    r = this[i].isDeleted == !0 ? t : this[i][n] || t, r < t && (t = r);
  }return t == Number.POSITIVE_INFINITY ? 0 : t;
};Array.prototype.distinct = function (n) {
  for (var i = this, r = [], u = [], f = this.length, t = 0; t < f; t++) {
    r[i[t][n]] || (r[i[t][n]] = !0, u.push(i[t]));
  }return u;
};Array.prototype.unique = function (n) {
  for (var i = this, r = [], u = [], f = this.length, t = 0; t < f; t++) {
    r[i[t][n]] || (r[i[t][n]] = !0, u.push(i[t][n]));
  }return u;
};hasAnyValue = function hasAnyValue(n) {
  var t = !1;for (var i in n) {
    n.hasOwnProperty(i) && (t = t || !!n[i]);
  }return t;
};String.prototype.startsWith || (String.prototype.startsWith = function (n, t) {
  return t = t || 0, this.indexOf(n, t) === t;
});Array.prototype.findIndex || Object.defineProperty(Array.prototype, "findIndex", { value: function value(n) {
    var i, r, u, t, f;if (this == null) throw new TypeError('"this" is null or not defined');if (i = Object(this), r = i.length >>> 0, typeof n != "function") throw new TypeError("predicate must be a function");for (u = arguments[1], t = 0; t < r;) {
      if (f = i[t], n.call(u, f, t, i)) return t;t++;
    }return -1;
  }, configurable: !0, writable: !0 });String.prototype.includes || (String.prototype.includes = function (n, t) {
  return typeof t != "number" && (t = 0), t + n.length > this.length ? !1 : this.indexOf(n, t) !== -1;
});Array.prototype.includes || Object.defineProperty(Array.prototype, "includes", { value: function value(n, t) {
    function e(n, t) {
      return n === t || typeof n == "number" && typeof t == "number" && isNaN(n) && isNaN(t);
    }var f, i, r, u;if (this == null) throw new TypeError('"this" is null or not defined');if (f = Object(this), i = f.length >>> 0, i === 0) return !1;for (r = t | 0, u = Math.max(r >= 0 ? r : i - Math.abs(r), 0); u < i;) {
      if (e(f[u], n)) return !0;u++;
    }return !1;
  } });