iniciar-programa
    inicia-ejecucion
    mientras algun-zumbador-en-la-mochila hacer
        deja-zumbador;

    si junto-a-zumbador entonces
    inicio
        mientras frente-libre hacer
        inicio
            mientras no orientado-al-norte hacer
                gira-izquierda;
            si junto-a-zumbador entonces
                coge-zumbador
            sino
                apagate;
            repetir 3 veces
                gira-izquierda;
            avanza;
            mientras no junto-a-zumbador hacer
                avanza;
            gira-izquierda;
             mientras junto-a-zumbador y orientado-al-norte hacer
            inicio
            mientras junto-a-zumbador hacer
                avanza;
            repetir 2 veces
                gira-izquierda;
            avanza;
            gira-izquierda;
            avanza;
            repetir 3 veces
                gira-izquierda;
            repetir 2 veces
                inicio
                    si no junto-a-zumbador y frente-libre entonces

                        avanza
                        sino
                        inicio
                            si junto-a-zumbador y orientado-al-sur entonces
                            inicio
                                mientras frente-libre hacer
                                    avanza;
                                repetir 2 veces
                                    gira-izquierda;
                            fin;
                        fin;
                fin;

            si junto-a-zumbador y orientado-al-sur entonces
            inicio
            repetir 3 veces
                gira-izquierda;
            avanza;
            repetir 3 veces
                gira-izquierda;
            mientras junto-a-zumbador hacer
                avanza;
            repetir 2 veces
                gira-izquierda;
            avanza;
            coge-zumbador;
            gira-izquierda;
            avanza;
            repetir 3 veces
                gira-izquierda;
            mientras no junto-a-zumbador hacer
                avanza;
            repetir 2 veces
                gira-izquierda;
            avanza;
            avanza;
            deja-zumbador;
            repetir 2 veces
                gira-izquierda;
            mientras frente-libre hacer
                avanza;
            repetir 2 veces
                gira-izquierda;
            fin
            sino
            inicio
            si no junto-a-zumbador entonces
            inicio
                mientras no orientado-al-sur hacer
                    gira-izquierda;
                mientras no junto-a-zumbador y frente-libre hacer
                si frente-libre entonces
                    avanza;
                repetir 2 veces
                    gira-izquierda;
                si junto-a-zumbador entonces
                inicio
                    gira-izquierda;
                    avanza;
                    repetir 3 veces
                        gira-izquierda;
                    mientras junto-a-zumbador hacer
                        avanza;
                    repetir 2 veces
                        gira-izquierda;
                    avanza;
                    coge-zumbador;
                    gira-izquierda;
                    avanza;
                    repetir 3 veces
                        gira-izquierda;
                    mientras no junto-a-zumbador hacer
                        avanza;
                    repetir 2 veces
                        gira-izquierdA;
                    avanza;
                    avanza;
                    deja-zumbador;
                    repetir 2 veces
                        gira-izquierda;
                    mientras frente-libre hacer
                        avanza;
                    repetir 2 veces
                        gira-izquierda;
                fin
                sino
                inicio
                si no junto-a-zumbador entonces
                inicio
                    repetir 3 veces
                        gira-izquierda;
                    mientras no junto-a-zumbador hacer
                    inicio
                        si frente-libre y orientado-al-este entonces
                        inicio
                        avanza;
                        si junto-a-zumbador entonces
                            gira-izquierda
                        sino
                            inicio

                           repetir 10 veces
                            si no junto-a-zumbador entonces
                            si frente-libre entonces
                                avanza; 
                            si orientado-al-este entonces
                                  gira-izquierda
                             sino
                             inicio
                             si orientado-al-norte entonces
                             repetir 3 veces
                                 gira-izquierda;
                             si no junto-a-zumbador entonces
                                 apagate;
                             fin;
                             fin;
                         fin
                         sino
                         inicio
                             si orientado-al-norte entonces
                             repetir 3 veces
                                 gira-izquierda;
                             repetir 2 veces
                                 gira-izquierda;
                             mientras frente-libre hacer
                             inicio
                                 si junto-a-zumbador entonces
                                 inicio
                                     repetir 3 veces
                                         gira-izquierda;
                                     mientras junto-a-zumbador hacer
                                         avanza;
                                     repetir 3 veces
                                     si no junto-a-zumbador entonces
                                         avanza;
                                     si junto-a-zumbador entonces
                                     inicio
                                         coge-zumbador;
                                         repetir 2 veces
                                             gira-izquierda;
                                         mientras no junto-a-zumbador hacer
                                             avanza;
                                         repetir 2 veces
                                             gira-izquierda;
                                         avanza;
                                         repetir 2 veces
                                             gira-izquierda;
                                         deja-zumbador;
                                         mientras frente-libre hacer
                                             avanza;
                                         repetir 3 veces
                                             gira-izquierda;
                                     fin
                                     sino
                                     inicio
                                         repetir 2 veces
                                             gira-izquierda;
                                         mientras frente-libre hacer
                                             avanza;
                                         repetir 3 veces
                                             gira-izquierda;
                                     fin;
                                 fin;
                                 avanza;
                             fin;
                             repetir 2 veces
                                 gira-izquierda;
                             si no junto-a-zumbador entonces
                                 apagate;
                         fin;

                    fin;

                fin;
                fin;
            fin;
            fin;
            fin;
            fin;

    fin;
        apagate;
    termina-ejecucion
finalizar-programa
