race conditions are possible in many computer systems. consider a banking system that maintains an account balance with two functions: deposit(amount) and withdraw(amount). these two functions are passed the amount that is to be deposited or withdrawn from the bank account balance. assume that a husband and wife share a bank account. concurrently, the husband calls the withdraw() function and the wife calls deposit(). describe how a race condition is possible and what might be done to prevent the race condition from occurring. note: assume a "current balance" variable is shared to store the current account balance. you should write the source code of your solution