first ShapeManager implementation