{
  "compilerVersion": "0.8.24",
  "abi": [
    {
      "type": "constructor",
      "inputs": [
        {
          "name": "_owner",
          "type": "address",
          "internalType": "address"
        },
        {
          "name": "_consensus",
          "type": "address",
          "internalType": "address"
        },
        {
          "name": "_disputeRegistry",
          "type": "address",
          "internalType": "address"
        },
        {
          "name": "_maxBondNativePrincipal",
          "type": "uint256",
          "internalType": "uint256"
        },
        {
          "name": "_maxAggregateNativeLiability",
          "type": "uint256",
          "internalType": "uint256"
        },
        {
          "name": "_pilotController",
          "type": "address",
          "internalType": "address"
        }
      ],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "DOMAIN_SEPARATOR",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "bytes32",
          "internalType": "bytes32"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "FLOURISHING_NON_CONTROL_BOUNDARY",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "bytes32",
          "internalType": "bytes32"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "activate",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "advanceObjectiveEvidence",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "bondOf",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.BondData",
          "components": [
            {
              "name": "terms",
              "type": "tuple",
              "internalType": "struct AccountabilityBondV3Safe.Terms",
              "components": [
                {
                  "name": "bondId",
                  "type": "uint256",
                  "internalType": "uint256"
                },
                {
                  "name": "aiCompany",
                  "type": "address",
                  "internalType": "address"
                },
                {
                  "name": "counterparty",
                  "type": "address",
                  "internalType": "address"
                },
                {
                  "name": "companyStake",
                  "type": "uint256",
                  "internalType": "uint256"
                },
                {
                  "name": "stakeAsset",
                  "type": "address",
                  "internalType": "address"
                },
                {
                  "name": "missionHash",
                  "type": "bytes32",
                  "internalType": "bytes32"
                },
                {
                  "name": "objectiveBreachRulesHash",
                  "type": "bytes32",
                  "internalType": "bytes32"
                },
                {
                  "name": "objectiveRuleClass",
                  "type": "uint8",
                  "internalType": "uint8"
                },
                {
                  "name": "objectiveRuleSchemaVersion",
                  "type": "uint16",
                  "internalType": "uint16"
                },
                {
                  "name": "flourishRewardRulesHash",
                  "type": "bytes32",
                  "internalType": "bytes32"
                },
                {
                  "name": "rewardProgramId",
                  "type": "uint256",
                  "internalType": "uint256"
                },
                {
                  "name": "activePeriodStart",
                  "type": "uint64",
                  "internalType": "uint64"
                },
                {
                  "name": "activePeriodEnd",
                  "type": "uint64",
                  "internalType": "uint64"
                },
                {
                  "name": "challengeWindow",
                  "type": "uint64",
                  "internalType": "uint64"
                },
                {
                  "name": "nonce",
                  "type": "uint96",
                  "internalType": "uint96"
                },
                {
                  "name": "chainId",
                  "type": "uint256",
                  "internalType": "uint256"
                },
                {
                  "name": "protocolVersion",
                  "type": "string",
                  "internalType": "string"
                }
              ]
            },
            {
              "name": "termsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "state",
              "type": "uint8",
              "internalType": "enum BondStateV3.State"
            },
            {
              "name": "fundedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "settlementRequestedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "fundedAmount",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "upheldBreachRecorded",
              "type": "bool",
              "internalType": "bool"
            },
            {
              "name": "slashedAmount",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "settlementSnapshot",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "challengeDisputeId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "challengeChallenger",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "challengeSettlementSnapshot",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "challengeSettlementRequestedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeFiledAt",
              "type": "uint64",
              "internalType": "uint64"
            }
          ]
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "cancelBeforeActivation",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "consensus",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "address"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "createBond",
      "inputs": [
        {
          "name": "",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.Terms",
          "components": [
            {
              "name": "bondId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "aiCompany",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "counterparty",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "companyStake",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "stakeAsset",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "missionHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveBreachRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveRuleClass",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "objectiveRuleSchemaVersion",
              "type": "uint16",
              "internalType": "uint16"
            },
            {
              "name": "flourishRewardRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "rewardProgramId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "activePeriodStart",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "activePeriodEnd",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "nonce",
              "type": "uint96",
              "internalType": "uint96"
            },
            {
              "name": "chainId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "protocolVersion",
              "type": "string",
              "internalType": "string"
            }
          ]
        },
        {
          "name": "",
          "type": "bytes",
          "internalType": "bytes"
        },
        {
          "name": "",
          "type": "bytes",
          "internalType": "bytes"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "pure"
    },
    {
      "type": "function",
      "name": "createBond",
      "inputs": [
        {
          "name": "t",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.Terms",
          "components": [
            {
              "name": "bondId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "aiCompany",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "counterparty",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "companyStake",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "stakeAsset",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "missionHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveBreachRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveRuleClass",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "objectiveRuleSchemaVersion",
              "type": "uint16",
              "internalType": "uint16"
            },
            {
              "name": "flourishRewardRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "rewardProgramId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "activePeriodStart",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "activePeriodEnd",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "nonce",
              "type": "uint96",
              "internalType": "uint96"
            },
            {
              "name": "chainId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "protocolVersion",
              "type": "string",
              "internalType": "string"
            }
          ]
        },
        {
          "name": "enforcement",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.EnforcementConfig",
          "components": [
            {
              "name": "canonicalSource",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "canonicalSourceCodehash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "canonicalSourceId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "obligationId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requiredBy",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "responseWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "decisionWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "maximumSlash",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "evidenceSchemaHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "privacyExclusionsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "adjudicatorSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterThreshold",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "adjudicatorThreshold",
              "type": "uint8",
              "internalType": "uint8"
            }
          ]
        },
        {
          "name": "signers",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.SignerConfig",
          "components": [
            {
              "name": "attesters",
              "type": "address[]",
              "internalType": "address[]"
            },
            {
              "name": "adjudicators",
              "type": "address[]",
              "internalType": "address[]"
            }
          ]
        },
        {
          "name": "sigCompany",
          "type": "bytes",
          "internalType": "bytes"
        },
        {
          "name": "sigCounterparty",
          "type": "bytes",
          "internalType": "bytes"
        }
      ],
      "outputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "creditAssets",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "internalType": "address"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "creditLiabilities",
      "inputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "address"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "creditOf",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "internalType": "address"
        },
        {
          "name": "holder",
          "type": "address",
          "internalType": "address"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "disputeRegistry",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "address"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "enforcementOf",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.EnforcementConfig",
          "components": [
            {
              "name": "canonicalSource",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "canonicalSourceCodehash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "canonicalSourceId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "obligationId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requiredBy",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "responseWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "decisionWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "maximumSlash",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "evidenceSchemaHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "privacyExclusionsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "adjudicatorSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterThreshold",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "adjudicatorThreshold",
              "type": "uint8",
              "internalType": "uint8"
            }
          ]
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "enforcementStateOf",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.EnforcementState",
          "components": [
            {
              "name": "evidenceHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "challengeHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requestedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "responseDeadline",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "respondedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeDeadline",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "decisionDeadline",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "resolved",
              "type": "bool",
              "internalType": "bool"
            }
          ]
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "expireUnactivated",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "expireUnfunded",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "forceExit",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "fundNative",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "payable"
    },
    {
      "type": "function",
      "name": "hashEnforcementConfig",
      "inputs": [
        {
          "name": "c",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.EnforcementConfig",
          "components": [
            {
              "name": "canonicalSource",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "canonicalSourceCodehash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "canonicalSourceId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "obligationId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requiredBy",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "responseWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "decisionWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "maximumSlash",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "evidenceSchemaHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "privacyExclusionsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "adjudicatorSetHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "attesterThreshold",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "adjudicatorThreshold",
              "type": "uint8",
              "internalType": "uint8"
            }
          ]
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "bytes32",
          "internalType": "bytes32"
        }
      ],
      "stateMutability": "pure"
    },
    {
      "type": "function",
      "name": "hashObjectiveEvidence",
      "inputs": [
        {
          "name": "evidence",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.ObjectiveEvidence",
          "components": [
            {
              "name": "bond",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "chainId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "bondId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "termsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "ruleHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "canonicalSource",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "canonicalSourceId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "obligationId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requiredBy",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "recordedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "observedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "nonce",
              "type": "uint96",
              "internalType": "uint96"
            },
            {
              "name": "signatureDeadline",
              "type": "uint64",
              "internalType": "uint64"
            }
          ]
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "bytes32",
          "internalType": "bytes32"
        }
      ],
      "stateMutability": "pure"
    },
    {
      "type": "function",
      "name": "hashTerms",
      "inputs": [
        {
          "name": "t",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.Terms",
          "components": [
            {
              "name": "bondId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "aiCompany",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "counterparty",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "companyStake",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "stakeAsset",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "missionHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveBreachRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "objectiveRuleClass",
              "type": "uint8",
              "internalType": "uint8"
            },
            {
              "name": "objectiveRuleSchemaVersion",
              "type": "uint16",
              "internalType": "uint16"
            },
            {
              "name": "flourishRewardRulesHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "rewardProgramId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "activePeriodStart",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "activePeriodEnd",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "challengeWindow",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "nonce",
              "type": "uint96",
              "internalType": "uint96"
            },
            {
              "name": "chainId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "protocolVersion",
              "type": "string",
              "internalType": "string"
            }
          ]
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "bytes32",
          "internalType": "bytes32"
        }
      ],
      "stateMutability": "pure"
    },
    {
      "type": "function",
      "name": "isCreditSolvent",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "internalType": "address"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "bool",
          "internalType": "bool"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "markExpired",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "maxAggregateNativeLiability",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "maxBondNativePrincipal",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "nativeLiability",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "nextBondId",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "uint256",
          "internalType": "uint256"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "nonceUsed",
      "inputs": [
        {
          "name": "party",
          "type": "address",
          "internalType": "address"
        },
        {
          "name": "nonce",
          "type": "uint96",
          "internalType": "uint96"
        }
      ],
      "outputs": [
        {
          "name": "",
          "type": "bool",
          "internalType": "bool"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "owner",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "address"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "pause",
      "inputs": [],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "paused",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "bool",
          "internalType": "bool"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "pilotController",
      "inputs": [],
      "outputs": [
        {
          "name": "",
          "type": "address",
          "internalType": "contract IPilotAccessControllerV3"
        }
      ],
      "stateMutability": "view"
    },
    {
      "type": "function",
      "name": "submitObjectiveEvidence",
      "inputs": [
        {
          "name": "evidence",
          "type": "tuple",
          "internalType": "struct AccountabilityBondV3Safe.ObjectiveEvidence",
          "components": [
            {
              "name": "bond",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "chainId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "bondId",
              "type": "uint256",
              "internalType": "uint256"
            },
            {
              "name": "termsHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "ruleHash",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "canonicalSource",
              "type": "address",
              "internalType": "address"
            },
            {
              "name": "canonicalSourceId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "obligationId",
              "type": "bytes32",
              "internalType": "bytes32"
            },
            {
              "name": "requiredBy",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "recordedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "observedAt",
              "type": "uint64",
              "internalType": "uint64"
            },
            {
              "name": "nonce",
              "type": "uint96",
              "internalType": "uint96"
            },
            {
              "name": "signatureDeadline",
              "type": "uint64",
              "internalType": "uint64"
            }
          ]
        },
        {
          "name": "signers",
          "type": "address[]",
          "internalType": "address[]"
        },
        {
          "name": "signatures",
          "type": "bytes[]",
          "internalType": "bytes[]"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "unpause",
      "inputs": [],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "function",
      "name": "withdrawCredit",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "internalType": "address"
        }
      ],
      "outputs": [],
      "stateMutability": "nonpayable"
    },
    {
      "type": "event",
      "name": "BondActivatedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "BondCreatedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "aiCompany",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "counterparty",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "termsHash",
          "type": "bytes32",
          "indexed": false,
          "internalType": "bytes32"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "BondExpiredV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "BondFundedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "amount",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "BondSettledV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "refundedToCompany",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        },
        {
          "name": "paidToCounterparty",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "BondStateChangedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "from",
          "type": "uint8",
          "indexed": false,
          "internalType": "enum BondStateV3.State"
        },
        {
          "name": "to",
          "type": "uint8",
          "indexed": false,
          "internalType": "enum BondStateV3.State"
        },
        {
          "name": "by",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "CreditedV3",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "to",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "amount",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "ForceExitedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "by",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "MutualSettlementExecutedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "companyRefund",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        },
        {
          "name": "counterpartySlash",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        },
        {
          "name": "authorizationNonce",
          "type": "uint96",
          "indexed": true,
          "internalType": "uint96"
        },
        {
          "name": "authorizationHash",
          "type": "bytes32",
          "indexed": false,
          "internalType": "bytes32"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "ObjectiveEvidenceAcceptedV3",
      "inputs": [
        {
          "name": "bondId",
          "type": "uint256",
          "indexed": true,
          "internalType": "uint256"
        },
        {
          "name": "evidenceHash",
          "type": "bytes32",
          "indexed": true,
          "internalType": "bytes32"
        },
        {
          "name": "responseDeadline",
          "type": "uint64",
          "indexed": false,
          "internalType": "uint64"
        },
        {
          "name": "challengeDeadline",
          "type": "uint64",
          "indexed": false,
          "internalType": "uint64"
        },
        {
          "name": "decisionDeadline",
          "type": "uint64",
          "indexed": false,
          "internalType": "uint64"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "PausedV3",
      "inputs": [
        {
          "name": "by",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "UnpausedV3",
      "inputs": [
        {
          "name": "by",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        }
      ],
      "anonymous": false
    },
    {
      "type": "event",
      "name": "WithdrawnV3",
      "inputs": [
        {
          "name": "asset",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "to",
          "type": "address",
          "indexed": true,
          "internalType": "address"
        },
        {
          "name": "amount",
          "type": "uint256",
          "indexed": false,
          "internalType": "uint256"
        }
      ],
      "anonymous": false
    },
    {
      "type": "error",
      "name": "AddressEmptyCode",
      "inputs": [
        {
          "name": "target",
          "type": "address",
          "internalType": "address"
        }
      ]
    },
    {
      "type": "error",
      "name": "AddressInsufficientBalance",
      "inputs": [
        {
          "name": "account",
          "type": "address",
          "internalType": "address"
        }
      ]
    },
    {
      "type": "error",
      "name": "AggregateCapExceeded",
      "inputs": []
    },
    {
      "type": "error",
      "name": "BadChain",
      "inputs": []
    },
    {
      "type": "error",
      "name": "BadSignature",
      "inputs": []
    },
    {
      "type": "error",
      "name": "BadSigner",
      "inputs": []
    },
    {
      "type": "error",
      "name": "BadState",
      "inputs": [
        {
          "name": "current",
          "type": "uint8",
          "internalType": "enum BondStateV3.State"
        }
      ]
    },
    {
      "type": "error",
      "name": "BadTerms",
      "inputs": []
    },
    {
      "type": "error",
      "name": "CanonicalSourceMismatch",
      "inputs": []
    },
    {
      "type": "error",
      "name": "DeadlineNotReached",
      "inputs": []
    },
    {
      "type": "error",
      "name": "DeadlinePassed",
      "inputs": []
    },
    {
      "type": "error",
      "name": "DesignPartnerNotCompany",
      "inputs": []
    },
    {
      "type": "error",
      "name": "EnforcementRequired",
      "inputs": []
    },
    {
      "type": "error",
      "name": "FailedInnerCall",
      "inputs": []
    },
    {
      "type": "error",
      "name": "IllegalTransition",
      "inputs": [
        {
          "name": "from",
          "type": "uint8",
          "internalType": "enum BondStateV3.State"
        },
        {
          "name": "to",
          "type": "uint8",
          "internalType": "enum BondStateV3.State"
        }
      ]
    },
    {
      "type": "error",
      "name": "InvalidEvidence",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidRule",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidSignatureLength",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidSignatureS",
      "inputs": []
    },
    {
      "type": "error",
      "name": "InvalidSignatureV",
      "inputs": []
    },
    {
      "type": "error",
      "name": "NoCredit",
      "inputs": []
    },
    {
      "type": "error",
      "name": "NonceUsed",
      "inputs": []
    },
    {
      "type": "error",
      "name": "NotOwner",
      "inputs": []
    },
    {
      "type": "error",
      "name": "NotParticipant",
      "inputs": []
    },
    {
      "type": "error",
      "name": "Overfund",
      "inputs": []
    },
    {
      "type": "error",
      "name": "Paused",
      "inputs": []
    },
    {
      "type": "error",
      "name": "PrincipalCapExceeded",
      "inputs": []
    },
    {
      "type": "error",
      "name": "Reentrancy",
      "inputs": []
    },
    {
      "type": "error",
      "name": "RewardTermsDisabled",
      "inputs": []
    },
    {
      "type": "error",
      "name": "SafeERC20FailedOperation",
      "inputs": [
        {
          "name": "token",
          "type": "address",
          "internalType": "address"
        }
      ]
    },
    {
      "type": "error",
      "name": "TransferFailed",
      "inputs": []
    },
    {
      "type": "error",
      "name": "UnsupportedAssetTransfer",
      "inputs": []
    },
    {
      "type": "error",
      "name": "ZeroAddress",
      "inputs": []
    },
    {
      "type": "error",
      "name": "ZeroAmount",
      "inputs": []
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_consensus\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_disputeRegistry\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_maxBondNativePrincipal\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_maxAggregateNativeLiability\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_pilotController\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"AddressEmptyCode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"AddressInsufficientBalance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AggregateCapExceeded\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BadChain\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BadSignature\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BadSigner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"enum BondStateV3.State\",\"name\":\"current\",\"type\":\"uint8\"}],\"name\":\"BadState\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BadTerms\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CanonicalSourceMismatch\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DeadlineNotReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DeadlinePassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DesignPartnerNotCompany\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"EnforcementRequired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FailedInnerCall\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"enum BondStateV3.State\",\"name\":\"from\",\"type\":\"uint8\"},{\"internalType\":\"enum BondStateV3.State\",\"name\":\"to\",\"type\":\"uint8\"}],\"name\":\"IllegalTransition\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidEvidence\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRule\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidSignatureLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidSignatureS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidSignatureV\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NoCredit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NonceUsed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotParticipant\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Overfund\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Paused\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PrincipalCapExceeded\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Reentrancy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RewardTermsDisabled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"SafeERC20FailedOperation\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TransferFailed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnsupportedAssetTransfer\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZeroAmount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"BondActivatedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"aiCompany\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"counterparty\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"termsHash\",\"type\":\"bytes32\"}],\"name\":\"BondCreatedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"BondExpiredV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BondFundedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"refundedToCompany\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"paidToCounterparty\",\"type\":\"uint256\"}],\"name\":\"BondSettledV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"enum BondStateV3.State\",\"name\":\"from\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"enum BondStateV3.State\",\"name\":\"to\",\"type\":\"uint8\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"}],\"name\":\"BondStateChangedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CreditedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"}],\"name\":\"ForceExitedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"companyRefund\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"counterpartySlash\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint96\",\"name\":\"authorizationNonce\",\"type\":\"uint96\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"authorizationHash\",\"type\":\"bytes32\"}],\"name\":\"MutualSettlementExecutedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"evidenceHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"responseDeadline\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"challengeDeadline\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"decisionDeadline\",\"type\":\"uint64\"}],\"name\":\"ObjectiveEvidenceAcceptedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"}],\"name\":\"PausedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"}],\"name\":\"UnpausedV3\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawnV3\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"FLOURISHING_NON_CONTROL_BOUNDARY\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"activate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"advanceObjectiveEvidence\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"bondOf\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"aiCompany\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"counterparty\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"companyStake\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"stakeAsset\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"missionHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"objectiveBreachRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"objectiveRuleClass\",\"type\":\"uint8\"},{\"internalType\":\"uint16\",\"name\":\"objectiveRuleSchemaVersion\",\"type\":\"uint16\"},{\"internalType\":\"bytes32\",\"name\":\"flourishRewardRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"rewardProgramId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodStart\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodEnd\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"protocolVersion\",\"type\":\"string\"}],\"internalType\":\"struct AccountabilityBondV3Safe.Terms\",\"name\":\"terms\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"termsHash\",\"type\":\"bytes32\"},{\"internalType\":\"enum BondStateV3.State\",\"name\":\"state\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"fundedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"settlementRequestedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint256\",\"name\":\"fundedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"upheldBreachRecorded\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"slashedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"settlementSnapshot\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"challengeDisputeId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challengeChallenger\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"challengeSettlementSnapshot\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"challengeSettlementRequestedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeFiledAt\",\"type\":\"uint64\"}],\"internalType\":\"struct AccountabilityBondV3Safe.BondData\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"cancelBeforeActivation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"consensus\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"aiCompany\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"counterparty\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"companyStake\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"stakeAsset\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"missionHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"objectiveBreachRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"objectiveRuleClass\",\"type\":\"uint8\"},{\"internalType\":\"uint16\",\"name\":\"objectiveRuleSchemaVersion\",\"type\":\"uint16\"},{\"internalType\":\"bytes32\",\"name\":\"flourishRewardRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"rewardProgramId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodStart\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodEnd\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"protocolVersion\",\"type\":\"string\"}],\"internalType\":\"struct AccountabilityBondV3Safe.Terms\",\"name\":\"\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"createBond\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"aiCompany\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"counterparty\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"companyStake\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"stakeAsset\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"missionHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"objectiveBreachRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"objectiveRuleClass\",\"type\":\"uint8\"},{\"internalType\":\"uint16\",\"name\":\"objectiveRuleSchemaVersion\",\"type\":\"uint16\"},{\"internalType\":\"bytes32\",\"name\":\"flourishRewardRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"rewardProgramId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodStart\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodEnd\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"protocolVersion\",\"type\":\"string\"}],\"internalType\":\"struct AccountabilityBondV3Safe.Terms\",\"name\":\"t\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"canonicalSource\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceCodehash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"obligationId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requiredBy\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"responseWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"decisionWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint256\",\"name\":\"maximumSlash\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"evidenceSchemaHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"privacyExclusionsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"attesterSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"adjudicatorSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"attesterThreshold\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"adjudicatorThreshold\",\"type\":\"uint8\"}],\"internalType\":\"struct AccountabilityBondV3Safe.EnforcementConfig\",\"name\":\"enforcement\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address[]\",\"name\":\"attesters\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"adjudicators\",\"type\":\"address[]\"}],\"internalType\":\"struct AccountabilityBondV3Safe.SignerConfig\",\"name\":\"signers\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"sigCompany\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"sigCounterparty\",\"type\":\"bytes\"}],\"name\":\"createBond\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"creditAssets\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"creditLiabilities\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"holder\",\"type\":\"address\"}],\"name\":\"creditOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"enforcementOf\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"canonicalSource\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceCodehash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"obligationId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requiredBy\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"responseWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"decisionWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint256\",\"name\":\"maximumSlash\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"evidenceSchemaHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"privacyExclusionsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"attesterSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"adjudicatorSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"attesterThreshold\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"adjudicatorThreshold\",\"type\":\"uint8\"}],\"internalType\":\"struct AccountabilityBondV3Safe.EnforcementConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"enforcementStateOf\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"evidenceHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"challengeHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requestedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"responseDeadline\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"respondedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeDeadline\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"decisionDeadline\",\"type\":\"uint64\"},{\"internalType\":\"bool\",\"name\":\"resolved\",\"type\":\"bool\"}],\"internalType\":\"struct AccountabilityBondV3Safe.EnforcementState\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"expireUnactivated\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"expireUnfunded\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"forceExit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"fundNative\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"canonicalSource\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceCodehash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"obligationId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requiredBy\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"responseWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"decisionWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint256\",\"name\":\"maximumSlash\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"evidenceSchemaHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"privacyExclusionsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"attesterSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"adjudicatorSetHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"attesterThreshold\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"adjudicatorThreshold\",\"type\":\"uint8\"}],\"internalType\":\"struct AccountabilityBondV3Safe.EnforcementConfig\",\"name\":\"c\",\"type\":\"tuple\"}],\"name\":\"hashEnforcementConfig\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"bond\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"termsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"ruleHash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"canonicalSource\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"obligationId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requiredBy\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"recordedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"observedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint64\",\"name\":\"signatureDeadline\",\"type\":\"uint64\"}],\"internalType\":\"struct AccountabilityBondV3Safe.ObjectiveEvidence\",\"name\":\"evidence\",\"type\":\"tuple\"}],\"name\":\"hashObjectiveEvidence\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"aiCompany\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"counterparty\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"companyStake\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"stakeAsset\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"missionHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"objectiveBreachRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"objectiveRuleClass\",\"type\":\"uint8\"},{\"internalType\":\"uint16\",\"name\":\"objectiveRuleSchemaVersion\",\"type\":\"uint16\"},{\"internalType\":\"bytes32\",\"name\":\"flourishRewardRulesHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"rewardProgramId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodStart\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"activePeriodEnd\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"challengeWindow\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"protocolVersion\",\"type\":\"string\"}],\"internalType\":\"struct AccountabilityBondV3Safe.Terms\",\"name\":\"t\",\"type\":\"tuple\"}],\"name\":\"hashTerms\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"isCreditSolvent\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"}],\"name\":\"markExpired\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxAggregateNativeLiability\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxBondNativePrincipal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nativeLiability\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nextBondId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"party\",\"type\":\"address\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"}],\"name\":\"nonceUsed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"paused\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pilotController\",\"outputs\":[{\"internalType\":\"contract IPilotAccessControllerV3\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"bond\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"chainId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"bondId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"termsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"ruleHash\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"canonicalSource\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"canonicalSourceId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"obligationId\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"requiredBy\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"recordedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"observedAt\",\"type\":\"uint64\"},{\"internalType\":\"uint96\",\"name\":\"nonce\",\"type\":\"uint96\"},{\"internalType\":\"uint64\",\"name\":\"signatureDeadline\",\"type\":\"uint64\"}],\"internalType\":\"struct AccountabilityBondV3Safe.ObjectiveEvidence\",\"name\":\"evidence\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"signers\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"}],\"name\":\"submitObjectiveEvidence\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unpause\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"asset\",\"type\":\"address\"}],\"name\":\"withdrawCredit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"The only enforcement path accepts the exact v1 canonical      record schema below. Signers attest facts; this contract computes the      outcome. No score, profile, generic evidence, or discretionary remedy      is accepted.\",\"errors\":{\"AddressEmptyCode(address)\":[{\"details\":\"There's no code at `target` (it is not a contract).\"}],\"AddressInsufficientBalance(address)\":[{\"details\":\"The ETH balance of the account is not enough to perform the operation.\"}],\"FailedInnerCall()\":[{\"details\":\"A call to an address target failed. The target may have reverted.\"}],\"SafeERC20FailedOperation(address)\":[{\"details\":\"An operation with an ERC20 token failed.\"}]},\"kind\":\"dev\",\"methods\":{\"advanceObjectiveEvidence(uint256)\":{\"details\":\"SettlementRequested closes at responseDeadline, Finalizable closes      at challengeDeadline, and SettlementFrozen settles at decisionDeadline.\"},\"expireUnactivated(uint256)\":{\"details\":\"Callable while paused. Principal is credited to the original      funder and remains subject to pull-payment withdrawal.\"}},\"stateVariables\":{\"evidenceNonceUsed\":{\"details\":\"New enforcement storage is appended after every legacy top-level      variable and kept outside BondData so `bondOf` preserves its V3 ABI.\"},\"mutualSettlementNonceUsed\":{\"details\":\"Deprecated storage slot retained for layout compatibility.\"},\"nativeLiability\":{\"details\":\"This is the aggregate-cap occupancy. It intentionally does not fall      when principal is merely converted into a withdrawal credit.\"}},\"title\":\"AccountabilityBondV3Safe\",\"version\":1},\"userdoc\":{\"errors\":{\"DesignPartnerNotCompany()\":[{\"notice\":\"A controller-bound pilot child must bind the registered design         partner as the value-bearing company.\"}],\"RewardTermsDisabled()\":[{\"notice\":\"Initial-pilot signed terms cannot represent reward behavior.\"}]},\"events\":{\"BondSettledV3(uint256,uint256,uint256)\":{\"notice\":\"Emitted only by a valid mutual-consent settlement.\"}},\"kind\":\"user\",\"methods\":{\"advanceObjectiveEvidence(uint256)\":{\"notice\":\"Permissionlessly advances exactly one signed enforcement stage.\"},\"consensus()\":{\"notice\":\"Legacy constructor bindings retained for address-level compatibility only; they have no custody authority.\"},\"createBond((uint256,address,address,uint256,address,bytes32,bytes32,uint8,uint16,bytes32,uint256,uint64,uint64,uint64,uint96,uint256,string),bytes,bytes)\":{\"notice\":\"Legacy mutual-only creation shape is fail-closed. Accountability         bonds must explicitly bind a complete enforcement configuration.\"},\"creditLiabilities(address)\":{\"notice\":\"The portion of an asset balance owed through this pull ledger.\"},\"expireUnactivated(uint256)\":{\"notice\":\"Permissionless recovery for a fully funded bond that was never         activated before the signed active-period window closed.\"},\"nativeLiability()\":{\"notice\":\"Native principal still held by the contract or owed as a pull-payment credit.\"},\"pilotController()\":{\"notice\":\"Base pilot controller. It is required on Base and follows the         same outstanding-principal lifecycle as nativeLiability.\"},\"submitObjectiveEvidence((address,uint256,uint256,bytes32,bytes32,address,bytes32,bytes32,uint64,uint64,uint64,uint96,uint64),address[],bytes[])\":{\"notice\":\"Executes the sole unilateral enforcement path after reading the         exact codehash-pinned canonical source on-chain. The empty array         arguments are retained only to make old clients fail explicitly;         threshold signatures have no authority over the result.\"},\"withdrawCredit(address)\":{\"notice\":\"Callable at any time, including when the contract is paused.         Invariant #11 \\u2014 pause never traps principal.\"}},\"notice\":\"Accountability bond with a closed, pre-agreed missed-deadline rule,         typed threshold attestations, and permissionless timeout recovery.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/bonds/AccountabilityBondV3Safe.sol\":\"AccountabilityBondV3Safe\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\"],\"viaIR\":true},\"sources\":{\"contracts/bonds/AccountabilityBondV3Safe.sol\":{\"keccak256\":\"0x2f3dcf1cff707c2ccf87b7144bcc10c6518704f5e850e1f08c9f7a88b7bd2cf8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6961d6de34d748a0e2d2d9e4bb4059dcad6617f56526852e40d1c35c436c72e\",\"dweb:/ipfs/QmQs4TzvFbnyDvEvEMR3nxZdA5DnqCiqbbLQYzAYPRt2DA\"]},\"contracts/bonds/AccountabilityCanonicalSourceV3.sol\":{\"keccak256\":\"0x31963e393db9e3ae9c1905b2c95df1e6a1e57eba773147cd6d2d8d147cab37c1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1c522603f0d8ae5837727a8d72a3d34b591ec14d573e55f6f76925639c32586\",\"dweb:/ipfs/QmfXHekPm3NJYvLRSbqYX82RunmdMCSP3Fk2M1Su6wpN9e\"]},\"contracts/bonds/BondStateV3.sol\":{\"keccak256\":\"0xffe2d0085bf706a47d1e221d8f5badc096e744cb907c26b812329c9a34ef68bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://19e9586aebc1262aadc24b68df243ab2fe677f34264a33c8b4b2ddb3fe8a0c0a\",\"dweb:/ipfs/QmYuAnHrRBFDo5mrC9GskPRqQAEDwVBPH1d689j5Girc2H\"]},\"contracts/bonds/IAccountabilityCanonicalSourceV3.sol\":{\"keccak256\":\"0x0ccc0b7383acd98ef13e7952477dafcd4aeb6e2f79074b991a190e28352743be\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://844cb7f07441e5d21f0a012255714697de969072b761eee74295c696f49a0df7\",\"dweb:/ipfs/QmSUUsq2YGxpcz45JrJqiEsAHf9NMfQSEspKSC9D8h9Rcu\"]},\"contracts/bonds/PullPaymentsV3.sol\":{\"keccak256\":\"0x5f972efce105e94d91d3a061f4725ccfe11d80f1d57ba1f488d43e22fd01e4bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eae9c085d70d8e18326ff726d173a6862dd7359d3d0748c9d67aea1a326abfa1\",\"dweb:/ipfs/QmTEAEvmSyMRzuTh9Qc7hL8pU7oaMX6Aio2aSkG858yVus\"]},\"contracts/pilot/IPilotAccessControllerV3.sol\":{\"keccak256\":\"0xdfc2877ba53ae3b5f898681175d9ab55585a45e77176790fc5ae8ec8fe39f89d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00369f557b0d1514feb3a7ac3b2330e2cc7a1567f6af22fd6e2f371c3e967022\",\"dweb:/ipfs/QmNNsiTSHgun1nh8yC5vVFJ1MxzpzcySPsSYg1JaJCXTng\"]},\"contracts/signatures/EIP712BaseV3.sol\":{\"keccak256\":\"0x0b3bc4dc6019ac1161cce0e5837ec4e26a5c41166c761c8c05d87ba265c3eef2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3ae150fd1e5f83202881cd5d7090b2f1b87cebe5a2fb80ccd2d730f4c0cb7de\",\"dweb:/ipfs/QmQ85m5FxMLHkCo9yHFup8qczmkDEgoXQAdcQPzPm6kW4b\"]},\"contracts/signatures/SignatureVerifierV3.sol\":{\"keccak256\":\"0x4585ebc32b59aea191d7423dad290843a05687882d175e0d5ab594c047a5f1ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://916de3a92bf0c10b138a3f541726f94568dfd621dc8ad179d1c5338bc3b2e3d4\",\"dweb:/ipfs/QmeguMdXddrmLVPVBSgHLcVyX8PS72GAG9zbNAcX4K8ipT\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xc6a8ff0ea489379b61faa647490411b80102578440ab9d84e9a957cc12164e70\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ea104e577e63faea3b69c415637e99e755dcbf64c5833d7140c35a714d6d90c\",\"dweb:/ipfs/Qmau6x4Ns9XdyynRCNNp3RhLqijJjFm7z5fyZazfYFGYdq\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0x6008dabfe393240d73d7dd7688033f72740d570aa422254d29a7dce8568f3aff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5196ec75139918c6c7bb4251b36395e668f1fa6d206beba7e7520e74913940d\",\"dweb:/ipfs/QmSyqjksXxmm2mCG6qRd1yuwLykypkSVBbnBnGqJRcuJMi\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x37bb49513c49c87c4642a891b13b63571bc87013dde806617aa1efb54605f386\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3036b3a83b7c48f96641f2a9002b9f2dcb6a5958dd670894ada21ae8229b3d0\",\"dweb:/ipfs/QmUNfSBdoVtjhETaUJCYcaC7pTMgbhht926tJ2uXJbiVd3\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0xaf28a975a78550e45f65e559a3ad6a5ad43b9b8a37366999abd1b7084eb70721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7bd24e224f67f65bfadf85dc2929fa965456bb2415478bd0125471b5ce35245\",\"dweb:/ipfs/QmRaydGr8BTHs1kvaZfsNU69pKzUAGFrvABn1KiRSbE51y\"]}},\"version\":1}"
}
