Given the following call chain (or message chain if you wish):
ContactA.functionA(param a, param b) -calls-> ContractB.functionB(param a, param b) -calls-> ContractC.functionC(param c, param d)
where ContractA is my contract, ContractB is an indepentent 3rd party library contract used by ContractA and ContractC is another independent 3rd party library contract used by library ContractB, param a & param b are variables passed into ContractB.functionB() by ContractA.functionA() while param c & param d are variables computed by ContractB.functionB() and passed to ContractC.functionC()
1. Once ContractA.functionA() is executed, the entirety of this message chain will be executed on the same node.
2. The variables passed around these contracts are only available in the execution context and they are not visible in the block chain.
Is this correct ?