refine the object protype