BIG CHANGE: Type structure assume to be passed retained object.