// File: /workspace/github_cpp_makefile_star2_O1/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 0x372e1
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 0x372e1
testb %al, %al
je 0x372fa
movb 0x78b25(%rip), %al      # 0xafcf0
testb %al, %al
je 0x3739d
testl %r15d, %r15d
jg 0x371f8
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 0x78ae1(%rip), %r12     # 0xafce0
testl %r14d, %r14d
jg 0x37224
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 0x3724c
movl 0x44(%rbx), %eax
cmpl %r14d, %eax
je 0x372a1
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 0x4780
movq 0x4d0(%rbx), %rsi
movq %r12, %rdi
movq %r13, %rdx
callq 0x4960
cmpl %r15d, 0x18(%rsp)
jne 0x3728f
cmpl %r14d, 0x1c(%rsp)
je 0x3729d
movl $0x5, %edi
callq 0x375aa
decl %ebp
jne 0x3725a
movl 0xc(%rsp), %ebp
cmpl %r15d, 0x18(%rbx)
jne 0x372ad
cmpl %r14d, 0x1c(%rbx)
je 0x37328
movb 0x78a3d(%rip), %al      # 0xafcf0
testb %al, %al
je 0x373e8
movl 0x78a27(%rip), %eax     # 0xafce8
movzbl %bpl, %r8d
movq %rbx, %rdi
xorl %esi, %esi
movl %r15d, %edx
movl %r14d, %ecx
cmpl $0x10, %eax
je 0x3731c
cmpl $0x8, %eax
jne 0x37323
callq 0x3771a
jmp 0x37328
movq %rbx, %rdi
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x1e50e
movl $0x0, (%rsp)
movq %rbx, %rdi
movl %r15d, %esi
movl %r14d, %edx
xorl %ecx, %ecx
movl $0x3, %r8d
xorl %r9d, %r9d
callq 0x3744c
jmp 0x3738b
callq 0x378b4
jmp 0x37328
callq 0x37a54
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 0x37373
callq 0xf224
movl %eax, %r14d
subl 0x18(%rbx), %r14d
shrl %r14d
callq 0xf32a
subl 0x1c(%rbx), %eax
shrl %eax
movq %rbx, %rdi
movl %r14d, %esi
movl %eax, %edx
callq 0xf134
testb %bpl, %bpl
je 0x37388
movq %rbx, %rdi
movl $0x1, %esi
callq 0x20e5e
movq %rax, %rbx
movq %rbx, %rax
addq $0x98, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x7894c(%rip), %rdi     # 0xafcf0
callq 0x49b0
testl %eax, %eax
je 0x371d3
leaq 0x768c0(%rip), %rdi     # 0xadc78
callq 0x21188
leaq -0x161fe(%rip), %rdi    # 0x211c6
leaq 0x768ad(%rip), %rsi     # 0xadc78
leaq 0x76186(%rip), %rdx     # 0xad558
callq 0x44b0
leaq 0x78912(%rip), %rdi     # 0xafcf0
callq 0x4330
jmp 0x371d3
leaq 0x78901(%rip), %rdi     # 0xafcf0
callq 0x49b0
testl %eax, %eax
je 0x372bb
leaq 0x76875(%rip), %rdi     # 0xadc78
callq 0x21188
leaq -0x16249(%rip), %rdi    # 0x211c6
leaq 0x76862(%rip), %rsi     # 0xadc78
leaq 0x7613b(%rip), %rdx     # 0xad558
callq 0x44b0
leaq 0x788c7(%rip), %rdi     # 0xafcf0
callq 0x4330
jmp 0x372bb
jmp 0x37435
movq %rax, %rbx
leaq 0x788b1(%rip), %rdi     # 0xafcf0
callq 0x4310
movq %rbx, %rdi
callq 0x4950