added respondsToSelector checks