{
 "abi": [
  {
   "inputs": [],
   "name": "LengthMismatch",
   "type": "error"
  },
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "to",
     "type": "address"
    }
   ],
   "name": "NativeSendFailed",
   "type": "error"
  },
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "to",
     "type": "address"
    }
   ],
   "name": "TokenTransferFailed",
   "type": "error"
  },
  {
   "inputs": [
    {
     "internalType": "address[]",
     "name": "recipients",
     "type": "address[]"
    },
    {
     "internalType": "uint256[]",
     "name": "values",
     "type": "uint256[]"
    }
   ],
   "name": "disperseEther",
   "outputs": [],
   "stateMutability": "payable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "contract IERC20",
     "name": "token",
     "type": "address"
    },
    {
     "internalType": "address[]",
     "name": "recipients",
     "type": "address[]"
    },
    {
     "internalType": "uint256[]",
     "name": "values",
     "type": "uint256[]"
    }
   ],
   "name": "disperseToken",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "contract IERC20",
     "name": "token",
     "type": "address"
    },
    {
     "internalType": "address[]",
     "name": "recipients",
     "type": "address[]"
    },
    {
     "internalType": "uint256[]",
     "name": "values",
     "type": "uint256[]"
    }
   ],
   "name": "disperseTokenSimple",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  }
 ],
 "bytecode": "0x6080604052348015600f57600080fd5b506107a98061001f6000396000f3fe6080604052600436106100345760003560e01c806351ba162c14610039578063c73a2d601461005b578063e63d38ed1461007b575b600080fd5b34801561004557600080fd5b506100596100543660046105c8565b61008e565b005b34801561006757600080fd5b506100596100763660046105c8565b61019c565b610059610089366004610650565b610315565b8281146100b1576040516001621398b960e31b0319815260040160405180910390fd5b60005b838110156101945761018c866323b872dd60e01b338888868181106100db576100db6106c1565b90506020020160208101906100f091906106d7565b878787818110610102576101026106c1565b6040516001600160a01b0395861660248201529490931660448501525060209091020135606482015260840160408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152878785818110610172576101726106c1565b905060200201602081019061018791906106d7565b6104b0565b6001016100b4565b505050505050565b8281146101bf576040516001621398b960e31b0319815260040160405180910390fd5b6000805b828110156101f9578383828181106101dd576101dd6106c1565b90506020020135826101ef91906106fb565b91506001016101c3565b5060408051336024820181905230604483015260648083018590528351808403909101815260849092019092526020810180516001600160e01b03166323b872dd60e01b17905261024c918891906104b0565b60005b8481101561030c576103048763a9059cbb60e01b888885818110610275576102756106c1565b905060200201602081019061028a91906106d7565b87878681811061029c5761029c6106c1565b6040516001600160a01b039094166024850152602002919091013560448301525060640160408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152888885818110610172576101726106c1565b60010161024f565b50505050505050565b828114610338576040516001621398b960e31b0319815260040160405180910390fd5b60005b83811015610436576000858583818110610357576103576106c1565b905060200201602081019061036c91906106d7565b6001600160a01b0316848484818110610387576103876106c1565b9050602002013560405160006040518083038185875af1925050503d80600081146103ce576040519150601f19603f3d011682016040523d82523d6000602084013e6103d3565b606091505b505090508061042d578585838181106103ee576103ee6106c1565b905060200201602081019061040391906106d7565b60405163a210039360e01b81526001600160a01b0390911660048201526024015b60405180910390fd5b5060010161033b565b504780156104a957604051600090339083908381818185875af1925050503d8060008114610480576040519150601f19603f3d011682016040523d82523d6000602084013e610485565b606091505b50509050806101945760405163a210039360e01b8152336004820152602401610424565b5050505050565b600080846001600160a01b0316846040516104cb9190610722565b6000604051808303816000865af19150503d8060008114610508576040519150601f19603f3d011682016040523d82523d6000602084013e61050d565b606091505b509150915081158061053b575080511580159061053b5750808060200190518101906105399190610751565b155b156104a957604051632b596cb760e01b81526001600160a01b0384166004820152602401610424565b6001600160a01b038116811461057957600080fd5b50565b60008083601f84011261058e57600080fd5b50813567ffffffffffffffff8111156105a657600080fd5b6020830191508360208260051b85010111156105c157600080fd5b9250929050565b6000806000806000606086880312156105e057600080fd5b85356105eb81610564565b9450602086013567ffffffffffffffff81111561060757600080fd5b6106138882890161057c565b909550935050604086013567ffffffffffffffff81111561063357600080fd5b61063f8882890161057c565b969995985093965092949392505050565b6000806000806040858703121561066657600080fd5b843567ffffffffffffffff81111561067d57600080fd5b6106898782880161057c565b909550935050602085013567ffffffffffffffff8111156106a957600080fd5b6106b58782880161057c565b95989497509550505050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156106e957600080fd5b81356106f481610564565b9392505050565b8082018082111561071c57634e487b7160e01b600052601160045260246000fd5b92915050565b6000825160005b818110156107435760208186018101518583015201610729565b506000920191825250919050565b60006020828403121561076357600080fd5b815180151581146106f457600080fdfea264697066735822122003bb174aa76134ce834140553a8299e4bfb754aa53f39e517bc7283845bfc99764736f6c634300081c0033",
 "compiler": "solc 0.8.28, optimizer 200 runs, evmVersion paris"
}