{
    "Function": "_setupStrategy",
    "File": "contracts/StrategyProxyFactory.sol",
    "Parent Contracts": [
        "contracts/helpers/StringUtils.sol",
        "contracts/helpers/AddressUtils.sol",
        "node_modules/@openzeppelin/contracts/proxy/Initializable.sol",
        "contracts/StrategyProxyFactoryStorage.sol",
        "contracts/interfaces/IStrategyProxyFactory.sol",
        "contracts/helpers/StrategyTypes.sol"
    ],
    "High-Level Calls": [
        "IStrategyController"
    ],
    "Internal Calls": [],
    "Library Calls": [],
    "Low-Level Calls": [],
    "Code": "function _setupStrategy(\n        address manager,\n        address strategy,\n        InitialState memory strategyState,\n        address router,\n        bytes memory data\n    ) internal {\n        IStrategyController strategyController = IStrategyController(controller);\n        strategyController.setupStrategy{value: msg.value}(\n            manager,\n            strategy,\n            strategyState,\n            router,\n            data\n        );\n    }"
}