#include <iostream>
#include <bitset>
using namespace std;
template<typename T, typename U>
union ultra_cast {
public:
constexpr ultra_cast(T t) : t_(t) {}
operator U() const { return u_; }
private:
T t_;
U u_;
};
int main() {
float a = 1.0f;
uint32_t b = ultra_cast<float, uint32_t>(a);
cout << bitset<32>(b) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0c2V0Pgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4KdW5pb24gdWx0cmFfY2FzdCB7CiBwdWJsaWM6CiAgY29uc3RleHByIHVsdHJhX2Nhc3QoVCB0KSA6IHRfKHQpIHt9CiAgb3BlcmF0b3IgVSgpIGNvbnN0IHsgcmV0dXJuIHVfOyB9CgogcHJpdmF0ZToKICBUIHRfOwogIFUgdV87Cn07CgppbnQgbWFpbigpIHsKICBmbG9hdCBhID0gMS4wZjsKICB1aW50MzJfdCBiID0gdWx0cmFfY2FzdDxmbG9hdCwgdWludDMyX3Q+KGEpOwogIGNvdXQgPDwgYml0c2V0PDMyPihiKSA8PCBlbmRsOwoKICByZXR1cm4gMDsKfQo=