TODO - Figure out why `state.rs` is erased at some moment(even handshake is not done). - Refactor - Add tests