iniciar-programa
  define-nueva-instruccion gd como repetir 3 veces gira-izquierda;
  define-nueva-instruccion mv como repetir 2 veces gira-izquierda;
  define-nueva-instruccion pasa-arriba como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    pasa-arriba;
    deja-zumbador;
   fin
   sino
   inicio
    gd;
    avanza;
    mv;
   fin;
  fin;
  define-nueva-instruccion colador como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    colador;
    si frente-libre entonces
    avanza;
   fin;
  fin;
  define-nueva-instruccion colados como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    colados;
    pasa-arriba;
    avanza;
    gd;
    si frente-libre entonces
    avanza;
   fin
   sino
   inicio
    mv;
    avanza;
    mv;
    colador;
    mv;
    avanza;
    gira-izquierda;
    avanza;
    gd;
    si frente-libre entonces avanza;
   fin;
  fin;
  define-nueva-instruccion ordena como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    ordena;
    deja-zumbador;
   fin
   sino
   inicio
    mv;
    mientras no junto-a-zumbador y frente-libre hacer avanza;
    mv;
    si junto-a-zumbador entonces avanza;
   fin;
  fin;
  define-nueva-instruccion acomoda como
  inicio
   si junto-a-zumbador y frente-libre entonces
   inicio
    avanza;
    acomoda;
    ordena;
    si frente-libre entonces avanza;
    mientras no junto-a-zumbador y frente-libre hacer avanza;
   fin
   sino
   inicio
    mv;
    si no junto-a-zumbador entonces avanza;
    mientras junto-a-zumbador y frente-libre hacer avanza;
    mv;
    si no junto-a-zumbador entonces avanzA;
   fin;
  fin;
  define-nueva-instruccion acomoda2 como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    acomoda2;
    deja-zumbador;
   fin
   sino
   inicio
    mv;
    mientras no junto-a-zumbador y frente-libre hacer avanza;
    mv;
    si junto-a-zumbador entonces 
    avanza;
   fin;
  fin;
  define-nueva-instruccion pon-colados como
  inicio
   si junto-a-zumbador entonces
   inicio
    coge-zumbador;
    pon-colados;
    deja-zumbador;
   fin
   sino
   inicio
    mv;
    mientras frente-libre hacer avanza;
    gira-izquierda;
    avanza;
    gira-izquierda;
    mientras junto-a-zumbador hacer avanza;
   fin;
  fin;
    inicia-ejecucion
      mientras no orientado-al-norte hacer gira-izquierda;
      avanza;
      gd;
      avanza;
      si junto-a-zumbador entonces
      inicio
       colados;
       mv;
       si junto-a-zumbador entonces avanza;
       mientras no junto-a-zumbador y frente-libre hacer avanza;
       si junto-a-zumbador entonces
       acomoda;
       si junto-a-zumbador entonces
       acomoda2;
       mientras no orientado-al-este hacer gira-izquierda;
       mientras frente-libre hacer avanza;
       gira-izquierda;
       avanza;
       gira-izquierda;
       mientras frente-libre hacer avanza;
       mv;
       mientras no junto-a-zumbador y frente-libre hacer avanza;
       mientras junto-a-zumbador hacer
       inicio
         pon-colados;
         gira-izquierda;
         avanza;
         gira-izquierda;
         mientras frente-libre hacer avanza;
         mv;
         mientras no junto-a-zumbador y frente-libre hacer avanza;
       fin;
      fin;
        apagate;
    termina-ejecucion
finalizar-programa
