{
  "id": 7873,
  "title": "EIP-7873: EOF - TXCREATE and InitcodeTransaction type",
  "status": "Stagnant",
  "type": "Standards Track",
  "category": "Core",
  "summary": "This introduces a new way to deploy EOF contracts by adding a TXCREATE instruction and a special InitcodeTransaction type. The problem it solves is that EOF removes the traditional CREATE and CREATE2 instructions used to deploy contracts. With this EIP, both regular users (EOAs) and smart contracts can deploy EOF contracts by including the contract code directly in transaction data and using TXCREATE to deploy it. This works alongside the existing EOFCREATE instruction, giving developers all the contract creation capabilities they had before EOF. The TXCREATE instruction can also deploy legacy contracts, making it a universal bootstrapping mechanism for getting EOF contracts onto the blockchain.",
  "impacts": [],
  "discussion_url": "https://ethereum-magicians.org/t/eip-7873-eof-txcreate-instruction-and-initcodetransaction-type/22765",
  "source_markdown_url": "https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7873.md",
  "canonical_url": "/latest/eips/7873.json",
  "markdown_url": "/latest/eips/7873.md",
  "citations": [
    {
      "recordId": "eip-7873",
      "artifactPath": "normalized/7873.json",
      "url": "/records/proposal/eip-7873/normalized/7873.json",
      "label": "EIP-7873: EOF - TXCREATE and InitcodeTransaction type",
      "snippet": "This introduces a new way to deploy EOF contracts by adding a TXCREATE instruction and a special InitcodeTransaction type. The problem it solves is that EOF removes the traditional CREATE and CREATE2 instructions used to"
    }
  ]
}
