The user's current inputs.
newUserInputs The new user inputs
Returns a balanced deposit array constrainted by the user's balances and inputs.
Implemented by finding the ratios between all assets to be deposited. Then it divides userInputs and userBalances by the ratios to get values which can be compared with each other. Then the largest of userInputs is selected. Then it is compared against the user balances. If a conflict is found, the smallest is used. If a user balance is 0, it is ignored.
The vaults which are in the pool