{
    "contractName": "SecondaryIssueManager",
    "abi": [
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "previousOwner",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "newOwner",
                    "type": "address"
                }
            ],
            "name": "OwnershipTransferred",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "poolId",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "security",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "timestamp",
                    "type": "uint256"
                }
            ],
            "name": "closures",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "platform",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "collection",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "timestamp",
                    "type": "uint256"
                }
            ],
            "name": "feecollection",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "poolId",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "seller",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "investor",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "internalType": "address",
                    "name": "securityTraded",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "currencySettled",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "amount",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "price",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "tradeRef",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "DPID",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "timestamp",
                    "type": "uint256"
                }
            ],
            "name": "subscribers",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "internalType": "bytes32",
                    "name": "poolid",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "transferor",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "transferee",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "unitsToTransfer",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "security",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "price",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "address",
                    "name": "currency",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "settlementStatus",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "bytes32",
                    "name": "tradeRef",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "fee",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "internalType": "uint256",
                    "name": "timestamp",
                    "type": "uint256"
                }
            ],
            "name": "tradeSettled",
            "type": "event"
        },
        {
            "inputs": [],
            "name": "owner",
            "outputs": [
                {
                    "internalType": "address",
                    "name": "",
                    "type": "address"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [],
            "name": "renounceOwnership",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "newOwner",
                    "type": "address"
                }
            ],
            "name": "transferOwnership",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "_factory",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "_issueFeePercentage",
                    "type": "uint256"
                },
                {
                    "internalType": "address",
                    "name": "_client",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "_vault",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "_distribution",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "_products",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "newOwner",
                    "type": "address"
                }
            ],
            "name": "initialize",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "uint256",
                    "name": "_fee",
                    "type": "uint256"
                }
            ],
            "name": "setFee",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "security",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "currency",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "securityOutstanding",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "securityOffered",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "minSecurityOrder",
                    "type": "uint256"
                },
                {
                    "internalType": "uint256",
                    "name": "cashAmount",
                    "type": "uint256"
                }
            ],
            "name": "issueSecondary",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "security",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "currency",
                    "type": "address"
                },
                {
                    "internalType": "uint256",
                    "name": "swapfee",
                    "type": "uint256"
                }
            ],
            "name": "setIssuingFee",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "security",
                    "type": "address"
                },
                {
                    "internalType": "address",
                    "name": "currency",
                    "type": "address"
                }
            ],
            "name": "getIssuingFee",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "components": [
                        {
                            "internalType": "address",
                            "name": "partyAddress",
                            "type": "address"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "partyRef",
                            "type": "bytes32"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "counterpartyRef",
                            "type": "bytes32"
                        },
                        {
                            "internalType": "uint256",
                            "name": "dt",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "securityTraded",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "currencyTraded",
                            "type": "uint256"
                        }
                    ],
                    "internalType": "struct ITrade.trade",
                    "name": "tradeToReport",
                    "type": "tuple"
                },
                {
                    "internalType": "contract IOrder",
                    "name": "orderbook",
                    "type": "address"
                }
            ],
            "name": "requestSettlement",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "dpid",
                    "type": "bytes32"
                },
                {
                    "internalType": "bytes32",
                    "name": "poolId",
                    "type": "bytes32"
                }
            ],
            "name": "getSettlementRequests",
            "outputs": [
                {
                    "internalType": "bytes32[]",
                    "name": "",
                    "type": "bytes32[]"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "ref",
                    "type": "bytes32"
                }
            ],
            "name": "getSettlementRequest",
            "outputs": [
                {
                    "components": [
                        {
                            "internalType": "contract IOrder",
                            "name": "orderPool",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "transferor",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "transferee",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "security",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "currency",
                            "type": "address"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "status",
                            "type": "bytes32"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "DPID",
                            "type": "bytes32"
                        },
                        {
                            "internalType": "uint256",
                            "name": "price",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "unitsToTransfer",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "consideration",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "executionDate",
                            "type": "uint256"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "partyRef",
                            "type": "bytes32"
                        },
                        {
                            "internalType": "bytes32",
                            "name": "counterpartyRef",
                            "type": "bytes32"
                        }
                    ],
                    "internalType": "struct ISettlor.settlement",
                    "name": "",
                    "type": "tuple"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "poolId",
                    "type": "bytes32"
                }
            ],
            "name": "close",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "ref",
                    "type": "bytes32"
                },
                {
                    "internalType": "bytes32",
                    "name": "status",
                    "type": "bytes32"
                }
            ],
            "name": "setSettlementStatus",
            "outputs": [],
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "internalType": "bytes32",
                    "name": "poolId",
                    "type": "bytes32"
                }
            ],
            "name": "getSubscribers",
            "outputs": [
                {
                    "components": [
                        {
                            "internalType": "address",
                            "name": "investor",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "asset",
                            "type": "address"
                        },
                        {
                            "internalType": "address",
                            "name": "currency",
                            "type": "address"
                        },
                        {
                            "internalType": "uint256",
                            "name": "amount",
                            "type": "uint256"
                        },
                        {
                            "internalType": "uint256",
                            "name": "price",
                            "type": "uint256"
                        }
                    ],
                    "internalType": "struct ISettlor.subscriptions[]",
                    "name": "",
                    "type": "tuple[]"
                }
            ],
            "stateMutability": "view",
            "type": "function",
            "constant": true
        },
        {
            "inputs": [
                {
                    "internalType": "address",
                    "name": "_token",
                    "type": "address"
                }
            ],
            "name": "getTradingFeeCollected",
            "outputs": [
                {
                    "internalType": "uint256",
                    "name": "",
                    "type": "uint256"
                }
            ],
            "stateMutability": "nonpayable",
            "type": "function"
        }
    ]
}
