apply
isArray isObject isString wrap