cat reasoning