ok, but what happens? is it worth checking for + throwing, or will the cast fail anyways?