As we know, Tezos protocol activator accepts the bootstrap_contracts
parameter to originate specified contracts when the blockchain is launched. For example, Tezos mainnet was launched with some "Vested" contracts, specified in the parameters. They look like this:
"bootstrap_contracts": [
{
"amount": "9553982475158",
"delegate": "tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9",
"script": {
"code": ...,
"storage": ...
}
},
...
]
After the protocol is activated, we can see that the contract is successfully originated with the address KT1QuofAgnsWffHzLA7D78rxytJruGHDe7XG
:
[
"KT1QuofAgnsWffHzLA7D78rxytJruGHDe7XG",
{
"balance": "9553982475158",
"big_map": [],
"code": [...],
"counter": "0",
"delegate": "tz3RDC3Jdn4j15J7bBHZd29EUee9gVB1CxD9",
"delegated": [],
"frozen_balance": [],
"manager": "tz1Ke2h7sDdakHJQh8WX4Z372du1KChsksyU",
"paid_bytes": "5775",
"storage": {...},
"used_bytes": "5775"
}
]
Question: how to calculate the KT1QuofAgnsWffHzLA7D78rxytJruGHDe7XG
address looking on the protocol parameters, without checking the blockchain context.