numneighbors + bottom-left neighbor is alive if cells[(xbelow)=alivenumneighbors + bottom neighbor is alive if cells[(rightbelow)=alivenumneighbors + bottom-right neighbor is alive set cell based on conway' game of life rulesif cells[(xy)=alive and (numneighbors = or numneighbors = )living cells with or neighbors stay alivenextcells[(xy)alive elif cells[(xy)=dead and numneighbors = dead cells with neighbors become alivenextcells[(xy)alive elseeverything else dies or stays deadnextcells[(xy)dead trytime sleep( add second pause to reduce flickering except keyboardinterruptprint("conway' game of life"print('by al sweigart al@inventwithpython com'sys exit(when ctrl- is pressedend the program after entering the source code and running it few timestry making experimental changes to it the comments marked with (!have suggestions for small changes you can make on your ownyou can also try to figure out how to do the followingadjust the percentage of cells that start as livinginstead of always using percent add the ability to read in the initial state from text fileso the user can edit the starting cell states manually 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 what happens when you change width on line to width what happens if you delete or comment out print('\ on line what happens if you change random randint( on line to random randint( ) what happens if you change nextcells[(xy)dead on line to nextcells[(xy)alive project #