outsource toString, getShape, get