After drawing each line, it randomly decides to turn left and draw one more line. Then, it returns and makes similar decision to turn right and draw one more line. A new block is used to implement recursion. So, it may output a different pattern every time! Interesting variation will be to ask the user for a number for max depth and limit the drawing to that depth.