adding a dynamic behaviour