In this progress report, you will be focusing on allowing one of the four transactions listed below to be completed by the user on one of his accounts: checking or savings. You will include defensive programming and error checking to ensure your program functions like an ATM machine would. The account details for your customer are as follows:CustomerUsernamePasswordSavings AccountChecking AccountRobert Brownrbrownblue123$2500.00$35.00For this progress report, update the Progress Report 2 Raptor program that allows the account owner to complete one of the 5 functions of the ATM:1 – Deposit (adding money to the account)2 – Withdrawal (removing money from the account)3 – Balance Inquiry (check current balance)4 – Transfer Balance (transfer balance from one account to another)5 – Log Out (exits/ends the program)After a transaction is completed, the program will update the running balance and give the customer a detailed description of the transaction. A customer cannot overdraft on their account; if they try to withdraw more money than there is, a warning will be given to the customer. Also note that the ATM does not distribute or collect coins – all monetary values are in whole dollars (e.g. an integer is an acceptable variable type). Any incorrect transaction types will display an appropriate message and count as a transaction.