padrões de projeto: chain of responsibility