# EPF5 Week 17 Update I rewrote the basic type decoding implementations, which I redesigned to use the `Buf` trait. This should have the same benefits as `BufMut` I outlined last week. I also finished writing the derive macro for my ssz implementation. I did pretty much rip the ethereum_ssz proc macro implementation just to get something out the door, and I will be rewriting it myself. I need to test the encoding/decoding traits sooner rather than later though, so I felt like this was best for testing purposes. I'm going to spend the week squashing bugs and testing `SignedBeaconBlock` encoding/decoding. Seeing any improvements there will be enough for me to validate whether my efforts panned out. `BeaconState` tests will come closer to when I present my work at EPF day. I'll also complete the Merkleization traits, which is essential for a fully featured ssz implementation. I have no performance improvements to contribute to the merkleization process however, so I didn't focus on it for this cohort and left it as the last task. I want to release this soon and open source it, ideally within the next two weeks.