LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_Resource_canzeownzestatezy
static bool mw_mirth_type_Resource_canzeownzestatezy (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_type_Type in_Resource_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	struct std_maybe_Maybe_1 v6 = mw_mirth_type_Resource_tyconzy(in_zaMirth_1, in_Resource_2, &v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	bool branch_Bool_8;
	switch ((v6).tag) {
		case std_maybe_Maybe_1_Some: {
			VAL v9 = mtp_std_maybe_Maybe_1_Some(v6);
			struct mirth_mirth_zaMirth* v10;
			bool v11 = mw_mirth_tycon_Tycon_canzeownzestatezy(v5, V_mirth_tycon_Tycon(v9), &v10);
			branch_Bool_8 = v11;
			branch_zaMirth_7 = v10;
		} break;
		case std_maybe_Maybe_1_None: {
			bool v12 = false;
			branch_Bool_8 = v12;
			branch_zaMirth_7 = v5;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_Bool_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movl %esi, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x18(%rbp), %rdi
movl -0x10(%rbp), %esi
movq -0x8(%rbp), %rdx
leaq -0x28(%rbp), %rcx
callq 0x1896a0
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movl -0x38(%rbp), %eax
movl %eax, -0x80(%rbp)
testl %eax, %eax
je 0x1895ac
jmp 0x189541
movl -0x80(%rbp), %eax
subl $0x1, %eax
jne 0x1895c2
jmp 0x18954b
movl -0x38(%rbp), %edi
movq -0x30(%rbp), %rsi
callq 0x174a0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x58(%rbp), %rdi
movq -0x50(%rbp), %rsi
callq 0x59cb0
movq -0x88(%rbp), %rdi
movl %eax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movl -0x78(%rbp), %esi
movq -0x70(%rbp), %rdx
leaq -0x60(%rbp), %rcx
callq 0x189700
andb $0x1, %al
movb %al, -0x61(%rbp)
movb -0x61(%rbp), %al
andb $0x1, %al
movb %al, -0x41(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x40(%rbp)
jmp 0x1895db
movb $0x0, -0x79(%rbp)
movb -0x79(%rbp), %al
andb $0x1, %al
movb %al, -0x41(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x40(%rbp)
jmp 0x1895db
leaq 0x1ca8b8(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x40(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movb -0x41(%rbp), %al
andb $0x1, %al
addq $0x90, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_table_StateOwner_Resource
static struct mirth_table_StateOwner mtw_mirth_table_StateOwner_Resource (struct std_list_List_1 in_Ctx_1, struct mirth_type_Type in_Resource_2) {
	struct mirth_table_StateOwner_Resource* v4 = calloc(1, sizeof *v4);
	ASSERT(v4);
	v4->refs = 1;
	v4->mResource = in_Resource_2;
	v4->mCtx = in_Ctx_1;
	struct mirth_table_StateOwner v5 = { .tag=mirth_table_StateOwner_Resource, .ptr.Resource=v4 };
	return v5;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x30(%rbp)
movq %rcx, -0x28(%rbp)
movl $0x1, %edi
movl $0x28, %esi
callq 0x50c0
movq %rax, -0x38(%rbp)
cmpq $0x0, -0x38(%rbp)
jne 0x18965a
movl $0x2, %edi
leaq 0x1d1a6e(%rip), %rsi    # 0x35b0aa
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18965c
movq -0x38(%rbp), %rax
movl $0x1, (%rax)
movq -0x38(%rbp), %rax
movups -0x30(%rbp), %xmm0
movups %xmm0, 0x18(%rax)
movq -0x38(%rbp), %rax
movups -0x20(%rbp), %xmm0
movups %xmm0, 0x8(%rax)
movl $0x2, -0x10(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_Resource_tyconzy
static struct std_maybe_Maybe_1 mw_mirth_type_Resource_tyconzy (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_type_Type in_Resource_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_type_Type v5 = mw_mirth_type_Resource_zgType(in_Resource_2);
	struct mirth_mirth_zaMirth* v6;
	struct std_maybe_Maybe_1 v7 = mw_mirth_type_Type_tyconzy(in_zaMirth_1, v5, &v6);
	*out_zaMirth_3 = v6;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movl %esi, -0x20(%rbp)
movq %rdx, -0x18(%rbp)
movq %rdi, -0x28(%rbp)
movq %rcx, -0x30(%rbp)
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0xbadf0
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x28(%rbp), %rdi
movl -0x40(%rbp), %esi
movq -0x38(%rbp), %rdx
leaq -0x48(%rbp), %rcx
callq 0x862e0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq -0x48(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_tycon_Tycon_canzeownzestatezy
static bool mw_mirth_tycon_Tycon_canzeownzestatezy (struct mirth_mirth_zaMirth* in_zaMirth_1, struct mirth_tycon_Tycon in_Tycon_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* branch_zaMirth_5;
	bool branch_Bool_6;
	switch ((in_Tycon_2).tag) {
		case mirth_tycon_Tycon_Data: {
			uint64_t v7 = mtp_mirth_tycon_Tycon_Data(in_Tycon_2);
			struct mirth_mirth_zaMirth* v8;
			bool v9 = mw_mirth_data_Data_canzeownzestatezy(in_zaMirth_1, v7, &v8);
			branch_Bool_6 = v9;
			branch_zaMirth_5 = v8;
		} break;
		case mirth_tycon_Tycon_Prim: {
			enum mirth_type_PrimType v10 = mtp_mirth_tycon_Tycon_Prim(in_Tycon_2);
			struct mirth_mirth_zaMirth* v11;
			bool v12 = mw_mirth_type_PrimType_canzeownzestatezy(in_zaMirth_1, v10, &v11);
			branch_Bool_6 = v12;
			branch_zaMirth_5 = v11;
		} break;
		case mirth_tycon_Tycon_Table: {
			uint64_t v13 = mtp_mirth_tycon_Tycon_Table(in_Tycon_2);
			bool v14 = false;
			branch_Bool_6 = v14;
			branch_zaMirth_5 = in_zaMirth_1;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaMirth_3 = branch_zaMirth_5;
	return branch_Bool_6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movl %esi, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movl -0x10(%rbp), %eax
movl %eax, -0x68(%rbp)
testl %eax, %eax
je 0x18973a
jmp 0x189723
movl -0x68(%rbp), %eax
subl $0x1, %eax
je 0x1897a8
jmp 0x18972d
movl -0x68(%rbp), %eax
subl $0x2, %eax
je 0x189772
jmp 0x1897ce
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x5a440
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
movq -0x38(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x189800
andb $0x1, %al
movb %al, -0x41(%rbp)
movb -0x41(%rbp), %al
andb $0x1, %al
movb %al, -0x29(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x1897e7
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x5a4e0
movl %eax, -0x48(%rbp)
movq -0x18(%rbp), %rdi
movl -0x48(%rbp), %esi
leaq -0x50(%rbp), %rdx
callq 0x1899e0
andb $0x1, %al
movb %al, -0x51(%rbp)
movb -0x51(%rbp), %al
andb $0x1, %al
movb %al, -0x29(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x1897e7
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x5a490
movq %rax, -0x60(%rbp)
movb $0x0, -0x61(%rbp)
movb -0x61(%rbp), %al
andb $0x1, %al
movb %al, -0x29(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x1897e7
leaq 0x1ca6ac(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movb -0x29(%rbp), %al
andb $0x1, %al
addq $0x70, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_data_Data_canzeownzestatezy
static bool mw_mirth_data_Data_canzeownzestatezy (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Data_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	bool v6 = mw_mirth_data_Data_iszeresourcezy(in_zaMirth_1, in_Data_2, &v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	bool branch_Bool_8;
	if (v6) {
		struct mirth_mirth_zaMirth* v9;
		struct std_maybe_Maybe_1 v10 = mw_mirth_data_Data_singlezetagzy(v5, in_Data_2, &v9);
		int64_t v11 = (v10).tag;
		decref(MK_std_maybe_Maybe_1(v10));
		INT v12 = WRAP_I63(0LL);
		INT v13 = v12;
		INT v14 = i64_to_int(v11);
		bool v15 = int_eq(v14, v13);
		bool v16 = !v15;
		branch_Bool_8 = v16;
		branch_zaMirth_7 = v9;
	} else {
		bool v17 = false;
		branch_Bool_8 = v17;
		branch_zaMirth_7 = v5;
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_Bool_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x74100
andb $0x1, %al
movb %al, -0x21(%rbp)
testb $0x1, -0x21(%rbp)
je 0x1899a4
movq -0x20(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x40(%rbp), %rdx
callq 0x189a60
movl %eax, -0x50(%rbp)
movq %rdx, -0x48(%rbp)
movl -0x50(%rbp), %eax
movq %rax, -0x58(%rbp)
movl -0x50(%rbp), %edi
movq -0x48(%rbp), %rsi
callq 0x133a0
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x60(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x189936
movl -0x50(%rbp), %edi
movq -0x48(%rbp), %rsi
callq 0x133a0
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
cmpq $0x0, %rax
je 0x189936
movl -0x50(%rbp), %edi
movq -0x48(%rbp), %rsi
callq 0x133a0
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movq -0x88(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x189936
movl -0x50(%rbp), %edi
movq -0x48(%rbp), %rsi
callq 0x133a0
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x98(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x189934
movl -0x50(%rbp), %edi
movq -0x48(%rbp), %rsi
callq 0x133a0
movq %rax, -0xa8(%rbp)
movq %rdx, -0xa0(%rbp)
movq -0xa8(%rbp), %rdi
movq -0xa0(%rbp), %rsi
callq 0x127c0
jmp 0x189936
jmp 0x189938
movq 0x1e5111(%rip), %rax    # 0x36ea50
movq %rax, -0xb0(%rbp)
movq -0xb0(%rbp), %rax
movq %rax, -0xb8(%rbp)
movq -0x58(%rbp), %rdi
callq 0x1a290
movq %rax, -0xc0(%rbp)
movq -0xc0(%rbp), %rdi
movq -0xb8(%rbp), %rsi
callq 0x194b0
andb $0x1, %al
movb %al, -0xc1(%rbp)
movb -0xc1(%rbp), %al
xorb $-0x1, %al
andb $0x1, %al
movb %al, -0xc2(%rbp)
movb -0xc2(%rbp), %al
andb $0x1, %al
movb %al, -0x31(%rbp)
movq -0x40(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x1899be
movb $0x0, -0xc3(%rbp)
movb -0xc3(%rbp), %al
andb $0x1, %al
movb %al, -0x31(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movb -0x31(%rbp), %al
andb $0x1, %al
addq $0xd0, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_type_PrimType_canzeownzestatezy
static bool mw_mirth_type_PrimType_canzeownzestatezy (struct mirth_mirth_zaMirth* in_zaMirth_1, enum mirth_type_PrimType in_PrimType_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* branch_zaMirth_5;
	bool branch_Bool_6;
	switch (in_PrimType_2) {
		case mirth_type_PrimType_World: {
			bool v7 = true;
			branch_Bool_6 = v7;
			branch_zaMirth_5 = in_zaMirth_1;
		} break;
		case mirth_type_PrimType_Debug: {
			bool v8 = true;
			branch_Bool_6 = v8;
			branch_zaMirth_5 = in_zaMirth_1;
		} break;
		default: {
			bool v9 = false;
			branch_Bool_6 = v9;
			branch_zaMirth_5 = in_zaMirth_1;
		} break;
	}
	*out_zaMirth_3 = branch_zaMirth_5;
	return branch_Bool_6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0x28(%rbp)
subl $0x14, %eax
je 0x189a06
jmp 0x1899fc
movl -0x28(%rbp), %eax
subl $0x15, %eax
je 0x189a1c
jmp 0x189a32
movb $0x1, -0x22(%rbp)
movb -0x22(%rbp), %al
andb $0x1, %al
movb %al, -0x21(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x189a46
movb $0x1, -0x23(%rbp)
movb -0x23(%rbp), %al
andb $0x1, %al
movb %al, -0x21(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x189a46
movb $0x0, -0x24(%rbp)
movb -0x24(%rbp), %al
andb $0x1, %al
movb %al, -0x21(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movb -0x21(%rbp), %al
andb $0x1, %al
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_arrow_Op_TableFromIndex
static struct mirth_arrow_Op mtw_mirth_arrow_Op_TableFromIndex (uint64_t in_Table_1) {
	struct mirth_arrow_Op_TableFromIndex* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mTable = in_Table_1;
	struct mirth_arrow_Op v4 = { .tag=mirth_arrow_Op_TableFromIndex, .ptr.TableFromIndex=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18ae70
movl $0x2, %edi
leaq 0x1d0360(%rip), %rsi    # 0x35b1b2
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18ae72
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x15, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_table_Table_inlinezefields
static struct std_list_List_1 mw_mirth_table_Table_inlinezefields (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Table_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	void* v5 = field_mut(&mfld_mirth_table_Table_inlinezefields, in_Table_2);
	bool v6 = mut_is_set(v5);
	struct mirth_mirth_zaMirth* branch_zaMirth_7;
	struct std_list_List_1 branch_List_8;
	if (v6) {
		VAL v9 = mut_get(v5);
		branch_List_8 = V_std_list_List_1(v9);
		branch_zaMirth_7 = in_zaMirth_1;
	} else {
		struct std_list_List_1 v10 = { .tag=std_list_List_1_Nil };
		incref(MK_std_list_List_1(v10));
		mut_set(MK_std_list_List_1(v10), v5);
		branch_List_8 = v10;
		branch_zaMirth_7 = in_zaMirth_1;
	}
	*out_zaMirth_3 = branch_zaMirth_7;
	return branch_List_8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x20(%rbp), %rsi
leaq 0x120a956(%rip), %rdi   # 0x1396268
callq 0x40d30
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rdi
callq 0x45e40
andb $0x1, %al
movb %al, -0x31(%rbp)
testb $0x1, -0x31(%rbp)
je 0x18b971
movq -0x30(%rbp), %rdi
callq 0x40f30
movq %rax, -0x50(%rbp)
movq %rdx, -0x48(%rbp)
movq -0x50(%rbp), %rdi
movq -0x48(%rbp), %rsi
callq 0x12c80
movl %eax, -0x60(%rbp)
movq %rdx, -0x58(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x58(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
jmp 0x18ba80
leaq -0x70(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movl -0x70(%rbp), %edi
movq -0x68(%rbp), %rsi
callq 0x12780
movq %rax, -0x80(%rbp)
movq %rdx, -0x78(%rbp)
movq -0x78(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x18ba35
movl -0x70(%rbp), %edi
movq -0x68(%rbp), %rsi
callq 0x12780
movq %rax, -0x90(%rbp)
movq %rdx, -0x88(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x90(%rbp), %rax
cmpq $0x0, %rax
je 0x18ba35
movl -0x70(%rbp), %edi
movq -0x68(%rbp), %rsi
callq 0x12780
movq %rax, -0xa0(%rbp)
movq %rdx, -0x98(%rbp)
movq -0xa0(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x18ba35
movl -0x70(%rbp), %edi
movq -0x68(%rbp), %rsi
callq 0x12780
movq %rax, -0xb0(%rbp)
movq %rdx, -0xa8(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0xb0(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x18ba37
movl -0x70(%rbp), %edi
movq -0x68(%rbp), %rsi
callq 0x12780
movq %rax, -0xc0(%rbp)
movq %rdx, -0xb8(%rbp)
movq -0x30(%rbp), %rdx
movq -0xc0(%rbp), %rdi
movq -0xb8(%rbp), %rsi
callq 0x431a0
movq -0x70(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x68(%rbp), %rax
movq %rax, -0x8(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xc0, %rsp
popq %rbp
retq
nopl (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_table_Field_iszerawzy
static bool mw_mirth_table_Field_iszerawzy (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Field_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	uint64_t v6 = mw_mirth_table_Field_name(in_zaMirth_1, in_Field_2, &v5);
	struct mirth_mirth_zaMirth* v7;
	bool v8 = mw_mirth_name_Name_couldzebezerawzefieldzenamezy(v5, v6, &v7);
	*out_zaMirth_3 = v7;
	return v8;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdx
callq 0x645f0
movq %rax, -0x28(%rbp)
movq -0x20(%rbp), %rdi
movq -0x28(%rbp), %rsi
leaq -0x30(%rbp), %rdx
callq 0x17a5c0
andb $0x1, %al
movb %al, -0x31(%rbp)
movq -0x30(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movb -0x31(%rbp), %al
andb $0x1, %al
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_arrow_Op_TableToIndex
static struct mirth_arrow_Op mtw_mirth_arrow_Op_TableToIndex (uint64_t in_Table_1) {
	struct mirth_arrow_Op_TableToIndex* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mTable = in_Table_1;
	struct mirth_arrow_Op v4 = { .tag=mirth_arrow_Op_TableToIndex, .ptr.TableToIndex=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18c0e0
movl $0x2, %edi
leaq 0x1cf122(%rip), %rsi    # 0x35b1e4
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18c0e2
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x14, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_std_maybe_Maybe_1_unwrap_1_sp62
static VAL mw_std_maybe_Maybe_1_unwrap_1_sp62 (struct std_maybe_Maybe_1 in_Maybe_1) {
	VAL branch_zux1_3;
	switch ((in_Maybe_1).tag) {
		case std_maybe_Maybe_1_Some: {
			VAL v4 = mtp_std_maybe_Maybe_1_Some(in_Maybe_1);
			branch_zux1_3 = v4;
		} break;
		case std_maybe_Maybe_1_None: {
			STR* v5;
			STRLIT(v5, "unexpected number of params", 27);
			do_panic(v5);
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	return branch_zux1_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
movl %eax, -0x7c(%rbp)
testl %eax, %eax
je 0x18d945
jmp 0x18d90e
movl -0x7c(%rbp), %eax
subl $0x1, %eax
jne 0x18da34
jmp 0x18d91c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x174a0
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x18da4d
jmp 0x18d947
cmpq $0x0, 0x1208941(%rip)   # 0x1396290
jne 0x18d969
leaq 0x1cd8be(%rip), %rdi    # 0x35b216
movl $0x1b, %esi
callq 0xb6c0
movq %rax, 0x1208927(%rip)   # 0x1396290
jmp 0x18d96b
movq 0x120891e(%rip), %rax   # 0x1396290
movq %rax, -0x48(%rbp)
leaq 0x2037db(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x18da1c
movq 0x12088f2(%rip), %rax   # 0x1396290
movq %rax, -0x58(%rbp)
leaq 0x2037af(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x18da1c
movq 0x12088c4(%rip), %rax   # 0x1396290
movq %rax, -0x68(%rbp)
leaq 0x203781(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x18da1c
movq 0x120889c(%rip), %rax   # 0x1396290
movq %rax, -0x78(%rbp)
leaq 0x203759(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x18da1e
movq 0x120886b(%rip), %rax   # 0x1396290
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rdi
callq 0xc620
jmp 0x18da4d
leaq 0x1c6446(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x10(%rbp), %rax
movq -0x8(%rbp), %rdx
addq $0x80, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_table_Field_Makezx
static uint64_t mw_mirth_table_Field_Makezx (struct mirth_mirth_zaMirth* in_zaMirth_1, struct std_maybe_Maybe_1 in_Maybe_2, uint64_t in_Token_3, struct std_maybe_Maybe_1 in_Maybe_4, uint64_t in_Name_5, struct mirth_mirth_zaMirth* *out_zaMirth_6) {
	struct mirth_mirth_zaMirth* v8;
	uint64_t v9 = mw_mirth_table_Field_Alloczx(in_zaMirth_1, &v8);
	void* v10 = field_mut(&mfld_mirth_table_Field_doc, v9);
	mut_set(MK_std_maybe_Maybe_1(in_Maybe_2), v10);
	void* v11 = field_mut(&mfld_mirth_table_Field_head, v9);
	mut_set(MK_mirth_token_Token(in_Token_3), v11);
	void* v12 = field_mut(&mfld_mirth_table_Field_default, v9);
	mut_set(MK_std_maybe_Maybe_1(in_Maybe_4), v12);
	void* v13 = field_mut(&mfld_mirth_table_Field_name, v9);
	mut_set(MK_mirth_name_Name(in_Name_5), v13);
	*out_zaMirth_6 = v8;
	return v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq 0x18(%rbp), %rax
movq 0x10(%rbp), %rax
movl %esi, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movl %r8d, -0x20(%rbp)
movq %r9, -0x18(%rbp)
movq %rdi, -0x28(%rbp)
movq %rcx, -0x30(%rbp)
movq -0x28(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x1906b0
movq %rax, -0x40(%rbp)
movq -0x40(%rbp), %rsi
leaq 0x1207762(%rip), %rdi   # 0x1396298
callq 0x40d30
movq %rax, -0x48(%rbp)
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x133a0
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x48(%rbp), %rdx
movq -0x58(%rbp), %rdi
movq -0x50(%rbp), %rsi
callq 0x431a0
movq -0x40(%rbp), %rsi
leaq 0x12063c1(%rip), %rdi   # 0x1394f30
callq 0x40d30
movq %rax, -0x60(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq 0x2032c1(%rip), %rax    # 0x391e48
movq %rax, -0x68(%rbp)
movq -0x60(%rbp), %rdx
movq -0x70(%rbp), %rdi
movq -0x68(%rbp), %rsi
callq 0x431a0
movq -0x40(%rbp), %rsi
leaq 0x12076d1(%rip), %rdi   # 0x1396278
callq 0x40d30
movq %rax, -0x78(%rbp)
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x133a0
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movq -0x78(%rbp), %rdx
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
callq 0x431a0
movq -0x40(%rbp), %rsi
leaq 0x12064d2(%rip), %rdi   # 0x13950b8
callq 0x40d30
movq %rax, -0x90(%rbp)
movq 0x10(%rbp), %rax
movq %rax, -0xa0(%rbp)
leaq 0x202b84(%rip), %rax    # 0x391788
movq %rax, -0x98(%rbp)
movq -0x90(%rbp), %rdx
movq -0xa0(%rbp), %rdi
movq -0x98(%rbp), %rsi
callq 0x431a0
movq -0x38(%rbp), %rcx
movq 0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x40(%rbp), %rax
addq $0xa0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_mirth_PropLabel_FieldQName
static struct mirth_mirth_PropLabel mtw_mirth_mirth_PropLabel_FieldQName (uint64_t in_Field_1) {
	struct mirth_mirth_PropLabel_FieldQName* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mField = in_Field_1;
	struct mirth_mirth_PropLabel v4 = { .tag=mirth_mirth_PropLabel_FieldQName, .ptr.FieldQName=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18ec90
movl $0x2, %edi
leaq 0x1cc5c0(%rip), %rsi    # 0x35b232
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18ec92
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x16, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_mirth_PropLabel_FieldIndexType
static struct mirth_mirth_PropLabel mtw_mirth_mirth_PropLabel_FieldIndexType (uint64_t in_Field_1) {
	struct mirth_mirth_PropLabel_FieldIndexType* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mField = in_Field_1;
	struct mirth_mirth_PropLabel v4 = { .tag=mirth_mirth_PropLabel_FieldIndexType, .ptr.FieldIndexType=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18ed20
movl $0x2, %edi
leaq 0x1cc562(%rip), %rsi    # 0x35b264
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18ed22
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x18, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_mirth_PropLabel_FieldValueType
static struct mirth_mirth_PropLabel mtw_mirth_mirth_PropLabel_FieldValueType (uint64_t in_Field_1) {
	struct mirth_mirth_PropLabel_FieldValueType* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mField = in_Field_1;
	struct mirth_mirth_PropLabel v4 = { .tag=mirth_mirth_PropLabel_FieldValueType, .ptr.FieldValueType=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18edb0
movl $0x2, %edi
leaq 0x1cc504(%rip), %rsi    # 0x35b296
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18edb2
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x17, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mb_mirth_mirth_PropLabel_prop_1_sp25_0
static void mb_mirth_mirth_PropLabel_prop_1_sp25_0 (void) {
	PTUP v0 = value_tup(pop_value());
	struct mirth_mirth_zaMirth* r1 = V_mirth_mirth_zaMirth(pop_resource());
	VAL v2 = ((TUP*)PTRPTR(v0))->cells[0];
	VAL v3 = ((TUP*)PTRPTR(v0))->cells[1];
	tup_decref_outer(v0);
	struct mirth_mirth_zaMirth* v4;
	struct mirth_table_StateOwner v5 = mw_mirth_table_Field_owner(r1, V_mirth_table_Field(v2), &v4);
	struct mirth_mirth_zaMirth* v6;
	struct std_list_List_1 v7 = mw_mirth_table_StateOwner_ctx(v4, v5, &v6);
	struct mirth_mirth_zaMirth* v8;
	struct mirth_type_Type v9 = mw_mirth_elab_elabzesimplezetypezeatomzx(v6, v7, V_mirth_token_Token(v3), &v8);
	push_resource(MK_mirth_mirth_zaMirth(v8));
	push_value(MK_mirth_type_Type(v9));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xc0, %rsp
callq 0x138a0
movq %rax, -0x18(%rbp)
movq %rdx, -0x10(%rbp)
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0xb770
movq %rax, -0x8(%rbp)
callq 0x13920
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x20(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x8(%rbp), %rax
movq 0x8(%rax), %rcx
movq %rcx, -0x40(%rbp)
movq 0x10(%rax), %rax
movq %rax, -0x38(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x8(%rbp), %rax
movq 0x18(%rax), %rcx
movq %rcx, -0x50(%rbp)
movq 0x20(%rax), %rax
movq %rax, -0x48(%rbp)
movq -0x8(%rbp), %rdi
callq 0xb7e0
movq -0x20(%rbp), %rdi
movq -0x40(%rbp), %rsi
leaq -0x58(%rbp), %rdx
callq 0x14e730
movl %eax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x58(%rbp), %rdi
movl -0x68(%rbp), %esi
movq -0x60(%rbp), %rdx
leaq -0x70(%rbp), %rcx
callq 0x18af20
movl %eax, -0x80(%rbp)
movq %rdx, -0x78(%rbp)
movq -0x70(%rbp), %rdi
movq -0x50(%rbp), %rcx
movl -0x80(%rbp), %esi
movq -0x78(%rbp), %rdx
leaq -0x88(%rbp), %r8
callq 0x1603c0
movl %eax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x88(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0x202a9d(%rip), %rax    # 0x391980
movq %rax, -0xa0(%rbp)
movq -0xa8(%rbp), %rdi
movq -0xa0(%rbp), %rsi
callq 0x5b40
movl -0x98(%rbp), %edi
movq -0x90(%rbp), %rsi
callq 0x6e780
movq %rax, -0xb8(%rbp)
movq %rdx, -0xb0(%rbp)
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rsi
callq 0x12cc0
addq $0xc0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_mirth_PropLabel_FieldOwner
static struct mirth_mirth_PropLabel mtw_mirth_mirth_PropLabel_FieldOwner (uint64_t in_Field_1) {
	struct mirth_mirth_PropLabel_FieldOwner* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mField = in_Field_1;
	struct mirth_mirth_PropLabel v4 = { .tag=mirth_mirth_PropLabel_FieldOwner, .ptr.FieldOwner=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x18ef90
movl $0x2, %edi
leaq 0x1cc356(%rip), %rsi    # 0x35b2c8
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x18ef92
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0x15, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_def_Def_Field
static struct mirth_def_Def mtw_mirth_def_Def_Field (uint64_t in_Field_1) {
	struct mirth_def_Def_Field* v3 = calloc(1, sizeof *v3);
	ASSERT(v3);
	v3->refs = 1;
	v3->mField = in_Field_1;
	struct mirth_def_Def v4 = { .tag=mirth_def_Def_Field, .ptr.Field=v3 };
	return v4;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x18(%rbp)
movl $0x1, %edi
movl $0x10, %esi
callq 0x50c0
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
jne 0x190770
movl $0x2, %edi
leaq 0x1cabf1(%rip), %rsi    # 0x35b343
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x190772
movq -0x20(%rbp), %rax
movl $0x1, (%rax)
movq -0x18(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, 0x8(%rax)
movl $0xb, -0x10(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_table_Field_namespace
static struct mirth_name_Namespace mw_mirth_table_Field_namespace (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Field_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* v5;
	struct mirth_name_QName* v6 = mw_mirth_table_Field_qnamezehard(in_zaMirth_1, in_Field_2, &v5);
	struct mirth_name_Namespace v7 = v6->mnamespace;
	incref(MK_mirth_name_Namespace(v7));
	decref(MK_mirth_name_QName(v6));
	*out_zaMirth_3 = v5;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x30(%rbp), %rdx
callq 0x8aa20
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
movq 0x8(%rax), %rcx
movq %rcx, -0x10(%rbp)
movq 0x10(%rax), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x59830
movq %rax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x40(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x193465
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x59830
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x58(%rbp), %rax
cmpq $0x0, %rax
je 0x193465
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x59830
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movq -0x68(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x193465
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x59830
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x78(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x193467
jmp 0x193469
movq -0x38(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0x1fe355(%rip), %rax    # 0x3917d0
orq $0x1, %rax
movq %rax, -0x80(%rbp)
movq -0x80(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x193567
movq -0x38(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq 0x1fe329(%rip), %rax    # 0x3917d0
orq $0x1, %rax
movq %rax, -0x90(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x98(%rbp), %rax
cmpq $0x0, %rax
je 0x193567
movq -0x38(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0x1fe2f1(%rip), %rax    # 0x3917d0
orq $0x1, %rax
movq %rax, -0xa0(%rbp)
movq -0xa8(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x193567
movq -0x38(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq 0x1fe2c3(%rip), %rax    # 0x3917d0
orq $0x1, %rax
movq %rax, -0xb0(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0xb8(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x193565
movq -0x38(%rbp), %rax
movq %rax, -0xc8(%rbp)
leaq 0x1fe289(%rip), %rax    # 0x3917d0
orq $0x1, %rax
movq %rax, -0xc0(%rbp)
movq -0xc8(%rbp), %rdi
movq -0xc0(%rbp), %rsi
callq 0x127c0
jmp 0x193567
jmp 0x193569
movq -0x30(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xd0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_mirth_PropLabel_prop_1_sp16
static struct mirth_mirth_Prop_1* mw_mirth_mirth_PropLabel_prop_1_sp16 (uint64_t in_Token_1, struct mirth_mirth_zaMirth* in_zaMirth_2, struct mirth_mirth_PropLabel in_PropLabel_3, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_mirth_LexicalState* v6 = in_zaMirth_2->mlexicalzestate;
	incref(MK_mirth_mirth_LexicalState(v6));
	FNPTR v7 = &mb_mirth_mirth_PropLabel_prop_1_sp16_0;
	struct mirth_mirth_PropState_1 v8 = mtw_mirth_mirth_PropState_1_Delay(v6, MK_mirth_token_Token(in_Token_1), MKFNPTR(v7));
	struct mirth_mirth_Prop_1* v9 = mtw_mirth_mirth_Prop_1_Prop(in_PropLabel_3, v8);
	*out_zaMirth_4 = in_zaMirth_2;
	return v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edx, -0x10(%rbp)
movq %rcx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rsi, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq -0x20(%rbp), %rax
movq 0x48(%rax), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
leaq 0x1fc117(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x19586b
movq -0x30(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq 0x1fc0f2(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x48(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x50(%rbp), %rax
cmpq $0x0, %rax
je 0x19586b
movq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
leaq 0x1fc0c7(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x58(%rbp)
movq -0x60(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x19586b
movq -0x30(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq 0x1fc0a2(%rip), %rax    # 0x3918f0
orq $0x1, %rax
movq %rax, -0x68(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x70(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x19586d
leaq 0x101c(%rip), %rax      # 0x196890
movq %rax, -0x78(%rbp)
movq -0x30(%rbp), %rdi
movq -0x18(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq 0x1fc5ba(%rip), %rax    # 0x391e48
movq %rax, -0x90(%rbp)
movq -0x78(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq 0x1fb941(%rip), %rax    # 0x3911e8
movq %rax, -0xa0(%rbp)
movq -0x98(%rbp), %rsi
movq -0x90(%rbp), %rdx
movq -0xa8(%rbp), %rcx
movq -0xa0(%rbp), %r8
callq 0x788b0
movl %eax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
movl -0x88(%rbp), %edx
movq -0x80(%rbp), %rcx
callq 0x70ac0
movq %rax, -0xb0(%rbp)
movq -0x20(%rbp), %rcx
movq -0x28(%rbp), %rax
movq %rcx, (%rax)
movq -0xb0(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mb_mirth_mirth_PropLabel_prop_1_sp16_0
static void mb_mirth_mirth_PropLabel_prop_1_sp16_0 (void) {
	uint64_t v0 = V_mirth_token_Token(pop_value());
	struct mirth_mirth_zaMirth* r1 = V_mirth_mirth_zaMirth(pop_resource());
	struct std_list_List_1 v2 = mw_mirth_var_Ctx_L0();
	struct mirth_mirth_zaMirth* v3;
	struct mirth_type_Type v4 = mw_mirth_elab_elabzesimplezetypezeatomzx(r1, v2, v0, &v3);
	push_resource(MK_mirth_mirth_zaMirth(v3));
	push_value(MK_mirth_type_Type(v4));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
callq 0x138a0
movq %rax, -0x18(%rbp)
movq %rdx, -0x10(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x8(%rbp)
callq 0x13920
movq %rax, -0x30(%rbp)
movq %rdx, -0x28(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x20(%rbp)
callq 0xae770
movl %eax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x20(%rbp), %rdi
movq -0x8(%rbp), %rcx
movl -0x40(%rbp), %esi
movq -0x38(%rbp), %rdx
leaq -0x48(%rbp), %r8
callq 0x1603c0
movl %eax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x68(%rbp)
leaq 0x1fb081(%rip), %rax    # 0x391980
movq %rax, -0x60(%rbp)
movq -0x68(%rbp), %rdi
movq -0x60(%rbp), %rsi
callq 0x5b40
movl -0x58(%rbp), %edi
movq -0x50(%rbp), %rsi
callq 0x6e780
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rdi
movq -0x70(%rbp), %rsi
callq 0x12cc0
addq $0x80, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_tycon_Tycon_tablezy
static struct std_maybe_Maybe_1 mw_mirth_tycon_Tycon_tablezy (struct mirth_tycon_Tycon in_Tycon_1) {
	struct std_maybe_Maybe_1 branch_Maybe_3;
	switch ((in_Tycon_1).tag) {
		case mirth_tycon_Tycon_Table: {
			uint64_t v4 = mtp_mirth_tycon_Tycon_Table(in_Tycon_1);
			struct std_maybe_Maybe_1 v5 = mtw_std_maybe_Maybe_1_Some(MK_mirth_table_Table(v4));
			branch_Maybe_3 = v5;
		} break;
		default: {
			decref(MK_mirth_tycon_Tycon(in_Tycon_1));
			struct std_maybe_Maybe_1 v6 = { .tag=std_maybe_Maybe_1_None };
			branch_Maybe_3 = v6;
		} break;
	}
	return branch_Maybe_3;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movl %edi, -0x20(%rbp)
movq %rsi, -0x18(%rbp)
movl -0x20(%rbp), %eax
subl $0x1, %eax
jne 0x1969a8
jmp 0x19695c
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x5a490
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq %rax, -0x48(%rbp)
leaq 0x1fb79d(%rip), %rax    # 0x392118
movq %rax, -0x40(%rbp)
movq -0x48(%rbp), %rdi
movq -0x40(%rbp), %rsi
callq 0xca10
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x38(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x8(%rbp)
jmp 0x196aac
jmp 0x1969aa
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x59b10
movq %rax, -0x58(%rbp)
movq %rdx, -0x50(%rbp)
movq -0x50(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x196a81
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x59b10
movq %rax, -0x68(%rbp)
movq %rdx, -0x60(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x68(%rbp), %rax
cmpq $0x0, %rax
je 0x196a81
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x59b10
movq %rax, -0x78(%rbp)
movq %rdx, -0x70(%rbp)
movq -0x78(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x196a81
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x59b10
movq %rax, -0x88(%rbp)
movq %rdx, -0x80(%rbp)
movabsq $0xfffffffffffc, %rcx   # imm = 0xFFFFFFFFFFFC
andq -0x88(%rbp), %rcx
movl (%rcx), %eax
addl $-0x1, %eax
movl %eax, (%rcx)
cmpl $0x0, %eax
jne 0x196a7f
movl -0x20(%rbp), %edi
movq -0x18(%rbp), %rsi
callq 0x59b10
movq %rax, -0x98(%rbp)
movq %rdx, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x127c0
jmp 0x196a81
jmp 0x196a83
leaq -0xa8(%rbp), %rdi
xorl %esi, %esi
movl $0x10, %edx
callq 0x5080
movq -0xa8(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0xa0(%rbp), %rax
movq %rax, -0x8(%rbp)
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0xb0, %rsp
popq %rbp
retq
nopl (%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_data_elabzedatazx
static uint64_t mw_mirth_data_elabzedatazx (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Token_2, struct mirth_mirth_zaMirth* *out_zaMirth_4) {
	struct mirth_mirth_zaMirth* v7;
	struct mirth_data_SyntaxData* v8;
	uint64_t v9 = mw_mirth_data_parsezedata(in_zaMirth_1, in_Token_2, &v7, &v8);
	struct mirth_mirth_zaMirth* v10;
	mw_mirth_data_elabzedatazeauxzx(v7, v8, &v10);
	*out_zaMirth_4 = v10;
	return v9;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x20(%rbp), %rdx
leaq -0x28(%rbp), %rcx
callq 0x196b20
movq %rax, -0x30(%rbp)
movq -0x20(%rbp), %rdi
movq -0x28(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0x1975b0
movq -0x38(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_mirth_data_parsezedatazeheader
static uint64_t mw_mirth_data_parsezedatazeheader (struct mirth_mirth_zaMirth* in_zaMirth_1, uint64_t in_Token_2, struct mirth_mirth_zaMirth* *out_zaMirth_3, uint64_t *out_SyntaxDataHeader_5) {
	struct mirth_mirth_zaMirth* v6;
	uint64_t v7 = mw_mirth_token_Token_next(in_zaMirth_1, in_Token_2, &v6);
	struct mirth_mirth_zaMirth* v8;
	struct std_maybe_Maybe_1 v9 = mw_mirth_token_Token_lastzenamezy(v6, in_Token_2, &v8);
	struct mirth_mirth_zaMirth* v10;
	bool v11 = mw_std_maybe_Maybe_1_has_1_sp15(v8, v9, &v10);
	struct mirth_mirth_zaMirth* branch_zaMirth_12;
	uint64_t branch_Token_13;
	if (v11) {
		branch_Token_13 = in_Token_2;
		branch_zaMirth_12 = v10;
	} else {
		STR* v14;
		STRLIT(v14, "Expected type name.", 19);
		mw_mirth_mirth_zaMirth_emitzefatalzeerrorzx(v10, in_Token_2, v14);
	}
	*out_SyntaxDataHeader_5 = branch_Token_13;
	*out_zaMirth_3 = branch_zaMirth_12;
	return v7;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x28(%rbp), %rdx
callq 0x7b380
movq %rax, -0x30(%rbp)
movq -0x28(%rbp), %rdi
movq -0x10(%rbp), %rsi
leaq -0x38(%rbp), %rdx
callq 0x196620
movl %eax, -0x48(%rbp)
movq %rdx, -0x40(%rbp)
movq -0x38(%rbp), %rdi
movl -0x48(%rbp), %esi
movq -0x40(%rbp), %rdx
leaq -0x50(%rbp), %rcx
callq 0x198670
andb $0x1, %al
movb %al, -0x51(%rbp)
testb $0x1, -0x51(%rbp)
je 0x197acc
movq -0x10(%rbp), %rax
movq %rax, -0x68(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x60(%rbp)
jmp 0x197bdc
jmp 0x197ace
cmpq $0x0, 0x11fe852(%rip)   # 0x1396328
jne 0x197af0
leaq 0x1c396b(%rip), %rdi    # 0x35b44a
movl $0x13, %esi
callq 0xb6c0
movq %rax, 0x11fe838(%rip)   # 0x1396328
jmp 0x197af2
movq 0x11fe82f(%rip), %rax   # 0x1396328
movq %rax, -0x80(%rbp)
leaq 0x1f9654(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rax
andq $0x1, %rax
cmpq $0x0, %rax
je 0x197bbe
movq 0x11fe803(%rip), %rax   # 0x1396328
movq %rax, -0x90(%rbp)
leaq 0x1f9625(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x88(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0x90(%rbp), %rax
cmpq $0x0, %rax
je 0x197bbe
movq 0x11fe7cc(%rip), %rax   # 0x1396328
movq %rax, -0xa0(%rbp)
leaq 0x1f95ee(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0x98(%rbp)
movq -0xa0(%rbp), %rax
andq $0x3, %rax
cmpq $0x0, %rax
jne 0x197bbe
movq 0x11fe79b(%rip), %rax   # 0x1396328
movq %rax, -0xb0(%rbp)
leaq 0x1f95bd(%rip), %rax    # 0x391158
orq $0x1, %rax
movq %rax, -0xa8(%rbp)
movabsq $0xfffffffffffc, %rax   # imm = 0xFFFFFFFFFFFC
andq -0xb0(%rbp), %rax
movl (%rax), %ecx
addl $0x1, %ecx
movl %ecx, (%rax)
jmp 0x197bc0
movq 0x11fe761(%rip), %rax   # 0x1396328
movq %rax, -0x70(%rbp)
movq -0x50(%rbp), %rdi
movq -0x10(%rbp), %rsi
movq -0x70(%rbp), %rdx
callq 0x76b70
movq -0x68(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movq -0x60(%rbp), %rcx
movq -0x18(%rbp), %rax
movq %rcx, (%rax)
movq -0x30(%rbp), %rax
addq $0xb0, %rsp
popq %rbp
retq
nop
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mtw_mirth_data_SyntaxData_SyntaxData
static struct mirth_data_SyntaxData* mtw_mirth_data_SyntaxData_SyntaxData (struct std_maybe_Maybe_1 in_Maybe_1, uint64_t in_SyntaxDataHeader_2, struct std_list_List_1 in_List_3, struct std_maybe_Maybe_1 in_Maybe_4) {
	struct mirth_data_SyntaxData* v6 = calloc(1, sizeof *v6);
	ASSERT(v6);
	v6->refs = 1;
	v6->mdecls = in_Maybe_4;
	v6->mtags = in_List_3;
	v6->mheader = in_SyntaxDataHeader_2;
	v6->mdoc = in_Maybe_1;
	return v6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
leaq 0x10(%rbp), %rax
movq %rax, -0x38(%rbp)
movl %edi, -0x10(%rbp)
movq %rsi, -0x8(%rbp)
movl %ecx, -0x20(%rbp)
movq %r8, -0x18(%rbp)
movq %rdx, -0x28(%rbp)
movl $0x1, %edi
movl $0x40, %esi
callq 0x50c0
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x198606
movl $0x2, %edi
leaq 0x1c2f7d(%rip), %rsi    # 0x35b565
movl $0x31, %edx
callq 0x5060
callq 0x5310
callq 0x53b0
movl $0x1, %edi
callq 0x5130
jmp 0x198608
movq -0x38(%rbp), %rcx
movq -0x30(%rbp), %rax
movl $0x1, (%rax)
movq -0x30(%rbp), %rax
movq (%rcx), %rdx
movq %rdx, 0x30(%rax)
movq 0x8(%rcx), %rcx
movq %rcx, 0x38(%rax)
movq -0x30(%rbp), %rax
movq -0x20(%rbp), %rcx
movq %rcx, 0x20(%rax)
movq -0x18(%rbp), %rcx
movq %rcx, 0x28(%rax)
movq -0x28(%rbp), %rcx
movq -0x30(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x30(%rbp), %rax
movq -0x10(%rbp), %rcx
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rcx
movq %rcx, 0x10(%rax)
movq -0x30(%rbp), %rax
addq $0x40, %rsp
popq %rbp
retq
nopw (%rax,%rax)
// File: /workspace/github_c_makefile_star2_O0/mirth-lang[P]mirth/bin/mirth1.c
// Function: mw_std_maybe_Maybe_1_has_1_sp15
static bool mw_std_maybe_Maybe_1_has_1_sp15 (struct mirth_mirth_zaMirth* in_zaMirth_1, struct std_maybe_Maybe_1 in_Maybe_2, struct mirth_mirth_zaMirth* *out_zaMirth_3) {
	struct mirth_mirth_zaMirth* branch_zaMirth_5;
	bool branch_Bool_6;
	switch ((in_Maybe_2).tag) {
		case std_maybe_Maybe_1_Some: {
			VAL v7 = mtp_std_maybe_Maybe_1_Some(in_Maybe_2);
			struct mirth_mirth_zaMirth* v8;
			bool v9 = mw_mirth_name_Name_couldzebezeconstructor(in_zaMirth_1, V_mirth_name_Name(v7), &v8);
			branch_Bool_6 = v9;
			branch_zaMirth_5 = v8;
		} break;
		case std_maybe_Maybe_1_None: {
			bool v10 = false;
			branch_Bool_6 = v10;
			branch_zaMirth_5 = in_zaMirth_1;
		} break;
		default: {
			do_panic(str_make("unexpected fallthrough in match\n", 32));
		}
	}
	*out_zaMirth_3 = branch_zaMirth_5;
	return branch_Bool_6;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movl %esi, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
movq %rdi, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movl -0x10(%rbp), %eax
movl %eax, -0x50(%rbp)
testl %eax, %eax
je 0x1986d9
jmp 0x198693
movl -0x50(%rbp), %eax
subl $0x1, %eax
jne 0x1986ef
jmp 0x19869d
movl -0x10(%rbp), %edi
movq -0x8(%rbp), %rsi
callq 0x174a0
movq %rax, -0x40(%rbp)
movq %rdx, -0x38(%rbp)
movq -0x18(%rbp), %rdi
movq -0x40(%rbp), %rsi
leaq -0x48(%rbp), %rdx
callq 0x198720
andb $0x1, %al
movb %al, -0x49(%rbp)
movb -0x49(%rbp), %al
andb $0x1, %al
movb %al, -0x29(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x198708
movb $0x0, -0x4a(%rbp)
movb -0x4a(%rbp), %al
andb $0x1, %al
movb %al, -0x29(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
jmp 0x198708
leaq 0x1bb78b(%rip), %rdi    # 0x353e81
movl $0x20, %esi
callq 0xb6c0
movq %rax, %rdi
callq 0xc620
movq -0x28(%rbp), %rcx
movq -0x20(%rbp), %rax
movq %rcx, (%rax)
movb -0x29(%rbp), %al
andb $0x1, %al
addq $0x50, %rsp
popq %rbp
retq
nop