add chain of responsibility