iniciar-programa
define-nueva-instruccion fila-ninos(x) como
    inicio
        si frente-libre entonces
            inicio
                si junto-a-zumbador entonces
                    inicio
                    coge-zumbador;
                    fila-ninos ( sucede (x));
                    fin
                    sino
                        inicio
                    avanza;
                    fila-ninos (x);
                    fin;
            fin
        sino
            inicio
                si junto-a-zumbador entonces
                    inicio
                    coge-zumbador;
                    fila-ninos (sucede (x));
                    fin
                sino
                    inicio
                        repetir 2 veces gira-izquierda;
                        mientras frente-libre hacer avanza;
                        gira-izquierda;
                        si frente-libre entonces

                            inicio
                                avanza;
                                gira-izquierda;
                                fila-ninos(x);
                            fin
                        sino
                            inicio
                                repetir 2 veces gira-izquierda;
                                mientras frente-libre hacer  avanza;
                                repetir 3 veces gira-izquierda;
                                repetir x veces
                                    inicio
                                        deja-zumbador;
                                        si frente-libre entonces avanza;
                                    fin;



                            fin;
                    fin;
            fin;
    fin;
define-nueva-instruccion fila-ninas como
    inicio
        si frente-libre entonces
            inicio

      si junto-a-zumbador entonces
          inicio
              coge-zumbador;
                  si junto-a-zumbador entonces
                      inicio
                          coge-zumbador;
                          si frente-libre entonces avanza;
                      fin
                  sino
                      inicio
                          deja-zumbador;
                          si frente-libre entonces avanza;
                      fin;

          fin
      sino
          inicio
              si frente-libre entonces
                  inicio
                      avanza;
                  fin
              sino
                  inicio
                      repetir 2 veces gira-izquierda;
                      mientras frente-libre hacer avanza;
                      gira-izquierda;
                      si frente-libre entonces
                          inicio
                              avanza;
                              gira-izquierda;
                          fin
                      sino
                          inicio
                              repetir 2 veces gira-izquierda;
                              mientras frente-libre hacer avanza;
                              repetir 3 veces gira-izquierda;
                              fila-ninos(0);
                              repetir 2 veces gira-izquierda;
                              mientras frente-libre hacer avanza;
                              gira-izquierda;
                              avanza;
                              gira-izquierda;
                              mientras algun-zumbador-en-la-mochila hacer
                                  inicio
                                      repetir 2 veces deja-zumbador;
                                      si frente-libre entonces avanza;
                                  fin;
                               apagate;
                          fin;
                  fin;

          fin;
       fin
           sino
                  inicio
                      si junto-a-zumbador entonces
                                  inicio
                                      coge-zumbador;
                                      si junto-a-zumbador entonces
                                          inicio
                                              coge-zumbador;
                                          fin
                                      sino
                                      deja-zumbador;
                                  fin;
                      repetir 2 veces gira-izquierda;
                      mientras frente-libre hacer avanza;
                      gira-izquierda;
                      si frente-libre entonces
                          inicio
                              avanza;
                              gira-izquierda;
                          fin
                      sino
                          inicio

                              repetir 2 veces gira-izquierda;
                              mientras frente-libre hacer avanza;
                              repetir 3 veces gira-izquierda;
                              fila-ninos(0);
                              repetir 2 veces gira-izquierda;
                              mientras frente-libre hacer avanza;
                              gira-izquierda;
                              avanza;
                              gira-izquierda;
                              mientras algun-zumbador-en-la-mochila hacer
                                  inicio
                                      repetir 2 veces deja-zumbador;
                                      si frente-libre entonces  avanza;
                                  fin;
                               apagate;
          fin;                fin;
    fin;
    inicia-ejecucion
    mientras no-orientado-al-sur hacer gira-izquierda;
    mientras frente-libre hacer avanza;
    repetir 3 veces gira-izquierda;
    mientras frente-libre hacer avanza;
    repetir 3 veces gira-izquierda;
    mientras frente-libre o derecha-libre o izquierda-libre   hacer fila-ninas;
        apagate;
    termina-ejecucion
finalizar-programa
