```
cd contrib/seeds
# Fails with help message
./collect-and-update-seeds.sh
# Works as expected
./collect-and-update-seeds.sh seederdump.bitframe.org
# Running a second time overwrites seeds_*.txt as expected
./collect-and-update-seeds.sh seederdump.bitframe.org
# Running from top-level (or some other directory) works as expected
cd ../..
./collect-and-update-seeds.sh seederdump.bitframe.org
# Simulate too-few nodes failure:
# 1. Comment out the `curl` line in collect-and-update-seeds.sh
# 2. Open seeds_main.txt and remove all lines after line 99
./collect-and-update-seeds.sh seederdump.bitframe.org
# Skips mainnet seeds due to too few good nodes, but still completes
# 1. Comment out the `curl` line in collect-and-update-seeds.sh
# 2. Open seeds_test.txt and remove all lines after line 9
./collect-and-update-seeds.sh seederdump.bitframe.org
# Skips testnet seeds due to too few good nodes, but still completes
# Simulate patch-mismatch failure:
# 1. Comment out the `makeseeds` line in collect-and-update-seeds.sh
# 2. Open seeds_main.txt and/or seeds_test.txt and add a newline anywhere in the file
./collect-and-update-seeds.sh seederdump.bitframe.org
# Patch sanity check fails due to diff line mismatch
```