weird typecast i don't even know