iniciar-programa
    define-nueva-instruccion checa como inicio
 mientras no-junto-a-zumbador hacer inicio
      mientras frente-libre y no-junto-a-zumbador y algun-zumbador-en-la-mochila hacer inicio
      deja-zumbador;
      avanza;
      fin;
      si orientado-al-sur y frente-bloqueado entonces inicio
          si no junto-a-zumbador entonces deja-zumbador;
          gira-izquierda;
          gira-izquierda;
          gira-izquierda;
           mientras frente-libre y derecha-bloqueada y izquierda-bloqueada hacer inicio
             avanza;
             deja-zumbador;
             fin;
      si frente-libre entonces avanza;
          si no junto-a-zumbador entonces deja-zumbador;
          gira-izquierda;
          gira-izquierda;
          gira-izquierda;
          si frente-libre entonces avanza;
                  fin;
      si orientado-al-norte y frente-bloqueado entonces inicio
      si no junto-a-zumbador entonces deja-zumbador;
          gira-izquierda;
      si frente-libre entonces avanza;
      si no junto-a-zumbador entonces deja-zumbador;
      gira-izquierda;
          si frente-libre entonces avanza;
          fin;
      mientras frente-libre y no junto-a-zumbador y algun-zumbador-en-la-mochila hacer inicio
      deja-zumbador;
      avanza;
      fin;
      si no-junto-a-zumbador y orientado-al-norte y frente-libre entonces apagate;
      si junto-a-zumbador y orientado-al-norte entonces inicio
          gira-izquierda;
          gira-izquierda;
          fin;
       si junto-a-zumbador entonces apagate;

      fin;
      fin;

    inicia-ejecucion

    si orientado-al-norte entonces inicio
        gira-izquierda;
        gira-izquierda;
        gira-izquierda;
        fin;
    si orientado-al-oeste entonces inicio
        gira-izquierda;
        gira-izquierda;
        fin;
    si orientado-al-sur entonces inicio
        gira-izquierda;
        fin;
       avanza;

      mientras junto-a-zumbador hacer coge-zumbador;
      mientras izquierda-bloqueada hacer avanza;
      gira-izquierda;
      si frente-libre entonces avanza;
      mientras izquierda-bloqueada hacer avanza;
      gira-izquierda;

      si frente-libre entonces avanza;
        gira-izquierda;
        gira-izquierda;
        gira-izquierda;
      mientras frente-libre hacer avanza;
        gira-izquierda;
        gira-izquierda;

      mientras algun-zumbador-en-la-mochila hacer checa;


           apagate;
    termina-ejecucion
finalizar-programa
