// File: /workspace/github_cpp_makefile_star2_O3/manikandan5[P]Image-Matching-Stitching-Warping/./CImg.h
// Function: cimg_library::CImgDisplay::resize(int, int, bool)
CImgDisplay& resize(const int nwidth, const int nheight, const bool force_redraw=true) {
      if (!nwidth || !nheight || (is_empty() && (nwidth<0 || nheight<0))) return assign();
      if (is_empty()) return assign(nwidth,nheight);
      Display *const dpy = cimg::X11_attr().display;
      const unsigned int
        tmpdimx = (nwidth>0)?nwidth:(-nwidth*width()/100),
        tmpdimy = (nheight>0)?nheight:(-nheight*height()/100),
        dimx = tmpdimx?tmpdimx:1,
        dimy = tmpdimy?tmpdimy:1;
      XLockDisplay(dpy);
      if (_window_width!=dimx || _window_height!=dimy) {
        XWindowAttributes attr;
        for (unsigned int i = 0; i<10; ++i) {
          XResizeWindow(dpy,_window,dimx,dimy);
          XGetWindowAttributes(dpy,_window,&attr);
          if (attr.width==(int)dimx && attr.height==(int)dimy) break;
          cimg::wait(5);
        }
      }
      if (_width!=dimx || _height!=dimy) switch (cimg::X11_attr().nb_bits) {
        case 8 :  { unsigned char pixel_type = 0; _resize(pixel_type,dimx,dimy,force_redraw); } break;
        case 16 : { unsigned short pixel_type = 0; _resize(pixel_type,dimx,dimy,force_redraw); } break;
        default : { unsigned int pixel_type = 0; _resize(pixel_type,dimx,dimy,force_redraw); }
        }
      _window_width = _width = dimx; _window_height = _height = dimy;
      _is_resized = false;
      XUnlockDisplay(dpy);
      if (_is_fullscreen) move((screen_width()-_width)/2,(screen_height()-_height)/2);
      if (force_redraw) return paint();
      return *this;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x98, %rsp
movl %ecx, %ebp
movq %rdi, %rbx
testl %esi, %esi
sete %al
testl %edx, %edx
sete %cl
orb %al, %cl
jne 0x35729
movl %edx, %r14d
movl %esi, %r15d
cmpl $0x0, 0x18(%rbx)
setne %cl
cmpl $0x0, 0x1c(%rbx)
setne %al
andb %cl, %al
movl %edx, %ecx
orl %esi, %ecx
setns %cl
orb %al, %cl
je 0x35729
testb %al, %al
je 0x35742
movb 0x756ed(%rip), %al      # 0xaad00
testb %al, %al
je 0x357e5
testl %r15d, %r15d
jg 0x35640
imull 0x18(%rbx), %r15d
negl %r15d
movslq %r15d, %rax
imulq $0x51eb851f, %rax, %r15 # imm = 0x51EB851F
movq %r15, %rax
shrq $0x3f, %rax
sarq $0x25, %r15
addl %eax, %r15d
movq 0x756a9(%rip), %r12     # 0xaacf0
testl %r14d, %r14d
jg 0x3566c
imull 0x1c(%rbx), %r14d
negl %r14d
movslq %r14d, %rax
imulq $0x51eb851f, %rax, %r14 # imm = 0x51EB851F
movq %r14, %rax
shrq $0x3f, %rax
sarq $0x25, %r14
addl %eax, %r14d
cmpl $0x1, %r15d
adcl $0x0, %r15d
cmpl $0x1, %r14d
adcl $0x0, %r14d
movq %r12, %rdi
callq 0x4280
movl 0x40(%rbx), %eax
cmpl %r15d, %eax
jne 0x35694
movl 0x44(%rbx), %eax
cmpl %r14d, %eax
je 0x356e9
movl %ebp, 0xc(%rsp)
movl $0xa, %ebp
leaq 0x10(%rsp), %r13
movq 0x4d0(%rbx), %rsi
movq %r12, %rdi
movl %r15d, %edx
movl %r14d, %ecx
callq 0x4790
movq 0x4d0(%rbx), %rsi
movq %r12, %rdi
movq %r13, %rdx
callq 0x4970
cmpl %r15d, 0x18(%rsp)
jne 0x356d7
cmpl %r14d, 0x1c(%rsp)
je 0x356e5
movl $0x5, %edi
callq 0x359f2
decl %ebp
jne 0x356a2
movl 0xc(%rsp), %ebp
cmpl %r15d, 0x18(%rbx)
jne 0x356f5
cmpl %r14d, 0x1c(%rbx)
je 0x35770
movb 0x75605(%rip), %al      # 0xaad00
testb %al, %al
je 0x35830
movl 0x755ef(%rip), %eax     # 0xaacf8
movzbl %bpl, %r8d
movq %rbx, %rdi
xorl %esi, %esi
movl %r15d, %edx
movl %r14d, %ecx
cmpl $0x10, %eax
je 0x35764
cmpl $0x8, %eax
jne 0x3576b
callq 0x35b62
jmp 0x35770
movq %rbx, %rdi
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1e520
movl $0x0, (%rsp)
movq %rbx, %rdi
movl %r15d, %esi
movl %r14d, %edx
xorl %ecx, %ecx
movl $0x3, %r8d
xorl %r9d, %r9d
callq 0x35894
jmp 0x357d3
callq 0x35cfc
jmp 0x35770
callq 0x35e9c
movl %r15d, 0x18(%rbx)
movl %r15d, 0x40(%rbx)
movl %r14d, 0x1c(%rbx)
movl %r14d, 0x44(%rbx)
movb $0x0, 0x461(%rbx)
movq %r12, %rdi
callq 0x41f0
cmpb $0x1, 0x30(%rbx)
jne 0x357bb
callq 0xf284
movl %eax, %r14d
subl 0x18(%rbx), %r14d
shrl %r14d
callq 0xf38a
subl 0x1c(%rbx), %eax
shrl %eax
movq %rbx, %rdi
movl %r14d, %esi
movl %eax, %edx
callq 0xf194
testb %bpl, %bpl
je 0x357d0
movq %rbx, %rdi
movl $0x1, %esi
callq 0x20ec2
movq %rax, %rbx
movq %rbx, %rax
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x75514(%rip), %rdi     # 0xaad00
callq 0x49c0
testl %eax, %eax
je 0x3561b
leaq 0x73488(%rip), %rdi     # 0xa8c88
callq 0x211ec
leaq -0x145e2(%rip), %rdi    # 0x2122a
leaq 0x73475(%rip), %rsi     # 0xa8c88
leaq 0x72d46(%rip), %rdx     # 0xa8560
callq 0x44c0
leaq 0x754da(%rip), %rdi     # 0xaad00
callq 0x4330
jmp 0x3561b
leaq 0x754c9(%rip), %rdi     # 0xaad00
callq 0x49c0
testl %eax, %eax
je 0x35703
leaq 0x7343d(%rip), %rdi     # 0xa8c88
callq 0x211ec
leaq -0x1462d(%rip), %rdi    # 0x2122a
leaq 0x7342a(%rip), %rsi     # 0xa8c88
leaq 0x72cfb(%rip), %rdx     # 0xa8560
callq 0x44c0
leaq 0x7548f(%rip), %rdi     # 0xaad00
callq 0x4330
jmp 0x35703
jmp 0x3587d
movq %rax, %rbx
leaq 0x75479(%rip), %rdi     # 0xaad00
callq 0x4310
movq %rbx, %rdi
callq 0x4960