// File: /workspace/github_cpp_makefile_star2_O2/soybin[P]idyll/src/seed.cpp
// Function: seed::seed(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
seed::seed(std::string s) {
	seedParsingSuccessful = false;
	std::vector<char> startOps = { '{', '(', '<', '[' };
	std::vector<char> endOps = { '}', ')', '>', ']' };
	std::vector<char> separationOps = { '!', '@', '#', '$', '%', '^', '&', '*' };
	int n = s.size();
	std::string str = "";
	int arg = 0;
	for (int i = 0; i < n; ++i) {
		char c = s[i];
		bool end = false;
		for (int j = 0; j < 4; ++j) {
			if (c == endOps[j]) {
				end = true;
				break;
			}
		}
		if ((c == '.' || c == '-' || (c >= '0' && c <= '9')) && !end) {
			str += c;
		} else if (str.size() || end) {
			//str += c;
			double value;
			try {
				value = std::stod(str);
			} catch (...) {
				seedParsingSuccessful = false;
				return;
			}
			switch (arg) {
				case 0:
					values["GLOSSINESS_CHANCE"] = value;
					break;
				case 1:
					values["GLOSSINESS_AMOUNT"] = value;
					break;
				case 2:
					values["xcameraDirection"] = value;
					break;
				case 3:
					values["ycameraDirection"] = value;
					break;
				case 4:
					values["zcameraDirection"] = value;
					break;
				case 5:
					values["cameraDistance"] = value;
					break;
				case 6:
					values["xlightDirection"] = value;
					break;
				case 7:
					values["ylightDirection"] = value;
					break;
				case 8:
					values["zlightDirection"] = value;
					break;
				case 9:
					values["xlightColor"] = value;
					break;
				case 10:
					values["ylightColor"] = value;
					break;
				case 11:
					values["zlightColor"] = value;
					break;
				case 12:
					values["xskyColor"] = value;
					break;
				case 13:
					values["yskyColor"] = value;
					break;
				case 14:
					values["zskyColor"] = value;
					break;
				case 15:
					values["iterations"] = value;
					break;
				case 16:
					values["shadowSoftness"] = value;
					break;
				case 17:
					values["xcolor"] = value;
					break;
				case 18:
					values["ycolor"] = value;
					break;
				case 19:
					values["zcolor"] = value;
					break;
				case 20:
					values["xgradientTop"] = value;
					break;
				case 21:
					values["ygradientTop"] = value;
					break;
				case 22:
					values["zgradientTop"] = value;
					break;
				case 23:
					values["xgradientBottom"] = value;
					break;
				case 24:
					values["ygradientBottom"] = value;
					break;
				case 25:
					values["zgradientBottom"] = value;
					break;
				case 26:
					values["xshift"] = value;
					break;
				case 27:
					values["zshift"] = value;
					break;
				case 28:
					values["xrotation"] = value;
					break;
				case 29:
					values["zrotation"] = value;
					break;
				case 30:
					values["pointIterator"] = value;
					break;
			}
			++arg;
			str = "";
		}
	}
	seedParsingSuccessful = arg == 31;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movq %rsi, %r15
movq %rdi, %rbx
callq 0xaf0e
leaq 0x1388(%rbx), %rdi
movq %rbx, -0x68(%rbp)
callq 0xaf78
leaq 0x2720(%rbx), %rax
andl $0x0, 0x2720(%rbx)
andq $0x0, 0x2728(%rbx)
movq %rax, 0x2730(%rbx)
movq %rax, 0x2738(%rbx)
andq $0x0, 0x2740(%rbx)
leaq 0x2718(%rbx), %rax
movq %rax, -0x38(%rbp)
movb $0x0, 0x2710(%rbx)
leaq -0x88(%rbp), %rsi
movl $0x5b3c287b, (%rsi)     # imm = 0x5B3C287B
leaq -0xd0(%rbp), %rdi
pushq $0x4
popq %rdx
leaq -0x60(%rbp), %rcx
callq 0xaf88
leaq -0x88(%rbp), %rsi
movl $0x5d3e297d, (%rsi)     # imm = 0x5D3E297D
leaq -0xa0(%rbp), %rdi
pushq $0x4
popq %rdx
leaq -0x60(%rbp), %rcx
callq 0xaf88
movabsq $0x2a265e2524234021, %rax # imm = 0x2A265E2524234021
leaq -0x88(%rbp), %rsi
movq %rax, (%rsi)
leaq -0xb8(%rbp), %rdi
pushq $0x8
popq %rdx
leaq -0x60(%rbp), %rcx
callq 0xaf88
movq 0x8(%r15), %r13
leaq 0x291b(%rip), %rsi      # 0xc12a
leaq -0x88(%rbp), %rdi
leaq -0x60(%rbp), %rdx
callq 0x4676
xorl %r14d, %r14d
testl %r13d, %r13d
cmovlel %r14d, %r13d
leaq -0x88(%rbp), %r12
xorl %ebx, %ebx
cmpq %r13, %r14
je 0x9d84
movq (%r15), %rax
movb (%rax,%r14), %al
movq -0xa0(%rbp), %rdx
xorl %esi, %esi
movq %rsi, %rcx
cmpq $0x4, %rsi
je 0x985d
leaq 0x1(%rcx), %rsi
cmpb (%rdx,%rcx), %al
jne 0x984b
cmpq $0x4, %rcx
setb %dl
leal -0x2f(%rax), %esi
cmpb $-0x2, %sil
setb %sil
leal -0x3a(%rax), %edi
cmpb $-0xa, %dil
setb %dil
andb %sil, %dil
orb %dl, %dil
je 0x98e3
cmpq $0x4, %rcx
jb 0x9893
cmpq $0x0, -0x80(%rbp)
je 0x9d7c
movq %r12, %rdi
xorl %esi, %esi
callq 0xafbd
movsd %xmm0, -0x40(%rbp)
cmpl $0x1e, %ebx
ja 0x9d6b
movl %ebx, %eax
leaq 0x329c(%rip), %rcx      # 0xcb50
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x3088(%rip), %rsi      # 0xc94c
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
movsbl %al, %esi
movq %r12, %rdi
callq 0x3240
jmp 0x9d7c
leaq 0x31db(%rip), %rsi      # 0xcad5
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x3133(%rip), %rsi      # 0xca53
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x30d4(%rip), %rsi      # 0xca1a
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x308e(%rip), %rsi      # 0xc9fa
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x3000(%rip), %rsi      # 0xc992
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x304e(%rip), %rsi      # 0xca06
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x3004(%rip), %rsi      # 0xc9e2
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x30ba(%rip), %rsi      # 0xcabe
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x3084(%rip), %rsi      # 0xcaae
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2f20(%rip), %rsi      # 0xc970
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2fd2(%rip), %rsi      # 0xca48
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2ee5(%rip), %rsi      # 0xc981
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2f00(%rip), %rsi      # 0xc9c2
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e76(%rip), %rsi      # 0xc95e
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2f54(%rip), %rsi      # 0xca62
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2f43(%rip), %rsi      # 0xca77
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e49(%rip), %rsi      # 0xc9a3
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2f04(%rip), %rsi      # 0xca84
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e6a(%rip), %rsi      # 0xca10
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2de6(%rip), %rsi      # 0xc9b2
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e77(%rip), %rsi      # 0xca69
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2dd6(%rip), %rsi      # 0xc9ee
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2d94(%rip), %rsi      # 0xc9d2
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e8c(%rip), %rsi      # 0xcaf0
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2e07(%rip), %rsi      # 0xca91
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2dc0(%rip), %rsi      # 0xca70
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2dc8(%rip), %rsi      # 0xca9e
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2de3(%rip), %rsi      # 0xcadc
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2dca(%rip), %rsi      # 0xcae6
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
jmp 0x9d59
leaq 0x2d8f(%rip), %rsi      # 0xcace
leaq -0x60(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x4676
leaq -0x60(%rbp), %rsi
movq -0x38(%rbp), %rdi
callq 0x7838
movsd -0x40(%rbp), %xmm0
movsd %xmm0, (%rax)
leaq -0x60(%rbp), %rdi
callq 0x3100
movq %r12, %rdi
leaq 0x23b5(%rip), %rsi      # 0xc12a
callq 0x34d0
incl %ebx
incq %r14
jmp 0x9832
cmpl $0x1f, %ebx
movq -0x68(%rbp), %rax
sete 0x2710(%rax)
leaq -0x88(%rbp), %rdi
callq 0x3100
leaq -0xb8(%rbp), %rdi
callq 0xb330
leaq -0xa0(%rbp), %rdi
callq 0xb330
leaq -0xd0(%rbp), %rdi
callq 0xb330
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
jmp 0x9e8e
jmp 0x9ed8
movq %rax, %r15
leaq -0x60(%rbp), %rdi
callq 0x3100
jmp 0x9edb
jmp 0x9ed8
movq %rax, %r15
jmp 0x9ee7
movq %rax, %r15
jmp 0x9ef3
movq %rax, %r15
jmp 0x9eff
movq %rax, %r15
jmp 0x9f0b
movq %rax, %r15
jmp 0x9f14
jmp 0x9ed8
movq %rax, %rdi
callq 0x30e0
movq -0x68(%rbp), %rax
movb $0x0, 0x2710(%rax)
callq 0x33f0
jmp 0x9d92
jmp 0x9ed8
movq %rax, %r15
leaq -0x88(%rbp), %rdi
callq 0x3100
leaq -0xb8(%rbp), %rdi
callq 0xb330
leaq -0xa0(%rbp), %rdi
callq 0xb330
leaq -0xd0(%rbp), %rdi
callq 0xb330
movq -0x38(%rbp), %rdi
callq 0xb024
movq -0x68(%rbp), %rdi
callq 0xaf64
movq %r15, %rdi
callq 0x3460
nop