Adding new As<T> function