updated shape class