{
    "released": true,
    "contractName": "AllowanceModule",
    "version": "0.1.1",
    "networkAddresses": {
        "50": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "51": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "61": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "63": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "100": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "130": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "137": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "143": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "204": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "288": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "360": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "988": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "999": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "2201": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "2818": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "2910": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "3338": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "4217": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "4326": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "3637": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "8453": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "9745": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "10143": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "11011": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "16661": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "25363": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "28882": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "42431": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "43111": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "46630": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "56288": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "80069": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "80094": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "81224": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "88882": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "88888": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "102030": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "560048": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "747474": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "5042002": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "5064014": "0xAA46724893dedD72658219405185Fb0Fc91e091C",
        "13374202": "0xAA46724893dedD72658219405185Fb0Fc91e091C"
    },
    "abi": [
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                }
            ],
            "name": "AddDelegate",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "DeleteAllowance",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "to",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint96",
                    "name": "value",
                    "type": "uint96"
                },
                {
                    "indexed": false,
                    "internalType": "uint16",
                    "name": "nonce",
                    "type": "uint16"
                }
            ],
            "name": "ExecuteAllowanceTransfer",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "paymentToken",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "paymentReceiver",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint96",
                    "name": "payment",
                    "type": "uint96"
                }
            ],
            "name": "PayAllowanceTransfer",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                }
            ],
            "name": "RemoveDelegate",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "ResetAllowance",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint96",
                    "name": "allowanceAmount",
                    "type": "uint96"
                },
                {
                    "indexed": false,
                    "internalType": "uint16",
                    "name": "resetTime",
                    "type": "uint16"
                }
            ],
            "name": "SetAllowance",
            "type": "event"
        },
        {
            "inputs": [],
            "name": "ALLOWANCE_TRANSFER_TYPEHASH",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [],
            "name": "DOMAIN_SEPARATOR_TYPEHASH",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [],
            "name": "NAME",
            "outputs": [
                {
                    "internalType": "string",
                    "name": "",
                    "type": "string"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [],
            "name": "VERSION",
            "outputs": [
                {
                    "internalType": "string",
                    "name": "",
                    "type": "string"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                }
            ],
            "name": "allowances",
            "outputs": [
                {
                    "internalType": "uint96",
                    "name": "amount",
                    "type": "uint96"
                },
                {
                    "internalType": "uint96",
                    "name": "spent",
                    "type": "uint96"
                },
                {
                    "internalType": "uint16",
                    "name": "resetTimeMin",
                    "type": "uint16"
                },
                {
                    "internalType": "uint32",
                    "name": "lastResetMin",
                    "type": "uint32"
                },
                {
                    "internalType": "uint16",
                    "name": "nonce",
                    "type": "uint16"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                },
                {
                    "internalType": "uint48",
                    "name": "",
                    "type": "uint48"
                }
            ],
            "name": "delegates",
            "outputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "uint48",
                    "name": "prev",
                    "type": "uint48"
                },
                {
                    "internalType": "uint48",
                    "name": "next",
                    "type": "uint48"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                }
            ],
            "name": "delegatesStart",
            "outputs": [
                {
                    "internalType": "uint48",
                    "name": "",
                    "type": "uint48"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "name": "tokens",
            "outputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "internalType": "uint96",
                    "name": "allowanceAmount",
                    "type": "uint96"
                },
                {
                    "internalType": "uint16",
                    "name": "resetTimeMin",
                    "type": "uint16"
                },
                {
                    "internalType": "uint32",
                    "name": "resetBaseMin",
                    "type": "uint32"
                }
            ],
            "name": "setAllowance",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "resetAllowance",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "deleteAllowance",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "contract GnosisSafe",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "internalType": "address payable",
                    "name": "to",
                    "type": "address"
                },
                {
                    "internalType": "uint96",
                    "name": "amount",
                    "type": "uint96"
                },
                {
                    "internalType": "address",
                    "name": "paymentToken",
                    "type": "address"
                },
                {
                    "internalType": "uint96",
                    "name": "payment",
                    "type": "uint96"
                },
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "bytes",
                    "name": "signature",
                    "type": "bytes"
                }
            ],
            "name": "executeAllowanceTransfer",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [],
            "name": "getChainId",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "pure",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "to",
                    "type": "address"
                },
                {
                    "internalType": "uint96",
                    "name": "amount",
                    "type": "uint96"
                },
                {
                    "internalType": "address",
                    "name": "paymentToken",
                    "type": "address"
                },
                {
                    "internalType": "uint96",
                    "name": "payment",
                    "type": "uint96"
                },
                {
                    "internalType": "uint16",
                    "name": "nonce",
                    "type": "uint16"
                }
            ],
            "name": "generateTransferHash",
            "outputs": [
                {
                    "internalType": "bytes32",
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                }
            ],
            "name": "getTokens",
            "outputs": [
                {
                    "internalType": "address[]",
                    "name": "",
                    "type": "address[]"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "token",
                    "type": "address"
                }
            ],
            "name": "getTokenAllowance",
            "outputs": [
                {
                    "internalType": "uint256[5]",
                    "name": "",
                    "type": "uint256[5]"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                }
            ],
            "name": "addDelegate",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "delegate",
                    "type": "address"
                },
                {
                    "internalType": "bool",
                    "name": "removeAllowances",
                    "type": "bool"
                }
            ],
            "name": "removeDelegate",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "safe",
                    "type": "address"
                },
                {
                    "internalType": "uint48",
                    "name": "start",
                    "type": "uint48"
                },
                {
                    "internalType": "uint8",
                    "name": "pageSize",
                    "type": "uint8"
                }
            ],
            "name": "getDelegates",
            "outputs": [
                {
                    "internalType": "address[]",
                    "name": "results",
                    "type": "address[]"
                },
                {
                    "internalType": "uint48",
                    "name": "next",
                    "type": "uint48"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        }
    ]
}
