{
  "_format": "hh-sol-artifact-1",
  "contractName": "BaseAction",
  "sourceName": "contracts/actions/BaseAction.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "admin",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "registry",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "who",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes4",
          "name": "what",
          "type": "bytes4"
        }
      ],
      "name": "Authorized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [],
      "name": "Executed",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "smartVault",
          "type": "address"
        }
      ],
      "name": "SmartVaultSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "who",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes4",
          "name": "what",
          "type": "bytes4"
        }
      ],
      "name": "Unauthorized",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "ANY_ADDRESS",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "NAMESPACE",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "who",
          "type": "address"
        },
        {
          "internalType": "bytes4",
          "name": "what",
          "type": "bytes4"
        }
      ],
      "name": "authorize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "who",
          "type": "address"
        },
        {
          "internalType": "bytes4",
          "name": "what",
          "type": "bytes4"
        }
      ],
      "name": "isAuthorized",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "registry",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newSmartVault",
          "type": "address"
        }
      ],
      "name": "setSmartVault",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "smartVault",
      "outputs": [
        {
          "internalType": "contract ISmartVault",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "who",
          "type": "address"
        },
        {
          "internalType": "bytes4",
          "name": "what",
          "type": "bytes4"
        }
      ],
      "name": "unauthorize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a060405234801561001057600080fd5b506040516107d73803806107d783398101604081905261002f916100f6565b6001600160a01b038116608052818161004f826324cfc3cf60e21b61006e565b61006082633323521b60e11b61006e565b505060018055506101299050565b6001600160a01b0382166000818152602081815260408083206001600160e01b0319861680855290835292819020805460ff19166001179055519182527f7f06c1c34ad47198873da9dcde2e40904035d41b23da3a9132df674a75022df7910160405180910390a25050565b80516001600160a01b03811681146100f157600080fd5b919050565b6000806040838503121561010957600080fd5b610112836100da565b9150610120602084016100da565b90509250929050565b608051610693610144600039600061015401526106936000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80636646a4361161005b5780636646a4361461013c5780637b1039991461014f578063933f0f3c14610176578063d9972b961461018957600080fd5b806313e3b57c1461008d5780633f81a192146100a257806344ba1fca146100e75780634fd49efd1461011c575b600080fd5b6100a061009b3660046105e6565b6101ac565b005b6100bd73ffffffffffffffffffffffffffffffffffffffff81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61010e7ff66b632ae3b479ef109dee46eb319414289a8426a08b64d81aad232941f9d22a81565b6040519081526020016100de565b6002546100bd9073ffffffffffffffffffffffffffffffffffffffff1681565b6100a061014a366004610601565b6102ce565b6100bd7f000000000000000000000000000000000000000000000000000000000000000081565b6100a0610184366004610601565b61030a565b61019c610197366004610601565b610342565b60405190151581526020016100de565b6101da336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b60025473ffffffffffffffffffffffffffffffffffffffff161561025f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f534d4152545f5641554c545f414c52454144595f53455400000000000000000060448201526064015b60405180910390fd5b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f6a7abc646862eeb16d8760c0c56dff37a2d2c6b012a3419910005e57e503a08790600090a250565b6102fc336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b6103068282610468565b5050565b610338336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b6103068282610515565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081527f50c7a3d1a23c7ff4a61d37c3f2c4aeb36cf60b43ee893723db201d3eb941cbad602052604081205460ff16806103f1575073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083207fffffffff000000000000000000000000000000000000000000000000000000008616845290915290205460ff165b9392505050565b6104028282610342565b610306576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f415554485f53454e4445525f4e4f545f414c4c4f5745440000000000000000006044820152606401610256565b73ffffffffffffffffffffffffffffffffffffffff82166000818152602081815260408083207fffffffff0000000000000000000000000000000000000000000000000000000086168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527fa2e97b9eea8d1168700e334304edd057dff89c0384ca6f920c73cc3e48c8e52391015b60405180910390a25050565b73ffffffffffffffffffffffffffffffffffffffff82166000818152602081815260408083207fffffffff0000000000000000000000000000000000000000000000000000000086168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055519182527f7f06c1c34ad47198873da9dcde2e40904035d41b23da3a9132df674a75022df79101610509565b803573ffffffffffffffffffffffffffffffffffffffff811681146105e157600080fd5b919050565b6000602082840312156105f857600080fd5b6103f1826105bd565b6000806040838503121561061457600080fd5b61061d836105bd565b915060208301357fffffffff000000000000000000000000000000000000000000000000000000008116811461065257600080fd5b80915050925092905056fea26469706673582212201f3880abf2129b39bf83fc7da61ac6242a6bc8d6160a921dab3108753f6a512464736f6c63430008110033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80636646a4361161005b5780636646a4361461013c5780637b1039991461014f578063933f0f3c14610176578063d9972b961461018957600080fd5b806313e3b57c1461008d5780633f81a192146100a257806344ba1fca146100e75780634fd49efd1461011c575b600080fd5b6100a061009b3660046105e6565b6101ac565b005b6100bd73ffffffffffffffffffffffffffffffffffffffff81565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61010e7ff66b632ae3b479ef109dee46eb319414289a8426a08b64d81aad232941f9d22a81565b6040519081526020016100de565b6002546100bd9073ffffffffffffffffffffffffffffffffffffffff1681565b6100a061014a366004610601565b6102ce565b6100bd7f000000000000000000000000000000000000000000000000000000000000000081565b6100a0610184366004610601565b61030a565b61019c610197366004610601565b610342565b60405190151581526020016100de565b6101da336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b60025473ffffffffffffffffffffffffffffffffffffffff161561025f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f534d4152545f5641554c545f414c52454144595f53455400000000000000000060448201526064015b60405180910390fd5b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f6a7abc646862eeb16d8760c0c56dff37a2d2c6b012a3419910005e57e503a08790600090a250565b6102fc336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b6103068282610468565b5050565b610338336000357fffffffff00000000000000000000000000000000000000000000000000000000166103f8565b6103068282610515565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081527f50c7a3d1a23c7ff4a61d37c3f2c4aeb36cf60b43ee893723db201d3eb941cbad602052604081205460ff16806103f1575073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083207fffffffff000000000000000000000000000000000000000000000000000000008616845290915290205460ff165b9392505050565b6104028282610342565b610306576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f415554485f53454e4445525f4e4f545f414c4c4f5745440000000000000000006044820152606401610256565b73ffffffffffffffffffffffffffffffffffffffff82166000818152602081815260408083207fffffffff0000000000000000000000000000000000000000000000000000000086168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055519182527fa2e97b9eea8d1168700e334304edd057dff89c0384ca6f920c73cc3e48c8e52391015b60405180910390a25050565b73ffffffffffffffffffffffffffffffffffffffff82166000818152602081815260408083207fffffffff0000000000000000000000000000000000000000000000000000000086168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055519182527f7f06c1c34ad47198873da9dcde2e40904035d41b23da3a9132df674a75022df79101610509565b803573ffffffffffffffffffffffffffffffffffffffff811681146105e157600080fd5b919050565b6000602082840312156105f857600080fd5b6103f1826105bd565b6000806040838503121561061457600080fd5b61061d836105bd565b915060208301357fffffffff000000000000000000000000000000000000000000000000000000008116811461065257600080fd5b80915050925092905056fea26469706673582212201f3880abf2129b39bf83fc7da61ac6242a6bc8d6160a921dab3108753f6a512464736f6c63430008110033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
