# EPF5 Week 10 Updates (EIP-7732 implementation) Hey Everyone GM Web3 peeps So this week was not a very super productive one in terms of ePBS contributions but I finally solved a Pr that was stuck due to being busy with ePBS contributions and this week got the chance to understand the EPBS Pr rather than coding any of the function or tests for it. My PR for replacing gorilla-mux with net/http was stuck due to an issue in middleware chaining and returning a type that has both handler and servemux functionality from newRouter function in node package which used to provide that with [gorilla/mux](https://pkg.go.dev/github.com/gorilla/mux) wrapped with two middlewares via [Use()]() method which abstracts away the inner implementation of it. So basically router was used to handle different endpoints/urls and route them to corresponding functions but While we were using gorilla mux which had inbuilt abstraction of everything inside mux.newRouter() it was not easy to replace Use() method to apply middlewares to different routes or providing routes and super easy to use from a developer perspective. Now to remove it, I needed to remove the whole architecture of simply returning just http.Servemux object that I was doing and directly wrapped middlewares over mux before ServeHttp method called for initializing the server initialized with the wrapped mux, not the ordinary router. So I just added one more element to the middleware and used that when needed and now my problem of getting wrappedmux was solved. I literally changed every router in the Prysm codebase and got to know how huge of a backend it is more than 480 lines of code and still needing to write this was my very first good first issue mentioned when I first visited Prysm while exploring which client to work with. Coming back to my problem I created two types those are for two middlewares. Just followed the approach mentioned [here](https://drstearns.github.io/tutorials/gomiddleware/). And had to do some sort of customization on middleware and instead of returning just http.Servemux returned chained middleware from newRouter() and then just passed it as above mentioned. After some fixes, it worked and passed tests but somehow I am not properly able to wrap the router with middleware via this approach as reviewed by james prysm we need a object/struct which has both wrappedmux(http.handler) and servemux functionality(http.servemux)so still figuring it out. ![test_pass](https://hackmd.io/_uploads/SJ83dBpq0.jpg) Hope to get it done soon after fixing the issue now. [PR Link](https://github.com/prysmaticlabs/prysm/pull/14191) On ePBS the task of modifying the beacon api has been taken by Terence and he doesn't want my help least now he would ask if needed he said and Potuz is implementing the core functionalities because he knows it better than anyone what to do and he may change the way it needs to be implemented mentioned in spec as it is very first time so he may change things I was told to try implementing some independent rpc methods which I am trying to look for but to find what to do need to know what exactly is done so far. So studying the [Epbs PR](https://github.com/prysmaticlabs/prysm/pull/13917) in prysm and spec to figure it out myself. And try to contribute to the project in any way possible. That's all for this week see ya 👋