Everything is implemented and it compiles