#!/bin/bash
# curl cookies + user-agent
ucurl () {
local url="$1"
curl -L -s -A "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0" \
-b cookies.txt "$url"
}
buscar_anime() {
query="$1"
# Reemplaza espacios con "+"
query=$(echo "$query" | tr ' ' '+')
search_url="https://monoschinos2.com/buscar?q=$query"
#ucurl "$search_url" > text.html
sleep 2
# Realiza la búsqueda y filtra los resultados la clase "seristitles"
anime_titles=$(ucurl "$search_url" | grep -o '<h3 class="fs-6 text-light mt-2 title_cap">[^<]*' | sed 's/<h3 class="fs-6 text-light mt-2 title_cap">//')
echo "$anime_titles"
}
while true; do
linux_user=$(whoami)
historial_file="/home/$linux_user/historial.txt"
clear
if [ ! -e "$historial_file" ]; then
touch "$historial_file"
fi
echo '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⡀⡀⣀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀'
echo '⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣾⣾⣿⣿⣿⣿⣿⣿⣿⣿⣆⣄⠀⠀⠀⠀⠀⠀⠀'
echo '⠀⠀⠀⠀⠀⠀⠀⢰⣿⢻⡿⡏⡟⣿⣱⣿⣧⣿⣯⣽⠻⣿⣿⣷⣦⠄⠀⠀⠀⠀'
echo '⠀⠀⠀⠀⠀⠀⠀⣸⣿⣷⣷⣿⢿⠿⡏⠻⡀⢻⠙⣿⣿⣧⣽⣿⣿⣿⣄⠀⠀⠀'
echo '⢽⡽⠒⠄⠀⠀⠘⡼⡟⠇⡇⢋⠈⢆⡽⠶⠾⢾⠆⠘⢿⣿⡻⣿⣿⣿⣿⣂⠀⠀ _ _ ____ _ ___ '
echo '⡙⢷⣦⣰⠀⠀⠀⢱⡥⠵⠈⠲⢯⣵⣶⣶⡒⠎⠀⠀⢸⣿⣿⣿⣿⣿⣿⡇⠀⠀ / \ _ __ (_)_ __ ___ _ _ / ___| | |_ _|'
echo '⢶⣱⠛⢛⡄⠀⠀⠀⢟⡟⠁⠀⠀⠀⠀⣰⣶⣖⡆⠀⠸⡟⣵⡿⣿⣿⣿⠁⠀⠀ / _ \ | _ \| | _ ` _ \| | | | | | | | | | '
echo '⢀⢳⢈⠠⣴⡀⠀⠀⠈⢿⠷⠂⠀⠀⠀⠹⣿⡟⠒⠀⠀⢐⡗⠚⣹⣿⠏⠀⠀⠀ / ___ \| | | | | | | | | | |_| | | |___| |___ | | '
echo '⢸⠜⣷⠁⠄⠳⡀⠀⡇⣯⠭⣐⠠⠀⠀⠀⠹⡧⠀⠀⠀⡴⡤⢺⣿⠏⠀⠀⠀⠀/_/ \_\_| |_|_|_| |_| |_|\__,_| \____|_____|___|'
echo '⡎⢰⠀⢗⡝⠁⠱⡀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⡜⠀⡇⠈⡏⠀⠀⠀⠀⠀'
echo '⢁⢸⠀⠀⢿⡍⠀⠑⣡⣤⣴⣤⣤⣤⣤⣴⣶⡾⠛⢡⠃⠠⡇⠀⡇⠀⠀⠀⠀⠀ Visualizador de Anime.'
echo '⠘⣌⠀⠀⠈⢿⣏⠠⠵⡄⠉⢻⡿⢿⣿⠟⠉⠀⢀⡟⠀⠀⠇⠀⢡⠀⠀⠀⠀⠀ https://github.com/Pirrandi/animu-cli'
echo '⠀⠘⠀⠀⠀⠘⡵⡆⠄⠚⢄⠈⡟⠉⠀⠀⠀⠀⣨⠇⠀⠀⢸⣀⡨⠔⠂⠈⠁⠒'
echo '⠀⠀⠀⠀⠀⠀⠸⣳⡄⣂⠭⢦⣽⡄⠀⠀⠀⠀⡟⢀⠤⢒⣉⣠⣴⣶⣿⣷⣴⡿'
echo '⠀⠀⠀⠀⡠⣴⣶⣟⣥⣀⣉⣛⣿⣔⣀⣀⡠⠔⣩⣴⣾⣷⣿⣿⣿⡿⠟⢋⣁⣤'
# Función para agregar un registro al historial
agregar_al_historial() {
anime="$1"
episodio="$2"
echo "$anime - Episodio $episodio" >>"$historial_file"
}
mostrar_historial() {
echo -e "\e[35m [!] Últimos capitulos vistos [!]\e[0m"
echo -e "\e[35m───────────────────────────────────────\e[0m"
echo -e "\e[35m\n\e[0m"
if [ "$(cat $historial_file)" != "" ]; then
echo "$(tail -n 5 $historial_file)"
else
echo "Aun no hay ningun capitulo registrado."
fi
echo -e "\e[35m\n\e[0m"
echo -e "\e[35m───────────────────────────────────────\e[0m"
}
if [ $historial_file != "" ]; then
echo -e "\n"
mostrar_historial
echo -e "\n"
fi
# Buscar un anime en MonosChinos
echo -e "[!] ¿Qué deseas hacer?"
echo ""
echo -e "\e[33m 1) Buscar un anime\e[0m"
echo -e "\e[33m 2) Mostrar historial\e[0m"
echo -e "\e[33m 3) Salir\e[0m"
echo ""
read -p "[?] Selecciona una opción: " opcion
case $opcion in
1)
clear
if [ $# -eq 0 ]; then
echo -e "\e[33m[!] Por favor, introduce el nombre del anime o parte de él.\e[0m"
echo ""
echo -e "\e[31m q) Volver al menu.\e[0m"
echo ""
read -p "[?] Nombre del anime: " anime_query
else
anime_query="$1"
fi
if [ "$anime_query" == "q" ]; then
continue
fi
# Busca el anime y muestra los resultados
anime_titles=$(buscar_anime "$anime_query")
# Si no se encontraron resultados, muestra un mensaje y sale
if [ -z "$anime_titles" ]; then
for ((i = 3; i >= 1; i--)); do
clear
echo -e "\e[31m[!] No se encontraron resultados para $anime_query.\e[0m"
echo "Volviendo al menu en..." $i
sleep 1
done
continue
fi
# Muestra los títulos numerados
clear
while true; do
echo "Se encontraron los siguientes animes para $anime_query:"
echo -e "\n"
IFS=$'\n' # Configura el separador para nuevas líneas
anime_titles_array=($anime_titles)
for i in "${!anime_titles_array[@]}"; do
echo -e "\e[33m $((i + 1)). ${anime_titles_array[$i]}\e[0m"
done
echo ""
echo -e "\e[31m q) Volver al menu.\e[0m"
# Pide al usuario que seleccione un título
echo -e "\n"
echo -e "\e[33m[!] Selecciona un anime por su número (1-${#anime_titles_array[@]})\e[0m"
echo ""
read -p "[?] Opcion: " anime_choice
echo -e "\n"
if [ "$anime_choice" == "q" ]; then
break
fi
# Verifica que la selección sea válida (dentro del rango de opciones)
if [[ "$anime_choice" =~ ^[0-9]+$ ]] && ((anime_choice >= 1 && anime_choice <= ${#anime_titles_array[@]})); then
# Obtén el título seleccionado
selected_title="${anime_titles_array[$((anime_choice - 1))]}"
# Elimina los dos puntos del título
selected_title=$(echo "$selected_title" | sed 's/[:,.()!]//g; s/[ -]\+/ /g')
clear
echo -e "\e[33m[!] Seleccionaste: $selected_title\e[0m"
echo -e "\n"
break
else
clear
echo -e "\e[31m[!] Selección inválida. Por favor, elige un número válido.[!]\e[0m"
echo -e "\n"
fi
done
if [ "$anime_choice" == "q" ]; then
continue
fi
# Obtiene el título seleccionado
selected_title="${anime_titles_array[$((anime_choice - 1))]}"
# Elimina los dos puntos del título
selected_title=$(echo "$selected_title" | sed 's/[:,.()!]//g; s/[ -]\+/ /g')
clear
# Formatea el nombre del anime reemplazando espacios con guiones
anime_name_formatted=$(echo "$selected_title" | tr ' ' '-')
# Obtener episodios del Anime
API_URL="https://api.jikan.moe/v4/anime?q=$anime_name_formatted"
# Realiza la solicitud GET a la API y almacena la respuesta en una variable
response=$(ucurl "$API_URL")
# Utiliza jq para extraer el valor de "episodes" del JSON de respuesta
episodes=$(echo "$response" | jq -r '.data[0].episodes')
# Utiliza jq para extraer el valor de "airing" del JSON de respuesta
airing=$(echo "$response" | jq -r '.data[0].airing')
score=$(echo "$response" | jq -r '.data[0].score')
clasificacion=$(echo "$response" | jq -r '.data[0].rating')
duration=$(echo "$response" | jq -r '.data[0].duration')
while true; do
# Verifica si se obtuvo el número de episodios correctamente
clear
while true; do
echo -e "\e[33m[!] Seleccionaste: $selected_title\e[0m"
echo -e "\n"
respuesta=1
if [ "$episodes" != "null" ]; then
echo " - Episodios: $episodes (El numero de episodios en algunas ocasiones puede estar incorrecto.)"
else
echo " No se pudo obtener la cantidad de episodios."
fi
if [ "$score" != "null" ]; then
echo " - Puntuacion: $score"
else
echo " No se pudo obtener la puntuacion."
fi
if [ "$clasificacion" != "null" ]; then
echo " - Clasificacion: $clasificacion"
else
echo " No se pudo obtener la clasificacion."
fi
if [ "$duration" != "null" ]; then
echo " - Duracion: $duration"
else
echo " No se pudo obtener la duracion."
fi
# Verifica el valor de "airing" y muestra el estado adecuado
if [ "$airing" == "true" ]; then
echo -e "\e[32m - Estado: En emisión\e[0m"
echo -e "\n"
else
echo -e "\e[31m - Estado: Finalizada\e[0m"
echo -e "\n"
fi
# Pregunta al usuario el número del episodio que desea ver
read -p "[?] Ver episodio: " episode_number
if [ "$episode_number" == "q" ]; then
break
fi
# Verificar si la respuesta es un número válido y no excede el número de episodios
if [[ "$episode_number" =~ ^[0-9]+$ ]]; then
if ((episode_number >= 1 && episode_number <= episodes)); then
break # Salir del bucle si la respuesta es válida
else
clear
echo -e "\e[31m[!] Número de episodio fuera de rango. Debe estar entre 1 y $episodes. [!]\e[0m"
echo ""
fi
else
clear
echo -e "\e[31m[!] Respuesta inválida. Introduce un número válido. [!]\e[0m"
echo ""
fi
done
if [ "$episode_number" == "q" ]; then
break
fi
# En este punto, episode_number contiene el número de episodio válido que el usuario desea ver
# Crea la URL del episodio seleccionado del anime
while [ "$respuesta" != 2 ]; do
clear
echo "Has seleccionado el episodio $episode_number."
url="https://monoschinos2.com/ver/$anime_name_formatted-episodio-$episode_number"
echo ""
agregar_al_historial "$selected_title" "$episode_number"
# Intenta reproducir el episodio desde mp4upload
echo "Conectando al servidor..."
data_player=$(ucurl "$url" | sed -nE "s@.*data-player=\"([^\"]*)\">mp4upload.*@\1@p" | head -1)
embed_link=$(printf "%s" "$data_player" | base64 -d)
video_link=$(ucurl "$embed_link" | sed -nE "s@.*src: \"([^\"]*)\".*@\1@p")
# Upload Extractor
if [ "$video_link" = "" ]; then
echo -e "\e[31mEl servidor mp4upload fallo.\e[0m"
echo "Probando con el servidor upload.."
data_player=$(ucurl "$url" | sed -nE "s@.*data-player=\"([^\"]*)\">uqload*@\1@p" | head -1 2>/dev/null)
embed_link=$(printf "%s" "$data_player" | base64 -d 2>/dev/null)
embed_link=$(echo "$embed_link" | sed 's/\(.com\|.co\)/.io/' 2>/dev/null)
video_link=$(ucurl "$embed_link" | sed -n 's/.*sources: \["\([^"]*\.mp4\)".*/\1/p')
if [ -n "$video_link" ]; then
mpv "$video_link" --referrer="https://www.uqload.com/" 2>/dev/null
fi
fi
# Ok.ru extractor
if [ "$video_link" = "" ]; then
echo -e "\e[31mEl servidor upload fallo.\e[0m"
echo "Probando con el servidor Ok.RU ..."
data_player=$(ucurl "$url" | sed -nE "s@.*data-player=\"([^\"]*)\">ok*@\1@p" | head -1 | awk -F '</button>' '{print $1}' 2>/dev/null)
embed_link=$(printf "%s" "$data_player" | base64 --decode 2>/dev/null)
if [ -n "$embed_link" ]; then
mpv "$embed_link" --http-header-fields="Range: bytes=0-" 2>/dev/null
fi
# Voe extractor
if [ "$embed_link" = "" ]; then
echo -e "\e[31mEl servidor Ok.ru fallo.\e[0m"
echo "Probando con el servidor Voe ..."
data_player=$(ucurl "$url" | sed -nE "s@.*data-player=\"([^\"]*)\">voe*@\1@p" | head -1 | awk -F '</button>' '{print $1}' 2>/dev/null)
embed_link=$(printf "%s" "$data_player" | base64 --decode 2>/dev/null)
id=$(echo "$embed_link" | sed -e 's|.*/e/||')
video_link=$(ucurl "https://robertplacespace.com/$id" | grep -oP '(?<=prompt\("Node", ")[^"]*\.m3u8[^"]*')
if [ -n "$embed_link" ]; then
mpv "$video_link" --referrer="https://robertplacespace.com" "$video_link" 2>/dev/null
fi
fi
fi
echo "Reproduciendo $anime_name_formatted - Episodio $episode_number"
mpv "$video_link" --referrer="https://www.mp4upload.com/"
if [ "$data_player" = "" ]; then
clear
echo -e "\e[31mEpisodio no encontrado\e[0m"
echo -e "\e[33mLa lista de episodio que se proporciona es para las versiones en Japones (Subtitulada).\n Las versiones dobladas suelen estar limitadas en cuanto a episodios, revisa la disponibilidad.\e[0m"
echo "URL erroneo: $url"
fi
clear
while true; do
clear
echo "[!] ¿Quieres continuar con el siguiente episodio?"
echo ""
echo " 1) Si"
echo " 2) No"
echo ""
echo -e "\e[31mq) Volver al menu. \e[0m"
echo -e "\e[31ms) Probar servidor de Tio Anime. \e[0m"
echo ""
read -p "[?] Opcion: " respuesta
if [ "$respuesta" == "q" ] || [ "$respuesta" = "s" ]; then
break
fi
if [ "$respuesta" == 1 ]; then
((episode_number++))
break
elif [ "$respuesta" == 2 ]; then
echo "Saliendo..."
break
else
echo "Respuesta no válida. Por favor, responde 'Sí' o 'No'."
fi
done
if [ "$respuesta" == "q" ] || [ "$respuesta" = "s" ]; then
break
fi
done
if [ "$respuesta" == "q" ] || [ "$respuesta" = "s" ]; then
break
fi
done
if [ "$episode_number" = "" ] || [ "$respuesta" = "q" ]; then
continue
fi
if [ "$video_link" = "" ] || [ "$respuesta" = "s" ]; then
clear
while true; do
echo "[!] ¿Quieres probar en el servidor de TioAnime?: "
echo ""
echo " 1) Sí "
echo " 2) No"
echo ""
read -p "[?] Opcion: " choice
case "$choice" in
1)
clear
echo "Iniciando TioAnime..."
echo ' '
echo '$$$$$$$$\ $$\ $$$$$$\ $$\ '
echo '\__$$ __|\__| $$ __$$\ \__| '
echo ' $$ | $$\ $$$$$$\ $$ / $$ |$$$$$$$\ $$\ $$$$$$\$$$$\ $$$$$$\ '
echo ' $$ | $$ |$$ __$$\ $$$$$$$$ |$$ __$$\ $$ |$$ _$$ _$$\ $$ __$$\ '
echo ' $$ | $$ |$$ / $$ | $$ __$$ |$$ | $$ |$$ |$$ / $$ / $$ |$$$$$$$$ |'
echo ' $$ | $$ |$$ | $$ | $$ | $$ |$$ | $$ |$$ |$$ | $$ | $$ |$$ ____|'
echo ' $$ | $$ |\$$$$$$ | $$ | $$ |$$ | $$ |$$ |$$ | $$ | $$ |\$$$$$$$\ '
echo ' \__| \__| \______/ \__| \__|\__| \__|\__|\__| \__| \__| \_______|'
echo ' '
echo ' Distribucion no Oficial '
echo ' '
buscar() {
query="$1"
query=$(echo "$query" | tr ' ' '+')
search_url="https://tioanime.com/directorio?q=$query"
anime_titles=$(ucurl "$search_url" | grep -o '<h3 class="title">[^<]*' | sed 's/<h3 class="title">//')
echo "$anime_titles"
}
if [ $# -eq 0 ]; then
echo -e "\e[33m[!] Por favor, introduce el nombre del anime o parte de él:\e[0m"
echo ""
read -p "[?] Opcion: " anime_choice
echo -e "\n"
else
anime_query="$1"
fi
anime_titles=$(buscar "$anime_query")
if [ -z "$anime_titles" ]; then
echo "[!] No se encontraron resultados para '$anime_query'."
exit 1
fi
clear
echo "Se encontraron los siguientes animes:"
echo -e "\n"
IFS=$'\n'
anime_titles_array=($anime_titles)
for i in "${!anime_titles_array[@]}"; do
echo -e "\e[33m $((i + 1)). ${anime_titles_array[$i]}\e[0m"
done
echo -e "\n"
read -p "[?] Selecciona un anime por su número (1-${#anime_titles_array[@]}): " anime_choice
echo -e "\n"
# Verifica que la selección sea válida
if ! [[ "$anime_choice" =~ ^[0-9]+$ ]]; then
echo "[!] Selección inválida."
echo -e "\n"
exit 1
fi
# Obtiene el título seleccionado
selected_title="${anime_titles_array[$((anime_choice - 1))]}"
# Limpia el titulo para la URL
selected_title=$(echo "$selected_title" | sed 's/[:,.()!]//g; s/[ -]\+/ /g')
clear
echo -e "\e[33mSeleccionaste: $selected_title\e[0m"
echo -e "\n"
# Formatea el nombre del anime reemplazando espacios con guiones
anime_name_formatted=$(echo "$selected_title" | tr ' ' '-')
# Busca el titulo en la API de Jikan
API_URL="https://api.jikan.moe/v4/anime?q=$anime_name_formatted"
response=$(ucurl "$API_URL")
episodes=$(echo "$response" | jq -r '.data[0].episodes')
airing=$(echo "$response" | jq -r '.data[0].airing')
score=$(echo "$response" | jq -r '.data[0].score')
clasificacion=$(echo "$response" | jq -r '.data[0].rating')
duration=$(echo "$response" | jq -r '.data[0].duration')
# Verifica si se obtuvo el número de episodios correctamente
if [ "$episodes" != "null" ]; then
echo " - Episodios: $episodes"
else
echo " No se pudo obtener la información de episodios."
fi
if [ "$score" != "null" ]; then
echo " - Puntuacion: $score"
else
echo " No se pudo obtener la información de episodios."
fi
if [ "$clasificacion" != "null" ]; then
echo " - Clasificacion: $clasificacion"
else
echo " No se pudo obtener la información de episodios."
fi
if [ "$duration" != "null" ]; then
echo " - Duracion: $duration"
else
echo " No se pudo obtener la información de episodios."
fi
# Verifica el valor de "airing" y muestra el estado adecuado
if [ "$airing" == "true" ]; then
echo -e "\e[32m - Estado: En emisión\e[0m"
echo -e "\n"
else
echo -e "\e[31m - Estado: Finalizada\e[0m"
echo -e "\n"
fi
read -p "[?] Ver episodio: " episode_number
if [ "$episode_number" == "q" ]; then
break
fi
respuesta=1
while [ "$respuesta" != 2 ]; do
url="https://tioanime.com/ver/$anime_name_formatted-$episode_number"
page_content=$(ucurl "$url")
# Buscar el enlace de YourUpload en la variable "videos"
yourupload_link=$(echo "$page_content" | grep -o 'YourUpload","[^"]*' | sed 's/.*"//' | sed 's/\\//g')
if [ -z "$yourupload_link" ]; then
echo "No se encontró el enlace de YourUpload."
exit 1
fi
# Imprimir el enlace de YourUpload
#echo "Enlace de YourUpload: $yourupload_link"
# Acceder a la página de YourUpload
yourupload_page_content=$(ucurl "$yourupload_link")
# Buscar la URL del video .mp4 en la página de YourUpload
mp4_link=$(echo "$yourupload_page_content" | grep -o 'content="https://[^"]*\.mp4"' | sed 's/content="//')
if [ -z "$mp4_link" ]; then
echo "No se encontró el enlace del video .mp4 en YourUpload."
exit 1
fi
#echo "Enlace del video .mp4: $mp4_link"
clear
echo "Reproduciendo $anime_name_formatted - Episodio $episode_number"
mpv $mp4_link --referrer="https://yourupload.com"
while true; do
clear
echo "¿Quieres continuar con el siguiente episodio?"
echo ""
echo " 1) Si"
echo " 2) No"
echo ""
echo -e "\e[31mq) Volver al menu.\e[0m"
echo ""
read -p "Opcion: " respuesta
if [ "$respuesta" == "q" ]; then
break
fi
if [ "$respuesta" == 1 ]; then
((episode_number++))
break
elif [ "$respuesta" == 2 ]; then
echo "Saliendo..."
break
else
echo "Respuesta no válida. Por favor, responde 'Sí' o 'No'."
fi
done
if [ "$respuesta" == "q" ]; then
break
fi
done
break
;;
2)
# Si elige No, muestra un mensaje y continúa con el script
echo "No se ha seleccionado TioAnime. Continuando..."
sleep 2
break
;;
*)
echo "Opción no válida. Por favor, elige 1 (Sí) o 2 (No)."
;;
esac
done
fi
;;
2)
clear
echo -e "\e[35m [!] Historial [!]\e[0m"
echo -e "\e[35m───────────────────────────────────────\e[0m"
echo ""
cat $historial_file
echo ""
echo -e "\e[35m───────────────────────────────────────\e[0m"
echo ""
echo -e "[!] ¿Qué deseas hacer?"
echo ""
echo -e "\e[33m d) Borrar historial\e[0m"
echo -e "\e[33m q) Salir\e[0m"
echo ""
read -p "[?] Opcion: " historial_query
echo ""
if [ "$historial_query" == "q" ]; then
continue
fi
if [ "$historial_query" == "d" ]; then
echo "" >/home/$linux_user/historial.txt
fi
;;
3)
clear
echo '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⡀⡀⣀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀'
echo '⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣾⣾⣿⣿⣿⣿⣿⣿⣿⣿⣆⣄⠀⠀⠀⠀⠀⠀⠀'
echo '⠀⠀⠀⠀⠀⠀⠀⢰⣿⢻⡿⡏⡟⣿⣱⣿⣧⣿⣯⣽⠻⣿⣿⣷⣦⠄⠀⠀⠀ https://github.com/Pirrandi/animu-cli'
echo '⠀⠀⠀⠀⠀⠀⠀⣸⣿⣷⣷⣿⢿⠿⡏⠻⡀⢻⠙⣿⣿⣧⣽⣿⣿⣿⣄⠀⠀⠀'
echo '⢽⡽⠒⠄⠀⠀⠘⡼⡟⠇⡇⢋⠈⢆⡽⠶⠾⢾⠆⠘⢿⣿⡻⣿⣿⣿⣿⣂⠀⠀ /$$$$$$$ /$$'
echo '⡙⢷⣦⣰⠀⠀⠀⢱⡥⠵⠈⠲⢯⣵⣶⣶⡒⠎⠀⠀⢸⣿⣿⣿⣿⣿⣿⡇⠀⠀ | $$__ $$ | $$'
echo '⢶⣱⠛⢛⡄⠀⠀⠀⢟⡟⠁⠀⠀⠀⠀⣰⣶⣖⡆⠀⠸⡟⣵⡿⣿⣿⣿⠁⠀⠀ | $$ \ $$ /$$ /$$ /$$$$$$ | $$'
echo '⢀⢳⢈⠠⣴⡀⠀⠀⠈⢿⠷⠂⠀⠀⠀⠹⣿⡟⠒⠀⠀⢐⡗⠚⣹⣿⠏⠀⠀⠀ | $$$$$$$ | $$ | $$ /$$__ $$| $$'
echo '⢸⠜⣷⠁⠄⠳⡀⠀⡇⣯⠭⣐⠠⠀⠀⠀⠹⡧⠀⠀⠀⡴⡤⢺⣿⠏⠀⠀⠀⠀ | $$__ $$| $$ | $$| $$$$$$$$|__/'
echo '⡎⢰⠀⢗⡝⠁⠱⡀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⡜⠀⡇⠈⡏⠀⠀⠀⠀⠀ | $$ \ $$| $$ | $$| $$_____/ '
echo '⢁⢸⠀⠀⢿⡍⠀⠑⣡⣤⣴⣤⣤⣤⣤⣴⣶⡾⠛⢡⠃⠠⡇⠀⡇⠀⠀⠀⠀⠀ | $$$$$$$/| $$$$$$$| $$$$$$$ /$$'
echo '⠘⣌⠀⠀⠈⢿⣏⠠⠵⡄⠉⢻⡿⢿⣿⠟⠉⠀⢀⡟⠀⠀⠇⠀⢡⠀⠀⠀⠀⠀ |_______/ \____ $$ \_______/|__/'
echo '⠀⠘⠀⠀⠀⠘⡵⡆⠄⠚⢄⠈⡟⠉⠀⠀⠀⠀⣨⠇⠀⠀⢸⣀⡨⠔⠂⠈⠁⠒ /$$ | $$ '
echo '⠀⠀⠀⠀⠀⠀⠸⣳⡄⣂⠭⢦⣽⡄⠀⠀⠀⠀⡟⢀⠤⢒⣉⣠⣴⣶⣿⣷⣴⡿ | $$$$$$/ '
echo '⠀⠀⠀⠀⡠⣴⣶⣟⣥⣀⣉⣛⣿⣔⣀⣀⡠⠔⣩⣴⣾⣷⣿⣿⣿⡿⠟⢋⣁⣤ \______/ '
break
;;
esac
done