More readable and logic update