LIONMULTINSTANCEBY LIONCODETECH Comprar licença
LIONCODETECH · DOCUMENTAÇÃO OFICIAL

LionMultInstance

Manual de instalação, ativação, organização de sessões, macros, proxy e solução de problemas.

1. Instalação

  1. Baixe o instalador oficial entregue pela Hotmart ou pela LionCodeTech.
  2. Execute LionMultInstance-Setup e escolha a pasta de destino.
  3. Conclua a instalação e abra o aplicativo pelo menu Iniciar.
Requisitos: Windows 10 ou 11 de 64 bits, internet para ativação e pelo menos 10 GB de espaço livre recomendado.

2. Ativação da licença

A chave é enviada ao e-mail da compra. Verifique também Spam e Promoções.

  1. Abra o LionMultInstance.
  2. Cole a chave no campo de ativação.
  3. Clique em Ativar licença.

A licença permite um computador ativo por vez. Ao ativá-la em outro computador, a instalação anterior é desconectada.

3. Sessões, Views e automação

Cada janela mantém cookies, login e armazenamento próprios. A mesma janela pode aparecer em várias Views sem duplicar a sessão.

Consumo

Cada janela funciona como um navegador. Muitas janelas e sites pesados aumentam o consumo de RAM e CPU.

Automação

O auto-clique continua funcionando em outras Views. O multi-controle atua somente nas janelas habilitadas da View atual. Use automações apenas onde forem permitidas.

Clique no ícone de cursor da janela para configurar o primeiro ponto. O editor abre automaticamente quando ainda não existe ponto; defina a posição, intervalo e ative o controle global.

Popups e recuperação

Quando um link abrir uma página auxiliar, use o botão de fechar popup no cabeçalho para voltar ao site. A mesma barra permite reiniciar somente a instância, preservando o login, ou excluí-la com confirmação para apagar sua sessão local.

4. Macros

Uso responsável. Auto-clique, macros e proxy podem violar as regras do site ou jogo e levar à suspensão ou ao banimento da conta. Use somente onde for permitido. A LionCodeTech não se responsabiliza por perdas decorrentes.

Uma macro é um script escrito por você que roda dentro de uma janela a cada carregamento de página. Cada janela tem a sua própria macro, ligada e desligada de forma independente.

Linguagem aceita

O botão de macro aceita somente JavaScript, a mesma linguagem que o navegador executa. Não existe compilação nem conversão de outras linguagens: Python, TypeScript, Lua, AutoHotkey e arquivos .bat não funcionam.

  • Disponível: JavaScript moderno (let, const, arrow functions, async/await, encadeamento opcional) e as APIs da própria página, como document, window, fetch, setInterval e localStorage.
  • Indisponível: APIs do Node, require, pacotes do npm e acesso a arquivos do computador. A janela roda sem integração com o sistema, exatamente como uma aba de navegador.
  • Sem import ou export: o script é inserido dentro de uma função, então declarações de módulo não são válidas.
  • await solto também não vale, pelo mesmo motivo. Para esperar por algo, use uma função assíncrona, como no segundo exemplo abaixo.
  • Limite de 20.000 caracteres por macro.

Como criar

  1. Abra a janela desejada e clique no ícone de script no cabeçalho dela.
  2. Escreva o código no editor e clique em Salvar e aplicar.
  3. Use o botão de macro da janela para ligar ou desligar. O botão de macro da barra principal liga e desliga todas de uma vez.

Exemplo simples: clicar num botão assim que a página abrir.

document.querySelector('#play')?.click();

Exemplo com espera, usando uma função assíncrona:

(async () => { await new Promise((r) => setTimeout(r, 2000)); document.querySelector('#play')?.click(); })();

Quando o script roda

A macro é aplicada a cada carregamento de página. Ao salvar com a macro ligada, ela roda na hora, e um script alterado substitui o anterior. O mesmo script não roda duas vezes no mesmo carregamento; desligar e ligar de novo executa outra vez.

Limites e segurança

  • O script tem acesso total à página e à sessão logada daquela janela. Trate-o com o mesmo cuidado que teria ao colar código no console do navegador e nunca use scripts de origem desconhecida.
  • Erro de sintaxe aparece no próprio editor, em Erro na macro.
  • Desligar cancela timers, animações agendadas e requisições feitas pelo runtime da macro, além de eventos de window/document. Os timers do jogo continuam. Use lmi.listen(elemento, evento, função) para outros eventos e lmi.onCleanup(() => recurso.disconnect()) para liberar observers ou recursos próprios. Em tarefas assíncronas, verifique lmi.signal.aborted. Efeitos já realizados e código executado fora desse runtime não são desfeitos.
  • Por segurança, macros nunca entram nem saem de um backup.

5. Proxy por janela

Cada janela pode sair por um proxy próprio, definido em Gerenciar View, ao lado do nome dela. Com o campo vazio, a janela usa o proxy global de Configurações.

Formatos aceitos: http://host:porta ou socks5://host:porta. O valor é gravado ao sair do campo ou ao pressionar Enter, e somente as janelas realmente afetadas são recarregadas.

Atenção: trocar o proxy recarrega a janela. Conclua o que estiver preenchendo antes de alterar o endereço.

6. Extensões do navegador

Cada janela pode carregar suas próprias extensões, de forma independente das outras. Uma janela pode ter um bloqueador de anúncios enquanto a janela ao lado continua limpa.

Leia antes de começar: o LionMultInstance não instala pela Chrome Web Store. A loja só instala no próprio Google Chrome. Aqui você aponta a pasta da extensão já descompactada — é o mesmo formato que o Chrome chama de modo desenvolvedor.
  1. Tenha a pasta da extensão no computador. Ela precisa conter um arquivo chamado manifest.json. Se você recebeu um .zip, clique com o botão direito e escolha Extrair tudo antes de continuar.
  2. Abra o cabeçalho da janela desejada. A extensão vale só para a janela onde você a adicionar, e cada janela é uma sessão separada.
  3. Clique no botão de extensões (ícone de camadas, ao lado do botão de proxy). Abre a lista de extensões daquela janela.
  4. Clique em “+” e selecione a pasta. Escolha a pasta que contém o manifest.json, não a pasta que contém essa pasta, e não o arquivo .zip.
  5. Recarregue a janela para a extensão agir na página que já estava aberta. Para remover, volte à mesma lista e clique no “✕” ao lado do nome.

O que funciona e o que não funciona

O LionMultInstance é feito com Chromium, mas não é o Google Chrome. Extensões que apenas alteram a página — bloqueadores, temas, tradutores, preenchimento de formulário — costumam funcionar. Extensões que dependem de recursos internos do Chrome, como sincronização de conta, gerenciamento de abas ou login pela conta Google, podem não funcionar ou funcionar pela metade.

A extensão não se atualiza sozinha, porque não veio de uma loja. Para atualizar, baixe a versão nova, substitua o conteúdo da pasta e reabra o aplicativo.

Segurança: uma extensão enxerga tudo o que a página enxerga, inclusive suas contas logadas naquela janela. Instale apenas o que você conhece. Por esse motivo, extensões nunca são incluídas em backups: ao restaurar uma cópia em outro computador, a lista volta vazia de propósito.

7. Backup seletivo

Em Central de Controle > Logs e dados você escolhe por caixas de seleção o que entra na cópia: janelas e Views, proxies, auto-clique, preferências, atalhos, perfis e atualizações.

Ao importar, a prévia mostra quantas janelas trazem proxy e quais endereços, porque um proxy redireciona todo o tráfego daquela janela. Confira antes de confirmar.

8. Telas e todos os botões

As telas abaixo reproduzem as principais áreas do aplicativo. Os números ligam cada botão à sua explicação. Passe o mouse sobre os botões reais do aplicativo para ver a mesma função em uma dica.

9. Modo de compatibilidade

Use somente quando necessário. Esse modo utiliza --no-sandbox e reduz o isolamento de segurança do navegador.

Quando usar

  • O aplicativo abre e fecha imediatamente.
  • Funciona com --no-sandbox, mas não pelo atalho normal.
  • O suporte orientou a ativação após analisar o problema.

Como ativar

Abra Configurações > Modo de compatibilidade. Se o aplicativo fechar antes, execute no PowerShell:

& "$env:LOCALAPPDATA\Programs\LionMultInstance\LionMultInstance.exe" --no-sandbox

10. Solução de problemas

Disco sem espaço ou perfil danificado

Libere espaço, feche o aplicativo e renomeie a pasta abaixo para preservar um backup e recriar as sessões:

Rename-Item "$env:APPDATA\LionMultInstance" "LionMultInstance-backup"

Será necessário autenticar novamente as contas.

Página vazia

Recarregue somente o painel afetado e confirme a URL e a conexão. Se não resolver, reinicie a instância pelo cabeçalho. Para encerrar todos os processos sem usar a bandeja, escolha Sair completamente nas configurações gerais.

Consumo elevado

Reduza as janelas abertas e feche sites ou Views que não estejam em uso.

11. Privacidade e suporte

Credenciais são digitadas diretamente nos sites. A LionCodeTech não recebe senhas ou cookies. O aplicativo realiza verificações periódicas de licença e versão.

Suporte: contato@lioncodetech.com.br. Informe a versão e descreva o problema sem enviar senhas.

1. Installation

  1. Download the official installer delivered by Hotmart or LionCodeTech.
  2. Run LionMultInstance-Setup and choose the destination folder.
  3. Finish the installation and open the app from the Start menu.
Requirements: 64-bit Windows 10 or 11, internet access for activation, and at least 10 GB of free space recommended.

2. License activation

The key is sent to the purchase email. Also check Spam and Promotions.

  1. Open LionMultInstance.
  2. Paste the key into the activation field.
  3. Click Activate license.

One computer can be active at a time. Activating another computer disconnects the previous installation.

3. Sessions, Views and automation

Each window keeps its own cookies, login and storage. The same window can appear in multiple Views without duplicating its session.

Resource usage

Every window works like a browser. More windows and demanding websites increase RAM and CPU usage.

Automation

Auto-click can keep running in other Views. Multi-control only affects enabled windows in the current View. Use automation only where it is allowed.

Click the window cursor icon to configure the first point. The editor opens automatically when no point exists; select its position and interval, then enable the global control.

Popups and recovery

When a link opens an auxiliary page, use the close-popup button in the window header to return to the website. The same bar can restart only that instance while keeping its login, or delete it with confirmation to erase its local session.

4. Macros

Responsible use. Auto-click, macros and proxies may breach the rules of a website or game and lead to account suspension or a ban. Use them only where they are allowed. LionCodeTech is not liable for any resulting loss.

A macro is a script you write that runs inside a window after every page load. Each window has its own macro, switched on and off independently.

Accepted language

The macro button accepts JavaScript only, the same language the browser runs. Nothing is compiled or converted from another language: Python, TypeScript, Lua, AutoHotkey and .bat files do not work.

  • Available: modern JavaScript (let, const, arrow functions, async/await, optional chaining) and the page's own APIs, such as document, window, fetch, setInterval and localStorage.
  • Not available: Node APIs, require, npm packages and access to files on your computer. The window runs with no system integration, exactly like a browser tab.
  • No import or export: the script is placed inside a function, so module declarations are not valid.
  • Bare await is not valid either, for the same reason. To wait for something, use an async function, as in the second example below.
  • A 20,000 character limit per macro.

Creating one

  1. Open the window you want and click the script icon in its header.
  2. Write the code in the editor and click Save and apply.
  3. Use the window's macro button to switch it on or off. The macro button in the main toolbar switches every macro at once.

Simple example: click a button as soon as the page opens.

document.querySelector('#play')?.click();

Example with a wait, using an async function:

(async () => { await new Promise((r) => setTimeout(r, 2000)); document.querySelector('#play')?.click(); })();

When the script runs

The macro is applied on every page load. Saving while it is enabled runs it right away, and an edited script replaces the previous one. The same script does not run twice within one page load; switching it off and on runs it again.

Limits and safety

  • The script has full access to the page and to the signed-in session of that window. Treat it with the same care as pasting code into the browser console, and never use scripts from an unknown source.
  • A syntax error is reported in the editor itself, under Macro error.
  • Disabling cancels timers, scheduled animation frames and requests made through the macro runtime, plus window/document events. The game's timers keep running. Use lmi.listen(element, event, callback) for other events and lmi.onCleanup(() => resource.disconnect()) to release observers or custom resources. In async tasks, check lmi.signal.aborted. Previous effects and code executed outside this runtime are not undone.
  • For safety, macros never travel in or out of a backup.

5. Per-window proxy

Each window can use its own proxy, set in Manage View next to its name. With the field empty, the window falls back to the global proxy in Settings.

Accepted formats: http://host:port or socks5://host:port. The value is saved when you leave the field or press Enter, and only the windows actually affected are reloaded.

Note: changing the proxy reloads the window. Finish whatever you are filling in before changing the address.

6. Browser extensions

Each window can load its own extensions, independently of the others. One window can run an ad blocker while the window next to it stays clean.

Read this first: LionMultInstance does not install from the Chrome Web Store. The store only installs into Google Chrome itself. Here you point to the already unpacked extension folder — the same format Chrome calls developer mode.
  1. Have the extension folder on your computer. It must contain a file named manifest.json. If you received a .zip, right-click it and choose Extract all first.
  2. Go to the header of the window you want. The extension applies only to the window you add it to, and each window is a separate session.
  3. Click the extensions button (layers icon, next to the proxy button). It opens the extension list for that window.
  4. Click “+” and pick the folder. Choose the folder that contains manifest.json — not the folder above it, and not the .zip file.
  5. Reload the window so the extension acts on the page that was already open. To remove it, return to the same list and click “✕” next to the name.

What works and what does not

LionMultInstance is built on Chromium, but it is not Google Chrome. Extensions that only change the page — blockers, themes, translators, form fillers — usually work. Extensions that rely on internals of Chrome, such as account sync, tab management or Google account sign-in, may not work or may work only partially.

An extension does not update itself, because it did not come from a store. To update, download the new version, replace the folder contents and reopen the app.

Security: an extension sees everything the page sees, including the accounts you are signed into in that window. Only install what you know. For this reason extensions are never included in backups: restoring a copy on another computer brings the list back empty on purpose.

7. Selective backup

Under Control Center > Logs and data you tick what goes into the copy: windows and Views, proxies, auto-click, preferences, shortcuts, profiles and updates.

On import, the preview shows how many windows carry a proxy and which addresses, because a proxy reroutes that window's whole traffic. Check it before confirming.

8. Screens and every button

The screens below reproduce the main areas of the application. Each number connects a button to its explanation. Hover over the real app buttons to see the same action in a tooltip.

9. Compatibility mode

Use only when necessary. This mode uses --no-sandbox and reduces browser security isolation.

When to use it

  • The app opens and immediately closes.
  • It works with --no-sandbox, but not from the normal shortcut.
  • LionCodeTech support advised activation after reviewing the issue.

How to enable it

Open Settings > Compatibility mode. If the app closes first, run this command in PowerShell:

& "$env:LOCALAPPDATA\Programs\LionMultInstance\LionMultInstance.exe" --no-sandbox

10. Troubleshooting

Low disk space or damaged profile

Free disk space, close the app and rename the folder below to keep a backup and recreate all sessions:

Rename-Item "$env:APPDATA\LionMultInstance" "LionMultInstance-backup"

You will need to sign in to your accounts again.

Blank page

Reload only the affected panel and check the URL and connection. If that does not help, restart the instance from its header. To stop every process without using the tray, choose Quit completely in General settings.

High resource usage

Reduce open windows and close websites or Views that are not being used.

11. Privacy and support

Credentials are entered directly on the websites. LionCodeTech does not receive passwords or cookies. The app periodically checks its license and installed version.

Support: contato@lioncodetech.com.br. Include the app version and describe the issue without sending passwords.

1. Instalación

  1. Descarga el instalador oficial entregado por Hotmart o LionCodeTech.
  2. Ejecuta LionMultInstance-Setup y elige la carpeta de destino.
  3. Finaliza la instalación y abre la aplicación desde el menú Inicio.
Requisitos: Windows 10 u 11 de 64 bits, internet para la activación y al menos 10 GB de espacio libre recomendado.

2. Activación de la licencia

La clave se envía al correo de compra. Revisa también Spam y Promociones.

  1. Abre LionMultInstance.
  2. Pega la clave en el campo de activación.
  3. Haz clic en Activar licencia.

Solo puede haber un equipo activo a la vez. Al activar otro equipo, la instalación anterior se desconecta.

3. Sesiones, Views y automatización

Cada ventana conserva sus propias cookies, inicio de sesión y almacenamiento. La misma ventana puede aparecer en varias Views sin duplicar la sesión.

Consumo de recursos

Cada ventana funciona como un navegador. Más ventanas y sitios exigentes aumentan el uso de RAM y CPU.

Automatización

El auto-clic puede seguir funcionando en otras Views. El control múltiple solo afecta a las ventanas habilitadas de la View actual. Usa automatizaciones únicamente donde estén permitidas.

Pulsa el icono del cursor de la ventana para configurar el primer punto. El editor se abre automáticamente cuando no existe ninguno; elige la posición y el intervalo y activa el control global.

Ventanas emergentes y recuperación

Cuando un enlace abra una página auxiliar, usa el botón de cerrar ventana emergente del encabezado para volver al sitio. La misma barra permite reiniciar solo esa instancia conservando la sesión, o eliminarla con confirmación para borrar sus datos locales.

4. Macros

Uso responsable. El auto-clic, las macros y el proxy pueden infringir las reglas del sitio o juego y provocar la suspensión o el baneo de la cuenta. Úsalos solo donde estén permitidos. LionCodeTech no se responsabiliza por las pérdidas resultantes.

Una macro es un script escrito por ti que se ejecuta dentro de una ventana en cada carga de página. Cada ventana tiene su propia macro, que se activa y desactiva de forma independiente.

Lenguaje aceptado

El botón de macro acepta solo JavaScript, el mismo lenguaje que ejecuta el navegador. No hay compilación ni conversión desde otros lenguajes: Python, TypeScript, Lua, AutoHotkey y los archivos .bat no funcionan.

  • Disponible: JavaScript moderno (let, const, arrow functions, async/await, encadenamiento opcional) y las APIs de la propia página, como document, window, fetch, setInterval y localStorage.
  • No disponible: APIs de Node, require, paquetes de npm ni acceso a los archivos del ordenador. La ventana funciona sin integración con el sistema, igual que una pestaña del navegador.
  • Sin import ni export: el script se inserta dentro de una función, por lo que las declaraciones de módulo no son válidas.
  • await suelto tampoco es válido, por el mismo motivo. Para esperar algo, usa una función asíncrona, como en el segundo ejemplo.
  • Límite de 20.000 caracteres por macro.

Cómo crearla

  1. Abre la ventana deseada y haz clic en el icono de script de su encabezado.
  2. Escribe el código en el editor y pulsa Guardar y aplicar.
  3. Usa el botón de macro de la ventana para activarla o desactivarla. El botón de macro de la barra principal activa y desactiva todas a la vez.

Ejemplo sencillo: hacer clic en un botón en cuanto se abra la página.

document.querySelector('#play')?.click();

Ejemplo con espera, usando una función asíncrona:

(async () => { await new Promise((r) => setTimeout(r, 2000)); document.querySelector('#play')?.click(); })();

Cuándo se ejecuta

La macro se aplica en cada carga de página. Al guardar con la macro activada se ejecuta al instante, y un script modificado sustituye al anterior. El mismo script no se ejecuta dos veces en una misma carga; desactivarla y volver a activarla lo ejecuta de nuevo.

Límites y seguridad

  • El script tiene acceso total a la página y a la sesión iniciada de esa ventana. Trátalo con el mismo cuidado que al pegar código en la consola del navegador y nunca uses scripts de origen desconocido.
  • Un error de sintaxis se muestra en el propio editor, en Error en la macro.
  • Desactivarla cancela temporizadores, animaciones programadas y solicitudes hechas por el runtime de la macro, además de eventos de window/document. Los temporizadores del juego continúan. Usa lmi.listen(elemento, evento, función) para otros eventos y lmi.onCleanup(() => recurso.disconnect()) para liberar observers u otros recursos. En tareas asíncronas, comprueba lmi.signal.aborted. Los efectos anteriores y el código ejecutado fuera de este runtime no se deshacen.
  • Por seguridad, las macros nunca entran ni salen de una copia de seguridad.

5. Proxy por ventana

Cada ventana puede salir por su propio proxy, definido en Gestionar View, junto a su nombre. Con el campo vacío, la ventana usa el proxy global de Configuración.

Formatos aceptados: http://host:puerto o socks5://host:puerto. El valor se guarda al salir del campo o al pulsar Enter, y solo se recargan las ventanas realmente afectadas.

Atención: cambiar el proxy recarga la ventana. Termina lo que estés rellenando antes de modificar la dirección.

6. Extensiones del navegador

Cada ventana puede cargar sus propias extensiones, de forma independiente de las demás. Una ventana puede tener un bloqueador de anuncios mientras la de al lado sigue limpia.

Lee esto primero: LionMultInstance no instala desde la Chrome Web Store. La tienda solo instala en el propio Google Chrome. Aquí indicas la carpeta de la extensión ya descomprimida: el mismo formato que Chrome llama modo desarrollador.
  1. Ten la carpeta de la extensión en la computadora. Debe contener un archivo llamado manifest.json. Si recibiste un .zip, haz clic derecho y elige Extraer todo antes de continuar.
  2. Abre el encabezado de la ventana deseada. La extensión vale solo para la ventana donde la agregues, y cada ventana es una sesión separada.
  3. Haz clic en el botón de extensiones (icono de capas, junto al botón de proxy). Abre la lista de extensiones de esa ventana.
  4. Haz clic en “+” y selecciona la carpeta. Elige la carpeta que contiene el manifest.json, no la carpeta que la contiene, ni el archivo .zip.
  5. Recarga la ventana para que la extensión actúe en la página que ya estaba abierta. Para quitarla, vuelve a la misma lista y haz clic en “✕” junto al nombre.

Qué funciona y qué no

LionMultInstance está hecho con Chromium, pero no es Google Chrome. Las extensiones que solo modifican la página — bloqueadores, temas, traductores, autocompletado — suelen funcionar. Las que dependen de recursos internos de Chrome, como la sincronización de cuenta, la gestión de pestañas o el inicio de sesión con Google, pueden no funcionar o hacerlo a medias.

La extensión no se actualiza sola, porque no vino de una tienda. Para actualizar, descarga la versión nueva, reemplaza el contenido de la carpeta y vuelve a abrir la aplicación.

Seguridad: una extensión ve todo lo que ve la página, incluidas tus cuentas abiertas en esa ventana. Instala solo lo que conoces. Por eso las extensiones nunca se incluyen en las copias de seguridad: al restaurar en otra computadora, la lista vuelve vacía a propósito.

7. Copia selectiva

En Centro de Control > Registros y datos eliges con casillas qué entra en la copia: ventanas y Views, proxies, auto-clic, preferencias, atajos, perfiles y actualizaciones.

Al importar, la vista previa muestra cuántas ventanas traen proxy y qué direcciones, porque un proxy redirige todo el tráfico de esa ventana. Compruébalo antes de confirmar.

8. Pantallas y todos los botones

Las siguientes pantallas reproducen las áreas principales de la aplicación. Cada número relaciona un botón con su explicación. Pasa el cursor sobre los botones reales para ver la misma función como ayuda.

9. Modo de compatibilidad

Úsalo solo cuando sea necesario. Este modo utiliza --no-sandbox y reduce el aislamiento de seguridad del navegador.

Cuándo usarlo

  • La aplicación se abre y se cierra inmediatamente.
  • Funciona con --no-sandbox, pero no desde el acceso directo normal.
  • El soporte de LionCodeTech recomendó activarlo tras analizar el problema.

Cómo activarlo

Abre Configuración > Modo de compatibilidad. Si la aplicación se cierra antes, ejecuta en PowerShell:

& "$env:LOCALAPPDATA\Programs\LionMultInstance\LionMultInstance.exe" --no-sandbox

10. Solución de problemas

Poco espacio o perfil dañado

Libera espacio, cierra la aplicación y cambia el nombre de la carpeta para conservar una copia y recrear las sesiones:

Rename-Item "$env:APPDATA\LionMultInstance" "LionMultInstance-backup"

Tendrás que volver a iniciar sesión en tus cuentas.

Página en blanco

Recarga solo el panel afectado y comprueba la URL y la conexión. Si no se resuelve, reinicia la instancia desde su encabezado. Para cerrar todos los procesos sin usar la bandeja, elige Salir completamente en la configuración general.

Consumo elevado

Reduce las ventanas abiertas y cierra los sitios o Views que no estés usando.

11. Privacidad y soporte

Las credenciales se introducen directamente en los sitios. LionCodeTech no recibe contraseñas ni cookies. La aplicación comprueba periódicamente la licencia y la versión instalada.

Soporte: contato@lioncodetech.com.br. Indica la versión y describe el problema sin enviar contraseñas.