Small rework
simplifications (not go deep into details)
makes it more fluent