// File: mhe[P]raytracerframework_cpp/yaml/exp.cpp
// Function: YAML::Exp::Escape[abi:cxx11](YAML::Stream&)
std::string Escape(Stream& in)
		{
			// eat slash
			char escape = in.get();

			// switch on escape character
			char ch = in.get();

			// first do single quote, since it's easier
			if(escape == '\'' && ch == '\'')
				return "\'";

			// now do the slash (we're not gonna check if it's a slash - you better pass one!)
			switch(ch) {
				case '0': return "\0";
				case 'a': return "\x07";
				case 'b': return "\x08";
				case 't':
                case '\t': return "\x09";
				case 'n': return "\x0A";
				case 'v': return "\x0B";
				case 'f': return "\x0C";
				case 'r': return "\x0D";
				case 'e': return "\x1B";
				case ' ': return "\x20";
				case '\"': return "\"";
				case '\'': return "\'";
				case '\\': return "\\";
				case 'N': return "\xC2\x85";  // NEL (#x85)
				case '_': return "\xC2\xA0";  // #xA0
				case 'L': return "\xE2\x80\xA8";  // LS (#x2028)
				case 'P': return "\xE2\x80\xA9";  // PS (#x2029)
				case 'x': return Escape(in, 2);
				case 'u': return Escape(in, 4);
				case 'U': return Escape(in, 8);
			}

			std::stringstream msg;
			throw ParserException(in.line, in.column, ErrorMsg::INVALID_ESCAPE + ch);
		}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2a0, %rsp            # imm = 0x2A0
movq %rdi, -0x1f8(%rbp)
movq %rdi, %rax
movq %rax, -0x1f0(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
callq 0x4a890
movb %al, -0x11(%rbp)
movq -0x10(%rbp), %rdi
callq 0x4a890
movb %al, -0x12(%rbp)
movsbl -0x11(%rbp), %eax
cmpl $0x27, %eax
jne 0x339d2
movsbl -0x12(%rbp), %eax
cmpl $0x27, %eax
jne 0x339d2
leaq -0x13(%rbp), %rdi
movq %rdi, -0x200(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x200(%rbp), %rdx
leaq 0x18404(%rip), %rsi     # 0x4bda7
callq 0x20460
jmp 0x339aa
leaq -0x13(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x13(%rbp), %rdi
callq 0x5420
jmp 0x340d6
movsbl -0x12(%rbp), %eax
addl $-0x9, %eax
movl %eax, %ecx
movq %rcx, -0x208(%rbp)
subl $0x6f, %eax
ja 0x33fe4
movq -0x208(%rbp), %rax
leaq 0x181bb(%rip), %rcx     # 0x4bbb4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0x25(%rbp), %rdi
movq %rdi, -0x210(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x210(%rbp), %rdx
leaq 0x1834d(%rip), %rsi     # 0x4bd74
callq 0x20460
jmp 0x33a2e
leaq -0x25(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x25(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x26(%rbp), %rdi
movq %rdi, -0x218(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x218(%rbp), %rdx
leaq 0x18331(%rip), %rsi     # 0x4bdac
callq 0x20460
jmp 0x33a82
leaq -0x26(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x26(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x27(%rbp), %rdi
movq %rdi, -0x220(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x220(%rbp), %rdx
leaq 0x182df(%rip), %rsi     # 0x4bdae
callq 0x20460
jmp 0x33ad6
leaq -0x27(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x27(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x28(%rbp), %rdi
movq %rdi, -0x228(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x228(%rbp), %rdx
leaq 0x1828d(%rip), %rsi     # 0x4bdb0
callq 0x20460
jmp 0x33b2a
leaq -0x28(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x29(%rbp), %rdi
movq %rdi, -0x230(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x230(%rbp), %rdx
leaq 0x18200(%rip), %rsi     # 0x4bd77
callq 0x20460
jmp 0x33b7e
leaq -0x29(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x29(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2a(%rbp), %rdi
movq %rdi, -0x238(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x238(%rbp), %rdx
leaq 0x181e7(%rip), %rsi     # 0x4bdb2
callq 0x20460
jmp 0x33bd2
leaq -0x2a(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2a(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2b(%rbp), %rdi
movq %rdi, -0x240(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x240(%rbp), %rdx
leaq 0x18195(%rip), %rsi     # 0x4bdb4
callq 0x20460
jmp 0x33c26
leaq -0x2b(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2b(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2c(%rbp), %rdi
movq %rdi, -0x248(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x248(%rbp), %rdx
leaq 0x18143(%rip), %rsi     # 0x4bdb6
callq 0x20460
jmp 0x33c7a
leaq -0x2c(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2c(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2d(%rbp), %rdi
movq %rdi, -0x250(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x250(%rbp), %rdx
leaq 0x180f1(%rip), %rsi     # 0x4bdb8
callq 0x20460
jmp 0x33cce
leaq -0x2d(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2d(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2e(%rbp), %rdi
movq %rdi, -0x258(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x258(%rbp), %rdx
leaq 0x18167(%rip), %rsi     # 0x4be82
callq 0x20460
jmp 0x33d22
leaq -0x2e(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2e(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x2f(%rbp), %rdi
movq %rdi, -0x260(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x260(%rbp), %rdx
leaq 0x1804b(%rip), %rsi     # 0x4bdba
callq 0x20460
jmp 0x33d76
leaq -0x2f(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x2f(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x30(%rbp), %rdi
movq %rdi, -0x268(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x268(%rbp), %rdx
leaq 0x17fe4(%rip), %rsi     # 0x4bda7
callq 0x20460
jmp 0x33dca
leaq -0x30(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x31(%rbp), %rdi
movq %rdi, -0x270(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x270(%rbp), %rdx
leaq 0x18190(%rip), %rsi     # 0x4bfa7
callq 0x20460
jmp 0x33e1e
leaq -0x31(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x31(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x32(%rbp), %rdi
movq %rdi, -0x278(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x278(%rbp), %rdx
leaq 0x17f51(%rip), %rsi     # 0x4bdbc
callq 0x20460
jmp 0x33e72
leaq -0x32(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x32(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x33(%rbp), %rdi
movq %rdi, -0x280(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x280(%rbp), %rdx
leaq 0x17f00(%rip), %rsi     # 0x4bdbf
callq 0x20460
jmp 0x33ec6
leaq -0x33(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x33(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x34(%rbp), %rdi
movq %rdi, -0x288(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x288(%rbp), %rdx
leaq 0x17eaf(%rip), %rsi     # 0x4bdc2
callq 0x20460
jmp 0x33f1a
leaq -0x34(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x34(%rbp), %rdi
callq 0x5420
jmp 0x340d6
leaq -0x35(%rbp), %rdi
movq %rdi, -0x290(%rbp)
callq 0x56d0
movq -0x1f8(%rbp), %rdi
movq -0x290(%rbp), %rdx
leaq 0x17e5f(%rip), %rsi     # 0x4bdc6
callq 0x20460
jmp 0x33f6e
leaq -0x35(%rbp), %rdi
callq 0x5420
jmp 0x340c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x35(%rbp), %rdi
callq 0x5420
jmp 0x340d6
movq -0x1f8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x2, %edx
callq 0x33330
jmp 0x340c6
movq -0x1f8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x4, %edx
callq 0x33330
jmp 0x340c6
movq -0x1f8(%rbp), %rdi
movq -0x10(%rbp), %rsi
movl $0x8, %edx
callq 0x33330
jmp 0x340c6
leaq -0x1c0(%rbp), %rdi
callq 0x52a0
movb $0x1, -0x1e1(%rbp)
movl $0x30, %edi
callq 0x51b0
movq %rax, -0x2a0(%rbp)
movq -0x10(%rbp), %rax
movl 0x8(%rax), %ecx
movl %ecx, -0x298(%rbp)
movl 0xc(%rax), %eax
movl %eax, -0x294(%rbp)
movsbl -0x12(%rbp), %edx
leaq 0x35abf(%rip), %rsi     # 0x69ae8
leaq -0x1e0(%rbp), %rdi
callq 0x34270
jmp 0x34037
movl -0x294(%rbp), %edx
movl -0x298(%rbp), %esi
movq -0x2a0(%rbp), %rdi
leaq -0x1e0(%rbp), %rcx
callq 0x340e0
jmp 0x34058
movq -0x2a0(%rbp), %rdi
movb $0x0, -0x1e1(%rbp)
leaq 0x33593(%rip), %rsi     # 0x67600
leaq 0xbc(%rip), %rdx        # 0x34130
callq 0x5690
jmp 0x340df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
jmp 0x340a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x20(%rbp)
movl %eax, -0x24(%rbp)
leaq -0x1e0(%rbp), %rdi
callq 0x5788
testb $0x1, -0x1e1(%rbp)
jne 0x340ac
jmp 0x340b8
movq -0x2a0(%rbp), %rdi
callq 0x52c0
leaq -0x1c0(%rbp), %rdi
callq 0x52d0
jmp 0x340d6
movq -0x1f0(%rbp), %rax
addq $0x2a0, %rsp            # imm = 0x2A0
popq %rbp
retq
movq -0x20(%rbp), %rdi
callq 0x56c0
nop