.LC0:
        .string ""
main:
        push    rbp
        mov     rbp, rsp
        push    rbx
        sub     rsp, 40
        mov     DWORD PTR [rbp-20], 0
        jmp     .L2
.L9:
        mov     DWORD PTR [rbp-24], 1
        jmp     .L3
.L6:
        mov     DWORD PTR [rbp-28], 0
        jmp     .L4
.L5:
        mov     edx, DWORD PTR [rbp-24]
        mov     eax, DWORD PTR [rbp-20]
        add     eax, edx
        mov     esi, 2
        mov     edi, eax
        call    __gnu_cxx::__promote_2<decltype (((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))+((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))), std::__is_integer<decltype (((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))+((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0)))>::__value>::__type std::pow<int, int>(int, int)
        movq    rbx, xmm0
        mov     eax, DWORD PTR [rbp-24]
        sub     eax, 1
        mov     esi, 2
        mov     edi, eax
        call    __gnu_cxx::__promote_2<decltype (((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))+((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))), std::__is_integer<decltype (((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0))+((__gnu_cxx::__promote_2<int, std::__is_integer<int>::__value>::__type)(0)))>::__value>::__type std::pow<int, int>(int, int)
        movq    xmm1, rbx
        subsd   xmm1, xmm0
        cvttsd2si       eax, xmm1
        mov     DWORD PTR [rbp-36], eax
        mov     eax, DWORD PTR [rbp-20]
        lea     ecx, [rax+1]
        mov     eax, DWORD PTR [rbp-36]
        cdq
        idiv    ecx
        mov     esi, eax
        mov     edi, OFFSET FLAT:_ZSt4cout
        call    std::basic_ostream<char, std::char_traits<char> >::operator<<(int)
        mov     esi, OFFSET FLAT:_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
        mov     rdi, rax
        call    std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
        add     DWORD PTR [rbp-28], 1
.L4:
        cmp     DWORD PTR [rbp-28], 0
        jle     .L5
        add     DWORD PTR [rbp-24], 1
.L3:
        cmp     DWORD PTR [rbp-24], 10
        jle     .L6
        mov     DWORD PTR [rbp-32], 1
        jmp     .L7
.L8:
        mov     esi, OFFSET FLAT:.LC0
        mov     edi, OFFSET FLAT:_ZSt4cout
        call    std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
        add     DWORD PTR [rbp-32], 1
.L7:
        cmp     DWORD PTR [rbp-32], 10
        jle     .L8
        add     DWORD PTR [rbp-20], 1
.L2:
        cmp     DWORD PTR [rbp-20], 0
        jle     .L9
        mov     eax, 0
        mov     rbx, QWORD PTR [rbp-8]
        leave
        ret