# Transaction Bytecode vs Deployed Bytecode, differences and how to read them **Published by:** [N00b21337](https://paragraph.com/@n00b21337/) **Published on:** 2023-10-09 **URL:** https://paragraph.com/@n00b21337/transaction-bytecode-vs-deployed-bytecode-differences-and-how-to-read-them ## Content Main difference between deployed bytecode or runtime bytecode and bytecode that is shown in deployed transaction is that later has initial code in it and its bigger in size. So what is initial(init) code?A smart contract's constructor is a one-time function not stored on the blockchain but present in the initial code. When creating a contract, users can also send native currency. It's vital to ensure the contract can accept this currency at deployment. If it can't, the creation should fail. This highlights the need for two distinct binary codes: the initial deployment code and the code that's stored on the blockchain.When looking at bytecode to know if it is runtime/deployed or transaction bytecode with init part look forlike in this code in the endand after it there will be again 6080 the same as at the beginning of the code, this is the opcode usually used for initial free memory pointerthis would be full code that has init code and deployed bytecode in it, with both f3fe and 6080 appearing twice This 6080 is actually the beginning of the 0x60806040 bytecode sequence often seen at the beginning of bytecode. Here's a breakdown:0x60: PUSH1 instruction in the EVM bytecode, which pushes the next byte onto the stack.0x80: This byte represents the size of the memory that the contract will use to store temporary variables during its execution.0x60: Again, a PUSH1 instruction.0x40: This byte usually refers to the slot in memory where the free memory pointer is stored. Solidity uses this slot as a starting point to store temporary objects, and it grows as required during the contract's execution.This preamble essentially sets up the initial free memory pointer. You will see it in many Solidity-compiled contract bytecodes because it's part of the standard setup that the Solidity compiler outputs. ## Publication Information - [N00b21337](https://paragraph.com/@n00b21337/): Publication homepage - [All Posts](https://paragraph.com/@n00b21337/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@n00b21337): Subscribe to updates - [Twitter](https://twitter.com/0xCardinalError): Follow on Twitter