add Chain_Of_Responsibility Pattern