Rebuilt Varient_Object as extend