# EPF Week 16 updates ## Introduction This week I worked some more on writing some more unit tests, fixing functions and trying to make sure everything works as expected. There has been a good amount of progress this week. I finished writing tests for the in-memory tree and related structures. Implementing this EIP is turning out to be challenging but also really interesting and is really helping me learn Rust better and strengthen my concepts well. ## Project As I've updated, I'm working on implementing the Logs Index data structure outlined in [EIP-7745](https://eips.ethereum.org/EIPS/eip-7745). More specifically, I'm currently working on the in-memory Merkle tree structure needed for the proving mechanism and getting the Log Index Root hash. ## Progress In the past week I have done the following: - Tested hashing for the `MemTreeNode` and the `MemTreeView` structures - Fixed some functions that were slightly incorrect - I've been debugging this and some other functions creating problems I should probably get the root hash working in this week itself. ## Path Ahead My plan for the next week is to keep working on figuring out the problems in my current implementation and fixing pain points. After that, I can integrate this within the block header, replacing the logsBloom field, which can then be used to test other clients with Reth. ## Resources used for learning Some resources that I used which aren't linked above. - [2D Logs Index explainer video](https://github.com/etan-status/purified-web3/releases/download/2025-portal/2025-EIP-7745-Intro.mp4) - [PPT Slides which explain the global log index](https://purified-web3.box/Slides/2025-EthereumZuri.ch.pdf) - https://pureth.guide Current Implementation branch: [18aaddy/reth/feat/filter-maps](https://github.com/18aaddy/reth/tree/feat/filter-maps)