// File: /workspace/github_cpp_makefile_star2_O3/mh0fm4[P]SCDC/src/components/dataprov/dataprov_jobrun_relay.cc
// Function: scdc_dataprov_jobrun_relay::relay_rm(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
bool scdc_dataprov_jobrun_relay::relay_rm(const std::string &path)
{
  SCDC_TRACE("relay_rm: path: '" << path << "'");

  bool ret = scdc_dataprov_relay::relay_rm(path);

  sched_t::iterator i = sched.find(path);

  if (ret && i != sched.end())
  {
    max_parallel_jobs -= i->second.max_parallel_jobs;

    if (sched_last == i)
    {
      ++sched_last;
      sched_last_jobs = 0;
    }

    sched.erase(i);

    SCDC_TRACE("relay_put: max_parallel_jobs: " << max_parallel_jobs);
    SCDC_INFO("removing relay for path '" << path << "' (total max. parallel jobs: " << max_parallel_jobs << ")");
  }

  return ret;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x138, %rsp            # imm = 0x138
movq %rsi, %r15
movq %rdi, %r14
callq 0x21f3c
movl %eax, %ebx
leaq 0xc8(%r14), %r12
movq %r12, %rdi
movq %r15, %rsi
callq 0x5bb00
movq %rax, %r13
leaq 0xd0(%r14), %rax
cmpq %rax, %r13
setne %al
andb %bl, %al
cmpb $0x1, %al
jne 0x58ffd
movq 0x40(%r13), %rax
subq %rax, 0x128(%r14)
movq 0x130(%r14), %rdi
cmpq %r13, %rdi
jne 0x58e62
callq 0xb350
movq %rax, 0x130(%r14)
movq $0x0, 0x138(%r14)
movq %r12, %rdi
movq %r13, %rsi
callq 0x5bb8a
leaq 0x336fc(%rip), %r12     # 0x8c570
movq (%r12), %rdi
cmpq $0x0, 0x8(%rdi)
je 0x58ffd
addq $0x20, %rdi
callq 0xb7d0
movq (%r12), %rax
movq 0x8(%rax), %r12
leaq 0x120bd(%rip), %rsi     # 0x6af58
movl $0xb, %edx
movq %r12, %rdi
callq 0xb5f0
xorl %edi, %edi
callq 0xb4a0
leaq 0x28(%rsp), %rdi
movq %rax, (%rdi)
callq 0xb3a0
movl 0xc(%rax), %edx
movl 0x10(%rax), %ecx
movl $0x76c, %r8d            # imm = 0x76C
addl 0x14(%rax), %r8d
incl %ecx
movl 0x8(%rax), %r9d
movl (%rax), %r10d
movl 0x4(%rax), %r11d
leaq 0x120ab(%rip), %rsi     # 0x6af8b
leaq 0x30(%rsp), %r13
movq %r13, %rdi
xorl %eax, %eax
pushq %r10
pushq %r11
callq 0xb0d0
addq $0x10, %rsp
leaq 0x18(%rsp), %rax
movq %rax, -0x10(%rax)
movq %r13, %rdi
callq 0xb200
leaq (%rsp,%rax), %rdx
addq $0x30, %rdx
leaq 0x8(%rsp), %rbp
movq %rbp, %rdi
movq %r13, %rsi
callq 0x1be38
movq (%rbp), %rsi
movq 0x8(%rbp), %rdx
movq %r12, %rdi
callq 0xb5f0
movq %rax, %r12
leaq 0x14442(%rip), %rsi     # 0x6d37c
movl $0x17, %edx
movq %rax, %rdi
callq 0xb5f0
leaq 0x1455b(%rip), %rsi     # 0x6d4a9
movl $0x19, %edx
movq %r12, %rdi
callq 0xb5f0
movq (%r15), %rsi
movq 0x8(%r15), %rdx
movq %r12, %rdi
callq 0xb5f0
movq %rax, %r15
leaq 0x1454f(%rip), %rsi     # 0x6d4c3
movl $0x1d, %edx
movq %rax, %rdi
callq 0xb5f0
movq 0x128(%r14), %rsi
movq %r15, %rdi
callq 0xb1d0
movq %rax, %r14
leaq 0x129c5(%rip), %rsi     # 0x6b95f
movl $0x1, %edx
movq %rax, %rdi
callq 0xb5f0
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0xb4d0
movsbl %al, %esi
movq %r14, %rdi
callq 0xb050
movq %rax, %rdi
callq 0xb340
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x58fea
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb510
leaq 0x3357f(%rip), %rax     # 0x8c570
movq (%rax), %rdi
addq $0x20, %rdi
callq 0xb3b0
movl %ebx, %eax
addq $0x138, %rsp            # imm = 0x138
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x59030
movq 0x18(%rsp), %rsi
incq %rsi
callq 0xb510
movq %rbx, %rdi
callq 0xb9c0