class program { define halfturn() { iterate (2) turnleft(); } define turnright() { iterate (3) turnleft(); } define llevaBeeper() { move(); putbeeper(); halfturn(); move(); halfturn(); } define pasoDiagonal() { move(); turnleft(); move(); turnleft(); } define llenaFila() { while( frontIsClear ) { move(); putbeeper(); } } define buscaFinalFila() { while( nextToABeeper ) move(); } define hazSiguienteCuadro() { turnright(); move(); halfturn(); putbeeper(); llenaFila(); halfturn(); buscaFinalFila(); halfturn(); move(); turnleft(); llenaFila(); halfturn(); buscaFinalFila(); } program() { if( anyBeepersInBeeperBag ) { putbeeper(); move(); while( anyBeepersInBeeperBag ) hazSiguienteCuadro(); } turnoff(); } }