// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/network.c
// Function: delete_one_arc
void delete_one_arc(bayesiangraphptr mygraph, int arc_no, int *from, int *to, int *from_order)
{
 /*!Last Changed 07.03.2001*/
 int i, dummy;
/*Once silinecek arcin yeri bulunuyor ve ondan sonra gelen parentlarin yerleri bir one aliniyor*/
 find_arc_with_no(mygraph, arc_no, from, to, from_order, &dummy);
 if (mygraph->nodes[*to].pointer == arc_no)
   mygraph->nodes[*to].pointer = mygraph->arcs[arc_no].pointer;
 else
   mygraph->arcs[dummy].pointer = mygraph->arcs[arc_no].pointer;
/*Silinecek arcdan sonrakileri teker teker kaydir*/
 for (i = arc_no; i < mygraph->arccount - 1; i++)
  {
   mygraph->arcs[i].pointer = mygraph->arcs[i + 1].pointer;
   mygraph->dest[i] = mygraph->dest[i + 1];
  }
/*Silinecek arcdan daha yuksek arc numarasi olanlarin arc numarasini bir azalt*/
 for (i = 0; i < mygraph->nodecount; i++)
   if (mygraph->nodes[i].pointer > arc_no)
     mygraph->nodes[i].pointer--;
 for (i = 0; i < mygraph->arccount; i++)
   if (mygraph->arcs[i].pointer > arc_no)
     mygraph->arcs[i].pointer--;
/*Arc ve desti yeniden realloc et*/
 mygraph->arccount--;
 mygraph->arcs = alloc(mygraph->arcs, mygraph->arccount * sizeof(struct arc), mygraph->arccount);
 mygraph->dest = alloc(mygraph->dest, mygraph->arccount * sizeof(int), mygraph->arccount);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x8(%rbp), %rdi
movl -0xc(%rbp), %esi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %r8
leaq -0x30(%rbp), %r9
callq 0x705f0
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x20(%rbp), %rcx
movslq (%rcx), %rcx
imulq $0x48, %rcx, %rcx
addq %rcx, %rax
movl 0x30(%rax), %eax
cmpl -0xc(%rbp), %eax
jne 0x708df
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0xc(%rbp), %rcx
movl (%rax,%rcx,4), %ecx
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x20(%rbp), %rdx
movslq (%rdx), %rdx
imulq $0x48, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x30(%rax)
jmp 0x708fd
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0xc(%rbp), %rcx
movl (%rax,%rcx,4), %edx
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0x30(%rbp), %rcx
movl %edx, (%rax,%rcx,4)
movl -0xc(%rbp), %eax
movl %eax, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x8(%rbp), %rcx
movl 0x20(%rcx), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x70965
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movl -0x2c(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx,4), %edx
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0x2c(%rbp), %rcx
movl %edx, (%rax,%rcx,4)
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rax
movl -0x2c(%rbp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movl (%rax,%rcx,4), %edx
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rax
movslq -0x2c(%rbp), %rcx
movl %edx, (%rax,%rcx,4)
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x70903
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl 0x10(%rcx), %eax
jge 0x709bc
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movslq -0x2c(%rbp), %rcx
imulq $0x48, %rcx, %rcx
addq %rcx, %rax
movl 0x30(%rax), %eax
cmpl -0xc(%rbp), %eax
jle 0x709af
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rax
movslq -0x2c(%rbp), %rcx
imulq $0x48, %rcx, %rcx
addq %rcx, %rax
movl 0x30(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x30(%rax)
jmp 0x709b1
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x7096c
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl 0x20(%rcx), %eax
jge 0x70a05
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0x2c(%rbp), %rcx
movl (%rax,%rcx,4), %eax
cmpl -0xc(%rbp), %eax
jle 0x709f8
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0x2c(%rbp), %rcx
movl (%rax,%rcx,4), %edx
addl $-0x1, %edx
movl %edx, (%rax,%rcx,4)
jmp 0x709fa
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x709c3
movq -0x8(%rbp), %rax
movl 0x20(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x20(%rax)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movq -0x8(%rbp), %rax
movslq 0x20(%rax), %rsi
shlq $0x2, %rsi
movq -0x8(%rbp), %rax
movl 0x20(%rax), %edx
callq 0x52d10
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x8(%rbp), %rax
movq 0x28(%rax), %rdi
movq -0x8(%rbp), %rax
movslq 0x20(%rax), %rsi
shlq $0x2, %rsi
movq -0x8(%rbp), %rax
movl 0x20(%rax), %edx
callq 0x52d10
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x28(%rax)
addq $0x30, %rsp
popq %rbp
retq
nop