// File: /workspace/github_cpp_makefile_star2_O2/dannycalegari[P]circle_pack/./Packing.cc
// Function: Packing::rescale()
void Packing::rescale(){
	int i;
	double t;
	if(geometry!='E'){
		cout << "can only normalize in Euclidean geometry!\n";
	} else {
		t=-1.0*rad[INFV]*rad[ZERV];
		if(verbose){
			cout << "INFV is " << INFV << " with radius " << rad[INFV] << "\n";
			cout << "ZERV is " << ZERV << " with radius " << rad[ZERV] << "\n";
			cout << "product of inner and outer radii are " << t << "\n";
		};
		for(i=0;i<(int) adj.size();i++){
			rad[i]=rad[i]/sqrt(t);
			center[i].x=center[i].x/sqrt(t);
			center[i].y=center[i].y/sqrt(t);
		};
	};
}

// Assembly:
cmpb $0x45, 0x60(%rdi)
jne 0x36cd
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
movslq 0xbc(%rdi), %rax
movq 0x18(%rdi), %rcx
movsd (%rcx,%rax,8), %xmm1
xorpd 0x5b68(%rip), %xmm1     # 0x9020
movslq 0xc0(%rdi), %rax
mulsd (%rcx,%rax,8), %xmm1
cmpb $0x1, 0xb8(%rdi)
movapd %xmm1, 0x10(%rsp)
jne 0x35b0
movq 0x9af2(%rip), %r14      # 0xcfd0
leaq 0x5cca(%rip), %rsi      # 0x91af
movq %r14, %rdi
callq 0x21e0
movl 0xbc(%rbx), %esi
movq %rax, %rdi
callq 0x23a0
leaq 0x5cb6(%rip), %r12      # 0x91b8
movq %rax, %rdi
movq %r12, %rsi
callq 0x21e0
movslq 0xbc(%rbx), %rcx
movq 0x18(%rbx), %rdx
movsd (%rdx,%rcx,8), %xmm0
movq %rax, %rdi
callq 0x2340
leaq 0x6205(%rip), %r15      # 0x9731
movq %rax, %rdi
movq %r15, %rsi
callq 0x21e0
leaq 0x5c88(%rip), %rsi      # 0x91c6
movq %r14, %rdi
callq 0x21e0
movl 0xc0(%rbx), %esi
movq %rax, %rdi
callq 0x23a0
movq %rax, %rdi
movq %r12, %rsi
callq 0x21e0
movslq 0xc0(%rbx), %rcx
movq 0x18(%rbx), %rdx
movsd (%rdx,%rcx,8), %xmm0
movq %rax, %rdi
callq 0x2340
movq %rax, %rdi
movq %r15, %rsi
callq 0x21e0
leaq 0x5c46(%rip), %rsi      # 0x91cf
movq %r14, %rdi
callq 0x21e0
movq %rax, %rdi
movapd 0x10(%rsp), %xmm0
callq 0x2340
movq %rax, %rdi
movq %r15, %rsi
callq 0x21e0
movapd 0x10(%rsp), %xmm1
xorl %r14d, %r14d
pushq $0x18
popq %r15
sqrtsd %xmm1, %xmm2
xorpd %xmm3, %xmm3
xorl %r12d, %r12d
movsd %xmm2, 0x8(%rsp)
movq 0x8(%rbx), %rax
subq (%rbx), %rax
cqto
idivq %r15
cltq
cmpq %rax, %r12
jge 0x36c1
movq 0x18(%rbx), %rax
movsd (%rax,%r12,8), %xmm4
ucomisd %xmm3, %xmm1
movapd %xmm2, %xmm0
jae 0x3616
movapd %xmm1, %xmm0
movsd %xmm4, (%rsp)
callq 0x2170
movsd (%rsp), %xmm4
xorpd %xmm3, %xmm3
movsd 0x8(%rsp), %xmm2
movapd 0x10(%rsp), %xmm1
divsd %xmm0, %xmm4
movq 0x18(%rbx), %rax
movsd %xmm4, (%rax,%r12,8)
movq 0xa0(%rbx), %rax
movsd (%rax,%r14), %xmm4
ucomisd %xmm3, %xmm1
movapd %xmm2, %xmm0
jae 0x365e
movapd %xmm1, %xmm0
movsd %xmm4, (%rsp)
callq 0x2170
movsd (%rsp), %xmm4
xorpd %xmm3, %xmm3
movsd 0x8(%rsp), %xmm2
movapd 0x10(%rsp), %xmm1
divsd %xmm0, %xmm4
movq 0xa0(%rbx), %rax
movsd %xmm4, (%rax,%r14)
movsd 0x8(%rax,%r14), %xmm4
ucomisd %xmm3, %xmm1
movapd %xmm2, %xmm0
jae 0x36a3
movapd %xmm1, %xmm0
movsd %xmm4, (%rsp)
callq 0x2170
movsd (%rsp), %xmm4
xorpd %xmm3, %xmm3
movsd 0x8(%rsp), %xmm2
movapd 0x10(%rsp), %xmm1
divsd %xmm0, %xmm4
movq 0xa0(%rbx), %rax
movsd %xmm4, 0x8(%rax,%r14)
incq %r12
addq $0x18, %r14
jmp 0x35c8
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq 0x98fc(%rip), %rdi      # 0xcfd0
leaq 0x5aa9(%rip), %rsi      # 0x9184
jmp 0x21e0