{
    "Function": "propose",
    "File": "contracts/lib/openzeppelin-contracts/contracts/governance/compatibility/GovernorCompatibilityBravo.sol",
    "Parent Contracts": [
        "contracts/lib/openzeppelin-contracts/contracts/governance/Governor.sol",
        "contracts/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol",
        "contracts/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol",
        "contracts/lib/openzeppelin-contracts/contracts/governance/compatibility/IGovernorCompatibilityBravo.sol",
        "contracts/lib/openzeppelin-contracts/contracts/governance/extensions/IGovernorTimelock.sol",
        "contracts/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol",
        "contracts/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol",
        "contracts/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol",
        "contracts/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol",
        "contracts/lib/openzeppelin-contracts/contracts/utils/Context.sol"
    ],
    "High-Level Calls": [],
    "Internal Calls": [
        "_encodeCalldata",
        "_msgSender",
        "_storeProposal",
        "propose"
    ],
    "Library Calls": [],
    "Low-Level Calls": [],
    "Code": "function propose(\n        address[] memory targets,\n        uint256[] memory values,\n        string[] memory signatures,\n        bytes[] memory calldatas,\n        string memory description\n    ) public virtual override returns (uint256) {\n        _storeProposal(_msgSender(), targets, values, signatures, calldatas, description);\n        return propose(targets, values, _encodeCalldata(signatures, calldatas), description);\n    }"
}