contract SpendableWalletFactory is Factory {
    // index of created contracts
    address[] public spendableWallets;

    constructor() public Factory("1.0.3") {}

    // deploy a new contract
    function newPaymentAddress(address _token, address _owner)
        public
        returns(address newContract)
    {
        SpendableWallet spendableWallet = new SpendableWallet(_token, _owner);
        spendableWallets.push(spendableWallet);
        addContract(spendableWallet);
        return spendableWallet;
    }
}
function newPaymentAddress(address _token, address _owner)
    public
    returns(address newContract)
{
    SpendableWallet spendableWallet = new SpendableWallet(_token, _owner);
    spendableWallets.push(spendableWallet);
    addContract(spendableWallet);
    return spendableWallet;
}

// deploy a new contract