unapply
proveShapeOf