1-Does execution of same function in a contract uses different amount of gas each time it's executed? <br/> 2-Also if same function (for eg, transfer() function) is written in two different contracts, will it uses different amount of gas? <br/> 3-Mainly on what factors gas consumed for a transaction depends?