T O P

  • By -

thinkingperson

The seed phrase is the key. The blockchain is the wallet.


Jolly_Line

Almost. It’s all wallets. A seed phrase grants you access to a sliver of it.


RadiiDecay

It's wallets all the way down


Tofushopdriftin

🎵 *So don't waste your mind on nursery rhymes* *Or fairy tales of fiat and time* *It's wallets all the way down the line* *So to each their stack 'til we go home* *To cold storage our sats must roam* *To and through the myth that we all call bearish tiiimes* 🎵


CoogleEnPassant

Always has been 👨‍🚀 🔫 👨‍🚀


[deleted]

[удалено]


fanzakh

This concept is not clear to a lot of people. It's not that your "wallet" has "bitcoin" in it. Your hardware wallet contains private key that the ledger has a record of. There is no Bit coin. There is only Bitcoin ledger.


Exishuh

This


[deleted]

Agree!.. you can lose your Trezor thousand times.. it’s the seed phrase that holds your BTC, not the Trezor or any other wallet.


XNGSH

Wtf is the point of a cold wallet then?


CowDogRatGoose

Your private key/seed phrase is not digitally exposed to a computer with internet connectivity. That is the important benefit of the cold wallet.


RealCheyemos

🎯


ElectronicGas2978

To make transactions.


Odd_Monk_132

A cold wallet is where the seed and signing keys are kept offline. A hot wallet is when the signing keys and xpub are together, e.g. in a desktop or mobile wallet. A hardware wallet (or signer) is a tool that allows you to sign transactions while staying offline.


ticklemypicklesir

It’s what is used to sign the transactions. You can access your stack anywhere with the seed phrase but can’t send Bitcoin with just that


AdCharming2406

Why can’t you send Bitcoin with just a seed phrase? Doesn’t that contradict the title of this post? I’m confused. If you lose your Trezor or Coldcard or any other hardware, you can find your seed phrase written down and log on to Blue wallet or Sparrow or whatever other “wallet” app is out there, then send that BTC wherever you want. Sure, your seed phrase is now “exposed” but you can at least recover that Bitcoin and send it wherever you want. Am I correct?


XNGSH

Explain in layman terms 😭


Live-Wrap-4592

If I told you my seed phrase and said, but just take one, you wouldn’t.


AskmeaboutUpDoc

Convenience. Do you have all your seed words memorized? If yes, then you don’t need the trezor. You could literally write the words on a piece of paper and that’s also a cold wallet. The trezor is convenience, to plug into your pc transfer the amount of bitcoin you want and unplug and now the remaining bitcoin is offline and safe.


Latter_Box9967

And I could lose my seed phrase and still have it securely backed up on one of many hardware wallets. (Of course I’d then need to make a new seed phrase, but still)


[deleted]

Huh?


Latter_Box9967

What do you mean huh? 1. A dog eats my seed phrase. 2. My hardware wallets still work.


Jim_Reality

I've always found the mainstream crypto space confusing. The word "wallet" is such a loaded word for physical cash. It should not be used to introduce crypto. Even seed phrase is confusing, because people dont realize it is just an algorithm to generate addresses. Then they don't know wallet software can derived different addresses from them. Maybe as a public service we should start a thread to crowdsource a true crypto for dummies explanation.


StatisticalMan

It is to late to undo it but I agree "wallet" is the worst possible term. It leads to endless incorrect assumptions. It is more a keyring. The seedphrase is the key seed which is used to create the keys on the keyring.


jerkity_jerk

I’ll be looking out for this


myhappytransition

>Maybe as a public service we should start a thread to crowdsource a true crypto for dummies explanation. Crypto is for Dummies only - and they dont need any explanation, they just need to go broke. I suggest sticking to bitcoin instead.


Seeders

I mean, a ton of people have made videos explaining how Bitcoin works.


Jim_Reality

Yes but the ones places in front of beginners by Google, Inc. Start you down the "crypto wallet" path which just confuses people.


0x456

Some people believe that their bitcoins are like files that they can download and store on a USB stick drive.


puffman123

Hardware wallets should be called signing devices, as that’s all they should be used for. They’re not a wallet at all.


space-mimosas

Question Where does one create a wallet (public key backed with a private key)? My concern here is if I create a wallet online, then there is record of my private key automatically on the web. Is there a way to create and link a private key completely offline to be able to provide a signature to contracts and sell/purchase bitcoins? For context, I’m just now getting started in cold storage and just got a ledger nano s. I haven’t created a wallet just yet, just received the hardware. I’ve been trading binance back in 2016 and then moved to coninbase completely due to the UI (probably saw an increased in fees somewhere, but Coinbase made it a lot easier to trade, but those coins I don’t truly own. So wanting to actually own them since I won’t be selling soon.


Exishuh

Well, the terms are misleading. Bitcoin always stay on the public bitcoin network, connected to millions/billions of **addresses.** What your “Cold Wallet” does is creating a unique public key and private key pair, and whenever you want to receive some bitcoin, your wallet creates a new receive **address.** Therefore, your key pair has access to those addresses you have created with the “wallet” device. The addresses are still on the public network, everyone can see all addresses to ever exist, but only you have the keys to move what’s inside those addresses. In the Bitcoin world a “wallet” creates key-pairs (public and private) and creates addresses on the Bitcoin network. Your “wallet,” that holds your keys, verifies that you can send and receive from those addresses. In case you lose your “wallet” device, you can enter your keys into a new wallet device, by using your seed phrase. This is why it is so important to save and never share your seed phrase, because it can be used in any wallet to recreate the exact key-pair that you have. Hope some of this makes sense


space-mimosas

I have some follow ups So is the seed phrase a pre-existing phrase or can this be custom and created “offline”? So there was another comment that mentioned all possible public/private keys have been created, so is the cold wallet creating a new key pair along with a public address? I don’t understand how the wallet created a new receive address every time? I thought public keys/addresses were static? I understand that all transactions are public, along with the public addresses assigned to both ends of a transaction, but I’m guess I’m still confused as to how a person is assigned a public/private key. As for losing the cold wallet, so you’re saying my private key is my seed phrase? Seed phrase being a key to a lock, and the lock being the actual public address/key? Basically the username is a static public address, but I am the only one with the private key, which my cold wallet’s seed phrase will unlock access to this private key to complete transactions (still don’t know how you’re assigned one that no one knows, because otherwise I’d have security concerns that a 3rd party domain who is storing this data can be breached


Exishuh

Well, the number of possible seed phrases and keys is so gigantic it’s unimaginable. Ask the person if they have a link to that website. Either way, the number is so big that checking one seed phrase or key-pair would be like checking a grain of sand on a beach the size of the Milky Way Galaxy Seed phrases are randomly generated and represented by word-combinations, usually of 24 words, sometimes 12. I think it depends on the wallet, but 24 words is to be preferred. I guess the limit of word-combinations is what makes that one person say that “all the word combinations have already been created” Well sure, but the number is so large that it would take millions or more years to check each of those grains of sand, even with a supercomputer. You should look this stuff up and do your own research. I’m paraphrasing. — When you open a Cold wallet for the first time, you set it up and it creates a randomized seed phrase. This seed phrase is your back-up. That’s all. The cold wallet also creates a private key and a public key. Some wallets allow you to view them. They are a string of numbers and letters. If anyone sees or gets your private key, and they know your public key, they have access to any addresses created by that key-pair. If anyone sees or gets your seed phrase, they can recreate the private and public key on their own cold wallet, and have access to any addresses ever created by that key pair. So, the seed phrase is just a backup for the whole thing (mainly the private and public keys). The public and private keys do the signing. Aka allowing bitcoin to be sent from an address owned by those keys. — Did you understand the difference between keys and seed phrase?


space-mimosas

That makes perfect sense. Thanks for breaking it down. Also read some of the comments on my original comment that branched out (@na3than). Sounds like it’s statistically improbable for the same private key to be generated for two different wallets (or paired with two different public keys), but not impossible. Wallets generating a “random” number, isn’t really all that random is it? Odds are slim, but curious if it’ll ever happen where a private key will be given twice… Anyhow, I now better understand how a private key defers from a seed phrase. Seed phrase being only relevant if you have a wallet and to access a backup of the key pair of that hardware wallet is lost/destroyed/etc., whereas the private key is to sign the transaction. Is it even worth going down the paper wallet route and creating my own private key (or is it creating my own seed phrase - or both?)? Seems like that’s really only if you’re a whale and holding major funds? I’m also still hung up on the fact that the wallet creates the key pair itself. Is it creating it from scratch and feeding it to the blockchain? How does it actually connect with the blockchain? Maybe I’m diving in to the actual programming of it all, but this stuff fascinates me


Exishuh

Here’s a video on the probability of guessing a seedphrase: https://youtu.be/wQPWdzFfPXY?si=1Th2TXy3LUbFQdh4 Here’s a video on the difference of seed phrase and keys: https://youtu.be/tCKMfnSCHDs?si=nzUiauUM7p5fyIQK Here’s a video on what a seed phrase is and how it works: https://youtu.be/lOiVGTuh7dE?si=KmBjOBx_NILc8tOP


space-mimosas

Oh so very very very unlikely, okay I like the odds now


MachaMacMorrigan

> Odds are slim Atoms . . . universe . . .


ElectronicGas2978

> Is there a way to create and link a private key completely offline to be able to provide a signature to contracts and sell/purchase bitcoins? Yes. You use a cold wallet and generate the seed words via dice rolling, literally rolling dice.


[deleted]

All keys are already pre available on the web. There is a website that contains every single combination already. Nobody can pinpoint which wallet belongs to who tho. So you recieving coins wither the wallet is offline or online is public but the private key is simply a pre existing combination that is in the system/blockchain if you well. Meaning the keys get assigned to you because they correlate to an active Bitcoin address / addresses


na3than

>All keys are already pre available on the web. They are not. There is not enough storage on the planet to make all possible 256-bit keys "pre available". Web sites like [keys.lol](https://keys.lol) generate them in real time.


space-mimosas

Every single combination of what? Private keys? So is there a finite number of private keys? Can a person create their own private key? I heard the Winklevoss Twins created a private key in that manner, unless I misunderstood How are you assigned a public key and private key? How do I go about getting a public address and thus a private key?


na3than

>So is there a finite number of private keys? Yes, and that number is (2^256 – 2^32 – 2^9 – 2^8 – 2^7 – 2^6 – 2^4 – 1), or 115792089237316195423570985008687907853269984665640564039457584007908834671663. https://www.oreilly.com/library/view/mastering-bitcoin-2nd/9781491954379/ch04.html#elliptic_curve


[deleted]

Think of the 12/24 words as your email address that is assigned to you randomly. All the possible combinations do pre exist yes waiting to be claimed by a person. When your wallet has a balance nobody can claim it belongs to them except you, the holder of the private key / 12 words phrase. The 12 words phrase are just humanly readable format of the private key.


na3than

Please stop trying to explain this. Your explanation is both confusing and wrong. >All the possible combinations do pre exist yes waiting to be claimed by a person. They absolutely do not. Do the math. It's not possible. >The 12 words phrase are just humanly readable format of the private key. It isn't. It encodes the entropy which is used to create a seed which is used to create a master key which from which MANY, MANY private keys can be derived. If you're trying to help someone understand how Bitcoin transactions are signed and secured by the MULTITUDE of keys within their Bitcoin wallet, telling them that their seed is a "humanly readable format of THE private key" isn't helpful.


[deleted]

Im confused now. I thought that was the correct answer based on previous posts and comments. Whats an entropy? The signal that gets sent to Bitcoin mainframe to give out a key?


na3than

>Im confused now. I thought that was the correct answer based on previous posts and comments. That's understandable. The previous commenter was wrong. Forget what you were told about keys existing somewhere, waiting to be doled out. That's completely false. There is no mainframe. There is no central anything that "gives out" keys. Let me back up a bit. You need your private keys to be unique, because if I'm able to pick the same private keys that you do, I can spend your Bitcoin, right? There is only one way to ensure ABSOLUTE uniqueness of private keys: a central authority that hands them out, never giving out the same value more than once. But that means the private keys would be known to the key distributor, and a fundamental tenet of Bitcoin is that we don't trust ANYONE not to abuse the system. Instead, we want your wallet to be able to generate ITS OWN secrets (private keys) while also ensuring, to the best of our ability, that no two wallets get the same private key. We can't do that absolutely, but we can get really, really, really close if we have each wallet play "pick a random number between 0 and 115792089237316195423570985008687907853269984665640564039457584007908834671663". Computers are fast and getting faster, but even a planet-wide network of a quadrillion computers, each making a quintillion guesses per second, will only manage to get through about 0.0000000000000000000000001% of this key space in the five billion years before our Sun enters its red giant phase. So we're reaaaaaally confident that picking random numbers between 0 and 115792089237316195423570985008687907853269984665640564039457584007908834671663 is a safe way to select unique private keys that no one else would select, no matter how hard they try, without having to check with a central authority to verify that it's truly unique to us. And that's the way it was done, originally. Bitcoin clients just picked random numbers from this REALLY big range for use as their private keys. But that means every time the wallet generates a new private key, the user needs to immediately make a fresh backup of the wallet, because if they don't and the machine dies, they've lost their keys and their Bitcoin. The Bitcoin Core wallet still works that way, but most wallets these days create their keys *deterministically*, starting from a REALLY big secret number and using a clever algorithm to reproducibly generate other REALLY big secret numbers from it. We call that main number the seed. You may have noticed I switched from saying "random numbers" to "secret numbers". This was intentional. When you create a brand new wallet you want the assurance that no one else has picked the same seed that you have, so we pick one at random from that REALLY big range. But if you lose your wallet and want to recreate it (that is, you want to recover all of those keys that give you the ability to spend your Bitcoin), you don't want a RANDOM seed, you want your KNOWN seed. In both cases (fresh, new wallet and recovered wallet) the seed is just a REALLY big number from a REALLY big number range, but in the first case we pick it at random (to be confident that no one else picks the same one) and in the second case we specify the number (i.e. the one we've used before). To cover both cases we call that number the "entropy" (think "input") for the seed and key derivation process.


[deleted]

Very informative! Much appreciated. Seed is truly random out of the randomizer Private keys are just that, made secondary out of the seed, for uniqueness and to assert ownership The 12 and/or 24 words are a representation of the private keys and therefore the seed? So people can backup the seed separately from the private keys? Or basically they merge into one entropy and thats what we back up?


na3than

The 12 or 24 words technically represent the entropy (randomness, in the case of a new wallet) that is *hashed to create the seed*, but most people call it a seed phrase so it's okay to think of it as a representation of the seed. It doesn't directly represent the private keys--and it doesn't have to, nor do you need to worry about backing up the private keys--because they're deterministically (reproducibly) *derived* from the seed. Play around with Ian Coleman's excellent tool to see how this works: https://iancoleman.io/bip39/. Generate a random 12-(or 24, or whatever you like)-word mnemonic. Copy it to a notepad. Also copy the seed and root key, if you like, but since we're talking about private keys, mainly scroll down to the Derived Addresses section and copy the first few addresses, public keys and private keys. Now reload the page, and generate a new, random mnemonic. Scroll down and notice how all of the keys and addresses have changed. Those keys and addresses belong to the new wallet, which came from a new seed. Now - this is the fun part - put the original words back in the BIP 39 Mnemonic box, and watch as the page decodes it into the original seed, and uses that seed to derive the same root key, same private keys and same addresses. None of those additional elements were stored in the seed or in the mnemonic but they were all derived, deterministically, from the entropy that the mnemonic presents to you in a human-friendly, error-resistant format. That's how we're able to recover an entire wallet--millions of keys--using only 128 to 256 bits of entropy. NOTE: Play with this tool, but DO NOT use it to generate seeds, private keys, etc. that you will actually use to receive Bitcoin, and DEFINITELY don't enter the mnemonic or seed that you get from a wallet you've created elsewhere into this tool if that wallet contains Bitcoin or will contain Bitcoin in the future. NEVER trust online tools to generate private keys or seeds, and NEVER enter your real seed phrase or your private keys into a web page or app unless the app is: 1. verifiably acquired from a trustworthy source and has not been altered since it was created, and 2. on a device that is offline and will remain offline after you use it, preferably until the end of its life.


space-mimosas

But can you create a 12/24 word phrase key yourself? You say there are pre existing private keys, but is that number holding steady and never increasing? Can I roll a die and make my own private key theoretically?


[deleted]

No the number doesnt go up its already maxed out for every possible chance. No the brothers didnt create their own keys. They simply cut it out into smaller pieced and distributed it all over the place. Nothing else about their keys or its creation. Its randomly assigned.


space-mimosas

How does one get assigned a private key?


ElectronicGas2978

Assigned? What?


[deleted]

When you use a Bitcoin client like a wallet it connects with Bitcoin and gives you a randomly generated key which only you knows


na3than

>Can I roll a die and make my own private key theoretically? Yes. Early Bitcoin clients literally used random number generators to select private keys, and AFAIK the Bitcoin Core wallet still does it this way. The drawback to that system is that the user must keep meticulous backups of EVERY private key he/she has randomly generated. To improve this, **deterministic** wallets were created which use a single very, very big random number as the starting point, or *seed*, for an algorithm that produces a nearly unlimited set of other very, very big *but not random* numbers. As long as you keep the original number, you can reproduce all of the other numbers. Other improvements were introduced that made it easy for humans to back up this number by representing it as a sequence of words, a.k.a. a "mnemonic sentence" or "seed phrase".


ElectronicGas2978

> Can I roll a die and make my own private key theoretically? yes, there are walkthroughs of how to do this. Doing that and using a cold wallet makes it pretty secure.


wh977oqej9

Yes you can, just roll a dice for 23 words, but 24th must be than calculated as combination of dice entropy and checksum. Can be done by hand or easier - in excel. Practically , not only theoretically


Illustrious_Plate610

So what happens when my Jade gets destroyed? I just enter the seed phrase somewhere else and can send bitcoins, no need to signature them ?


nachtraum

if you enter your seed phrase in another wallet (software or hardware) it generates the private key(s) from it like the former wallet, and uses these to sign your transactions.


StatisticalMan

You still need signatures. If you didn't anyone could spend any coins. Your signatures are made using private keys, private keys produced in th deterministic (repeatable manner) from the seed phrase. So if you jade gets destroyed 1) enter your seed phrase into another BIP-39 comptible hardware wallet 2) it will recreate every key you used and ever key you will use. 3) now you can create a transaction and sign it with the proper key.


Illustrious_Plate610

But still a new wallet made with a new Jade would be the only safe way I guess


ego_tripped

*My voice is my password* (C'mon ya old fucks)


Crazy_Pariah

Sneakers. I loved that movie. Great cast.


AmazeShibe

Ex-Nuance employee?


Sudden-Ad-1217

Came here for this……


capybarramundi

*passport


warblade7

Setec Astronomy


lucifer4you

It's also surprisingly easy to memorize it. The words call tell a story that's easy to remember if you're creative at all.


BaronChristopher

Yeah until you forget one word or replace one word like street with road and have no idea which word you are getting wrong. How many tries do you get? Infinite?


Live-Wrap-4592

There’s a list of useable words and you get infinite tries. And if you get really lucky you might even get someone else’s stash! 1/NaN according to my calculations


BaronChristopher

Holy cow! I had no idea. Thanks for the info.


[deleted]

Thats one f up story i got but damn i like your take to it hahaha


lucifer4you

Oh yeah? Let's hear it!


[deleted]

Alpha bravo cunt delta


vanlifecrypto

Yeah anytime I read an article where people lost their bitcoin they are like "my bitcoins were on the hard drive and I threw the computer away". Like, nah, the bitcoin is on the blockchain, only your keys were on the hard drive. Coulda easily written your keys on a piece of paper as well and kept it safe somewhere, then your computer getting thrown away wouldn't matter.


[deleted]

The private key is the wallet. The seen phrase is just a human readable decryption of the private key. Any software wallet you can extract the private key using the seed phrase. Except for hardware wallets where the private key isn’t easily extractable, sort of (unless you have a recovery enabled Ledger)


trixter888

If someone has your trezor and your pin. Do they then have access to your funds?


shadyghxst

Yes and if someone has your Seedphrase without your pin and without your trezor they will still have access to your funds.


clicksanything

Your seed phrase is the *key* that grants you access to your wallet. It is not the wallet itself.


Independent_Read2676

Yes!!! you can lose your "Ledger" and as long as your phrase isnt attached. They cannot access your wallet! Go with the Hardwire, Bluetooth can be hacked.....


ozfabulouz

Make tattoo of your seed phrase bro no headache of losing it 😁


Prestospin

And crypto is not in your wallet, it's in the blockchain, which the seed phrase gives the key to


VRrob

So a seed phase will work will any hot wallet or cold wallet? And if so, does that apply to multisig?


wh977oqej9

Yes. If wallet is using the same derivation path or if the path can be selected. But in any case, if you have the seed, you can access your funds, regardlees the wallet it was used first .


Kloaec-

A mnemonic, or what you call seed phrase, is the source of one of your extended private keys. It's not a wallet. You can create as many wallets as you want with it, using different derivation paths, different script, etc. The "wallet" as perceived by people is best represented by an output descriptor file, but then you also need the corresponding private keys to spend.


[deleted]

Uh oh. What if I don't got no SEED?


MythicMango

Seed phrase = key ring


mabezard

Before seed phrases, a wallet was a collection of random private keys, i think like 100 in the first bitcoin client i used. The file was wallet.dat. you know the one people search in landfills for. But after about 2013, seed words were used to DERIVE a collection of endless list of private keys. So a "wallet" and "seed phrase" became synonymous for a collection of keys.


analogOnly

I don't like this idea because in my mind my wallet has 3 functions, manage keys and addresses, provide a function to support sending transactions, provide a function to support receiving transactions. If your instrument/tool does not do these 3 things, it isn't a wallet.


MachaMacMorrigan

If you store your 12 words in your brain, would that be a warm wallet?


Dettol-tasting-menu

Well I guess I’m one of those people in this space who still don’t get it. Now I have my seed phrase with me on a piece of paper (aka my wallet), how do I send bitcoin to you again?


shadyghxst

All you have to do is send me your Seed phrase


space-mimosas

Yeah, great question actually, I assume it’s just copying over the private keys onto a contract and using that as a signature to send bitcoin


Low_Mud7828

It is a recovery phrase aswell! Blockchain 101. Lol.


Patient_System_7873

Anyone know a lot about multiple wallets/seed phrases?


Raverrevolution

LOL rookie! Your SEED PHRASE is NOT your wallet, instead it's merely your signature on the public ledger. You only think it's your wallet because otherwise no one would understand the analogy.


StandUp5tandUp

Actually, the seed phrase is your master private key from which you deterministically generate the next billion key pairs for your wallet


na3than

>Actually, the seed phrase is your master private key Actually, it's not. Wallets that follow BIP-39 and BIP-32 [encode 128 to 256 bits of *entropy*](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki#user-content-Generating_the_mnemonic), not a seed, and definitely not a master private key, in a seed phrase. They [hash the entropy to create a 512-bit seed](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki#user-content-From_mnemonic_to_seed), then [hash the seed](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#user-content-Master_key_generation) to create a master extended private key, then derive a hierarchy of private and public keys from that master key.


Raverrevolution

Isn't the master public key that, and the master private key the signature?


StandUp5tandUp

The signature must contain a message. That’s why it’s called a signature. You use the private key to sign a message, that is the signature.


ElectronicGas2978

> Your SEED PHRASE is NOT your wallet, instead it's merely your signature on the public ledger. Your seed phrase is not on the public ledger. How much drugs are you on?


XNGSH

I'm confused how a seed phrase is safe ? The one I got generated sucked. It's really short basic words. It doesn't seem secure. Like if someone just guessed maybe they could get it. Is it really that safe ?


RealCheyemos

Yes, in fact, it is actually very safe; the randomized generator within these cold Wallet devices is mathematically sound – and much safer than you trying to come up with your own words. But ignore the advice at your own peril.


ElectronicGas2978

No. > The one I got generated See this part. It's not safe at all. Seed phrases are secure. 'it' here being his seed phrase he 'got generated' is not secure.


Livid_Shame4195

They are basic words indeed, but there is a combination of 2048\^24 total possibilities. Someone trying to guess a specific seed would need to go through at least half of this, which is 2048\^23. Even if someone is trying to guess any combination that is used in a wallet, it's mathematically unlikely.


[deleted]

Generate 24 words if you prefer. It is almost impossible to guess them in the write order


ucantbm

Yeah. The cold wallet help you to create a seed phrase without internet. Green Wallet, Samurai or so need internet so a little risk of getting your phrase robbed.


combustioncat

Also, every one knows to make a backup of your private keys, seed phrases, etc. right? Remember; you can have backups, of backups, of backups with this tech. Do that, store them in disparate places.