95 txs
308 calls
constructor
constructor(address _controller)
functions
controller
viewfunction controller() view returns (address)
getRequiredComponentUnitsForIssue
viewfunction getRequiredComponentUnitsForIssue(address _portfolio, uint256 _quantity) view returns (address[], uint256[])
initialize
nonpayablefunction initialize(address _portfolio)
issue
nonpayablefunction issue(address _portfolio, uint256 _quantity, address _to)
redeem
nonpayablefunction redeem(address _portfolio, uint256 _quantity, address _to)
removeModule
nonpayablefunction removeModule()
events
PortfolioIssued
event PortfolioIssued(address indexed _portfolio, address indexed _issuer, address indexed _to, uint256 _quantity)
PortfolioRedeemed
event PortfolioRedeemed(address indexed _portfolio, address indexed _redeemer, address indexed _to, uint256 _quantity)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50604051611a89380380611a8983398101604081905261002f91610058565b600080546001600160a01b0319166001600160a01b039290921691909117905560018055610086565b600060208284031215610069578081fd5b81516001600160a01b038116811461007f578182fd5b9392505050565b6119f4806100956000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80635c833bfd146100675780636d78f47a1461007c5780637a4ffd031461008f578063847ef08d146100b9578063c4d66de8146100c1578063f77c4791146100d4575b600080fd5b61007a61007536600461132e565b6100e9565b005b61007a61008a36600461132e565b61039d565b6100a261009d366004611303565b610509565b6040516100b0929190611465565b60405180910390f35b61007a61052c565b61007a6100cf3660046112e7565b610544565b6100dc6105b3565b6040516100b091906113e4565b600260015414156101155760405162461bcd60e51b815260040161010c90611916565b60405180910390fd5b600260015582610124816105c2565b600083116101445760405162461bcd60e51b815260040161010c90611506565b604051632770a7eb60e21b81526001600160a01b03851690639dc29fac9061017290339087906004016113f8565b600060405180830381600087803b15801561018c57600080fd5b505af11580156101a0573d6000803e3d6000fd5b505050506060846001600160a01b03166399d50d5d6040518163ffffffff1660e01b815260040160006040518083038186803b1580156101df57600080fd5b505afa1580156101f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261021b9190810190611190565b905060005b815181101561033c57600082828151811061023757fe5b6020026020010151905061025d81886001600160a01b03166105ea90919063ffffffff16565b1561027a5760405162461bcd60e51b815260040161010c90611574565b6000610300886001600160a01b03166366cb8d2f846040518263ffffffff1660e01b81526004016102ab91906113e4565b60206040518083038186803b1580156102c357600080fd5b505afa1580156102d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102fb919061136f565b610678565b90506000610314888363ffffffff61069e16565b90506103316001600160a01b038a1684898463ffffffff6106cf16565b505050600101610220565b50826001600160a01b0316336001600160a01b0316866001600160a01b03167fef23601cc3d5088543000ad613dbaf20f8174fcc138163f6e4957f4183d578da8760405161038a919061194d565b60405180910390a4505060018055505050565b600260015414156103c05760405162461bcd60e51b815260040161010c90611916565b6002600155826103cf816105c2565b600083116103ef5760405162461bcd60e51b815260040161010c906115ef565b6060806103fc868661081a565b909250905060005b82518110156104475761043f83828151811061041c57fe5b6020026020010151338985858151811061043257fe5b60200260200101516109b2565b600101610404565b506040516340c10f1960e01b81526001600160a01b038716906340c10f199061047690879089906004016113f8565b600060405180830381600087803b15801561049057600080fd5b505af11580156104a4573d6000803e3d6000fd5b50505050836001600160a01b0316336001600160a01b0316876001600160a01b03167fb4a5d1efc2f77579ced45268f63608fdee7d88a2c78b370b23b5db17647b61f9886040516104f5919061194d565b60405180910390a450506001805550505050565b60608083610516816105c2565b610520858561081a565b92509250509250929050565b60405162461bcd60e51b815260040161010c906118ca565b803361055082826109be565b8261055a816109e8565b836001600160a01b0316630ffe0f1e6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561059557600080fd5b505af11580156105a9573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6105cb81610aa9565b6105e75760405162461bcd60e51b815260040161010c9061170f565b50565b600080836001600160a01b031663a7bdad03846040518263ffffffff1660e01b815260040161061991906113e4565b60006040518083038186803b15801561063157600080fd5b505afa158015610645573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261066d9190810190611190565b511190505b92915050565b60008082121561069a5760405162461bcd60e51b815260040161010c906116da565b5090565b60006106c8670de0b6b3a76400006106bc858563ffffffff610bad16565b9063ffffffff610be716565b9392505050565b8015610814576040516370a0823160e01b81526000906001600160a01b038516906370a08231906107049088906004016113e4565b60206040518083038186803b15801561071c57600080fd5b505afa158015610730573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610754919061136f565b905061076285858585610c19565b6040516370a0823160e01b81526000906001600160a01b038616906370a08231906107919089906004016113e4565b60206040518083038186803b1580156107a957600080fd5b505afa1580156107bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e1919061136f565b90506107f3828463ffffffff610ce616565b81146108115760405162461bcd60e51b815260040161010c906117cf565b50505b50505050565b6060806060846001600160a01b03166399d50d5d6040518163ffffffff1660e01b815260040160006040518083038186803b15801561085857600080fd5b505afa15801561086c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108949190810190611190565b90506060815167ffffffffffffffff811180156108b057600080fd5b506040519080825280602002602001820160405280156108da578160200160208202803683370190505b50905060005b82518110156109a6576109188382815181106108f857fe5b6020026020010151886001600160a01b03166105ea90919063ffffffff16565b156109355760405162461bcd60e51b815260040161010c90611574565b6109878661097b896001600160a01b03166366cb8d2f87868151811061095757fe5b60200260200101516040518263ffffffff1660e01b81526004016102ab91906113e4565b9063ffffffff610d0e16565b82828151811061099357fe5b60209081029190910101526001016108e0565b50909590945092505050565b61081484848484610d65565b6109c88282610e89565b6109e45760405162461bcd60e51b815260040161010c90611757565b5050565b60005460405163642ac90760e01b81526001600160a01b039091169063642ac90790610a189084906004016113e4565b60206040518083038186803b158015610a3057600080fd5b505afa158015610a44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a68919061123b565b610a845760405162461bcd60e51b815260040161010c90611806565b610a8d81610f17565b6105e75760405162461bcd60e51b815260040161010c906115b8565b6000805460405163642ac90760e01b81526001600160a01b039091169063642ac90790610ada9085906004016113e4565b60206040518083038186803b158015610af257600080fd5b505afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a919061123b565b801561067257506040516335fc6c9f60e21b81526001600160a01b0383169063d7f1b27c90610b5d9030906004016113e4565b60206040518083038186803b158015610b7557600080fd5b505afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610672919061123b565b600082610bbc57506000610672565b82820282848281610bc957fe5b04146106c85760405162461bcd60e51b815260040161010c9061178e565b6000808211610c085760405162461bcd60e51b815260040161010c906116a3565b818381610c1157fe5b049392505050565b80156108145760608282604051602401610c349291906113f8565b60408051601f198184030181529181526020820180516001600160e01b031663a9059cbb60e01b179052516347b7819960e11b81529091506001600160a01b03861690638f6f033290610c909087906000908690600401611435565b600060405180830381600087803b158015610caa57600080fd5b505af1158015610cbe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610811919081019061125b565b600082821115610d085760405162461bcd60e51b815260040161010c90611626565b50900390565b6000821580610d1b575081155b15610d2857506000610672565b6106c86001610d59670de0b6b3a76400006106bc83610d4d898963ffffffff610bad16565b9063ffffffff610ce616565b9063ffffffff610f4616565b8015610814576040516370a0823160e01b81526000906001600160a01b038616906370a0823190610d9a9086906004016113e4565b60206040518083038186803b158015610db257600080fd5b505afa158015610dc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dea919061136f565b9050610df885858585610f6b565b6040516370a0823160e01b81526000906001600160a01b038716906370a0823190610e279087906004016113e4565b60206040518083038186803b158015610e3f57600080fd5b505afa158015610e53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e77919061136f565b90506107f3828463ffffffff610f4616565b6000816001600160a01b0316836001600160a01b031663481c6a756040518163ffffffff1660e01b815260040160206040518083038186803b158015610ece57600080fd5b505afa158015610ee2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f069190611174565b6001600160a01b0316149392505050565b6040516353bae5f760e01b81526000906001600160a01b038316906353bae5f790610b5d9030906004016113e4565b6000828201838110156106c85760405162461bcd60e51b815260040161010c9061153d565b610814846323b872dd60e01b858585604051602401610f8c93929190611411565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526060611013826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166110529092919063ffffffff16565b80519091501561104d5780806020019051810190611031919061123b565b61104d5760405162461bcd60e51b815260040161010c90611880565b505050565b60606110618484600085611069565b949350505050565b60608247101561108b5760405162461bcd60e51b815260040161010c9061165d565b6110948561112a565b6110b05760405162461bcd60e51b815260040161010c90611849565b60006060866001600160a01b031685876040516110cd91906113c8565b60006040518083038185875af1925050503d806000811461110a576040519150601f19603f3d011682016040523d82523d6000602084013e61110f565b606091505b509150915061111f828286611130565b979650505050505050565b3b151590565b6060831561113f5750816106c8565b82511561114f5782518084602001fd5b8160405162461bcd60e51b815260040161010c91906114f3565b8051610672816119a9565b600060208284031215611185578081fd5b81516106c8816119a9565b600060208083850312156111a2578182fd5b825167ffffffffffffffff808211156111b9578384fd5b81850186601f8201126111ca578485fd5b80519250818311156111da578485fd5b83830291506111ea848301611956565b8381528481019082860184840187018a1015611204578788fd5b8794505b8585101561122e5761121a8a82611169565b835260019490940193918601918601611208565b5098975050505050505050565b60006020828403121561124c578081fd5b815180151581146106c8578182fd5b60006020828403121561126c578081fd5b815167ffffffffffffffff80821115611283578283fd5b81840185601f820112611294578384fd5b80519250818311156112a4578384fd5b6112b7601f8401601f1916602001611956565b91508282528560208483010111156112cd578384fd5b6112de83602084016020840161197d565b50949350505050565b6000602082840312156112f8578081fd5b81356106c8816119a9565b60008060408385031215611315578081fd5b8235611320816119a9565b946020939093013593505050565b600080600060608486031215611342578081fd5b833561134d816119a9565b9250602084013591506040840135611364816119a9565b809150509250925092565b600060208284031215611380578081fd5b5051919050565b815260200190565b6001600160a01b03169052565b600081518084526113b481602086016020860161197d565b601f01601f19169290920160200192915050565b600082516113da81846020870161197d565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b03851682528360208301526060604083015261145c606083018461139c565b95945050505050565b604080825283519082018190526000906020906060840190828701845b828110156114a55761149584835161138f565b9284019290840190600101611482565b505050838103828501528085516114bc818461194d565b91508387019250845b818110156114e6576114d8838551611387565b9385019392506001016114c5565b5090979650505050505050565b6000602082526106c8602083018461139c565b6020808252601b908201527f52656465656d207175616e74697479206d757374206265203e20300000000000604082015260600190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526024908201527f4f6e6c792064656661756c7420706f736974696f6e732061726520737570706f6040820152631c9d195960e21b606082015260800190565b6020808252601e908201527f4d7573742062652070656e64696e6720696e697469616c697a6174696f6e0000604082015260600190565b6020808252601a908201527f4973737565207175616e74697479206d757374206265203e2030000000000000604082015260600190565b6020808252601e908201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604082015260600190565b60208082526026908201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6040820152651c8818d85b1b60d21b606082015260800190565b6020808252601a908201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604082015260600190565b6020808252818101527f53616665436173743a2076616c7565206d75737420626520706f736974697665604082015260600190565b60208082526028908201527f4d75737420626520612076616c696420616e6420696e697469616c697a656420604082015267706f72666f6c696f60c01b606082015260800190565b6020808252601c908201527f4d7573742062652074686520706f72666f6c696f206d616e6167657200000000604082015260600190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252601d908201527f496e76616c696420706f7374207472616e736665722062616c616e6365000000604082015260600190565b60208082526023908201527f4d75737420626520636f6e74726f6c6c65722d656e61626c656420706f72666f6040820152626c696f60e81b606082015260800190565b6020808252601d908201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b6020808252602c908201527f54686520506f7274666f6c696f4d6f64756c65206d6f64756c652063616e6e6f60408201526b1d081899481c995b5bdd995960a21b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b90815260200190565b60405181810167ffffffffffffffff8111828210171561197557600080fd5b604052919050565b60005b83811015611998578181015183820152602001611980565b838111156108145750506000910152565b6001600160a01b03811681146105e757600080fdfea264697066735822122085e73e5c3368408de974e205a0d6dcc5ac06c0a7b6a1da9c43ae347e61aa158a64736f6c634300060a00330000000000000000000000003b309ac86d6b1d8e82aa2bdace455ed5c7138a8f