Introduced ShapeBase -> some refactoring