// File: nmmmnu[P]HM3/main/dbadapter.h
// Function: DBAdapter<hm3::LSMTable<std::vector<hm3::DiskTable, std::allocator<hm3::DiskTable>>>, hm3::tableloader::DirectoryTableLoader>::getall[abi:cxx11](StringRef const&) const
std::vector<std::string> getall(const StringRef &key) const{
		std::vector<std::string> result;

		// reserve x2 because of hgetall
		result.reserve(maxResults_ * 2);

		const auto bit = list_.lowerBound(key);
		const auto eit = list_.end();

		size_t c = 0;
		for(auto it = bit; it != eit; ++it){
			result.push_back(it->getKey());
			result.push_back(es__(it->getVal()));

			if (++c >= maxResults_)
				break;
		}

		for(auto x : result)
			std::cout << x << '\n';

		return result;
	}

// Assembly:
subq $0x1d8, %rsp            # imm = 0x1D8
movq %rdi, 0x38(%rsp)
movq %rdi, %rax
movq %rax, 0x28(%rsp)
movq %rdi, 0x1d0(%rsp)
movq %rsi, 0x1c8(%rsp)
movq %rdx, 0x1c0(%rsp)
movq 0x1c8(%rsp), %rax
movq %rax, 0x30(%rsp)
movb $0x0, 0x1bf(%rsp)
callq 0xccf0
movq 0x30(%rsp), %rax
movq 0x38(%rsp), %rdi
movq 0x10(%rax), %rsi
addq %rsi, %rsi
callq 0xcd00
jmp 0x8eae
movq 0x30(%rsp), %rax
movq (%rax), %rsi
movq 0x1c0(%rsp), %rdx
leaq 0x168(%rsp), %rdi
callq 0xce10
jmp 0x8ecd
movq 0x30(%rsp), %rax
movq (%rax), %rsi
leaq 0x128(%rsp), %rdi
callq 0x9d70
jmp 0x8ee4
movq $0x0, 0x120(%rsp)
leaq 0xe0(%rsp), %rdi
leaq 0x168(%rsp), %rsi
callq 0xce50
jmp 0x8f07
jmp 0x8f09
leaq 0xe0(%rsp), %rdi
leaq 0x128(%rsp), %rsi
callq 0x9da0
movb %al, 0x27(%rsp)
jmp 0x8f24
movb 0x27(%rsp), %al
testb $0x1, %al
jne 0x8fa2
jmp 0x8f2e
movl $0x2, 0xdc(%rsp)
jmp 0x90f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0x9232
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0x920c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0x91ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
jmp 0x90ff
leaq 0xe0(%rsp), %rdi
callq 0xcef0
movq %rax, 0x18(%rsp)
jmp 0x8fb6
movq 0x18(%rsp), %rdi
callq 0x10e70
movq %rax, 0xa8(%rsp)
movq %rdx, 0xb0(%rsp)
leaq 0xb8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x4170
jmp 0x8fe7
movq 0x38(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0xcec0
jmp 0x8ffb
leaq 0xb8(%rsp), %rdi
callq 0x31e0
leaq 0xe0(%rsp), %rdi
callq 0xcef0
movq %rax, 0x10(%rsp)
jmp 0x901c
movq 0x10(%rsp), %rdi
callq 0x10f00
movq %rax, 0x78(%rsp)
movq %rdx, 0x80(%rsp)
leaq 0x88(%rsp), %rdi
leaq 0x78(%rsp), %rsi
callq 0xcf20
jmp 0x9047
movq 0x38(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0xcec0
jmp 0x905b
leaq 0x88(%rsp), %rdi
callq 0x31e0
movq 0x30(%rsp), %rcx
movq 0x120(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x120(%rsp)
cmpq 0x10(%rcx), %rax
jb 0x90da
movl $0x2, 0xdc(%rsp)
jmp 0x90f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
leaq 0xb8(%rsp), %rdi
callq 0x31e0
jmp 0x90ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
leaq 0x88(%rsp), %rdi
callq 0x31e0
jmp 0x90ff
jmp 0x90dc
leaq 0xe0(%rsp), %rdi
callq 0x9e10
jmp 0x90eb
jmp 0x8f09
leaq 0xe0(%rsp), %rdi
callq 0x9ee0
jmp 0x9111
leaq 0xe0(%rsp), %rdi
callq 0x9ee0
jmp 0x91ff
movq 0x38(%rsp), %rax
movq %rax, 0x70(%rsp)
movq 0x70(%rsp), %rdi
callq 0xcf90
movq %rax, 0x68(%rsp)
movq 0x70(%rsp), %rdi
callq 0xcfc0
movq %rax, 0x60(%rsp)
leaq 0x68(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0xcff0
testb $0x1, %al
jne 0x914e
jmp 0x91c6
leaq 0x68(%rsp), %rdi
callq 0xd030
movq %rax, %rsi
leaq 0x40(%rsp), %rdi
callq 0x3120
jmp 0x9167
movq 0x1ae62(%rip), %rdi     # 0x23fd0
leaq 0x40(%rsp), %rsi
callq 0x32b0
movq %rax, 0x8(%rsp)
jmp 0x917f
movq 0x8(%rsp), %rdi
movl $0xa, %esi
callq 0x3370
jmp 0x9190
leaq 0x40(%rsp), %rdi
callq 0x31e0
leaq 0x68(%rsp), %rdi
callq 0xd040
jmp 0x9139
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1b0(%rsp)
movl %eax, 0x1ac(%rsp)
leaq 0x40(%rsp), %rdi
callq 0x31e0
jmp 0x91ff
movb $0x1, 0x1bf(%rsp)
movl $0x1, 0xdc(%rsp)
leaq 0x128(%rsp), %rdi
callq 0x9ee0
leaq 0x168(%rsp), %rdi
callq 0x9ee0
testb $0x1, 0x1bf(%rsp)
jne 0x9225
jmp 0x921b
leaq 0x128(%rsp), %rdi
callq 0x9ee0
leaq 0x168(%rsp), %rdi
callq 0x9ee0
jmp 0x9232
movq 0x38(%rsp), %rdi
callq 0x9250
movq 0x28(%rsp), %rax
addq $0x1d8, %rsp            # imm = 0x1D8
retq
movq 0x38(%rsp), %rdi
callq 0x9250
movq 0x1b0(%rsp), %rdi
callq 0x34c0
nopl (%rax)