What changed, and why it matters
This commit adds support for a new Ethereum transaction type called EIP-7702 (smart accounts / account abstraction) to Trezor firmware. It is a feature addition, not a security fix. The change includes new user-facing confirmation text, test fixtures, and logic to allow signing these transactions only when safety checks are disabled and the destination address is a known allowed contract.
No security action required; treat as routine feature review. If auditing, verify the allow-list and safety-check gating logic in the full source beyond this diff.
Security signals we found
New feature implementation (EIP-7702 support)
Gated behind safety_checks=false and an allow-listed contract address
Adds explicit user confirmation prompt for authorizing EIP-7702 contract
No memory-safety, cryptographic, or authorization bug visible in diff
Evidence from the diff
The commit implements EIP-7702 transaction signing in the Ethereum app. It introduces new translation strings (ethereum__eip_7702_title / ethereum__eip_7702), UI layouts across device families, and signing logic in core/src/apps/ethereum/sign_tx.py and sign_tx_eip1559.py. Test fixtures show tx_type=4 (EIP-7702) succeeds only with safety_checks=false and a whitelisted to_address (0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00); with safety checks enabled or an unknown address it fails. No vulnerability or security patch is evident in the diff.
Changed components
core/src/apps/ethereum/sign_tx.pycore/src/apps/ethereum/sign_tx_eip1559.pycore/src/apps/ethereum/layout.pycore/src/apps/ethereum/sc_constants.pycore/src/trezor/ui/layouts/bolt/__init__.pycore/src/trezor/ui/layouts/caesar/__init__.pycore/src/trezor/ui/layouts/delizia/__init__.pycore/src/trezor/ui/layouts/eckhart/__init__.pycore/translations/en.jsoncommon/tests/fixtures/ethereum/sign_tx.jsoncommon/tests/fixtures/ethereum/sign_tx_error.jsonInspect captured patch +204 / −63
diff --git a/common/tests/fixtures/ethereum/sign_tx.json b/common/tests/fixtures/ethereum/sign_tx.json
index a1d053b3..bb4b6395 100644
--- a/common/tests/fixtures/ethereum/sign_tx.json
+++ b/common/tests/fixtures/ethereum/sign_tx.json
@@ -194,6 +194,27 @@
"sig_r": "7b6895910a73fcd71fbd4451304670fa1477b430552de35c746f140c9c8f5d77",
"sig_s": "7365f33b29cbfbec637982b4e3967c3d70c8aa29d36d67f52109dcd6fc162562"
}
+ },
+ {
+ "name": "EIP-7702 - Uniswap",
+ "skip_models": ["t1"],
+ "parameters": {
+ "safety_checks": false,
+ "data": "",
+ "path": "m/44'/60'/0'/0/1",
+ "to_address": "0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00",
+ "chain_id": 1,
+ "nonce": "0x0",
+ "gas_price": "0x14",
+ "gas_limit": "0x14",
+ "tx_type": 4,
+ "value": "0x0"
+ },
+ "result": {
+ "sig_v": 37,
+ "sig_r": "869433a7e19c05d9beb0f223d18fb27c6fb6a1817d60b38144f249237b27a36d",
+ "sig_s": "1379434319ea9953d6632cf54d8b2ec09c8d0d6fb932c530b67f0c03a318af57"
+ }
}
]
}
diff --git a/common/tests/fixtures/ethereum/sign_tx_error.json b/common/tests/fixtures/ethereum/sign_tx_error.json
new file mode 100644
index 00000000..b587bc5e
--- /dev/null
+++ b/common/tests/fixtures/ethereum/sign_tx_error.json
@@ -0,0 +1,51 @@
+{
+ "setup": {
+ "mnemonic": "alcohol woman abuse must during monitor noble actual mixed trade anger aisle",
+ "passphrase": ""
+ },
+ "tests": [
+ {
+ "name": "EIP-7702 - Uniswap - fails because we have safety checks",
+ "skip_models": ["t1"],
+ "parameters": {
+ "safety_checks": true,
+ "data": "",
+ "path": "m/44'/60'/0'/0/1",
+ "to_address": "0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00",
+ "chain_id": 1,
+ "nonce": "0x0",
+ "gas_price": "0x14",
+ "gas_limit": "0x14",
+ "tx_type": 4,
+ "value": "0x0"
+ },
+ "result": {
+ "sig_v": 0,
+ "sig_r": "0x0",
+ "sig_s": "0x0"
+ }
+ },
+ {
+ "name": "EIP-7702 - unknown address - safety checks disabled but still fails",
+ "skip_models": ["t1"],
+ "parameters": {
+ "safety_checks": false,
+ "data": "",
+ "path": "m/44'/60'/0'/0/1",
+ "to_address": "0xfc6b5d6af8a13258f7cbd0d39e11b35e01a32f93",
+ "chain_id": 1,
+ "nonce": "0x0",
+ "gas_price": "0x14",
+ "gas_limit": "0x14",
+ "tx_type": 4,
+ "value": "0x0"
+ },
+ "result": {
+ "sig_v": 0,
+ "sig_r": "0x0",
+ "sig_s": "0x0"
+ }
+ }
+
+ ]
+}
diff --git a/core/.changelog.d/6394.added b/core/.changelog.d/6394.added
new file mode 100644
index 00000000..dd4dcedd
--- /dev/null
+++ b/core/.changelog.d/6394.added
@@ -0,0 +1 @@
+ETH: Add support for EIP-7702.
diff --git a/core/embed/rust/librust_qstr.h b/core/embed/rust/librust_qstr.h
index 1afe3898..9e00cd44 100644
--- a/core/embed/rust/librust_qstr.h
+++ b/core/embed/rust/librust_qstr.h
@@ -1241,6 +1241,8 @@ static void _librust_qstrs(void) {
MP_QSTR_ethereum__approve_unlimited_template;
MP_QSTR_ethereum__contract_address;
MP_QSTR_ethereum__data_size_template;
+ MP_QSTR_ethereum__eip_7702;
+ MP_QSTR_ethereum__eip_7702_title;
MP_QSTR_ethereum__gas_limit;
MP_QSTR_ethereum__gas_price;
MP_QSTR_ethereum__interaction_contract;
diff --git a/core/embed/rust/src/translations/generated/translated_string.rs b/core/embed/rust/src/translations/generated/translated_string.rs
index 692c146c..17cd80b7 100644
--- a/core/embed/rust/src/translations/generated/translated_string.rs
+++ b/core/embed/rust/src/translations/generated/translated_string.rs
@@ -1561,93 +1561,97 @@ pub enum TranslatedString {
secure_sync__header = 1173, // "Suite Sync"
words__note = 1174, // "Note"
words__fee_limit = 1175, // "Fee limit"
+ #[cfg(feature = "universal_fw")]
+ ethereum__eip_7702_title = 1176, // "Smart accounts"
+ #[cfg(feature = "universal_fw")]
+ ethereum__eip_7702 = 1177, // {"Bolt": "Authorize the following contract as an EIP-7702 on your account", "Caesar": "Authorize the following contract as an EIP-7702 on your account", "Delizia": "Authorize the following contract as an EIP-7702 on your account?", "Eckhart": "Authorize the following contract as an EIP-7702 on your account?"}
}
impl TranslatedString {
cfg_if::cfg_if! {
if #[cfg(feature = "layout_bolt")] {
#[cfg(all(feature = "debug", feature = "universal_fw"))]
- pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limit";
+ pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limitSmart accountsAuthorize the following contract as an EIP-7702 on your account";
#[cfg(all(feature = "debug", feature = "universal_fw"))]
- pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613];
+ pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613, 22627, 22690];
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
- pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limit";
+ pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limitSmart accountsAuthorize the following contract as an EIP-7702 on your account";
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
- pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613];
+ pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613, 22627, 22690];
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
- pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limit";
+ pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limitSmart accountsAuthorize the following contract as an EIP-7702 on your account";
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
- pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613];
+ pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613, 22627, 22690];
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
- pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limit";
+ pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be backed up now!Wallet created.\nWallet created successfully.You can use your backup to recover your wallet at any time.Back up walletSkip backupAre you sure you want to skip the backup?Commitment dataConfirm locktimeDo you want to create a proof of ownership?The mining fee of\n{0}\nis unexpectedly high.Locktime is set but will have no effect.Locktime set toLocktime set to blockheightA lot of change-outputs.Multiple accountsNew fee rate:Simple send ofTicket amountConfirm detailsFinalize transactionHigh mining feeMeld transactionModify amountPayjoinProof of ownershipPurchase ticketUpdate transactionUnknown pathUnknown transactionUnusually high fee.The transaction contains unverified external inputs.The signature is valid.Voting rights toAbortAccessAgainAllowBackBack upCancelChangeCheckCheck againCloseConfirmContinueDetailsEnableEnterEnter shareExportFormatGo backHold to confirmInfoInstallMore infoOk, I understandPurchaseQuitRestartRetrySelectSetShow allShow detailsShow wordsSkipTry againTurn offTurn onBaseEnterpriseLegacyPointerRewardaddress - no staking rewards.Amount burned (decimals unknown):Amount minted (decimals unknown):Amount sent (decimals unknown):Pool has no metadata (anonymous pool)Asset fingerprint:Auxiliary data hash:BlockCatalystCertificateChange outputCheck all items carefully.Choose level of details:Collateral input ID:Collateral input index:The collateral return output contains tokens.Collateral returnConfirm signing the stake pool registration as an owner.Confirm transactionConfirming a multisig transaction.Confirming a Plutus transaction.Confirming pool registration as owner.Confirming a transaction.CostCredential doesn't match payment credential.Datum hash:Delegating to:for account {0} and index {1}:for account {0}:for key hash:for script:Inline datumInput ID:Input index:The following address is a change address. ItsThe following address is owned by this device. ItsThe vote key registration payment address is owned by this device. Itskey hashMarginmulti-sig pathContains {0} nested scripts.Network:Transaction has no outputs, network cannot be verified.Nonce:otherpathPledgepointerPolicy IDPool metadata hash:Pool metadata url:Pool owner:Pool reward account:Reference input ID:Reference input index:Reference scriptRequired signerrewardAddress is a reward address.Warning: The address is not a payment address, it is not eligible for rewards.Rewards go to:scriptAllAnyScript data hash:Script hash:Invalid beforeInvalid hereafterKeyN of Kscript rewardSendingShow SimpleSign transaction with {0}Stake delegationStake key deregistrationStakepool registrationStake pool registration\nPool ID:Stake key registrationStaking key for accountto pool:token minting pathTotal collateral:TransactionThe transaction contains minting or burning of tokens.The following transaction output contains a script address, but does not contain a datum.Transaction ID:The transaction contains no collateral inputs. Plutus script will not be able to run.The transaction contains no script data hash. Plutus script will not be able to run.The following transaction output contains tokens.TTL:Unknown collateral amount.Path is unusual.Valid since:Verify scriptVote key registration (CIP-36)Vote public key:Voting purpose:WarningWeight:Confirm withdrawal for {0} address:Requires {0} out of {1} signatures.Access your coinjoin account?Do not disconnect your Trezor!Max mining feeMax roundsAuthorize coinjoinCoinjoin in progressWaiting for othersFee rate:Sending from account:Fee infoSending fromLoading seedLoading private seed is not recommended.Change device name to {0}?Device nameDo you really want to send entropy?Confirm entropyYou are about to sign {0}.Action Name:Arbitrary dataBuy RAMBytes:Cancel voteChecksum:Code:Contract:CPU:Creator:DelegateDelete AuthFrom:Link AuthMemoName:NET:New accountOwner:Parent:Payer:Permission:Proxy:Receiver:RefundRequirement:Sell RAMSender:Sign transactionThreshold:To:Transfer:Type:UndelegateUnlink AuthUpdate AuthVote for producersVote for proxyVoter:Amount sent:Size: {0} bytesGas limitGas priceMax fee per gasName and versionNew contract will be deployedNo message fieldMax priority feeShow full arrayShow full domainShow full messageShow full structReally sign EIP-712 typed data?Input dataConfirm domainConfirm messageConfirm structConfirm typed dataSigning address{0} unitsUnknown tokenThe signature is valid.Enable experimental features?Only for development and beta testing!Experimental modeAlready registeredThis device is already registered with this application.This device is already registered with {0}.This device is not registered with this application.The credential you are trying to import does\nnot belong to this authenticator.erase all credentials?Export information about the credentials stored on this device?Not registeredThis device is not registered with\n{0}.Please enable PIN protection.FIDO2 authenticateImport credentialList credentialsFIDO2 registerRemove credentialFIDO2 resetU2F authenticateU2F registerFIDO2 verify userUnable to verify user.Do you really want to erase all credentials?Update firmwareFW fingerprintClick to ConnectClick to UnlockBackup failedBackup neededCoinjoin authorizedExperimental modeNo USB connectionPIN not setSeedlessChange wallpaperJoint transactionTo the total amount:You are contributing:Change language to {0}?Language changed successfullyChanging languageLanguage settingsTap to connectTap to unlockLockedNot connectedDecrypt valueEncrypt valueSuite labelingDecrease amount by:Increase amount by:New amount:Modify amountDecrease fee by:Fee rate:Increase fee by:New transaction fee:Fee did not change.\nModify feeTransaction fee:Confirm exportConfirm ki syncConfirm refreshConfirm unlock timeHashing inputsPayment IDPostprocessing...Processing...Processing inputsProcessing outputsSigning...Signing inputsUnlock time for this transaction is set to {0}Do you really want to export tx_der\nfor tx_proof?Do you really want to export tx_key?Do you really want to export watch-only credentials?Do you really want to\nstart refresh?Do you really want to\nsync key images?absoluteActivateAddConfirm actionConfirm addressConfirm creation feeConfirm mosaicConfirm multisig feeConfirm namespaceConfirm payloadConfirm propertiesConfirm rental feeConfirm transfer ofConvert account to multisig account?Cosign transaction for cosignatoryCreate mosaicCreate namespaceDeactivateDecreaseDescription:Divisibility and levy cannot be shown for unknown mosaicsEncryptedFinal confirmimmutableIncreaseInitial supply:Initiate transaction forLevy divisibility:Levy fee:Confirm mosaic levy fee ofLevy mosaic:Levy namespace:Levy recipient:Levy type:Modify supply forModify the number of cosignatories by mutableofpercentile{0} raw units remote harvesting?RemoveSet minimum cosignatories to Sign this transaction\nand pay {0}\nfor network fee?Supply change{0} supply by {1} whole units?Transferable?under namespaceUnencryptedUnknown mosaic!Access passphrase wallet?Always enter your passphrase on Trezor?Passphrase provided by connected app will be used but will not be displayed due to the device settings.Passphrase walletHide passphrase coming from app?The next screen shows your passphrase.Please enter your passphrase.Do you want to revoke the passphrase on device setting?Confirm passphraseEnter passphraseHide passphrasePassphrase settingsPassphrase sourceTurn off passphrase protection?Turn on passphrase protection?Change PINPIN changed.Position of the cursor will change between entries for enhanced security.The new PIN must be different from your wipe code.PIN protection\nturned off.PIN protection\nturned on.Enter PINEnter new PINThe PIN you have entered is not valid.PIN will be required to access this device.Invalid PINLast attemptEntered PINs do not match!PIN mismatchPlease check again.Re-enter new PINPlease re-enter PIN to confirm.PIN should be 4-50 digits long.Check PINPIN settingsWrong PINtries leftAre you sure you want to turn off PIN protection?Turn on PIN protection?Wrong PINkey|keyshour|hoursmillisecond|millisecondsminute|minutessecond|secondsaction|actionsoperation|operationsgroup|groupsshare|sharesChecking authenticity...DoneLoading transaction...Locking the device...1 second leftPlease waitProcessingRefreshing...Signing transaction...Syncing...{0} seconds leftTrezor will restart in bootloader mode.Go to bootloaderFirmware version {0}\nby {1}Cancel backup checkCheck your backup?Position of the cursor will change between entries for enhanced security.The entered wallet backup is valid and matches the one in this device.The entered wallet backup is valid but does not match the one in the device.The entered recovery shares are valid and match what is currently in the device.The entered recovery shares are valid but do not match what is currently in the device.Enter any shareEnter your backup.Enter a different share.Enter share from a different group.Group {0}Group threshold reached.Invalid wallet backup entered.Invalid recovery share entered.More shares neededSelect the number of words in your backup.You'll only have to select the first 2-4 letters of each word.All progress will be lost.Share already enteredYou have entered a share from a different backup.Share {0}Recover walletCancel backup checkCancel recoveryBackup checkRecover walletRemaining sharesType word {0} of {1}Wallet recovery completedAre you sure you want to cancel the backup check?Are you sure you want to cancel the recovery process?({0} words)Word {0} of {1}{count} more {plural} starting{count} more {plural} needed{0} of {1} shares enteredYou have enteredThe group threshold specifies the number of groups required to recover your wallet.all {0} of {1} sharesany {0} of {1} sharesCreate walletRecover walletBy continuing you agree to Trezor Company's terms and conditions.Check backupCheck g{0} - share {1}Check wallet backupCheck share #{0}Continue with the next share.Continue with share #{0}.You have finished verifying your recovery shares for group {0}.You have finished verifying your wallet backup.You have finished verifying your recovery shares.A group is made up of recovery shares.Each group has a set number of shares and its own threshold. In the next steps you will set the numbers of shares and the thresholds.Group {0} - Share {1} checked successfully.Group {0} - share {1}More info atFor recovery you need all {0} of the shares.For recovery you need any {0} of the shares.needed to form a group. needed to recover your wallet. Never put your backup anywhere digital.{0} people or locations will each hold one share.Each recovery share is a sequence of {0} words. Next you will choose the threshold number of shares needed to form Group {1}.Each recovery share is a sequence of {0} words. Next you will choose how many shares you need to recover your wallet.The required number of shares to form Group {0}.= total number of unique word lists used for wallet backup.1 shareOnly one share will be created.Wallet backupRecovery share #{0}The required number of groups for recovery.Select the correct word for each position.Select {0} wordSelect word {0} of {1}:Set it to {0} and you will need Share #{0} checked successfully.Standard backupNumber of groupsNumber of sharesSet number of groupsSet number of sharesSet sizes and thresholdsSet size and threshold for each groupSet thresholdBackup checklistWrite down and check all sharesWrite down & check all wallet backup sharesThe threshold sets the number of shares = minimum number of unique word lists used for recovery.Backup is doneCreate walletGroup thresholdNumber of groupsNumber of sharesSet group thresholdSet number of groupsSet number of sharesSet thresholdto form Group {0}.trezor.io/tosSet the total number of shares in Group {0}.Use your backup when you need to recover your wallet.Write the following {0} words in order on your wallet backup card.Wrong word selected!For recovery you need 1 share.Your backup is done.Confirm tagDestination tag:\n{0}Change display orientation to {0}?eastnorthsouthDisplay orientationwestTrezor will allow you to approve some actions which might be unsafe.Trezor will temporarily allow you to approve some actions which might be unsafe.Do you really want to enforce strict safety checks (recommended)?Safety checksSafety overrideAll data on the SD card will be lost.SD card required.Do you really want to remove SD card protection from your device?You have successfully disabled SD protection.Do you really want to secure your device with SD card protection?You have successfully enabled SD protection.SD card errorFormat SD cardPlease insert the correct SD card for this device.Please insert your SD card.Please unplug the device and insert your SD card.There was a problem accessing the SD card.Do you really want to replace the current SD card secret with a newly generated one?You have successfully refreshed SD protection.Do you want to restart Trezor in bootloader mode?SD card protectionSD card problemUnknown filesystem.Please unplug the device and insert the correct SD card.Use a different card or format the SD card to the FAT32 filesystem.Do you really want to format the SD card?Wrong SD card.Sending amountSending from multiple accounts.Including fee:Maximum feeReceiving to a multisig address.Confirm sendingJoint transactionReceiving toSendingSending amountSending toTo the total amount:Transaction IDYou are contributing: words in order.I wrote down all {0} BytesSigning addressConfirm messageMessage sizeVerify addressAccount indexAssociated token accountConfirm multisigExpected feeInstruction contains {0} accounts and its data is {1} bytes long.Instruction dataThe following instruction is a multisig instruction.{0} is provided via a lookup table.Lookup table addressMultiple signersTransaction contains unknown instructions.Transaction requires {0} signers which increases the fee.Account MergeAccount ThresholdsAdd SignerAdd trustAll XLM will be sent toAllow trustAssetBalance IDBump SequenceBuying:Claim Claimable BalanceClear dataClear flagsConfirm IssuerConfirm memoConfirm operationConfirm timeboundsCreate AccountDebited amountDeleteDelete Passive OfferDelete trustDestinationMemo is not set.\nTypically needed when sending to exchanges.Final confirmHashHigh:Home DomainInflation{0} issuerKey:LimitLow:Master Weight:Medium:New OfferNew Passive OfferNo memo set![no restriction]Path PayPath Pay at leastPayPay at mostPre-auth transactionPrice per {0}:Remove SignerRevoke trustSelling:Set dataSet flagsSet sequence to {0}?Sign this transaction made up of {0}and pay {0}\nfor fee?Source accountTrusted AccountUpdateValid from (UTC)Valid to (UTC)Value (SHA-256):Do you want to clear value key {0}?Baker addressBalance:Ballot:Confirm delegationConfirm originationDelegatorProposalRegister delegateRemove delegationSubmit ballotSubmit proposalSubmit proposalsPress both left and right at the same\ntime to confirm.Press and hold the right button to\napprove important operations.You're ready to\nuse Trezor.Press right to scroll down to read all content when text doesn't fit on one screen.\n\rPress left to scroll up.Are you sure you\nwant to skip the tutorial?HelloScreen scrollSkip tutorialTutorial completeUse Trezor by\nclicking the left and right buttons.\n\rContinue right.Welcome to Trezor. Press right to continue.Increase and retrieve the U2F counter?Set the U2F counter to {0}?Get U2F counterSet U2F counterAll data will be erased.Wipe deviceDo you really want to wipe the device?\nChange wipe codeWipe code changed.The wipe code must be different from your PIN.Wipe code disabled.Wipe code enabled.New wipe codeWipe code can be used to erase all data from this device.Invalid wipe codeThe wipe codes you entered do not match.Re-enter wipe codePlease re-enter wipe code to confirm.Check wipe codeInvalid wipe codeWipe code settingsTurn off wipe code protection?Turn on wipe code protection?Wipe code mismatchNumber of wordsAccountAccount:AddressAmountAre you sure?Array ofBlockhashBuyingConfirmConfirm feeContainsContinue anyway?Continue withErrorFeefromKeep it safe!Continue only if you know what you are doing!My TrezorNooutputsPlease check againPlease try againDo you really want toRecipientSignSignerCheckGroupInformationRememberShareSharesSuccessSummaryThresholdUnknownWarningWritableYesJust a moment...ClaimClaim addressClaim ETH from Everstake?StakeStake addressStake ETH on Everstake?UnstakeUnstake ETH from Everstake?Starting upVerifying PINWrong PINDo you want to create a {0} of {1} multi-share backup?Multi-share backupAlways AbstainAlways No ConfidenceDelegating to key hash:Delegating to script:Deposit:Vote delegationTap to confirmHold to confirmImportantI wrote down all {0} words in order.Create a backup to avoid losing access to your fundsLet's do a quick check of your backup.InstructionsNot recommended!Account infoIf receive address doesn't match, contact Trezor Support at trezor.io/support.Cancel receiveQR codeDerivation pathContinue in the appCancel and exitReceive address confirmedContinue without PINWithout a PIN, anyone can access this device.Cancel PIN setupCancel signSend fromHold to signFee rateincl. Transaction feeTotal amountAuto-lock turned onYour wallet backup contains multiple lists of words in a specific order (shares).Your wallet backup contains {0} words in a specific order.Wallet backup completedCreate wallet backupEnter next shareHold to continueHold to exit tutorialLearn moreContinue with Share #{0}Start with share #1PassphraseWallet backup not on this deviceInvalid wallet backup enteredAll shares are valid and belong to the backup in this deviceEntered share is valid and belongs to the backup in the deviceVerify remaining recovery shares?Enter each word of your wallet backup in order.It's safe to disconnect your Trezor while recovering your wallet and continue later.Share doesn't matchCancel create walletIncorrect word selectedMore atHow many wallet backup shares do you want to create?Each backup share is a sequence of {0} words. Store each wordlist in a separate, safe location or share with trusted individuals. Collect as needed to recover your wallet.Select the minimum shares required to recover your wallet.Share #{0} completedNumber of shares: {0}Recovery threshold: {0}Transaction signedContinue tutorialExit tutorialFind context-specific actions and options in the menu.One more stepYou're all set to start using your device!Easy navigationGood to knowOperation cancelledSettingsTry again.Number of groups: {0}Display brightnessMulti-share backupCreate additional backup?Create backupChange wallpaper to default image?Words may repeat.Repeat for all shares.SettingsHomescreenThe word is repeatedLet's beginDid you know?The Trezor Model One, created in 2013,\nwas the world's first hardware wallet.Restart tutorialHandy menuHold to confirm important actionsWell done!Learn how to use and navigate this device with ease.Get started!Swipe horizontallyAdjustApplyDisplay brightness changedChange display brightnessDoneThe threshold sets the minimum number of shares needed to recover your wallet.If you set {0} out of {1} shares, you'll need {2} backup shares to recover your wallet.Continue with empty passphrase?More credentialsSelect the credential that you would like to use for authentication.for authenticationSelect credentialSwipe downCredential detailsPublic key confirmedContinue anywayUnknown contract addressToken contractView all dataView all data in the menu.Interaction contractEnable labeling?Base feeClaimClaim SOL from stake account?Claiming SOL to address outside your current wallet.Priority feeStakeStake accountProviderStake SOL?The current wallet isn't the SOL staking withdraw authority.Withdraw authority addressUnstakeUnstake SOL from stake account?Vote accountStake SOL on {0}?Confirm without reviewTap to continueEvent kind: {0}UnlockedMax fees and rentMax rent feeTransaction feeApproveAmount allowanceChain IDReview details to approve token spending.Token approvalApprove toApproving unlimited amount of {0}UnlimitedReview details to revoke token approval.Token revocationRevokeRevoke fromChainTokenTapUnknown tokenUnknown token addressWrite down the first word from the backup.We don't recommend to skip wallet backup creation.Pay attentionCheck the address with source.ReceiveA recovery share is a list of words you wrote down when setting up your Trezor.Your wallet backup consists of 1 to 16 shares.Recovery shareAfter signing, send the transaction in the app.Sign cancelled.SendWalletAuthenticateAll input data ({0} bytes)Set the time before your Trezor locks automatically.day|daysTrezor will restart after update.Access hidden walletHidden walletShow passphraseRe-enter PINPIN setup completed.Start with Share #{0}Let's do a quick check of Share #{0}.Select word #{0} from\nShare #{1}Share #{0} from Group #{1} entered.Cancel transactionUsing different paths for different XPUBs.XPUBCancel?{0} addressProvider contract addressViewSwapProvider addressRefund addressAssetsConfirm message hashFinishUse menu to continueLast oneView more info, quit flow, ...Replay this tutorial anytime from the Trezor Suite app.Tap to start tutorialSign withTimeboundsToken infoTransaction sourceTransaction source does not belong to this Trezor.Continue with empty device name?Enter device nameNameDevice name changed.Confirm messageEmpty messageMessage hash:Message hexMessage textSign message hash with {0}Sign message with {0}Firmware typeFirmware versionAboutConnectedDeviceDisconnectLEDManageOFFONReviewSecurityChange PIN?Remove PINPIN codeChange wipe code?Remove wipe codeWipe codeDisabledEnabledBluetoothWipe your Trezor and start the setup process again.SetWipeUnlockStart enteringDisconnectedConnectForgetPowerWipe code must be turned off before turning off PIN protection.Wipe code setPIN must be set before enabling wipe code.Cancel wipe code setupOpen Trezor Suite and create a wallet backup. This is the only way to recover access to your assets.Destination tag is not set. Typically needed when sending to exchanges.Your Trezor is having trouble communicating with your connected device.Allow Trezor Suite to use Suite Sync with this Trezor?Allow {0} on {1} to use Suite Sync with this Trezor?Suite SyncNoteFee limitSmart accountsAuthorize the following contract as an EIP-7702 on your account";
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
- pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613];
+ pub const ENGLISH_OFFSETS: &'static [u16] = &[0, 32, 45, 62, 79, 122, 136, 146, 154, 169, 174, 190, 205, 217, 275, 294, 335, 350, 396, 441, 468, 484, 512, 571, 585, 596, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, 652, 668, 711, 754, 794, 809, 836, 860, 877, 890, 904, 917, 932, 952, 967, 983, 996, 1003, 1021, 1036, 1054, 1066, 1085, 1104, 1156, 1179, 1195, 1200, 1206, 1211, 1216, 1220, 1227, 1233, 1239, 1244, 1255, 1260, 1267, 1275, 1282, 1288, 1293, 1304, 1310, 1316, 1323, 1338, 1342, 1349, 1358, 1374, 1382, 1386, 1393, 1398, 1404, 1407, 1415, 1427, 1437, 1441, 1450, 1458, 1465, 1469, 1479, 1485, 1492, 1498, 1527, 1560, 1593, 1624, 1661, 1679, 1699, 1704, 1712, 1723, 1736, 1762, 1786, 1806, 1829, 1874, 1891, 1891, 1947, 1966, 2000, 2032, 2070, 2095, 2099, 2143, 2154, 2168, 2198, 2214, 2227, 2238, 2250, 2259, 2271, 2317, 2367, 2437, 2445, 2451, 2465, 2493, 2501, 2556, 2562, 2567, 2571, 2577, 2584, 2593, 2612, 2630, 2641, 2661, 2680, 2702, 2718, 2733, 2739, 2767, 2845, 2859, 2865, 2868, 2871, 2888, 2900, 2914, 2931, 2934, 2940, 2953, 2960, 2971, 2996, 3012, 3036, 3058, 3090, 3112, 3135, 3143, 3161, 3178, 3189, 3243, 3332, 3332, 3347, 3432, 3516, 3565, 3569, 3595, 3611, 3623, 3636, 3666, 3682, 3697, 3704, 3711, 3746, 3781, 3810, 3840, 3854, 3864, 3882, 3882, 3902, 3920, 3929, 3950, 3958, 3970, 3982, 4022, 4048, 4059, 4094, 4094, 4109, 4135, 4147, 4161, 4168, 4174, 4185, 4194, 4199, 4208, 4212, 4220, 4228, 4239, 4244, 4253, 4257, 4262, 4266, 4277, 4283, 4290, 4296, 4307, 4313, 4322, 4328, 4340, 4348, 4355, 4371, 4381, 4384, 4393, 4398, 4408, 4419, 4430, 4448, 4462, 4468, 4480, 4480, 4495, 4504, 4513, 4528, 4544, 4573, 4589, 4605, 4620, 4636, 4653, 4669, 4700, 4710, 4724, 4739, 4753, 4771, 4786, 4795, 4808, 4831, 4860, 4898, 4915, 4933, 4989, 5032, 5084, 5162, 5184, 5247, 5261, 5300, 5329, 5347, 5364, 5380, 5394, 5411, 5422, 5438, 5450, 5467, 5489, 5533, 5548, 5562, 5578, 5593, 5606, 5619, 5638, 5655, 5672, 5683, 5691, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5707, 5724, 5744, 5765, 5788, 5817, 5834, 5851, 5865, 5878, 5884, 5897, 5910, 5923, 5937, 5956, 5975, 5986, 5999, 6015, 6024, 6040, 6060, 6080, 6090, 6106, 6120, 6135, 6150, 6169, 6183, 6193, 6210, 6223, 6240, 6258, 6268, 6282, 6328, 6377, 6413, 6465, 6501, 6539, 6547, 6555, 6558, 6572, 6587, 6607, 6621, 6641, 6658, 6673, 6691, 6709, 6728, 6764, 6786, 6798, 6811, 6827, 6837, 6845, 6857, 6914, 6923, 6936, 6945, 6953, 6968, 6992, 7010, 7019, 7045, 7057, 7072, 7087, 7097, 7114, 7152, 7159, 7161, 7171, 7184, 7203, 7209, 7238, 7288, 7301, 7331, 7344, 7359, 7370, 7385, 7410, 7449, 7552, 7569, 7601, 7639, 7668, 7723, 7741, 7757, 7772, 7791, 7808, 7839, 7869, 7879, 7891, 7964, 8014, 8040, 8065, 8074, 8087, 8125, 8168, 8179, 8191, 8217, 8229, 8248, 8264, 8295, 8326, 8335, 8347, 8356, 8366, 8415, 8438, 8447, 8455, 8465, 8489, 8503, 8517, 8531, 8551, 8563, 8575, 8599, 8603, 8625, 8646, 8659, 8670, 8680, 8693, 8715, 8725, 8741, 8780, 8796, 8823, 8842, 8860, 8933, 9003, 9079, 9159, 9246, 9261, 9279, 9303, 9338, 9347, 9371, 9401, 9432, 9450, 9492, 9554, 9580, 9580, 9601, 9650, 9659, 9673, 9692, 9707, 9719, 9733, 9749, 9769, 9794, 9843, 9896, 9907, 9922, 9952, 9980, 10005, 10021, 10104, 10125, 10146, 10159, 10173, 10238, 10250, 10272, 10291, 10307, 10336, 10361, 10424, 10471, 10520, 10558, 10691, 10734, 10755, 10767, 10811, 10855, 10879, 10910, 10949, 10998, 11123, 11240, 11288, 11347, 11354, 11385, 11398, 11417, 11460, 11502, 11517, 11540, 11572, 11604, 11619, 11635, 11651, 11671, 11691, 11715, 11752, 11765, 11781, 11812, 11855, 11895, 11951, 11965, 11978, 11978, 11993, 12009, 12025, 12044, 12064, 12084, 12097, 12115, 12128, 12172, 12225, 12291, 12311, 12341, 12361, 12372, 12392, 12426, 12430, 12435, 12440, 12459, 12463, 12531, 12611, 12676, 12689, 12704, 12741, 12758, 12823, 12868, 12933, 12977, 12990, 13004, 13054, 13081, 13130, 13172, 13256, 13302, 13351, 13369, 13384, 13403, 13459, 13526, 13567, 13581, 13581, 13595, 13626, 13640, 13651, 13683, 13698, 13715, 13727, 13734, 13748, 13758, 13778, 13778, 13792, 13813, 13829, 13846, 13855, 13870, 13885, 13897, 13911, 13924, 13948, 13964, 13976, 14041, 14057, 14109, 14144, 14164, 14180, 14180, 14222, 14279, 14292, 14310, 14320, 14329, 14352, 14363, 14368, 14378, 14391, 14398, 14421, 14431, 14442, 14456, 14468, 14468, 14485, 14485, 14503, 14517, 14531, 14537, 14557, 14569, 14580, 14640, 14653, 14657, 14662, 14673, 14682, 14682, 14682, 14692, 14696, 14701, 14705, 14719, 14726, 14735, 14752, 14764, 14780, 14780, 14788, 14805, 14808, 14819, 14839, 14853, 14853, 14866, 14878, 14886, 14894, 14903, 14923, 14959, 14979, 14993, 14993, 15008, 15014, 15030, 15044, 15060, 15095, 15095, 15108, 15116, 15123, 15141, 15160, 15169, 15177, 15194, 15211, 15224, 15239, 15255, 15309, 15373, 15400, 15509, 15552, 15557, 15570, 15583, 15600, 15667, 15710, 15748, 15775, 15790, 15805, 15829, 15840, 15879, 15895, 15913, 15959, 15978, 15996, 16009, 16066, 16083, 16123, 16141, 16178, 16193, 16210, 16228, 16258, 16287, 16305, 16320, 16327, 16335, 16342, 16348, 16361, 16369, 16378, 16384, 16391, 16402, 16410, 16426, 16439, 16444, 16447, 16451, 16464, 16509, 16518, 16520, 16527, 16545, 16561, 16582, 16591, 16595, 16601, 16606, 16611, 16622, 16630, 16635, 16641, 16648, 16655, 16664, 16671, 16678, 16686, 16689, 16705, 16705, 16710, 16723, 16748, 16753, 16766, 16789, 16796, 16823, 16834, 16847, 16856, 16910, 16928, 16942, 16962, 16985, 17006, 17014, 17029, 17029, 17043, 17058, 17067, 17103, 17155, 17193, 17205, 17221, 17233, 17311, 17325, 17332, 17347, 17366, 17381, 17406, 17426, 17471, 17487, 17498, 17507, 17519, 17527, 17548, 17560, 17579, 17660, 17718, 17741, 17761, 17761, 17761, 17761, 17761, 17761, 17777, 17793, 17814, 17814, 17824, 17848, 17867, 17867, 17877, 17909, 17938, 17998, 18060, 18093, 18140, 18224, 18243, 18263, 18286, 18293, 18345, 18516, 18574, 18594, 18615, 18638, 18656, 18673, 18686, 18686, 18686, 18740, 18753, 18795, 18795, 18795, 18810, 18810, 18822, 18841, 18849, 18859, 18880, 18898, 18916, 18941, 18954, 18988, 19005, 19027, 19035, 19045, 19065, 19076, 19089, 19166, 19182, 19192, 19225, 19235, 19287, 19299, 19317, 19323, 19328, 19354, 19379, 19383, 19461, 19548, 19579, 19595, 19663, 19681, 19698, 19708, 19726, 19746, 19761, 19785, 19799, 19812, 19838, 19858, 19874, 19874, 19882, 19887, 19916, 19968, 19980, 19985, 19998, 20006, 20016, 20076, 20102, 20109, 20140, 20152, 20169, 20191, 20206, 20221, 20221, 20221, 20221, 20229, 20246, 20258, 20273, 20280, 20296, 20304, 20345, 20359, 20369, 20402, 20411, 20451, 20467, 20473, 20484, 20489, 20494, 20497, 20510, 20531, 20573, 20623, 20636, 20666, 20673, 20752, 20798, 20812, 20859, 20874, 20878, 20884, 20896, 20896, 20922, 20974, 20982, 21015, 21035, 21048, 21063, 21075, 21095, 21095, 21116, 21153, 21185, 21220, 21238, 21280, 21284, 21291, 21302, 21327, 21331, 21335, 21351, 21365, 21371, 21391, 21397, 21417, 21425, 21455, 21455, 21510, 21510, 21510, 21510, 21510, 21510, 21510, 21531, 21531, 21540, 21550, 21560, 21578, 21628, 21660, 21677, 21677, 21681, 21701, 21716, 21729, 21742, 21753, 21765, 21791, 21812, 21812, 21812, 21812, 21812, 21825, 21841, 21841, 21841, 21841, 21846, 21855, 21861, 21871, 21874, 21880, 21883, 21885, 21891, 21899, 21910, 21920, 21928, 21945, 21961, 21970, 21978, 21985, 21985, 21985, 21994, 22045, 22048, 22052, 22058, 22072, 22084, 22084, 22091, 22097, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22102, 22165, 22178, 22220, 22242, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22342, 22413, 22484, 22538, 22590, 22590, 22600, 22604, 22613, 22627, 22690];
} else if #[cfg(feature = "layout_caesar")] {
#[cfg(all(feature = "debug", feature = "universal_fw"))]
- pub const ENGLISH_STRINGS: &'static str = "Please contact Trezor support atKey mismatch?Address mismatch?trezor.io/supportWrong derivation path for selected account.XPUB mismatch?Public keyCosignerReceive addressYoursDerivation path:Receive addressReceiving toAllow connected app to check the authenticity of your {0}?Authenticate deviceAuto-lock Trezor after {0} of inactivity?Auto-lock delayYou can back up your Trezor once, at any time.You should back up your new wallet right now.It should be bacWhy this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.