yeah  i did feel dirty  my excuse is that i feel like we have got a deeper problem with get tls  everywhere we use get tls is a mess of casts  i think we should change get tls to non volatile void then i think we would probably only ever need one cast  and no const casts 