rows[ +'|{format(rank ljust( ) rows[ +'{format(suit rows[ +'| {}format(rank rjust( ' ') print each row on the screen for row in rows print(row def getmove(playerhandmoney) """asks the player for their moveand returns 'hfor hit'sfor standand 'dfor double down "" while truekeep looping until the player enters correct move determine what moves the player can make moves ['( )it''( )tand' the player can double down on their first movewhich we can tell because they'll have exactly two cards if len(playerhand= and money moves append('( )ouble down' get the player' move moveprompt 'join(moves' move input(movepromptupper( if move in (' '' ') return move player has entered valid move if move ='dand '( )ouble downin moves return move player has entered valid move if the program is run (instead of imported)run the game if __name__ ='__main__' main(after entering the source code and running it few timestry making experimental changes to it blackjack has several custom rules that you could implement for exampleif the first two cards have the same valuea player can split them into two hands and wager on them separately alsoif the player receives "blackjack(the ace of spades and black jackfor their first two cardsthe player wins ten-to-one payout you can find out more about the game from exploring the program try to find the answers to the following questions experiment with some modifications to the code and rerun the program to see what effect the changes have how can you make the player start with different amount of money how does the program prevent the player from betting more money than they haveblackjack