while > if iscompleteline(boardy) remove the line and pull boxes down by one line for pulldowny in range( - ) for in range(boardwidth) board[ ][pulldownyboard[ ][pulldowny- set very top line to blank for in range(boardwidth) board[ ][ blank numlinesremoved + note on the next iteration of the loopy is the same this is so that if the line that was pulled down is also completeit will be removed else - move on to check next row up return numlinesremoved def converttopixelcoords(boxxboxy) convert the given xy coordinates of the board to xy coordinates of the location on the screen return (xmargin (boxx boxsize))(topmargin (boxy boxsize) def drawbox(boxxboxycolorpixelx=nonepixely=none) draw single box (each tetromino piece has four boxes at xy coordinates on the board orif pixelx pixely are specifieddraw to the pixel coordinates stored in pixelx pixely (this is used for the "nextpiece if color =blank return if pixelx =none and pixely =none pixelxpixely converttopixelcoords(boxxboxy pygame draw rect(displaysurfcolors[color](pixelx pixely boxsize boxsize ) pygame draw rect(displaysurflightcolors[color](pixelx pixely boxsize boxsize ) def drawboard(board) draw the border around the board pygame draw rect(displaysurfbordercolor(xmargin topmargin (boardwidth boxsize (boardheight boxsize ) fill the background of the board email questions to the authoral@inventwithpython com