Doing a very little changes, we still need to work on the same TODO list, we will need some time to sit and work on this, are not trivial methods