I see that there are many events emitted during the process of deploying my contract on Substrate local chain (SNOW Network to be specific).
- 4 ICZ was reserved from deployer account
- 1 ICZ & 2 ICZ were respectively transferred from deployer account to the Deployed contract as depicted by two different events. (
I assume this is storageDeposit)
- The received 1 ICZ & 2 ICZ got reserved on the deployed contract.
- Total of 12.719 ICZ was withdrawn and then 11.651 ICZ was deposited to the deployer account (
I assume this is for tx fees).
- 0.213 ICZ was deposited into Alice account (sudo account). (
I assume this is block rewards)
- If we are to terminate this contract, the 1+2 = 3 ICZ is returned (
ReserveRepatriated) to the Deployer account.
I have learned that the contract takes some fees for the
storageDeposit during deployment. I think the 1 ICZ and 2 ICZ transferred in the #2, #3 and #6 above indicates this deposit amount.
What I would like to understand are:
- Why 4 ICZ was reserved on the deployer account which doesn't get freed up even when the contract is terminated, and
- Why the storage deposit is consumed in two steps of 1 ICZ and 2 ICZ, instead of consuming 3 ICZ at once?