
function depositForMember(address asset, address member, uint LPS) external onlyDAO returns(bool){
    if(!mapBondAsset_memberDetails[asset].isMember[member]){
        mapBondAsset_memberDetails[asset].isMember[member] = true; // Register user as member (scope: user -> asset)
        arrayMembers.push(member); // Add user to member array (scope: vault)
        mapBondAsset_memberDetails[asset].members.push(member); // Add user to member array (scope: user -> asset)
    }
    ...

// Get the total count of all existing & past BondVault members
function memberCount() external view returns (uint256 count){
    return arrayMembers.length;
}
function allMembers() external view returns (address[] memory _allMembers){
    return arrayMembers;
}
mapping(address => bool) isMember;
if(!isMember[member]){
        isMember[member] = true;
        arrayMembers.push(member);
}
