templat argument object handl implement except 