teaching critical thinking and Problem solving skills