"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const padZeropadding$1 = require("../../_virtual/pad-zeropadding.js");
const core = require("./core.js");
const cipherCore = require("./cipher-core.js");
var padZeropadding = padZeropadding$1.__module.exports;
var hasRequiredPadZeropadding;
function requirePadZeropadding() {
  if (hasRequiredPadZeropadding) return padZeropadding$1.__module.exports;
  hasRequiredPadZeropadding = 1;
  (function(module2, exports2) {
    (function(root, factory, undef) {
      {
        module2.exports = factory(core.__require(), cipherCore.__require());
      }
    })(padZeropadding, function(CryptoJS) {
      CryptoJS.pad.ZeroPadding = {
        pad: function(data, blockSize) {
          var blockSizeBytes = blockSize * 4;
          data.clamp();
          data.sigBytes += blockSizeBytes - (data.sigBytes % blockSizeBytes || blockSizeBytes);
        },
        unpad: function(data) {
          var dataWords = data.words;
          var i = data.sigBytes - 1;
          for (var i = data.sigBytes - 1; i >= 0; i--) {
            if (dataWords[i >>> 2] >>> 24 - i % 4 * 8 & 255) {
              data.sigBytes = i + 1;
              break;
            }
          }
        }
      };
      return CryptoJS.pad.ZeroPadding;
    });
  })(padZeropadding$1.__module);
  return padZeropadding$1.__module.exports;
}
exports.__require = requirePadZeropadding;
