Rewrite ShapeUp to ensure proper encapsulation.