// File: /workspace/github_c_makefile_star2_O0/josch[P]stride/sheet.c
// Function: PrintPatterns
void PrintPatterns(PATTERN **Pat, int NPat, CHAIN **Chain, int Cn1, int Cn2)
{

  register int i;
  int D1, A1, D2, A2;


  for( i=0; i<NPat; i++ ) {
    if( !Pat[i]->ExistPattern ) continue;

    D1 = Pat[i]->Hb1->Dnr->D_Res;
    A1 = Pat[i]->Hb1->Acc->A_Res;
    D2 = Pat[i]->Hb2->Dnr->D_Res;
    A2 = Pat[i]->Hb2->Acc->A_Res;
    
    fprintf(stdout,"%3d %c %c ",
	    i,Pat[i]->Hb1->Dnr->Chain->Id,Pat[i]->Hb2->Dnr->Chain->Id);
    if( Pat[i]->Hb1->Dnr->Chain->Id == Chain[Cn1]->Id )
      fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d)",
	      Chain[Cn1]->Rsd[D1]->PDB_ResNumb,D1,
	      Chain[Cn2]->Rsd[A1]->PDB_ResNumb,A1,
	      Chain[Cn2]->Rsd[D2]->PDB_ResNumb,D2,
	      Chain[Cn1]->Rsd[A2]->PDB_ResNumb,A2);
    else
      fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d)",
	      Chain[Cn2]->Rsd[D1]->PDB_ResNumb,D1,
	      Chain[Cn1]->Rsd[A1]->PDB_ResNumb,A1,
	      Chain[Cn1]->Rsd[D2]->PDB_ResNumb,D2,
	      Chain[Cn2]->Rsd[A2]->PDB_ResNumb,A2);
    
    if( Pat[i]->Nei1 != NULL ) {
      D1 = Pat[i]->Nei1->Hb1->Dnr->D_Res;
      A1 = Pat[i]->Nei1->Hb1->Acc->A_Res;
      D2 = Pat[i]->Nei1->Hb2->Dnr->D_Res;
      A2 = Pat[i]->Nei1->Hb2->Acc->A_Res;
      
      fprintf(stdout," N1 %c %c ",
	      Pat[i]->Nei1->Hb1->Dnr->Chain->Id,Pat[i]->Nei1->Hb2->Dnr->Chain->Id);
      if( Pat[i]->Nei1->Hb1->Dnr->Chain->Id == Chain[Cn1]->Id )
	fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d) ",
		Chain[Cn1]->Rsd[D1]->PDB_ResNumb,D1,
		Chain[Cn2]->Rsd[A1]->PDB_ResNumb,A1,
		Chain[Cn2]->Rsd[D2]->PDB_ResNumb,D2,
		Chain[Cn1]->Rsd[A2]->PDB_ResNumb,A2);
      else
	fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d) ",
		Chain[Cn2]->Rsd[D1]->PDB_ResNumb,D1,
		Chain[Cn1]->Rsd[A1]->PDB_ResNumb,A1,
		Chain[Cn1]->Rsd[D2]->PDB_ResNumb,D2,
		Chain[Cn2]->Rsd[A2]->PDB_ResNumb,A2);
    }
    
    if( Pat[i]->Nei2 != NULL ) {
      D1 = Pat[i]->Nei2->Hb1->Dnr->D_Res;
      A1 = Pat[i]->Nei2->Hb1->Acc->A_Res;
      D2 = Pat[i]->Nei2->Hb2->Dnr->D_Res;
      A2 = Pat[i]->Nei2->Hb2->Acc->A_Res;
      fprintf(stdout," N2 %c %c ",
	      Pat[i]->Nei2->Hb1->Dnr->Chain->Id,Pat[i]->Nei2->Hb2->Dnr->Chain->Id);
      if( Pat[i]->Nei2->Hb1->Dnr->Chain->Id == Chain[Cn1]->Id )
	fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d) ",
		Chain[Cn1]->Rsd[D1]->PDB_ResNumb,D1,
		Chain[Cn2]->Rsd[A1]->PDB_ResNumb,A1,
		Chain[Cn2]->Rsd[D2]->PDB_ResNumb,D2,
		Chain[Cn1]->Rsd[A2]->PDB_ResNumb,A2);
      else
	fprintf(stdout,"%3s(%3d) %3s(%3d) %3s(%3d) %3s(%3d) ",
		Chain[Cn2]->Rsd[D1]->PDB_ResNumb,D1,
		Chain[Cn1]->Rsd[A1]->PDB_ResNumb,A1,
		Chain[Cn1]->Rsd[D2]->PDB_ResNumb,D2,
		Chain[Cn2]->Rsd[A2]->PDB_ResNumb,A2);
    }
    fprintf(stdout,"\n");
  }
  
}

// Assembly:
pushq %rbx
subq $0x60, %rsp
movq %rdi, 0x58(%rsp)
movl %esi, 0x54(%rsp)
movq %rdx, 0x48(%rsp)
movl %ecx, 0x44(%rsp)
movl %r8d, 0x40(%rsp)
movl $0x0, 0x3c(%rsp)
movl 0x3c(%rsp), %eax
cmpl 0x54(%rsp), %eax
jge 0xac01
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
cmpl $0x0, 0x20(%rax)
jne 0xa42b
jmp 0xabf1
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq (%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x38(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq (%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x30(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x2c(%rsp)
movq 0x25b36(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movl 0x3c(%rsp), %edx
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %ecx
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %r8d
leaq 0x216e3(%rip), %rsi     # 0x2bbcb
movb $0x0, %al
callq 0x2140
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %eax
movq 0x48(%rsp), %rcx
movslq 0x44(%rsp), %rdx
movq (%rcx,%rdx,8), %rcx
movsbl 0x40(%rcx), %ecx
cmpl %ecx, %eax
jne 0xa5e1
movq 0x25aad(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x21613(%rip), %rsi     # 0x2bbd6
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
jmp 0xa699
movq 0x259f0(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x21556(%rip), %rsi     # 0x2bbd6
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
cmpq $0x0, 0x10(%rax)
je 0xa939
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x38(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x30(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x2c(%rsp)
movq 0x2589f(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %edx
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %ecx
leaq 0x21478(%rip), %rsi     # 0x2bbfa
movb $0x0, %al
callq 0x2140
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %eax
movq 0x48(%rsp), %rcx
movslq 0x44(%rsp), %rdx
movq (%rcx,%rdx,8), %rcx
movsbl 0x40(%rcx), %ecx
cmpl %ecx, %eax
jne 0xa87f
movq 0x2580f(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x213a4(%rip), %rsi     # 0x2bc05
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
jmp 0xa937
movq 0x25752(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x212e7(%rip), %rsi     # 0x2bc05
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
jmp 0xa939
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
cmpq $0x0, 0x18(%rax)
je 0xabd9
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x38(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq (%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x34(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x30(%rsp)
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq 0x8(%rax), %rax
movq 0x8(%rax), %rax
movl 0x8(%rax), %eax
movl %eax, 0x2c(%rsp)
movq 0x255ff(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %edx
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq 0x8(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %ecx
leaq 0x21208(%rip), %rsi     # 0x2bc2a
movb $0x0, %al
callq 0x2140
movq 0x58(%rsp), %rax
movslq 0x3c(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x18(%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movq (%rax), %rax
movsbl 0x40(%rax), %eax
movq 0x48(%rsp), %rcx
movslq 0x44(%rsp), %rdx
movq (%rcx,%rdx,8), %rcx
movsbl 0x40(%rcx), %ecx
cmpl %ecx, %eax
jne 0xab1f
movq 0x2556f(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x21104(%rip), %rsi     # 0x2bc05
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
jmp 0xabd7
movq 0x254b2(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq 0x68(%rax), %rax
movslq 0x38(%rsp), %rcx
movq (%rax,%rcx,8), %rdx
addq $0x4, %rdx
movl 0x38(%rsp), %ecx
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x34(%rsp), %rsi
movq (%rax,%rsi,8), %r8
addq $0x4, %r8
movl 0x34(%rsp), %r9d
movq 0x48(%rsp), %rax
movslq 0x44(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x30(%rsp), %rsi
movq (%rax,%rsi,8), %rbx
addq $0x4, %rbx
movl 0x30(%rsp), %r11d
movq 0x48(%rsp), %rax
movslq 0x40(%rsp), %rsi
movq (%rax,%rsi,8), %rax
movq 0x68(%rax), %rax
movslq 0x2c(%rsp), %rsi
movq (%rax,%rsi,8), %r10
addq $0x4, %r10
movl 0x2c(%rsp), %eax
leaq 0x21047(%rip), %rsi     # 0x2bc05
movq %rbx, (%rsp)
movl %r11d, 0x8(%rsp)
movq %r10, 0x10(%rsp)
movl %eax, 0x18(%rsp)
movb $0x0, %al
callq 0x2140
jmp 0xabd9
movq 0x253f8(%rip), %rax     # 0x2ffd8
movq (%rax), %rdi
leaq 0x21179(%rip), %rsi     # 0x2bd63
movb $0x0, %al
callq 0x2140
movl 0x3c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x3c(%rsp)
jmp 0xa404
addq $0x60, %rsp
popq %rbx
retq
nopw (%rax,%rax)