prototype of shape num working