Thinking and Reasoning