// File: /workspace/github_c_makefile_star2_O1/baskerville[P]bspwm/src/messages.c
// Function: get_setting
void get_setting(coordinates_t loc, char *name, FILE* rsp)
{
	if (streq("split_ratio", name)) {
		fprintf(rsp, "%lf", split_ratio);
	} else if (streq("border_width", name)) {
		if (loc.node != NULL) {
			for (node_t *n = first_extrema(loc.node); n != NULL; n = next_leaf(n, loc.node)) {
				if (n->client != NULL) {
					fprintf(rsp, "%u", n->client->border_width);
					break;
				}
			}
		} else if (loc.desktop != NULL) {
			fprintf(rsp, "%u", loc.desktop->border_width);
		} else if (loc.monitor != NULL) {
			fprintf(rsp, "%u", loc.monitor->border_width);
		} else {
			fprintf(rsp, "%u", border_width);
		}
	} else if (streq("window_gap", name)) {
		if (loc.desktop != NULL) {
			fprintf(rsp, "%i", loc.desktop->window_gap);
		} else if (loc.monitor != NULL) {
			fprintf(rsp, "%i", loc.monitor->window_gap);
		} else {
			fprintf(rsp, "%i", window_gap);
		}
#define GET_DEF_MON_DESK(k) \
		if (loc.desktop != NULL) { \
			fprintf(rsp, "%i", loc.desktop->k); \
		} else if (loc.monitor != NULL) { \
			fprintf(rsp, "%i", loc.monitor->k); \
		} else { \
			fprintf(rsp, "%i", k); \
		}
	} else if (streq("top_padding", name)) {
		GET_DEF_MON_DESK(padding.top)
	} else if (streq("right_padding", name)) {
		GET_DEF_MON_DESK(padding.right)
	} else if (streq("bottom_padding", name)) {
		GET_DEF_MON_DESK(padding.bottom)
	} else if (streq("left_padding", name)) {
		GET_DEF_MON_DESK(padding.left)
#undef GET_DEF_MON_DESK
	} else if (streq("top_monocle_padding", name)) {
		fprintf(rsp, "%i", monocle_padding.top);
	} else if (streq("right_monocle_padding", name)) {
		fprintf(rsp, "%i", monocle_padding.right);
	} else if (streq("bottom_monocle_padding", name)) {
		fprintf(rsp, "%i", monocle_padding.bottom);
	} else if (streq("left_monocle_padding", name)) {
		fprintf(rsp, "%i", monocle_padding.left);
	} else if (streq("external_rules_command", name)) {
		fprintf(rsp, "%s", external_rules_command);
	} else if (streq("status_prefix", name)) {
		fprintf(rsp, "%s", status_prefix);
	} else if (streq("initial_polarity", name)) {
		fprintf(rsp, "%s", CHILD_POL_STR(initial_polarity));
	} else if (streq("automatic_scheme", name)) {
		fprintf(rsp, "%s", AUTO_SCM_STR(automatic_scheme));
	} else if (streq("honor_size_hints", name)) {
		fprintf(rsp, "%s", HSH_MODE_STR(honor_size_hints));
	} else if (streq("mapping_events_count", name)) {
		fprintf(rsp, "%" PRIi8, mapping_events_count);
	} else if (streq("directional_focus_tightness", name)) {
		fprintf(rsp, "%s", TIGHTNESS_STR(directional_focus_tightness));
	} else if (streq("ignore_ewmh_fullscreen", name)) {
		print_ignore_request(ignore_ewmh_fullscreen, rsp);
	} else if (streq("pointer_modifier", name)) {
		print_modifier_mask(pointer_modifier, rsp);
	} else if (streq("click_to_focus", name)) {
		print_button_index(click_to_focus, rsp);
	} else if (streq("pointer_motion_interval", name)) {
		fprintf(rsp, "%u", pointer_motion_interval);
	} else if (streq("pointer_action1", name) ||
	           streq("pointer_action2", name) ||
	           streq("pointer_action3", name)) {
		int index = name[14] - '1';
		print_pointer_action(pointer_actions[index], rsp);
#define GET_COLOR(s) \
	} else if (streq(#s, name)) { \
		fprintf(rsp, "%s", s);
	GET_COLOR(normal_border_color)
	GET_COLOR(active_border_color)
	GET_COLOR(focused_border_color)
	GET_COLOR(presel_feedback_color)
#undef GET_COLOR
#define GET_BOOL(s) \
	} else if (streq(#s, name)) { \
		fprintf(rsp, "%s", BOOL_STR(s));
	GET_BOOL(presel_feedback)
	GET_BOOL(borderless_monocle)
	GET_BOOL(gapless_monocle)
	GET_BOOL(single_monocle)
	GET_BOOL(borderless_singleton)
	GET_BOOL(swallow_first_click)
	GET_BOOL(focus_follows_pointer)
	GET_BOOL(pointer_follows_focus)
	GET_BOOL(pointer_follows_monitor)
	GET_BOOL(ignore_ewmh_focus)
	GET_BOOL(ignore_ewmh_struts)
	GET_BOOL(center_pseudo_tiled)
	GET_BOOL(removal_adjustment)
	GET_BOOL(remove_disabled_monitors)
	GET_BOOL(remove_unplugged_monitors)
	GET_BOOL(merge_overlapping_monitors)
#undef GET_BOOL
	} else {
		fail(rsp, "config: Unknown setting: '%s'.\n", name);
		return;
	}
	fprintf(rsp, "\n");
}

void handle_failure(int code, char *src, char *val, FILE *rsp)
{
	switch (code) {
		case SELECTOR_BAD_DESCRIPTOR:
			fail(rsp, "%s: Invalid descriptor found in '%s'.\n", src, val);
			break;
		case SELECTOR_BAD_MODIFIERS:
			fail(rsp, "%s: Invalid modifier found in '%s'.\n", src, val);
			break;
		case SELECTOR_INVALID:
			fail(rsp, "");
			break;
	}
}

void fail(FILE *rsp, char *fmt, ...)
{
	fprintf(rsp, FAILURE_MESSAGE);
	va_list ap;
	va_start(ap, fmt);
	vfprintf(rsp, fmt, ap);
	va_end(ap);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0xa531(%rip), %rdi      # 0x2070d
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x165fe
leaq 0x20(%rsp), %r15
leaq 0xa416(%rip), %rdi      # 0x2060e
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1661f
leaq 0xa442(%rip), %rdi      # 0x20651
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1664f
leaq 0xa436(%rip), %rdi      # 0x2065c
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16660
leaq 0xa42b(%rip), %rdi      # 0x20668
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16682
leaq 0xa422(%rip), %rdi      # 0x20676
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x166ae
leaq 0xa41a(%rip), %rdi      # 0x20685
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x166dc
leaq 0xa410(%rip), %rdi      # 0x20692
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16706
leaq 0xa40d(%rip), %rdi      # 0x206a6
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16739
leaq 0xa40c(%rip), %rdi      # 0x206bc
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1675b
leaq 0xa40c(%rip), %rdi      # 0x206d3
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16770
leaq 0xa40a(%rip), %rdi      # 0x206e8
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x167a6
leaq 0xa40a(%rip), %rdi      # 0x206ff
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x167af
leaq 0xa460(%rip), %rdi      # 0x2076c
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x167b8
leaq 0xa45a(%rip), %rdi      # 0x2077d
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x167d6
leaq 0xa306(%rip), %rdi      # 0x20640
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1680b
leaq 0xa43d(%rip), %rdi      # 0x2078e
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16827
leaq 0xa440(%rip), %rdi      # 0x207a8
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16836
leaq 0xa445(%rip), %rdi      # 0x207c4
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1686e
leaq 0xa445(%rip), %rdi      # 0x207db
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16884
leaq 0xa487(%rip), %rdi      # 0x20834
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1689b
leaq 0xa428(%rip), %rdi      # 0x207ec
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168d2
leaq 0xa429(%rip), %rdi      # 0x20804
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168b2
leaq 0xa422(%rip), %rdi      # 0x20814
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168b2
leaq 0xa41b(%rip), %rdi      # 0x20824
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168b2
leaq 0xa2f9(%rip), %rdi      # 0x20719
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168de
leaq 0xa2f6(%rip), %rdi      # 0x2072d
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168ea
leaq 0xa2f3(%rip), %rdi      # 0x20741
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x168f6
leaq 0xa2f1(%rip), %rdi      # 0x20756
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16902
leaq 0x9768(%rip), %rdi      # 0x1fbe4
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1690e
leaq 0xa3d5(%rip), %rdi      # 0x20868
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1691a
leaq 0xa3d1(%rip), %rdi      # 0x2087b
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16923
leaq 0xa382(%rip), %rdi      # 0x20843
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1692c
leaq 0xa3b3(%rip), %rdi      # 0x2088b
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16935
leaq 0xa3b1(%rip), %rdi      # 0x208a0
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1693e
leaq 0xa34c(%rip), %rdi      # 0x20852
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16947
leaq 0xa397(%rip), %rdi      # 0x208b4
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16950
leaq 0xa396(%rip), %rdi      # 0x208ca
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16959
leaq 0xa397(%rip), %rdi      # 0x208e2
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16962
leaq 0xa392(%rip), %rdi      # 0x208f4
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1696b
leaq 0xa38e(%rip), %rdi      # 0x20907
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16974
leaq 0xa38b(%rip), %rdi      # 0x2091b
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1697d
leaq 0xa387(%rip), %rdi      # 0x2092e
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16986
leaq 0xa389(%rip), %rdi      # 0x20947
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x1698f
leaq 0xa38c(%rip), %rdi      # 0x20961
movq %r14, %rsi
callq 0x4820
testl %eax, %eax
je 0x16998
leaq 0xa390(%rip), %rsi      # 0x2097c
movq %rbx, %rdi
movq %r14, %rdx
xorl %eax, %eax
popq %rbx
popq %r14
popq %r15
jmp 0x11852
leaq 0x137c3(%rip), %rax     # 0x29dc8
movsd (%rax), %xmm0
leaq 0x982d(%rip), %rsi      # 0x1fe3d
movq %rbx, %rdi
movb $0x1, %al
callq 0x4a30
jmp 0x16794
movq 0x10(%r15), %r14
testq %r14, %r14
je 0x16671
movq %r14, %rdi
callq 0x92fd
testq %rax, %rax
je 0x16794
movq 0x48(%rax), %rcx
testq %rcx, %rcx
jne 0x166a3
movq %rax, %rdi
movq %r14, %rsi
callq 0x9363
jmp 0x16630
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x16693
movl 0x60(%rax), %edx
jmp 0x16783
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x166bf
movl 0x50(%rax), %edx
jmp 0x16783
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x166cf
movl 0x64(%rax), %edx
jmp 0x16730
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x166ed
movl 0x54(%rax), %edx
jmp 0x16783
movq (%r15), %rax
testq %rax, %rax
je 0x166fd
movl 0x44(%rax), %edx
jmp 0x16783
movl 0x300(%rcx), %edx
jmp 0x16730
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x1670f
movl 0x58(%rax), %edx
jmp 0x16783
movq (%r15), %rax
testq %rax, %rax
je 0x1671c
movl 0x30(%rax), %edx
jmp 0x16783
movq (%r15), %rax
testq %rax, %rax
je 0x16727
movl 0x48(%rax), %edx
jmp 0x16730
movq 0x8(%r15), %rax
testq %rax, %rax
je 0x16742
movl 0x5c(%rax), %edx
jmp 0x16783
movq (%r15), %rax
testq %rax, %rax
je 0x1674f
movl 0x34(%rax), %edx
jmp 0x16783
leaq 0x136bc(%rip), %rax     # 0x29dc0
jmp 0x16723
leaq 0x136a3(%rip), %rax     # 0x29db0
jmp 0x16723
movq (%r15), %rax
testq %rax, %rax
je 0x16764
movl 0x38(%rax), %edx
jmp 0x16783
leaq 0x1367d(%rip), %rax     # 0x29da0
movl (%rax), %edx
jmp 0x16783
leaq 0x13696(%rip), %rax     # 0x29dc4
movl (%rax), %edx
leaq 0x9ee4(%rip), %rsi      # 0x2061b
jmp 0x1678a
leaq 0x13670(%rip), %rax     # 0x29db0
jmp 0x16756
movq (%r15), %rax
testq %rax, %rax
je 0x16779
movl 0x3c(%rax), %edx
jmp 0x16783
leaq 0x1364a(%rip), %rax     # 0x29da0
movl 0x4(%rax), %edx
jmp 0x16783
leaq 0x1364e(%rip), %rax     # 0x29db0
jmp 0x1676b
leaq 0x13635(%rip), %rax     # 0x29da0
movl 0x8(%rax), %edx
jmp 0x16783
leaq 0x13639(%rip), %rax     # 0x29db0
jmp 0x16780
leaq 0x13620(%rip), %rax     # 0x29da0
movl 0xc(%rax), %edx
leaq 0xa9e1(%rip), %rsi      # 0x2116b
movq %rbx, %rdi
xorl %eax, %eax
callq 0x4a30
movl $0xa, %edi
movq %rbx, %rsi
popq %rbx
popq %r14
popq %r15
jmp 0x4420
leaq 0x12ff3(%rip), %rdi     # 0x297a0
jmp 0x16801
leaq 0x130ea(%rip), %rdi     # 0x298a0
jmp 0x16801
leaq 0x13611(%rip), %rax     # 0x29dd0
cmpl $0x0, (%rax)
leaq 0xa1d3(%rip), %rax      # 0x2099c
leaq 0xa1d8(%rip), %rdi      # 0x209a8
cmoveq %rax, %rdi
jmp 0x16801
leaq 0x135f7(%rip), %rax     # 0x29dd4
movl (%rax), %eax
cmpl $0x1, %eax
leaq 0xa1d9(%rip), %rcx      # 0x209c2
leaq 0xa1dc(%rip), %rdx      # 0x209cc
cmoveq %rcx, %rdx
testl %eax, %eax
leaq 0xa1b8(%rip), %rdi      # 0x209b5
cmovneq %rdx, %rdi
movq %rbx, %rsi
callq 0x4670
jmp 0x16794
leaq 0x135f6(%rip), %rax     # 0x29e08
movl (%rax), %eax
cmpl $0x2, %eax
je 0x16850
cmpl $0x3, %eax
jne 0x16859
leaq 0xa47c(%rip), %rdi      # 0x20ca1
jmp 0x16801
leaq 0x135c6(%rip), %rax     # 0x29df4
movsbl (%rax), %edx
jmp 0x16783
leaq 0x1359f(%rip), %rax     # 0x29ddc
cmpl $0x1, (%rax)
leaq 0xa197(%rip), %rax      # 0x209de
leaq 0xa50d(%rip), %rdi      # 0x20d5b
jmp 0x167d0
leaq 0xa49b(%rip), %rdi      # 0x20cf2
jmp 0x16801
testl %eax, %eax
leaq 0xa176(%rip), %rax      # 0x209d8
leaq 0xa16a(%rip), %rdi      # 0x209d3
jmp 0x167d0
leaq 0x1358b(%rip), %rax     # 0x29e00
movl (%rax), %edi
movq %rbx, %rsi
callq 0x198d9
jmp 0x16794
leaq 0x13555(%rip), %rax     # 0x29de0
movzwl (%rax), %edi
movq %rbx, %rsi
callq 0x1995d
jmp 0x16794
leaq 0x1355b(%rip), %rax     # 0x29dfd
movsbl (%rax), %edi
movq %rbx, %rsi
callq 0x199fc
jmp 0x16794
movsbq 0xe(%r14), %rax
leaq 0x1352a(%rip), %rcx     # 0x29de8
movl -0xc4(%rcx,%rax,4), %edi
movq %rbx, %rsi
callq 0x19a5b
jmp 0x16794
leaq 0x1350b(%rip), %rax     # 0x29de4
jmp 0x1672e
leaq 0x130bb(%rip), %rdi     # 0x299a0
jmp 0x16801
leaq 0x131af(%rip), %rdi     # 0x29aa0
jmp 0x16801
leaq 0x132a3(%rip), %rdi     # 0x29ba0
jmp 0x16801
leaq 0x13397(%rip), %rdi     # 0x29ca0
jmp 0x16801
leaq 0x134e0(%rip), %rax     # 0x29df5
jmp 0x1699f
leaq 0x134d5(%rip), %rax     # 0x29df6
jmp 0x1699f
leaq 0x134cd(%rip), %rax     # 0x29df7
jmp 0x1699f
leaq 0x134c5(%rip), %rax     # 0x29df8
jmp 0x1699f
leaq 0x134bd(%rip), %rax     # 0x29df9
jmp 0x1699f
leaq 0x134b9(%rip), %rax     # 0x29dfe
jmp 0x1699f
leaq 0x134ac(%rip), %rax     # 0x29dfa
jmp 0x1699f
leaq 0x134a4(%rip), %rax     # 0x29dfb
jmp 0x1699f
leaq 0x1349c(%rip), %rax     # 0x29dfc
jmp 0x1699f
leaq 0x13496(%rip), %rax     # 0x29dff
jmp 0x1699f
leaq 0x13492(%rip), %rax     # 0x29e04
jmp 0x1699f
leaq 0x1348a(%rip), %rax     # 0x29e05
jmp 0x1699f
leaq 0x13454(%rip), %rax     # 0x29dd8
jmp 0x1699f
leaq 0x1347f(%rip), %rax     # 0x29e0c
jmp 0x1699f
leaq 0x13477(%rip), %rax     # 0x29e0d
jmp 0x1699f
leaq 0x1346f(%rip), %rax     # 0x29e0e
leaq 0xa02d(%rip), %rcx      # 0x209d3
leaq 0xa02b(%rip), %rdi      # 0x209d8
cmpb $0x0, (%rax)
cmovneq %rcx, %rdi
jmp 0x16801
nopl (%rax)