text: "use strict";
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.KIP7Pausable__factory = void 0;
  const ethers_1 = require("ethers");
  const _abi = [
      {
          constant: true,
          inputs: [
              {
                  name: "interfaceId",
                  type: "bytes4",
              },
          ],
          name: "supportsInterface",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "spender",
                  type: "address",
              },
              {
                  name: "value",
                  type: "uint256",
              },
          ],
          name: "approve",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: true,
          inputs: [],
          name: "totalSupply",
          outputs: [
              {
                  name: "",
                  type: "uint256",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "from",
                  type: "address",
              },
              {
                  name: "to",
                  type: "address",
              },
              {
                  name: "value",
                  type: "uint256",
              },
          ],
          name: "transferFrom",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [],
          name: "unpause",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "recipient",
                  type: "address",
              },
              {
                  name: "amount",
                  type: "uint256",
              },
          ],
          name: "safeTransfer",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "sender",
                  type: "address",
              },
              {
                  name: "recipient",
                  type: "address",
              },
              {
                  name: "amount",
                  type: "uint256",
              },
          ],
          name: "safeTransferFrom",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: true,
          inputs: [
              {
                  name: "account",
                  type: "address",
              },
          ],
          name: "isPauser",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: true,
          inputs: [],
          name: "paused",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: false,
          inputs: [],
          name: "renouncePauser",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: true,
          inputs: [
              {
                  name: "account",
                  type: "address",
              },
          ],
          name: "balanceOf",
          outputs: [
              {
                  name: "",
                  type: "uint256",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "account",
                  type: "address",
              },
          ],
          name: "addPauser",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [],
          name: "pause",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "to",
                  type: "address",
              },
              {
                  name: "value",
                  type: "uint256",
              },
          ],
          name: "transfer",
          outputs: [
              {
                  name: "",
                  type: "bool",
              },
          ],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "sender",
                  type: "address",
              },
              {
                  name: "recipient",
                  type: "address",
              },
              {
                  name: "amount",
                  type: "uint256",
              },
              {
                  name: "data",
                  type: "bytes",
              },
          ],
          name: "safeTransferFrom",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          constant: true,
          inputs: [
              {
                  name: "owner",
                  type: "address",
              },
              {
                  name: "spender",
                  type: "address",
              },
          ],
          name: "allowance",
          outputs: [
              {
                  name: "",
                  type: "uint256",
              },
          ],
          payable: false,
          stateMutability: "view",
          type: "function",
      },
      {
          constant: false,
          inputs: [
              {
                  name: "recipient",
                  type: "address",
              },
              {
                  name: "amount",
                  type: "uint256",
              },
              {
                  name: "data",
                  type: "bytes",
              },
          ],
          name: "safeTransfer",
          outputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "function",
      },
      {
          inputs: [],
          payable: false,
          stateMutability: "nonpayable",
          type: "constructor",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: false,
                  name: "account",
                  type: "address",
              },
          ],
          name: "Paused",
          type: "event",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: false,
                  name: "account",
                  type: "address",
              },
          ],
          name: "Unpaused",
          type: "event",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: true,
                  name: "account",
                  type: "address",
              },
          ],
          name: "PauserAdded",
          type: "event",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: true,
                  name: "account",
                  type: "address",
              },
          ],
          name: "PauserRemoved",
          type: "event",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: true,
                  name: "from",
                  type: "address",
              },
              {
                  indexed: true,
                  name: "to",
                  type: "address",
              },
              {
                  indexed: false,
                  name: "value",
                  type: "uint256",
              },
          ],
          name: "Transfer",
          type: "event",
      },
      {
          anonymous: false,
          inputs: [
              {
                  indexed: true,
                  name: "owner",
                  type: "address",
              },
              {
                  indexed: true,
                  name: "spender",
                  type: "address",
              },
              {
                  indexed: false,
                  name: "value",
                  type: "uint256",
              },
          ],
          name: "Approval",
          type: "event",
      },
  ];
  const _bytecode = "0x60806040523480156200001157600080fd5b506200002a6301ffc9a760e01b6200009560201b60201c565b62000042636578737160e01b6200009560201b60201c565b62000053336200016460201b60201c565b6005805460ff191690556200008f7f4d5507ff0000000000000000000000000000000000000000000000000000000062000095602090811b901c565b620002dd565b7fffffffff0000000000000000000000000000000000000000000000000000000080821614156200012757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4b495031333a20696e76616c696420696e746572666163652069640000000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152602081905260409020805460ff19166001179055565b6200017f816004620001b660201b62000eeb1790919060201c565b6040516001600160a01b038216907f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f890600090a250565b620001c882826200025a60201b60201c565b156200023557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620002bd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180620014b06022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6111c380620002ed6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80635c975abb116100a25780638456cb59116100715780638456cb59146102b5578063a9059cbb146102bd578063b88d4fde146102e9578063dd62ed3e146103af578063eb795549146103dd5761010b565b80635c975abb146102595780636ef8d66d1461026157806370a082311461026957806382dc1ec41461028f5761010b565b80633f4ba83a116100de5780633f4ba83a146101c7578063423f6cef146101d157806342842e0e146101fd57806346fbf68e146102335761010b565b806301ffc9a714610110578063095ea7b31461014b57806318160ddd1461017757806323b872dd14610191575b600080fd5b6101376004803603602081101561012657600080fd5b50356001600160e01b031916610498565b604080519115158252519081900360200190f35b6101376004803603604081101561016157600080fd5b506001600160a01b0381351690602001356104b7565b61017f61051c565b60408051918252519081900360200190f35b610137600480360360608110156101a757600080fd5b506001600160a01b03813581169160208101359091169060400135610522565b6101cf610589565b005b6101cf600480360360408110156101e757600080fd5b506001600160a01b038135169060200135610669565b6101cf6004803603606081101561021357600080fd5b506001600160a01b03813581169160208101359091169060400135610687565b6101376004803603602081101561024957600080fd5b50356001600160a01b03166106a7565b6101376106c0565b6101cf6106c9565b61017f6004803603602081101561027f57600080fd5b50356001600160a01b03166106d4565b6101cf600480360360208110156102a557600080fd5b50356001600160a01b03166106ef565b6101cf610742565b610137600480360360408110156102d357600080fd5b506001600160a01b03813516906020013561081c565b6101cf600480360360808110156102ff57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561033a57600080fd5b82018360208201111561034c57600080fd5b8035906020019184600183028401116401000000008311171561036e57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061087a945050505050565b61017f600480360360408110156103c557600080fd5b506001600160a01b03813581169160200135166108d6565b6101cf600480360360608110156103f357600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561042357600080fd5b82018360208201111561043557600080fd5b8035906020019184600183028401116401000000008311171561045757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610901945050505050565b6001600160e01b03191660009081526020819052604090205460ff1690565b60055460009060ff161561050b5760408051600160e51b62461bcd0281526020600482015260106024820152600160821b6f14185d5cd8589b194e881c185d5cd95902604482015290519081900360640190fd5b6105158383610956565b9392505050565b60035490565b60055460009060ff16156105765760408051600160e51b62461bcd0281526020600482015260106024820152600160821b6f14185d5cd8589b194e881c185d5cd95902604482015290519081900360640190fd5b61058184848461096c565b949350505050565b610592336106a7565b6105d057604051600160e51b62461bcd0281526004018080602001828103825260308152602001806110bc6030913960400191505060405180910390fd5b60055460ff1661062a5760408051600160e51b62461bcd02815260206004820152601460248201527f5061757361626c653a206e6f7420706175736564000000000000000000000000604482015290519081900360640190fd5b6005805460ff191690556040805133815290517f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9181900360200190a1565b610683828260405180602001604052806000815250610901565b5050565b6106a28383836040518060200160405280600081525061087a565b505050565b60006106ba60048363ffffffff6109c316565b92915050565b60055460ff1690565b6106d233610a2d565b565b6001600160a01b031660009081526001602052604090205490565b6106f8336106a7565b61073657604051600160e51b62461bcd0281526004018080602001828103825260308152602001806110bc6030913960400191505060405180910390fd5b61073f81610a75565b50565b61074b336106a7565b61078957604051600160e51b62461bcd0281526004018080602001828103825260308152602001806110bc6030913960400191505060405180910390fd5b60055460ff16156107da5760408051600160e51b62461bcd0281526020600482015260106024820152600160821b6f14185d5cd8589b194e881c185d5cd95902604482015290519081900360640190fd5b6005805460ff191660011790556040805133815290517f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589181900360200190a1565b60055460009060ff16156108705760408051600160e51b62461bcd0281526020600482015260106024820152600160821b6f14185d5cd8589b194e881c185d5cd95902604482015290519081900360640190fd5b6105158383610abd565b610885848484610522565b5061089284848484610aca565b6108d057604051600160e51b62461bcd02815260040180806020018281038252602e81526020018061108e602e913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b61090b838361081c565b5061091833848484610aca565b6106a257604051600160e51b62461bcd02815260040180806020018281038252602e81526020018061108e602e913960400191505060405180910390fd5b6000610963338484610c03565b50600192915050565b6000610979848484610cf5565b6001600160a01b0384166000908152600260209081526040808320338085529252909120546109b99186916109b4908663ffffffff610e3f16565b610c03565b5060019392505050565b60006001600160a01b038216610a0d57604051600160e51b62461bcd0281526004018080602001828103825260228152602001806111536022913960400191505060405180910390fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b610a3e60048263ffffffff610e8116565b6040516001600160a01b038216907fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e90600090a250565b610a8660048263ffffffff610eeb16565b6040516001600160a01b038216907f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f890600090a250565b6000610963338484610cf5565b6000610ade846001600160a01b0316610f6f565b610aea57506001610581565b604051600160e11b634e8c461102815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a1694639d188c229490938c938b938b939260a4019060208501908083838e5b83811015610b67578181015183820152602001610b4f565b50505050905090810190601f168015610b945780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610bb657600080fd5b505af1158015610bca573d6000803e3d6000fd5b505050506040513d6020811015610be057600080fd5b50516001600160e01b031916600160e11b634e8c46110214915050949350505050565b6001600160a01b038316610c4b57604051600160e51b62461bcd0281526004018080602001828103825260238152602001806111756023913960400191505060405180910390fd5b6001600160a01b038216610c9357604051600160e51b62461bcd02815260040180806020018281038252602181526020018061106d6021913960400191505060405180910390fd5b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610d3d57604051600160e51b62461bcd02815260040180806020018281038252602481526020018061112f6024913960400191505060405180910390fd5b6001600160a01b038216610d8557604051600160e51b62461bcd0281526004018080602001828103825260228152602001806110ec6022913960400191505060405180910390fd5b6001600160a01b038316600090815260016020526040902054610dae908263ffffffff610e3f16565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610de3908263ffffffff610f7516565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600061051583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fd2565b610e8b82826109c3565b610ec957604051600160e51b62461bcd02815260040180806020018281038252602181526020018061110e6021913960400191505060405180910390fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b610ef582826109c3565b15610f4a5760408051600160e51b62461bcd02815260206004820152601f60248201527f526f6c65733a206163636f756e7420616c72656164792068617320726f6c6500604482015290519081900360640190fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b3b151590565b6000828201838110156105155760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000818484111561106457604051600160e51b62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611029578181015183820152602001611011565b50505050905090810190601f1680156110565780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4b4950373a20617070726f766520746f20746865207a65726f20616464726573734b4950373a207472616e7366657220746f206e6f6e204b495037526563656976657220696d706c656d656e746572506175736572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652050617573657220726f6c654b4950373a207472616e7366657220746f20746865207a65726f2061646472657373526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654b4950373a207472616e736665722066726f6d20746865207a65726f2061646472657373526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734b4950373a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a7230582076db12f894eaeb78a6901ae44d99084376b263d68a235d53393798bbf1b5e07a0029526f6c65733a206163636f756e7420697320746865207a65726f2061646472657373";
  class KIP7Pausable__factory extends ethers_1.ContractFactory {
      constructor(...args) {
          if (args.length === 1) {
              super(_abi, _bytecode, args[0]);
          }
          else {
              super(...args);
          }
      }
      deploy(overrides) {
          return super.deploy(overrides || {});
      }
      getDeployTransaction(overrides) {
          return super.getDeployTransaction(overrides || {});
      }
      attach(address) {
          return super.attach(address);
      }
      connect(signer) {
          return super.connect(signer);
      }
      static createInterface() {
          return new ethers_1.utils.Interface(_abi);
      }
      static connect(address, signerOrProvider) {
          return new ethers_1.Contract(address, _abi, signerOrProvider);
      }
  }
  exports.KIP7Pausable__factory = KIP7Pausable__factory;
  KIP7Pausable__factory.bytecode = _bytecode;
  KIP7Pausable__factory.abi = _abi;
  //# sourceMappingURL=KIP7Pausable__factory.js.map