@fangorn-network/westmarch 0.0.20-dev → 2026.10.2-2.0-dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/README.md +33 -3
  2. package/docs/app-to-agent.md +117 -60
  3. package/package.json +10 -5
  4. package/plugin/scripts/fx.mjs +7 -9
  5. package/site/dist/assets/{AccountNotFoundScreen-C4njXc69-BOfmiSH1.js → AccountNotFoundScreen-C4njXc69-DyVH4CEz.js} +1 -1
  6. package/site/dist/assets/{AddFundsSelectionScreen-RAoCn7ej-D_EsIeJu.js → AddFundsSelectionScreen-RAoCn7ej-Dz1--SS9.js} +1 -1
  7. package/site/dist/assets/{Address-H8kD1d9O-C85sJ79B.js → Address-H8kD1d9O-BdFZmRwI.js} +1 -1
  8. package/site/dist/assets/{AffirmativeConsentScreen-BG0MJxku-DdEPFOww.js → AffirmativeConsentScreen-BG0MJxku-CxaCAisL.js} +1 -1
  9. package/site/dist/assets/{AllowlistRejectionScreen-Cae6e1Od-DhVy9iGN.js → AllowlistRejectionScreen-Cae6e1Od-JGk7vndN.js} +1 -1
  10. package/site/dist/assets/{ApiController-CYdiyu9B.js → ApiController-CTLbMCcH.js} +4 -4
  11. package/site/dist/assets/{ArrowsRightLeftIcon-cp60yobq.js → ArrowsRightLeftIcon-B8g9adpz.js} +1 -1
  12. package/site/dist/assets/{AuthenticateWithWalletScreen-CU6hIcFT-8rbYiYYE.js → AuthenticateWithWalletScreen-CU6hIcFT-CXD9_OP8.js} +1 -1
  13. package/site/dist/assets/{AwaitingEvmToSolBridgingScreen-D0e_sZMS-2pkNfCno.js → AwaitingEvmToSolBridgingScreen-D0e_sZMS-BtJCglvU.js} +1 -1
  14. package/site/dist/assets/{AwaitingExternalEthereumTransferScreen-ur5HL4R7-7AQt25_k.js → AwaitingExternalEthereumTransferScreen-ur5HL4R7-BgC2TsqH.js} +1 -1
  15. package/site/dist/assets/{AwaitingPasswordlessCodeScreen-DRHz76mM-BZY30TGs.js → AwaitingPasswordlessCodeScreen-DRHz76mM-B9OzLeEO.js} +1 -1
  16. package/site/dist/assets/{AwaitingSolToEvmBridgingScreen-CdLRrGD2-BILOOLi_.js → AwaitingSolToEvmBridgingScreen-CdLRrGD2-C7r5snUL.js} +1 -1
  17. package/site/dist/assets/BridgeNetworkSelectionView-CFGjB2nO-BTV0NRio.js +68 -0
  18. package/site/dist/assets/{CaptchaScreen-DbpvkIGx-D8eDcAkc.js → CaptchaScreen-DbpvkIGx-7rSZIuM-.js} +1 -1
  19. package/site/dist/assets/{CheckCircleIcon-NCOQc0Gs.js → CheckCircleIcon-B1l17ioc.js} +1 -1
  20. package/site/dist/assets/{CheckCircleIcon-BM409mGI.js → CheckCircleIcon-BGSI8nKf.js} +1 -1
  21. package/site/dist/assets/{Checkbox-D1EDeo41-rHlvsZzP.js → Checkbox-D1EDeo41-BUfq0w99.js} +1 -1
  22. package/site/dist/assets/{ChevronDownIcon-CW-4MSpE.js → ChevronDownIcon-B6uJvPHu.js} +1 -1
  23. package/site/dist/assets/{Chip-CZKIKt9K-CutJG010.js → Chip-CZKIKt9K-r9Nk__0-.js} +1 -1
  24. package/site/dist/assets/{CoinbaseOnrampStatusScreen-BbyCJDXL-DLs9zX-Q.js → CoinbaseOnrampStatusScreen-BbyCJDXL-DWWNHxmR.js} +1 -1
  25. package/site/dist/assets/{ConnectEmailForm-B-VRE0MN-N9J6T_YL.js → ConnectEmailForm-B-VRE0MN-CRQwS0Xu.js} +1 -1
  26. package/site/dist/assets/{ConnectLedgerScreen-DWHABGot-h0uYIUi6.js → ConnectLedgerScreen-DWHABGot-CZcCt31O.js} +1 -1
  27. package/site/dist/assets/{ConnectOnlyLandingScreen-CZYx9Bmp-LeuDMN1E.js → ConnectOnlyLandingScreen-CZYx9Bmp-C5IOf-SQ.js} +1 -1
  28. package/site/dist/assets/{ConnectOnlyStatusScreen-DCRzjxHx-DaRa59tZ.js → ConnectOnlyStatusScreen-DCRzjxHx-cwg74F3A.js} +1 -1
  29. package/site/dist/assets/ConnectOrCreateScreen-CUUYUO07-D28oeK6b.js +1 -0
  30. package/site/dist/assets/{ConnectPhoneForm-Dek5xn4C-BEA4FmhI.js → ConnectPhoneForm-Dek5xn4C-EEdkKeTp.js} +1 -1
  31. package/site/dist/assets/ConnectWalletView-DqI-PTvX-C2mEzukj.js +74 -0
  32. package/site/dist/assets/{ConnectionStatusScreen-fUfROm9m-BeWLchcf.js → ConnectionStatusScreen-fUfROm9m-CH_7r8iV.js} +1 -1
  33. package/site/dist/assets/ConnectionStatusScreen-fUfROm9m-Z33kis0B.js +1 -0
  34. package/site/dist/assets/{ConnectorUtil-Cq4lWnfe.js → ConnectorUtil-DH4NePk5.js} +1 -1
  35. package/site/dist/assets/{CopyToClipboard-i_OQSBJr-DujUHNzW.js → CopyToClipboard-i_OQSBJr-_G88JCVR.js} +1 -1
  36. package/site/dist/assets/{CopyableText-CQapvaMr-DMIdpDaU.js → CopyableText-CQapvaMr-CGGfc_zM.js} +1 -1
  37. package/site/dist/assets/{CrossAppAuthScreen-CLw7ymZq-Csju14vF.js → CrossAppAuthScreen-CLw7ymZq-C9Okoc0V.js} +1 -1
  38. package/site/dist/assets/{CustomLandingScreenView-Cm_MBSyX-CBOrbNLo.js → CustomLandingScreenView-Cm_MBSyX-D2l6hdSl.js} +1 -1
  39. package/site/dist/assets/{DelegatedActionsConsentScreen-DYF2U4y5-BL5hzNUI.js → DelegatedActionsConsentScreen-DYF2U4y5-Dda3KKqS.js} +1 -1
  40. package/site/dist/assets/{DelegatedActionsRevokeScreen-bPp6Uwyh-fcO51q5H.js → DelegatedActionsRevokeScreen-bPp6Uwyh-DG8kJPt1.js} +1 -1
  41. package/site/dist/assets/{DepositAddressAddressStepView-4vdkb55L-B3vY888G.js → DepositAddressAddressStepView-4vdkb55L-CcOUfn6f.js} +1 -1
  42. package/site/dist/assets/{DepositAddressScreen-DBLRs7aI-DmdQaFI2.js → DepositAddressScreen-DBLRs7aI-DeituDNh.js} +1 -1
  43. package/site/dist/assets/{DepositAddressV3Screen-CDqIEMQw-BoupRyfV.js → DepositAddressV3Screen-CDqIEMQw-FDg6K14-.js} +1 -1
  44. package/site/dist/assets/{EmailInputForm-Cqo1mda8-B2NG3K5V.js → EmailInputForm-Cqo1mda8-BmbxvPHC.js} +1 -1
  45. package/site/dist/assets/{EmbeddedWalletConnectingScreen-D4T7DUzs-D_AVgO4s.js → EmbeddedWalletConnectingScreen-D4T7DUzs-B05CQ9rx.js} +1 -1
  46. package/site/dist/assets/{EmbeddedWalletCreatedScreen-D7WhW5ve-CLsJbPYQ.js → EmbeddedWalletCreatedScreen-D7WhW5ve-Cxd1b9XH.js} +1 -1
  47. package/site/dist/assets/{EmbeddedWalletKeyExportScreen-CqV4NYQ3-C9sAExzE.js → EmbeddedWalletKeyExportScreen-CqV4NYQ3-CrJy0ViX.js} +1 -1
  48. package/site/dist/assets/{EmbeddedWalletOnAccountCreateScreen-BoKb3Q2S-DxaWAAKa.js → EmbeddedWalletOnAccountCreateScreen-BoKb3Q2S-Bakaa3zu.js} +1 -1
  49. package/site/dist/assets/{EmbeddedWalletPasswordUpdateScreen-D3rMlqS7-CxrfLr5q.js → EmbeddedWalletPasswordUpdateScreen-D3rMlqS7-j78vKrcj.js} +1 -1
  50. package/site/dist/assets/{EmbeddedWalletPasswordUpdateSplashScreen-BPFkWJeE-DHZRGoTN.js → EmbeddedWalletPasswordUpdateSplashScreen-BPFkWJeE-D3dr7W9_.js} +1 -1
  51. package/site/dist/assets/{EnrollTotp-Dibew4dp-SA2pvNEc.js → EnrollTotp-Dibew4dp-BXbYV8nI.js} +1 -1
  52. package/site/dist/assets/{EnvelopeIcon-Dh2vSVj4.js → EnvelopeIcon-DjPofnRI.js} +1 -1
  53. package/site/dist/assets/{ErrorBanner-BcpGRt0h-BKOYTyCi.js → ErrorBanner-BcpGRt0h-BhH6_V-9.js} +1 -1
  54. package/site/dist/assets/{ErrorMessage-D8VaAP5m-CrZOnUyg.js → ErrorMessage-D8VaAP5m-Bs7uX2a9.js} +1 -1
  55. package/site/dist/assets/{ErrorScreen-DipdTWzE-c8g8En21.js → ErrorScreen-DipdTWzE-BgPRgnOb.js} +1 -1
  56. package/site/dist/assets/ErrorScreen-DipdTWzE-CvxXC6pz.js +1 -0
  57. package/site/dist/assets/{ExclamationCircleIcon-DUA2wMfO.js → ExclamationCircleIcon-BE-WGrut.js} +1 -1
  58. package/site/dist/assets/{ExclamationTriangleIcon-eZfaqcFq.js → ExclamationTriangleIcon-Ca1Xlc_f.js} +1 -1
  59. package/site/dist/assets/{FarcasterConnectStatusScreen-51tjUxqq-s_s5M2CZ.js → FarcasterConnectStatusScreen-51tjUxqq-De2JvZdV.js} +1 -1
  60. package/site/dist/assets/{FarcasterSignerStatusScreen-6x-Uh95G-BHBR4k8H.js → FarcasterSignerStatusScreen-6x-Uh95G-bLp3hXoO.js} +1 -1
  61. package/site/dist/assets/FiatOnrampScreen-BAhYeiTI-Jr6D6JiZ.js +491 -0
  62. package/site/dist/assets/{FingerPrintIcon-Dm6kxmg7.js → FingerPrintIcon-DOCbS93y.js} +1 -1
  63. package/site/dist/assets/{FundSolWalletWithExternalSolanaWallet-WtLwYaOl-B8TRV36j.js → FundSolWalletWithExternalSolanaWallet-WtLwYaOl-A_G5kfa1.js} +1 -1
  64. package/site/dist/assets/{FundWalletMethodHeader-BWNkokCT-BQdbJ5Bb.js → FundWalletMethodHeader-BWNkokCT-LPv35wkD.js} +1 -1
  65. package/site/dist/assets/{FundWithBankDepositScreen-DajkHxBD-9rPtyA3d.js → FundWithBankDepositScreen-DajkHxBD-0hfGrfvf.js} +1 -1
  66. package/site/dist/assets/{FundingEditAmountScreen-CpvpiO4M-GaXigGI9.js → FundingEditAmountScreen-CpvpiO4M-Dz0s_NWR.js} +1 -1
  67. package/site/dist/assets/{FundingMethodSelectionScreen-Db7vhRlE-UsmtTqv4.js → FundingMethodSelectionScreen-Db7vhRlE-ZGm-3-Io.js} +1 -1
  68. package/site/dist/assets/{GlobeAltIcon-vqrVV5ho.js → GlobeAltIcon-BBRl2MMn.js} +1 -1
  69. package/site/dist/assets/{GooglePay-B53WnudL-BX5_WtCx.js → GooglePay-B53WnudL-BGiVpB8y.js} +1 -1
  70. package/site/dist/assets/{HCaptchaWrapper-CUi9LJsp-D-I8j7NO.js → HCaptchaWrapper-CUi9LJsp-CHdfIeD_.js} +3 -3
  71. package/site/dist/assets/{InAppBrowserLoginNotPossible-BMR9br1T-BY3j50El.js → InAppBrowserLoginNotPossible-BMR9br1T-Cgoiow3m.js} +1 -1
  72. package/site/dist/assets/{InfoBanner-Cb3p1z12-DLBl_Ywy.js → InfoBanner-Cb3p1z12-_YqQmRiu.js} +1 -1
  73. package/site/dist/assets/{InjectedWalletIcon-DLcYOGDj-DLSV_NjP.js → InjectedWalletIcon-DLcYOGDj-tuIrKQHH.js} +1 -1
  74. package/site/dist/assets/{InstallWalletScreen-DTA8dwLv-CxreyXoD.js → InstallWalletScreen-DTA8dwLv-BMU_wa61.js} +1 -1
  75. package/site/dist/assets/{JsonTree-BHzNC-ic-DcNcbSoM.js → JsonTree-BHzNC-ic-DcVr0YF0.js} +1 -1
  76. package/site/dist/assets/{LabelXs-oqZNqbm_-iafrj25N.js → LabelXs-oqZNqbm_-CNprGVQM.js} +1 -1
  77. package/site/dist/assets/LandingScreen-CGWUoSUG-fH6rsQen.js +1 -0
  78. package/site/dist/assets/{Layouts-BMRfo5hw-CeCOyCLK.js → Layouts-BMRfo5hw-e-sepi6F.js} +1 -1
  79. package/site/dist/assets/{Link-BdDilT2T-BEDEdHuS.js → Link-BdDilT2T-BdwlRJch.js} +1 -1
  80. package/site/dist/assets/{LinkConflictScreen-C3ZEPsgl-ClWoqvEL.js → LinkConflictScreen-C3ZEPsgl-BXKN2Qm5.js} +1 -1
  81. package/site/dist/assets/LinkEmailScreen-dKo9frwc-Cyn7Q8p1.js +1 -0
  82. package/site/dist/assets/{LinkPasskeyScreen-zbrl_AI_-D72Gb0LW.js → LinkPasskeyScreen-zbrl_AI_-CWiqnwLM.js} +1 -1
  83. package/site/dist/assets/LinkPasskeyScreen-zbrl_AI_-YmDevJzf.js +1 -0
  84. package/site/dist/assets/{LinkPhoneScreen-oIUpfj0w-C0DuD14j.js → LinkPhoneScreen-oIUpfj0w-h7shW-Ay.js} +1 -1
  85. package/site/dist/assets/{Loader-UAZqxsnw-Cy7hEE2f.js → Loader-UAZqxsnw-DJEVblm1.js} +1 -1
  86. package/site/dist/assets/{LoadingSkeleton-BMsgO5PV-CiEyS5PZ.js → LoadingSkeleton-BMsgO5PV-D2atjsP5.js} +1 -1
  87. package/site/dist/assets/{LockClosedIcon-BgY_5v_Z.js → LockClosedIcon-9EFzWK1C.js} +1 -1
  88. package/site/dist/assets/{LoginFailedScreen-CN0dJV6U-DhUMiJZJ.js → LoginFailedScreen-CN0dJV6U-By3Si77a.js} +1 -1
  89. package/site/dist/assets/{ManualTransferScreen-CHqcuqbs-tXiZDHmN.js → ManualTransferScreen-CHqcuqbs-BAHPY8rs.js} +1 -1
  90. package/site/dist/assets/{MfaAuthEnrollmentFlowScreen-Dj7gPTRC-CaW7xeCC.js → MfaAuthEnrollmentFlowScreen-Dj7gPTRC-CLjffFG1.js} +1 -1
  91. package/site/dist/assets/{MfaAuthVerifyFlowScreen-DbFpyWMy-CeRqvx8k.js → MfaAuthVerifyFlowScreen-DbFpyWMy-BmQg1Y61.js} +1 -1
  92. package/site/dist/assets/{MfaEnrollmentFlowScreen-DhLnGgnr-BkN1k4lh.js → MfaEnrollmentFlowScreen-DhLnGgnr-DmBtTtlw.js} +1 -1
  93. package/site/dist/assets/{MfaVerifyFlowScreen-C_XPjMRP-CXSqLVbE.js → MfaVerifyFlowScreen-C_XPjMRP-4a683Bmf.js} +1 -1
  94. package/site/dist/assets/{ModalFooter-BCuEK_nz-c-khvG4Y.js → ModalFooter-BCuEK_nz-C_71qsaz.js} +1 -1
  95. package/site/dist/assets/{MoonpayStatusScreen-CzTUtokc-BRFN2eXr.js → MoonpayStatusScreen-CzTUtokc-DEHHcEf8.js} +1 -1
  96. package/site/dist/assets/{OAuthStatusScreen-ufbOa-da-CeiGcSia.js → OAuthStatusScreen-ufbOa-da-BjAb_WsY.js} +1 -1
  97. package/site/dist/assets/{OpenLink-CUpJ1mOr-DfAvJRyK.js → OpenLink-CUpJ1mOr-BLWFsPOW.js} +1 -1
  98. package/site/dist/assets/{PasskeySelectSignupOrLogin-xh2ScC_l-CIf5I7wU.js → PasskeySelectSignupOrLogin-xh2ScC_l-2PJTJxX-.js} +1 -1
  99. package/site/dist/assets/{PasskeyStatusScreen-Bla8MaOk-CLoL7QC-.js → PasskeyStatusScreen-Bla8MaOk-DCEg761l.js} +1 -1
  100. package/site/dist/assets/{PasswordRecoveryScreen-awGXZkQk-B9F67IYV.js → PasswordRecoveryScreen-awGXZkQk-8nVjNc8k.js} +1 -1
  101. package/site/dist/assets/{PhoneIcon-CvIiPwYQ.js → PhoneIcon-CZ47md80.js} +1 -1
  102. package/site/dist/assets/{PinInput-DbZ0b1i1-CDXZBdQx.js → PinInput-DbZ0b1i1-BrTXu3Km.js} +1 -1
  103. package/site/dist/assets/{PrivyPluginContext-DA-yS5vO-CtQWBiV2.js → PrivyPluginContext-DA-yS5vO-CY60yubk.js} +1 -1
  104. package/site/dist/assets/{QrCode-DbnZwlkH-h6Bhoe5U.js → QrCode-DbnZwlkH-CcMrWV5D.js} +2 -2
  105. package/site/dist/assets/{RecoveryOAuthStatusScreen-CsgtTI2x-D-A5P3PX.js → RecoveryOAuthStatusScreen-CsgtTI2x-DgeDnHOK.js} +1 -1
  106. package/site/dist/assets/{RecoveryPasswordCreateScreen-Be-qJ-LU-C8lTSeSr.js → RecoveryPasswordCreateScreen-Be-qJ-LU-CvJJwLhK.js} +1 -1
  107. package/site/dist/assets/{RecoverySelectionScreen-D1iGtpmi-P5P3plkH.js → RecoverySelectionScreen-D1iGtpmi-CADtGtSV.js} +1 -1
  108. package/site/dist/assets/{SIWXUtil-TUCxa7aA.js → SIWXUtil-Cpiv91-M.js} +1 -1
  109. package/site/dist/assets/{Screen-D30meWsY-CCeVNuWs.js → Screen-D30meWsY-vEusJ7KX.js} +1 -1
  110. package/site/dist/assets/{ScreenHeader-CHmc4-Lu-DjyrH7IK.js → ScreenHeader-CHmc4-Lu-BvGTLg53.js} +1 -1
  111. package/site/dist/assets/{ScreenLayout-OwaQQcxH-CrQM6kvA.js → ScreenLayout-OwaQQcxH-cfOTmyl0.js} +1 -1
  112. package/site/dist/assets/{SelectSourceAsset-CWFog6gm-D7yTw87h.js → SelectSourceAsset-CWFog6gm-DxYklZYs.js} +1 -1
  113. package/site/dist/assets/{SetAutomaticRecoveryScreen-BO_OEqAZ-f0iDIGmw.js → SetAutomaticRecoveryScreen-BO_OEqAZ-oeqeo05x.js} +1 -1
  114. package/site/dist/assets/{SetWalletPasswordForm-DwCTVtAh-kq1zvA7d.js → SetWalletPasswordForm-DwCTVtAh-BxFee9UA.js} +1 -1
  115. package/site/dist/assets/{ShieldCheckIcon-o6RHYev1.js → ShieldCheckIcon-eFjsosCA.js} +1 -1
  116. package/site/dist/assets/{SignRequestScreen-BHKv32KR-DDpMYyJ1.js → SignRequestScreen-BHKv32KR-z8ixfIma.js} +1 -1
  117. package/site/dist/assets/{SolanaWalletConnector-C7Lqk-Wz-DPwhuzcI.js → SolanaWalletConnector-C7Lqk-Wz-Bc_lvdiF.js} +1 -1
  118. package/site/dist/assets/{StackedContainer-B2vaEl56-eQCM2cmv.js → StackedContainer-B2vaEl56-Do5dXB8-.js} +1 -1
  119. package/site/dist/assets/{StandardSignAndSendTransactionScreen-CfhIXVtd-BJ-onCjv.js → StandardSignAndSendTransactionScreen-CfhIXVtd-DudetZAc.js} +1 -1
  120. package/site/dist/assets/{Subtitle-CV-2yKE4-zxWw2m1Q.js → Subtitle-CV-2yKE4-DV0o1av3.js} +1 -1
  121. package/site/dist/assets/{TelegramAuthScreen-UL9zLfO8-NWlMgNRX.js → TelegramAuthScreen-UL9zLfO8-Bo3sONvf.js} +1 -1
  122. package/site/dist/assets/{Title-BnzYV3Is-B_JpTatT.js → Title-BnzYV3Is-C3qOPnO_.js} +1 -1
  123. package/site/dist/assets/{TodoList-DnyULl18-C8Eyy28X.js → TodoList-DnyULl18-BvxvubbF.js} +1 -1
  124. package/site/dist/assets/{TransactionDetails-e9nesl30-C4MpIHR-.js → TransactionDetails-e9nesl30-WWflkOIi.js} +1 -1
  125. package/site/dist/assets/{TransactionErrorView-BDBNqA_f-p1T9WVMx.js → TransactionErrorView-BDBNqA_f-CotYKcgf.js} +1 -1
  126. package/site/dist/assets/{TransferFromWalletScreen-Qvn1Yuno-88IQcRnY.js → TransferFromWalletScreen-Qvn1Yuno-sVFlWqa8.js} +1 -1
  127. package/site/dist/assets/{TransferOrBridgeLoadingScreen-Dl1I_iIz-1fDAIxAf.js → TransferOrBridgeLoadingScreen-Dl1I_iIz-CV2-mY19.js} +1 -1
  128. package/site/dist/assets/{TurnstileWrapper-B7sNddys-Jwy1tJtm.js → TurnstileWrapper-B7sNddys-oPbuMTQt.js} +1 -1
  129. package/site/dist/assets/{UpdateEmailScreen-DVOhPV0H-Jj2DQW8D.js → UpdateEmailScreen-DVOhPV0H-D_mjSpAy.js} +1 -1
  130. package/site/dist/assets/{UpdatePhoneScreen-CXRswTNZ-DwYIUBqi.js → UpdatePhoneScreen-CXRswTNZ-6RLG0ahv.js} +1 -1
  131. package/site/dist/assets/{UserLimitReachedScreen-5we2DHn8-D7m70C4b.js → UserLimitReachedScreen-5we2DHn8-CaVN0bti.js} +1 -1
  132. package/site/dist/assets/{Value-DTgR824E-BRuIGiec.js → Value-DTgR824E-Bp6WGZZm.js} +1 -1
  133. package/site/dist/assets/{WalletCards-DH1rqayz-Bgp9Fsgs.js → WalletCards-DH1rqayz-D3cOTb9x.js} +1 -1
  134. package/site/dist/assets/{WalletIcon-gKf0gTw6.js → WalletIcon-DOIZhb2l.js} +1 -1
  135. package/site/dist/assets/{WalletInfoCard-sq_2wgFg-DpNSAGte.js → WalletInfoCard-sq_2wgFg-bOqfl5MA.js} +1 -1
  136. package/site/dist/assets/{WalletInterstitialScreen-Sh7LfsAh-DG-RuO-F.js → WalletInterstitialScreen-Sh7LfsAh-DWaVkMCA.js} +1 -1
  137. package/site/dist/assets/{WalletLink-DK5LB5Ha-DHaL350n.js → WalletLink-DK5LB5Ha-DjUZvqs-.js} +1 -1
  138. package/site/dist/assets/WalletOverflowButton-bfCnp-9T-B6P7DQXA.js +1 -0
  139. package/site/dist/assets/{WarningBanner-ZZqCEtZK-2eU4Qo74.js → WarningBanner-ZZqCEtZK-Bc2YKZb7.js} +1 -1
  140. package/site/dist/assets/__vite-browser-external-NciY4Vu1.js +1 -0
  141. package/site/dist/assets/{_esm-BdeM6pxJ.js → _esm-BZP3cXTv.js} +1 -1
  142. package/site/dist/assets/_esm-ZmzBJpEs.js +6 -0
  143. package/site/dist/assets/{accounts-D96UKWkC.js → accounts-D4AXF17G.js} +1 -1
  144. package/site/dist/assets/accounts-IkdFx9nq.js +1 -0
  145. package/site/dist/assets/{baseSepolia-DX-qGsik.js → baseSepolia-Bn1j1Ysw.js} +1 -1
  146. package/site/dist/assets/{basic-oIwwSyu4.js → basic-Cz1YiCSk.js} +4 -4
  147. package/site/dist/assets/{ccip-BZvRTL6g.js → ccip-B1J3oTZx.js} +2 -2
  148. package/site/dist/assets/ccip-Bd7261zy.js +1 -0
  149. package/site/dist/assets/{ccip-65sIfSPR.js → ccip-D6EHKpjI.js} +1 -1
  150. package/site/dist/assets/{chain-DM3oH6Px.js → chain-scefkYIH.js} +3 -6
  151. package/site/dist/assets/check-DHnllI8N.js +1 -0
  152. package/site/dist/assets/{chevron-down-BSsbXkK-.js → chevron-down-1y-r4bGO.js} +1 -1
  153. package/site/dist/assets/{circle-alert-DWaeLZNj.js → circle-alert-OwxamXUX.js} +1 -1
  154. package/site/dist/assets/{circle-check-big-Chb1ivw9.js → circle-check-big-3sZGVC10.js} +1 -1
  155. package/site/dist/assets/{circle-x-AV9Cet0R.js → circle-x-DQjNUV9J.js} +1 -1
  156. package/site/dist/assets/client-B-BpRtwY.js +1 -0
  157. package/site/dist/assets/client-BfIR1FvH.js +9 -0
  158. package/site/dist/assets/coinbase-DCPC2L_R-YEuIn3jh.js +3 -0
  159. package/site/dist/assets/{copy-Ckr0AkL6.js → copy-DMOX_yn7.js} +1 -1
  160. package/site/dist/assets/core-GIEmxmAa.js +12 -0
  161. package/site/dist/assets/{createLucideIcon-IPW50ckY.js → createLucideIcon-BsERoFTA.js} +1 -1
  162. package/site/dist/assets/{defineChain-CiuCXUZW.js → defineChain-B-SQDLTG.js} +1 -1
  163. package/site/dist/assets/{dijkstra-Drfl93V4.js → dijkstra-CY95afk4.js} +1 -1
  164. package/site/dist/assets/dist-Cp6IXeJd.js +1 -0
  165. package/site/dist/assets/{dist-Cm7pNAtL.js → dist-CrNxmdZj.js} +1 -1
  166. package/site/dist/assets/{dist-DnGANz51.js → dist-DYGtf4F0.js} +4 -4
  167. package/site/dist/assets/embed.worker-Cnl4VGr3.js +1 -0
  168. package/site/dist/assets/{errors-BQ3N-RVt-BLqjTPNR.js → errors-BQ3N-RVt-CZPAWCgC.js} +1 -1
  169. package/site/dist/assets/{esm-B5cbIQaz.js → esm-Co94ENUV.js} +17 -17
  170. package/site/dist/assets/{esm-ByALO6mA.js → esm-bb8SANZh.js} +1 -1
  171. package/site/dist/assets/{ethers-zTjbodk5-wHhL_BQ1.js → ethers-zTjbodk5-Cs648CnD.js} +1 -1
  172. package/site/dist/assets/{eventemitter3-CL76jPsW.js → eventemitter3-Dzc_0Uq2.js} +1 -1
  173. package/site/dist/assets/{external-link-D-uehwM2.js → external-link-BBPG3rG7.js} +1 -1
  174. package/site/dist/assets/{farcaster-DPlSjvF5-BqTvDXBR.js → farcaster-DPlSjvF5-CzBCmgyL.js} +1 -1
  175. package/site/dist/assets/{features-DQ0UYy6K.js → features-CuiHbgEJ.js} +1 -1
  176. package/site/dist/assets/{fingerprint-pattern-D8ytA16Q.js → fingerprint-pattern-CjLtyIxB.js} +1 -1
  177. package/site/dist/assets/floating-ui.react-DmaCfayr.js +1 -0
  178. package/site/dist/assets/{floating-ui.react-dom-DKWOL9UG.js → floating-ui.react-dom-CaoMF8mP.js} +1 -1
  179. package/site/dist/assets/{get-entropy-details-for-user-dHRH5Gpi-Dukf7_kJ.js → get-entropy-details-for-user-dHRH5Gpi-BNiOFXbK.js} +1 -1
  180. package/site/dist/assets/{getErc20Balance-jXNpFf0N-Bb9WM31M.js → getErc20Balance-jXNpFf0N-q4bV8kQq.js} +1 -1
  181. package/site/dist/assets/{getErc20TokenInfo-BNTrzLMP-KPrdn04K.js → getErc20TokenInfo-BNTrzLMP-DcnTFrXN.js} +1 -1
  182. package/site/dist/assets/{guards-BIW-GiMJ-CHfXo8XI.js → guards-BIW-GiMJ-D3tWTQAR.js} +1 -1
  183. package/site/dist/assets/{hourglass-CPG1HZmf.js → hourglass-D_GfQdJr.js} +1 -1
  184. package/site/dist/assets/{id-UqEwL2BI-BkKm533U.js → id-UqEwL2BI-CTlvRMA5.js} +1 -1
  185. package/site/dist/assets/{index-BdEw5wyl-ChSJvPZk.js → index-BdEw5wyl-kLbhqLbv.js} +1 -1
  186. package/site/dist/assets/index-C2h3EneX.js +8 -0
  187. package/site/dist/assets/{index-CWARkn2w-Cezl_uBr.js → index-CWARkn2w-DxuckIFn.js} +1 -1
  188. package/site/dist/assets/{index-DvMddJcd-BatvgC-S.js → index-DvMddJcd-CNBb4VUn.js} +1 -1
  189. package/site/dist/assets/{index-YiCw0Y_x-CX5i3Z87.js → index-YiCw0Y_x-Czl0tWfF.js} +5 -6
  190. package/site/dist/assets/{index.es-BmqyoBEM.js → index.es-Crd0TyUS.js} +1 -1
  191. package/site/dist/assets/index.es-DQbup1WG.js +3 -0
  192. package/site/dist/assets/{isPaymentRequestAvailable-Bq1cemEn-By6r0dVB.js → isPaymentRequestAvailable-Bq1cemEn-Cjf3l05I.js} +1 -1
  193. package/site/dist/assets/{jsx-runtime-BbDfbRii.js → jsx-runtime-CndCZlyt.js} +1 -1
  194. package/site/dist/assets/{landmark-CH6LV6F0.js → landmark-BZPqMFEf.js} +1 -1
  195. package/site/dist/assets/lib-DGtzi2DK.js +1 -0
  196. package/site/dist/assets/{localBatchGatewayRequest-3kLrX_c7.js → localBatchGatewayRequest-B71J8sQ9.js} +7 -10
  197. package/site/dist/assets/{lock-DcskI4Bb.js → lock-DyN_c-ud.js} +1 -1
  198. package/site/dist/assets/{mail-Bs0r5yOi.js → mail-V_mcPb64.js} +1 -1
  199. package/site/dist/assets/{modal-context-CwmSeFcv-DruX9J1E.js → modal-context-CwmSeFcv-DPWNJrfK.js} +1 -1
  200. package/site/dist/assets/{ofetch.CWycOUEr-CHp-crOQ.js → ofetch.CWycOUEr-Duby3iHT.js} +1 -1
  201. package/site/dist/assets/parseEther-CHS0GNkM.js +1 -0
  202. package/site/dist/assets/{pkce-DXF0yKjP-ChQhE0st.js → pkce-DXF0yKjP-7_VY-d83.js} +1 -1
  203. package/site/dist/assets/preload-helper-CRzLMJPS.js +1 -0
  204. package/site/dist/assets/{privy-context-81KmsBw2-CjWGzyg7.js → privy-context-81KmsBw2-DiR6-Yq8.js} +1 -1
  205. package/site/dist/assets/{react-DrJ0MmMO.js → react-BfYA1q0G.js} +1 -1
  206. package/site/dist/assets/react-CK2HRI1t.js +1 -0
  207. package/site/dist/assets/{react-DQnMl2Xv.js → react-DxGeY8B8.js} +1 -1
  208. package/site/dist/assets/{react-dom-5dW7aKoP.js → react-dom-BI2Koe4o.js} +1 -1
  209. package/site/dist/assets/{reservoir-x-nGuZkT-BMX127i6.js → reservoir-x-nGuZkT-BguVFH3D.js} +1 -1
  210. package/site/dist/assets/roles-BDPDWrwo.js +1 -0
  211. package/site/dist/assets/rolldown-runtime-Bjp52BOI.js +1 -0
  212. package/site/dist/assets/secp256k1-BeYL8aZl.js +1 -0
  213. package/site/dist/assets/{secp256k1-_MleGpqL.js → secp256k1-Bh4MSkhz.js} +1 -1
  214. package/site/dist/assets/secp256k1-Ci4cqHl0.js +1 -0
  215. package/site/dist/assets/secp256k1-DsxXqbXv.js +1 -0
  216. package/site/dist/assets/secp256k1-N9RUmafO.js +1 -0
  217. package/site/dist/assets/{serializeAuthorizationList-CX8hGL56.js → serializeAuthorizationList-DGMik9Wx.js} +1 -1
  218. package/site/dist/assets/{serializeSignature-DfxkPnu-.js → serializeSignature-CWKpxoab.js} +1 -1
  219. package/site/dist/assets/sha2-C6s7zZmb.js +1 -0
  220. package/site/dist/assets/{shared-DRZUmnL5-xqAUARWo.js → shared-DRZUmnL5-BewE5wK8.js} +1 -1
  221. package/site/dist/assets/{shared-FM0rljBt--Avg6q2R.js → shared-FM0rljBt-CxLACri_.js} +1 -1
  222. package/site/dist/assets/shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BkAKsRNi.js +1 -0
  223. package/site/dist/assets/{simulateTransaction-CfuOrae4-64lWYJAL.js → simulateTransaction-CfuOrae4-PjA_tGjX.js} +1 -1
  224. package/site/dist/assets/{smartphone-CcEZ-XAy.js → smartphone-3p8nFSTE.js} +1 -1
  225. package/site/dist/assets/{storage-Ufl800Ne-D0bZBw-H.js → storage-Ufl800Ne-1qCR2JMO.js} +7 -8
  226. package/site/dist/assets/{stringify-BlDm7tuc.js → stringify-DqUj9VzO.js} +2 -3
  227. package/site/dist/assets/stripe.esm-DEi2D291.js +2 -0
  228. package/site/dist/assets/{styles-BsotlekN-CXEB4Ud9.js → styles-BsotlekN-Aq27nZGc.js} +1 -1
  229. package/site/dist/assets/{styles-Cm9H63WO-Br4QtzUL.js → styles-Cm9H63WO-p_ic_dxE.js} +1 -1
  230. package/site/dist/assets/{styles-DVyDvTdj-BTABn2K8.js → styles-DVyDvTdj-CjsWqAld.js} +1 -1
  231. package/site/dist/assets/{styles-hslXy6xG-D-49b1rk.js → styles-hslXy6xG-D5QHIrJU.js} +1 -1
  232. package/site/dist/assets/{telegram-B-JqnkqZ-RBoY3PLx.js → telegram-B-JqnkqZ-Dqkm4rDn.js} +1 -1
  233. package/site/dist/assets/{to-ui-error-DWe-qwS3-Cx2bk1kZ.js → to-ui-error-DWe-qwS3-Bi1HUQI9.js} +1 -1
  234. package/site/dist/assets/toViemAccount-B5iDGq1b-CdFZwv07.js +2 -0
  235. package/site/dist/assets/transformers.web-BTyOEJ0C.js +40 -0
  236. package/site/dist/assets/transformers.web-CUZUFjAK.js +49 -0
  237. package/site/dist/assets/{triangle-alert-CWjYH75H.js → triangle-alert-BG3Qw-Hq.js} +1 -1
  238. package/site/dist/assets/{twitch-5IOe4sIQ-lDtgk0os.js → twitch-5IOe4sIQ-CaXHFlAu.js} +1 -1
  239. package/site/dist/assets/{use-headless-crypto-deposit-Yn-QRLB3-LUIVFBSd.js → use-headless-crypto-deposit-Yn-QRLB3-CQqeyhGY.js} +1 -1
  240. package/site/dist/assets/{use-unlink-wallet-BKK4_5Ur-CC2pq27z.js → use-unlink-wallet-BKK4_5Ur-C0xQN_Lp.js} +1 -1
  241. package/site/dist/assets/{useActiveWallet-B-yZYGc6-D7Ik-LxJ.js → useActiveWallet-B-yZYGc6-BkK6rFBm.js} +1 -1
  242. package/site/dist/assets/{useGetSolPrice-x7gfUIHJ-D1hmQfpA.js → useGetSolPrice-x7gfUIHJ-CLVXqv6I.js} +1 -1
  243. package/site/dist/assets/{useGetTokenPrice-CaoUkb79-ZnbuJ-vP.js → useGetTokenPrice-CaoUkb79-DAXXs3rs.js} +1 -1
  244. package/site/dist/assets/{useI18n-C-5n_noF-BcqC76yj.js → useI18n-C-5n_noF-CGpkgIVy.js} +1 -1
  245. package/site/dist/assets/{useWalletBalance-CZnP5f_f-Dw2GIJ4g.js → useWalletBalance-CZnP5f_f-Cfd64m4n.js} +1 -1
  246. package/site/dist/assets/{useWallets-X1ndvJ_U-DRjz7uYD.js → useWallets-X1ndvJ_U-CAYqg7Za.js} +1 -1
  247. package/site/dist/assets/{w3m-modal-BeVrBOIf.js → w3m-modal-B4H_uiPH.js} +2 -2
  248. package/site/dist/assets/{wallet-Bn85Sg2W.js → wallet-BNI12IYk.js} +1 -1
  249. package/site/dist/assets/wallet-CITSaPlB.js +2 -0
  250. package/site/dist/assets/{wallet-connect-BvJtUsDt-Y03hhqFN.js → wallet-connect-BvJtUsDt-CVlSNIXP.js} +1 -1
  251. package/site/dist/assets/{walletconnect-registry-xxG8XLCb-D1SSFvMp.js → walletconnect-registry-xxG8XLCb-BpzpBq5s.js} +1 -1
  252. package/site/dist/assets/walletconnect-v2-3frQFwbg-CzZ6oybX.js +12 -0
  253. package/site/dist/assets/{wui-ux-by-reown-D34ILNLS.js → wui-ux-by-reown-XyHdtV1O.js} +1 -1
  254. package/site/dist/assets/x-gjDrY2rk.js +1 -0
  255. package/site/dist/index.html +5 -5
  256. package/site/feed.js +16 -1
  257. package/site/no-model.js +4 -0
  258. package/site/worker.js +586 -59
  259. package/src/agent/agent-card.js +20 -11
  260. package/src/agent/mcp.js +190 -324
  261. package/src/agent/view-tools.js +46 -13
  262. package/src/agent/x402.js +340 -44
  263. package/src/core/embed.js +51 -52
  264. package/src/core/embed.worker.js +1 -1
  265. package/src/core/shard.js +7 -3
  266. package/src/discover/apps.js +41 -5
  267. package/src/discover/explore.js +50 -30
  268. package/src/market/reactions.js +2 -2
  269. package/src/publish/devnet.js +95 -0
  270. package/src/publish/init.js +74 -0
  271. package/src/publish/lint.js +2 -1
  272. package/src/publish/ship.js +559 -267
  273. package/src/publish/view-cli.js +14 -10
  274. package/src/publish/view.js +355 -218
  275. package/src/taste/taste-doc.js +3 -2
  276. package/src/taste/taste.js +2 -2
  277. package/src/taste/vault.js +3 -1
  278. package/template/README.md +49 -0
  279. package/template/app.json +27 -0
  280. package/template/eval/goals.md +7 -0
  281. package/template/eval/golden.jsonl +0 -0
  282. package/template/gitignore +3 -0
  283. package/template/package.json +13 -0
  284. package/template/wrangler.json +12 -0
  285. package/site/dist/assets/BridgeNetworkSelectionView-CFGjB2nO-CvsbQcFv.js +0 -68
  286. package/site/dist/assets/ConnectOrCreateScreen-CUUYUO07-crHzh-TL.js +0 -1
  287. package/site/dist/assets/ConnectWalletView-DqI-PTvX-CMQIad63.js +0 -74
  288. package/site/dist/assets/ConnectionStatusScreen-fUfROm9m-wu3a3kw4.js +0 -1
  289. package/site/dist/assets/ErrorScreen-DipdTWzE-DcxVjMO4.js +0 -1
  290. package/site/dist/assets/FiatOnrampScreen-BAhYeiTI-BH_sU6EV.js +0 -491
  291. package/site/dist/assets/LandingScreen-CGWUoSUG-DK1EY-6v.js +0 -1
  292. package/site/dist/assets/LinkEmailScreen-dKo9frwc-C3v7glH0.js +0 -1
  293. package/site/dist/assets/LinkPasskeyScreen-zbrl_AI_-DYIl5Kr2.js +0 -1
  294. package/site/dist/assets/WalletOverflowButton-bfCnp-9T-CUyIJFzt.js +0 -1
  295. package/site/dist/assets/__vite-browser-external-CitKSmYk.js +0 -1
  296. package/site/dist/assets/_esm-B26FZg5Y.js +0 -7
  297. package/site/dist/assets/accounts-DiZ-0VmN.js +0 -1
  298. package/site/dist/assets/ccip-DA_zG341.js +0 -1
  299. package/site/dist/assets/check-BPgcwEPP.js +0 -1
  300. package/site/dist/assets/client-CZG0ndth.js +0 -2
  301. package/site/dist/assets/client-Dsa7_3V3.js +0 -9
  302. package/site/dist/assets/coinbase-DCPC2L_R-D3aIgpyd.js +0 -3
  303. package/site/dist/assets/core-snws5xwv.js +0 -12
  304. package/site/dist/assets/dist-Dl07uGq1.js +0 -1
  305. package/site/dist/assets/embed.worker-ugGhEqCV.js +0 -1
  306. package/site/dist/assets/floating-ui.react-xRkl9O3u.js +0 -1
  307. package/site/dist/assets/index-1HYFYA-W.js +0 -8
  308. package/site/dist/assets/index.es-C1v1or--.js +0 -3
  309. package/site/dist/assets/lib-BsS8z8Lj.js +0 -1
  310. package/site/dist/assets/parseEther-VjhVo3dd.js +0 -1
  311. package/site/dist/assets/preload-helper-uBIymjUX.js +0 -1
  312. package/site/dist/assets/react-DCXkXSrv.js +0 -1
  313. package/site/dist/assets/roles-32M1l9jI.js +0 -1
  314. package/site/dist/assets/rolldown-runtime-BcKkbAw3.js +0 -1
  315. package/site/dist/assets/secp256k1-C4nzcPo-.js +0 -1
  316. package/site/dist/assets/secp256k1-D92aGNnU.js +0 -1
  317. package/site/dist/assets/secp256k1-DmbwyFau.js +0 -1
  318. package/site/dist/assets/secp256k1-xl2og-wO.js +0 -1
  319. package/site/dist/assets/sha2-BU_QyRTx.js +0 -1
  320. package/site/dist/assets/shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BK_FBkaE.js +0 -1
  321. package/site/dist/assets/stripe.esm-CZRDpc-N.js +0 -2
  322. package/site/dist/assets/toViemAccount-B5iDGq1b-Ba8L7zed.js +0 -2
  323. package/site/dist/assets/transformers.web-CVP3pJOS.js +0 -40
  324. package/site/dist/assets/transformers.web-D8W1u_I2.js +0 -49
  325. package/site/dist/assets/wallet-Bnzeiqed.js +0 -2
  326. package/site/dist/assets/walletconnect-v2-3frQFwbg-CrtLXofr.js +0 -12
  327. package/site/dist/assets/x-rlSp9U7W.js +0 -1
@@ -1,4 +1,4 @@
1
- import{s as e,t}from"./rolldown-runtime-BcKkbAw3.js";import"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as n}from"./jsx-runtime-BbDfbRii.js";import{t as r}from"./react-DrJ0MmMO.js";import{n as i}from"./modal-context-CwmSeFcv-DruX9J1E.js";import{c as a}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{a as o,i as s,o as c,t as l}from"./ModalFooter-BCuEK_nz-c-khvG4Y.js";import{a as u,c as d,d as f,f as p,h as m,i as h,l as g,m as _,n as v,o as y,p as b,r as x,s as S,t as C,u as w}from"./shared-DRZUmnL5-xqAUARWo.js";import{n as T,t as E}from"./Checkbox-D1EDeo41-rHlvsZzP.js";import{t as D}from"./ExclamationTriangleIcon-eZfaqcFq.js";import{n as O,o as k,u as A}from"./Layouts-BMRfo5hw-CeCOyCLK.js";import{n as j}from"./ScreenHeader-CHmc4-Lu-DjyrH7IK.js";import{t as M}from"./CheckCircleIcon-BM409mGI.js";var N=n(),P=e(r());function F({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3`}))}var I=P.forwardRef(F);function ee({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75`}))}var te=P.forwardRef(ee);function ne({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M15.75 5.25a3 3 0 0 1 3 3m3 0a6 6 0 0 1-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1 1 21.75 8.25Z`}))}var re=P.forwardRef(ne),L=e(t(((e,t)=>{var n=function(e,t){return Math.round(t*Math.log(e)/Math.LN2)},r=function(e){return function(t){return e.reduce(function(e,n){return e+(n.re.test(t)?n.length:0)},0)}}([{name:`lowercase`,re:/[a-z]/,length:26},{name:`uppercase`,re:/[A-Z]/,length:26},{name:`numbers`,re:/[0-9]/,length:10},{name:`symbols`,re:/[^a-zA-Z0-9]/,length:33}]);t.exports=function(e){return e?n(r(e),e.length):0}}))(),1);function R(e){return crypto.getRandomValues(new Uint8Array(e))}var z=256,B=65536;function V(){let[e]=R(1);return e}function H(){let[e,t]=R(2);return(e<<8)+t}function U(e){if(typeof e!=`number`||e<2||e>B)throw Error(`Invalid number: number must be at least two and at most ${B}`);let t=e>256,n=t?B:z,r=t?H:V,i=e*Math.floor(n/e);for(;;){let t=r();if(t<i)return t%e}}function W(e,t,n){if(typeof e!=`number`||e<1)throw Error(`Invalid argument: length must be a number greater than or equal to 1`);if(typeof t!=`number`||t<0)throw Error(`Invalid argument: start must be a number greater than or equal to 0`);if(typeof n!=`number`||n>B)throw Error(`Invalid argument: end must be a number less than or equal to ${B}`);if(n-t<2)throw Error(`Invalid range: range must contain at least two values`);let r=[];for(let i=0;i<e;i++)r[i]=t+U(n-t);return r}function G(e,t,n=`-`){if(typeof e!=`number`||e<1)throw Error(`Invalid argument: length argument must be a number greater than or equal to 1`);if(!Array.isArray(t)||t.length<2)throw Error(`Invalid argument: wordlist argument must be an array with length greater than or equal to 2`);if(typeof n!=`string`)throw Error(`Invalid argument: sep argument must be a string`);return W(e,0,t.length).reduce((e,r,i)=>{let a=t[r];return e+(i===0?a:n+a)},``)}var K=Object.freeze(`abacus.abdomen.abdominal.abide.abiding.ability.ablaze.able.abnormal.abrasion.abrasive.abreast.abridge.abroad.abruptly.absence.absentee.absently.absinthe.absolute.absolve.abstain.abstract.absurd.accent.acclaim.acclimate.accompany.account.accuracy.accurate.accustom.acetone.achiness.aching.acid.acorn.acquaint.acquire.acre.acrobat.acronym.acting.action.activate.activator.active.activism.activist.activity.actress.acts.acutely.acuteness.aeration.aerobics.aerosol.aerospace.afar.affair.affected.affecting.affection.affidavit.affiliate.affirm.affix.afflicted.affluent.afford.affront.aflame.afloat.aflutter.afoot.afraid.afterglow.afterlife.aftermath.aftermost.afternoon.aged.ageless.agency.agenda.agent.aggregate.aghast.agile.agility.aging.agnostic.agonize.agonizing.agony.agreeable.agreeably.agreed.agreeing.agreement.aground.ahead.ahoy.aide.aids.aim.ajar.alabaster.alarm.albatross.album.alfalfa.algebra.algorithm.alias.alibi.alienable.alienate.aliens.alike.alive.alkaline.alkalize.almanac.almighty.almost.aloe.aloft.aloha.alone.alongside.aloof.alphabet.alright.although.altitude.alto.aluminum.alumni.always.amaretto.amaze.amazingly.amber.ambiance.ambiguity.ambiguous.ambition.ambitious.ambulance.ambush.amendable.amendment.amends.amenity.amiable.amicably.amid.amigo.amino.amiss.ammonia.ammonium.amnesty.amniotic.among.amount.amperage.ample.amplifier.amplify.amply.amuck.amulet.amusable.amused.amusement.amuser.amusing.anaconda.anaerobic.anagram.anatomist.anatomy.anchor.anchovy.ancient.android.anemia.anemic.aneurism.anew.angelfish.angelic.anger.angled.angler.angles.angling.angrily.angriness.anguished.angular.animal.animate.animating.animation.animator.anime.animosity.ankle.annex.annotate.announcer.annoying.annually.annuity.anointer.another.answering.antacid.antarctic.anteater.antelope.antennae.anthem.anthill.anthology.antibody.antics.antidote.antihero.antiquely.antiques.antiquity.antirust.antitoxic.antitrust.antiviral.antivirus.antler.antonym.antsy.anvil.anybody.anyhow.anymore.anyone.anyplace.anything.anytime.anyway.anywhere.aorta.apache.apostle.appealing.appear.appease.appeasing.appendage.appendix.appetite.appetizer.applaud.applause.apple.appliance.applicant.applied.apply.appointee.appraisal.appraiser.apprehend.approach.approval.approve.apricot.april.apron.aptitude.aptly.aqua.aqueduct.arbitrary.arbitrate.ardently.area.arena.arguable.arguably.argue.arise.armadillo.armband.armchair.armed.armful.armhole.arming.armless.armoire.armored.armory.armrest.army.aroma.arose.around.arousal.arrange.array.arrest.arrival.arrive.arrogance.arrogant.arson.art.ascend.ascension.ascent.ascertain.ashamed.ashen.ashes.ashy.aside.askew.asleep.asparagus.aspect.aspirate.aspire.aspirin.astonish.astound.astride.astrology.astronaut.astronomy.astute.atlantic.atlas.atom.atonable.atop.atrium.atrocious.atrophy.attach.attain.attempt.attendant.attendee.attention.attentive.attest.attic.attire.attitude.attractor.attribute.atypical.auction.audacious.audacity.audible.audibly.audience.audio.audition.augmented.august.authentic.author.autism.autistic.autograph.automaker.automated.automatic.autopilot.available.avalanche.avatar.avenge.avenging.avenue.average.aversion.avert.aviation.aviator.avid.avoid.await.awaken.award.aware.awhile.awkward.awning.awoke.awry.axis.babble.babbling.babied.baboon.backache.backboard.backboned.backdrop.backed.backer.backfield.backfire.backhand.backing.backlands.backlash.backless.backlight.backlit.backlog.backpack.backpedal.backrest.backroom.backshift.backside.backslid.backspace.backspin.backstab.backstage.backtalk.backtrack.backup.backward.backwash.backwater.backyard.bacon.bacteria.bacterium.badass.badge.badland.badly.badness.baffle.baffling.bagel.bagful.baggage.bagged.baggie.bagginess.bagging.baggy.bagpipe.baguette.baked.bakery.bakeshop.baking.balance.balancing.balcony.balmy.balsamic.bamboo.banana.banish.banister.banjo.bankable.bankbook.banked.banker.banking.banknote.bankroll.banner.bannister.banshee.banter.barbecue.barbed.barbell.barber.barcode.barge.bargraph.barista.baritone.barley.barmaid.barman.barn.barometer.barrack.barracuda.barrel.barrette.barricade.barrier.barstool.bartender.barterer.bash.basically.basics.basil.basin.basis.basket.batboy.batch.bath.baton.bats.battalion.battered.battering.battery.batting.battle.bauble.bazooka.blabber.bladder.blade.blah.blame.blaming.blanching.blandness.blank.blaspheme.blasphemy.blast.blatancy.blatantly.blazer.blazing.bleach.bleak.bleep.blemish.blend.bless.blighted.blimp.bling.blinked.blinker.blinking.blinks.blip.blissful.blitz.blizzard.bloated.bloating.blob.blog.bloomers.blooming.blooper.blot.blouse.blubber.bluff.bluish.blunderer.blunt.blurb.blurred.blurry.blurt.blush.blustery.boaster.boastful.boasting.boat.bobbed.bobbing.bobble.bobcat.bobsled.bobtail.bodacious.body.bogged.boggle.bogus.boil.bok.bolster.bolt.bonanza.bonded.bonding.bondless.boned.bonehead.boneless.bonelike.boney.bonfire.bonnet.bonsai.bonus.bony.boogeyman.boogieman.book.boondocks.booted.booth.bootie.booting.bootlace.bootleg.boots.boozy.borax.boring.borough.borrower.borrowing.boss.botanical.botanist.botany.botch.both.bottle.bottling.bottom.bounce.bouncing.bouncy.bounding.boundless.bountiful.bovine.boxcar.boxer.boxing.boxlike.boxy.breach.breath.breeches.breeching.breeder.breeding.breeze.breezy.brethren.brewery.brewing.briar.bribe.brick.bride.bridged.brigade.bright.brilliant.brim.bring.brink.brisket.briskly.briskness.bristle.brittle.broadband.broadcast.broaden.broadly.broadness.broadside.broadways.broiler.broiling.broken.broker.bronchial.bronco.bronze.bronzing.brook.broom.brought.browbeat.brownnose.browse.browsing.bruising.brunch.brunette.brunt.brush.brussels.brute.brutishly.bubble.bubbling.bubbly.buccaneer.bucked.bucket.buckle.buckshot.buckskin.bucktooth.buckwheat.buddhism.buddhist.budding.buddy.budget.buffalo.buffed.buffer.buffing.buffoon.buggy.bulb.bulge.bulginess.bulgur.bulk.bulldog.bulldozer.bullfight.bullfrog.bullhorn.bullion.bullish.bullpen.bullring.bullseye.bullwhip.bully.bunch.bundle.bungee.bunion.bunkbed.bunkhouse.bunkmate.bunny.bunt.busboy.bush.busily.busload.bust.busybody.buzz.cabana.cabbage.cabbie.cabdriver.cable.caboose.cache.cackle.cacti.cactus.caddie.caddy.cadet.cadillac.cadmium.cage.cahoots.cake.calamari.calamity.calcium.calculate.calculus.caliber.calibrate.calm.caloric.calorie.calzone.camcorder.cameo.camera.camisole.camper.campfire.camping.campsite.campus.canal.canary.cancel.candied.candle.candy.cane.canine.canister.cannabis.canned.canning.cannon.cannot.canola.canon.canopener.canopy.canteen.canyon.capable.capably.capacity.cape.capillary.capital.capitol.capped.capricorn.capsize.capsule.caption.captivate.captive.captivity.capture.caramel.carat.caravan.carbon.cardboard.carded.cardiac.cardigan.cardinal.cardstock.carefully.caregiver.careless.caress.caretaker.cargo.caring.carless.carload.carmaker.carnage.carnation.carnival.carnivore.carol.carpenter.carpentry.carpool.carport.carried.carrot.carrousel.carry.cartel.cartload.carton.cartoon.cartridge.cartwheel.carve.carving.carwash.cascade.case.cash.casing.casino.casket.cassette.casually.casualty.catacomb.catalog.catalyst.catalyze.catapult.cataract.catatonic.catcall.catchable.catcher.catching.catchy.caterer.catering.catfight.catfish.cathedral.cathouse.catlike.catnap.catnip.catsup.cattail.cattishly.cattle.catty.catwalk.caucasian.caucus.causal.causation.cause.causing.cauterize.caution.cautious.cavalier.cavalry.caviar.cavity.cedar.celery.celestial.celibacy.celibate.celtic.cement.census.ceramics.ceremony.certainly.certainty.certified.certify.cesarean.cesspool.chafe.chaffing.chain.chair.chalice.challenge.chamber.chamomile.champion.chance.change.channel.chant.chaos.chaperone.chaplain.chapped.chaps.chapter.character.charbroil.charcoal.charger.charging.chariot.charity.charm.charred.charter.charting.chase.chasing.chaste.chastise.chastity.chatroom.chatter.chatting.chatty.cheating.cheddar.cheek.cheer.cheese.cheesy.chef.chemicals.chemist.chemo.cherisher.cherub.chess.chest.chevron.chevy.chewable.chewer.chewing.chewy.chief.chihuahua.childcare.childhood.childish.childless.childlike.chili.chill.chimp.chip.chirping.chirpy.chitchat.chivalry.chive.chloride.chlorine.choice.chokehold.choking.chomp.chooser.choosing.choosy.chop.chosen.chowder.chowtime.chrome.chubby.chuck.chug.chummy.chump.chunk.churn.chute.cider.cilantro.cinch.cinema.cinnamon.circle.circling.circular.circulate.circus.citable.citadel.citation.citizen.citric.citrus.city.civic.civil.clad.claim.clambake.clammy.clamor.clamp.clamshell.clang.clanking.clapped.clapper.clapping.clarify.clarinet.clarity.clash.clasp.class.clatter.clause.clavicle.claw.clay.clean.clear.cleat.cleaver.cleft.clench.clergyman.clerical.clerk.clever.clicker.client.climate.climatic.cling.clinic.clinking.clip.clique.cloak.clobber.clock.clone.cloning.closable.closure.clothes.clothing.cloud.clover.clubbed.clubbing.clubhouse.clump.clumsily.clumsy.clunky.clustered.clutch.clutter.coach.coagulant.coastal.coaster.coasting.coastland.coastline.coat.coauthor.cobalt.cobbler.cobweb.cocoa.coconut.cod.coeditor.coerce.coexist.coffee.cofounder.cognition.cognitive.cogwheel.coherence.coherent.cohesive.coil.coke.cola.cold.coleslaw.coliseum.collage.collapse.collar.collected.collector.collide.collie.collision.colonial.colonist.colonize.colony.colossal.colt.coma.come.comfort.comfy.comic.coming.comma.commence.commend.comment.commerce.commode.commodity.commodore.common.commotion.commute.commuting.compacted.compacter.compactly.compactor.companion.company.compare.compel.compile.comply.component.composed.composer.composite.compost.composure.compound.compress.comprised.computer.computing.comrade.concave.conceal.conceded.concept.concerned.concert.conch.concierge.concise.conclude.concrete.concur.condense.condiment.condition.condone.conducive.conductor.conduit.cone.confess.confetti.confidant.confident.confider.confiding.configure.confined.confining.confirm.conflict.conform.confound.confront.confused.confusing.confusion.congenial.congested.congrats.congress.conical.conjoined.conjure.conjuror.connected.connector.consensus.consent.console.consoling.consonant.constable.constant.constrain.constrict.construct.consult.consumer.consuming.contact.container.contempt.contend.contented.contently.contents.contest.context.contort.contour.contrite.control.contusion.convene.convent.copartner.cope.copied.copier.copilot.coping.copious.copper.copy.coral.cork.cornball.cornbread.corncob.cornea.corned.corner.cornfield.cornflake.cornhusk.cornmeal.cornstalk.corny.coronary.coroner.corporal.corporate.corral.correct.corridor.corrode.corroding.corrosive.corsage.corset.cortex.cosigner.cosmetics.cosmic.cosmos.cosponsor.cost.cottage.cotton.couch.cough.could.countable.countdown.counting.countless.country.county.courier.covenant.cover.coveted.coveting.coyness.cozily.coziness.cozy.crabbing.crabgrass.crablike.crabmeat.cradle.cradling.crafter.craftily.craftsman.craftwork.crafty.cramp.cranberry.crane.cranial.cranium.crank.crate.crave.craving.crawfish.crawlers.crawling.crayfish.crayon.crazed.crazily.craziness.crazy.creamed.creamer.creamlike.crease.creasing.creatable.create.creation.creative.creature.credible.credibly.credit.creed.creme.creole.crepe.crept.crescent.crested.cresting.crestless.crevice.crewless.crewman.crewmate.crib.cricket.cried.crier.crimp.crimson.cringe.cringing.crinkle.crinkly.crisped.crisping.crisply.crispness.crispy.criteria.critter.croak.crock.crook.croon.crop.cross.crouch.crouton.crowbar.crowd.crown.crucial.crudely.crudeness.cruelly.cruelness.cruelty.crumb.crummiest.crummy.crumpet.crumpled.cruncher.crunching.crunchy.crusader.crushable.crushed.crusher.crushing.crust.crux.crying.cryptic.crystal.cubbyhole.cube.cubical.cubicle.cucumber.cuddle.cuddly.cufflink.culinary.culminate.culpable.culprit.cultivate.cultural.culture.cupbearer.cupcake.cupid.cupped.cupping.curable.curator.curdle.cure.curfew.curing.curled.curler.curliness.curling.curly.curry.curse.cursive.cursor.curtain.curtly.curtsy.curvature.curve.curvy.cushy.cusp.cussed.custard.custodian.custody.customary.customer.customize.customs.cut.cycle.cyclic.cycling.cyclist.cylinder.cymbal.cytoplasm.cytoplast.dab.dad.daffodil.dagger.daily.daintily.dainty.dairy.daisy.dallying.dance.dancing.dandelion.dander.dandruff.dandy.danger.dangle.dangling.daredevil.dares.daringly.darkened.darkening.darkish.darkness.darkroom.darling.darn.dart.darwinism.dash.dastardly.data.datebook.dating.daughter.daunting.dawdler.dawn.daybed.daybreak.daycare.daydream.daylight.daylong.dayroom.daytime.dazzler.dazzling.deacon.deafening.deafness.dealer.dealing.dealmaker.dealt.dean.debatable.debate.debating.debit.debrief.debtless.debtor.debug.debunk.decade.decaf.decal.decathlon.decay.deceased.deceit.deceiver.deceiving.december.decency.decent.deception.deceptive.decibel.decidable.decimal.decimeter.decipher.deck.declared.decline.decode.decompose.decorated.decorator.decoy.decrease.decree.dedicate.dedicator.deduce.deduct.deed.deem.deepen.deeply.deepness.deface.defacing.defame.default.defeat.defection.defective.defendant.defender.defense.defensive.deferral.deferred.defiance.defiant.defile.defiling.define.definite.deflate.deflation.deflator.deflected.deflector.defog.deforest.defraud.defrost.deftly.defuse.defy.degraded.degrading.degrease.degree.dehydrate.deity.dejected.delay.delegate.delegator.delete.deletion.delicacy.delicate.delicious.delighted.delirious.delirium.deliverer.delivery.delouse.delta.deluge.delusion.deluxe.demanding.demeaning.demeanor.demise.democracy.democrat.demote.demotion.demystify.denatured.deniable.denial.denim.denote.dense.density.dental.dentist.denture.deny.deodorant.deodorize.departed.departure.depict.deplete.depletion.deplored.deploy.deport.depose.depraved.depravity.deprecate.depress.deprive.depth.deputize.deputy.derail.deranged.derby.derived.desecrate.deserve.deserving.designate.designed.designer.designing.deskbound.desktop.deskwork.desolate.despair.despise.despite.destiny.destitute.destruct.detached.detail.detection.detective.detector.detention.detergent.detest.detonate.detonator.detoxify.detract.deuce.devalue.deviancy.deviant.deviate.deviation.deviator.device.devious.devotedly.devotee.devotion.devourer.devouring.devoutly.dexterity.dexterous.diabetes.diabetic.diabolic.diagnoses.diagnosis.diagram.dial.diameter.diaper.diaphragm.diary.dice.dicing.dictate.dictation.dictator.difficult.diffused.diffuser.diffusion.diffusive.dig.dilation.diligence.diligent.dill.dilute.dime.diminish.dimly.dimmed.dimmer.dimness.dimple.diner.dingbat.dinghy.dinginess.dingo.dingy.dining.dinner.diocese.dioxide.diploma.dipped.dipper.dipping.directed.direction.directive.directly.directory.direness.dirtiness.disabled.disagree.disallow.disarm.disarray.disaster.disband.disbelief.disburse.discard.discern.discharge.disclose.discolor.discount.discourse.discover.discuss.disdain.disengage.disfigure.disgrace.dish.disinfect.disjoin.disk.dislike.disliking.dislocate.dislodge.disloyal.dismantle.dismay.dismiss.dismount.disobey.disorder.disown.disparate.disparity.dispatch.dispense.dispersal.dispersed.disperser.displace.display.displease.disposal.dispose.disprove.dispute.disregard.disrupt.dissuade.distance.distant.distaste.distill.distinct.distort.distract.distress.district.distrust.ditch.ditto.ditzy.dividable.divided.dividend.dividers.dividing.divinely.diving.divinity.divisible.divisibly.division.divisive.divorcee.dizziness.dizzy.doable.docile.dock.doctrine.document.dodge.dodgy.doily.doing.dole.dollar.dollhouse.dollop.dolly.dolphin.domain.domelike.domestic.dominion.dominoes.donated.donation.donator.donor.donut.doodle.doorbell.doorframe.doorknob.doorman.doormat.doornail.doorpost.doorstep.doorstop.doorway.doozy.dork.dormitory.dorsal.dosage.dose.dotted.doubling.douche.dove.down.dowry.doze.drab.dragging.dragonfly.dragonish.dragster.drainable.drainage.drained.drainer.drainpipe.dramatic.dramatize.drank.drapery.drastic.draw.dreaded.dreadful.dreadlock.dreamboat.dreamily.dreamland.dreamless.dreamlike.dreamt.dreamy.drearily.dreary.drench.dress.drew.dribble.dried.drier.drift.driller.drilling.drinkable.drinking.dripping.drippy.drivable.driven.driver.driveway.driving.drizzle.drizzly.drone.drool.droop.drop-down.dropbox.dropkick.droplet.dropout.dropper.drove.drown.drowsily.drudge.drum.dry.dubbed.dubiously.duchess.duckbill.ducking.duckling.ducktail.ducky.duct.dude.duffel.dugout.duh.duke.duller.dullness.duly.dumping.dumpling.dumpster.duo.dupe.duplex.duplicate.duplicity.durable.durably.duration.duress.during.dusk.dust.dutiful.duty.duvet.dwarf.dweeb.dwelled.dweller.dwelling.dwindle.dwindling.dynamic.dynamite.dynasty.dyslexia.dyslexic.each.eagle.earache.eardrum.earflap.earful.earlobe.early.earmark.earmuff.earphone.earpiece.earplugs.earring.earshot.earthen.earthlike.earthling.earthly.earthworm.earthy.earwig.easeful.easel.easiest.easily.easiness.easing.eastbound.eastcoast.easter.eastward.eatable.eaten.eatery.eating.eats.ebay.ebony.ebook.ecard.eccentric.echo.eclair.eclipse.ecologist.ecology.economic.economist.economy.ecosphere.ecosystem.edge.edginess.edging.edgy.edition.editor.educated.education.educator.eel.effective.effects.efficient.effort.eggbeater.egging.eggnog.eggplant.eggshell.egomaniac.egotism.egotistic.either.eject.elaborate.elastic.elated.elbow.eldercare.elderly.eldest.electable.election.elective.elephant.elevate.elevating.elevation.elevator.eleven.elf.eligible.eligibly.eliminate.elite.elitism.elixir.elk.ellipse.elliptic.elm.elongated.elope.eloquence.eloquent.elsewhere.elude.elusive.elves.email.embargo.embark.embassy.embattled.embellish.ember.embezzle.emblaze.emblem.embody.embolism.emboss.embroider.emcee.emerald.emergency.emission.emit.emote.emoticon.emotion.empathic.empathy.emperor.emphases.emphasis.emphasize.emphatic.empirical.employed.employee.employer.emporium.empower.emptier.emptiness.empty.emu.enable.enactment.enamel.enchanted.enchilada.encircle.enclose.enclosure.encode.encore.encounter.encourage.encroach.encrust.encrypt.endanger.endeared.endearing.ended.ending.endless.endnote.endocrine.endorphin.endorse.endowment.endpoint.endurable.endurance.enduring.energetic.energize.energy.enforced.enforcer.engaged.engaging.engine.engorge.engraved.engraver.engraving.engross.engulf.enhance.enigmatic.enjoyable.enjoyably.enjoyer.enjoying.enjoyment.enlarged.enlarging.enlighten.enlisted.enquirer.enrage.enrich.enroll.enslave.ensnare.ensure.entail.entangled.entering.entertain.enticing.entire.entitle.entity.entomb.entourage.entrap.entree.entrench.entrust.entryway.entwine.enunciate.envelope.enviable.enviably.envious.envision.envoy.envy.enzyme.epic.epidemic.epidermal.epidermis.epidural.epilepsy.epileptic.epilogue.epiphany.episode.equal.equate.equation.equator.equinox.equipment.equity.equivocal.eradicate.erasable.erased.eraser.erasure.ergonomic.errand.errant.erratic.error.erupt.escalate.escalator.escapable.escapade.escapist.escargot.eskimo.esophagus.espionage.espresso.esquire.essay.essence.essential.establish.estate.esteemed.estimate.estimator.estranged.estrogen.etching.eternal.eternity.ethanol.ether.ethically.ethics.euphemism.evacuate.evacuee.evade.evaluate.evaluator.evaporate.evasion.evasive.even.everglade.evergreen.everybody.everyday.everyone.evict.evidence.evident.evil.evoke.evolution.evolve.exact.exalted.example.excavate.excavator.exceeding.exception.excess.exchange.excitable.exciting.exclaim.exclude.excluding.exclusion.exclusive.excretion.excretory.excursion.excusable.excusably.excuse.exemplary.exemplify.exemption.exerciser.exert.exes.exfoliate.exhale.exhaust.exhume.exile.existing.exit.exodus.exonerate.exorcism.exorcist.expand.expanse.expansion.expansive.expectant.expedited.expediter.expel.expend.expenses.expensive.expert.expire.expiring.explain.expletive.explicit.explode.exploit.explore.exploring.exponent.exporter.exposable.expose.exposure.express.expulsion.exquisite.extended.extending.extent.extenuate.exterior.external.extinct.extortion.extradite.extras.extrovert.extrude.extruding.exuberant.fable.fabric.fabulous.facebook.facecloth.facedown.faceless.facelift.faceplate.faceted.facial.facility.facing.facsimile.faction.factoid.factor.factsheet.factual.faculty.fade.fading.failing.falcon.fall.false.falsify.fame.familiar.family.famine.famished.fanatic.fancied.fanciness.fancy.fanfare.fang.fanning.fantasize.fantastic.fantasy.fascism.fastball.faster.fasting.fastness.faucet.favorable.favorably.favored.favoring.favorite.fax.feast.federal.fedora.feeble.feed.feel.feisty.feline.felt-tip.feminine.feminism.feminist.feminize.femur.fence.fencing.fender.ferment.fernlike.ferocious.ferocity.ferret.ferris.ferry.fervor.fester.festival.festive.festivity.fetal.fetch.fever.fiber.fiction.fiddle.fiddling.fidelity.fidgeting.fidgety.fifteen.fifth.fiftieth.fifty.figment.figure.figurine.filing.filled.filler.filling.film.filter.filth.filtrate.finale.finalist.finalize.finally.finance.financial.finch.fineness.finer.finicky.finished.finisher.finishing.finite.finless.finlike.fiscally.fit.five.flaccid.flagman.flagpole.flagship.flagstick.flagstone.flail.flakily.flaky.flame.flammable.flanked.flanking.flannels.flap.flaring.flashback.flashbulb.flashcard.flashily.flashing.flashy.flask.flatbed.flatfoot.flatly.flatness.flatten.flattered.flatterer.flattery.flattop.flatware.flatworm.flavored.flavorful.flavoring.flaxseed.fled.fleshed.fleshy.flick.flier.flight.flinch.fling.flint.flip.flirt.float.flock.flogging.flop.floral.florist.floss.flounder.flyable.flyaway.flyer.flying.flyover.flypaper.foam.foe.fog.foil.folic.folk.follicle.follow.fondling.fondly.fondness.fondue.font.food.fool.footage.football.footbath.footboard.footer.footgear.foothill.foothold.footing.footless.footman.footnote.footpad.footpath.footprint.footrest.footsie.footsore.footwear.footwork.fossil.foster.founder.founding.fountain.fox.foyer.fraction.fracture.fragile.fragility.fragment.fragrance.fragrant.frail.frame.framing.frantic.fraternal.frayed.fraying.frays.freckled.freckles.freebase.freebee.freebie.freedom.freefall.freehand.freeing.freeload.freely.freemason.freeness.freestyle.freeware.freeway.freewill.freezable.freezing.freight.french.frenzied.frenzy.frequency.frequent.fresh.fretful.fretted.friction.friday.fridge.fried.friend.frighten.frightful.frigidity.frigidly.frill.fringe.frisbee.frisk.fritter.frivolous.frolic.from.front.frostbite.frosted.frostily.frosting.frostlike.frosty.froth.frown.frozen.fructose.frugality.frugally.fruit.frustrate.frying.gab.gaffe.gag.gainfully.gaining.gains.gala.gallantly.galleria.gallery.galley.gallon.gallows.gallstone.galore.galvanize.gambling.game.gaming.gamma.gander.gangly.gangrene.gangway.gap.garage.garbage.garden.gargle.garland.garlic.garment.garnet.garnish.garter.gas.gatherer.gathering.gating.gauging.gauntlet.gauze.gave.gawk.gazing.gear.gecko.geek.geiger.gem.gender.generic.generous.genetics.genre.gentile.gentleman.gently.gents.geography.geologic.geologist.geology.geometric.geometry.geranium.gerbil.geriatric.germicide.germinate.germless.germproof.gestate.gestation.gesture.getaway.getting.getup.giant.gibberish.giblet.giddily.giddiness.giddy.gift.gigabyte.gigahertz.gigantic.giggle.giggling.giggly.gigolo.gilled.gills.gimmick.girdle.giveaway.given.giver.giving.gizmo.gizzard.glacial.glacier.glade.gladiator.gladly.glamorous.glamour.glance.glancing.glandular.glare.glaring.glass.glaucoma.glazing.gleaming.gleeful.glider.gliding.glimmer.glimpse.glisten.glitch.glitter.glitzy.gloater.gloating.gloomily.gloomy.glorified.glorifier.glorify.glorious.glory.gloss.glove.glowing.glowworm.glucose.glue.gluten.glutinous.glutton.gnarly.gnat.goal.goatskin.goes.goggles.going.goldfish.goldmine.goldsmith.golf.goliath.gonad.gondola.gone.gong.good.gooey.goofball.goofiness.goofy.google.goon.gopher.gore.gorged.gorgeous.gory.gosling.gossip.gothic.gotten.gout.gown.grab.graceful.graceless.gracious.gradation.graded.grader.gradient.grading.gradually.graduate.graffiti.grafted.grafting.grain.granddad.grandkid.grandly.grandma.grandpa.grandson.granite.granny.granola.grant.granular.grape.graph.grapple.grappling.grasp.grass.gratified.gratify.grating.gratitude.gratuity.gravel.graveness.graves.graveyard.gravitate.gravity.gravy.gray.grazing.greasily.greedily.greedless.greedy.green.greeter.greeting.grew.greyhound.grid.grief.grievance.grieving.grievous.grill.grimace.grimacing.grime.griminess.grimy.grinch.grinning.grip.gristle.grit.groggily.groggy.groin.groom.groove.grooving.groovy.grope.ground.grouped.grout.grove.grower.growing.growl.grub.grudge.grudging.grueling.gruffly.grumble.grumbling.grumbly.grumpily.grunge.grunt.guacamole.guidable.guidance.guide.guiding.guileless.guise.gulf.gullible.gully.gulp.gumball.gumdrop.gumminess.gumming.gummy.gurgle.gurgling.guru.gush.gusto.gusty.gutless.guts.gutter.guy.guzzler.gyration.habitable.habitant.habitat.habitual.hacked.hacker.hacking.hacksaw.had.haggler.haiku.half.halogen.halt.halved.halves.hamburger.hamlet.hammock.hamper.hamster.hamstring.handbag.handball.handbook.handbrake.handcart.handclap.handclasp.handcraft.handcuff.handed.handful.handgrip.handgun.handheld.handiness.handiwork.handlebar.handled.handler.handling.handmade.handoff.handpick.handprint.handrail.handsaw.handset.handsfree.handshake.handstand.handwash.handwork.handwoven.handwrite.handyman.hangnail.hangout.hangover.hangup.hankering.hankie.hanky.haphazard.happening.happier.happiest.happily.happiness.happy.harbor.hardcopy.hardcore.hardcover.harddisk.hardened.hardener.hardening.hardhat.hardhead.hardiness.hardly.hardness.hardship.hardware.hardwired.hardwood.hardy.harmful.harmless.harmonica.harmonics.harmonize.harmony.harness.harpist.harsh.harvest.hash.hassle.haste.hastily.hastiness.hasty.hatbox.hatchback.hatchery.hatchet.hatching.hatchling.hate.hatless.hatred.haunt.haven.hazard.hazelnut.hazily.haziness.hazing.hazy.headache.headband.headboard.headcount.headdress.headed.header.headfirst.headgear.heading.headlamp.headless.headlock.headphone.headpiece.headrest.headroom.headscarf.headset.headsman.headstand.headstone.headway.headwear.heap.heat.heave.heavily.heaviness.heaving.hedge.hedging.heftiness.hefty.helium.helmet.helper.helpful.helping.helpless.helpline.hemlock.hemstitch.hence.henchman.henna.herald.herbal.herbicide.herbs.heritage.hermit.heroics.heroism.herring.herself.hertz.hesitancy.hesitant.hesitate.hexagon.hexagram.hubcap.huddle.huddling.huff.hug.hula.hulk.hull.human.humble.humbling.humbly.humid.humiliate.humility.humming.hummus.humongous.humorist.humorless.humorous.humpback.humped.humvee.hunchback.hundredth.hunger.hungrily.hungry.hunk.hunter.hunting.huntress.huntsman.hurdle.hurled.hurler.hurling.hurray.hurricane.hurried.hurry.hurt.husband.hush.husked.huskiness.hut.hybrid.hydrant.hydrated.hydration.hydrogen.hydroxide.hyperlink.hypertext.hyphen.hypnoses.hypnosis.hypnotic.hypnotism.hypnotist.hypnotize.hypocrisy.hypocrite.ibuprofen.ice.iciness.icing.icky.icon.icy.idealism.idealist.idealize.ideally.idealness.identical.identify.identity.ideology.idiocy.idiom.idly.igloo.ignition.ignore.iguana.illicitly.illusion.illusive.image.imaginary.imagines.imaging.imbecile.imitate.imitation.immature.immerse.immersion.imminent.immobile.immodest.immorally.immortal.immovable.immovably.immunity.immunize.impaired.impale.impart.impatient.impeach.impeding.impending.imperfect.imperial.impish.implant.implement.implicate.implicit.implode.implosion.implosive.imply.impolite.important.importer.impose.imposing.impotence.impotency.impotent.impound.imprecise.imprint.imprison.impromptu.improper.improve.improving.improvise.imprudent.impulse.impulsive.impure.impurity.iodine.iodize.ion.ipad.iphone.ipod.irate.irk.iron.irregular.irrigate.irritable.irritably.irritant.irritate.islamic.islamist.isolated.isolating.isolation.isotope.issue.issuing.italicize.italics.item.itinerary.itunes.ivory.ivy.jab.jackal.jacket.jackknife.jackpot.jailbird.jailbreak.jailer.jailhouse.jalapeno.jam.janitor.january.jargon.jarring.jasmine.jaundice.jaunt.java.jawed.jawless.jawline.jaws.jaybird.jaywalker.jazz.jeep.jeeringly.jellied.jelly.jersey.jester.jet.jiffy.jigsaw.jimmy.jingle.jingling.jinx.jitters.jittery.job.jockey.jockstrap.jogger.jogging.john.joining.jokester.jokingly.jolliness.jolly.jolt.jot.jovial.joyfully.joylessly.joyous.joyride.joystick.jubilance.jubilant.judge.judgingly.judicial.judiciary.judo.juggle.juggling.jugular.juice.juiciness.juicy.jujitsu.jukebox.july.jumble.jumbo.jump.junction.juncture.june.junior.juniper.junkie.junkman.junkyard.jurist.juror.jury.justice.justifier.justify.justly.justness.juvenile.kabob.kangaroo.karaoke.karate.karma.kebab.keenly.keenness.keep.keg.kelp.kennel.kept.kerchief.kerosene.kettle.kick.kiln.kilobyte.kilogram.kilometer.kilowatt.kilt.kimono.kindle.kindling.kindly.kindness.kindred.kinetic.kinfolk.king.kinship.kinsman.kinswoman.kissable.kisser.kissing.kitchen.kite.kitten.kitty.kiwi.kleenex.knapsack.knee.knelt.knickers.knoll.koala.kooky.kosher.krypton.kudos.kung.labored.laborer.laboring.laborious.labrador.ladder.ladies.ladle.ladybug.ladylike.lagged.lagging.lagoon.lair.lake.lance.landed.landfall.landfill.landing.landlady.landless.landline.landlord.landmark.landmass.landmine.landowner.landscape.landside.landslide.language.lankiness.lanky.lantern.lapdog.lapel.lapped.lapping.laptop.lard.large.lark.lash.lasso.last.latch.late.lather.latitude.latrine.latter.latticed.launch.launder.laundry.laurel.lavender.lavish.laxative.lazily.laziness.lazy.lecturer.left.legacy.legal.legend.legged.leggings.legible.legibly.legislate.lego.legroom.legume.legwarmer.legwork.lemon.lend.length.lens.lent.leotard.lesser.letdown.lethargic.lethargy.letter.lettuce.level.leverage.levers.levitate.levitator.liability.liable.liberty.librarian.library.licking.licorice.lid.life.lifter.lifting.liftoff.ligament.likely.likeness.likewise.liking.lilac.lilly.lily.limb.limeade.limelight.limes.limit.limping.limpness.line.lingo.linguini.linguist.lining.linked.linoleum.linseed.lint.lion.lip.liquefy.liqueur.liquid.lisp.list.litigate.litigator.litmus.litter.little.livable.lived.lively.liver.livestock.lividly.living.lizard.lubricant.lubricate.lucid.luckily.luckiness.luckless.lucrative.ludicrous.lugged.lukewarm.lullaby.lumber.luminance.luminous.lumpiness.lumping.lumpish.lunacy.lunar.lunchbox.luncheon.lunchroom.lunchtime.lung.lurch.lure.luridness.lurk.lushly.lushness.luster.lustfully.lustily.lustiness.lustrous.lusty.luxurious.luxury.lying.lyrically.lyricism.lyricist.lyrics.macarena.macaroni.macaw.mace.machine.machinist.magazine.magenta.maggot.magical.magician.magma.magnesium.magnetic.magnetism.magnetize.magnifier.magnify.magnitude.magnolia.mahogany.maimed.majestic.majesty.majorette.majority.makeover.maker.makeshift.making.malformed.malt.mama.mammal.mammary.mammogram.manager.managing.manatee.mandarin.mandate.mandatory.mandolin.manger.mangle.mango.mangy.manhandle.manhole.manhood.manhunt.manicotti.manicure.manifesto.manila.mankind.manlike.manliness.manly.manmade.manned.mannish.manor.manpower.mantis.mantra.manual.many.map.marathon.marauding.marbled.marbles.marbling.march.mardi.margarine.margarita.margin.marigold.marina.marine.marital.maritime.marlin.marmalade.maroon.married.marrow.marry.marshland.marshy.marsupial.marvelous.marxism.mascot.masculine.mashed.mashing.massager.masses.massive.mastiff.matador.matchbook.matchbox.matcher.matching.matchless.material.maternal.maternity.math.mating.matriarch.matrimony.matrix.matron.matted.matter.maturely.maturing.maturity.mauve.maverick.maximize.maximum.maybe.mayday.mayflower.moaner.moaning.mobile.mobility.mobilize.mobster.mocha.mocker.mockup.modified.modify.modular.modulator.module.moisten.moistness.moisture.molar.molasses.mold.molecular.molecule.molehill.mollusk.mom.monastery.monday.monetary.monetize.moneybags.moneyless.moneywise.mongoose.mongrel.monitor.monkhood.monogamy.monogram.monologue.monopoly.monorail.monotone.monotype.monoxide.monsieur.monsoon.monstrous.monthly.monument.moocher.moodiness.moody.mooing.moonbeam.mooned.moonlight.moonlike.moonlit.moonrise.moonscape.moonshine.moonstone.moonwalk.mop.morale.morality.morally.morbidity.morbidly.morphine.morphing.morse.mortality.mortally.mortician.mortified.mortify.mortuary.mosaic.mossy.most.mothball.mothproof.motion.motivate.motivator.motive.motocross.motor.motto.mountable.mountain.mounted.mounting.mourner.mournful.mouse.mousiness.moustache.mousy.mouth.movable.move.movie.moving.mower.mowing.much.muck.mud.mug.mulberry.mulch.mule.mulled.mullets.multiple.multiply.multitask.multitude.mumble.mumbling.mumbo.mummified.mummify.mummy.mumps.munchkin.mundane.municipal.muppet.mural.murkiness.murky.murmuring.muscular.museum.mushily.mushiness.mushroom.mushy.music.musket.muskiness.musky.mustang.mustard.muster.mustiness.musty.mutable.mutate.mutation.mute.mutilated.mutilator.mutiny.mutt.mutual.muzzle.myself.myspace.mystified.mystify.myth.nacho.nag.nail.name.naming.nanny.nanometer.nape.napkin.napped.napping.nappy.narrow.nastily.nastiness.national.native.nativity.natural.nature.naturist.nautical.navigate.navigator.navy.nearby.nearest.nearly.nearness.neatly.neatness.nebula.nebulizer.nectar.negate.negation.negative.neglector.negligee.negligent.negotiate.nemeses.nemesis.neon.nephew.nerd.nervous.nervy.nest.net.neurology.neuron.neurosis.neurotic.neuter.neutron.never.next.nibble.nickname.nicotine.niece.nifty.nimble.nimbly.nineteen.ninetieth.ninja.nintendo.ninth.nuclear.nuclei.nucleus.nugget.nullify.number.numbing.numbly.numbness.numeral.numerate.numerator.numeric.numerous.nuptials.nursery.nursing.nurture.nutcase.nutlike.nutmeg.nutrient.nutshell.nuttiness.nutty.nuzzle.nylon.oaf.oak.oasis.oat.obedience.obedient.obituary.object.obligate.obliged.oblivion.oblivious.oblong.obnoxious.oboe.obscure.obscurity.observant.observer.observing.obsessed.obsession.obsessive.obsolete.obstacle.obstinate.obstruct.obtain.obtrusive.obtuse.obvious.occultist.occupancy.occupant.occupier.occupy.ocean.ocelot.octagon.octane.october.octopus.ogle.oil.oink.ointment.okay.old.olive.olympics.omega.omen.ominous.omission.omit.omnivore.onboard.oncoming.ongoing.onion.online.onlooker.only.onscreen.onset.onshore.onslaught.onstage.onto.onward.onyx.oops.ooze.oozy.opacity.opal.open.operable.operate.operating.operation.operative.operator.opium.opossum.opponent.oppose.opposing.opposite.oppressed.oppressor.opt.opulently.osmosis.other.otter.ouch.ought.ounce.outage.outback.outbid.outboard.outbound.outbreak.outburst.outcast.outclass.outcome.outdated.outdoors.outer.outfield.outfit.outflank.outgoing.outgrow.outhouse.outing.outlast.outlet.outline.outlook.outlying.outmatch.outmost.outnumber.outplayed.outpost.outpour.output.outrage.outrank.outreach.outright.outscore.outsell.outshine.outshoot.outsider.outskirts.outsmart.outsource.outspoken.outtakes.outthink.outward.outweigh.outwit.oval.ovary.oven.overact.overall.overarch.overbid.overbill.overbite.overblown.overboard.overbook.overbuilt.overcast.overcoat.overcome.overcook.overcrowd.overdraft.overdrawn.overdress.overdrive.overdue.overeager.overeater.overexert.overfed.overfeed.overfill.overflow.overfull.overgrown.overhand.overhang.overhaul.overhead.overhear.overheat.overhung.overjoyed.overkill.overlabor.overlaid.overlap.overlay.overload.overlook.overlord.overlying.overnight.overpass.overpay.overplant.overplay.overpower.overprice.overrate.overreach.overreact.override.overripe.overrule.overrun.overshoot.overshot.oversight.oversized.oversleep.oversold.overspend.overstate.overstay.overstep.overstock.overstuff.oversweet.overtake.overthrow.overtime.overtly.overtone.overture.overturn.overuse.overvalue.overview.overwrite.owl.oxford.oxidant.oxidation.oxidize.oxidizing.oxygen.oxymoron.oyster.ozone.paced.pacemaker.pacific.pacifier.pacifism.pacifist.pacify.padded.padding.paddle.paddling.padlock.pagan.pager.paging.pajamas.palace.palatable.palm.palpable.palpitate.paltry.pampered.pamperer.pampers.pamphlet.panama.pancake.pancreas.panda.pandemic.pang.panhandle.panic.panning.panorama.panoramic.panther.pantomime.pantry.pants.pantyhose.paparazzi.papaya.paper.paprika.papyrus.parabola.parachute.parade.paradox.paragraph.parakeet.paralegal.paralyses.paralysis.paralyze.paramedic.parameter.paramount.parasail.parasite.parasitic.parcel.parched.parchment.pardon.parish.parka.parking.parkway.parlor.parmesan.parole.parrot.parsley.parsnip.partake.parted.parting.partition.partly.partner.partridge.party.passable.passably.passage.passcode.passenger.passerby.passing.passion.passive.passivism.passover.passport.password.pasta.pasted.pastel.pastime.pastor.pastrami.pasture.pasty.patchwork.patchy.paternal.paternity.path.patience.patient.patio.patriarch.patriot.patrol.patronage.patronize.pauper.pavement.paver.pavestone.pavilion.paving.pawing.payable.payback.paycheck.payday.payee.payer.paying.payment.payphone.payroll.pebble.pebbly.pecan.pectin.peculiar.peddling.pediatric.pedicure.pedigree.pedometer.pegboard.pelican.pellet.pelt.pelvis.penalize.penalty.pencil.pendant.pending.penholder.penknife.pennant.penniless.penny.penpal.pension.pentagon.pentagram.pep.perceive.percent.perch.percolate.perennial.perfected.perfectly.perfume.periscope.perish.perjurer.perjury.perkiness.perky.perm.peroxide.perpetual.perplexed.persecute.persevere.persuaded.persuader.pesky.peso.pessimism.pessimist.pester.pesticide.petal.petite.petition.petri.petroleum.petted.petticoat.pettiness.petty.petunia.phantom.phobia.phoenix.phonebook.phoney.phonics.phoniness.phony.phosphate.photo.phrase.phrasing.placard.placate.placidly.plank.planner.plant.plasma.plaster.plastic.plated.platform.plating.platinum.platonic.platter.platypus.plausible.plausibly.playable.playback.player.playful.playgroup.playhouse.playing.playlist.playmaker.playmate.playoff.playpen.playroom.playset.plaything.playtime.plaza.pleading.pleat.pledge.plentiful.plenty.plethora.plexiglas.pliable.plod.plop.plot.plow.ploy.pluck.plug.plunder.plunging.plural.plus.plutonium.plywood.poach.pod.poem.poet.pogo.pointed.pointer.pointing.pointless.pointy.poise.poison.poker.poking.polar.police.policy.polio.polish.politely.polka.polo.polyester.polygon.polygraph.polymer.poncho.pond.pony.popcorn.pope.poplar.popper.poppy.popsicle.populace.popular.populate.porcupine.pork.porous.porridge.portable.portal.portfolio.porthole.portion.portly.portside.poser.posh.posing.possible.possibly.possum.postage.postal.postbox.postcard.posted.poster.posting.postnasal.posture.postwar.pouch.pounce.pouncing.pound.pouring.pout.powdered.powdering.powdery.power.powwow.pox.praising.prance.prancing.pranker.prankish.prankster.prayer.praying.preacher.preaching.preachy.preamble.precinct.precise.precision.precook.precut.predator.predefine.predict.preface.prefix.preflight.preformed.pregame.pregnancy.pregnant.preheated.prelaunch.prelaw.prelude.premiere.premises.premium.prenatal.preoccupy.preorder.prepaid.prepay.preplan.preppy.preschool.prescribe.preseason.preset.preshow.president.presoak.press.presume.presuming.preteen.pretended.pretender.pretense.pretext.pretty.pretzel.prevail.prevalent.prevent.preview.previous.prewar.prewashed.prideful.pried.primal.primarily.primary.primate.primer.primp.princess.print.prior.prism.prison.prissy.pristine.privacy.private.privatize.prize.proactive.probable.probably.probation.probe.probing.probiotic.problem.procedure.process.proclaim.procreate.procurer.prodigal.prodigy.produce.product.profane.profanity.professed.professor.profile.profound.profusely.progeny.prognosis.program.progress.projector.prologue.prolonged.promenade.prominent.promoter.promotion.prompter.promptly.prone.prong.pronounce.pronto.proofing.proofread.proofs.propeller.properly.property.proponent.proposal.propose.props.prorate.protector.protegee.proton.prototype.protozoan.protract.protrude.proud.provable.proved.proven.provided.provider.providing.province.proving.provoke.provoking.provolone.prowess.prowler.prowling.proximity.proxy.prozac.prude.prudishly.prune.pruning.pry.psychic.public.publisher.pucker.pueblo.pug.pull.pulmonary.pulp.pulsate.pulse.pulverize.puma.pumice.pummel.punch.punctual.punctuate.punctured.pungent.punisher.punk.pupil.puppet.puppy.purchase.pureblood.purebred.purely.pureness.purgatory.purge.purging.purifier.purify.purist.puritan.purity.purple.purplish.purposely.purr.purse.pursuable.pursuant.pursuit.purveyor.pushcart.pushchair.pusher.pushiness.pushing.pushover.pushpin.pushup.pushy.putdown.putt.puzzle.puzzling.pyramid.pyromania.python.quack.quadrant.quail.quaintly.quake.quaking.qualified.qualifier.qualify.quality.qualm.quantum.quarrel.quarry.quartered.quarterly.quarters.quartet.quench.query.quicken.quickly.quickness.quicksand.quickstep.quiet.quill.quilt.quintet.quintuple.quirk.quit.quiver.quizzical.quotable.quotation.quote.rabid.race.racing.racism.rack.racoon.radar.radial.radiance.radiantly.radiated.radiation.radiator.radio.radish.raffle.raft.rage.ragged.raging.ragweed.raider.railcar.railing.railroad.railway.raisin.rake.raking.rally.ramble.rambling.ramp.ramrod.ranch.rancidity.random.ranged.ranger.ranging.ranked.ranking.ransack.ranting.rants.rare.rarity.rascal.rash.rasping.ravage.raven.ravine.raving.ravioli.ravishing.reabsorb.reach.reacquire.reaction.reactive.reactor.reaffirm.ream.reanalyze.reappear.reapply.reappoint.reapprove.rearrange.rearview.reason.reassign.reassure.reattach.reawake.rebalance.rebate.rebel.rebirth.reboot.reborn.rebound.rebuff.rebuild.rebuilt.reburial.rebuttal.recall.recant.recapture.recast.recede.recent.recess.recharger.recipient.recital.recite.reckless.reclaim.recliner.reclining.recluse.reclusive.recognize.recoil.recollect.recolor.reconcile.reconfirm.reconvene.recopy.record.recount.recoup.recovery.recreate.rectal.rectangle.rectified.rectify.recycled.recycler.recycling.reemerge.reenact.reenter.reentry.reexamine.referable.referee.reference.refill.refinance.refined.refinery.refining.refinish.reflected.reflector.reflex.reflux.refocus.refold.reforest.reformat.reformed.reformer.reformist.refract.refrain.refreeze.refresh.refried.refueling.refund.refurbish.refurnish.refusal.refuse.refusing.refutable.refute.regain.regalia.regally.reggae.regime.region.register.registrar.registry.regress.regretful.regroup.regular.regulate.regulator.rehab.reheat.rehire.rehydrate.reimburse.reissue.reiterate.rejoice.rejoicing.rejoin.rekindle.relapse.relapsing.relatable.related.relation.relative.relax.relay.relearn.release.relenting.reliable.reliably.reliance.reliant.relic.relieve.relieving.relight.relish.relive.reload.relocate.relock.reluctant.rely.remake.remark.remarry.rematch.remedial.remedy.remember.reminder.remindful.remission.remix.remnant.remodeler.remold.remorse.remote.removable.removal.removed.remover.removing.rename.renderer.rendering.rendition.renegade.renewable.renewably.renewal.renewed.renounce.renovate.renovator.rentable.rental.rented.renter.reoccupy.reoccur.reopen.reorder.repackage.repacking.repaint.repair.repave.repaying.repayment.repeal.repeated.repeater.repent.rephrase.replace.replay.replica.reply.reporter.repose.repossess.repost.repressed.reprimand.reprint.reprise.reproach.reprocess.reproduce.reprogram.reps.reptile.reptilian.repugnant.repulsion.repulsive.repurpose.reputable.reputably.request.require.requisite.reroute.rerun.resale.resample.rescuer.reseal.research.reselect.reseller.resemble.resend.resent.reset.reshape.reshoot.reshuffle.residence.residency.resident.residual.residue.resigned.resilient.resistant.resisting.resize.resolute.resolved.resonant.resonate.resort.resource.respect.resubmit.result.resume.resupply.resurface.resurrect.retail.retainer.retaining.retake.retaliate.retention.rethink.retinal.retired.retiree.retiring.retold.retool.retorted.retouch.retrace.retract.retrain.retread.retreat.retrial.retrieval.retriever.retry.return.retying.retype.reunion.reunite.reusable.reuse.reveal.reveler.revenge.revenue.reverb.revered.reverence.reverend.reversal.reverse.reversing.reversion.revert.revisable.revise.revision.revisit.revivable.revival.reviver.reviving.revocable.revoke.revolt.revolver.revolving.reward.rewash.rewind.rewire.reword.rework.rewrap.rewrite.rhyme.ribbon.ribcage.rice.riches.richly.richness.rickety.ricotta.riddance.ridden.ride.riding.rifling.rift.rigging.rigid.rigor.rimless.rimmed.rind.rink.rinse.rinsing.riot.ripcord.ripeness.ripening.ripping.ripple.rippling.riptide.rise.rising.risk.risotto.ritalin.ritzy.rival.riverbank.riverbed.riverboat.riverside.riveter.riveting.roamer.roaming.roast.robbing.robe.robin.robotics.robust.rockband.rocker.rocket.rockfish.rockiness.rocking.rocklike.rockslide.rockstar.rocky.rogue.roman.romp.rope.roping.roster.rosy.rotten.rotting.rotunda.roulette.rounding.roundish.roundness.roundup.roundworm.routine.routing.rover.roving.royal.rubbed.rubber.rubbing.rubble.rubdown.ruby.ruckus.rudder.rug.ruined.rule.rumble.rumbling.rummage.rumor.runaround.rundown.runner.running.runny.runt.runway.rupture.rural.ruse.rush.rust.rut.sabbath.sabotage.sacrament.sacred.sacrifice.sadden.saddlebag.saddled.saddling.sadly.sadness.safari.safeguard.safehouse.safely.safeness.saffron.saga.sage.sagging.saggy.said.saint.sake.salad.salami.salaried.salary.saline.salon.saloon.salsa.salt.salutary.salute.salvage.salvaging.salvation.same.sample.sampling.sanction.sanctity.sanctuary.sandal.sandbag.sandbank.sandbar.sandblast.sandbox.sanded.sandfish.sanding.sandlot.sandpaper.sandpit.sandstone.sandstorm.sandworm.sandy.sanitary.sanitizer.sank.santa.sapling.sappiness.sappy.sarcasm.sarcastic.sardine.sash.sasquatch.sassy.satchel.satiable.satin.satirical.satisfied.satisfy.saturate.saturday.sauciness.saucy.sauna.savage.savanna.saved.savings.savior.savor.saxophone.say.scabbed.scabby.scalded.scalding.scale.scaling.scallion.scallop.scalping.scam.scandal.scanner.scanning.scant.scapegoat.scarce.scarcity.scarecrow.scared.scarf.scarily.scariness.scarring.scary.scavenger.scenic.schedule.schematic.scheme.scheming.schilling.schnapps.scholar.science.scientist.scion.scoff.scolding.scone.scoop.scooter.scope.scorch.scorebook.scorecard.scored.scoreless.scorer.scoring.scorn.scorpion.scotch.scoundrel.scoured.scouring.scouting.scouts.scowling.scrabble.scraggly.scrambled.scrambler.scrap.scratch.scrawny.screen.scribble.scribe.scribing.scrimmage.script.scroll.scrooge.scrounger.scrubbed.scrubber.scruffy.scrunch.scrutiny.scuba.scuff.sculptor.sculpture.scurvy.scuttle.secluded.secluding.seclusion.second.secrecy.secret.sectional.sector.secular.securely.security.sedan.sedate.sedation.sedative.sediment.seduce.seducing.segment.seismic.seizing.seldom.selected.selection.selective.selector.self.seltzer.semantic.semester.semicolon.semifinal.seminar.semisoft.semisweet.senate.senator.send.senior.senorita.sensation.sensitive.sensitize.sensually.sensuous.sepia.september.septic.septum.sequel.sequence.sequester.series.sermon.serotonin.serpent.serrated.serve.service.serving.sesame.sessions.setback.setting.settle.settling.setup.sevenfold.seventeen.seventh.seventy.severity.shabby.shack.shaded.shadily.shadiness.shading.shadow.shady.shaft.shakable.shakily.shakiness.shaking.shaky.shale.shallot.shallow.shame.shampoo.shamrock.shank.shanty.shape.shaping.share.sharpener.sharper.sharpie.sharply.sharpness.shawl.sheath.shed.sheep.sheet.shelf.shell.shelter.shelve.shelving.sherry.shield.shifter.shifting.shiftless.shifty.shimmer.shimmy.shindig.shine.shingle.shininess.shining.shiny.ship.shirt.shivering.shock.shone.shoplift.shopper.shopping.shoptalk.shore.shortage.shortcake.shortcut.shorten.shorter.shorthand.shortlist.shortly.shortness.shorts.shortwave.shorty.shout.shove.showbiz.showcase.showdown.shower.showgirl.showing.showman.shown.showoff.showpiece.showplace.showroom.showy.shrank.shrapnel.shredder.shredding.shrewdly.shriek.shrill.shrimp.shrine.shrink.shrivel.shrouded.shrubbery.shrubs.shrug.shrunk.shucking.shudder.shuffle.shuffling.shun.shush.shut.shy.siamese.siberian.sibling.siding.sierra.siesta.sift.sighing.silenced.silencer.silent.silica.silicon.silk.silliness.silly.silo.silt.silver.similarly.simile.simmering.simple.simplify.simply.sincere.sincerity.singer.singing.single.singular.sinister.sinless.sinner.sinuous.sip.siren.sister.sitcom.sitter.sitting.situated.situation.sixfold.sixteen.sixth.sixties.sixtieth.sixtyfold.sizable.sizably.size.sizing.sizzle.sizzling.skater.skating.skedaddle.skeletal.skeleton.skeptic.sketch.skewed.skewer.skid.skied.skier.skies.skiing.skilled.skillet.skillful.skimmed.skimmer.skimming.skimpily.skincare.skinhead.skinless.skinning.skinny.skintight.skipper.skipping.skirmish.skirt.skittle.skydiver.skylight.skyline.skype.skyrocket.skyward.slab.slacked.slacker.slacking.slackness.slacks.slain.slam.slander.slang.slapping.slapstick.slashed.slashing.slate.slather.slaw.sled.sleek.sleep.sleet.sleeve.slept.sliceable.sliced.slicer.slicing.slick.slider.slideshow.sliding.slighted.slighting.slightly.slimness.slimy.slinging.slingshot.slinky.slip.slit.sliver.slobbery.slogan.sloped.sloping.sloppily.sloppy.slot.slouching.slouchy.sludge.slug.slum.slurp.slush.sly.small.smartly.smartness.smasher.smashing.smashup.smell.smelting.smile.smilingly.smirk.smite.smith.smitten.smock.smog.smoked.smokeless.smokiness.smoking.smoky.smolder.smooth.smother.smudge.smudgy.smuggler.smuggling.smugly.smugness.snack.snagged.snaking.snap.snare.snarl.snazzy.sneak.sneer.sneeze.sneezing.snide.sniff.snippet.snipping.snitch.snooper.snooze.snore.snoring.snorkel.snort.snout.snowbird.snowboard.snowbound.snowcap.snowdrift.snowdrop.snowfall.snowfield.snowflake.snowiness.snowless.snowman.snowplow.snowshoe.snowstorm.snowsuit.snowy.snub.snuff.snuggle.snugly.snugness.speak.spearfish.spearhead.spearman.spearmint.species.specimen.specked.speckled.specks.spectacle.spectator.spectrum.speculate.speech.speed.spellbind.speller.spelling.spendable.spender.spending.spent.spew.sphere.spherical.sphinx.spider.spied.spiffy.spill.spilt.spinach.spinal.spindle.spinner.spinning.spinout.spinster.spiny.spiral.spirited.spiritism.spirits.spiritual.splashed.splashing.splashy.splatter.spleen.splendid.splendor.splice.splicing.splinter.splotchy.splurge.spoilage.spoiled.spoiler.spoiling.spoils.spoken.spokesman.sponge.spongy.sponsor.spoof.spookily.spooky.spool.spoon.spore.sporting.sports.sporty.spotless.spotlight.spotted.spotter.spotting.spotty.spousal.spouse.spout.sprain.sprang.sprawl.spray.spree.sprig.spring.sprinkled.sprinkler.sprint.sprite.sprout.spruce.sprung.spry.spud.spur.sputter.spyglass.squabble.squad.squall.squander.squash.squatted.squatter.squatting.squeak.squealer.squealing.squeamish.squeegee.squeeze.squeezing.squid.squiggle.squiggly.squint.squire.squirt.squishier.squishy.stability.stabilize.stable.stack.stadium.staff.stage.staging.stagnant.stagnate.stainable.stained.staining.stainless.stalemate.staleness.stalling.stallion.stamina.stammer.stamp.stand.stank.staple.stapling.starboard.starch.stardom.stardust.starfish.stargazer.staring.stark.starless.starlet.starlight.starlit.starring.starry.starship.starter.starting.startle.startling.startup.starved.starving.stash.state.static.statistic.statue.stature.status.statute.statutory.staunch.stays.steadfast.steadier.steadily.steadying.steam.steed.steep.steerable.steering.steersman.stegosaur.stellar.stem.stench.stencil.step.stereo.sterile.sterility.sterilize.sterling.sternness.sternum.stew.stick.stiffen.stiffly.stiffness.stifle.stifling.stillness.stilt.stimulant.stimulate.stimuli.stimulus.stinger.stingily.stinging.stingray.stingy.stinking.stinky.stipend.stipulate.stir.stitch.stock.stoic.stoke.stole.stomp.stonewall.stoneware.stonework.stoning.stony.stood.stooge.stool.stoop.stoplight.stoppable.stoppage.stopped.stopper.stopping.stopwatch.storable.storage.storeroom.storewide.storm.stout.stove.stowaway.stowing.straddle.straggler.strained.strainer.straining.strangely.stranger.strangle.strategic.strategy.stratus.straw.stray.streak.stream.street.strength.strenuous.strep.stress.stretch.strewn.stricken.strict.stride.strife.strike.striking.strive.striving.strobe.strode.stroller.strongbox.strongly.strongman.struck.structure.strudel.struggle.strum.strung.strut.stubbed.stubble.stubbly.stubborn.stucco.stuck.student.studied.studio.study.stuffed.stuffing.stuffy.stumble.stumbling.stump.stung.stunned.stunner.stunning.stunt.stupor.sturdily.sturdy.styling.stylishly.stylist.stylized.stylus.suave.subarctic.subatomic.subdivide.subdued.subduing.subfloor.subgroup.subheader.subject.sublease.sublet.sublevel.sublime.submarine.submerge.submersed.submitter.subpanel.subpar.subplot.subprime.subscribe.subscript.subsector.subside.subsiding.subsidize.subsidy.subsoil.subsonic.substance.subsystem.subtext.subtitle.subtly.subtotal.subtract.subtype.suburb.subway.subwoofer.subzero.succulent.such.suction.sudden.sudoku.suds.sufferer.suffering.suffice.suffix.suffocate.suffrage.sugar.suggest.suing.suitable.suitably.suitcase.suitor.sulfate.sulfide.sulfite.sulfur.sulk.sullen.sulphate.sulphuric.sultry.superbowl.superglue.superhero.superior.superjet.superman.supermom.supernova.supervise.supper.supplier.supply.support.supremacy.supreme.surcharge.surely.sureness.surface.surfacing.surfboard.surfer.surgery.surgical.surging.surname.surpass.surplus.surprise.surreal.surrender.surrogate.surround.survey.survival.survive.surviving.survivor.sushi.suspect.suspend.suspense.sustained.sustainer.swab.swaddling.swagger.swampland.swan.swapping.swarm.sway.swear.sweat.sweep.swell.swept.swerve.swifter.swiftly.swiftness.swimmable.swimmer.swimming.swimsuit.swimwear.swinger.swinging.swipe.swirl.switch.swivel.swizzle.swooned.swoop.swoosh.swore.sworn.swung.sycamore.sympathy.symphonic.symphony.symptom.synapse.syndrome.synergy.synopses.synopsis.synthesis.synthetic.syrup.system.t-shirt.tabasco.tabby.tableful.tables.tablet.tableware.tabloid.tackiness.tacking.tackle.tackling.tacky.taco.tactful.tactical.tactics.tactile.tactless.tadpole.taekwondo.tag.tainted.take.taking.talcum.talisman.tall.talon.tamale.tameness.tamer.tamper.tank.tanned.tannery.tanning.tantrum.tapeless.tapered.tapering.tapestry.tapioca.tapping.taps.tarantula.target.tarmac.tarnish.tarot.tartar.tartly.tartness.task.tassel.taste.tastiness.tasting.tasty.tattered.tattle.tattling.tattoo.taunt.tavern.thank.that.thaw.theater.theatrics.thee.theft.theme.theology.theorize.thermal.thermos.thesaurus.these.thesis.thespian.thicken.thicket.thickness.thieving.thievish.thigh.thimble.thing.think.thinly.thinner.thinness.thinning.thirstily.thirsting.thirsty.thirteen.thirty.thong.thorn.those.thousand.thrash.thread.threaten.threefold.thrift.thrill.thrive.thriving.throat.throbbing.throng.throttle.throwaway.throwback.thrower.throwing.thud.thumb.thumping.thursday.thus.thwarting.thyself.tiara.tibia.tidal.tidbit.tidiness.tidings.tidy.tiger.tighten.tightly.tightness.tightrope.tightwad.tigress.tile.tiling.till.tilt.timid.timing.timothy.tinderbox.tinfoil.tingle.tingling.tingly.tinker.tinkling.tinsel.tinsmith.tint.tinwork.tiny.tipoff.tipped.tipper.tipping.tiptoeing.tiptop.tiring.tissue.trace.tracing.track.traction.tractor.trade.trading.tradition.traffic.tragedy.trailing.trailside.train.traitor.trance.tranquil.transfer.transform.translate.transpire.transport.transpose.trapdoor.trapeze.trapezoid.trapped.trapper.trapping.traps.trash.travel.traverse.travesty.tray.treachery.treading.treadmill.treason.treat.treble.tree.trekker.tremble.trembling.tremor.trench.trend.trespass.triage.trial.triangle.tribesman.tribunal.tribune.tributary.tribute.triceps.trickery.trickily.tricking.trickle.trickster.tricky.tricolor.tricycle.trident.tried.trifle.trifocals.trillion.trilogy.trimester.trimmer.trimming.trimness.trinity.trio.tripod.tripping.triumph.trivial.trodden.trolling.trombone.trophy.tropical.tropics.trouble.troubling.trough.trousers.trout.trowel.truce.truck.truffle.trump.trunks.trustable.trustee.trustful.trusting.trustless.truth.try.tubby.tubeless.tubular.tucking.tuesday.tug.tuition.tulip.tumble.tumbling.tummy.turban.turbine.turbofan.turbojet.turbulent.turf.turkey.turmoil.turret.turtle.tusk.tutor.tutu.tux.tweak.tweed.tweet.tweezers.twelve.twentieth.twenty.twerp.twice.twiddle.twiddling.twig.twilight.twine.twins.twirl.twistable.twisted.twister.twisting.twisty.twitch.twitter.tycoon.tying.tyke.udder.ultimate.ultimatum.ultra.umbilical.umbrella.umpire.unabashed.unable.unadorned.unadvised.unafraid.unaired.unaligned.unaltered.unarmored.unashamed.unaudited.unawake.unaware.unbaked.unbalance.unbeaten.unbend.unbent.unbiased.unbitten.unblended.unblessed.unblock.unbolted.unbounded.unboxed.unbraided.unbridle.unbroken.unbuckled.unbundle.unburned.unbutton.uncanny.uncapped.uncaring.uncertain.unchain.unchanged.uncharted.uncheck.uncivil.unclad.unclaimed.unclamped.unclasp.uncle.unclip.uncloak.unclog.unclothed.uncoated.uncoiled.uncolored.uncombed.uncommon.uncooked.uncork.uncorrupt.uncounted.uncouple.uncouth.uncover.uncross.uncrown.uncrushed.uncured.uncurious.uncurled.uncut.undamaged.undated.undaunted.undead.undecided.undefined.underage.underarm.undercoat.undercook.undercut.underdog.underdone.underfed.underfeed.underfoot.undergo.undergrad.underhand.underline.underling.undermine.undermost.underpaid.underpass.underpay.underrate.undertake.undertone.undertook.undertow.underuse.underwear.underwent.underwire.undesired.undiluted.undivided.undocked.undoing.undone.undrafted.undress.undrilled.undusted.undying.unearned.unearth.unease.uneasily.uneasy.uneatable.uneaten.unedited.unelected.unending.unengaged.unenvied.unequal.unethical.uneven.unexpired.unexposed.unfailing.unfair.unfasten.unfazed.unfeeling.unfiled.unfilled.unfitted.unfitting.unfixable.unfixed.unflawed.unfocused.unfold.unfounded.unframed.unfreeze.unfrosted.unfrozen.unfunded.unglazed.ungloved.unglue.ungodly.ungraded.ungreased.unguarded.unguided.unhappily.unhappy.unharmed.unhealthy.unheard.unhearing.unheated.unhelpful.unhidden.unhinge.unhitched.unholy.unhook.unicorn.unicycle.unified.unifier.uniformed.uniformly.unify.unimpeded.uninjured.uninstall.uninsured.uninvited.union.uniquely.unisexual.unison.unissued.unit.universal.universe.unjustly.unkempt.unkind.unknotted.unknowing.unknown.unlaced.unlatch.unlawful.unleaded.unlearned.unleash.unless.unleveled.unlighted.unlikable.unlimited.unlined.unlinked.unlisted.unlit.unlivable.unloaded.unloader.unlocked.unlocking.unlovable.unloved.unlovely.unloving.unluckily.unlucky.unmade.unmanaged.unmanned.unmapped.unmarked.unmasked.unmasking.unmatched.unmindful.unmixable.unmixed.unmolded.unmoral.unmovable.unmoved.unmoving.unnamable.unnamed.unnatural.unneeded.unnerve.unnerving.unnoticed.unopened.unopposed.unpack.unpadded.unpaid.unpainted.unpaired.unpaved.unpeeled.unpicked.unpiloted.unpinned.unplanned.unplanted.unpleased.unpledged.unplowed.unplug.unpopular.unproven.unquote.unranked.unrated.unraveled.unreached.unread.unreal.unreeling.unrefined.unrelated.unrented.unrest.unretired.unrevised.unrigged.unripe.unrivaled.unroasted.unrobed.unroll.unruffled.unruly.unrushed.unsaddle.unsafe.unsaid.unsalted.unsaved.unsavory.unscathed.unscented.unscrew.unsealed.unseated.unsecured.unseeing.unseemly.unseen.unselect.unselfish.unsent.unsettled.unshackle.unshaken.unshaved.unshaven.unsheathe.unshipped.unsightly.unsigned.unskilled.unsliced.unsmooth.unsnap.unsocial.unsoiled.unsold.unsolved.unsorted.unspoiled.unspoken.unstable.unstaffed.unstamped.unsteady.unsterile.unstirred.unstitch.unstopped.unstuck.unstuffed.unstylish.unsubtle.unsubtly.unsuited.unsure.unsworn.untagged.untainted.untaken.untamed.untangled.untapped.untaxed.unthawed.unthread.untidy.untie.until.untimed.untimely.untitled.untoasted.untold.untouched.untracked.untrained.untreated.untried.untrimmed.untrue.untruth.unturned.untwist.untying.unusable.unused.unusual.unvalued.unvaried.unvarying.unveiled.unveiling.unvented.unviable.unvisited.unvocal.unwanted.unwarlike.unwary.unwashed.unwatched.unweave.unwed.unwelcome.unwell.unwieldy.unwilling.unwind.unwired.unwitting.unwomanly.unworldly.unworn.unworried.unworthy.unwound.unwoven.unwrapped.unwritten.unzip.upbeat.upchuck.upcoming.upcountry.update.upfront.upgrade.upheaval.upheld.uphill.uphold.uplifted.uplifting.upload.upon.upper.upright.uprising.upriver.uproar.uproot.upscale.upside.upstage.upstairs.upstart.upstate.upstream.upstroke.upswing.uptake.uptight.uptown.upturned.upward.upwind.uranium.urban.urchin.urethane.urgency.urgent.urging.urologist.urology.usable.usage.useable.used.uselessly.user.usher.usual.utensil.utility.utilize.utmost.utopia.utter.vacancy.vacant.vacate.vacation.vagabond.vagrancy.vagrantly.vaguely.vagueness.valiant.valid.valium.valley.valuables.value.vanilla.vanish.vanity.vanquish.vantage.vaporizer.variable.variably.varied.variety.various.varmint.varnish.varsity.varying.vascular.vaseline.vastly.vastness.veal.vegan.veggie.vehicular.velcro.velocity.velvet.vendetta.vending.vendor.veneering.vengeful.venomous.ventricle.venture.venue.venus.verbalize.verbally.verbose.verdict.verify.verse.version.versus.vertebrae.vertical.vertigo.very.vessel.vest.veteran.veto.vexingly.viability.viable.vibes.vice.vicinity.victory.video.viewable.viewer.viewing.viewless.viewpoint.vigorous.village.villain.vindicate.vineyard.vintage.violate.violation.violator.violet.violin.viper.viral.virtual.virtuous.virus.visa.viscosity.viscous.viselike.visible.visibly.vision.visiting.visitor.visor.vista.vitality.vitalize.vitally.vitamins.vivacious.vividly.vividness.vixen.vocalist.vocalize.vocally.vocation.voice.voicing.void.volatile.volley.voltage.volumes.voter.voting.voucher.vowed.vowel.voyage.wackiness.wad.wafer.waffle.waged.wager.wages.waggle.wagon.wake.waking.walk.walmart.walnut.walrus.waltz.wand.wannabe.wanted.wanting.wasabi.washable.washbasin.washboard.washbowl.washcloth.washday.washed.washer.washhouse.washing.washout.washroom.washstand.washtub.wasp.wasting.watch.water.waviness.waving.wavy.whacking.whacky.wham.wharf.wheat.whenever.whiff.whimsical.whinny.whiny.whisking.whoever.whole.whomever.whoopee.whooping.whoops.why.wick.widely.widen.widget.widow.width.wieldable.wielder.wife.wifi.wikipedia.wildcard.wildcat.wilder.wildfire.wildfowl.wildland.wildlife.wildly.wildness.willed.willfully.willing.willow.willpower.wilt.wimp.wince.wincing.wind.wing.winking.winner.winnings.winter.wipe.wired.wireless.wiring.wiry.wisdom.wise.wish.wisplike.wispy.wistful.wizard.wobble.wobbling.wobbly.wok.wolf.wolverine.womanhood.womankind.womanless.womanlike.womanly.womb.woof.wooing.wool.woozy.word.work.worried.worrier.worrisome.worry.worsening.worshiper.worst.wound.woven.wow.wrangle.wrath.wreath.wreckage.wrecker.wrecking.wrench.wriggle.wriggly.wrinkle.wrinkly.wrist.writing.written.wrongdoer.wronged.wrongful.wrongly.wrongness.wrought.xbox.xerox.yahoo.yam.yanking.yapping.yard.yarn.yeah.yearbook.yearling.yearly.yearning.yeast.yelling.yelp.yen.yesterday.yiddish.yield.yin.yippee.yo-yo.yodel.yoga.yogurt.yonder.yoyo.yummy.zap.zealous.zebra.zen.zeppelin.zero.zestfully.zesty.zigzagged.zipfile.zipping.zippy.zips.zit.zodiac.zombie.zone.zoning.zookeeper.zoologist.zoology.zoom`.split(`.`)),q=Object.freeze(K.filter(e=>!e.includes(`-`)));function J({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{fillRule:`evenodd`,d:`M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75 9.75-4.365 9.75-9.75S17.385 2.25 12 2.25Zm-1.72 6.97a.75.75 0 1 0-1.06 1.06L10.94 12l-1.72 1.72a.75.75 0 1 0 1.06 1.06L12 13.06l1.72 1.72a.75.75 0 1 0 1.06-1.06L13.06 12l1.72-1.72a.75.75 0 1 0-1.06-1.06L12 10.94l-1.72-1.72Z`,clipRule:`evenodd`}))}var Y=P.forwardRef(J),X=({buttonHideAnimations:e,buttonLoading:t,password:n,onSubmit:r,onBack:i})=>{let[a,o]=(0,P.useState)(!0),[c,f]=(0,P.useState)(!1),[p,g]=(0,P.useState)(``),_=n===p;return(0,P.useEffect)((()=>{p&&!c&&f(!0)}),[p]),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{closeable:!1,backFn:i}),(0,N.jsx)(O,{}),(0,N.jsxs)(v,{children:[(0,N.jsxs)(x,{children:[(0,N.jsx)(D,{height:48,width:48,stroke:`var(--privy-color-background)`,fill:`var(--privy-color-accent)`}),(0,N.jsx)(`h3`,{style:{color:`var(--privy-color-foreground)`},children:`Confirm your password`}),(0,N.jsx)(`p`,{style:{color:`var(--privy-color-foreground-2)`},children:`Please re-enter your password below to continue.`})]}),(0,N.jsxs)(h,{children:[(0,N.jsx)(u,{value:p,onChange:e=>g(e.target.value),onKeyUp:e=>{e.key===`Enter`&&r()},onBlur:()=>f(!0),placeholder:`confirm your password`,type:a?`password`:`text`,style:{paddingRight:`2.3rem`}}),(0,N.jsx)(m,{style:{right:`0.75rem`},children:a?(0,N.jsx)(b,{onClick:()=>o(!1)}):(0,N.jsx)(S,{onClick:()=>o(!0)})})]}),(0,N.jsx)(d,{"aria-hidden":!c||_,error:!0,children:`Passwords do not match`})]}),(0,N.jsx)(w,{onClick:r,loading:t,disabled:!_,$hideAnimations:e,children:`Continue`}),(0,N.jsx)(A,{}),(0,N.jsx)(l,{})]})},ie=({buttonHideAnimations:e,buttonLoading:t,onSubmit:n,onBack:r,config:i})=>{let[a,o]=(0,P.useState)(!1);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{closeable:!1,backFn:r}),(0,N.jsx)(O,{}),(0,N.jsxs)(v,{children:[(0,N.jsxs)(x,{children:[(0,N.jsx)(D,{height:48,width:48,stroke:`var(--privy-color-background)`,fill:`var(--privy-color-error)`}),(0,N.jsx)(`h3`,{style:{color:`var(--privy-color-foreground)`},children:`Confirm you have saved`}),(0,N.jsx)(`p`,{style:{color:`var(--privy-color-foreground-2)`},children:`Losing access to your password means you will lose access to your account.`})]}),(0,N.jsx)(_,{children:(0,N.jsxs)(g,{style:{color:`var(--privy-color-error)`,cursor:`pointer`},onClick:e=>{e.preventDefault(),o((e=>!e))},children:[(0,N.jsx)(E,{color:`var(--privy-color-error)`,readOnly:!0,checked:a}),(0,N.jsx)(N.Fragment,{children:`I understand that if I lose my password and device, I will lose access to my account and my assets.`})]})})]}),(0,N.jsxs)(ae,{children:[i.initiatedBy===`user`&&(0,N.jsx)(c,{onClick:i.onCancel,disabled:t,children:`Cancel`}),(0,N.jsx)(w,{onClick:n,loading:t,$hideAnimations:e,disabled:!a,children:`Set Password`})]}),(0,N.jsx)(A,{}),(0,N.jsx)(l,{})]})},ae=a.div`
1
+ import{s as e,t}from"./rolldown-runtime-Bjp52BOI.js";import"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as n}from"./jsx-runtime-CndCZlyt.js";import{t as r}from"./react-BfYA1q0G.js";import{n as i}from"./modal-context-CwmSeFcv-DPWNJrfK.js";import{c as a}from"./Loader-UAZqxsnw-DJEVblm1.js";import{a as o,i as s,o as c,t as l}from"./ModalFooter-BCuEK_nz-C_71qsaz.js";import{a as u,c as d,d as f,f as p,h as m,i as h,l as g,m as _,n as v,o as y,p as b,r as x,s as S,t as C,u as w}from"./shared-DRZUmnL5-BewE5wK8.js";import{n as T,t as E}from"./Checkbox-D1EDeo41-BUfq0w99.js";import{t as D}from"./ExclamationTriangleIcon-Ca1Xlc_f.js";import{n as O,o as k,u as A}from"./Layouts-BMRfo5hw-e-sepi6F.js";import{n as j}from"./ScreenHeader-CHmc4-Lu-BvGTLg53.js";import{t as M}from"./CheckCircleIcon-BGSI8nKf.js";var N=n(),P=e(r());function F({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3`}))}var I=P.forwardRef(F);function ee({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75`}))}var te=P.forwardRef(ee);function ne({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M15.75 5.25a3 3 0 0 1 3 3m3 0a6 6 0 0 1-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1 1 21.75 8.25Z`}))}var re=P.forwardRef(ne),L=e(t(((e,t)=>{var n=function(e,t){return Math.round(t*Math.log(e)/Math.LN2)},r=function(e){return function(t){return e.reduce(function(e,n){return e+(n.re.test(t)?n.length:0)},0)}}([{name:`lowercase`,re:/[a-z]/,length:26},{name:`uppercase`,re:/[A-Z]/,length:26},{name:`numbers`,re:/[0-9]/,length:10},{name:`symbols`,re:/[^a-zA-Z0-9]/,length:33}]);t.exports=function(e){return e?n(r(e),e.length):0}}))(),1);function R(e){return crypto.getRandomValues(new Uint8Array(e))}var z=256,B=65536;function V(){let[e]=R(1);return e}function H(){let[e,t]=R(2);return(e<<8)+t}function U(e){if(typeof e!=`number`||e<2||e>B)throw Error(`Invalid number: number must be at least two and at most ${B}`);let t=e>256,n=t?B:z,r=t?H:V,i=e*Math.floor(n/e);for(;;){let t=r();if(t<i)return t%e}}function W(e,t,n){if(typeof e!=`number`||e<1)throw Error(`Invalid argument: length must be a number greater than or equal to 1`);if(typeof t!=`number`||t<0)throw Error(`Invalid argument: start must be a number greater than or equal to 0`);if(typeof n!=`number`||n>B)throw Error(`Invalid argument: end must be a number less than or equal to ${B}`);if(n-t<2)throw Error(`Invalid range: range must contain at least two values`);let r=[];for(let i=0;i<e;i++)r[i]=t+U(n-t);return r}function G(e,t,n=`-`){if(typeof e!=`number`||e<1)throw Error(`Invalid argument: length argument must be a number greater than or equal to 1`);if(!Array.isArray(t)||t.length<2)throw Error(`Invalid argument: wordlist argument must be an array with length greater than or equal to 2`);if(typeof n!=`string`)throw Error(`Invalid argument: sep argument must be a string`);return W(e,0,t.length).reduce((e,r,i)=>{let a=t[r];return e+(i===0?a:n+a)},``)}var K=Object.freeze(`abacus.abdomen.abdominal.abide.abiding.ability.ablaze.able.abnormal.abrasion.abrasive.abreast.abridge.abroad.abruptly.absence.absentee.absently.absinthe.absolute.absolve.abstain.abstract.absurd.accent.acclaim.acclimate.accompany.account.accuracy.accurate.accustom.acetone.achiness.aching.acid.acorn.acquaint.acquire.acre.acrobat.acronym.acting.action.activate.activator.active.activism.activist.activity.actress.acts.acutely.acuteness.aeration.aerobics.aerosol.aerospace.afar.affair.affected.affecting.affection.affidavit.affiliate.affirm.affix.afflicted.affluent.afford.affront.aflame.afloat.aflutter.afoot.afraid.afterglow.afterlife.aftermath.aftermost.afternoon.aged.ageless.agency.agenda.agent.aggregate.aghast.agile.agility.aging.agnostic.agonize.agonizing.agony.agreeable.agreeably.agreed.agreeing.agreement.aground.ahead.ahoy.aide.aids.aim.ajar.alabaster.alarm.albatross.album.alfalfa.algebra.algorithm.alias.alibi.alienable.alienate.aliens.alike.alive.alkaline.alkalize.almanac.almighty.almost.aloe.aloft.aloha.alone.alongside.aloof.alphabet.alright.although.altitude.alto.aluminum.alumni.always.amaretto.amaze.amazingly.amber.ambiance.ambiguity.ambiguous.ambition.ambitious.ambulance.ambush.amendable.amendment.amends.amenity.amiable.amicably.amid.amigo.amino.amiss.ammonia.ammonium.amnesty.amniotic.among.amount.amperage.ample.amplifier.amplify.amply.amuck.amulet.amusable.amused.amusement.amuser.amusing.anaconda.anaerobic.anagram.anatomist.anatomy.anchor.anchovy.ancient.android.anemia.anemic.aneurism.anew.angelfish.angelic.anger.angled.angler.angles.angling.angrily.angriness.anguished.angular.animal.animate.animating.animation.animator.anime.animosity.ankle.annex.annotate.announcer.annoying.annually.annuity.anointer.another.answering.antacid.antarctic.anteater.antelope.antennae.anthem.anthill.anthology.antibody.antics.antidote.antihero.antiquely.antiques.antiquity.antirust.antitoxic.antitrust.antiviral.antivirus.antler.antonym.antsy.anvil.anybody.anyhow.anymore.anyone.anyplace.anything.anytime.anyway.anywhere.aorta.apache.apostle.appealing.appear.appease.appeasing.appendage.appendix.appetite.appetizer.applaud.applause.apple.appliance.applicant.applied.apply.appointee.appraisal.appraiser.apprehend.approach.approval.approve.apricot.april.apron.aptitude.aptly.aqua.aqueduct.arbitrary.arbitrate.ardently.area.arena.arguable.arguably.argue.arise.armadillo.armband.armchair.armed.armful.armhole.arming.armless.armoire.armored.armory.armrest.army.aroma.arose.around.arousal.arrange.array.arrest.arrival.arrive.arrogance.arrogant.arson.art.ascend.ascension.ascent.ascertain.ashamed.ashen.ashes.ashy.aside.askew.asleep.asparagus.aspect.aspirate.aspire.aspirin.astonish.astound.astride.astrology.astronaut.astronomy.astute.atlantic.atlas.atom.atonable.atop.atrium.atrocious.atrophy.attach.attain.attempt.attendant.attendee.attention.attentive.attest.attic.attire.attitude.attractor.attribute.atypical.auction.audacious.audacity.audible.audibly.audience.audio.audition.augmented.august.authentic.author.autism.autistic.autograph.automaker.automated.automatic.autopilot.available.avalanche.avatar.avenge.avenging.avenue.average.aversion.avert.aviation.aviator.avid.avoid.await.awaken.award.aware.awhile.awkward.awning.awoke.awry.axis.babble.babbling.babied.baboon.backache.backboard.backboned.backdrop.backed.backer.backfield.backfire.backhand.backing.backlands.backlash.backless.backlight.backlit.backlog.backpack.backpedal.backrest.backroom.backshift.backside.backslid.backspace.backspin.backstab.backstage.backtalk.backtrack.backup.backward.backwash.backwater.backyard.bacon.bacteria.bacterium.badass.badge.badland.badly.badness.baffle.baffling.bagel.bagful.baggage.bagged.baggie.bagginess.bagging.baggy.bagpipe.baguette.baked.bakery.bakeshop.baking.balance.balancing.balcony.balmy.balsamic.bamboo.banana.banish.banister.banjo.bankable.bankbook.banked.banker.banking.banknote.bankroll.banner.bannister.banshee.banter.barbecue.barbed.barbell.barber.barcode.barge.bargraph.barista.baritone.barley.barmaid.barman.barn.barometer.barrack.barracuda.barrel.barrette.barricade.barrier.barstool.bartender.barterer.bash.basically.basics.basil.basin.basis.basket.batboy.batch.bath.baton.bats.battalion.battered.battering.battery.batting.battle.bauble.bazooka.blabber.bladder.blade.blah.blame.blaming.blanching.blandness.blank.blaspheme.blasphemy.blast.blatancy.blatantly.blazer.blazing.bleach.bleak.bleep.blemish.blend.bless.blighted.blimp.bling.blinked.blinker.blinking.blinks.blip.blissful.blitz.blizzard.bloated.bloating.blob.blog.bloomers.blooming.blooper.blot.blouse.blubber.bluff.bluish.blunderer.blunt.blurb.blurred.blurry.blurt.blush.blustery.boaster.boastful.boasting.boat.bobbed.bobbing.bobble.bobcat.bobsled.bobtail.bodacious.body.bogged.boggle.bogus.boil.bok.bolster.bolt.bonanza.bonded.bonding.bondless.boned.bonehead.boneless.bonelike.boney.bonfire.bonnet.bonsai.bonus.bony.boogeyman.boogieman.book.boondocks.booted.booth.bootie.booting.bootlace.bootleg.boots.boozy.borax.boring.borough.borrower.borrowing.boss.botanical.botanist.botany.botch.both.bottle.bottling.bottom.bounce.bouncing.bouncy.bounding.boundless.bountiful.bovine.boxcar.boxer.boxing.boxlike.boxy.breach.breath.breeches.breeching.breeder.breeding.breeze.breezy.brethren.brewery.brewing.briar.bribe.brick.bride.bridged.brigade.bright.brilliant.brim.bring.brink.brisket.briskly.briskness.bristle.brittle.broadband.broadcast.broaden.broadly.broadness.broadside.broadways.broiler.broiling.broken.broker.bronchial.bronco.bronze.bronzing.brook.broom.brought.browbeat.brownnose.browse.browsing.bruising.brunch.brunette.brunt.brush.brussels.brute.brutishly.bubble.bubbling.bubbly.buccaneer.bucked.bucket.buckle.buckshot.buckskin.bucktooth.buckwheat.buddhism.buddhist.budding.buddy.budget.buffalo.buffed.buffer.buffing.buffoon.buggy.bulb.bulge.bulginess.bulgur.bulk.bulldog.bulldozer.bullfight.bullfrog.bullhorn.bullion.bullish.bullpen.bullring.bullseye.bullwhip.bully.bunch.bundle.bungee.bunion.bunkbed.bunkhouse.bunkmate.bunny.bunt.busboy.bush.busily.busload.bust.busybody.buzz.cabana.cabbage.cabbie.cabdriver.cable.caboose.cache.cackle.cacti.cactus.caddie.caddy.cadet.cadillac.cadmium.cage.cahoots.cake.calamari.calamity.calcium.calculate.calculus.caliber.calibrate.calm.caloric.calorie.calzone.camcorder.cameo.camera.camisole.camper.campfire.camping.campsite.campus.canal.canary.cancel.candied.candle.candy.cane.canine.canister.cannabis.canned.canning.cannon.cannot.canola.canon.canopener.canopy.canteen.canyon.capable.capably.capacity.cape.capillary.capital.capitol.capped.capricorn.capsize.capsule.caption.captivate.captive.captivity.capture.caramel.carat.caravan.carbon.cardboard.carded.cardiac.cardigan.cardinal.cardstock.carefully.caregiver.careless.caress.caretaker.cargo.caring.carless.carload.carmaker.carnage.carnation.carnival.carnivore.carol.carpenter.carpentry.carpool.carport.carried.carrot.carrousel.carry.cartel.cartload.carton.cartoon.cartridge.cartwheel.carve.carving.carwash.cascade.case.cash.casing.casino.casket.cassette.casually.casualty.catacomb.catalog.catalyst.catalyze.catapult.cataract.catatonic.catcall.catchable.catcher.catching.catchy.caterer.catering.catfight.catfish.cathedral.cathouse.catlike.catnap.catnip.catsup.cattail.cattishly.cattle.catty.catwalk.caucasian.caucus.causal.causation.cause.causing.cauterize.caution.cautious.cavalier.cavalry.caviar.cavity.cedar.celery.celestial.celibacy.celibate.celtic.cement.census.ceramics.ceremony.certainly.certainty.certified.certify.cesarean.cesspool.chafe.chaffing.chain.chair.chalice.challenge.chamber.chamomile.champion.chance.change.channel.chant.chaos.chaperone.chaplain.chapped.chaps.chapter.character.charbroil.charcoal.charger.charging.chariot.charity.charm.charred.charter.charting.chase.chasing.chaste.chastise.chastity.chatroom.chatter.chatting.chatty.cheating.cheddar.cheek.cheer.cheese.cheesy.chef.chemicals.chemist.chemo.cherisher.cherub.chess.chest.chevron.chevy.chewable.chewer.chewing.chewy.chief.chihuahua.childcare.childhood.childish.childless.childlike.chili.chill.chimp.chip.chirping.chirpy.chitchat.chivalry.chive.chloride.chlorine.choice.chokehold.choking.chomp.chooser.choosing.choosy.chop.chosen.chowder.chowtime.chrome.chubby.chuck.chug.chummy.chump.chunk.churn.chute.cider.cilantro.cinch.cinema.cinnamon.circle.circling.circular.circulate.circus.citable.citadel.citation.citizen.citric.citrus.city.civic.civil.clad.claim.clambake.clammy.clamor.clamp.clamshell.clang.clanking.clapped.clapper.clapping.clarify.clarinet.clarity.clash.clasp.class.clatter.clause.clavicle.claw.clay.clean.clear.cleat.cleaver.cleft.clench.clergyman.clerical.clerk.clever.clicker.client.climate.climatic.cling.clinic.clinking.clip.clique.cloak.clobber.clock.clone.cloning.closable.closure.clothes.clothing.cloud.clover.clubbed.clubbing.clubhouse.clump.clumsily.clumsy.clunky.clustered.clutch.clutter.coach.coagulant.coastal.coaster.coasting.coastland.coastline.coat.coauthor.cobalt.cobbler.cobweb.cocoa.coconut.cod.coeditor.coerce.coexist.coffee.cofounder.cognition.cognitive.cogwheel.coherence.coherent.cohesive.coil.coke.cola.cold.coleslaw.coliseum.collage.collapse.collar.collected.collector.collide.collie.collision.colonial.colonist.colonize.colony.colossal.colt.coma.come.comfort.comfy.comic.coming.comma.commence.commend.comment.commerce.commode.commodity.commodore.common.commotion.commute.commuting.compacted.compacter.compactly.compactor.companion.company.compare.compel.compile.comply.component.composed.composer.composite.compost.composure.compound.compress.comprised.computer.computing.comrade.concave.conceal.conceded.concept.concerned.concert.conch.concierge.concise.conclude.concrete.concur.condense.condiment.condition.condone.conducive.conductor.conduit.cone.confess.confetti.confidant.confident.confider.confiding.configure.confined.confining.confirm.conflict.conform.confound.confront.confused.confusing.confusion.congenial.congested.congrats.congress.conical.conjoined.conjure.conjuror.connected.connector.consensus.consent.console.consoling.consonant.constable.constant.constrain.constrict.construct.consult.consumer.consuming.contact.container.contempt.contend.contented.contently.contents.contest.context.contort.contour.contrite.control.contusion.convene.convent.copartner.cope.copied.copier.copilot.coping.copious.copper.copy.coral.cork.cornball.cornbread.corncob.cornea.corned.corner.cornfield.cornflake.cornhusk.cornmeal.cornstalk.corny.coronary.coroner.corporal.corporate.corral.correct.corridor.corrode.corroding.corrosive.corsage.corset.cortex.cosigner.cosmetics.cosmic.cosmos.cosponsor.cost.cottage.cotton.couch.cough.could.countable.countdown.counting.countless.country.county.courier.covenant.cover.coveted.coveting.coyness.cozily.coziness.cozy.crabbing.crabgrass.crablike.crabmeat.cradle.cradling.crafter.craftily.craftsman.craftwork.crafty.cramp.cranberry.crane.cranial.cranium.crank.crate.crave.craving.crawfish.crawlers.crawling.crayfish.crayon.crazed.crazily.craziness.crazy.creamed.creamer.creamlike.crease.creasing.creatable.create.creation.creative.creature.credible.credibly.credit.creed.creme.creole.crepe.crept.crescent.crested.cresting.crestless.crevice.crewless.crewman.crewmate.crib.cricket.cried.crier.crimp.crimson.cringe.cringing.crinkle.crinkly.crisped.crisping.crisply.crispness.crispy.criteria.critter.croak.crock.crook.croon.crop.cross.crouch.crouton.crowbar.crowd.crown.crucial.crudely.crudeness.cruelly.cruelness.cruelty.crumb.crummiest.crummy.crumpet.crumpled.cruncher.crunching.crunchy.crusader.crushable.crushed.crusher.crushing.crust.crux.crying.cryptic.crystal.cubbyhole.cube.cubical.cubicle.cucumber.cuddle.cuddly.cufflink.culinary.culminate.culpable.culprit.cultivate.cultural.culture.cupbearer.cupcake.cupid.cupped.cupping.curable.curator.curdle.cure.curfew.curing.curled.curler.curliness.curling.curly.curry.curse.cursive.cursor.curtain.curtly.curtsy.curvature.curve.curvy.cushy.cusp.cussed.custard.custodian.custody.customary.customer.customize.customs.cut.cycle.cyclic.cycling.cyclist.cylinder.cymbal.cytoplasm.cytoplast.dab.dad.daffodil.dagger.daily.daintily.dainty.dairy.daisy.dallying.dance.dancing.dandelion.dander.dandruff.dandy.danger.dangle.dangling.daredevil.dares.daringly.darkened.darkening.darkish.darkness.darkroom.darling.darn.dart.darwinism.dash.dastardly.data.datebook.dating.daughter.daunting.dawdler.dawn.daybed.daybreak.daycare.daydream.daylight.daylong.dayroom.daytime.dazzler.dazzling.deacon.deafening.deafness.dealer.dealing.dealmaker.dealt.dean.debatable.debate.debating.debit.debrief.debtless.debtor.debug.debunk.decade.decaf.decal.decathlon.decay.deceased.deceit.deceiver.deceiving.december.decency.decent.deception.deceptive.decibel.decidable.decimal.decimeter.decipher.deck.declared.decline.decode.decompose.decorated.decorator.decoy.decrease.decree.dedicate.dedicator.deduce.deduct.deed.deem.deepen.deeply.deepness.deface.defacing.defame.default.defeat.defection.defective.defendant.defender.defense.defensive.deferral.deferred.defiance.defiant.defile.defiling.define.definite.deflate.deflation.deflator.deflected.deflector.defog.deforest.defraud.defrost.deftly.defuse.defy.degraded.degrading.degrease.degree.dehydrate.deity.dejected.delay.delegate.delegator.delete.deletion.delicacy.delicate.delicious.delighted.delirious.delirium.deliverer.delivery.delouse.delta.deluge.delusion.deluxe.demanding.demeaning.demeanor.demise.democracy.democrat.demote.demotion.demystify.denatured.deniable.denial.denim.denote.dense.density.dental.dentist.denture.deny.deodorant.deodorize.departed.departure.depict.deplete.depletion.deplored.deploy.deport.depose.depraved.depravity.deprecate.depress.deprive.depth.deputize.deputy.derail.deranged.derby.derived.desecrate.deserve.deserving.designate.designed.designer.designing.deskbound.desktop.deskwork.desolate.despair.despise.despite.destiny.destitute.destruct.detached.detail.detection.detective.detector.detention.detergent.detest.detonate.detonator.detoxify.detract.deuce.devalue.deviancy.deviant.deviate.deviation.deviator.device.devious.devotedly.devotee.devotion.devourer.devouring.devoutly.dexterity.dexterous.diabetes.diabetic.diabolic.diagnoses.diagnosis.diagram.dial.diameter.diaper.diaphragm.diary.dice.dicing.dictate.dictation.dictator.difficult.diffused.diffuser.diffusion.diffusive.dig.dilation.diligence.diligent.dill.dilute.dime.diminish.dimly.dimmed.dimmer.dimness.dimple.diner.dingbat.dinghy.dinginess.dingo.dingy.dining.dinner.diocese.dioxide.diploma.dipped.dipper.dipping.directed.direction.directive.directly.directory.direness.dirtiness.disabled.disagree.disallow.disarm.disarray.disaster.disband.disbelief.disburse.discard.discern.discharge.disclose.discolor.discount.discourse.discover.discuss.disdain.disengage.disfigure.disgrace.dish.disinfect.disjoin.disk.dislike.disliking.dislocate.dislodge.disloyal.dismantle.dismay.dismiss.dismount.disobey.disorder.disown.disparate.disparity.dispatch.dispense.dispersal.dispersed.disperser.displace.display.displease.disposal.dispose.disprove.dispute.disregard.disrupt.dissuade.distance.distant.distaste.distill.distinct.distort.distract.distress.district.distrust.ditch.ditto.ditzy.dividable.divided.dividend.dividers.dividing.divinely.diving.divinity.divisible.divisibly.division.divisive.divorcee.dizziness.dizzy.doable.docile.dock.doctrine.document.dodge.dodgy.doily.doing.dole.dollar.dollhouse.dollop.dolly.dolphin.domain.domelike.domestic.dominion.dominoes.donated.donation.donator.donor.donut.doodle.doorbell.doorframe.doorknob.doorman.doormat.doornail.doorpost.doorstep.doorstop.doorway.doozy.dork.dormitory.dorsal.dosage.dose.dotted.doubling.douche.dove.down.dowry.doze.drab.dragging.dragonfly.dragonish.dragster.drainable.drainage.drained.drainer.drainpipe.dramatic.dramatize.drank.drapery.drastic.draw.dreaded.dreadful.dreadlock.dreamboat.dreamily.dreamland.dreamless.dreamlike.dreamt.dreamy.drearily.dreary.drench.dress.drew.dribble.dried.drier.drift.driller.drilling.drinkable.drinking.dripping.drippy.drivable.driven.driver.driveway.driving.drizzle.drizzly.drone.drool.droop.drop-down.dropbox.dropkick.droplet.dropout.dropper.drove.drown.drowsily.drudge.drum.dry.dubbed.dubiously.duchess.duckbill.ducking.duckling.ducktail.ducky.duct.dude.duffel.dugout.duh.duke.duller.dullness.duly.dumping.dumpling.dumpster.duo.dupe.duplex.duplicate.duplicity.durable.durably.duration.duress.during.dusk.dust.dutiful.duty.duvet.dwarf.dweeb.dwelled.dweller.dwelling.dwindle.dwindling.dynamic.dynamite.dynasty.dyslexia.dyslexic.each.eagle.earache.eardrum.earflap.earful.earlobe.early.earmark.earmuff.earphone.earpiece.earplugs.earring.earshot.earthen.earthlike.earthling.earthly.earthworm.earthy.earwig.easeful.easel.easiest.easily.easiness.easing.eastbound.eastcoast.easter.eastward.eatable.eaten.eatery.eating.eats.ebay.ebony.ebook.ecard.eccentric.echo.eclair.eclipse.ecologist.ecology.economic.economist.economy.ecosphere.ecosystem.edge.edginess.edging.edgy.edition.editor.educated.education.educator.eel.effective.effects.efficient.effort.eggbeater.egging.eggnog.eggplant.eggshell.egomaniac.egotism.egotistic.either.eject.elaborate.elastic.elated.elbow.eldercare.elderly.eldest.electable.election.elective.elephant.elevate.elevating.elevation.elevator.eleven.elf.eligible.eligibly.eliminate.elite.elitism.elixir.elk.ellipse.elliptic.elm.elongated.elope.eloquence.eloquent.elsewhere.elude.elusive.elves.email.embargo.embark.embassy.embattled.embellish.ember.embezzle.emblaze.emblem.embody.embolism.emboss.embroider.emcee.emerald.emergency.emission.emit.emote.emoticon.emotion.empathic.empathy.emperor.emphases.emphasis.emphasize.emphatic.empirical.employed.employee.employer.emporium.empower.emptier.emptiness.empty.emu.enable.enactment.enamel.enchanted.enchilada.encircle.enclose.enclosure.encode.encore.encounter.encourage.encroach.encrust.encrypt.endanger.endeared.endearing.ended.ending.endless.endnote.endocrine.endorphin.endorse.endowment.endpoint.endurable.endurance.enduring.energetic.energize.energy.enforced.enforcer.engaged.engaging.engine.engorge.engraved.engraver.engraving.engross.engulf.enhance.enigmatic.enjoyable.enjoyably.enjoyer.enjoying.enjoyment.enlarged.enlarging.enlighten.enlisted.enquirer.enrage.enrich.enroll.enslave.ensnare.ensure.entail.entangled.entering.entertain.enticing.entire.entitle.entity.entomb.entourage.entrap.entree.entrench.entrust.entryway.entwine.enunciate.envelope.enviable.enviably.envious.envision.envoy.envy.enzyme.epic.epidemic.epidermal.epidermis.epidural.epilepsy.epileptic.epilogue.epiphany.episode.equal.equate.equation.equator.equinox.equipment.equity.equivocal.eradicate.erasable.erased.eraser.erasure.ergonomic.errand.errant.erratic.error.erupt.escalate.escalator.escapable.escapade.escapist.escargot.eskimo.esophagus.espionage.espresso.esquire.essay.essence.essential.establish.estate.esteemed.estimate.estimator.estranged.estrogen.etching.eternal.eternity.ethanol.ether.ethically.ethics.euphemism.evacuate.evacuee.evade.evaluate.evaluator.evaporate.evasion.evasive.even.everglade.evergreen.everybody.everyday.everyone.evict.evidence.evident.evil.evoke.evolution.evolve.exact.exalted.example.excavate.excavator.exceeding.exception.excess.exchange.excitable.exciting.exclaim.exclude.excluding.exclusion.exclusive.excretion.excretory.excursion.excusable.excusably.excuse.exemplary.exemplify.exemption.exerciser.exert.exes.exfoliate.exhale.exhaust.exhume.exile.existing.exit.exodus.exonerate.exorcism.exorcist.expand.expanse.expansion.expansive.expectant.expedited.expediter.expel.expend.expenses.expensive.expert.expire.expiring.explain.expletive.explicit.explode.exploit.explore.exploring.exponent.exporter.exposable.expose.exposure.express.expulsion.exquisite.extended.extending.extent.extenuate.exterior.external.extinct.extortion.extradite.extras.extrovert.extrude.extruding.exuberant.fable.fabric.fabulous.facebook.facecloth.facedown.faceless.facelift.faceplate.faceted.facial.facility.facing.facsimile.faction.factoid.factor.factsheet.factual.faculty.fade.fading.failing.falcon.fall.false.falsify.fame.familiar.family.famine.famished.fanatic.fancied.fanciness.fancy.fanfare.fang.fanning.fantasize.fantastic.fantasy.fascism.fastball.faster.fasting.fastness.faucet.favorable.favorably.favored.favoring.favorite.fax.feast.federal.fedora.feeble.feed.feel.feisty.feline.felt-tip.feminine.feminism.feminist.feminize.femur.fence.fencing.fender.ferment.fernlike.ferocious.ferocity.ferret.ferris.ferry.fervor.fester.festival.festive.festivity.fetal.fetch.fever.fiber.fiction.fiddle.fiddling.fidelity.fidgeting.fidgety.fifteen.fifth.fiftieth.fifty.figment.figure.figurine.filing.filled.filler.filling.film.filter.filth.filtrate.finale.finalist.finalize.finally.finance.financial.finch.fineness.finer.finicky.finished.finisher.finishing.finite.finless.finlike.fiscally.fit.five.flaccid.flagman.flagpole.flagship.flagstick.flagstone.flail.flakily.flaky.flame.flammable.flanked.flanking.flannels.flap.flaring.flashback.flashbulb.flashcard.flashily.flashing.flashy.flask.flatbed.flatfoot.flatly.flatness.flatten.flattered.flatterer.flattery.flattop.flatware.flatworm.flavored.flavorful.flavoring.flaxseed.fled.fleshed.fleshy.flick.flier.flight.flinch.fling.flint.flip.flirt.float.flock.flogging.flop.floral.florist.floss.flounder.flyable.flyaway.flyer.flying.flyover.flypaper.foam.foe.fog.foil.folic.folk.follicle.follow.fondling.fondly.fondness.fondue.font.food.fool.footage.football.footbath.footboard.footer.footgear.foothill.foothold.footing.footless.footman.footnote.footpad.footpath.footprint.footrest.footsie.footsore.footwear.footwork.fossil.foster.founder.founding.fountain.fox.foyer.fraction.fracture.fragile.fragility.fragment.fragrance.fragrant.frail.frame.framing.frantic.fraternal.frayed.fraying.frays.freckled.freckles.freebase.freebee.freebie.freedom.freefall.freehand.freeing.freeload.freely.freemason.freeness.freestyle.freeware.freeway.freewill.freezable.freezing.freight.french.frenzied.frenzy.frequency.frequent.fresh.fretful.fretted.friction.friday.fridge.fried.friend.frighten.frightful.frigidity.frigidly.frill.fringe.frisbee.frisk.fritter.frivolous.frolic.from.front.frostbite.frosted.frostily.frosting.frostlike.frosty.froth.frown.frozen.fructose.frugality.frugally.fruit.frustrate.frying.gab.gaffe.gag.gainfully.gaining.gains.gala.gallantly.galleria.gallery.galley.gallon.gallows.gallstone.galore.galvanize.gambling.game.gaming.gamma.gander.gangly.gangrene.gangway.gap.garage.garbage.garden.gargle.garland.garlic.garment.garnet.garnish.garter.gas.gatherer.gathering.gating.gauging.gauntlet.gauze.gave.gawk.gazing.gear.gecko.geek.geiger.gem.gender.generic.generous.genetics.genre.gentile.gentleman.gently.gents.geography.geologic.geologist.geology.geometric.geometry.geranium.gerbil.geriatric.germicide.germinate.germless.germproof.gestate.gestation.gesture.getaway.getting.getup.giant.gibberish.giblet.giddily.giddiness.giddy.gift.gigabyte.gigahertz.gigantic.giggle.giggling.giggly.gigolo.gilled.gills.gimmick.girdle.giveaway.given.giver.giving.gizmo.gizzard.glacial.glacier.glade.gladiator.gladly.glamorous.glamour.glance.glancing.glandular.glare.glaring.glass.glaucoma.glazing.gleaming.gleeful.glider.gliding.glimmer.glimpse.glisten.glitch.glitter.glitzy.gloater.gloating.gloomily.gloomy.glorified.glorifier.glorify.glorious.glory.gloss.glove.glowing.glowworm.glucose.glue.gluten.glutinous.glutton.gnarly.gnat.goal.goatskin.goes.goggles.going.goldfish.goldmine.goldsmith.golf.goliath.gonad.gondola.gone.gong.good.gooey.goofball.goofiness.goofy.google.goon.gopher.gore.gorged.gorgeous.gory.gosling.gossip.gothic.gotten.gout.gown.grab.graceful.graceless.gracious.gradation.graded.grader.gradient.grading.gradually.graduate.graffiti.grafted.grafting.grain.granddad.grandkid.grandly.grandma.grandpa.grandson.granite.granny.granola.grant.granular.grape.graph.grapple.grappling.grasp.grass.gratified.gratify.grating.gratitude.gratuity.gravel.graveness.graves.graveyard.gravitate.gravity.gravy.gray.grazing.greasily.greedily.greedless.greedy.green.greeter.greeting.grew.greyhound.grid.grief.grievance.grieving.grievous.grill.grimace.grimacing.grime.griminess.grimy.grinch.grinning.grip.gristle.grit.groggily.groggy.groin.groom.groove.grooving.groovy.grope.ground.grouped.grout.grove.grower.growing.growl.grub.grudge.grudging.grueling.gruffly.grumble.grumbling.grumbly.grumpily.grunge.grunt.guacamole.guidable.guidance.guide.guiding.guileless.guise.gulf.gullible.gully.gulp.gumball.gumdrop.gumminess.gumming.gummy.gurgle.gurgling.guru.gush.gusto.gusty.gutless.guts.gutter.guy.guzzler.gyration.habitable.habitant.habitat.habitual.hacked.hacker.hacking.hacksaw.had.haggler.haiku.half.halogen.halt.halved.halves.hamburger.hamlet.hammock.hamper.hamster.hamstring.handbag.handball.handbook.handbrake.handcart.handclap.handclasp.handcraft.handcuff.handed.handful.handgrip.handgun.handheld.handiness.handiwork.handlebar.handled.handler.handling.handmade.handoff.handpick.handprint.handrail.handsaw.handset.handsfree.handshake.handstand.handwash.handwork.handwoven.handwrite.handyman.hangnail.hangout.hangover.hangup.hankering.hankie.hanky.haphazard.happening.happier.happiest.happily.happiness.happy.harbor.hardcopy.hardcore.hardcover.harddisk.hardened.hardener.hardening.hardhat.hardhead.hardiness.hardly.hardness.hardship.hardware.hardwired.hardwood.hardy.harmful.harmless.harmonica.harmonics.harmonize.harmony.harness.harpist.harsh.harvest.hash.hassle.haste.hastily.hastiness.hasty.hatbox.hatchback.hatchery.hatchet.hatching.hatchling.hate.hatless.hatred.haunt.haven.hazard.hazelnut.hazily.haziness.hazing.hazy.headache.headband.headboard.headcount.headdress.headed.header.headfirst.headgear.heading.headlamp.headless.headlock.headphone.headpiece.headrest.headroom.headscarf.headset.headsman.headstand.headstone.headway.headwear.heap.heat.heave.heavily.heaviness.heaving.hedge.hedging.heftiness.hefty.helium.helmet.helper.helpful.helping.helpless.helpline.hemlock.hemstitch.hence.henchman.henna.herald.herbal.herbicide.herbs.heritage.hermit.heroics.heroism.herring.herself.hertz.hesitancy.hesitant.hesitate.hexagon.hexagram.hubcap.huddle.huddling.huff.hug.hula.hulk.hull.human.humble.humbling.humbly.humid.humiliate.humility.humming.hummus.humongous.humorist.humorless.humorous.humpback.humped.humvee.hunchback.hundredth.hunger.hungrily.hungry.hunk.hunter.hunting.huntress.huntsman.hurdle.hurled.hurler.hurling.hurray.hurricane.hurried.hurry.hurt.husband.hush.husked.huskiness.hut.hybrid.hydrant.hydrated.hydration.hydrogen.hydroxide.hyperlink.hypertext.hyphen.hypnoses.hypnosis.hypnotic.hypnotism.hypnotist.hypnotize.hypocrisy.hypocrite.ibuprofen.ice.iciness.icing.icky.icon.icy.idealism.idealist.idealize.ideally.idealness.identical.identify.identity.ideology.idiocy.idiom.idly.igloo.ignition.ignore.iguana.illicitly.illusion.illusive.image.imaginary.imagines.imaging.imbecile.imitate.imitation.immature.immerse.immersion.imminent.immobile.immodest.immorally.immortal.immovable.immovably.immunity.immunize.impaired.impale.impart.impatient.impeach.impeding.impending.imperfect.imperial.impish.implant.implement.implicate.implicit.implode.implosion.implosive.imply.impolite.important.importer.impose.imposing.impotence.impotency.impotent.impound.imprecise.imprint.imprison.impromptu.improper.improve.improving.improvise.imprudent.impulse.impulsive.impure.impurity.iodine.iodize.ion.ipad.iphone.ipod.irate.irk.iron.irregular.irrigate.irritable.irritably.irritant.irritate.islamic.islamist.isolated.isolating.isolation.isotope.issue.issuing.italicize.italics.item.itinerary.itunes.ivory.ivy.jab.jackal.jacket.jackknife.jackpot.jailbird.jailbreak.jailer.jailhouse.jalapeno.jam.janitor.january.jargon.jarring.jasmine.jaundice.jaunt.java.jawed.jawless.jawline.jaws.jaybird.jaywalker.jazz.jeep.jeeringly.jellied.jelly.jersey.jester.jet.jiffy.jigsaw.jimmy.jingle.jingling.jinx.jitters.jittery.job.jockey.jockstrap.jogger.jogging.john.joining.jokester.jokingly.jolliness.jolly.jolt.jot.jovial.joyfully.joylessly.joyous.joyride.joystick.jubilance.jubilant.judge.judgingly.judicial.judiciary.judo.juggle.juggling.jugular.juice.juiciness.juicy.jujitsu.jukebox.july.jumble.jumbo.jump.junction.juncture.june.junior.juniper.junkie.junkman.junkyard.jurist.juror.jury.justice.justifier.justify.justly.justness.juvenile.kabob.kangaroo.karaoke.karate.karma.kebab.keenly.keenness.keep.keg.kelp.kennel.kept.kerchief.kerosene.kettle.kick.kiln.kilobyte.kilogram.kilometer.kilowatt.kilt.kimono.kindle.kindling.kindly.kindness.kindred.kinetic.kinfolk.king.kinship.kinsman.kinswoman.kissable.kisser.kissing.kitchen.kite.kitten.kitty.kiwi.kleenex.knapsack.knee.knelt.knickers.knoll.koala.kooky.kosher.krypton.kudos.kung.labored.laborer.laboring.laborious.labrador.ladder.ladies.ladle.ladybug.ladylike.lagged.lagging.lagoon.lair.lake.lance.landed.landfall.landfill.landing.landlady.landless.landline.landlord.landmark.landmass.landmine.landowner.landscape.landside.landslide.language.lankiness.lanky.lantern.lapdog.lapel.lapped.lapping.laptop.lard.large.lark.lash.lasso.last.latch.late.lather.latitude.latrine.latter.latticed.launch.launder.laundry.laurel.lavender.lavish.laxative.lazily.laziness.lazy.lecturer.left.legacy.legal.legend.legged.leggings.legible.legibly.legislate.lego.legroom.legume.legwarmer.legwork.lemon.lend.length.lens.lent.leotard.lesser.letdown.lethargic.lethargy.letter.lettuce.level.leverage.levers.levitate.levitator.liability.liable.liberty.librarian.library.licking.licorice.lid.life.lifter.lifting.liftoff.ligament.likely.likeness.likewise.liking.lilac.lilly.lily.limb.limeade.limelight.limes.limit.limping.limpness.line.lingo.linguini.linguist.lining.linked.linoleum.linseed.lint.lion.lip.liquefy.liqueur.liquid.lisp.list.litigate.litigator.litmus.litter.little.livable.lived.lively.liver.livestock.lividly.living.lizard.lubricant.lubricate.lucid.luckily.luckiness.luckless.lucrative.ludicrous.lugged.lukewarm.lullaby.lumber.luminance.luminous.lumpiness.lumping.lumpish.lunacy.lunar.lunchbox.luncheon.lunchroom.lunchtime.lung.lurch.lure.luridness.lurk.lushly.lushness.luster.lustfully.lustily.lustiness.lustrous.lusty.luxurious.luxury.lying.lyrically.lyricism.lyricist.lyrics.macarena.macaroni.macaw.mace.machine.machinist.magazine.magenta.maggot.magical.magician.magma.magnesium.magnetic.magnetism.magnetize.magnifier.magnify.magnitude.magnolia.mahogany.maimed.majestic.majesty.majorette.majority.makeover.maker.makeshift.making.malformed.malt.mama.mammal.mammary.mammogram.manager.managing.manatee.mandarin.mandate.mandatory.mandolin.manger.mangle.mango.mangy.manhandle.manhole.manhood.manhunt.manicotti.manicure.manifesto.manila.mankind.manlike.manliness.manly.manmade.manned.mannish.manor.manpower.mantis.mantra.manual.many.map.marathon.marauding.marbled.marbles.marbling.march.mardi.margarine.margarita.margin.marigold.marina.marine.marital.maritime.marlin.marmalade.maroon.married.marrow.marry.marshland.marshy.marsupial.marvelous.marxism.mascot.masculine.mashed.mashing.massager.masses.massive.mastiff.matador.matchbook.matchbox.matcher.matching.matchless.material.maternal.maternity.math.mating.matriarch.matrimony.matrix.matron.matted.matter.maturely.maturing.maturity.mauve.maverick.maximize.maximum.maybe.mayday.mayflower.moaner.moaning.mobile.mobility.mobilize.mobster.mocha.mocker.mockup.modified.modify.modular.modulator.module.moisten.moistness.moisture.molar.molasses.mold.molecular.molecule.molehill.mollusk.mom.monastery.monday.monetary.monetize.moneybags.moneyless.moneywise.mongoose.mongrel.monitor.monkhood.monogamy.monogram.monologue.monopoly.monorail.monotone.monotype.monoxide.monsieur.monsoon.monstrous.monthly.monument.moocher.moodiness.moody.mooing.moonbeam.mooned.moonlight.moonlike.moonlit.moonrise.moonscape.moonshine.moonstone.moonwalk.mop.morale.morality.morally.morbidity.morbidly.morphine.morphing.morse.mortality.mortally.mortician.mortified.mortify.mortuary.mosaic.mossy.most.mothball.mothproof.motion.motivate.motivator.motive.motocross.motor.motto.mountable.mountain.mounted.mounting.mourner.mournful.mouse.mousiness.moustache.mousy.mouth.movable.move.movie.moving.mower.mowing.much.muck.mud.mug.mulberry.mulch.mule.mulled.mullets.multiple.multiply.multitask.multitude.mumble.mumbling.mumbo.mummified.mummify.mummy.mumps.munchkin.mundane.municipal.muppet.mural.murkiness.murky.murmuring.muscular.museum.mushily.mushiness.mushroom.mushy.music.musket.muskiness.musky.mustang.mustard.muster.mustiness.musty.mutable.mutate.mutation.mute.mutilated.mutilator.mutiny.mutt.mutual.muzzle.myself.myspace.mystified.mystify.myth.nacho.nag.nail.name.naming.nanny.nanometer.nape.napkin.napped.napping.nappy.narrow.nastily.nastiness.national.native.nativity.natural.nature.naturist.nautical.navigate.navigator.navy.nearby.nearest.nearly.nearness.neatly.neatness.nebula.nebulizer.nectar.negate.negation.negative.neglector.negligee.negligent.negotiate.nemeses.nemesis.neon.nephew.nerd.nervous.nervy.nest.net.neurology.neuron.neurosis.neurotic.neuter.neutron.never.next.nibble.nickname.nicotine.niece.nifty.nimble.nimbly.nineteen.ninetieth.ninja.nintendo.ninth.nuclear.nuclei.nucleus.nugget.nullify.number.numbing.numbly.numbness.numeral.numerate.numerator.numeric.numerous.nuptials.nursery.nursing.nurture.nutcase.nutlike.nutmeg.nutrient.nutshell.nuttiness.nutty.nuzzle.nylon.oaf.oak.oasis.oat.obedience.obedient.obituary.object.obligate.obliged.oblivion.oblivious.oblong.obnoxious.oboe.obscure.obscurity.observant.observer.observing.obsessed.obsession.obsessive.obsolete.obstacle.obstinate.obstruct.obtain.obtrusive.obtuse.obvious.occultist.occupancy.occupant.occupier.occupy.ocean.ocelot.octagon.octane.october.octopus.ogle.oil.oink.ointment.okay.old.olive.olympics.omega.omen.ominous.omission.omit.omnivore.onboard.oncoming.ongoing.onion.online.onlooker.only.onscreen.onset.onshore.onslaught.onstage.onto.onward.onyx.oops.ooze.oozy.opacity.opal.open.operable.operate.operating.operation.operative.operator.opium.opossum.opponent.oppose.opposing.opposite.oppressed.oppressor.opt.opulently.osmosis.other.otter.ouch.ought.ounce.outage.outback.outbid.outboard.outbound.outbreak.outburst.outcast.outclass.outcome.outdated.outdoors.outer.outfield.outfit.outflank.outgoing.outgrow.outhouse.outing.outlast.outlet.outline.outlook.outlying.outmatch.outmost.outnumber.outplayed.outpost.outpour.output.outrage.outrank.outreach.outright.outscore.outsell.outshine.outshoot.outsider.outskirts.outsmart.outsource.outspoken.outtakes.outthink.outward.outweigh.outwit.oval.ovary.oven.overact.overall.overarch.overbid.overbill.overbite.overblown.overboard.overbook.overbuilt.overcast.overcoat.overcome.overcook.overcrowd.overdraft.overdrawn.overdress.overdrive.overdue.overeager.overeater.overexert.overfed.overfeed.overfill.overflow.overfull.overgrown.overhand.overhang.overhaul.overhead.overhear.overheat.overhung.overjoyed.overkill.overlabor.overlaid.overlap.overlay.overload.overlook.overlord.overlying.overnight.overpass.overpay.overplant.overplay.overpower.overprice.overrate.overreach.overreact.override.overripe.overrule.overrun.overshoot.overshot.oversight.oversized.oversleep.oversold.overspend.overstate.overstay.overstep.overstock.overstuff.oversweet.overtake.overthrow.overtime.overtly.overtone.overture.overturn.overuse.overvalue.overview.overwrite.owl.oxford.oxidant.oxidation.oxidize.oxidizing.oxygen.oxymoron.oyster.ozone.paced.pacemaker.pacific.pacifier.pacifism.pacifist.pacify.padded.padding.paddle.paddling.padlock.pagan.pager.paging.pajamas.palace.palatable.palm.palpable.palpitate.paltry.pampered.pamperer.pampers.pamphlet.panama.pancake.pancreas.panda.pandemic.pang.panhandle.panic.panning.panorama.panoramic.panther.pantomime.pantry.pants.pantyhose.paparazzi.papaya.paper.paprika.papyrus.parabola.parachute.parade.paradox.paragraph.parakeet.paralegal.paralyses.paralysis.paralyze.paramedic.parameter.paramount.parasail.parasite.parasitic.parcel.parched.parchment.pardon.parish.parka.parking.parkway.parlor.parmesan.parole.parrot.parsley.parsnip.partake.parted.parting.partition.partly.partner.partridge.party.passable.passably.passage.passcode.passenger.passerby.passing.passion.passive.passivism.passover.passport.password.pasta.pasted.pastel.pastime.pastor.pastrami.pasture.pasty.patchwork.patchy.paternal.paternity.path.patience.patient.patio.patriarch.patriot.patrol.patronage.patronize.pauper.pavement.paver.pavestone.pavilion.paving.pawing.payable.payback.paycheck.payday.payee.payer.paying.payment.payphone.payroll.pebble.pebbly.pecan.pectin.peculiar.peddling.pediatric.pedicure.pedigree.pedometer.pegboard.pelican.pellet.pelt.pelvis.penalize.penalty.pencil.pendant.pending.penholder.penknife.pennant.penniless.penny.penpal.pension.pentagon.pentagram.pep.perceive.percent.perch.percolate.perennial.perfected.perfectly.perfume.periscope.perish.perjurer.perjury.perkiness.perky.perm.peroxide.perpetual.perplexed.persecute.persevere.persuaded.persuader.pesky.peso.pessimism.pessimist.pester.pesticide.petal.petite.petition.petri.petroleum.petted.petticoat.pettiness.petty.petunia.phantom.phobia.phoenix.phonebook.phoney.phonics.phoniness.phony.phosphate.photo.phrase.phrasing.placard.placate.placidly.plank.planner.plant.plasma.plaster.plastic.plated.platform.plating.platinum.platonic.platter.platypus.plausible.plausibly.playable.playback.player.playful.playgroup.playhouse.playing.playlist.playmaker.playmate.playoff.playpen.playroom.playset.plaything.playtime.plaza.pleading.pleat.pledge.plentiful.plenty.plethora.plexiglas.pliable.plod.plop.plot.plow.ploy.pluck.plug.plunder.plunging.plural.plus.plutonium.plywood.poach.pod.poem.poet.pogo.pointed.pointer.pointing.pointless.pointy.poise.poison.poker.poking.polar.police.policy.polio.polish.politely.polka.polo.polyester.polygon.polygraph.polymer.poncho.pond.pony.popcorn.pope.poplar.popper.poppy.popsicle.populace.popular.populate.porcupine.pork.porous.porridge.portable.portal.portfolio.porthole.portion.portly.portside.poser.posh.posing.possible.possibly.possum.postage.postal.postbox.postcard.posted.poster.posting.postnasal.posture.postwar.pouch.pounce.pouncing.pound.pouring.pout.powdered.powdering.powdery.power.powwow.pox.praising.prance.prancing.pranker.prankish.prankster.prayer.praying.preacher.preaching.preachy.preamble.precinct.precise.precision.precook.precut.predator.predefine.predict.preface.prefix.preflight.preformed.pregame.pregnancy.pregnant.preheated.prelaunch.prelaw.prelude.premiere.premises.premium.prenatal.preoccupy.preorder.prepaid.prepay.preplan.preppy.preschool.prescribe.preseason.preset.preshow.president.presoak.press.presume.presuming.preteen.pretended.pretender.pretense.pretext.pretty.pretzel.prevail.prevalent.prevent.preview.previous.prewar.prewashed.prideful.pried.primal.primarily.primary.primate.primer.primp.princess.print.prior.prism.prison.prissy.pristine.privacy.private.privatize.prize.proactive.probable.probably.probation.probe.probing.probiotic.problem.procedure.process.proclaim.procreate.procurer.prodigal.prodigy.produce.product.profane.profanity.professed.professor.profile.profound.profusely.progeny.prognosis.program.progress.projector.prologue.prolonged.promenade.prominent.promoter.promotion.prompter.promptly.prone.prong.pronounce.pronto.proofing.proofread.proofs.propeller.properly.property.proponent.proposal.propose.props.prorate.protector.protegee.proton.prototype.protozoan.protract.protrude.proud.provable.proved.proven.provided.provider.providing.province.proving.provoke.provoking.provolone.prowess.prowler.prowling.proximity.proxy.prozac.prude.prudishly.prune.pruning.pry.psychic.public.publisher.pucker.pueblo.pug.pull.pulmonary.pulp.pulsate.pulse.pulverize.puma.pumice.pummel.punch.punctual.punctuate.punctured.pungent.punisher.punk.pupil.puppet.puppy.purchase.pureblood.purebred.purely.pureness.purgatory.purge.purging.purifier.purify.purist.puritan.purity.purple.purplish.purposely.purr.purse.pursuable.pursuant.pursuit.purveyor.pushcart.pushchair.pusher.pushiness.pushing.pushover.pushpin.pushup.pushy.putdown.putt.puzzle.puzzling.pyramid.pyromania.python.quack.quadrant.quail.quaintly.quake.quaking.qualified.qualifier.qualify.quality.qualm.quantum.quarrel.quarry.quartered.quarterly.quarters.quartet.quench.query.quicken.quickly.quickness.quicksand.quickstep.quiet.quill.quilt.quintet.quintuple.quirk.quit.quiver.quizzical.quotable.quotation.quote.rabid.race.racing.racism.rack.racoon.radar.radial.radiance.radiantly.radiated.radiation.radiator.radio.radish.raffle.raft.rage.ragged.raging.ragweed.raider.railcar.railing.railroad.railway.raisin.rake.raking.rally.ramble.rambling.ramp.ramrod.ranch.rancidity.random.ranged.ranger.ranging.ranked.ranking.ransack.ranting.rants.rare.rarity.rascal.rash.rasping.ravage.raven.ravine.raving.ravioli.ravishing.reabsorb.reach.reacquire.reaction.reactive.reactor.reaffirm.ream.reanalyze.reappear.reapply.reappoint.reapprove.rearrange.rearview.reason.reassign.reassure.reattach.reawake.rebalance.rebate.rebel.rebirth.reboot.reborn.rebound.rebuff.rebuild.rebuilt.reburial.rebuttal.recall.recant.recapture.recast.recede.recent.recess.recharger.recipient.recital.recite.reckless.reclaim.recliner.reclining.recluse.reclusive.recognize.recoil.recollect.recolor.reconcile.reconfirm.reconvene.recopy.record.recount.recoup.recovery.recreate.rectal.rectangle.rectified.rectify.recycled.recycler.recycling.reemerge.reenact.reenter.reentry.reexamine.referable.referee.reference.refill.refinance.refined.refinery.refining.refinish.reflected.reflector.reflex.reflux.refocus.refold.reforest.reformat.reformed.reformer.reformist.refract.refrain.refreeze.refresh.refried.refueling.refund.refurbish.refurnish.refusal.refuse.refusing.refutable.refute.regain.regalia.regally.reggae.regime.region.register.registrar.registry.regress.regretful.regroup.regular.regulate.regulator.rehab.reheat.rehire.rehydrate.reimburse.reissue.reiterate.rejoice.rejoicing.rejoin.rekindle.relapse.relapsing.relatable.related.relation.relative.relax.relay.relearn.release.relenting.reliable.reliably.reliance.reliant.relic.relieve.relieving.relight.relish.relive.reload.relocate.relock.reluctant.rely.remake.remark.remarry.rematch.remedial.remedy.remember.reminder.remindful.remission.remix.remnant.remodeler.remold.remorse.remote.removable.removal.removed.remover.removing.rename.renderer.rendering.rendition.renegade.renewable.renewably.renewal.renewed.renounce.renovate.renovator.rentable.rental.rented.renter.reoccupy.reoccur.reopen.reorder.repackage.repacking.repaint.repair.repave.repaying.repayment.repeal.repeated.repeater.repent.rephrase.replace.replay.replica.reply.reporter.repose.repossess.repost.repressed.reprimand.reprint.reprise.reproach.reprocess.reproduce.reprogram.reps.reptile.reptilian.repugnant.repulsion.repulsive.repurpose.reputable.reputably.request.require.requisite.reroute.rerun.resale.resample.rescuer.reseal.research.reselect.reseller.resemble.resend.resent.reset.reshape.reshoot.reshuffle.residence.residency.resident.residual.residue.resigned.resilient.resistant.resisting.resize.resolute.resolved.resonant.resonate.resort.resource.respect.resubmit.result.resume.resupply.resurface.resurrect.retail.retainer.retaining.retake.retaliate.retention.rethink.retinal.retired.retiree.retiring.retold.retool.retorted.retouch.retrace.retract.retrain.retread.retreat.retrial.retrieval.retriever.retry.return.retying.retype.reunion.reunite.reusable.reuse.reveal.reveler.revenge.revenue.reverb.revered.reverence.reverend.reversal.reverse.reversing.reversion.revert.revisable.revise.revision.revisit.revivable.revival.reviver.reviving.revocable.revoke.revolt.revolver.revolving.reward.rewash.rewind.rewire.reword.rework.rewrap.rewrite.rhyme.ribbon.ribcage.rice.riches.richly.richness.rickety.ricotta.riddance.ridden.ride.riding.rifling.rift.rigging.rigid.rigor.rimless.rimmed.rind.rink.rinse.rinsing.riot.ripcord.ripeness.ripening.ripping.ripple.rippling.riptide.rise.rising.risk.risotto.ritalin.ritzy.rival.riverbank.riverbed.riverboat.riverside.riveter.riveting.roamer.roaming.roast.robbing.robe.robin.robotics.robust.rockband.rocker.rocket.rockfish.rockiness.rocking.rocklike.rockslide.rockstar.rocky.rogue.roman.romp.rope.roping.roster.rosy.rotten.rotting.rotunda.roulette.rounding.roundish.roundness.roundup.roundworm.routine.routing.rover.roving.royal.rubbed.rubber.rubbing.rubble.rubdown.ruby.ruckus.rudder.rug.ruined.rule.rumble.rumbling.rummage.rumor.runaround.rundown.runner.running.runny.runt.runway.rupture.rural.ruse.rush.rust.rut.sabbath.sabotage.sacrament.sacred.sacrifice.sadden.saddlebag.saddled.saddling.sadly.sadness.safari.safeguard.safehouse.safely.safeness.saffron.saga.sage.sagging.saggy.said.saint.sake.salad.salami.salaried.salary.saline.salon.saloon.salsa.salt.salutary.salute.salvage.salvaging.salvation.same.sample.sampling.sanction.sanctity.sanctuary.sandal.sandbag.sandbank.sandbar.sandblast.sandbox.sanded.sandfish.sanding.sandlot.sandpaper.sandpit.sandstone.sandstorm.sandworm.sandy.sanitary.sanitizer.sank.santa.sapling.sappiness.sappy.sarcasm.sarcastic.sardine.sash.sasquatch.sassy.satchel.satiable.satin.satirical.satisfied.satisfy.saturate.saturday.sauciness.saucy.sauna.savage.savanna.saved.savings.savior.savor.saxophone.say.scabbed.scabby.scalded.scalding.scale.scaling.scallion.scallop.scalping.scam.scandal.scanner.scanning.scant.scapegoat.scarce.scarcity.scarecrow.scared.scarf.scarily.scariness.scarring.scary.scavenger.scenic.schedule.schematic.scheme.scheming.schilling.schnapps.scholar.science.scientist.scion.scoff.scolding.scone.scoop.scooter.scope.scorch.scorebook.scorecard.scored.scoreless.scorer.scoring.scorn.scorpion.scotch.scoundrel.scoured.scouring.scouting.scouts.scowling.scrabble.scraggly.scrambled.scrambler.scrap.scratch.scrawny.screen.scribble.scribe.scribing.scrimmage.script.scroll.scrooge.scrounger.scrubbed.scrubber.scruffy.scrunch.scrutiny.scuba.scuff.sculptor.sculpture.scurvy.scuttle.secluded.secluding.seclusion.second.secrecy.secret.sectional.sector.secular.securely.security.sedan.sedate.sedation.sedative.sediment.seduce.seducing.segment.seismic.seizing.seldom.selected.selection.selective.selector.self.seltzer.semantic.semester.semicolon.semifinal.seminar.semisoft.semisweet.senate.senator.send.senior.senorita.sensation.sensitive.sensitize.sensually.sensuous.sepia.september.septic.septum.sequel.sequence.sequester.series.sermon.serotonin.serpent.serrated.serve.service.serving.sesame.sessions.setback.setting.settle.settling.setup.sevenfold.seventeen.seventh.seventy.severity.shabby.shack.shaded.shadily.shadiness.shading.shadow.shady.shaft.shakable.shakily.shakiness.shaking.shaky.shale.shallot.shallow.shame.shampoo.shamrock.shank.shanty.shape.shaping.share.sharpener.sharper.sharpie.sharply.sharpness.shawl.sheath.shed.sheep.sheet.shelf.shell.shelter.shelve.shelving.sherry.shield.shifter.shifting.shiftless.shifty.shimmer.shimmy.shindig.shine.shingle.shininess.shining.shiny.ship.shirt.shivering.shock.shone.shoplift.shopper.shopping.shoptalk.shore.shortage.shortcake.shortcut.shorten.shorter.shorthand.shortlist.shortly.shortness.shorts.shortwave.shorty.shout.shove.showbiz.showcase.showdown.shower.showgirl.showing.showman.shown.showoff.showpiece.showplace.showroom.showy.shrank.shrapnel.shredder.shredding.shrewdly.shriek.shrill.shrimp.shrine.shrink.shrivel.shrouded.shrubbery.shrubs.shrug.shrunk.shucking.shudder.shuffle.shuffling.shun.shush.shut.shy.siamese.siberian.sibling.siding.sierra.siesta.sift.sighing.silenced.silencer.silent.silica.silicon.silk.silliness.silly.silo.silt.silver.similarly.simile.simmering.simple.simplify.simply.sincere.sincerity.singer.singing.single.singular.sinister.sinless.sinner.sinuous.sip.siren.sister.sitcom.sitter.sitting.situated.situation.sixfold.sixteen.sixth.sixties.sixtieth.sixtyfold.sizable.sizably.size.sizing.sizzle.sizzling.skater.skating.skedaddle.skeletal.skeleton.skeptic.sketch.skewed.skewer.skid.skied.skier.skies.skiing.skilled.skillet.skillful.skimmed.skimmer.skimming.skimpily.skincare.skinhead.skinless.skinning.skinny.skintight.skipper.skipping.skirmish.skirt.skittle.skydiver.skylight.skyline.skype.skyrocket.skyward.slab.slacked.slacker.slacking.slackness.slacks.slain.slam.slander.slang.slapping.slapstick.slashed.slashing.slate.slather.slaw.sled.sleek.sleep.sleet.sleeve.slept.sliceable.sliced.slicer.slicing.slick.slider.slideshow.sliding.slighted.slighting.slightly.slimness.slimy.slinging.slingshot.slinky.slip.slit.sliver.slobbery.slogan.sloped.sloping.sloppily.sloppy.slot.slouching.slouchy.sludge.slug.slum.slurp.slush.sly.small.smartly.smartness.smasher.smashing.smashup.smell.smelting.smile.smilingly.smirk.smite.smith.smitten.smock.smog.smoked.smokeless.smokiness.smoking.smoky.smolder.smooth.smother.smudge.smudgy.smuggler.smuggling.smugly.smugness.snack.snagged.snaking.snap.snare.snarl.snazzy.sneak.sneer.sneeze.sneezing.snide.sniff.snippet.snipping.snitch.snooper.snooze.snore.snoring.snorkel.snort.snout.snowbird.snowboard.snowbound.snowcap.snowdrift.snowdrop.snowfall.snowfield.snowflake.snowiness.snowless.snowman.snowplow.snowshoe.snowstorm.snowsuit.snowy.snub.snuff.snuggle.snugly.snugness.speak.spearfish.spearhead.spearman.spearmint.species.specimen.specked.speckled.specks.spectacle.spectator.spectrum.speculate.speech.speed.spellbind.speller.spelling.spendable.spender.spending.spent.spew.sphere.spherical.sphinx.spider.spied.spiffy.spill.spilt.spinach.spinal.spindle.spinner.spinning.spinout.spinster.spiny.spiral.spirited.spiritism.spirits.spiritual.splashed.splashing.splashy.splatter.spleen.splendid.splendor.splice.splicing.splinter.splotchy.splurge.spoilage.spoiled.spoiler.spoiling.spoils.spoken.spokesman.sponge.spongy.sponsor.spoof.spookily.spooky.spool.spoon.spore.sporting.sports.sporty.spotless.spotlight.spotted.spotter.spotting.spotty.spousal.spouse.spout.sprain.sprang.sprawl.spray.spree.sprig.spring.sprinkled.sprinkler.sprint.sprite.sprout.spruce.sprung.spry.spud.spur.sputter.spyglass.squabble.squad.squall.squander.squash.squatted.squatter.squatting.squeak.squealer.squealing.squeamish.squeegee.squeeze.squeezing.squid.squiggle.squiggly.squint.squire.squirt.squishier.squishy.stability.stabilize.stable.stack.stadium.staff.stage.staging.stagnant.stagnate.stainable.stained.staining.stainless.stalemate.staleness.stalling.stallion.stamina.stammer.stamp.stand.stank.staple.stapling.starboard.starch.stardom.stardust.starfish.stargazer.staring.stark.starless.starlet.starlight.starlit.starring.starry.starship.starter.starting.startle.startling.startup.starved.starving.stash.state.static.statistic.statue.stature.status.statute.statutory.staunch.stays.steadfast.steadier.steadily.steadying.steam.steed.steep.steerable.steering.steersman.stegosaur.stellar.stem.stench.stencil.step.stereo.sterile.sterility.sterilize.sterling.sternness.sternum.stew.stick.stiffen.stiffly.stiffness.stifle.stifling.stillness.stilt.stimulant.stimulate.stimuli.stimulus.stinger.stingily.stinging.stingray.stingy.stinking.stinky.stipend.stipulate.stir.stitch.stock.stoic.stoke.stole.stomp.stonewall.stoneware.stonework.stoning.stony.stood.stooge.stool.stoop.stoplight.stoppable.stoppage.stopped.stopper.stopping.stopwatch.storable.storage.storeroom.storewide.storm.stout.stove.stowaway.stowing.straddle.straggler.strained.strainer.straining.strangely.stranger.strangle.strategic.strategy.stratus.straw.stray.streak.stream.street.strength.strenuous.strep.stress.stretch.strewn.stricken.strict.stride.strife.strike.striking.strive.striving.strobe.strode.stroller.strongbox.strongly.strongman.struck.structure.strudel.struggle.strum.strung.strut.stubbed.stubble.stubbly.stubborn.stucco.stuck.student.studied.studio.study.stuffed.stuffing.stuffy.stumble.stumbling.stump.stung.stunned.stunner.stunning.stunt.stupor.sturdily.sturdy.styling.stylishly.stylist.stylized.stylus.suave.subarctic.subatomic.subdivide.subdued.subduing.subfloor.subgroup.subheader.subject.sublease.sublet.sublevel.sublime.submarine.submerge.submersed.submitter.subpanel.subpar.subplot.subprime.subscribe.subscript.subsector.subside.subsiding.subsidize.subsidy.subsoil.subsonic.substance.subsystem.subtext.subtitle.subtly.subtotal.subtract.subtype.suburb.subway.subwoofer.subzero.succulent.such.suction.sudden.sudoku.suds.sufferer.suffering.suffice.suffix.suffocate.suffrage.sugar.suggest.suing.suitable.suitably.suitcase.suitor.sulfate.sulfide.sulfite.sulfur.sulk.sullen.sulphate.sulphuric.sultry.superbowl.superglue.superhero.superior.superjet.superman.supermom.supernova.supervise.supper.supplier.supply.support.supremacy.supreme.surcharge.surely.sureness.surface.surfacing.surfboard.surfer.surgery.surgical.surging.surname.surpass.surplus.surprise.surreal.surrender.surrogate.surround.survey.survival.survive.surviving.survivor.sushi.suspect.suspend.suspense.sustained.sustainer.swab.swaddling.swagger.swampland.swan.swapping.swarm.sway.swear.sweat.sweep.swell.swept.swerve.swifter.swiftly.swiftness.swimmable.swimmer.swimming.swimsuit.swimwear.swinger.swinging.swipe.swirl.switch.swivel.swizzle.swooned.swoop.swoosh.swore.sworn.swung.sycamore.sympathy.symphonic.symphony.symptom.synapse.syndrome.synergy.synopses.synopsis.synthesis.synthetic.syrup.system.t-shirt.tabasco.tabby.tableful.tables.tablet.tableware.tabloid.tackiness.tacking.tackle.tackling.tacky.taco.tactful.tactical.tactics.tactile.tactless.tadpole.taekwondo.tag.tainted.take.taking.talcum.talisman.tall.talon.tamale.tameness.tamer.tamper.tank.tanned.tannery.tanning.tantrum.tapeless.tapered.tapering.tapestry.tapioca.tapping.taps.tarantula.target.tarmac.tarnish.tarot.tartar.tartly.tartness.task.tassel.taste.tastiness.tasting.tasty.tattered.tattle.tattling.tattoo.taunt.tavern.thank.that.thaw.theater.theatrics.thee.theft.theme.theology.theorize.thermal.thermos.thesaurus.these.thesis.thespian.thicken.thicket.thickness.thieving.thievish.thigh.thimble.thing.think.thinly.thinner.thinness.thinning.thirstily.thirsting.thirsty.thirteen.thirty.thong.thorn.those.thousand.thrash.thread.threaten.threefold.thrift.thrill.thrive.thriving.throat.throbbing.throng.throttle.throwaway.throwback.thrower.throwing.thud.thumb.thumping.thursday.thus.thwarting.thyself.tiara.tibia.tidal.tidbit.tidiness.tidings.tidy.tiger.tighten.tightly.tightness.tightrope.tightwad.tigress.tile.tiling.till.tilt.timid.timing.timothy.tinderbox.tinfoil.tingle.tingling.tingly.tinker.tinkling.tinsel.tinsmith.tint.tinwork.tiny.tipoff.tipped.tipper.tipping.tiptoeing.tiptop.tiring.tissue.trace.tracing.track.traction.tractor.trade.trading.tradition.traffic.tragedy.trailing.trailside.train.traitor.trance.tranquil.transfer.transform.translate.transpire.transport.transpose.trapdoor.trapeze.trapezoid.trapped.trapper.trapping.traps.trash.travel.traverse.travesty.tray.treachery.treading.treadmill.treason.treat.treble.tree.trekker.tremble.trembling.tremor.trench.trend.trespass.triage.trial.triangle.tribesman.tribunal.tribune.tributary.tribute.triceps.trickery.trickily.tricking.trickle.trickster.tricky.tricolor.tricycle.trident.tried.trifle.trifocals.trillion.trilogy.trimester.trimmer.trimming.trimness.trinity.trio.tripod.tripping.triumph.trivial.trodden.trolling.trombone.trophy.tropical.tropics.trouble.troubling.trough.trousers.trout.trowel.truce.truck.truffle.trump.trunks.trustable.trustee.trustful.trusting.trustless.truth.try.tubby.tubeless.tubular.tucking.tuesday.tug.tuition.tulip.tumble.tumbling.tummy.turban.turbine.turbofan.turbojet.turbulent.turf.turkey.turmoil.turret.turtle.tusk.tutor.tutu.tux.tweak.tweed.tweet.tweezers.twelve.twentieth.twenty.twerp.twice.twiddle.twiddling.twig.twilight.twine.twins.twirl.twistable.twisted.twister.twisting.twisty.twitch.twitter.tycoon.tying.tyke.udder.ultimate.ultimatum.ultra.umbilical.umbrella.umpire.unabashed.unable.unadorned.unadvised.unafraid.unaired.unaligned.unaltered.unarmored.unashamed.unaudited.unawake.unaware.unbaked.unbalance.unbeaten.unbend.unbent.unbiased.unbitten.unblended.unblessed.unblock.unbolted.unbounded.unboxed.unbraided.unbridle.unbroken.unbuckled.unbundle.unburned.unbutton.uncanny.uncapped.uncaring.uncertain.unchain.unchanged.uncharted.uncheck.uncivil.unclad.unclaimed.unclamped.unclasp.uncle.unclip.uncloak.unclog.unclothed.uncoated.uncoiled.uncolored.uncombed.uncommon.uncooked.uncork.uncorrupt.uncounted.uncouple.uncouth.uncover.uncross.uncrown.uncrushed.uncured.uncurious.uncurled.uncut.undamaged.undated.undaunted.undead.undecided.undefined.underage.underarm.undercoat.undercook.undercut.underdog.underdone.underfed.underfeed.underfoot.undergo.undergrad.underhand.underline.underling.undermine.undermost.underpaid.underpass.underpay.underrate.undertake.undertone.undertook.undertow.underuse.underwear.underwent.underwire.undesired.undiluted.undivided.undocked.undoing.undone.undrafted.undress.undrilled.undusted.undying.unearned.unearth.unease.uneasily.uneasy.uneatable.uneaten.unedited.unelected.unending.unengaged.unenvied.unequal.unethical.uneven.unexpired.unexposed.unfailing.unfair.unfasten.unfazed.unfeeling.unfiled.unfilled.unfitted.unfitting.unfixable.unfixed.unflawed.unfocused.unfold.unfounded.unframed.unfreeze.unfrosted.unfrozen.unfunded.unglazed.ungloved.unglue.ungodly.ungraded.ungreased.unguarded.unguided.unhappily.unhappy.unharmed.unhealthy.unheard.unhearing.unheated.unhelpful.unhidden.unhinge.unhitched.unholy.unhook.unicorn.unicycle.unified.unifier.uniformed.uniformly.unify.unimpeded.uninjured.uninstall.uninsured.uninvited.union.uniquely.unisexual.unison.unissued.unit.universal.universe.unjustly.unkempt.unkind.unknotted.unknowing.unknown.unlaced.unlatch.unlawful.unleaded.unlearned.unleash.unless.unleveled.unlighted.unlikable.unlimited.unlined.unlinked.unlisted.unlit.unlivable.unloaded.unloader.unlocked.unlocking.unlovable.unloved.unlovely.unloving.unluckily.unlucky.unmade.unmanaged.unmanned.unmapped.unmarked.unmasked.unmasking.unmatched.unmindful.unmixable.unmixed.unmolded.unmoral.unmovable.unmoved.unmoving.unnamable.unnamed.unnatural.unneeded.unnerve.unnerving.unnoticed.unopened.unopposed.unpack.unpadded.unpaid.unpainted.unpaired.unpaved.unpeeled.unpicked.unpiloted.unpinned.unplanned.unplanted.unpleased.unpledged.unplowed.unplug.unpopular.unproven.unquote.unranked.unrated.unraveled.unreached.unread.unreal.unreeling.unrefined.unrelated.unrented.unrest.unretired.unrevised.unrigged.unripe.unrivaled.unroasted.unrobed.unroll.unruffled.unruly.unrushed.unsaddle.unsafe.unsaid.unsalted.unsaved.unsavory.unscathed.unscented.unscrew.unsealed.unseated.unsecured.unseeing.unseemly.unseen.unselect.unselfish.unsent.unsettled.unshackle.unshaken.unshaved.unshaven.unsheathe.unshipped.unsightly.unsigned.unskilled.unsliced.unsmooth.unsnap.unsocial.unsoiled.unsold.unsolved.unsorted.unspoiled.unspoken.unstable.unstaffed.unstamped.unsteady.unsterile.unstirred.unstitch.unstopped.unstuck.unstuffed.unstylish.unsubtle.unsubtly.unsuited.unsure.unsworn.untagged.untainted.untaken.untamed.untangled.untapped.untaxed.unthawed.unthread.untidy.untie.until.untimed.untimely.untitled.untoasted.untold.untouched.untracked.untrained.untreated.untried.untrimmed.untrue.untruth.unturned.untwist.untying.unusable.unused.unusual.unvalued.unvaried.unvarying.unveiled.unveiling.unvented.unviable.unvisited.unvocal.unwanted.unwarlike.unwary.unwashed.unwatched.unweave.unwed.unwelcome.unwell.unwieldy.unwilling.unwind.unwired.unwitting.unwomanly.unworldly.unworn.unworried.unworthy.unwound.unwoven.unwrapped.unwritten.unzip.upbeat.upchuck.upcoming.upcountry.update.upfront.upgrade.upheaval.upheld.uphill.uphold.uplifted.uplifting.upload.upon.upper.upright.uprising.upriver.uproar.uproot.upscale.upside.upstage.upstairs.upstart.upstate.upstream.upstroke.upswing.uptake.uptight.uptown.upturned.upward.upwind.uranium.urban.urchin.urethane.urgency.urgent.urging.urologist.urology.usable.usage.useable.used.uselessly.user.usher.usual.utensil.utility.utilize.utmost.utopia.utter.vacancy.vacant.vacate.vacation.vagabond.vagrancy.vagrantly.vaguely.vagueness.valiant.valid.valium.valley.valuables.value.vanilla.vanish.vanity.vanquish.vantage.vaporizer.variable.variably.varied.variety.various.varmint.varnish.varsity.varying.vascular.vaseline.vastly.vastness.veal.vegan.veggie.vehicular.velcro.velocity.velvet.vendetta.vending.vendor.veneering.vengeful.venomous.ventricle.venture.venue.venus.verbalize.verbally.verbose.verdict.verify.verse.version.versus.vertebrae.vertical.vertigo.very.vessel.vest.veteran.veto.vexingly.viability.viable.vibes.vice.vicinity.victory.video.viewable.viewer.viewing.viewless.viewpoint.vigorous.village.villain.vindicate.vineyard.vintage.violate.violation.violator.violet.violin.viper.viral.virtual.virtuous.virus.visa.viscosity.viscous.viselike.visible.visibly.vision.visiting.visitor.visor.vista.vitality.vitalize.vitally.vitamins.vivacious.vividly.vividness.vixen.vocalist.vocalize.vocally.vocation.voice.voicing.void.volatile.volley.voltage.volumes.voter.voting.voucher.vowed.vowel.voyage.wackiness.wad.wafer.waffle.waged.wager.wages.waggle.wagon.wake.waking.walk.walmart.walnut.walrus.waltz.wand.wannabe.wanted.wanting.wasabi.washable.washbasin.washboard.washbowl.washcloth.washday.washed.washer.washhouse.washing.washout.washroom.washstand.washtub.wasp.wasting.watch.water.waviness.waving.wavy.whacking.whacky.wham.wharf.wheat.whenever.whiff.whimsical.whinny.whiny.whisking.whoever.whole.whomever.whoopee.whooping.whoops.why.wick.widely.widen.widget.widow.width.wieldable.wielder.wife.wifi.wikipedia.wildcard.wildcat.wilder.wildfire.wildfowl.wildland.wildlife.wildly.wildness.willed.willfully.willing.willow.willpower.wilt.wimp.wince.wincing.wind.wing.winking.winner.winnings.winter.wipe.wired.wireless.wiring.wiry.wisdom.wise.wish.wisplike.wispy.wistful.wizard.wobble.wobbling.wobbly.wok.wolf.wolverine.womanhood.womankind.womanless.womanlike.womanly.womb.woof.wooing.wool.woozy.word.work.worried.worrier.worrisome.worry.worsening.worshiper.worst.wound.woven.wow.wrangle.wrath.wreath.wreckage.wrecker.wrecking.wrench.wriggle.wriggly.wrinkle.wrinkly.wrist.writing.written.wrongdoer.wronged.wrongful.wrongly.wrongness.wrought.xbox.xerox.yahoo.yam.yanking.yapping.yard.yarn.yeah.yearbook.yearling.yearly.yearning.yeast.yelling.yelp.yen.yesterday.yiddish.yield.yin.yippee.yo-yo.yodel.yoga.yogurt.yonder.yoyo.yummy.zap.zealous.zebra.zen.zeppelin.zero.zestfully.zesty.zigzagged.zipfile.zipping.zippy.zips.zit.zodiac.zombie.zone.zoning.zookeeper.zoologist.zoology.zoom`.split(`.`)),q=Object.freeze(K.filter(e=>!e.includes(`-`)));function J({title:e,titleId:t,...n},r){return P.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?P.createElement(`title`,{id:t},e):null,P.createElement(`path`,{fillRule:`evenodd`,d:`M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75 9.75-4.365 9.75-9.75S17.385 2.25 12 2.25Zm-1.72 6.97a.75.75 0 1 0-1.06 1.06L10.94 12l-1.72 1.72a.75.75 0 1 0 1.06 1.06L12 13.06l1.72 1.72a.75.75 0 1 0 1.06-1.06L13.06 12l1.72-1.72a.75.75 0 1 0-1.06-1.06L12 10.94l-1.72-1.72Z`,clipRule:`evenodd`}))}var Y=P.forwardRef(J),X=({buttonHideAnimations:e,buttonLoading:t,password:n,onSubmit:r,onBack:i})=>{let[a,o]=(0,P.useState)(!0),[c,f]=(0,P.useState)(!1),[p,g]=(0,P.useState)(``),_=n===p;return(0,P.useEffect)((()=>{p&&!c&&f(!0)}),[p]),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{closeable:!1,backFn:i}),(0,N.jsx)(O,{}),(0,N.jsxs)(v,{children:[(0,N.jsxs)(x,{children:[(0,N.jsx)(D,{height:48,width:48,stroke:`var(--privy-color-background)`,fill:`var(--privy-color-accent)`}),(0,N.jsx)(`h3`,{style:{color:`var(--privy-color-foreground)`},children:`Confirm your password`}),(0,N.jsx)(`p`,{style:{color:`var(--privy-color-foreground-2)`},children:`Please re-enter your password below to continue.`})]}),(0,N.jsxs)(h,{children:[(0,N.jsx)(u,{value:p,onChange:e=>g(e.target.value),onKeyUp:e=>{e.key===`Enter`&&r()},onBlur:()=>f(!0),placeholder:`confirm your password`,type:a?`password`:`text`,style:{paddingRight:`2.3rem`}}),(0,N.jsx)(m,{style:{right:`0.75rem`},children:a?(0,N.jsx)(b,{onClick:()=>o(!1)}):(0,N.jsx)(S,{onClick:()=>o(!0)})})]}),(0,N.jsx)(d,{"aria-hidden":!c||_,error:!0,children:`Passwords do not match`})]}),(0,N.jsx)(w,{onClick:r,loading:t,disabled:!_,$hideAnimations:e,children:`Continue`}),(0,N.jsx)(A,{}),(0,N.jsx)(l,{})]})},ie=({buttonHideAnimations:e,buttonLoading:t,onSubmit:n,onBack:r,config:i})=>{let[a,o]=(0,P.useState)(!1);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{closeable:!1,backFn:r}),(0,N.jsx)(O,{}),(0,N.jsxs)(v,{children:[(0,N.jsxs)(x,{children:[(0,N.jsx)(D,{height:48,width:48,stroke:`var(--privy-color-background)`,fill:`var(--privy-color-error)`}),(0,N.jsx)(`h3`,{style:{color:`var(--privy-color-foreground)`},children:`Confirm you have saved`}),(0,N.jsx)(`p`,{style:{color:`var(--privy-color-foreground-2)`},children:`Losing access to your password means you will lose access to your account.`})]}),(0,N.jsx)(_,{children:(0,N.jsxs)(g,{style:{color:`var(--privy-color-error)`,cursor:`pointer`},onClick:e=>{e.preventDefault(),o((e=>!e))},children:[(0,N.jsx)(E,{color:`var(--privy-color-error)`,readOnly:!0,checked:a}),(0,N.jsx)(N.Fragment,{children:`I understand that if I lose my password and device, I will lose access to my account and my assets.`})]})})]}),(0,N.jsxs)(ae,{children:[i.initiatedBy===`user`&&(0,N.jsx)(c,{onClick:i.onCancel,disabled:t,children:`Cancel`}),(0,N.jsx)(w,{onClick:n,loading:t,$hideAnimations:e,disabled:!a,children:`Set Password`})]}),(0,N.jsx)(A,{}),(0,N.jsx)(l,{})]})},ae=a.div`
2
2
  display: flex;
3
3
  gap: 10px;
4
4
  `,oe=/[a-z]/,se=/[A-Z]/,ce=/[0-9]/,Z=`!@#$%^&*()\\-_+.`,Q=`a-zA-Z0-9${Z}`,le=RegExp(`[${Z}]`),ue=RegExp(`[${Q}]`),de=RegExp(`^[${Q}]{6,}$`),fe=()=>G(4,q);function pe(e){return e>.9?`Strong`:e>.5?`Medium`:`Weak`}function $(e=``){return(.3*function(e){if(e.length<8)return 0;let t=0;return oe.test(e)&&(t+=1),se.test(e)&&(t+=1),ce.test(e)&&(t+=1),le.test(e)&&(t+=1),Math.max(0,Math.min(1,t/3))}(e)+(0,L.default)(e)/95)/2}var me=({buttonHideAnimations:e,buttonLoading:t,password:n=``,config:r,isResettingPassword:i,onSubmit:a,onClose:o,onBack:c,onPasswordChange:f,onPasswordGenerate:p})=>{let[T,E]=(0,P.useState)(!1),[D,k]=(0,P.useState)(!1);(0,P.useEffect)((()=>{n&&!D&&k(!0)}),[n]);let j=(0,P.useMemo)((()=>D?6>(n?.length||0)?`Password must be at least 6 characters`:de.test(n||``)?null:`Invalid characters used ( ${((e=``)=>[...new Set(e.split(``).filter((e=>!ue.test(e))).map((e=>e.replace(` `,`SPACE`))))])(n).join(` `)} )`:null),[n,D]),F=(0,P.useMemo)((()=>j?{value:0,label:`Weak`}:function(e=``){let t=$(e);return{value:t,label:pe(t)}}(n)),[n,j]),I=(0,P.useMemo)((()=>!n?.length||!!j),[j,n]);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(s,{onClose:o,closeable:r.initiatedBy===`user`,backFn:c}),(0,N.jsx)(O,{}),(0,N.jsxs)(v,{children:[(0,N.jsxs)(x,{children:[(0,N.jsx)(re,{height:48,width:48,stroke:`var(--privy-color-accent)`}),(0,N.jsxs)(`h3`,{style:{color:`var(--privy-color-foreground)`},children:[i?`Reset`:`Set`,` your password`]}),(0,N.jsx)(`p`,{style:{color:`var(--privy-color-foreground-2)`},children:`Select a strong, memorable password to secure your account.`})]}),(0,N.jsxs)(h,{children:[(0,N.jsx)(u,{value:n,onChange:e=>f(e.target.value),onKeyUp:e=>{e.key===`Enter`&&a()},placeholder:`enter or generate a strong password`,type:T?`password`:`text`,style:{paddingRight:`3.8rem`}}),(0,N.jsxs)(m,{style:{width:`3.5rem`},children:[T?(0,N.jsx)(b,{onClick:()=>E(!1)}):(0,N.jsx)(S,{onClick:()=>E(!0)}),(0,N.jsx)(C,{onClick:p})]})]}),(0,N.jsx)(y,{value:F.value===0?.01:F.value,$label:F.label}),(0,N.jsx)(d,{error:!!j,children:j||`Password Strength: ${D?F.label:`--`}`}),(0,N.jsxs)(ge,{children:[(0,N.jsx)(he,{children:(0,N.jsxs)(_,{children:[(0,N.jsxs)(g,{children:[(0,N.jsx)(M,{width:24,height:24,fill:`var(--privy-color-accent)`}),`This password is used to secure your account.`]}),(0,N.jsxs)(g,{children:[(0,N.jsx)(M,{width:24,height:24,fill:`var(--privy-color-accent)`}),`Use it to log in on a new environment, like another browser or device.`]})]})}),(0,N.jsx)(w,{onClick:a,loading:t,disabled:I,$hideAnimations:e,children:`Continue`})]})]}),(0,N.jsx)(A,{}),(0,N.jsx)(l,{})]})},he=a(_)`
@@ -1 +1 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{t}from"./react-DrJ0MmMO.js";var n=e(t());function r({title:e,titleId:t,...r},i){return n.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:i,"aria-labelledby":t},r),e?n.createElement(`title`,{id:t},e):null,n.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M9 12.75 11.25 15 15 9.75m-3-7.036A11.959 11.959 0 0 1 3.598 6 11.99 11.99 0 0 0 3 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285Z`}))}var i=n.forwardRef(r);export{i as t};
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{t}from"./react-BfYA1q0G.js";var n=e(t());function r({title:e,titleId:t,...r},i){return n.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:i,"aria-labelledby":t},r),e?n.createElement(`title`,{id:t},e):null,n.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M9 12.75 11.25 15 15 9.75m-3-7.036A11.959 11.959 0 0 1 3.598 6 11.99 11.99 0 0 0 3 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285Z`}))}var i=n.forwardRef(r);export{i as t};
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{r as t}from"./esm-n2lWo7kz.js";import{t as n}from"./esm-B5cbIQaz.js";import{$ as r,i,j as a,r as o}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as s}from"./jsx-runtime-BbDfbRii.js";import{t as c}from"./react-DrJ0MmMO.js";import{t as l}from"./createLucideIcon-IPW50ckY.js";import{n as u}from"./modal-context-CwmSeFcv-DruX9J1E.js";import{c as d}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{t as f}from"./ScreenLayout-OwaQQcxH-CrQM6kvA.js";import{Jn as p,zn as m}from"./localBatchGatewayRequest-3kLrX_c7.js";import{a as h,l as g}from"./SolanaWalletConnector-C7Lqk-Wz-DPwhuzcI.js";import{r as _}from"./Layouts-BMRfo5hw-CeCOyCLK.js";import{t as v}from"./CopyToClipboard-i_OQSBJr-DujUHNzW.js";import{n as y,t as b}from"./JsonTree-BHzNC-ic-DcNcbSoM.js";var x=l(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),S=s(),C=e(c(),1),w=d.img`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{r as t}from"./esm-n2lWo7kz.js";import{t as n}from"./esm-Co94ENUV.js";import{$ as r,i,j as a,r as o}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as s}from"./jsx-runtime-CndCZlyt.js";import{t as c}from"./react-BfYA1q0G.js";import{t as l}from"./createLucideIcon-BsERoFTA.js";import{n as u}from"./modal-context-CwmSeFcv-DPWNJrfK.js";import{c as d}from"./Loader-UAZqxsnw-DJEVblm1.js";import{t as f}from"./ScreenLayout-OwaQQcxH-cfOTmyl0.js";import{Jn as p,zn as m}from"./localBatchGatewayRequest-B71J8sQ9.js";import{a as h,l as g}from"./SolanaWalletConnector-C7Lqk-Wz-Bc_lvdiF.js";import{r as _}from"./Layouts-BMRfo5hw-e-sepi6F.js";import{t as v}from"./CopyToClipboard-i_OQSBJr-_G88JCVR.js";import{n as y,t as b}from"./JsonTree-BHzNC-ic-DcVr0YF0.js";var x=l(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),S=s(),C=e(c(),1),w=d.img`
2
2
  && {
3
3
  height: ${e=>e.size===`sm`?`65px`:`140px`};
4
4
  width: ${e=>e.size===`sm`?`65px`:`140px`};
@@ -1 +1 @@
1
- import{g as e,t}from"./esm-B5cbIQaz.js";import{A as n}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{c as r,f as i,r as a}from"./errors-BQ3N-RVt-BLqjTPNR.js";import{t as o}from"./storage-Ufl800Ne-D0bZBw-H.js";import{t as s}from"./eventemitter3-CL76jPsW.js";import{t as c}from"./logger-CsXm3oIv-B0UYpNFI.js";var l=class extends r{constructor(){super(`Wallet timeout`),this.type=`wallet_error`,c.warn(`Wallet request timed out`)}},u=e=>{if(e instanceof r)return c.debug(`Connector error (already formatted)`,{error:e.message}),e;if(typeof e?.code==`number`){let t=new f(e);return c.debug(`Provider RPC error`,{code:t.code,error:t.message}),t}let t=e instanceof Error?e.message:String(e);return c.debug(`Unknown connector error`,{error:t}),new r(t||`Unknown connector error`,e)},d=class extends i{constructor(e,t,n){super(e),this.type=`provider_error`,this.code=t,this.data=n}},f=class extends d{constructor(e){super(e.message,e.code,e.data);let n=Object.values(t).find((t=>t.eipCode===e.code));this.details=n||t.UNKNOWN_ERROR,e.code===-32002&&(e.message?.includes(`already pending for origin`)?this.details=e.message?.includes(`wallet_requestPermissions`)?t.E32002_CONNECTION_ALREADY_PENDING:t.E32002_REQUEST_ALREADY_PENDING:e.message?.includes(`Already processing`)&&e.message.includes(`eth_requestAccounts`)&&(this.details=t.E32002_WALLET_LOCKED))}},p={ERROR_USER_EXISTS:{message:`User already exists for this address`,detail:`Try another address!`,retryable:!1},ERROR_TIMED_OUT:{message:`Wallet request timed out`,detail:`Please try connecting again.`,retryable:!0},ERROR_WALLET_CONNECTION:{message:`Could not log in with wallet`,detail:`Please try connecting again.`,retryable:!0},ERROR_USER_LIMIT_REACHED:{message:`Unable to link`,detail:`You've reached the maximum number of linked wallets.`,retryable:!1},...t},m=class extends s{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}},h=()=>{let e=o.get(n);return e&&Array.isArray(e)&&e.map((e=>(e=>e&&typeof e.address==`string`&&typeof e.connectorType==`string`&&typeof e.walletClientType==`string`&&typeof e.connectedAt==`number`)(e))).every(Boolean)?e:[]},g=[`phantom`,`glow`,`solflare`,`backpack`,`okx_wallet`,`walletconnect`,`mobile_wallet_adapter`,`jupiter`,`tokenpocket`];function _(e){return e.toLowerCase().split(` `).join(`_`)}var v=class extends m{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((t=>({type:`solana`,provider:new e({wallet:this._wallet,account:t}),address:t.address,connectedAt:Date.now(),walletClientType:this._wallet.name,connectorType:this.connectorType,imported:!1,meta:{name:this._wallet.name,id:this._wallet.name,icon:this._wallet.icon},isConnected:async()=>this._wallet.accounts.length>0,disconnect:async()=>{await this.disconnect()}})))}async syncAccounts(){this.wallets=this.buildConnectedWallet(),this.emit(`walletsUpdated`)}get walletBranding(){return{id:y(this.wallet)?`walletconnect_solana`:this.wallet.name,name:this.wallet.name,icon:this.wallet.icon}}async initialize(){c.debug(`Initializing Solana connector`,{wallet:this.walletClientType}),this.subscribeListeners(),await this.syncAccounts(),this.shouldAttemptAutoConnect()&&(c.debug(`Attempting Solana auto-connect`,{wallet:this.walletClientType}),await this.wallet.features[`standard:connect`]?.connect({silent:!0}).catch((()=>{})),await this.isConnected()&&(c.debug(`Solana auto-connect successful`,{wallet:this.walletClientType}),await this.syncAccounts())),this.initialized=!0,this.emit(`initialized`)}async connect(e){if(c.connectionStart(this.walletClientType,`solana_adapter`,{showPrompt:e.showPrompt}),e.showPrompt)try{await this.promptConnection()}catch(e){throw this._wallet.accounts.length===0?(c.warn(`Solana wallet connected but has no accounts`,{wallet:this.walletClientType}),new a):(c.connectionFailed(this.walletClientType,e,{method:`solana_adapter`}),e)}if(!await this.isConnected())throw c.warn(`Solana wallet not connected after prompt`,{wallet:this.walletClientType}),new a;await this.syncAccounts();let t=await this.getConnectedWallet();return t&&c.connectionSuccess(this.walletClientType),t}async getConnectedWallet(){return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt))[0]||null}async isConnected(){return this._wallet.accounts.length>0}subscribeListeners(){this._unsubscribeListeners=this.wallet.features[`standard:events`]?.on(`change`,this.onChange)}unsubscribeListeners(){this._unsubscribeListeners?.()}shouldAttemptAutoConnect(){return!(!this.autoConnectEnabled||!g.includes(this.walletClientType))&&(this.walletClientType!==`phantom`||h().some((({walletClientType:e})=>e===`phantom`)))}constructor(e,t){super(_(y(e)?`walletconnect_solana`:e.name)),this.chainType=`solana`,this.connectorType=`solana_adapter`,this.disconnect=async()=>{c.debug(`Disconnecting Solana wallet`,{wallet:this.walletClientType}),await this.wallet.features[`standard:disconnect`]?.disconnect().catch((e=>{c.error(`Error disconnecting Solana wallet`,e,{wallet:this.walletClientType})})),await this.syncAccounts()},this.promptConnection=async()=>{c.debug(`Prompting Solana connection`,{wallet:this.walletClientType});try{await this.wallet.features[`standard:connect`]?.connect()}catch(e){throw c.connectionFailed(this.walletClientType,e,{method:`solana_adapter`}),u(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}};function y(e){return`isWalletConnectSolana`in e&&e.isWalletConnectSolana}export{d as a,p as c,_ as i,f as l,l as n,h as o,u as r,m as s,v as t};
1
+ import{g as e,t}from"./esm-Co94ENUV.js";import{A as n}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{c as r,f as i,r as a}from"./errors-BQ3N-RVt-CZPAWCgC.js";import{t as o}from"./storage-Ufl800Ne-1qCR2JMO.js";import{t as s}from"./eventemitter3-Dzc_0Uq2.js";import{t as c}from"./logger-CsXm3oIv-B0UYpNFI.js";var l=class extends r{constructor(){super(`Wallet timeout`),this.type=`wallet_error`,c.warn(`Wallet request timed out`)}},u=e=>{if(e instanceof r)return c.debug(`Connector error (already formatted)`,{error:e.message}),e;if(typeof e?.code==`number`){let t=new f(e);return c.debug(`Provider RPC error`,{code:t.code,error:t.message}),t}let t=e instanceof Error?e.message:String(e);return c.debug(`Unknown connector error`,{error:t}),new r(t||`Unknown connector error`,e)},d=class extends i{constructor(e,t,n){super(e),this.type=`provider_error`,this.code=t,this.data=n}},f=class extends d{constructor(e){super(e.message,e.code,e.data);let n=Object.values(t).find((t=>t.eipCode===e.code));this.details=n||t.UNKNOWN_ERROR,e.code===-32002&&(e.message?.includes(`already pending for origin`)?this.details=e.message?.includes(`wallet_requestPermissions`)?t.E32002_CONNECTION_ALREADY_PENDING:t.E32002_REQUEST_ALREADY_PENDING:e.message?.includes(`Already processing`)&&e.message.includes(`eth_requestAccounts`)&&(this.details=t.E32002_WALLET_LOCKED))}},p={ERROR_USER_EXISTS:{message:`User already exists for this address`,detail:`Try another address!`,retryable:!1},ERROR_TIMED_OUT:{message:`Wallet request timed out`,detail:`Please try connecting again.`,retryable:!0},ERROR_WALLET_CONNECTION:{message:`Could not log in with wallet`,detail:`Please try connecting again.`,retryable:!0},ERROR_USER_LIMIT_REACHED:{message:`Unable to link`,detail:`You've reached the maximum number of linked wallets.`,retryable:!1},...t},m=class extends s{constructor(e){super(),this.walletClientType=e,this.connected=!1,this.initialized=!1}},h=()=>{let e=o.get(n);return e&&Array.isArray(e)&&e.map((e=>(e=>e&&typeof e.address==`string`&&typeof e.connectorType==`string`&&typeof e.walletClientType==`string`&&typeof e.connectedAt==`number`)(e))).every(Boolean)?e:[]},g=[`phantom`,`glow`,`solflare`,`backpack`,`okx_wallet`,`walletconnect`,`mobile_wallet_adapter`,`jupiter`,`tokenpocket`];function _(e){return e.toLowerCase().split(` `).join(`_`)}var v=class extends m{get isInstalled(){return!0}get wallet(){return this._wallet}buildConnectedWallet(){return this._wallet.accounts.map((t=>({type:`solana`,provider:new e({wallet:this._wallet,account:t}),address:t.address,connectedAt:Date.now(),walletClientType:this._wallet.name,connectorType:this.connectorType,imported:!1,meta:{name:this._wallet.name,id:this._wallet.name,icon:this._wallet.icon},isConnected:async()=>this._wallet.accounts.length>0,disconnect:async()=>{await this.disconnect()}})))}async syncAccounts(){this.wallets=this.buildConnectedWallet(),this.emit(`walletsUpdated`)}get walletBranding(){return{id:y(this.wallet)?`walletconnect_solana`:this.wallet.name,name:this.wallet.name,icon:this.wallet.icon}}async initialize(){c.debug(`Initializing Solana connector`,{wallet:this.walletClientType}),this.subscribeListeners(),await this.syncAccounts(),this.shouldAttemptAutoConnect()&&(c.debug(`Attempting Solana auto-connect`,{wallet:this.walletClientType}),await this.wallet.features[`standard:connect`]?.connect({silent:!0}).catch((()=>{})),await this.isConnected()&&(c.debug(`Solana auto-connect successful`,{wallet:this.walletClientType}),await this.syncAccounts())),this.initialized=!0,this.emit(`initialized`)}async connect(e){if(c.connectionStart(this.walletClientType,`solana_adapter`,{showPrompt:e.showPrompt}),e.showPrompt)try{await this.promptConnection()}catch(e){throw this._wallet.accounts.length===0?(c.warn(`Solana wallet connected but has no accounts`,{wallet:this.walletClientType}),new a):(c.connectionFailed(this.walletClientType,e,{method:`solana_adapter`}),e)}if(!await this.isConnected())throw c.warn(`Solana wallet not connected after prompt`,{wallet:this.walletClientType}),new a;await this.syncAccounts();let t=await this.getConnectedWallet();return t&&c.connectionSuccess(this.walletClientType),t}async getConnectedWallet(){return this.wallets.sort(((e,t)=>t.connectedAt-e.connectedAt))[0]||null}async isConnected(){return this._wallet.accounts.length>0}subscribeListeners(){this._unsubscribeListeners=this.wallet.features[`standard:events`]?.on(`change`,this.onChange)}unsubscribeListeners(){this._unsubscribeListeners?.()}shouldAttemptAutoConnect(){return!(!this.autoConnectEnabled||!g.includes(this.walletClientType))&&(this.walletClientType!==`phantom`||h().some((({walletClientType:e})=>e===`phantom`)))}constructor(e,t){super(_(y(e)?`walletconnect_solana`:e.name)),this.chainType=`solana`,this.connectorType=`solana_adapter`,this.disconnect=async()=>{c.debug(`Disconnecting Solana wallet`,{wallet:this.walletClientType}),await this.wallet.features[`standard:disconnect`]?.disconnect().catch((e=>{c.error(`Error disconnecting Solana wallet`,e,{wallet:this.walletClientType})})),await this.syncAccounts()},this.promptConnection=async()=>{c.debug(`Prompting Solana connection`,{wallet:this.walletClientType});try{await this.wallet.features[`standard:connect`]?.connect()}catch(e){throw c.connectionFailed(this.walletClientType,e,{method:`solana_adapter`}),u(e)}},this.onChange=()=>{this.syncAccounts()},this._wallet=e,this.autoConnectEnabled=t,this.wallets=[]}};function y(e){return`isWalletConnectSolana`in e&&e.isWalletConnectSolana}export{d as a,p as c,_ as i,f as l,l as n,h as o,u as r,m as s,v as t};
@@ -1,4 +1,4 @@
1
- import{c as e}from"./Loader-UAZqxsnw-Cy7hEE2f.js";var t=e.div`
1
+ import{c as e}from"./Loader-UAZqxsnw-DJEVblm1.js";var t=e.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  justify-content: center;
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{I as t}from"./esm-B5cbIQaz.js";import{$ as n,D as r,R as i,i as a,l as o}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as s}from"./jsx-runtime-BbDfbRii.js";import{t as c}from"./react-DrJ0MmMO.js";import{n as l}from"./ErrorScreen-DipdTWzE-c8g8En21.js";import{n as u}from"./modal-context-CwmSeFcv-DruX9J1E.js";import{c as d}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{a as f,i as p,t as m}from"./ModalFooter-BCuEK_nz-c-khvG4Y.js";import{n as ee,r as te}from"./TransactionErrorView-BDBNqA_f-p1T9WVMx.js";import{b as ne,c as h,m as g}from"./useWallets-X1ndvJ_U-DRjz7uYD.js";import{S as _,X as re,_ as ie,f as ae,i as oe,p as v,t as se}from"./index.browser-B-i-Lj3J.js";import{n as y,o as b,r as x}from"./index.browser-BMmUcykv.js";import{t as S}from"./useActiveWallet-B-yZYGc6-D7Ik-LxJ.js";import{t as C}from"./CheckCircleIcon-NCOQc0Gs.js";import{u as w}from"./Layouts-BMRfo5hw-CeCOyCLK.js";import{n as T}from"./ScreenHeader-CHmc4-Lu-DjyrH7IK.js";import{t as ce}from"./useGetSolPrice-x7gfUIHJ-D1hmQfpA.js";import{c as E,i as D,r as O,s as k,t as A}from"./getFormattedUsdFromLamports-De3U9GlO-Gx4_wxON.js";import{n as j}from"./transaction-BNTP-bFm-M5tJx8vY.js";import{a as M,i as N,n as P,t as F}from"./Value-DTgR824E-BRuIGiec.js";import{n as I,t as L}from"./simulateTransaction-CfuOrae4-64lWYJAL.js";import{t as R}from"./StackedContainer-B2vaEl56-eQCM2cmv.js";import{n as z,t as B}from"./WalletLink-DK5LB5Ha-DHaL350n.js";var V=s(),H=e(c(),1);async function U(e,t,n){if(e.length===0)return{};let r=await b(t,e,n);return y(r),x(r),r.reduce((e,t)=>({...e,[t.address]:t.data.addresses}),{})}var W=d.span`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{I as t}from"./esm-Co94ENUV.js";import{$ as n,D as r,R as i,i as a,l as o}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as s}from"./jsx-runtime-CndCZlyt.js";import{t as c}from"./react-BfYA1q0G.js";import{n as l}from"./ErrorScreen-DipdTWzE-BgPRgnOb.js";import{n as u}from"./modal-context-CwmSeFcv-DPWNJrfK.js";import{c as d}from"./Loader-UAZqxsnw-DJEVblm1.js";import{a as f,i as p,t as m}from"./ModalFooter-BCuEK_nz-C_71qsaz.js";import{n as ee,r as te}from"./TransactionErrorView-BDBNqA_f-CotYKcgf.js";import{b as ne,c as h,m as g}from"./useWallets-X1ndvJ_U-CAYqg7Za.js";import{S as _,X as re,_ as ie,f as ae,i as oe,p as v,t as se}from"./index.browser-B-i-Lj3J.js";import{n as y,o as b,r as x}from"./index.browser-BMmUcykv.js";import{t as S}from"./useActiveWallet-B-yZYGc6-BkK6rFBm.js";import{t as C}from"./CheckCircleIcon-B1l17ioc.js";import{u as w}from"./Layouts-BMRfo5hw-e-sepi6F.js";import{n as T}from"./ScreenHeader-CHmc4-Lu-BvGTLg53.js";import{t as ce}from"./useGetSolPrice-x7gfUIHJ-CLVXqv6I.js";import{c as E,i as D,r as O,s as k,t as A}from"./getFormattedUsdFromLamports-De3U9GlO-Gx4_wxON.js";import{n as j}from"./transaction-BNTP-bFm-M5tJx8vY.js";import{a as M,i as N,n as P,t as F}from"./Value-DTgR824E-Bp6WGZZm.js";import{n as I,t as L}from"./simulateTransaction-CfuOrae4-PjA_tGjX.js";import{t as R}from"./StackedContainer-B2vaEl56-Do5dXB8-.js";import{n as z,t as B}from"./WalletLink-DK5LB5Ha-DjUZvqs-.js";var V=s(),H=e(c(),1);async function U(e,t,n){if(e.length===0)return{};let r=await b(t,e,n);return y(r),x(r),r.reduce((e,t)=>({...e,[t.address]:t.data.addresses}),{})}var W=d.span`
2
2
  && {
3
3
  width: 82px;
4
4
  height: 82px;
@@ -1,4 +1,4 @@
1
- import{c as e}from"./Loader-UAZqxsnw-Cy7hEE2f.js";var t=e.span`
1
+ import{c as e}from"./Loader-UAZqxsnw-DJEVblm1.js";var t=e.span`
2
2
  margin-top: 4px;
3
3
  color: var(--privy-color-foreground);
4
4
  text-align: center;
@@ -1 +1 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{$ as t,D as n,i as r,r as i}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as a}from"./jsx-runtime-BbDfbRii.js";import{t as o}from"./react-DrJ0MmMO.js";import{n as s}from"./modal-context-CwmSeFcv-DruX9J1E.js";import{t as c}from"./ScreenLayout-OwaQQcxH-CrQM6kvA.js";import{s as l,t as u}from"./errors-BQ3N-RVt-BLqjTPNR.js";import{Vt as d,b as f,h as p}from"./index-YiCw0Y_x-CX5i3Z87.js";import{t as m}from"./shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BK_FBkaE.js";import{t as h}from"./telegram-B-JqnkqZ-RBoY3PLx.js";var g=a(),_=e(o(),1),v=({success:e,errorMessage:t,onRetry:n})=>{let r=e?`Successfully connected with Telegram`:t?t.message:`Verifying connection to Telegram`;return(0,g.jsx)(c,{title:r,subtitle:e?`You're good to go!`:t?t.detail:`Just a few moments more`,icon:h,iconVariant:`loading`,iconLoadingStatus:{success:e,fail:!!t},secondaryCta:t?.retryable&&n?{label:`Retry`,onClick:n}:void 0,watermark:!0})},y={component:()=>{let{authenticated:e,logout:a,ready:o,user:c}=r(),{setModalData:h,navigate:y,resetNavigation:b,data:x}=s(),S=n(),{initLoginWithTelegram:C,loginWithTelegram:w,updateWallets:T,setReadyToTrue:E,closePrivyModal:D,createAnalyticsEvent:O,getAuthMeta:k}=t(),[A,j]=(0,_.useState)(!1),[M,N]=(0,_.useState)(void 0),P=p();async function F(){try{let t=await async function(){let t;if(!e){if(P.enabled&&P.status===`error`)throw new d(P.error,null,l.CAPTCHA_FAILURE);return P.enabled&&P.status!==`success`&&(P.execute(),t=await P.waitForResult()),t}}();await w({captchaToken:t}),j(!0),E(!0)}catch(e){if(e?.privyErrorCode===l.ALLOWLIST_REJECTED)return N(void 0),b(),void y(`AllowlistRejectionScreen`);if(e?.privyErrorCode===l.USER_LIMIT_REACHED)return console.error(new u(e).toString()),N(void 0),b(),void y(`UserLimitReachedScreen`);if(e?.privyErrorCode===l.USER_DOES_NOT_EXIST)return N(void 0),b(),void y(`AccountNotFoundScreen`);if(e?.privyErrorCode===l.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return N(void 0),b(),h({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,telegramAuthResult:k()?.telegramAuthResult,telegramWebAppData:k()?.telegramWebAppData,displayName:e.data?.data?.account?.displayName,linkMethod:`telegram`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void y(`LinkConflictScreen`);let{retryable:t,detail:n}=f(e);N({retryable:t,detail:n,message:`Authentication failed`})}}return(0,_.useEffect)((()=>{F()}),[]),(0,_.useEffect)((()=>{if(!(o&&e&&A&&c))return;if(S?.legal.requireUsersAcceptTerms&&!c.hasAcceptedTerms){let e=setTimeout((()=>{y(`AffirmativeConsentScreen`)}),i);return()=>clearTimeout(e)}if(m(c,S.embeddedWallets)){let e=setTimeout((()=>{h({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),O({eventName:`embedded_wallet_creation_failure_logout`,payload:{error:e,provider:`telegram`,screen:`TelegramAuthScreen`}}),a()},callAuthOnSuccessOnClose:!0}}),y(`EmbeddedWalletOnAccountCreateScreen`)}),i);return()=>clearTimeout(e)}T();let t=setTimeout((()=>D({shouldCallAuthOnSuccess:!0,isSuccess:!0})),i);return()=>clearTimeout(t)}),[o,e,A,c]),(0,g.jsx)(v,{success:A,errorMessage:M,onRetry:M?.retryable?async()=>{try{N(void 0),x?.telegramAuthModalData?.seamlessAuth||await C(void 0,x?.login?.disableSignup),await F()}catch(e){let{retryable:t,detail:n}=f(e);N({retryable:t,detail:n,message:`Authentication failed`})}}:void 0})},isCaptchaRequired:!0,isShownBeforeReady:!0};export{y as TelegramAuthScreen,y as default,v as TelegramAuthScreenView};
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{$ as t,D as n,i as r,r as i}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as a}from"./jsx-runtime-CndCZlyt.js";import{t as o}from"./react-BfYA1q0G.js";import{n as s}from"./modal-context-CwmSeFcv-DPWNJrfK.js";import{t as c}from"./ScreenLayout-OwaQQcxH-cfOTmyl0.js";import{s as l,t as u}from"./errors-BQ3N-RVt-CZPAWCgC.js";import{Vt as d,b as f,h as p}from"./index-YiCw0Y_x-Czl0tWfF.js";import{t as m}from"./shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BkAKsRNi.js";import{t as h}from"./telegram-B-JqnkqZ-Dqkm4rDn.js";var g=a(),_=e(o(),1),v=({success:e,errorMessage:t,onRetry:n})=>{let r=e?`Successfully connected with Telegram`:t?t.message:`Verifying connection to Telegram`;return(0,g.jsx)(c,{title:r,subtitle:e?`You're good to go!`:t?t.detail:`Just a few moments more`,icon:h,iconVariant:`loading`,iconLoadingStatus:{success:e,fail:!!t},secondaryCta:t?.retryable&&n?{label:`Retry`,onClick:n}:void 0,watermark:!0})},y={component:()=>{let{authenticated:e,logout:a,ready:o,user:c}=r(),{setModalData:h,navigate:y,resetNavigation:b,data:x}=s(),S=n(),{initLoginWithTelegram:C,loginWithTelegram:w,updateWallets:T,setReadyToTrue:E,closePrivyModal:D,createAnalyticsEvent:O,getAuthMeta:k}=t(),[A,j]=(0,_.useState)(!1),[M,N]=(0,_.useState)(void 0),P=p();async function F(){try{let t=await async function(){let t;if(!e){if(P.enabled&&P.status===`error`)throw new d(P.error,null,l.CAPTCHA_FAILURE);return P.enabled&&P.status!==`success`&&(P.execute(),t=await P.waitForResult()),t}}();await w({captchaToken:t}),j(!0),E(!0)}catch(e){if(e?.privyErrorCode===l.ALLOWLIST_REJECTED)return N(void 0),b(),void y(`AllowlistRejectionScreen`);if(e?.privyErrorCode===l.USER_LIMIT_REACHED)return console.error(new u(e).toString()),N(void 0),b(),void y(`UserLimitReachedScreen`);if(e?.privyErrorCode===l.USER_DOES_NOT_EXIST)return N(void 0),b(),void y(`AccountNotFoundScreen`);if(e?.privyErrorCode===l.ACCOUNT_TRANSFER_REQUIRED&&e.data?.data?.nonce)return N(void 0),b(),h({accountTransfer:{nonce:e.data?.data?.nonce,account:e.data?.data?.subject,telegramAuthResult:k()?.telegramAuthResult,telegramWebAppData:k()?.telegramWebAppData,displayName:e.data?.data?.account?.displayName,linkMethod:`telegram`,embeddedWalletAddress:e.data?.data?.otherUser?.embeddedWalletAddress}}),void y(`LinkConflictScreen`);let{retryable:t,detail:n}=f(e);N({retryable:t,detail:n,message:`Authentication failed`})}}return(0,_.useEffect)((()=>{F()}),[]),(0,_.useEffect)((()=>{if(!(o&&e&&A&&c))return;if(S?.legal.requireUsersAcceptTerms&&!c.hasAcceptedTerms){let e=setTimeout((()=>{y(`AffirmativeConsentScreen`)}),i);return()=>clearTimeout(e)}if(m(c,S.embeddedWallets)){let e=setTimeout((()=>{h({createWallet:{onSuccess:()=>{},onFailure:e=>{console.error(e),O({eventName:`embedded_wallet_creation_failure_logout`,payload:{error:e,provider:`telegram`,screen:`TelegramAuthScreen`}}),a()},callAuthOnSuccessOnClose:!0}}),y(`EmbeddedWalletOnAccountCreateScreen`)}),i);return()=>clearTimeout(e)}T();let t=setTimeout((()=>D({shouldCallAuthOnSuccess:!0,isSuccess:!0})),i);return()=>clearTimeout(t)}),[o,e,A,c]),(0,g.jsx)(v,{success:A,errorMessage:M,onRetry:M?.retryable?async()=>{try{N(void 0),x?.telegramAuthModalData?.seamlessAuth||await C(void 0,x?.login?.disableSignup),await F()}catch(e){let{retryable:t,detail:n}=f(e);N({retryable:t,detail:n,message:`Authentication failed`})}}:void 0})},isCaptchaRequired:!0,isShownBeforeReady:!0};export{y as TelegramAuthScreen,y as default,v as TelegramAuthScreenView};
@@ -1,4 +1,4 @@
1
- import{c as e}from"./Loader-UAZqxsnw-Cy7hEE2f.js";var t=e.span`
1
+ import{c as e}from"./Loader-UAZqxsnw-DJEVblm1.js";var t=e.span`
2
2
  color: var(--privy-color-foreground);
3
3
  font-size: 1.125rem;
4
4
  font-weight: 600;
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{t}from"./jsx-runtime-BbDfbRii.js";import{t as n}from"./react-DrJ0MmMO.js";import{t as r}from"./check-BPgcwEPP.js";import{t as i}from"./x-rlSp9U7W.js";import{c as a}from"./Loader-UAZqxsnw-Cy7hEE2f.js";var o=t(),s=e(n(),1),c=a.div`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{t}from"./jsx-runtime-CndCZlyt.js";import{t as n}from"./react-BfYA1q0G.js";import{t as r}from"./check-DHnllI8N.js";import{t as i}from"./x-gjDrY2rk.js";import{c as a}from"./Loader-UAZqxsnw-DJEVblm1.js";var o=t(),s=e(n(),1),c=a.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  justify-content: flex-start;
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{D as t}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as n}from"./jsx-runtime-BbDfbRii.js";import{t as r}from"./react-DrJ0MmMO.js";import{c as i}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{t as a}from"./ChevronDownIcon-CW-4MSpE.js";import{t as o}from"./Layouts-BMRfo5hw-CeCOyCLK.js";import{t as s}from"./ethers-zTjbodk5-wHhL_BQ1.js";import{i as c,r as l,t as u}from"./WalletLink-DK5LB5Ha-DHaL350n.js";var d=n(),f=e(r(),1),p=({label:e,children:t,valueStyles:n})=>(0,d.jsxs)(m,{children:[(0,d.jsx)(`div`,{children:e}),(0,d.jsx)(h,{style:{...n},children:t})]}),m=i.div`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{D as t}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as n}from"./jsx-runtime-CndCZlyt.js";import{t as r}from"./react-BfYA1q0G.js";import{c as i}from"./Loader-UAZqxsnw-DJEVblm1.js";import{t as a}from"./ChevronDownIcon-B6uJvPHu.js";import{t as o}from"./Layouts-BMRfo5hw-e-sepi6F.js";import{t as s}from"./ethers-zTjbodk5-Cs648CnD.js";import{i as c,r as l,t as u}from"./WalletLink-DK5LB5Ha-DjUZvqs-.js";var d=n(),f=e(r(),1),p=({label:e,children:t,valueStyles:n})=>(0,d.jsxs)(m,{children:[(0,d.jsx)(`div`,{children:e}),(0,d.jsx)(h,{style:{...n},children:t})]}),m=i.div`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  justify-content: space-between;
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{G as t,I as n}from"./esm-B5cbIQaz.js";import{$ as r,D as i}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as a}from"./jsx-runtime-BbDfbRii.js";import{t as o}from"./react-DrJ0MmMO.js";import{c as s}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{a as c,i as l,n as u,t as d,u as f}from"./ModalFooter-BCuEK_nz-c-khvG4Y.js";import{Tn as p}from"./localBatchGatewayRequest-3kLrX_c7.js";import{t as m}from"./useActiveWallet-B-yZYGc6-D7Ik-LxJ.js";import{t as h}from"./ChevronDownIcon-CW-4MSpE.js";import{n as g,t as _}from"./Checkbox-D1EDeo41-rHlvsZzP.js";import{t as v}from"./ExclamationCircleIcon-DUA2wMfO.js";import{t as y}from"./ErrorMessage-D8VaAP5m-CrZOnUyg.js";import{a as b,i as x,n as S,r as ee,t as C}from"./Value-DTgR824E-BRuIGiec.js";import{t as w}from"./LoadingSkeleton-BMsgO5PV-CiEyS5PZ.js";import{t as te}from"./Subtitle-CV-2yKE4-zxWw2m1Q.js";import{t as T}from"./Title-BnzYV3Is-B_JpTatT.js";import{t as E}from"./shared-FM0rljBt--Avg6q2R.js";import{t as D}from"./Address-H8kD1d9O-C85sJ79B.js";import{t as O}from"./LabelXs-oqZNqbm_-iafrj25N.js";import{t as k}from"./WalletInfoCard-sq_2wgFg-DpNSAGte.js";import{t as A}from"./WarningBanner-ZZqCEtZK-2eU4Qo74.js";import{t as j}from"./ErrorBanner-BcpGRt0h-BKOYTyCi.js";var M=e(o());function N({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3`}))}var ne=M.forwardRef(N);function P({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`m3.75 13.5 10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75Z`}))}var re=M.forwardRef(P),F=a();function I({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M8.25 7.5V6.108c0-1.135.845-2.098 1.976-2.192.373-.03.748-.057 1.123-.08M15.75 18H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 0 0-1.123-.08M15.75 18.75v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5A3.375 3.375 0 0 0 6.375 7.5H5.25m11.9-3.664A2.251 2.251 0 0 0 15 2.25h-1.5a2.251 2.251 0 0 0-2.15 1.586m5.8 0c.065.21.1.433.1.664v.75h-6V4.5c0-.231.035-.454.1-.664M6.75 7.5H4.875c-.621 0-1.125.504-1.125 1.125v12c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V16.5a9 9 0 0 0-9-9Z`}))}var L=M.forwardRef(I),ie=s(C)`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{G as t,I as n}from"./esm-Co94ENUV.js";import{$ as r,D as i}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as a}from"./jsx-runtime-CndCZlyt.js";import{t as o}from"./react-BfYA1q0G.js";import{c as s}from"./Loader-UAZqxsnw-DJEVblm1.js";import{a as c,i as l,n as u,t as d,u as f}from"./ModalFooter-BCuEK_nz-C_71qsaz.js";import{Tn as p}from"./localBatchGatewayRequest-B71J8sQ9.js";import{t as m}from"./useActiveWallet-B-yZYGc6-BkK6rFBm.js";import{t as h}from"./ChevronDownIcon-B6uJvPHu.js";import{n as g,t as _}from"./Checkbox-D1EDeo41-BUfq0w99.js";import{t as v}from"./ExclamationCircleIcon-BE-WGrut.js";import{t as y}from"./ErrorMessage-D8VaAP5m-Bs7uX2a9.js";import{a as b,i as x,n as S,r as ee,t as C}from"./Value-DTgR824E-Bp6WGZZm.js";import{t as w}from"./LoadingSkeleton-BMsgO5PV-D2atjsP5.js";import{t as te}from"./Subtitle-CV-2yKE4-DV0o1av3.js";import{t as T}from"./Title-BnzYV3Is-C3qOPnO_.js";import{t as E}from"./shared-FM0rljBt-CxLACri_.js";import{t as D}from"./Address-H8kD1d9O-BdFZmRwI.js";import{t as O}from"./LabelXs-oqZNqbm_-CNprGVQM.js";import{t as k}from"./WalletInfoCard-sq_2wgFg-bOqfl5MA.js";import{t as A}from"./WarningBanner-ZZqCEtZK-Bc2YKZb7.js";import{t as j}from"./ErrorBanner-BcpGRt0h-BhH6_V-9.js";var M=e(o());function N({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3`}))}var ne=M.forwardRef(N);function P({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`m3.75 13.5 10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75Z`}))}var re=M.forwardRef(P),F=a();function I({title:e,titleId:t,...n},r){return M.createElement(`svg`,Object.assign({xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,strokeWidth:1.5,stroke:`currentColor`,"aria-hidden":`true`,"data-slot":`icon`,ref:r,"aria-labelledby":t},n),e?M.createElement(`title`,{id:t},e):null,M.createElement(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M8.25 7.5V6.108c0-1.135.845-2.098 1.976-2.192.373-.03.748-.057 1.123-.08M15.75 18H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 0 0-1.123-.08M15.75 18.75v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5A3.375 3.375 0 0 0 6.375 7.5H5.25m11.9-3.664A2.251 2.251 0 0 0 15 2.25h-1.5a2.251 2.251 0 0 0-2.15 1.586m5.8 0c.065.21.1.433.1.664v.75h-6V4.5c0-.231.035-.454.1-.664M6.75 7.5H4.875c-.621 0-1.125.504-1.125 1.125v12c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V16.5a9 9 0 0 0-9-9Z`}))}var L=M.forwardRef(I),ie=s(C)`
2
2
  cursor: pointer;
3
3
  display: inline-flex;
4
4
  gap: 8px;
@@ -1,4 +1,4 @@
1
- import{s as e}from"./rolldown-runtime-BcKkbAw3.js";import{$ as t,D as n}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as r}from"./jsx-runtime-BbDfbRii.js";import{t as i}from"./react-DrJ0MmMO.js";import{n as a}from"./modal-context-CwmSeFcv-DruX9J1E.js";import{c as o}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{i as s,t as c}from"./ModalFooter-BCuEK_nz-c-khvG4Y.js";import{l}from"./get-entropy-details-for-user-dHRH5Gpi-Dukf7_kJ.js";import{f as u}from"./storage-Ufl800Ne-D0bZBw-H.js";import{V as d}from"./index-YiCw0Y_x-CX5i3Z87.js";import{t as f}from"./lib-BsS8z8Lj.js";import{f as p,l as m,s as h,t as g}from"./guards-BIW-GiMJ-CHfXo8XI.js";import{c as _,h as v,r as y}from"./useActiveWallet-B-yZYGc6-D7Ik-LxJ.js";import{n as b}from"./ScreenHeader-CHmc4-Lu-DjyrH7IK.js";import{t as x}from"./FundWalletMethodHeader-BWNkokCT-BQdbJ5Bb.js";import{t as S}from"./Subtitle-CV-2yKE4-zxWw2m1Q.js";import{t as C}from"./Chip-CZKIKt9K-CutJG010.js";import{s as w}from"./styles-Cm9H63WO-Br4QtzUL.js";import{t as T}from"./InjectedWalletIcon-DLcYOGDj-DLSV_NjP.js";import{t as E}from"./WalletOverflowButton-bfCnp-9T-CUyIJFzt.js";var D=r(),O=e(i(),1),k=e(f(),1),A=({provider:e,displayName:n,logo:r,connectOnly:i,connector:o})=>{let s,{navigate:c,setModalData:l}=a(),{connectWallet:f,walletConnectionStatus:p}=t(),_=y(),[v,b]=(0,O.useState)(!1),x=o.connectorType===`wallet_connect_v2`?e:o.walletClientType,[S,C]=(0,O.useState)(!1);(0,O.useEffect)((()=>{S&&(p?.status===`connected`||p?.connectError)&&(c(i?`ConnectOnlyStatusScreen`:`ConnectionStatusScreen`),C(!1))}),[S,p]);let w=m(e),E=window.matchMedia(`(display-mode: standalone)`).matches,A=g({connectorType:o.connectorType,walletClientType:x});s=A&&A.chainTypes.includes(o.chainType)?()=>{A.isInstalled||o.chainType===`solana`&&`isInstalled`in o&&o.isInstalled?(f(o,x),c(i?`ConnectOnlyStatusScreen`:`ConnectionStatusScreen`)):h({isMobile:k.isMobile,walletConfig:A})?(l((t=>({...t,externalConnectWallet:{...t?.externalConnectWallet,preSelectedWalletId:e,walletChainType:o.chainType===`solana`?`solana-only`:`ethereum-only`}}))),c(i?`ConnectOnlyLandingScreen`:`AuthenticateWithWalletScreen`)):k.isMobile?(l({installWalletModalData:{walletConfig:A,chainType:o.chainType,connectOnly:i}}),c(`WalletInterstitialScreen`)):(l({installWalletModalData:{walletConfig:A,chainType:o.chainType,connectOnly:i}}),c(`InstallWalletScreen`))}:o.connectorType!==`coinbase_wallet`||o.coinbaseWalletConfig.preference?.options!==`eoaOnly`||!k.isMobile||E||u()?()=>{if(!d(window.navigator.userAgent)||event?.isTrusted){if(o.walletClientType===`mobile_wallet_adapter`)return f(o,x),void C(!0);f(o,x),i?o.connectorType===`wallet_connect_v2`?(l((e=>({...e,externalConnectWallet:{...e?.externalConnectWallet,preSelectedWalletId:`wallet_connect_qr`}}))),c(`ConnectOnlyLandingScreen`)):c(`ConnectOnlyStatusScreen`):c(`ConnectionStatusScreen`)}}:()=>{window.location.href=`https://go.cb-w.com/dapp?cb_url=${encodeURI(window.location.href)}`};let P=n||w?.metadata?.shortName||w?.name||o.walletClientType;return(0,D.jsxs)(j,{onClick:()=>{v||(b(!0),setTimeout((()=>b(!1)),2e3),s())},disabled:v,children:[(0,D.jsx)(T,{icon:r||w?.image_url?.md,name:P}),(0,D.jsx)(`span`,{children:P}),(0,D.jsxs)(N,{id:`chip-container`,children:[_?.walletClientType===x&&_?.chainType===o.chainType?(0,D.jsx)(M,{color:`gray`,children:`Recent`}):(0,D.jsx)(`span`,{id:`connect-text`,children:`Connect`}),o.chainType===`solana`&&(0,D.jsx)(M,{color:`gray`,children:`Solana`})]})]})},j=o(_)`
1
+ import{s as e}from"./rolldown-runtime-Bjp52BOI.js";import{$ as t,D as n}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as r}from"./jsx-runtime-CndCZlyt.js";import{t as i}from"./react-BfYA1q0G.js";import{n as a}from"./modal-context-CwmSeFcv-DPWNJrfK.js";import{c as o}from"./Loader-UAZqxsnw-DJEVblm1.js";import{i as s,t as c}from"./ModalFooter-BCuEK_nz-C_71qsaz.js";import{l}from"./get-entropy-details-for-user-dHRH5Gpi-BNiOFXbK.js";import{f as u}from"./storage-Ufl800Ne-1qCR2JMO.js";import{V as d}from"./index-YiCw0Y_x-Czl0tWfF.js";import{t as f}from"./lib-DGtzi2DK.js";import{f as p,l as m,s as h,t as g}from"./guards-BIW-GiMJ-D3tWTQAR.js";import{c as _,h as v,r as y}from"./useActiveWallet-B-yZYGc6-BkK6rFBm.js";import{n as b}from"./ScreenHeader-CHmc4-Lu-BvGTLg53.js";import{t as x}from"./FundWalletMethodHeader-BWNkokCT-LPv35wkD.js";import{t as S}from"./Subtitle-CV-2yKE4-DV0o1av3.js";import{t as C}from"./Chip-CZKIKt9K-r9Nk__0-.js";import{s as w}from"./styles-Cm9H63WO-p_ic_dxE.js";import{t as T}from"./InjectedWalletIcon-DLcYOGDj-tuIrKQHH.js";import{t as E}from"./WalletOverflowButton-bfCnp-9T-B6P7DQXA.js";var D=r(),O=e(i(),1),k=e(f(),1),A=({provider:e,displayName:n,logo:r,connectOnly:i,connector:o})=>{let s,{navigate:c,setModalData:l}=a(),{connectWallet:f,walletConnectionStatus:p}=t(),_=y(),[v,b]=(0,O.useState)(!1),x=o.connectorType===`wallet_connect_v2`?e:o.walletClientType,[S,C]=(0,O.useState)(!1);(0,O.useEffect)((()=>{S&&(p?.status===`connected`||p?.connectError)&&(c(i?`ConnectOnlyStatusScreen`:`ConnectionStatusScreen`),C(!1))}),[S,p]);let w=m(e),E=window.matchMedia(`(display-mode: standalone)`).matches,A=g({connectorType:o.connectorType,walletClientType:x});s=A&&A.chainTypes.includes(o.chainType)?()=>{A.isInstalled||o.chainType===`solana`&&`isInstalled`in o&&o.isInstalled?(f(o,x),c(i?`ConnectOnlyStatusScreen`:`ConnectionStatusScreen`)):h({isMobile:k.isMobile,walletConfig:A})?(l((t=>({...t,externalConnectWallet:{...t?.externalConnectWallet,preSelectedWalletId:e,walletChainType:o.chainType===`solana`?`solana-only`:`ethereum-only`}}))),c(i?`ConnectOnlyLandingScreen`:`AuthenticateWithWalletScreen`)):k.isMobile?(l({installWalletModalData:{walletConfig:A,chainType:o.chainType,connectOnly:i}}),c(`WalletInterstitialScreen`)):(l({installWalletModalData:{walletConfig:A,chainType:o.chainType,connectOnly:i}}),c(`InstallWalletScreen`))}:o.connectorType!==`coinbase_wallet`||o.coinbaseWalletConfig.preference?.options!==`eoaOnly`||!k.isMobile||E||u()?()=>{if(!d(window.navigator.userAgent)||event?.isTrusted){if(o.walletClientType===`mobile_wallet_adapter`)return f(o,x),void C(!0);f(o,x),i?o.connectorType===`wallet_connect_v2`?(l((e=>({...e,externalConnectWallet:{...e?.externalConnectWallet,preSelectedWalletId:`wallet_connect_qr`}}))),c(`ConnectOnlyLandingScreen`)):c(`ConnectOnlyStatusScreen`):c(`ConnectionStatusScreen`)}}:()=>{window.location.href=`https://go.cb-w.com/dapp?cb_url=${encodeURI(window.location.href)}`};let P=n||w?.metadata?.shortName||w?.name||o.walletClientType;return(0,D.jsxs)(j,{onClick:()=>{v||(b(!0),setTimeout((()=>b(!1)),2e3),s())},disabled:v,children:[(0,D.jsx)(T,{icon:r||w?.image_url?.md,name:P}),(0,D.jsx)(`span`,{children:P}),(0,D.jsxs)(N,{id:`chip-container`,children:[_?.walletClientType===x&&_?.chainType===o.chainType?(0,D.jsx)(M,{color:`gray`,children:`Recent`}):(0,D.jsx)(`span`,{id:`connect-text`,children:`Connect`}),o.chainType===`solana`&&(0,D.jsx)(M,{color:`gray`,children:`Solana`})]})]})},j=o(_)`
2
2
  /* Wallet name text color */
3
3
  > span {
4
4
  color: var(--privy-color-foreground);
@@ -1,4 +1,4 @@
1
- import{Ct as e,_t as t,bt as n,dt as r,gt as i,nt as a,ut as o,wt as s,xt as c}from"./privy-context-81KmsBw2-CjWGzyg7.js";import{t as l}from"./jsx-runtime-BbDfbRii.js";import{c as u}from"./Loader-UAZqxsnw-Cy7hEE2f.js";import{t as d}from"./ModalFooter-BCuEK_nz-c-khvG4Y.js";import{t as f}from"./index-CWARkn2w-Cezl_uBr.js";import{l as p}from"./guards-BIW-GiMJ-CHfXo8XI.js";import{t as m}from"./GlobeAltIcon-vqrVV5ho.js";import{c as h}from"./Layouts-BMRfo5hw-CeCOyCLK.js";import{n as g}from"./ScreenHeader-CHmc4-Lu-DjyrH7IK.js";import{t as _}from"./FundWalletMethodHeader-BWNkokCT-BQdbJ5Bb.js";import{a as v,i as y,n as b,t as x}from"./Value-DTgR824E-BRuIGiec.js";import{t as S}from"./InjectedWalletIcon-DLcYOGDj-DLSV_NjP.js";import{t as C}from"./Address-H8kD1d9O-C85sJ79B.js";var w=l(),T=e=>(0,w.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,version:`1.1`,id:`Layer_1`,x:`0px`,y:`0px`,viewBox:`0 0 397.7 311.7`,enableBackground:`new 0 0 397.7 311.7`,xmlSpace:`preserve`,...e,children:[(0,w.jsxs)(`linearGradient`,{id:`SVGID_1_`,gradientUnits:`userSpaceOnUse`,x1:`360.8791`,y1:`351.4553`,x2:`141.213`,y2:`-69.2936`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M64.6,237.9c2.4-2.4,5.7-3.8,9.2-3.8h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5 c-5.8,0-8.7-7-4.6-11.1L64.6,237.9z`,fill:`url(#SVGID_1_)`}),(0,w.jsxs)(`linearGradient`,{id:`SVGID_2_`,gradientUnits:`userSpaceOnUse`,x1:`264.8291`,y1:`401.6014`,x2:`45.163`,y2:`-19.1475`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M64.6,3.8C67.1,1.4,70.4,0,73.8,0h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5 c-5.8,0-8.7-7-4.6-11.1L64.6,3.8z`,fill:`url(#SVGID_2_)`}),(0,w.jsxs)(`linearGradient`,{id:`SVGID_3_`,gradientUnits:`userSpaceOnUse`,x1:`312.5484`,y1:`376.688`,x2:`92.8822`,y2:`-44.061`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M333.1,120.1c-2.4-2.4-5.7-3.8-9.2-3.8H6.5c-5.8,0-8.7,7-4.6,11.1l62.7,62.7c2.4,2.4,5.7,3.8,9.2,3.8h317.4 c5.8,0,8.7-7,4.6-11.1L333.1,120.1z`,fill:`url(#SVGID_3_)`})]}),E={[c.id]:e=>(0,w.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,version:`1.1`,id:`Layer_1`,x:`0px`,y:`0px`,viewBox:`0 0 2500 2500`,xmlSpace:`preserve`,...e,children:(0,w.jsx)(`g`,{id:`Layer_x0020_1`,children:(0,w.jsxs)(`g`,{id:`_2405588477232`,children:[(0,w.jsx)(`rect`,{fill:`none`,width:`2500`,height:`2500`}),(0,w.jsx)(`g`,{children:(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`path`,{fill:`#213147`,d:`M226,760v980c0,63,33,120,88,152l849,490c54,31,121,31,175,0l849-490c54-31,88-89,88-152V760 c0-63-33-120-88-152l-849-490c-54-31-121-31-175,0L314,608c-54,31-87,89-87,152H226z`}),(0,w.jsx)(`g`,{children:(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#12AAFF`,d:`M1435,1440l-121,332c-3,9-3,19,0,29l208,571l241-139l-289-793C1467,1422,1442,1422,1435,1440z`})}),(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#12AAFF`,d:`M1678,882c-7-18-32-18-39,0l-121,332c-3,9-3,19,0,29l341,935l241-139L1678,883V882z`})})]})}),(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#9DCCED`,d:`M1250,155c6,0,12,2,17,5l918,530c11,6,17,18,17,30v1060c0,12-7,24-17,30l-918,530c-5,3-11,5-17,5 s-12-2-17-5l-918-530c-11-6-17-18-17-30V719c0-12,7-24,17-30l918-530c5-3,11-5,17-5l0,0V155z M1250,0c-33,0-65,8-95,25L237,555 c-59,34-95,96-95,164v1060c0,68,36,130,95,164l918,530c29,17,62,25,95,25s65-8,95-25l918-530c59-34,95-96,95-164V719 c0-68-36-130-95-164L1344,25c-29-17-62-25-95-25l0,0H1250z`})}),(0,w.jsx)(`polygon`,{fill:`#213147`,points:`642,2179 727,1947 897,2088 738,2234 `}),(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`path`,{fill:`#FFFFFF`,d:`M1172,644H939c-17,0-33,11-39,27L401,2039l241,139l550-1507c5-14-5-28-19-28L1172,644z`}),(0,w.jsx)(`path`,{fill:`#FFFFFF`,d:`M1580,644h-233c-17,0-33,11-39,27L738,2233l241,139l620-1701c5-14-5-28-19-28V644z`})]})]})})]})})}),[n.id]:e=>(0,w.jsxs)(`svg`,{width:`1503`,height:`1504`,viewBox:`0 0 1503 1504`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{x:`287`,y:`258`,width:`928`,height:`844`,fill:`white`}),(0,w.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M1502.5 752C1502.5 1166.77 1166.27 1503 751.5 1503C336.734 1503 0.5 1166.77 0.5 752C0.5 337.234 336.734 1 751.5 1C1166.27 1 1502.5 337.234 1502.5 752ZM538.688 1050.86H392.94C362.314 1050.86 347.186 1050.86 337.962 1044.96C327.999 1038.5 321.911 1027.8 321.173 1015.99C320.619 1005.11 328.184 991.822 343.312 965.255L703.182 330.935C718.495 303.999 726.243 290.531 736.021 285.55C746.537 280.2 759.083 280.2 769.599 285.55C779.377 290.531 787.126 303.999 802.438 330.935L876.42 460.079L876.797 460.738C893.336 489.635 901.723 504.289 905.385 519.669C909.443 536.458 909.443 554.169 905.385 570.958C901.695 586.455 893.393 601.215 876.604 630.549L687.573 964.702L687.084 965.558C670.436 994.693 661.999 1009.46 650.306 1020.6C637.576 1032.78 622.263 1041.63 605.474 1046.62C590.161 1050.86 573.004 1050.86 538.688 1050.86ZM906.75 1050.86H1115.59C1146.4 1050.86 1161.9 1050.86 1171.13 1044.78C1181.09 1038.32 1187.36 1027.43 1187.92 1015.63C1188.45 1005.1 1181.05 992.33 1166.55 967.307C1166.05 966.455 1165.55 965.588 1165.04 964.706L1060.43 785.75L1059.24 783.735C1044.54 758.877 1037.12 746.324 1027.59 741.472C1017.08 736.121 1004.71 736.121 994.199 741.472C984.605 746.453 976.857 759.552 961.544 785.934L857.306 964.891L856.949 965.507C841.69 991.847 834.064 1005.01 834.614 1015.81C835.352 1027.62 841.44 1038.5 851.402 1044.96C860.443 1050.86 875.94 1050.86 906.75 1050.86Z`,fill:`#E84142`})]}),[r.id]:e=>(0,w.jsx)(`svg`,{width:`146`,height:`146`,viewBox:`0 0 1280 1280`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,w.jsx)(`path`,{d:`M0,101.12c0-34.64,0-51.95,6.53-65.28,6.25-12.76,16.56-23.07,29.32-29.32C49.17,0,66.48,0,101.12,0h1077.76c34.63,0,51.96,0,65.28,6.53,12.75,6.25,23.06,16.56,29.32,29.32,6.52,13.32,6.52,30.64,6.52,65.28v1077.76c0,34.63,0,51.96-6.52,65.28-6.26,12.75-16.57,23.06-29.32,29.32-13.32,6.52-30.65,6.52-65.28,6.52H101.12c-34.64,0-51.95,0-65.28-6.52-12.76-6.26-23.07-16.57-29.32-29.32-6.53-13.32-6.53-30.65-6.53-65.28V101.12Z`,fill:`#0000FF`})}),[t.id]:e=>(0,w.jsxs)(`svg`,{fill:`none`,height:`400`,viewBox:`0 0 400 400`,width:`400`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`path`,{d:`m0 0h400v400h-400z`,fill:`#fcff52`}),(0,w.jsx)(`path`,{d:`m300 100h-200v200h199.996v-69.813h-33.191c-11.442 25.468-37.194 43.206-66.665 43.206-40.63 0-73.533-33.187-73.533-73.533s32.903-73.249 73.533-73.249c30.043 0 55.795 18.313 67.24 44.349h32.62z`,fill:`#000`})]}),[o.id]:e=>(0,w.jsxs)(`svg`,{width:`200`,height:`208`,viewBox:`0 0 200 208`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{width:`199.4`,height:`207.623`,fill:`#121212`}),(0,w.jsxs)(`g`,{"clip-path":`url(#clip0_2303_643)`,children:[(0,w.jsx)(`path`,{d:`M132.369 155.99H49.7001V68.8854H68.6148V139.109H132.369V155.981V155.99Z`,fill:`white`}),(0,w.jsx)(`path`,{d:`M132.369 85.7575C141.687 85.7575 149.241 78.2036 149.241 68.8855C149.241 59.5673 141.687 52.0134 132.369 52.0134C123.05 52.0134 115.497 59.5673 115.497 68.8855C115.497 78.2036 123.05 85.7575 132.369 85.7575Z`,fill:`white`})]}),(0,w.jsx)(`defs`,{children:(0,w.jsx)(`clipPath`,{id:`clip0_2303_643`,children:(0,w.jsx)(`rect`,{width:`99.5407`,height:`103.977`,fill:`white`,transform:`translate(49.7001 52.0134)`})})})]}),[s.id]:e=>(0,w.jsxs)(`svg`,{version:`1.1`,id:`Layer_1`,xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,x:`0px`,y:`0px`,viewBox:`0 0 327.5 533.3`,enableBackground:`new 0 0 327.5 533.3;`,xmlSpace:`preserve`,...e,children:[(0,w.jsx)(`path`,{fill:`#8492B2`,d:`M163.7,197.2V0L0,271.6L163.7,197.2z`}),(0,w.jsx)(`path`,{fill:`#62688F`,d:`M163.7,368.4V197.2L0,271.6L163.7,368.4z M163.7,197.2l163.7,74.4L163.7,0V197.2z`}),(0,w.jsx)(`path`,{fill:`#454A75`,d:`M163.7,197.2v171.2l163.7-96.8L163.7,197.2z`}),(0,w.jsx)(`path`,{fill:`#8492B2`,d:`M163.7,399.4L0,302.7l163.7,230.7V399.4z`}),(0,w.jsx)(`path`,{fill:`#62688F`,d:`M327.5,302.7l-163.8,96.7v134L327.5,302.7z`})]}),[e.id]:e=>(0,w.jsxs)(`svg`,{width:`500`,height:`500`,viewBox:`0 0 500 500`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`circle`,{cx:`250`,cy:`250`,r:`250`,fill:`#FF0420`}),(0,w.jsx)(`path`,{d:`M177.133 316.446C162.247 316.446 150.051 312.943 140.544 305.938C131.162 298.808 126.471 288.676 126.471 275.541C126.471 272.789 126.784 269.411 127.409 265.408C129.036 256.402 131.35 245.581 134.352 232.947C142.858 198.547 164.812 181.347 200.213 181.347C209.845 181.347 218.476 182.973 226.107 186.225C233.738 189.352 239.742 194.106 244.12 200.486C248.498 206.74 250.688 214.246 250.688 223.002C250.688 225.629 250.375 228.944 249.749 232.947C247.873 244.08 245.621 254.901 242.994 265.408C238.616 282.546 231.048 295.368 220.29 303.874C209.532 312.255 195.147 316.446 177.133 316.446ZM179.76 289.426C186.766 289.426 192.707 287.362 197.586 283.234C202.59 279.106 206.155 272.789 208.281 264.283C211.158 252.524 213.348 242.266 214.849 233.51C215.349 230.883 215.599 228.194 215.599 225.441C215.599 214.058 209.657 208.366 197.774 208.366C190.768 208.366 184.764 210.43 179.76 214.558C174.882 218.687 171.379 225.004 169.253 233.51C167.001 241.891 164.749 252.149 162.498 264.283C161.997 266.784 161.747 269.411 161.747 272.163C161.747 283.672 167.752 289.426 179.76 289.426Z`,fill:`white`}),(0,w.jsx)(`path`,{d:`M259.303 314.57C257.927 314.57 256.863 314.132 256.113 313.256C255.487 312.255 255.3 311.13 255.55 309.879L281.444 187.914C281.694 186.538 282.382 185.412 283.508 184.536C284.634 183.661 285.822 183.223 287.073 183.223H336.985C350.87 183.223 362.003 186.1 370.384 191.854C378.891 197.609 383.144 205.927 383.144 216.81C383.144 219.937 382.769 223.19 382.018 226.567C378.891 240.953 372.574 251.586 363.067 258.466C353.685 265.346 340.8 268.786 324.413 268.786H299.082L290.451 309.879C290.2 311.255 289.512 312.38 288.387 313.256C287.261 314.132 286.072 314.57 284.822 314.57H259.303ZM325.727 242.892C330.98 242.892 335.546 241.453 339.424 238.576C343.427 235.699 346.054 231.571 347.305 226.192C347.68 224.065 347.868 222.189 347.868 220.563C347.868 216.935 346.805 214.183 344.678 212.307C342.551 210.305 338.924 209.305 333.795 209.305H311.278L304.148 242.892H325.727Z`,fill:`white`})]}),[a.id]:e=>(0,w.jsxs)(`svg`,{width:`360`,height:`360`,viewBox:`0 0 360 360`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{width:`360`,height:`360`,rx:`180`,fill:`#6C00F6`}),(0,w.jsx)(`path`,{d:`M157.743 154.241L141.052 144.58L90.9766 173.561V231.519L141.052 260.5L191.13 231.519V141.359L218.948 125.26L246.77 141.359V173.561L218.948 189.66L202.257 180.002V205.759L218.948 215.42L269.024 186.439V128.481L218.948 99.5L168.873 128.481V218.641L141.052 234.74L113.233 218.641V186.439L141.052 170.34L157.743 179.998V154.241Z`,fill:`white`})]}),[i.id]:e=>(0,w.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`30`,height:`30`,viewBox:`0 0 30 30`,fill:`none`,...e,children:[(0,w.jsx)(`g`,{clipPath:`url(#clip0)`,children:(0,w.jsx)(`g`,{clipPath:`url(#clip1)`,children:(0,w.jsx)(`path`,{d:`M14.9188 29.8373C6.67944 29.8373 0.00012207 23.1581 0.00012207 14.9187C0.00012207 6.67931 6.67944 0 14.9188 0C23.1581 0 29.8373 6.67931 29.8373 14.9187C29.8373 23.1581 23.1581 29.8373 14.9188 29.8373Z`,fill:`url(#paint0)`})})}),(0,w.jsxs)(`defs`,{children:[(0,w.jsxs)(`radialGradient`,{id:`paint0`,cx:`0`,cy:`0`,r:`1`,gradientUnits:`userSpaceOnUse`,gradientTransform:`translate(21.6921 8.02215) rotate(180) scale(25.2008)`,children:[(0,w.jsx)(`stop`,{offset:`0.00682297`,stopColor:`#F2CEFE`}),(0,w.jsx)(`stop`,{offset:`0.1913`,stopColor:`#AFBAF1`}),(0,w.jsx)(`stop`,{offset:`0.4982`,stopColor:`#4281D3`}),(0,w.jsx)(`stop`,{offset:`0.666667`,stopColor:`#2E427D`}),(0,w.jsx)(`stop`,{offset:`0.822917`,stopColor:`#230101`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#8F6B40`})]}),(0,w.jsx)(`clipPath`,{id:`clip0`,children:(0,w.jsx)(`rect`,{width:`30`,height:`30`,fill:`white`})}),(0,w.jsx)(`clipPath`,{id:`clip1`,children:(0,w.jsx)(`rect`,{width:`30`,height:`30`,fill:`white`})})]})]})},D=({chainId:e,...t})=>{if(e===`solana`)return(0,w.jsx)(T,{...t});let n=E[e];return(0,w.jsx)(n||m,{...t})},O=({walletClientType:e,displayName:t,addressToFund:n,chainId:r,chainName:i,isBridging:a,isErc20Flow:o,totalPriceInNativeCurrency:s,totalPriceInUsd:c,gasPriceInNativeCurrency:l,gasPriceInUsd:u})=>{let m=p(e);return(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(_,{}),(0,w.jsx)(f,{centerIcon:(0,w.jsx)(S,{icon:m?.image_url?.md,name:e})}),(0,w.jsx)(g,{style:{marginTop:`8px`,marginBottom:`12px`},title:`${a?`Bridging`:`Confirming`} with ${t}`}),!a&&!o&&(0,w.jsxs)(v,{children:[(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Total`}),(0,w.jsx)(b,{children:c||s})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`To`}),(0,w.jsx)(b,{children:(0,w.jsx)(C,{address:n,showCopyIcon:!1})})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Network`}),(0,w.jsx)(b,{children:(0,w.jsxs)(k,{children:[(0,w.jsx)(D,{chainId:r,height:16,width:16}),` `,i]})})]}),l&&(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Estimated fee`}),(0,w.jsx)(b,{children:u||l})]})]}),(0,w.jsx)(h,{height:24}),(0,w.jsx)(d,{})]})},k=u.div`
1
+ import{Ct as e,_t as t,bt as n,dt as r,gt as i,nt as a,ut as o,wt as s,xt as c}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{t as l}from"./jsx-runtime-CndCZlyt.js";import{c as u}from"./Loader-UAZqxsnw-DJEVblm1.js";import{t as d}from"./ModalFooter-BCuEK_nz-C_71qsaz.js";import{t as f}from"./index-CWARkn2w-DxuckIFn.js";import{l as p}from"./guards-BIW-GiMJ-D3tWTQAR.js";import{t as m}from"./GlobeAltIcon-BBRl2MMn.js";import{c as h}from"./Layouts-BMRfo5hw-e-sepi6F.js";import{n as g}from"./ScreenHeader-CHmc4-Lu-BvGTLg53.js";import{t as _}from"./FundWalletMethodHeader-BWNkokCT-LPv35wkD.js";import{a as v,i as y,n as b,t as x}from"./Value-DTgR824E-Bp6WGZZm.js";import{t as S}from"./InjectedWalletIcon-DLcYOGDj-tuIrKQHH.js";import{t as C}from"./Address-H8kD1d9O-BdFZmRwI.js";var w=l(),T=e=>(0,w.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,version:`1.1`,id:`Layer_1`,x:`0px`,y:`0px`,viewBox:`0 0 397.7 311.7`,enableBackground:`new 0 0 397.7 311.7`,xmlSpace:`preserve`,...e,children:[(0,w.jsxs)(`linearGradient`,{id:`SVGID_1_`,gradientUnits:`userSpaceOnUse`,x1:`360.8791`,y1:`351.4553`,x2:`141.213`,y2:`-69.2936`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M64.6,237.9c2.4-2.4,5.7-3.8,9.2-3.8h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5 c-5.8,0-8.7-7-4.6-11.1L64.6,237.9z`,fill:`url(#SVGID_1_)`}),(0,w.jsxs)(`linearGradient`,{id:`SVGID_2_`,gradientUnits:`userSpaceOnUse`,x1:`264.8291`,y1:`401.6014`,x2:`45.163`,y2:`-19.1475`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M64.6,3.8C67.1,1.4,70.4,0,73.8,0h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5 c-5.8,0-8.7-7-4.6-11.1L64.6,3.8z`,fill:`url(#SVGID_2_)`}),(0,w.jsxs)(`linearGradient`,{id:`SVGID_3_`,gradientUnits:`userSpaceOnUse`,x1:`312.5484`,y1:`376.688`,x2:`92.8822`,y2:`-44.061`,gradientTransform:`matrix(1 0 0 -1 0 314)`,children:[(0,w.jsx)(`stop`,{offset:`0`,stopColor:`#00FFA3`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#DC1FFF`})]}),(0,w.jsx)(`path`,{d:`M333.1,120.1c-2.4-2.4-5.7-3.8-9.2-3.8H6.5c-5.8,0-8.7,7-4.6,11.1l62.7,62.7c2.4,2.4,5.7,3.8,9.2,3.8h317.4 c5.8,0,8.7-7,4.6-11.1L333.1,120.1z`,fill:`url(#SVGID_3_)`})]}),E={[c.id]:e=>(0,w.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,version:`1.1`,id:`Layer_1`,x:`0px`,y:`0px`,viewBox:`0 0 2500 2500`,xmlSpace:`preserve`,...e,children:(0,w.jsx)(`g`,{id:`Layer_x0020_1`,children:(0,w.jsxs)(`g`,{id:`_2405588477232`,children:[(0,w.jsx)(`rect`,{fill:`none`,width:`2500`,height:`2500`}),(0,w.jsx)(`g`,{children:(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`path`,{fill:`#213147`,d:`M226,760v980c0,63,33,120,88,152l849,490c54,31,121,31,175,0l849-490c54-31,88-89,88-152V760 c0-63-33-120-88-152l-849-490c-54-31-121-31-175,0L314,608c-54,31-87,89-87,152H226z`}),(0,w.jsx)(`g`,{children:(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#12AAFF`,d:`M1435,1440l-121,332c-3,9-3,19,0,29l208,571l241-139l-289-793C1467,1422,1442,1422,1435,1440z`})}),(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#12AAFF`,d:`M1678,882c-7-18-32-18-39,0l-121,332c-3,9-3,19,0,29l341,935l241-139L1678,883V882z`})})]})}),(0,w.jsx)(`g`,{children:(0,w.jsx)(`path`,{fill:`#9DCCED`,d:`M1250,155c6,0,12,2,17,5l918,530c11,6,17,18,17,30v1060c0,12-7,24-17,30l-918,530c-5,3-11,5-17,5 s-12-2-17-5l-918-530c-11-6-17-18-17-30V719c0-12,7-24,17-30l918-530c5-3,11-5,17-5l0,0V155z M1250,0c-33,0-65,8-95,25L237,555 c-59,34-95,96-95,164v1060c0,68,36,130,95,164l918,530c29,17,62,25,95,25s65-8,95-25l918-530c59-34,95-96,95-164V719 c0-68-36-130-95-164L1344,25c-29-17-62-25-95-25l0,0H1250z`})}),(0,w.jsx)(`polygon`,{fill:`#213147`,points:`642,2179 727,1947 897,2088 738,2234 `}),(0,w.jsxs)(`g`,{children:[(0,w.jsx)(`path`,{fill:`#FFFFFF`,d:`M1172,644H939c-17,0-33,11-39,27L401,2039l241,139l550-1507c5-14-5-28-19-28L1172,644z`}),(0,w.jsx)(`path`,{fill:`#FFFFFF`,d:`M1580,644h-233c-17,0-33,11-39,27L738,2233l241,139l620-1701c5-14-5-28-19-28V644z`})]})]})})]})})}),[n.id]:e=>(0,w.jsxs)(`svg`,{width:`1503`,height:`1504`,viewBox:`0 0 1503 1504`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{x:`287`,y:`258`,width:`928`,height:`844`,fill:`white`}),(0,w.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M1502.5 752C1502.5 1166.77 1166.27 1503 751.5 1503C336.734 1503 0.5 1166.77 0.5 752C0.5 337.234 336.734 1 751.5 1C1166.27 1 1502.5 337.234 1502.5 752ZM538.688 1050.86H392.94C362.314 1050.86 347.186 1050.86 337.962 1044.96C327.999 1038.5 321.911 1027.8 321.173 1015.99C320.619 1005.11 328.184 991.822 343.312 965.255L703.182 330.935C718.495 303.999 726.243 290.531 736.021 285.55C746.537 280.2 759.083 280.2 769.599 285.55C779.377 290.531 787.126 303.999 802.438 330.935L876.42 460.079L876.797 460.738C893.336 489.635 901.723 504.289 905.385 519.669C909.443 536.458 909.443 554.169 905.385 570.958C901.695 586.455 893.393 601.215 876.604 630.549L687.573 964.702L687.084 965.558C670.436 994.693 661.999 1009.46 650.306 1020.6C637.576 1032.78 622.263 1041.63 605.474 1046.62C590.161 1050.86 573.004 1050.86 538.688 1050.86ZM906.75 1050.86H1115.59C1146.4 1050.86 1161.9 1050.86 1171.13 1044.78C1181.09 1038.32 1187.36 1027.43 1187.92 1015.63C1188.45 1005.1 1181.05 992.33 1166.55 967.307C1166.05 966.455 1165.55 965.588 1165.04 964.706L1060.43 785.75L1059.24 783.735C1044.54 758.877 1037.12 746.324 1027.59 741.472C1017.08 736.121 1004.71 736.121 994.199 741.472C984.605 746.453 976.857 759.552 961.544 785.934L857.306 964.891L856.949 965.507C841.69 991.847 834.064 1005.01 834.614 1015.81C835.352 1027.62 841.44 1038.5 851.402 1044.96C860.443 1050.86 875.94 1050.86 906.75 1050.86Z`,fill:`#E84142`})]}),[r.id]:e=>(0,w.jsx)(`svg`,{width:`146`,height:`146`,viewBox:`0 0 1280 1280`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,w.jsx)(`path`,{d:`M0,101.12c0-34.64,0-51.95,6.53-65.28,6.25-12.76,16.56-23.07,29.32-29.32C49.17,0,66.48,0,101.12,0h1077.76c34.63,0,51.96,0,65.28,6.53,12.75,6.25,23.06,16.56,29.32,29.32,6.52,13.32,6.52,30.64,6.52,65.28v1077.76c0,34.63,0,51.96-6.52,65.28-6.26,12.75-16.57,23.06-29.32,29.32-13.32,6.52-30.65,6.52-65.28,6.52H101.12c-34.64,0-51.95,0-65.28-6.52-12.76-6.26-23.07-16.57-29.32-29.32-6.53-13.32-6.53-30.65-6.53-65.28V101.12Z`,fill:`#0000FF`})}),[t.id]:e=>(0,w.jsxs)(`svg`,{fill:`none`,height:`400`,viewBox:`0 0 400 400`,width:`400`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`path`,{d:`m0 0h400v400h-400z`,fill:`#fcff52`}),(0,w.jsx)(`path`,{d:`m300 100h-200v200h199.996v-69.813h-33.191c-11.442 25.468-37.194 43.206-66.665 43.206-40.63 0-73.533-33.187-73.533-73.533s32.903-73.249 73.533-73.249c30.043 0 55.795 18.313 67.24 44.349h32.62z`,fill:`#000`})]}),[o.id]:e=>(0,w.jsxs)(`svg`,{width:`200`,height:`208`,viewBox:`0 0 200 208`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{width:`199.4`,height:`207.623`,fill:`#121212`}),(0,w.jsxs)(`g`,{"clip-path":`url(#clip0_2303_643)`,children:[(0,w.jsx)(`path`,{d:`M132.369 155.99H49.7001V68.8854H68.6148V139.109H132.369V155.981V155.99Z`,fill:`white`}),(0,w.jsx)(`path`,{d:`M132.369 85.7575C141.687 85.7575 149.241 78.2036 149.241 68.8855C149.241 59.5673 141.687 52.0134 132.369 52.0134C123.05 52.0134 115.497 59.5673 115.497 68.8855C115.497 78.2036 123.05 85.7575 132.369 85.7575Z`,fill:`white`})]}),(0,w.jsx)(`defs`,{children:(0,w.jsx)(`clipPath`,{id:`clip0_2303_643`,children:(0,w.jsx)(`rect`,{width:`99.5407`,height:`103.977`,fill:`white`,transform:`translate(49.7001 52.0134)`})})})]}),[s.id]:e=>(0,w.jsxs)(`svg`,{version:`1.1`,id:`Layer_1`,xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,x:`0px`,y:`0px`,viewBox:`0 0 327.5 533.3`,enableBackground:`new 0 0 327.5 533.3;`,xmlSpace:`preserve`,...e,children:[(0,w.jsx)(`path`,{fill:`#8492B2`,d:`M163.7,197.2V0L0,271.6L163.7,197.2z`}),(0,w.jsx)(`path`,{fill:`#62688F`,d:`M163.7,368.4V197.2L0,271.6L163.7,368.4z M163.7,197.2l163.7,74.4L163.7,0V197.2z`}),(0,w.jsx)(`path`,{fill:`#454A75`,d:`M163.7,197.2v171.2l163.7-96.8L163.7,197.2z`}),(0,w.jsx)(`path`,{fill:`#8492B2`,d:`M163.7,399.4L0,302.7l163.7,230.7V399.4z`}),(0,w.jsx)(`path`,{fill:`#62688F`,d:`M327.5,302.7l-163.8,96.7v134L327.5,302.7z`})]}),[e.id]:e=>(0,w.jsxs)(`svg`,{width:`500`,height:`500`,viewBox:`0 0 500 500`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`circle`,{cx:`250`,cy:`250`,r:`250`,fill:`#FF0420`}),(0,w.jsx)(`path`,{d:`M177.133 316.446C162.247 316.446 150.051 312.943 140.544 305.938C131.162 298.808 126.471 288.676 126.471 275.541C126.471 272.789 126.784 269.411 127.409 265.408C129.036 256.402 131.35 245.581 134.352 232.947C142.858 198.547 164.812 181.347 200.213 181.347C209.845 181.347 218.476 182.973 226.107 186.225C233.738 189.352 239.742 194.106 244.12 200.486C248.498 206.74 250.688 214.246 250.688 223.002C250.688 225.629 250.375 228.944 249.749 232.947C247.873 244.08 245.621 254.901 242.994 265.408C238.616 282.546 231.048 295.368 220.29 303.874C209.532 312.255 195.147 316.446 177.133 316.446ZM179.76 289.426C186.766 289.426 192.707 287.362 197.586 283.234C202.59 279.106 206.155 272.789 208.281 264.283C211.158 252.524 213.348 242.266 214.849 233.51C215.349 230.883 215.599 228.194 215.599 225.441C215.599 214.058 209.657 208.366 197.774 208.366C190.768 208.366 184.764 210.43 179.76 214.558C174.882 218.687 171.379 225.004 169.253 233.51C167.001 241.891 164.749 252.149 162.498 264.283C161.997 266.784 161.747 269.411 161.747 272.163C161.747 283.672 167.752 289.426 179.76 289.426Z`,fill:`white`}),(0,w.jsx)(`path`,{d:`M259.303 314.57C257.927 314.57 256.863 314.132 256.113 313.256C255.487 312.255 255.3 311.13 255.55 309.879L281.444 187.914C281.694 186.538 282.382 185.412 283.508 184.536C284.634 183.661 285.822 183.223 287.073 183.223H336.985C350.87 183.223 362.003 186.1 370.384 191.854C378.891 197.609 383.144 205.927 383.144 216.81C383.144 219.937 382.769 223.19 382.018 226.567C378.891 240.953 372.574 251.586 363.067 258.466C353.685 265.346 340.8 268.786 324.413 268.786H299.082L290.451 309.879C290.2 311.255 289.512 312.38 288.387 313.256C287.261 314.132 286.072 314.57 284.822 314.57H259.303ZM325.727 242.892C330.98 242.892 335.546 241.453 339.424 238.576C343.427 235.699 346.054 231.571 347.305 226.192C347.68 224.065 347.868 222.189 347.868 220.563C347.868 216.935 346.805 214.183 344.678 212.307C342.551 210.305 338.924 209.305 333.795 209.305H311.278L304.148 242.892H325.727Z`,fill:`white`})]}),[a.id]:e=>(0,w.jsxs)(`svg`,{width:`360`,height:`360`,viewBox:`0 0 360 360`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,w.jsx)(`rect`,{width:`360`,height:`360`,rx:`180`,fill:`#6C00F6`}),(0,w.jsx)(`path`,{d:`M157.743 154.241L141.052 144.58L90.9766 173.561V231.519L141.052 260.5L191.13 231.519V141.359L218.948 125.26L246.77 141.359V173.561L218.948 189.66L202.257 180.002V205.759L218.948 215.42L269.024 186.439V128.481L218.948 99.5L168.873 128.481V218.641L141.052 234.74L113.233 218.641V186.439L141.052 170.34L157.743 179.998V154.241Z`,fill:`white`})]}),[i.id]:e=>(0,w.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:`30`,height:`30`,viewBox:`0 0 30 30`,fill:`none`,...e,children:[(0,w.jsx)(`g`,{clipPath:`url(#clip0)`,children:(0,w.jsx)(`g`,{clipPath:`url(#clip1)`,children:(0,w.jsx)(`path`,{d:`M14.9188 29.8373C6.67944 29.8373 0.00012207 23.1581 0.00012207 14.9187C0.00012207 6.67931 6.67944 0 14.9188 0C23.1581 0 29.8373 6.67931 29.8373 14.9187C29.8373 23.1581 23.1581 29.8373 14.9188 29.8373Z`,fill:`url(#paint0)`})})}),(0,w.jsxs)(`defs`,{children:[(0,w.jsxs)(`radialGradient`,{id:`paint0`,cx:`0`,cy:`0`,r:`1`,gradientUnits:`userSpaceOnUse`,gradientTransform:`translate(21.6921 8.02215) rotate(180) scale(25.2008)`,children:[(0,w.jsx)(`stop`,{offset:`0.00682297`,stopColor:`#F2CEFE`}),(0,w.jsx)(`stop`,{offset:`0.1913`,stopColor:`#AFBAF1`}),(0,w.jsx)(`stop`,{offset:`0.4982`,stopColor:`#4281D3`}),(0,w.jsx)(`stop`,{offset:`0.666667`,stopColor:`#2E427D`}),(0,w.jsx)(`stop`,{offset:`0.822917`,stopColor:`#230101`}),(0,w.jsx)(`stop`,{offset:`1`,stopColor:`#8F6B40`})]}),(0,w.jsx)(`clipPath`,{id:`clip0`,children:(0,w.jsx)(`rect`,{width:`30`,height:`30`,fill:`white`})}),(0,w.jsx)(`clipPath`,{id:`clip1`,children:(0,w.jsx)(`rect`,{width:`30`,height:`30`,fill:`white`})})]})]})},D=({chainId:e,...t})=>{if(e===`solana`)return(0,w.jsx)(T,{...t});let n=E[e];return(0,w.jsx)(n||m,{...t})},O=({walletClientType:e,displayName:t,addressToFund:n,chainId:r,chainName:i,isBridging:a,isErc20Flow:o,totalPriceInNativeCurrency:s,totalPriceInUsd:c,gasPriceInNativeCurrency:l,gasPriceInUsd:u})=>{let m=p(e);return(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(_,{}),(0,w.jsx)(f,{centerIcon:(0,w.jsx)(S,{icon:m?.image_url?.md,name:e})}),(0,w.jsx)(g,{style:{marginTop:`8px`,marginBottom:`12px`},title:`${a?`Bridging`:`Confirming`} with ${t}`}),!a&&!o&&(0,w.jsxs)(v,{children:[(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Total`}),(0,w.jsx)(b,{children:c||s})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`To`}),(0,w.jsx)(b,{children:(0,w.jsx)(C,{address:n,showCopyIcon:!1})})]}),(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Network`}),(0,w.jsx)(b,{children:(0,w.jsxs)(k,{children:[(0,w.jsx)(D,{chainId:r,height:16,width:16}),` `,i]})})]}),l&&(0,w.jsxs)(y,{children:[(0,w.jsx)(x,{children:`Estimated fee`}),(0,w.jsx)(b,{children:u||l})]})]}),(0,w.jsx)(h,{height:24}),(0,w.jsx)(d,{})]})},k=u.div`
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  align-items: center;