TASK DEFINITION: Languages typically provide more than one grammatical construction to express certain types of messages. Your task is to generate a senetence with the same meaning as given sentence, but with different grammatical construction.
PROBLEM: Alice gave a man who was from work a gift

SOLUTION: Alice gave a gift to a man who was from work

PROBLEM: Alice extended the man who was wearing the hat a warm welcome

SOLUTION: Alice extended a warm welcome to the man who was wearing the hat

PROBLEM: Bob recommended a woman something

SOLUTION:
Bob recommended something to a woman