Refactored behaviour.