// File: Luthaf[P]zeopp/voro++/src/container_prd.cc
// Function: voro::container_periodic_base::check_compartmentalized()
void container_periodic_base::check_compartmentalized() {
	int c,l,i,j,k;
	double mix,miy,miz,max,may,maz,*pp;
	for(k=l=0;k<oz;k++) for(j=0;j<oy;j++) for(i=0;i<nx;i++,l++) if(mem[l]>0) {

		// Compute the block's bounds, adding in a small tolerance
		mix=i*boxx-tolerance;max=mix+boxx+tolerance;
		miy=(j-ey)*boxy-tolerance;may=miy+boxy+tolerance;
		miz=(k-ez)*boxz-tolerance;maz=miz+boxz+tolerance;

		// Print entries for any particles that lie outside the block's
		// bounds
		for(pp=p[l],c=0;c<co[l];c++,pp+=ps) if(*pp<mix||*pp>max||pp[1]<miy||pp[1]>may||pp[2]<miz||pp[2]>maz)
			printf("%d %d %d %d %f %f %f %f %f %f %f %f %f\n",
			       id[l][c],i,j,k,*pp,pp[1],pp[2],mix,max,miy,may,miz,maz);
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x60(%rbp)
movl $0x0, -0x10(%rbp)
movl $0x0, -0x1c(%rbp)
movq -0x60(%rbp), %rcx
movl -0x1c(%rbp), %eax
cmpl 0x194(%rcx), %eax
jge 0x505ed
movl $0x0, -0x18(%rbp)
movq -0x60(%rbp), %rcx
movl -0x18(%rbp), %eax
cmpl 0x190(%rcx), %eax
jge 0x505dd
movl $0x0, -0x14(%rbp)
movq -0x60(%rbp), %rcx
movl -0x14(%rbp), %eax
cmpl 0x128(%rcx), %eax
jge 0x505cd
movq -0x60(%rbp), %rax
movq 0x1b8(%rax), %rax
movslq -0x10(%rbp), %rcx
cmpl $0x0, (%rax,%rcx,4)
jle 0x505b4
movq -0x60(%rbp), %rax
cvtsi2sdl -0x14(%rbp), %xmm0
movsd 0x140(%rax), %xmm1
mulsd %xmm1, %xmm0
movsd 0xbf09(%rip), %xmm1     # 0x5c2c8
addsd %xmm1, %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x28(%rbp), %xmm0
addsd 0x140(%rax), %xmm0
movsd 0x5c2b(%rip), %xmm1     # 0x56008
addsd %xmm1, %xmm0
movsd %xmm0, -0x40(%rbp)
movl -0x18(%rbp), %ecx
subl 0x180(%rax), %ecx
cvtsi2sd %ecx, %xmm0
movsd 0x148(%rax), %xmm1
mulsd %xmm1, %xmm0
movsd 0xbec1(%rip), %xmm1     # 0x5c2c8
addsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0x30(%rbp), %xmm0
addsd 0x148(%rax), %xmm0
movsd 0x5be3(%rip), %xmm1     # 0x56008
addsd %xmm1, %xmm0
movsd %xmm0, -0x48(%rbp)
movl -0x1c(%rbp), %ecx
subl 0x184(%rax), %ecx
cvtsi2sd %ecx, %xmm0
movsd 0x150(%rax), %xmm1
mulsd %xmm1, %xmm0
movsd 0xbe79(%rip), %xmm1     # 0x5c2c8
addsd %xmm1, %xmm0
movsd %xmm0, -0x38(%rbp)
movsd -0x38(%rbp), %xmm0
addsd 0x150(%rax), %xmm0
movsd 0x5b9b(%rip), %xmm1     # 0x56008
addsd %xmm1, %xmm0
movsd %xmm0, -0x50(%rbp)
movq 0x1a8(%rax), %rax
movslq -0x10(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x58(%rbp)
movl $0x0, -0xc(%rbp)
movq -0x60(%rbp), %rcx
movl -0xc(%rbp), %eax
movq 0x1b0(%rcx), %rcx
movslq -0x10(%rbp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x505b2
movq -0x58(%rbp), %rax
movsd (%rax), %xmm1
movsd -0x28(%rbp), %xmm0
ucomisd %xmm1, %xmm0
ja 0x50515
movq -0x58(%rbp), %rax
movsd (%rax), %xmm0
ucomisd -0x40(%rbp), %xmm0
ja 0x50515
movq -0x58(%rbp), %rax
movsd 0x8(%rax), %xmm1
movsd -0x30(%rbp), %xmm0
ucomisd %xmm1, %xmm0
ja 0x50515
movq -0x58(%rbp), %rax
movsd 0x8(%rax), %xmm0
ucomisd -0x48(%rbp), %xmm0
ja 0x50515
movq -0x58(%rbp), %rax
movsd 0x10(%rax), %xmm1
movsd -0x38(%rbp), %xmm0
ucomisd %xmm1, %xmm0
ja 0x50515
movq -0x58(%rbp), %rax
movsd 0x10(%rax), %xmm0
ucomisd -0x50(%rbp), %xmm0
jbe 0x50586
movq -0x60(%rbp), %rax
movq 0x1a0(%rax), %rax
movslq -0x10(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movslq -0xc(%rbp), %rcx
movl (%rax,%rcx,4), %esi
movl -0x14(%rbp), %edx
movl -0x18(%rbp), %ecx
movl -0x1c(%rbp), %r8d
movq -0x58(%rbp), %rax
movsd (%rax), %xmm0
movq -0x58(%rbp), %rax
movsd 0x8(%rax), %xmm1
movq -0x58(%rbp), %rax
movsd 0x10(%rax), %xmm2
movsd -0x28(%rbp), %xmm3
movsd -0x40(%rbp), %xmm4
movsd -0x30(%rbp), %xmm5
movsd -0x48(%rbp), %xmm6
movsd -0x38(%rbp), %xmm7
movsd -0x50(%rbp), %xmm8
leaq 0xbd57(%rip), %rdi      # 0x5c2d0
movsd %xmm8, (%rsp)
movb $0x8, %al
callq 0x2040
jmp 0x50588
movq -0x60(%rbp), %rax
movl -0xc(%rbp), %ecx
addl $0x1, %ecx
movl %ecx, -0xc(%rbp)
movl 0x1cc(%rax), %ecx
movq -0x58(%rbp), %rax
movslq %ecx, %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, -0x58(%rbp)
jmp 0x50490
jmp 0x505b4
jmp 0x505b6
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
movl -0x10(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10(%rbp)
jmp 0x50376
jmp 0x505cf
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x5035c
jmp 0x505df
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
jmp 0x50342
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)