_section: Experimental The **Experimental** package is used for features that are not ready to be included in the base library. The API should not be considered stable and does not follow [[link-semver]] versioning, so applications requiring it should specify the //exact version// needed. These features are not available in the core ethers package, so to use them you must install the ``@ethersproject/experimental`` package and import them from that. _subsection: BrainWallet @ @INHERIT<[[Wallet]]> Ethers removed support for BrainWallets in v4, since they are unsafe and many can be easily guessed, allowing attackers to steal the funds. This class is offered to ensure older systems which used brain wallets can still recover their funds and assets. _property: BrainWallet.generate(username, password [ , progressCallback ]) => [[experimental-brainwallet]] Generates a brain wallet, with a slightly improved experience, in which the generated wallet has a mnemonic. _property: BrainWallet.generateLegacy(username, password [ , progressCallback ]) => [[experimental-brainwallet]] Generate a brain wallet which is compatible with the ethers v3 and earlier. _code: Importing @lang