Discussion:
[shell-script] Script pulando comandos
Bambam Souza bambamcbreal@gmail.com [shell-script]
2017-12-14 18:11:30 UTC
Permalink
Fala pessoal, boa tarde!!

Estou com um problema bem chatinho que não sei mais como tentar resolver
isso.

Primeiro eu vou deixar abaixo o script:

#!/bin/bash
#### Variáveis ######

START_DIVULGA=`/etc/init.d/divulga start`
STOP_DIVULGA=`/etc/init.d/divulga stop`
DIR_DIVULGA="/server/divulga/"
DIR_UNDEPLOY="/server/undeploy/"
DIR_DEPLOY="/home/mnt/deploy/"
SERVERLOG="less -n /var/log/divulga/divulga.log"


(...) *Pulando pra parte que interessa*:

read -p "Opção: " opcao

case "$opcao" in
1)
mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \
echo -e "\033[44;1mBackup realizado!\033[m" && \
cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \
echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2 ;
$SERVERLOG
;;

2)
echo "teste"
;;
esac

GNU bash, *version 4.3.48(1)-release* (x86_64-pc-linux-gnu)
Ubuntu *16.04*

Aqui embaixo eu deixo o dubug para vocês verem o que de fato está
acontecendo:

*case "$opcao" in*
*1)*
* mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \*
* echo -e "\033[44;1mBackup realizado!\033[m" && \*
* cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \*
* echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2 ;
$SERVERLOG*
*;;*

*2)*
* echo "teste"*
*;;*
*esac*
*+ case "$opcao" in*
*+ mkdir -p /server/undeploy/TESTE*
*+ divulga stop*
*+ mv --backup /server/divulga/divulga.jar /server/undeploy/TESTE*
*+ echo -e '\033[44;1mBackup realizado!\033[m'*
*Backup realizado!*
*+ cp /home/mnt/deploy/TESTE/divulga.jar /server/divulga/*
*Killed*

Ou seja, parece que logo depois de realizar a cópia, o script está
executando um kill que nem sei de onde surgiu e não passa para o próximo
passo, que seria iniciar a aplicação.

Tirei o comando/variavel que executa a inicialização da aplicação e deixei
só o "echo"... E imagina só o que aconteceu? O comando echo nem sequer foi
executado.

Alguém faz ideia do que pode ser essa bruxaria? TÎ deixando passar alguma
coisa?

Flws!!!
'Julio C. Neves' julio.neves@gmail.com [shell-script]
2017-12-14 18:29:25 UTC
Permalink
Tá parecendo bruxaria mesmo... Tenta fazer assim, sem as contra barras:

1)
mkdir -p $DIR_UNDEPLOY$1 &&
divulga stop &&
mv --backup $DIR_DIVULGA*.jar $DIR_UNDEPLOY$1 &&
echo -e "\033[44;1mBackup realizado!\033[m" &&
cp $DIR_DEPLOY$1/*.jar "$DIR_DIVULGA" &&
divulga start &&
echo -e "\033[42;1mAbrindo log da aplicação...\033[m"
sleep 2
eval $SERVERLOG
;;

Tirei as contra barras do final e as chaves das variáveis (todos
desnecessários) e incluí um eval para executar o cmd em SERVERLOG..

Se isso não resolver, creio que pelo menos ficará mais fácil de entender o
erro.

Abraços,
Julio

*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*» O treinamento está muito caro?*

*Ministramos um excelente treinamento de Shell,*
*no **formato EAD. **Veja os detalhes aqui.*
<http://www.dicas-l.com.br/programacao-shell-linux/>

*Damos treinamento em sua empresa **com certificado*
*e nota fiscal **por **um preço, **no mínimo, 50% **abaixo*
*de qualquer curso.*

​​
Nosso time de instrutores *in company* é formado somente por
​
​
autores
​ ​
​
de
*Best Sellers​ ​*​laureados ​sobre os temas.. P. exemplo:

Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico
Post by Bambam Souza ***@gmail.com [shell-script]
Fala pessoal, boa tarde!!
Estou com um problema bem chatinho que não sei mais como tentar resolver
isso.
#!/bin/bash
#### Variáveis ######
START_DIVULGA=`/etc/init.d/divulga start`
STOP_DIVULGA=`/etc/init.d/divulga stop`
DIR_DIVULGA="/server/divulga/"
DIR_UNDEPLOY="/server/undeploy/"
DIR_DEPLOY="/home/mnt/deploy/"
SERVERLOG="less -n /var/log/divulga/divulga.log"
read -p "Opção: " opcao
case "$opcao" in
1)
mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \
echo -e "\033[44;1mBackup realizado!\033[m" && \
cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \
echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2 ;
$SERVERLOG
;;
2)
echo "teste"
;;
esac
GNU bash, *version 4.3.48(1)-release* (x86_64-pc-linux-gnu)
Ubuntu *16.04*
Aqui embaixo eu deixo o dubug para vocês verem o que de fato está
*case "$opcao" in*
*1)*
* mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \*
* echo -e "\033[44;1mBackup realizado!\033[m" && \*
* cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \*
* echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2 ;
$SERVERLOG*
*;;*
*2)*
* echo "teste"*
*;;*
*esac*
*+ case "$opcao" in*
*+ mkdir -p /server/undeploy/TESTE*
*+ divulga stop*
*+ mv --backup /server/divulga/divulga.jar /server/undeploy/TESTE*
*+ echo -e '\033[44;1mBackup realizado!\033[m'*
*Backup realizado!*
*+ cp /home/mnt/deploy/TESTE/divulga.jar /server/divulga/*
*Killed*
Ou seja, parece que logo depois de realizar a cópia, o script está
executando um kill que nem sei de onde surgiu e não passa para o próximo
passo, que seria iniciar a aplicação.
Tirei o comando/variavel que executa a inicialização da aplicação e deixei
só o "echo"... E imagina só o que aconteceu? O comando echo nem sequer foi
executado.
Alguém faz ideia do que pode ser essa bruxaria? TÎ deixando passar alguma
coisa?
Flws!!!
Bambam Souza bambamcbreal@gmail.com [shell-script]
2017-12-14 18:42:10 UTC
Permalink
Fala mestre Julio...

Fiz o que você aconselhou , mas deu no mesmo. Debuguei também e caiu
exatamente na mesma linha.

Sabe o que é engraçado? Eu tirei o case e deixei apenas as linhas com os
comandos/variaveis. Executei o script e foi com sucesso!!!

Será que tem algum problema nesse case? hahahaha
Coisas estranhas acontecendo hahaha
Post by 'Julio C. Neves' ***@gmail.com [shell-script]
1)
mkdir -p $DIR_UNDEPLOY$1 &&
divulga stop &&
mv --backup $DIR_DIVULGA*.jar $DIR_UNDEPLOY$1 &&
echo -e "\033[44;1mBackup realizado!\033[m" &&
cp $DIR_DEPLOY$1/*.jar "$DIR_DIVULGA" &&
divulga start &&
echo -e "\033[42;1mAbrindo log da aplicação...\033[m"
sleep 2
eval $SERVERLOG
;;
Tirei as contra barras do final e as chaves das variáveis (todos
desnecessários) e incluí um eval para executar o cmd em SERVERLOG.
Se isso não resolver, creio que pelo menos ficará mais fácil de entender o
erro.
Abraços,
Julio
*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*» O treinamento está muito caro?*
*Ministramos um excelente treinamento de Shell,*
*no **formato EAD. **Veja os detalhes aqui.*
<http://www.dicas-l.com.br/programacao-shell-linux/>
*Damos treinamento em sua empresa **com certificado*
*e nota fiscal **por **um preço, **no mínimo, 50% **abaixo*
*de qualquer curso.*
​​
Nosso time de instrutores *in company* é formado somente por
​
​
autores
​ ​
​
de
Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico
Post by Bambam Souza ***@gmail.com [shell-script]
Fala pessoal, boa tarde!!
Estou com um problema bem chatinho que não sei mais como tentar resolver
isso.
#!/bin/bash
#### Variáveis ######
START_DIVULGA=`/etc/init.d/divulga start`
STOP_DIVULGA=`/etc/init.d/divulga stop`
DIR_DIVULGA="/server/divulga/"
DIR_UNDEPLOY="/server/undeploy/"
DIR_DEPLOY="/home/mnt/deploy/"
SERVERLOG="less -n /var/log/divulga/divulga.log"
read -p "Opção: " opcao
case "$opcao" in
1)
mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \
echo -e "\033[44;1mBackup realizado!\033[m" && \
cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \
echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2 ;
$SERVERLOG
;;
2)
echo "teste"
;;
esac
GNU bash, *version 4.3.48(1)-release* (x86_64-pc-linux-gnu)
Ubuntu *16.04*
Aqui embaixo eu deixo o dubug para vocês verem o que de fato está
*case "$opcao" in*
*1)*
* mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \*
* echo -e "\033[44;1mBackup realizado!\033[m" && \*
* cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \*
* echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2
; $SERVERLOG*
*;;*
*2)*
* echo "teste"*
*;;*
*esac*
*+ case "$opcao" in*
*+ mkdir -p /server/undeploy/TESTE*
*+ divulga stop*
*+ mv --backup /server/divulga/divulga.jar /server/undeploy/TESTE*
*+ echo -e '\033[44;1mBackup realizado!\033[m'*
*Backup realizado!*
*+ cp /home/mnt/deploy/TESTE/divulga.jar /server/divulga/*
*Killed*
Ou seja, parece que logo depois de realizar a cópia, o script está
executando um kill que nem sei de onde surgiu e não passa para o próximo
passo, que seria iniciar a aplicação.
Tirei o comando/variavel que executa a inicialização da aplicação e
deixei só o "echo"... E imagina só o que aconteceu? O comando echo nem
sequer foi executado.
Alguém faz ideia do que pode ser essa bruxaria? TÎ deixando passar alguma
coisa?
Flws!!!
Bambam Souza bambamcbreal@gmail.com [shell-script]
2017-12-14 19:21:33 UTC
Permalink
Acho que descobri o que é, pessoal.
O problema não está no case.

Eu tirei uma mensagem de ajuda que eu usava no script... exemplo:

MENSAGEM_USO="
Uso: ${0##*/} "$0") [-h | -V]

-h, --help Mostra esta tela de ajuda e sai
-V, --version Mostra a versão do programa e sai

Exemplos:
${0##*/} "$0") -h
${0##*/} "$0") MDIV-1xx

"


case "$1" in
-h | --help)
echo "$MENSAGEM_USO"
exit 0

;;

-V | --version)
Extrai a versão diretamente do cabeçalho do programa
grep '^#Versão' "$0" | tail -1 | tr -d "#"
exit 0

;;
esac


Depois que eu tirei isso, funcionou!!!
TÃŽ checando essa parte pra ver o que aconteceu
Post by Bambam Souza ***@gmail.com [shell-script]
Fala mestre Julio...
Fiz o que você aconselhou , mas deu no mesmo. Debuguei também e caiu
exatamente na mesma linha.
Sabe o que é engraçado? Eu tirei o case e deixei apenas as linhas com os
comandos/variaveis. Executei o script e foi com sucesso!!!
Será que tem algum problema nesse case? hahahaha
Coisas estranhas acontecendo hahaha
Post by 'Julio C. Neves' ***@gmail.com [shell-script]
1)
mkdir -p $DIR_UNDEPLOY$1 &&
divulga stop &&
mv --backup $DIR_DIVULGA*.jar $DIR_UNDEPLOY$1 &&
echo -e "\033[44;1mBackup realizado!\033[m" &&
cp $DIR_DEPLOY$1/*.jar "$DIR_DIVULGA" &&
divulga start &&
echo -e "\033[42;1mAbrindo log da aplicação...\033[m"
sleep 2
eval $SERVERLOG
;;
Tirei as contra barras do final e as chaves das variáveis (todos
desnecessários) e incluí um eval para executar o cmd em SERVERLOG.
Se isso não resolver, creio que pelo menos ficará mais fácil de entender
o erro.
Abraços,
Julio
*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*» O treinamento está muito caro?*
*Ministramos um excelente treinamento de Shell,*
*no **formato EAD. **Veja os detalhes aqui.*
<http://www.dicas-l.com.br/programacao-shell-linux/>
*Damos treinamento em sua empresa **com certificado*
*e nota fiscal **por **um preço, **no mínimo, 50% **abaixo*
*de qualquer curso.*
​​
Nosso time de instrutores *in company* é formado somente por
​
​
autores
​ ​
​
de
Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico
Post by Bambam Souza ***@gmail.com [shell-script]
Fala pessoal, boa tarde!!
Estou com um problema bem chatinho que não sei mais como tentar resolver
isso.
#!/bin/bash
#### Variáveis ######
START_DIVULGA=`/etc/init.d/divulga start`
STOP_DIVULGA=`/etc/init.d/divulga stop`
DIR_DIVULGA="/server/divulga/"
DIR_UNDEPLOY="/server/undeploy/"
DIR_DEPLOY="/home/mnt/deploy/"
SERVERLOG="less -n /var/log/divulga/divulga.log"
read -p "Opção: " opcao
case "$opcao" in
1)
mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \
echo -e "\033[44;1mBackup realizado!\033[m" && \
cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \
echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2
; $SERVERLOG
;;
2)
echo "teste"
;;
esac
GNU bash, *version 4.3.48(1)-release* (x86_64-pc-linux-gnu)
Ubuntu *16.04*
Aqui embaixo eu deixo o dubug para vocês verem o que de fato está
*case "$opcao" in*
*1)*
* mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \*
* echo -e "\033[44;1mBackup realizado!\033[m" && \*
* cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \*
* echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2
; $SERVERLOG*
*;;*
*2)*
* echo "teste"*
*;;*
*esac*
*+ case "$opcao" in*
*+ mkdir -p /server/undeploy/TESTE*
*+ divulga stop*
*+ mv --backup /server/divulga/divulga.jar /server/undeploy/TESTE*
*+ echo -e '\033[44;1mBackup realizado!\033[m'*
*Backup realizado!*
*+ cp /home/mnt/deploy/TESTE/divulga.jar /server/divulga/*
*Killed*
Ou seja, parece que logo depois de realizar a cópia, o script está
executando um kill que nem sei de onde surgiu e não passa para o próximo
passo, que seria iniciar a aplicação.
Tirei o comando/variavel que executa a inicialização da aplicação e
deixei só o "echo"... E imagina só o que aconteceu? O comando echo nem
sequer foi executado.
Alguém faz ideia do que pode ser essa bruxaria? TÎ deixando passar
alguma coisa?
Flws!!!
'Julio C. Neves' julio.neves@gmail.com [shell-script]
2017-12-14 19:34:01 UTC
Permalink
Acho que vc queria fazer:
MENSAGEM_USO="
Uso: ${0##*/} [-h | -V]

-h, --help Mostra esta tela de ajuda e sai
-V, --version Mostra a versão do programa e sai

Exemplos:
${0##*/} -h
${0##*/} MDIV-1xx

"
echo "$MENSAGEM_USO"

Fica até mais bonita e pode ser que os fecha parênteses que vc usa possam
estar estragando o case. Como vc mostrou pedaços soltos do código, não dá
para afirmar.

Abraços,
Julio

*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*» O treinamento está muito caro?*

*Ministramos um excelente treinamento de Shell,*
*no **formato EAD. **Veja os detalhes aqui.*
<http://www.dicas-l.com.br/programacao-shell-linux/>

*Damos treinamento em sua empresa **com certificado*
*e nota fiscal **por **um preço, **no mínimo, 50% **abaixo*
*de qualquer curso.*

​​
Nosso time de instrutores *in company* é formado somente por
​
​
autores
​ ​
​
de
*Best Sellers​ ​*​laureados ​sobre os temas. P. exemplo:

Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico
Post by Bambam Souza ***@gmail.com [shell-script]
Acho que descobri o que é, pessoal.
O problema não está no case.
MENSAGEM_USO="
Uso: ${0##*/} "$0") [-h | -V]
-h, --help Mostra esta tela de ajuda e sai
-V, --version Mostra a versão do programa e sai
${0##*/} "$0") -h
${0##*/} "$0") MDIV-1xx
"
case "$1" in
-h | --help)
echo "$MENSAGEM_USO"
exit 0
;;
-V | --version)
Extrai a versão diretamente do cabeçalho do programa
grep '^#Versão' "$0" | tail -1 | tr -d "#"
exit 0
;;
esac
Depois que eu tirei isso, funcionou!!!
TÃŽ checando essa parte pra ver o que aconteceu
Post by Bambam Souza ***@gmail.com [shell-script]
Fala mestre Julio...
Fiz o que você aconselhou , mas deu no mesmo. Debuguei também e caiu
exatamente na mesma linha.
Sabe o que é engraçado? Eu tirei o case e deixei apenas as linhas com os
comandos/variaveis. Executei o script e foi com sucesso!!!
Será que tem algum problema nesse case? hahahaha
Coisas estranhas acontecendo hahaha
Post by 'Julio C. Neves' ***@gmail.com [shell-script]
1)
mkdir -p $DIR_UNDEPLOY$1 &&
divulga stop &&
mv --backup $DIR_DIVULGA*.jar $DIR_UNDEPLOY$1 &&
echo -e "\033[44;1mBackup realizado!\033[m" &&
cp $DIR_DEPLOY$1/*.jar "$DIR_DIVULGA" &&
divulga start &&
echo -e "\033[42;1mAbrindo log da aplicação...\033[m"
sleep 2
eval $SERVERLOG
;;
Tirei as contra barras do final e as chaves das variáveis (todos
desnecessários) e incluí um eval para executar o cmd em SERVERLOG.
Se isso não resolver, creio que pelo menos ficará mais fácil de entender
o erro.
Abraços,
Julio
*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*» O treinamento está muito caro?*
*Ministramos um excelente treinamento de Shell,*
*no **formato EAD. **Veja os detalhes aqui.*
<http://www.dicas-l.com.br/programacao-shell-linux/>
*Damos treinamento em sua empresa **com certificado*
*e nota fiscal **por **um preço, **no mínimo, 50% **abaixo*
*de qualquer curso.*
​​
Nosso time de instrutores *in company* é formado somente por
​
​
autores
​ ​
​
de
Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico
Post by Bambam Souza ***@gmail.com [shell-script]
Fala pessoal, boa tarde!!
Estou com um problema bem chatinho que não sei mais como tentar
resolver isso.
#!/bin/bash
#### Variáveis ######
START_DIVULGA=`/etc/init.d/divulga start`
STOP_DIVULGA=`/etc/init.d/divulga stop`
DIR_DIVULGA="/server/divulga/"
DIR_UNDEPLOY="/server/undeploy/"
DIR_DEPLOY="/home/mnt/deploy/"
SERVERLOG="less -n /var/log/divulga/divulga.log"
read -p "Opção: " opcao
case "$opcao" in
1)
mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \
echo -e "\033[44;1mBackup realizado!\033[m" && \
cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \
echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep 2
; $SERVERLOG
;;
2)
echo "teste"
;;
esac
GNU bash, *version 4.3.48(1)-release* (x86_64-pc-linux-gnu)
Ubuntu *16.04*
Aqui embaixo eu deixo o dubug para vocês verem o que de fato está
*case "$opcao" in*
*1)*
* mkdir -p ${DIR_UNDEPLOY}$1 && divulga stop && mv --backup
${DIR_DIVULGA}*.jar ${DIR_UNDEPLOY}$1 && \*
* echo -e "\033[44;1mBackup realizado!\033[m" && \*
* cp ${DIR_DEPLOY}$1/*.jar "$DIR_DIVULGA" && divulga start && \*
* echo -e "\033[42;1mAbrindo log da aplicação...\033[m" ; sleep
2 ; $SERVERLOG*
*;;*
*2)*
* echo "teste"*
*;;*
*esac*
*+ case "$opcao" in*
*+ mkdir -p /server/undeploy/TESTE*
*+ divulga stop*
*+ mv --backup /server/divulga/divulga.jar /server/undeploy/TESTE*
*+ echo -e '\033[44;1mBackup realizado!\033[m'*
*Backup realizado!*
*+ cp /home/mnt/deploy/TESTE/divulga.jar /server/divulga/*
*Killed*
Ou seja, parece que logo depois de realizar a cópia, o script está
executando um kill que nem sei de onde surgiu e não passa para o próximo
passo, que seria iniciar a aplicação.
Tirei o comando/variavel que executa a inicialização da aplicação e
deixei só o "echo"... E imagina só o que aconteceu? O comando echo nem
sequer foi executado.
Alguém faz ideia do que pode ser essa bruxaria? TÎ deixando passar
alguma coisa?
Flws!!!
Loading...