// File: /workspace/github_cpp_makefile_star2_O2/jianxinzhou[P]Smart/./include/MyConf.h
// Function: MyConf::MyConf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
MyConf(const std::string& name)
            : infile_(name.c_str())
        {
            // 处理配置文件
            if(!infile_)
            {
                std::cout << __DATE__ << " " << __TIME__ <<" "
                          << __FILE__ << " " << __LINE__ <<": "
                          << "open failed!"  << std::endl;
                exit(-1);
            }

            std::string line ;
            while(getline(infile_, line))
            {
                std::istringstream instream(line) ;
                std::string key, value ;
                instream >> key >> value ;
                mapConf_.insert(make_pair(key, value)) ;
            }
            infile_.close();
            

            // 处理字典
            infile_.open(mapConf_["my_dict"].c_str());
            if(!infile_)
            {
                std::cout << __DATE__ << " " << __TIME__ <<" "
                          << __FILE__ << " " << __LINE__ <<": "
                          << "open failed!"  << std::endl;
                exit(-1);
            }
            while(getline(infile_, line))
            {
                std::istringstream instream(line);
                std::string word;
                int frequency;
                instream >> word >> frequency;
                vecDict_.push_back(make_pair(word, frequency));
            }
            infile_.close();
            
            // 依次设置每个单词的每个字母所对应的索引
            for(int vecDictIndex = 0 ; 
                vecDictIndex != vecDict_.size();
                ++vecDictIndex)
            {
                setIndex(vecDictIndex);
            }
        }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x238, %rsp            # imm = 0x238
movq %rdi, %rbx
movq (%rsi), %rsi
pushq $0x8
popq %rdx
callq 0x34a0
andl $0x0, 0x210(%rbx)
andq $0x0, 0x218(%rbx)
leaq 0x208(%rbx), %rax
movq %rax, -0x38(%rbp)
leaq 0x210(%rbx), %rax
movq %rax, 0x220(%rbx)
movq %rax, 0x228(%rbx)
leaq 0x238(%rbx), %rax
movq %rax, -0x40(%rbp)
andl $0x0, 0x258(%rbx)
leaq 0x258(%rbx), %rax
andq $0x0, 0x260(%rbx)
xorps %xmm0, %xmm0
movups %xmm0, 0x230(%rbx)
movups %xmm0, 0x240(%rbx)
movq %rax, 0x268(%rbx)
movq %rax, 0x270(%rbx)
andq $0x0, 0x278(%rbx)
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %rbx, -0x30(%rbp)
testb $0x5, 0x20(%rbx,%rax)
jne 0x3b55
leaq -0x90(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq -0xa0(%rbp), %r12
leaq -0x260(%rbp), %r13
leaq -0x60(%rbp), %r14
leaq -0x80(%rbp), %r15
leaq -0xe0(%rbp), %rbx
movq -0x30(%rbp), %rdi
movq %r12, %rsi
callq 0x3080
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x39f4
movq %r13, %rdi
movq %r12, %rsi
pushq $0x8
popq %rdx
callq 0x3450
leaq -0x50(%rbp), %rax
movq %rax, -0x60(%rbp)
andq $0x0, -0x58(%rbp)
xorl %ecx, %ecx
movb %cl, -0x50(%rbp)
leaq -0x70(%rbp), %rax
movq %rax, -0x80(%rbp)
andq $0x0, -0x78(%rbp)
movb %cl, -0x70(%rbp)
movq %r13, %rdi
movq %r14, %rsi
callq 0x3330
movq %rax, %rdi
movq %r15, %rsi
callq 0x3330
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x46e2
movq -0x38(%rbp), %rdi
movq %rbx, %rsi
callq 0x4478
movq %rbx, %rdi
callq 0x4292
movq %r15, %rdi
callq 0x3140
movq %r14, %rdi
callq 0x3140
movq %r13, %rdi
callq 0x3150
jmp 0x3951
movq -0x30(%rbp), %rdi
callq 0x30a0
leaq 0x5640(%rip), %rsi      # 0x9044
leaq -0x260(%rbp), %rdi
leaq -0xe0(%rbp), %rdx
callq 0x3110
leaq -0x260(%rbp), %rsi
movq -0x38(%rbp), %rdi
movq -0x30(%rbp), %rbx
callq 0x42b2
movq (%rax), %rsi
pushq $0x8
popq %rdx
movq %rbx, %rdi
callq 0x31c0
leaq -0x260(%rbp), %rdi
callq 0x3140
movq (%rbx), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x20(%rbx,%rax)
jne 0x3be9
leaq -0xa0(%rbp), %rbx
leaq -0x260(%rbp), %r14
leaq -0x60(%rbp), %r12
leaq -0x80(%rbp), %r13
leaq -0xe0(%rbp), %r15
movq -0x30(%rbp), %rdi
movq %rbx, %rsi
callq 0x3080
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x3b00
movq %r14, %rdi
movq %rbx, %rsi
pushq $0x8
popq %rdx
callq 0x3450
leaq -0x50(%rbp), %rax
movq %rax, -0x60(%rbp)
andq $0x0, -0x58(%rbp)
movb $0x0, -0x50(%rbp)
movq %r14, %rdi
movq %r12, %rsi
callq 0x3330
movq %rax, %rdi
movq %r13, %rsi
callq 0x31b0
movq %r15, %rdi
movq %r12, %rsi
callq 0x3380
movl -0x80(%rbp), %eax
movl %eax, -0xc0(%rbp)
movq -0x40(%rbp), %rdi
movq %r15, %rsi
callq 0x49da
movq %r15, %rdi
callq 0x3140
movq %r12, %rdi
callq 0x3140
movq %r14, %rdi
callq 0x3150
jmp 0x3a74
movq -0x30(%rbp), %rdi
callq 0x30a0
xorl %ebx, %ebx
pushq $0x28
popq %r14
movq -0x30(%rbp), %rdi
movq 0x240(%rdi), %rax
subq 0x238(%rdi), %rax
cqto
idivq %r14
cmpq %rax, %rbx
je 0x3b37
movl %ebx, %esi
callq 0x431c
incq %rbx
jmp 0x3b0f
leaq -0xa0(%rbp), %rdi
callq 0x3140
addq $0x238, %rsp            # imm = 0x238
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0xa474(%rip), %rdi      # 0xdfd0
leaq 0x54ac(%rip), %rsi      # 0x900f
callq 0x3270
leaq 0x56b0(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
leaq 0x549d(%rip), %rsi      # 0x901b
movq %rax, %rdi
callq 0x3270
leaq 0x5692(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
leaq 0x5488(%rip), %rsi      # 0x9024
movq %rax, %rdi
callq 0x3270
leaq 0x5674(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
pushq $0x16
popq %rsi
movq %rax, %rdi
callq 0x3470
leaq 0x5659(%rip), %rsi      # 0x921e
movq %rax, %rdi
callq 0x3270
leaq 0x5463(%rip), %rsi      # 0x9037
movq %rax, %rdi
callq 0x3270
movq %rax, %rdi
callq 0x3160
jmp 0x3c78
movq 0xa3e0(%rip), %rdi      # 0xdfd0
leaq 0x5418(%rip), %rsi      # 0x900f
callq 0x3270
leaq 0x561c(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
leaq 0x5409(%rip), %rsi      # 0x901b
movq %rax, %rdi
callq 0x3270
leaq 0x55fe(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
leaq 0x53f4(%rip), %rsi      # 0x9024
movq %rax, %rdi
callq 0x3270
leaq 0x55e0(%rip), %rsi      # 0x921f
movq %rax, %rdi
callq 0x3270
pushq $0x2b
popq %rsi
movq %rax, %rdi
callq 0x3470
leaq 0x55c5(%rip), %rsi      # 0x921e
movq %rax, %rdi
callq 0x3270
leaq 0x53cf(%rip), %rsi      # 0x9037
movq %rax, %rdi
callq 0x3270
movq %rax, %rdi
callq 0x3160
pushq $-0x1
popq %rdi
callq 0x3300
movq %rax, %r12
jmp 0x3cfa
jmp 0x3cc3
movq %rax, %r12
leaq -0x260(%rbp), %rdi
callq 0x3140
jmp 0x3cee
jmp 0x3cc3
jmp 0x3cc3
movq %rax, %r12
leaq -0xe0(%rbp), %rdi
jmp 0x3cd4
jmp 0x3cc8
jmp 0x3cc3
movq %rax, %r12
leaq -0xe0(%rbp), %rdi
callq 0x4292
jmp 0x3cd0
jmp 0x3ccd
jmp 0x3cc3
jmp 0x3cc3
movq %rax, %r12
jmp 0x3cee
movq %rax, %r12
jmp 0x3cd9
movq %rax, %r12
leaq -0x80(%rbp), %rdi
callq 0x3140
leaq -0x60(%rbp), %rdi
callq 0x3140
leaq -0x260(%rbp), %rdi
callq 0x3150
leaq -0xa0(%rbp), %rdi
callq 0x3140
movq -0x30(%rbp), %rbx
leaq 0x250(%rbx), %rdi
callq 0x527e
movq -0x40(%rbp), %rdi
callq 0x443e
movq -0x38(%rbp), %rdi
callq 0x5310
movq %rbx, %rdi
callq 0x30c0
movq %r12, %rdi
callq 0x3480