// File: /workspace/github_c_makefile_star2_O0/baskerville[P]bspwm/src/rule.c
// Function: parse_key_value
void parse_key_value(char *key, char *value, rule_consequence_t *csq)
{
	bool v;
	if (streq("monitor", key)) {
		snprintf(csq->monitor_desc, sizeof(csq->monitor_desc), "%s", value);
	} else if (streq("desktop", key)) {
		snprintf(csq->desktop_desc, sizeof(csq->desktop_desc), "%s", value);
	} else if (streq("node", key)) {
		snprintf(csq->node_desc, sizeof(csq->node_desc), "%s", value);
	} else if (streq("split_dir", key)) {
		direction_t dir;
		if (parse_direction(value, &dir)) {
			SET_CSQ_SPLIT_DIR(dir);
		}
	} else if (streq("state", key)) {
		client_state_t cst;
		if (parse_client_state(value, &cst)) {
			SET_CSQ_STATE(cst);
		}
	} else if (streq("layer", key)) {
		stack_layer_t lyr;
		if (parse_stack_layer(value, &lyr)) {
			SET_CSQ_LAYER(lyr);
		}
	} else if (streq("split_ratio", key)) {
		double rat;
		if (sscanf(value, "%lf", &rat) == 1 && rat > 0 && rat < 1) {
			csq->split_ratio = rat;
		}
	} else if (streq("rectangle", key)) {
		if (csq->rect == NULL) {
			csq->rect = calloc(1, sizeof(xcb_rectangle_t));
		}
		if (!parse_rectangle(value, csq->rect)) {
			free(csq->rect);
			csq->rect = NULL;
		}
	} else if (streq("honor_size_hints", key)) {
		if (!parse_honor_size_hints_mode(value, &csq->honor_size_hints)) {
			csq->honor_size_hints = HONOR_SIZE_HINTS_DEFAULT;
		}
	} else if (parse_bool(value, &v)) {
		if (streq("hidden", key)) {
			csq->hidden = v;
		}
#define SETCSQ(name) \
		else if (streq(#name, key)) { \
			csq->name = v; \
		}
		SETCSQ(sticky)
		SETCSQ(private)
		SETCSQ(locked)
		SETCSQ(marked)
		SETCSQ(center)
		SETCSQ(follow)
		SETCSQ(manage)
		SETCSQ(focus)
		SETCSQ(border)
#undef SETCSQ
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rsi
leaq 0x40dd(%rip), %rdi      # 0x2e3ac
callq 0x4800
cmpl $0x0, %eax
jne 0x2a300
movq -0x18(%rbp), %rdi
addq $0x300, %rdi            # imm = 0x300
movq -0x10(%rbp), %rcx
movl $0x100, %esi            # imm = 0x100
leaq 0x2dfc(%rip), %rdx      # 0x2d0f0
movb $0x0, %al
callq 0x4120
jmp 0x2a7ad
movq -0x8(%rbp), %rsi
leaq 0x40b4(%rip), %rdi      # 0x2e3bf
callq 0x4800
cmpl $0x0, %eax
jne 0x2a33c
movq -0x18(%rbp), %rdi
addq $0x400, %rdi            # imm = 0x400
movq -0x10(%rbp), %rcx
movl $0x100, %esi            # imm = 0x100
leaq 0x2dc0(%rip), %rdx      # 0x2d0f0
movb $0x0, %al
callq 0x4120
jmp 0x2a7ab
movq -0x8(%rbp), %rsi
leaq 0x408b(%rip), %rdi      # 0x2e3d2
callq 0x4800
cmpl $0x0, %eax
jne 0x2a378
movq -0x18(%rbp), %rdi
addq $0x500, %rdi            # imm = 0x500
movq -0x10(%rbp), %rcx
movl $0x100, %esi            # imm = 0x100
leaq 0x2d84(%rip), %rdx      # 0x2d0f0
movb $0x0, %al
callq 0x4120
jmp 0x2a7a9
movq -0x8(%rbp), %rsi
leaq 0x53ae(%rip), %rdi      # 0x2f731
callq 0x4800
cmpl $0x0, %eax
jne 0x2a3e4
movq -0x10(%rbp), %rdi
leaq -0x20(%rbp), %rsi
callq 0x20bf0
testb $0x1, %al
jne 0x2a3a0
jmp 0x2a3df
jmp 0x2a3a2
movq -0x18(%rbp), %rax
cmpq $0x0, 0x600(%rax)
jne 0x2a3cd
movl $0x1, %edi
movl $0x4, %esi
callq 0x4890
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x600(%rax)
movl -0x20(%rbp), %ecx
movq -0x18(%rbp), %rax
movq 0x600(%rax), %rax
movl %ecx, (%rax)
jmp 0x2a3df
jmp 0x2a7a7
movq -0x8(%rbp), %rsi
leaq 0x3b3d(%rip), %rdi      # 0x2df2c
callq 0x4800
cmpl $0x0, %eax
jne 0x2a450
movq -0x10(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x20a90
testb $0x1, %al
jne 0x2a40c
jmp 0x2a44b
jmp 0x2a40e
movq -0x18(%rbp), %rax
cmpq $0x0, 0x618(%rax)
jne 0x2a439
movl $0x1, %edi
movl $0x4, %esi
callq 0x4890
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x618(%rax)
movl -0x24(%rbp), %ecx
movq -0x18(%rbp), %rax
movq 0x618(%rax), %rax
movl %ecx, (%rax)
jmp 0x2a44b
jmp 0x2a7a5
movq -0x8(%rbp), %rsi
leaq 0x3aa4(%rip), %rdi      # 0x2deff
callq 0x4800
cmpl $0x0, %eax
jne 0x2a4bc
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x20b50
testb $0x1, %al
jne 0x2a478
jmp 0x2a4b7
jmp 0x2a47a
movq -0x18(%rbp), %rax
cmpq $0x0, 0x610(%rax)
jne 0x2a4a5
movl $0x1, %edi
movl $0x4, %esi
callq 0x4890
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x610(%rax)
movl -0x28(%rbp), %ecx
movq -0x18(%rbp), %rax
movq 0x610(%rax), %rax
movl %ecx, (%rax)
jmp 0x2a4b7
jmp 0x2a7a3
movq -0x8(%rbp), %rsi
leaq 0x43d6(%rip), %rdi      # 0x2e89d
callq 0x4800
cmpl $0x0, %eax
jne 0x2a51f
movq -0x10(%rbp), %rdi
leaq 0x3af1(%rip), %rsi      # 0x2dfcd
leaq -0x30(%rbp), %rdx
movb $0x0, %al
callq 0x41c0
cmpl $0x1, %eax
jne 0x2a51a
movsd -0x30(%rbp), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x2a51a
movsd 0x32ae(%rip), %xmm0     # 0x2d7b0
ucomisd -0x30(%rbp), %xmm0
jbe 0x2a51a
movsd -0x30(%rbp), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x608(%rax)
jmp 0x2a7a1
movq -0x8(%rbp), %rsi
leaq 0x3dd2(%rip), %rdi      # 0x2e2fc
callq 0x4800
cmpl $0x0, %eax
jne 0x2a59b
movq -0x18(%rbp), %rax
cmpq $0x0, 0x630(%rax)
jne 0x2a55f
movl $0x1, %edi
movl $0x8, %esi
callq 0x4890
movq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x630(%rax)
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rax
movq 0x630(%rax), %rsi
callq 0x21830
testb $0x1, %al
jne 0x2a596
movq -0x18(%rbp), %rax
movq 0x630(%rax), %rdi
callq 0x4450
movq -0x18(%rbp), %rax
movq $0x0, 0x630(%rax)
jmp 0x2a79f
movq -0x8(%rbp), %rsi
leaq 0x422a(%rip), %rdi      # 0x2e7d0
callq 0x4800
cmpl $0x0, %eax
jne 0x2a5db
movq -0x10(%rbp), %rdi
movq -0x18(%rbp), %rsi
addq $0x620, %rsi            # imm = 0x620
callq 0x21420
testb $0x1, %al
jne 0x2a5d6
movq -0x18(%rbp), %rax
movl $0x4, 0x620(%rax)
jmp 0x2a79d
movq -0x10(%rbp), %rdi
leaq -0x19(%rbp), %rsi
callq 0x208b0
testb $0x1, %al
jne 0x2a5f1
jmp 0x2a79b
movq -0x8(%rbp), %rsi
leaq 0x489e(%rip), %rdi      # 0x2ee9a
callq 0x4800
cmpl $0x0, %eax
jne 0x2a61b
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x624(%rax)
jmp 0x2a799
movq -0x8(%rbp), %rsi
leaq 0x487c(%rip), %rdi      # 0x2eea2
callq 0x4800
cmpl $0x0, %eax
jne 0x2a645
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x625(%rax)
jmp 0x2a797
movq -0x8(%rbp), %rsi
leaq 0x485a(%rip), %rdi      # 0x2eeaa
callq 0x4800
cmpl $0x0, %eax
jne 0x2a66f
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x626(%rax)
jmp 0x2a795
movq -0x8(%rbp), %rsi
leaq 0x4839(%rip), %rdi      # 0x2eeb3
callq 0x4800
cmpl $0x0, %eax
jne 0x2a699
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x627(%rax)
jmp 0x2a793
movq -0x8(%rbp), %rsi
leaq 0x4817(%rip), %rdi      # 0x2eebb
callq 0x4800
cmpl $0x0, %eax
jne 0x2a6c3
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x628(%rax)
jmp 0x2a791
movq -0x8(%rbp), %rsi
leaq 0x506d(%rip), %rdi      # 0x2f73b
callq 0x4800
cmpl $0x0, %eax
jne 0x2a6ed
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x629(%rax)
jmp 0x2a78f
movq -0x8(%rbp), %rsi
leaq 0x37bd(%rip), %rdi      # 0x2deb5
callq 0x4800
cmpl $0x0, %eax
jne 0x2a714
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x62a(%rax)
jmp 0x2a78d
movq -0x8(%rbp), %rsi
leaq 0x5023(%rip), %rdi      # 0x2f742
callq 0x4800
cmpl $0x0, %eax
jne 0x2a73b
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x62b(%rax)
jmp 0x2a78b
movq -0x8(%rbp), %rsi
leaq 0x371f(%rip), %rdi      # 0x2de65
callq 0x4800
cmpl $0x0, %eax
jne 0x2a762
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x62c(%rax)
jmp 0x2a789
movq -0x8(%rbp), %rsi
leaq 0x4fdc(%rip), %rdi      # 0x2f749
callq 0x4800
cmpl $0x0, %eax
jne 0x2a787
movb -0x19(%rbp), %cl
movq -0x18(%rbp), %rax
andb $0x1, %cl
movb %cl, 0x62d(%rax)
jmp 0x2a789
jmp 0x2a78b
jmp 0x2a78d
jmp 0x2a78f
jmp 0x2a791
jmp 0x2a793
jmp 0x2a795
jmp 0x2a797
jmp 0x2a799
jmp 0x2a79b
jmp 0x2a79d
jmp 0x2a79f
jmp 0x2a7a1
jmp 0x2a7a3
jmp 0x2a7a5
jmp 0x2a7a7
jmp 0x2a7a9
jmp 0x2a7ab
jmp 0x2a7ad
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)