---
# System prepended metadata

title: EPF Fourth Cohort - Week 10 update

---

## Update

This last week I worked on:

- storing `BeaconState`s in our database [#211](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/211)
- requesting missing blocks from peers [#225](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/225) [#228](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/228)
- adding the SSZ containers associated to a `BlocksByRange` request and response [#215](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/215)
- adding list de/serialization and hashing to the SSZ NIF, specifically for transactions and withdrawals [#222](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/222) [#223](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/223)
- porting spec functions used to calculate the `ForkDigestValue` [#210](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/210)
- improving the spec test documentation [#226](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/226) [#227](https://github.com/lambdaclass/lambda_ethereum_consensus/pull/227)

With this, and once we are capable of checkpoint sync, we can start filling missing blocks from the current slot to previous ones, and in the future validate them from the last finalized state.

## Next steps

Improve the blocks request, since batch requesting and empty slots are not supported. Integrate it with checkpoint sync logic, and start working on the validation logic.
