let t have type T?
if we do t!! , we will either get an value of type T ... or it throws an exception
now, is there a way to pass t!! a d3efault value ... so we always get a value of type T (either the underlying valyue, or the default one in the case of null)