// File: Chrom3D[P]Chrom3D/src/Constraint.cpp
// Function: Constraint::getConstraintType[abi:cxx11]()
string Constraint::getConstraintType(){

  switch(this->constType){
    case INTERACTION: return "INTERACTION";
    case PERIPHERY: return "PERIPHERY";
    case NUCLEUS: return "NUCLEUS";
    case BOUNDARY: return "BOUNDARY";
    case CENTER: return "CENTER";
    case INTERACTION_INTRA: return "INTERACTION_INTRA";
    case INTERACTION_INTER: return "INTERACTION_INTER";
    case INTERACTION_DIST: return "INTERACTION_DIST";
    case REGULAR: return "REGULAR";
    case C_T_COUNT: return "C_T_COUNT";
   }
   return "REGULAR";
}

// Assembly:
subq $0xa8, %rsp
movq %rdi, 0x60(%rsp)
movq %rdi, %rax
movq %rax, 0x68(%rsp)
movq %rdi, 0xa0(%rsp)
movq %rsi, 0x98(%rsp)
movq 0x98(%rsp), %rax
movl 0x10(%rax), %eax
movq %rax, 0x70(%rsp)
subq $0x9, %rax
ja 0x1b024
movq 0x70(%rsp), %rax
leaq 0x35882(%rip), %rcx     # 0x504fc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x97(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x58(%rsp), %rdx
leaq 0x3587e(%rip), %rsi     # 0x50524
callq 0x1b100
jmp 0x1acad
leaq 0x97(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x97(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x83(%rsp), %rdi
movq %rdi, 0x50(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x50(%rsp), %rdx
leaq 0x35828(%rip), %rsi     # 0x50530
callq 0x1b100
jmp 0x1ad0f
leaq 0x83(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x83(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x82(%rsp), %rdi
movq %rdi, 0x48(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x48(%rsp), %rdx
leaq 0x357d0(%rip), %rsi     # 0x5053a
callq 0x1b100
jmp 0x1ad71
leaq 0x82(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x82(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x81(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x40(%rsp), %rdx
leaq 0x35776(%rip), %rsi     # 0x50542
callq 0x1b100
jmp 0x1add3
leaq 0x81(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x81(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x80(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x38(%rsp), %rdx
leaq 0x3571d(%rip), %rsi     # 0x5054b
callq 0x1b100
jmp 0x1ae35
leaq 0x80(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x80(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7f(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x30(%rsp), %rdx
leaq 0x356c5(%rip), %rsi     # 0x50552
callq 0x1b100
jmp 0x1ae94
leaq 0x7f(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7f(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7e(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x28(%rsp), %rdx
leaq 0x3596f(%rip), %rsi     # 0x50855
callq 0x1b100
jmp 0x1aeed
leaq 0x7e(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7e(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7d(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x20(%rsp), %rdx
leaq 0x35625(%rip), %rsi     # 0x50564
callq 0x1b100
jmp 0x1af46
leaq 0x7d(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7d(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7c(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x18(%rsp), %rdx
leaq 0x355dd(%rip), %rsi     # 0x50575
callq 0x1b100
jmp 0x1af9f
leaq 0x7c(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7c(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7b(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x10(%rsp), %rdx
leaq 0x3558c(%rip), %rsi     # 0x5057d
callq 0x1b100
jmp 0x1aff8
leaq 0x7b(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7b(%rsp), %rdi
callq 0x8500
jmp 0x1b084
leaq 0x7a(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x8880
movq 0x60(%rsp), %rdi
movq 0x8(%rsp), %rdx
leaq 0x35531(%rip), %rsi     # 0x50575
callq 0x1b100
jmp 0x1b04b
leaq 0x7a(%rsp), %rdi
callq 0x8500
jmp 0x1b077
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x7a(%rsp), %rdi
callq 0x8500
jmp 0x1b084
movq 0x68(%rsp), %rax
addq $0xa8, %rsp
retq
movq 0x88(%rsp), %rdi
callq 0x8870
nopw %cs:(%rax,%rax)