Fostering creativity through instruction rich in mathematical problem solving and problem posing