I have a 6 week camping trip itinerary below that needs to be cut back to 3 weeks. I would appreciate some advice on what to cut and what to keep. We don't have much in the way of specific goals - just a family trip to see these incredible parts of the country and natural wonders, including short walks/hikes, some fun clambering for the kids, and a few 'experiences' e.g. rodeo, rafting, etc. Yellowstone and Grand Canyon are must-see. Also probably Arches and Powell. Different family members have expressed specific interest in Craters, Sand Dunes and Badlands. Kids are 9-13. Suggestions, anyone?

1. Arrive Salt Lake City
2. Wake up Salt Lake Drive 5 hours to Craters of the Moon – 3-4 hour visit
3. Wake up Craters - Drive 4 hours to Grand Teton
4. Awake in Teton – 9am snake river trip 6pm shootout in Jackson
5. Awake in Teton drive 1hr to Yellowstone
6. Yellowstone
7. Yellowstone
8. Yellowstone
9. Drive 2hrs to Cody - cliff jumping, rodeo
10. Drive 6hrs devils tower –drive thru? Sleep where”
11. Awake in Black Hills/Badlands
12. Jewel Cave
13. Black Hills/Badlands
14. Awake in Black Hills drive 4 hrs to Chimney Rock drive through drive 2.5 hours to Cheyenne
15. Wake up in Cheyenne - a day around here?
16. Wake up in Cheyenne again and drive 6 hours to Great Sand Dunes national monument
17. Wake up in Sand Dunes and spend one day
18. Wake up in Sand Dunes and drive 5 hours to Mesa Verde
19. Wake up in Mesa Verde, tour pueblos
20. Wake up Mesa Verde (drive 45min to Durango for rodeo rodeos weekend of 7/28 in Durango??)
21. Wake up Durango 5 hours to Lake Powell
22. Wake up Powell
23. Wake up Powell
24. Wake up Powell - Drive 3 hours to Grand Canyon
25. Grand canyon
26. Grand Canyon
27. Grand Canyon drive 5hours to Zion
28. Zion
29. Zion
30. Zion drive 3 hours to Bryce
31. Bryce
32. Bryce drive 4 hours to Capitol Reef
33. Capitol Reef
34. Wake up Capitol Reef drive 3 hours to canyonlands
35. Wake up Canyonlands
36. Wake up Canyonlands drive to Arches
37. Arches
38. Wake up Arches drive 4 hours to Salt Lake
39. Wake up Salt Lake – fly home