Meu nome é Jeann Victor Batista, tenho 20 anos e curso o 6º período de Ciência da Computação na Universidade Federal de Alfenas (UNIFAL-MG).
Gosto de entender como as coisas funcionam na prática e de transformar o conteúdo estudado na graduação em projetos que possam ser executados, testados e aprimorados. Tenho maior interesse em desenvolvimento backend, APIs, algoritmos e organização de sistemas.
Durante a graduação, tive contato com diferentes áreas da Computação e paradigmas de programação. Fora das disciplinas, procuro aprofundar esses conhecimentos por meio de projetos pessoais, documentação e estudo contínuo.
Atualmente, busco evoluir principalmente em Java, Spring Boot, Python, FastAPI, bancos de dados, arquitetura de aplicações e boas práticas de desenvolvimento.
```html ```|
API REST para conversão de moedas fiduciárias em tempo real, com cadastro de usuários, histórico, favoritos, estatísticas e cache de taxas. Tecnologias: Java 21, Spring Boot, Spring Security, JPA, MySQL, Docker e Swagger. |
Aplicação local para consultar vídeos e playlists do YouTube, gerar transcrições em diferentes idiomas e preparar downloads de mídia. Tecnologias: Python, FastAPI, SQLite, HTML, CSS, JavaScript, yt-dlp e FFmpeg. |
|
Repositório organizado por período com materiais, códigos, projetos, provas, anotações e referências reunidos ao longo da graduação. Conteúdo: documentação, exercícios, projetos, notebooks e materiais de estudo. |
Exercícios e implementações de diferentes disciplinas, abrangendo algoritmos, estruturas de dados e paradigmas de programação. Linguagens: C, C++, Java, Prolog e Haskell. |
|
CLI desenvolvida para automatizar a criação e atualização de histórias de usuário e tarefas nos quadros Trello do projeto PET-TECH SUS da UNIFAL-MG, utilizando os dados da planilha de planejamento das sprints. Funcionalidades: filtragem por time, extração de tarefas, atribuição de responsáveis, criação de labels, prevenção de duplicações, atualização de cards e geração de relatórios. Tecnologias: Python, Pandas, Google Sheets, Trello REST API e Requests. |
|
Algoritmos e Estruturas de Dados Programação Orientada a Objetos
Bancos de Dados Redes de Computadores
Sistemas Operacionais Teoria de Linguagens e Compiladores
Inteligência Artificial Processamento Digital de Imagens
Cálculo Numérico Engenharia e Gestão de Software
Programação Lógica e Funcional Desenvolvimento de APIs REST
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣟⣿⣻⢯⣟⣯⢿⡽⢯⡿⡽⣯⢿⣽⣻⣟⡿⣟⣿⢿⡿⣿⣿⢿⣿⣟⡿⣿⣻⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣾⣿⣻⡾⣽⣻⣾⡽⣯⣟⣯⡿⣽⢯⣟⣾⢷⣻⣿⣻⣽⣿⣻⣿⣾⡿⣟⣾⢿⡷⣿⣽⣿⣻⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣷⣿⣿⣽⣿⣟⣷⣿⣿⣯⣿⣽⣿⣻⣯⣿⡿⣿⣷⣿⢿⣾⣿⣷⣿⣿⣿⢿⣿⢿⣿⣻⣽⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣷⡿⣿⣽⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣿⣿⣟⣿⣿⣷⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣻⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⡽⣿⡽⣾⣟⣿⣻⣿⢿⣻⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣿⣿⣽⣿⣾⣿⡿⣟⣿⣷⣿⡿⣿⣿⣟⣿⣽⣿⣟⣿⣿⣯⣿⣾⢯⣷⣿⣻⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣯⢿⣯⡟⣷⣛⣷⢻⡾⣽⣯⣿⢿⣟⣯⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣿⣿⣻⣿⣽⣿⣷⣿⣿⣻⣽⣾⣿⣿⣷⣿⣿⣿⣯⣿⣿⣷⡿⣟⣾⣿⣻⣾⣟⣷⣿⣿⣿⣷⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣾⢯⣟⡟⣶⡻⢧⣟⡾⢯⣟⣷⣻⣾⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣻⣿⡷⣿⣻⣾⠋⣀⡀⠀⠀⠀⠀⠀⠙⢿⣿⣿⣾⣿⣿⣿⣳⣿⣷⡿⣿⣯⣿⣿⣯⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠛⠛⠋⠉⠉⠀⠀⣿⣯⣟⡾⣽⢳⣛⣟⠾⣽⣻⣞⡷⣯⣟⣿⣾⢿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣷⣿⢿⡿⠟⢹⣿⣿⡴⠀⠀⠀⠀⠀⠈⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠉⠀⠀⠀⠀⡀⠀⠀⣴⣿⣿⣳⣟⡾⣭⡟⣽⣺⢻⣳⣟⡾⣽⣳⣯⣿⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣷⡿⣟⣾⡿⣿⣄⠀⠀⠙⠻⠅⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡅⠀⠀⠀⠀⠀⠙⣿⢰⣿⣿⠈⢹⣯⡟⣾⣽⢳⣽⣯⣷⣯⡟⣷⡟⣷⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⣿⢻⣽⣿⡟⣯⣿⣿⣿⣷⣤⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⢀⠰⠀⠛⠁⠀⣴⣿⣻⢷⣽⣫⢷⣻⢾⣽⣻⢷⡿⣿⣽⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣿⣿⣿⣾⣿⢿⣿⣟⣷⣿⢿⣻⣾⣿⣿⣿⣿⣿⣟⢲⣦⣄⡀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠘⠀⠀⢀⣠⣴⣼⣿⣳⣯⣟⡾⣽⢯⣟⡿⣾⡽⣯⢿⣟⣯⣿⣿⣿⣿⣿⣿⣿⣿⡟⣿⣿⣟⣮⣷⣿⣾⣿⣾⣿⣿⡿⣿⣯⣿⣟⣿⣿⣿⣿⣷⣿⣿⣿⣿⣿⣿⣾⡉⠉⠁⠀⢠⡄⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣟⣿⡟⠀⠀⠀⠀⠠⣴⣶⣚⣭⣾⣿⣟⣷⣻⣾⡽⣟⣯⣿⣞⣿⣳⢿⣽⣻⣞⣯⣷⢿⣞⣿⣽⣯⢷⣾⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⣽⣿⣻⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣄⣠⢾⡟⠀⠈⣿⣿⡿⣟⣿⣻⢿⣻⢿⣻⣽⣾⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣷⡿⣿⣻⡟⠁⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⣻⣾⡽⣷⣯⣿⢿⣽⡾⣽⢾⣽⣻⣞⡷⣯⣟⣾⢿⣽⢾⡿⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⡿⣽⢿⡽⣿⣻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡛⠟⣰⢂⡀⢻⣿⡽⣿⣽⢫⡿⡽⢯⡿⣽⢾⣟⡿ ⣿⣿⣿⣿⣿⣿⣿⣯⣷⡿⣯⣿⣻⣽⠃⠀⠀⠀⠀⠀⢠⣾⣿⣻⣽⣾⢿⣷⣿⣟⣾⣟⣿⢯⣿⣽⣻⣞⡷⣯⣿⣽⡾⣯⣿⢾⣟⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢯⡿⣽⣳⣿⣽⡿⣿⣿⣿⣿⣿⣿⣿⣿⣟⠰⣤⡎⢁⡈⢿⣟⡷⣞⣻⢼⡹⢧⣻⣽⣻⢾⣽ ⣿⣿⣿⣿⣿⣿⣷⣿⣻⣽⣟⡷⣿⠇⠀⠀⠀⠀⠀⢰⣿⣟⣾⣳⢯⡿⣿⣻⣾⣿⣿⣿⣻⣿⣟⣾⡷⣯⡿⣷⣻⡾⣽⣻⣽⣻⢾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢯⣟⡷⣟⣾⡽⣿⣿⣿⣿⣿⣿⣿⣿⢿⣿⠀⣼⡟⠀⠰⠘⣯⢿⣹⢮⡗⣯⡻⣵⢾⣽⣻⢾ ⣿⣿⣿⣿⣿⣾⣟⣯⣿⣞⣿⠏⠀⠀⠀⠀⠀⢀⣿⢷⡺⣵⢯⡿⣽⣻⣿⣿⣿⣿⣿⣿⣿⣟⣿⣿⣽⡿⣽⢷⣯⢟⡷⣻⠼⣭⢿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣞⡿⣽⣳⣿⣻⣾⢿⣽⡿⣷⣿⣻⣿⣿⣼⢡⠃⢈⠐⢳⠘⣿⣭⢷⢯⣳⢟⡽⣞⣳⢯⡿ ⣿⣿⣿⣿⣿⣷⡿⣾⣟⣾⣽⠏⠀⠀⠀⠀⠀⠀⣸⢯⢷⣻⡽⣾⡽⣟⣿⣽⣿⣿⣟⣯⣷⣿⢿⣞⣯⢿⡽⢯⣞⢯⡳⣭⠻⣼⢿⣄⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⢷⣯⢿⣽⣳⣯⢿⣽⡿⣯⣟⣿⣽⣻⡷⣿⣿⠆⠀⢿⠂⡀⠑⠈⢿⣯⢿⣹⢾⡽⣯⣟⣯⣟ ⣿⣿⣿⡿⣷⣿⣻⣿⢾⡿⠃⠀⠀⠀⠀⠀⠀⢀⣿⢯⣻⢾⣽⣳⣿⢿⣿⣿⣿⣯⣿⣿⣻⣽⡿⣽⣞⢯⡻⣝⢮⡳⣝⣎⠟⣿⡆⣼⣧⢸⣵⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡛⣿⣞⣻⣞⣷⣻⡿⣯⣟⡷⣯⣟⡾⣷⣻⢿⣿⡄⠦⣈⠓⠲⠨⠦⠈⢿⣿⢯⡿⣽⣳⣟⡾⣽ ⣿⣿⣟⣿⣿⣽⣿⣽⡿⠁⠀⠀⠀⠀⠀⠀⠀⢸⣯⢿⣹⣟⣾⢿⣽⣿⣿⣿⣿⣿⣿⣻⣿⣽⣻⣗⢯⡳⣝⢮⠳⣝⢞⡼⣛⣾⢸⣯⡏⣷⢫⡟⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⣽⣇⣿⣞⣷⣻⢾⣽⢿⣻⣽⣻⢷⣯⣟⡷⣯⣟⣧⡏⡶⣀⢉⣉⡁⠒⠢⠼⣿⣿⣿⣟⣿⣾⢿⣻ ⣿⣯⣿⣿⣾⢿⣾⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⣸⣯⣟⣷⣻⣯⣿⣿⣿⣿⣿⣿⣿⣽⣿⣻⣞⡷⣯⣏⠷⣭⢚⡽⣘⠮⣕⢫⣧⣿⣿⣇⢻⣧⢻⡼⣻⢿⣿⣿⣿⣿⣿⣿⣿⣿⡭⢯⣿⡷⣿⡽⣾⢽⣻⢾⣟⣯⡷⣯⣟⡶⣯⡽⣶⢫⣿⡟⣰⣋⠀⣄⣬⠓⣆⠀⢹⣿⣿⣿⣿⣿⣿⢿ ⣿⣽⣿⣷⡿⣿⣯⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣷⢿⣞⣿⣽⣿⣿⣿⣿⣿⣿⣿⣿⣳⣯⢿⣽⣳⣞⡻⢦⢏⠶⡩⠞⣌⢣⣿⢿⣿⣏⠄⠉⠀⢂⠑⠣⠚⢽⡛⣿⠻⣏⠟⣮⣟⣽⣿⣿⣿⣻⣭⢿⡽⣯⢿⣽⣻⢷⡯⣟⡷⢯⣳⢟⣾⡏⢉⡡⢦⡀⣙⠁⢀⡇⠈⢿⣿⣿⣿⣻⣿⡿ ⣟⣯⣷⣿⣻⣿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣻⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣾⣻⣞⡷⣭⣛⠷⣪⠳⣥⢋⠴⣃⢾⣷⣾⡉⠀⠄⠂⠀⠀⠀⠈⠐⠿⢹⠓⠀⠎⡘⣼⣿⣿⣟⡷⣛⡾⣏⡿⣽⣻⢾⡽⣯⢷⣛⢾⣫⢗⡯⢞⣿⡜⠇⠀⢉⠟⢻⣁⣙⣆⠘⣿⣿⣽⡿⣟⣿ ⣿⣻⣽⡾⣯⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠻⣷⣿⣯⣿⢿⣽⣿⣿⣿⣿⣿⣿⣿⣟⣷⣟⡾⣽⡳⣏⢯⡕⣏⠶⣩⠞⣬⡓⣿⣿⠆⠀⡜⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⢠⣿⣟⣞⡾⣹⣝⡳⣝⢾⡱⣏⣯⠽⣞⡽⣎⢷⡹⢮⣽⠷⠞⠷⢶⣶⣤⡀⠚⢻⢫⡇⠀⣿⣿⣯⢿⣟⣿ ⣾⢯⡷⣿⣽⠇⣀⢀⡀⠀⠀⠀⠀⠀⠀⢀⣴⣿⡿⢟⡉⠋⠙⢻⣾⣯⣿⠿⢛⣿⣿⣻⣿⣾⣯⣭⣍⣉⣉⣽⣿⣳⣧⡻⡔⢯⡜⣿⠀⣠⠀⣀⠀⣀⣀⡤⠤⣀⣀⠀⠀⠈⢹⣷⣻⢎⣷⣹⣎⣷⣽⣎⣷⣩⡎⡝⢮⣱⣯⠾⣟⣩⣴⣦⣄⡀⠀⠈⠛⢿⣦⠈⣋⣭⡬⣼⣿⣯⢿⣻⡾ ⣞⡿⣽⡷⣿⢀⡀⠙⠓⠒⠤⠄⠀⠀⢠⣾⣿⠏⡀⠂⠀⠀⣰⠂⠀⠀⡀⠀⠈⠉⠉⠁⠀⠀⠀⠉⠉⠉⠁⠀⠀⠀⡟⠓⠛⠓⠋⠉⠉⠙⠛⠛⠋⣱⠋⣁⣀⡀⣧⠙⣿⣶⠾⠿⠛⠛⠾⣯⣼⣱⡟⠁⠀⠉⠉⠉⠉⠓⠒⠒⠂⠈⠙⣿⠻⠟⠁⠀⠀⠈⢻⣷⡜⣷⣽⣴⣿⡿⣟⣯⣿ ⢯⣟⡷⣟⣿⣿⣿⣧⣤⣀⠀⠀⠀⢀⣾⣿⠇⡰⠁⠀⠀⠻⠃⠀⠀⢰⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡿⡟⢁⡁⠙⢿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠁⠀⠀⠀⠀⠀⠀⠻⣇⣼⣿⡿⣟⣿⡿⣿⣷ ⡟⣾⣽⣻⣞⡷⣿⢿⣿⣿⣿⣴⣀⣼⣿⡿⠀⠁⡤⠄⠤⠠⠄⠤⠤⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⡗⣧⠀⠀⢠⠋⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⢯⣟⣿⣯⣿⡿⣷ ⢟⣳⢾⣱⢯⡿⣽⣿⣻⣿⣿⣿⣿⣿⣏⠁⣰⢸⡀⠀⠀⠤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠴⠒⡖⠊⢩⠁⠀⠀⠀⠀⠀⠀⠀⢧⢹⠓⠀⢸⡶⠟⡇⠀⠀⠀⠀⠀⠀⠀⣄⣀⡤⢤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠀⠀⠀⠀⠀⠀⢠⣿⢯⣟⣾⢷⣿⣯⣿⣿ ⣏⡿⣾⣹⣏⣿⣹⣾⣿⢷⣏⡿⣿⣿⣿⣇⣿⣿⣿⣷⣰⣇⣰⣿⠀⣇⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⠁⠀⢰⡇⠀⢸⠀⠀⠀⣆⠀⠀⡀⠀⣸⣾⡆⠀⠀⡆⠀⢇⣀⣀⠀⣀⣀⡀⠀⢸⡀⡆⠈⢶⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡆⠀⠰⠀⠀⢀⣶⣿⣏⡿⣾⡿⣿⣷⣿⣏⣿ ⣽⣻⢷⣻⣞⡷⣟⣿⡾⣿⣻⣟⡷⣯⣟⡿⣾⣿⣿⣿⣿⣿⣿⣿⣿⡏⠁⢄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡾⠀⠀⠸⡅⠀⢸⠀⠀⠠⣿⢷⣾⡇⢰⣿⣭⢣⢶⠶⢿⠆⣿⣍⠙⠃⠈⣿⠁⠀⠀⣧⠁⠀⡀⠿⡄⠀⠀⡀⠀⠀⠀⠀⠀⡘⢄⠀⠀⠀⡠⢺⣟⡷⣾⣽⣳⡿⣟⣷⣿⣻⣿ ⡿⣽⣿⣳⣿⣻⣿⣳⣿⣻⢷⣯⣟⡷⣯⣟⡷⣝⡾⣽⢻⡿⡿⢿⣿⣿⣦⣀⠑⢆⠀⠀⠀⠀⠀⠀⠀⢰⡁⠆⠁⠀⠁⠀⢺⠀⠀⢘⡯⠀⢸⡇⢰⣿⢻⣭⠈⠻⣶⣄⠸⡍⢳⣤⠀⣿⡀⠀⠀⡟⠀⠀⠇⠀⢷⠀⠀⠀⠀⠀⠀⠀⠐⢁⠘⢄⢀⣜⣰⡿⣝⢾⣳⢳⡯⣟⡿⣽⡾⣟⣷ ⣟⡿⣞⣯⣷⣿⣻⣽⣷⢿⣻⢾⣽⣻⢷⣯⢻⡞⣵⢏⡷⣹⡽⣳⡞⣼⢻⡿⣵⢄⡑⢄⡀⠀⠀⠀⠀⢸⠀⡃⠀⠀⠀⠀⡇⠀⠀⠈⠃⠀⠘⠛⠀⢻⠿⢿⠈⠳⢾⠟⠘⡿⠾⠛⠐⠿⠿⠀⠀⡇⠀⠈⠀⠀⢺⠀⠀⠀⠀⠀⠀⠀⢀⠊⢀⣰⡿⣏⢷⡹⣞⢧⣏⢷⡹⣭⢟⣳⣟⡿⣽ ⣿⣻⢿⣽⣷⣻⣽⣟⣾⢿⣯⣟⡷⣯⣟⡾⢯⣝⢮⡻⣜⢧⡻⣵⢫⡗⣯⢞⡿⣧⡙⠷⣧⠀⠀⠀⠀⡞⠀⠀⢀⠈⠀⢀⡇⠀⠀⠀⠀⠀⠀⠀⠀⣯⠀⢸⠀⠀⠰⡄⠀⣇⠀⠀⠀⠀⠀⠀⠀⢣⠀⠐⠀⠠⠙⡆⠀⠀⠀⢀⠀⠠⢀⣴⡿⣝⢾⣩⢞⡵⢫⢞⣬⠳⣝⢮⣏⢷⡾⣽⣳ ⣟⣿⣯⣷⢯⣷⣻⢾⣽⣻⢾⡽⣛⡷⣽⢞⣯⢞⣧⢻⡼⣫⠷⣭⢳⡝⣮⡝⣾⣹⢿⡉⠂⠓⠄⡀⢠⠇⠈⡀⠀⡐⠠⢐⡇⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⣸⠀⠀⠸⡅⡀⡧⠀⠀⠀⠀⠀⠀⠀⢸⡄⠠⠐⠠⠁⢳⠀⠀⠀⠀⣀⣴⣿⢯⣟⡞⣧⣛⢮⡽⣙⢮⢖⡻⣜⡳⢮⡟⣞⡷⣏ ⣿⣿⣟⣾⣟⡾⣽⣻⠾⣝⣳⢿⣹⢯⡽⣞⡧⢿⡜⣧⡻⣵⢻⡜⣧⣛⢶⣹⢧⣟⣯⢿⡄⠀⠲⣄⣸⡄⠀⠐⢂⠤⣁⢾⡁⠀⠀⠀⠀⠀⠀⠀⠀⡇⠐⣸⠀⠀⢘⡧⢒⡷⠀⠀⠀⠀⠀⠀⠀⠀⣇⡂⠄⡁⢀⢻⠀⠀⠀⣼⣿⣟⣯⡿⣾⡽⢧⣛⢮⡳⣝⢮⣏⢷⣭⣛⢧⡻⣝⡾⣭ ⣿⣿⣿⣻⣾⣻⢷⣯⢿⡽⣹⡞⣭⢿⣹⣳⢻⣏⣾⢳⣻⣭⢷⣻⢖⣯⣻⣞⢿⣺⡽⣯⣷⠈⢇⠀⢸⠔⡡⠘⣤⢲⡱⢺⠄⢺⣿⣷⣶⣶⠂⠀⠀⡇⡁⢾⠀⠀⠈⣧⣷⣿⣶⣶⣶⣶⣶⣶⣶⣾⣷⣵⠠⠐⣠⢻⠀⠀⣾⣿⣟⣯⣿⣽⣷⣻⢯⣿⣹⢷⣫⢷⣞⣯⠶⣏⣯⡽⣝⡾⡵ ⣿⣿⣿⣻⣷⣟⡿⣞⣟⡾⢧⡻⣝⢮⡳⣭⢷⣛⡾⣏⡷⣯⢿⣭⣟⣾⢳⣯⢟⣷⡻⣗⣿⠄⠀⠁⢸⣎⡴⣛⡴⢋⡱⣻⣶⣿⣿⣿⣿⣿⠀⠀⠠⡗⡤⢻⠀⢀⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⡅⢂⡿⠀⣼⣿⣟⣯⣿⣽⣷⡿⣽⣟⣾⡽⣯⣟⡿⣞⣾⣻⡽⣞⡽⣞⣷⣻ ⣿⢿⣟⣿⣳⢯⡿⣽⡞⣽⡳⣝⢮⡳⣽⣣⢿⣹⡞⣽⣻⡽⣻⠾⡽⣞⣟⡾⣻⣜⡳⡝⣾⢠⠀⠀⣘⣧⡟⣿⡼⣧⣾⣿⣿⣿⣿⣿⡿⠛⠀⠀⢀⡏⡔⠻⢰⣿⣿⣿⣿⣿⠿⠿⠿⠿⠛⠛⠛⣿⣿⣿⡿⢋⢦⡗⢠⣿⢯⣿⢯⣿⣾⢯⣿⡿⣽⣯⣿⢷⣯⣿⣟⣾⣷⣻⣽⣻⡽⣶⢯ ⣟⣯⣟⡾⡽⣯⣟⣷⣻⣗⣻⡽⣺⣝⡧⣟⡽⣶⣛⢧⡗⣯⢳⡻⣝⠾⣜⣳⢳⠮⣕⡫⢿⢸⠀⠀⠈⡶⣝⡓⠾⢿⣿⣿⣿⣿⣿⣷⣤⣤⠤⠀⢠⡗⡬⣷⢸⣿⣿⣿⣿⣿⡗⠀⠀⠀⠀⠀⢀⣽⣿⣿⣾⣟⣺⢁⣾⢯⣟⣾⣻⢷⣻⡿⣯⣿⣟⣷⣿⣻⣯⣷⣿⣻⣾⣟⣷⡿⣽⣯⣿ ⠿⣜⢮⣳⢻⡵⣻⣞⡷⣯⢷⣻⣳⡽⢾⣭⠷⣧⣛⢮⡝⢮⡳⣝⢮⡻⡼⢥⡫⣝⢮⡵⣻⢸⡆⠀⠘⣇⣈⠛⠷⣦⣽⣿⠟⣿⣿⣿⣿⣿⠀⠀⢸⣗⡲⣏⣸⣿⣿⣿⣿⣿⣇⡠⠄⠒⠒⠚⠉⠹⣿⣿⣿⡿⢊⡟⢸⣯⢟⣮⠷⣯⠿⣽⣻⡽⣞⣿⢾⡷⣟⣷⢿⡾⣟⣷⡿⣯⣿⣟⣷ ⡻⣎⠷⣩⠷⣹⠷⣯⢿⡽⣯⢷⣯⣟⢿⡜⣟⠶⣩⠶⣩⢳⡹⢬⢳⡹⣱⢣⡓⣎⢳⣚⣽⣿⣇⠀⠈⣯⠷⣎⡡⢄⡈⢛⠃⣿⣿⣿⣿⣿⠀⠀⢸⢮⡝⡏⢻⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠤⢶⣿⣿⣿⣦⢾⠀⣼⣛⣮⢳⡻⣜⢯⡳⣭⢻⡽⣞⣿⣻⢿⣯⣿⣻⣟⣷⣻⢷⣻⡾⣟⣷ ⢳⡝⢮⡱⢫⣗⣻⡽⣯⢿⣽⣟⣾⡽⣯⣟⣮⣛⡥⣛⠴⡣⡝⣌⢣⠳⣡⠧⡹⣌⢳⡼⣼⣿⡿⠀⠠⣟⢳⣮⡙⠲⣌⢸⡁⣿⣿⣿⣿⣿⠀⠀⢸⣷⢻⡷⣾⣿⣿⣿⣿⡧⠤⠀⠀⠀⠀⠀⠘⣿⣿⣿⠁⣿⠀⣼⡿⣜⢧⡻⡜⣧⢻⡜⣯⣝⡻⣾⣽⣻⢷⢯⢷⣛⡾⡽⢯⡷⣟⡿⣽ ⢫⣞⣣⣝⡳⣎⣷⣻⣽⡿⣯⣿⣿⣿⣷⣻⢮⣗⡳⣍⠞⡱⡘⠤⢃⡱⢢⠝⡱⢎⡷⣺⣵⣿⠃⠀⠀⢽⣦⡜⠛⣧⣄⠸⠀⣿⣿⣿⣿⣿⠀⠀⢸⣮⣳⡇⣹⣿⣿⣿⣿⡇⠀⠀⠀⢀⡀⠠⢺⣿⣿⡿⢉⡇⠐⣿⡽⣮⢳⡽⣹⢎⡷⣹⠶⣭⢳⡳⣞⣽⣫⢯⡟⣼⢳⡝⣯⢽⡹⣞⣿ ⣗⣮⣳⣎⡷⣽⣞⣷⣿⣿⣿⣿⣿⣿⣿⣯⣟⡾⣱⢎⢎⡱⢈⠆⡡⢆⢣⢚⣭⢻⣼⣳⢯⣿⡐⣦⡀⢸⣧⣙⠻⢤⢚⢿⣄⣿⣿⣿⣿⣿⠄⠀⢸⡳⢏⡟⢻⣿⣿⣿⣿⡟⠂⠀⠀⠀⠀⠀⢨⣿⣿⣿⠈⡗⠀⢹⣿⣳⠿⣜⣧⢻⡜⣧⢻⡜⢧⡻⣜⠶⣯⡟⣼⢣⡟⡼⢣⡞⡵⢫⡞ ⣾⣳⣟⣾⡽⣷⣻⣿⣿⣿⣿⣿⣿⣿⣿⣳⣏⢷⡹⢎⠶⣑⢪⡐⡡⠎⣆⢏⢶⣫⢶⢯⣿⢿⣆⠁⢡⠈⣧⢊⣕⠮⡩⢾⡃⣻⣿⣿⣿⣿⣤⣀⢸⣷⢯⣧⣼⣿⣿⣿⣿⣧⣀⠀⠀⠀⠀⠀⠹⣿⣿⣇⡜⠀⠀⠘⣿⣯⢿⡽⣚⢧⡻⣜⢧⣏⡳⣝⢮⡻⡵⣏⢷⢫⠼⡱⢃⠞⡱⢋⡜ ⢾⡿⣽⣾⣟⣿⣟⣷⣿⣿⣿⣿⣿⣿⣿⣳⡟⣮⠳⡍⡞⢤⡃⢖⢡⠓⡜⣎⣎⠷⣫⢯⣿⢸⡟⡄⠀⠄⣗⠳⣜⢎⡱⢹⡅⢸⣿⣿⣿⣿⡇⠉⢸⣿⣿⡇⣼⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⢸⣿⣿⡟⡇⠀⠀⠀⣿⣿⣻⡞⡽⣎⢷⡹⣞⢦⡝⢮⡳⣝⡳⣝⢮⢣⡛⠴⣉⠬⡑⢣⠜ ⡿⣿⣿⣽⣿⣳⣿⣿⣟⣿⣿⣻⣿⣻⢷⣯⠿⣜⢧⡹⡘⢦⠙⡌⢦⡙⣜⠲⡼⣙⢧⣟⣾⢸⡁⢳⠀⠰⡞⣌⠼⣛⠿⣾⡁⢸⣿⣿⣿⣿⡇⠀⢸⣿⣾⣧⣼⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⢸⣿⣿⢧⠃⠀⠀⢰⣿⣯⣷⣻⣽⣚⡧⣟⡼⣓⡞⡧⣝⡎⢷⣙⢮⢣⡝⠲⣌⠲⣉⠖⡸ ⣟⣿⣽⣿⣾⡿⣿⣾⣿⣿⣽⣯⢷⣿⣻⣞⡿⣹⢦⢣⡙⠤⣋⠜⡰⣘⠬⣏⡵⣫⢞⡮⢿⣿⠀⡟⠀⠀⠳⡄⠶⣉⢾⣿⣿⣾⣿⣿⣿⣿⣇⣀⣼⣷⢯⡏⢹⣿⣿⣿⣿⣷⣤⣤⣤⣴⣶⣾⣿⣿⣏⣼⠇⠀⠀⢸⣿⣷⢯⣷⣳⢯⣳⡝⣾⡱⣝⡞⣵⣚⢧⣏⠾⣱⢎⡳⣌⠳⡜⡬⣑ ⣿⣻⣟⣿⣧⣿⣿⡿⣿⣼⣿⡼⣿⡽⣧⣟⣳⣇⡞⡤⢃⠦⣘⠰⣃⠜⣧⢸⢣⡟⣼⢻⡾⣿⢰⠃⠀⠀⠀⣷⣄⠻⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⢻⡀⠀⠀⠸⣿⣿⢾⣼⣻⣞⡧⣿⣤⡻⣜⡳⣤⢻⡼⣸⢖⡯⣜⠧⣜⢦⠳⣤⢣ ⢿⣽⣿⣯⣿⣿⣾⣿⣿⣿⣟⣿⣷⣻⢷⣫⡗⣮⠳⣅⠫⡔⣌⠳⣌⠚⣔⢫⠳⣜⣣⢟⡼⣿⡿⠀⠀⠀⠀⠘⣟⢶⣼⡿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢿⡇⠀⠈⣻⣿⣿⣿⣿⣿⣿⣿⠿⠿⣻⠏⣰⢿⡇⠀⠀⠰⣿⣿⣟⣾⣳⣯⣟⡷⣾⣝⣧⢟⡼⣣⢏⡷⣎⢷⡹⣞⡽⣎⠷⣎⢷ ⣿⣻⣿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣷⢯⣟⣧⡟⡶⡹⣌⠳⣘⠤⡓⣌⠳⡌⢎⡳⡜⢦⢫⣜⣿⢻⠀⠀⠀⠀⠀⡼⣦⠙⢿⣶⣤⡀⠈⠉⠉⣉⣉⢹⣉⣰⡇⠀⠀⣬⣭⣽⣉⣉⣉⣀⡤⠀⠂⣷⡼⢯⡟⠱⡀⠀⠀⢿⣿⣾⣟⣷⣿⣾⣿⣷⣻⣞⣯⢿⣵⡻⣞⡽⣾⣽⣳⢿⣽⣻⣽⣳ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⡿⣞⡽⣳⡱⢎⡱⢌⠲⣉⢆⠳⣌⠇⣧⡙⣎⡳⣜⡿⠘⡄⠀⠀⠀⠀⢣⠘⣿⣤⡅⠀⠉⠓⠦⠤⣀⡀⢹⣝⡛⡏⠁⠀⢹⣛⢻⡇⢀⡀⠄⠀⠀⣰⡟⡱⡿⠁⢀⡇⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣾⣿⣽⣯⣿⢾⣽⡿⣽⡷⣯⣟⣿⣾⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣻⡽⣏⡷⣹⢎⡵⢊⠵⣈⠎⡵⢪⡝⢦⡝⣶⡹⢾⡇⠀⡇⠀⠀⠀⠀⠈⣆⠈⢿⢧⡀⠀⠀⠀⠀⠈⢹⠿⠿⡇⠀⠀⢻⠿⢻⠉⠁⠀⠀⠀⠀⠀⣏⠜⡽⠁⠀⣸⠀⠀⠀⣻⣿⣿⣿⣿⣿⣿⣿⣿⣯⣿⣾⢿⣻⣯⣿⢯⣿⣷⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣳⣯⢿⣝⡾⣵⢺⡜⣥⢚⡤⣛⡜⢧⡞⣧⢻⡖⣟⣿⠟⢠⠃⠀⠀⠀⠀⠀⢸⡄⠈⢹⡇⠂⠀⠀⠀⠀⠀⢸⠤⢤⡇⠀⠀⣼⢲⣿⠀⠀⠀⠀⠀⠀⢻⠸⠁⠀⢀⡇⠀⠀⠀⢉⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣻⣿⣿⢿⣽⣿⣿⣾⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣾⣻⢾⣵⣫⡗⣞⢦⣏⢶⣹⣞⣷⣻⡽⣯⢿⡽⣾⠀⡞⠀⠀⠀⠀⠀⠀⡎⠙⣆⠀⢇⠀⠀⠀⠀⠀⠀⢸⢻⣾⠇⠀⠀⡯⢐⣺⠀⠀⡀⠀⠀⠀⠀⡇⠀⠀⣼⠀⠀⠀⠀⢸⢻⣿⣿⣿⣿⣿⣿⣿⣿⡿⣟⣯⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⣟⡿⣾⣵⣻⢽⣺⡼⣏⡷⣞⡷⣯⣿⣻⣯⢿⡇⠀⡇⠀⠀⠀⠀⠀⢰⠁⠀⠘⢳⡌⡆⠀⠀⠀⠀⠀⠘⡄⠙⡅⠀⠀⡿⡀⡟⠀⠀⠒⠀⠀⠀⠀⢣⠀⡐⢾⠀⠀⠀⠀⠈⣾⣿⣿⣟⣿⢿⣻⣿⣳⣿⣟⣯⣿⣟⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣟⣷⣻⣞⣯⢷⣻⣽⣻⣽⣻⢷⣻⡷⣟⣿⠁⢰⠃⠀⠀⠀⠀⠀⡌⠀⠀⠀⠀⠉⢧⠀⠀⠀⠀⠀⠀⢸⣤⣼⡀⠀⠱⡀⠹⡀⠀⠀⠀⠀⠀⠀⠈⡗⠀⢹⠀⠀⠀⠀⠀⣏⣿⣷⢿⣯⣟⡿⢾⡽⣾⣽⣻⢾⡻⣽⣾⣿⣻⣿⣿⣿⣿⢿⣻ ⣿⣿⣿⣿⣿⢿⡿⣿⣿⣿⣿⣿⣿⣿⣿⣽⣾⢷⣻⢾⡽⣯⢷⣫⢷⣯⣟⡿⣽⣻⣽⣻⠇⠆⠀⠀⠀⠀⠀⢰⡁⠀⠀⠀⠀⢀⣈⣳⠄⠀⠀⠀⠀⠈⡄⠀⡇⠀⠀⣇⣀⣱⠀⠀⠀⠀⠀⠀⢸⠃⢀⡘⡇⠀⠀⠀⠀⡇⣿⣿⣻⢾⣝⣻⢯⣟⡷⣯⣟⣯⣟⣷⣻⣾⣟⣷⣿⢿⣟⣯⣷