flowchart TD
A[Start] --> B[Install worm-deployer]
B --> C[Run npx worm-deployer]
C --> D{Detect Project Type}
D -->|hardhat.config.ts/js| E[Hardhat]
D -->|foundry.toml| F[Foundry]
D -->|Both| G{Prompt user to choose}
G --> E
G --> F
E --> |Run npx hardhat compile| J[Select deployment type]
F --> |Run npx hardhat compile| J[Select deployment type]
J -->|Single Chain| K[Choose deployment chain]
J -->|Multi Chain| L[Choose source chain]
L --> M[Choose destination chains]
M --> N[Deploy on source chain?]
K --> O[Check for .env file]
N --> O
O -->|.env present| P{Check for DEPLOYMENT_PRIVATE_KEY or PRIVATE_KEY variable}
P -->|Key found| Q[Load private key]
P -->|Key not found| R[Prompt for private key]
O -->|.env absent| R
Q --> S[Display deployer address and balance]
R --> S
S --> T[Calculate and display deployment cost]
T --> U[Enter Create2Deployer salt]
U --> V[Prompt for constructor argument types]
V --> W[Prompt for constructor argument values]
W --> X[Confirm deployment]
X --> Y[Display computed deployment address]
Y --> Z[Initiate deployment]
Z --> AA[Display deployment status and Wormholescan link]
AA --> AB[End]