// File: halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::ParseGoogleTestFlag(char const*)
static bool ParseGoogleTestFlag(const char* const arg) {
#define GTEST_INTERNAL_PARSE_FLAG(flag_name)  \
  do {                                        \
    auto value = GTEST_FLAG_GET(flag_name);   \
    if (ParseFlag(arg, #flag_name, &value)) { \
      GTEST_FLAG_SET(flag_name, value);       \
      return true;                            \
    }                                         \
  } while (false)

  GTEST_INTERNAL_PARSE_FLAG(also_run_disabled_tests);
  GTEST_INTERNAL_PARSE_FLAG(break_on_failure);
  GTEST_INTERNAL_PARSE_FLAG(catch_exceptions);
  GTEST_INTERNAL_PARSE_FLAG(color);
  GTEST_INTERNAL_PARSE_FLAG(death_test_style);
  GTEST_INTERNAL_PARSE_FLAG(death_test_use_fork);
  GTEST_INTERNAL_PARSE_FLAG(fail_fast);
  GTEST_INTERNAL_PARSE_FLAG(filter);
  GTEST_INTERNAL_PARSE_FLAG(internal_run_death_test);
  GTEST_INTERNAL_PARSE_FLAG(list_tests);
  GTEST_INTERNAL_PARSE_FLAG(output);
  GTEST_INTERNAL_PARSE_FLAG(brief);
  GTEST_INTERNAL_PARSE_FLAG(print_time);
  GTEST_INTERNAL_PARSE_FLAG(print_utf8);
  GTEST_INTERNAL_PARSE_FLAG(random_seed);
  GTEST_INTERNAL_PARSE_FLAG(repeat);
  GTEST_INTERNAL_PARSE_FLAG(recreate_environments_when_repeating);
  GTEST_INTERNAL_PARSE_FLAG(shuffle);
  GTEST_INTERNAL_PARSE_FLAG(stack_trace_depth);
  GTEST_INTERNAL_PARSE_FLAG(stream_result_to);
  GTEST_INTERNAL_PARSE_FLAG(throw_on_failure);
  return false;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x170, %rsp            # imm = 0x170
movq %rdi, -0x10(%rbp)
movb 0x75fae(%rip), %al      # 0x117ad3
andb $0x1, %al
movb %al, -0x11(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2c481(%rip), %rsi     # 0xcdfb6
leaq -0x11(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1b44
jmp 0xa1b58
movb -0x11(%rbp), %al
andb $0x1, %al
movb %al, 0x75f84(%rip)      # 0x117ad3
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1b5a
jmp 0xa1b5c
movb 0x75f72(%rip), %al      # 0x117ad4
andb $0x1, %al
movb %al, -0x12(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2c45c(%rip), %rsi     # 0xcdfce
leaq -0x12(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1b81
jmp 0xa1b95
movb -0x12(%rbp), %al
andb $0x1, %al
movb %al, 0x75f48(%rip)      # 0x117ad4
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1b97
jmp 0xa1b99
movb 0x75f36(%rip), %al      # 0x117ad5
andb $0x1, %al
movb %al, -0x13(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2c430(%rip), %rsi     # 0xcdfdf
leaq -0x13(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1bbe
jmp 0xa1bd2
movb -0x13(%rbp), %al
andb $0x1, %al
movb %al, 0x75f0c(%rip)      # 0x117ad5
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1bd4
jmp 0xa1bd6
leaq 0x75efb(%rip), %rsi     # 0x117ad8
leaq -0x38(%rbp), %rdi
movq %rdi, -0x120(%rbp)
callq 0x102f0
movq -0x120(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2cefe(%rip), %rsi     # 0xceafd
callq 0xa22f0
movb %al, -0x112(%rbp)
jmp 0xa1c0c
movb -0x112(%rbp), %al
testb $0x1, %al
jne 0xa1c18
jmp 0xa1c51
leaq 0x75eb9(%rip), %rdi     # 0x117ad8
leaq -0x38(%rbp), %rsi
callq 0x10070
jmp 0xa1c2a
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa1c58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa1c6f
jmp 0xa1c6a
jmp 0xa22d7
jmp 0xa1c71
jmp 0xa1c73
leaq 0x75dce(%rip), %rsi     # 0x117a48
leaq -0x68(%rbp), %rdi
movq %rdi, -0x130(%rbp)
callq 0x102f0
movq -0x130(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2bc4c(%rip), %rsi     # 0xcd8e8
callq 0xa22f0
movb %al, -0x121(%rbp)
jmp 0xa1ca9
movb -0x121(%rbp), %al
testb $0x1, %al
jne 0xa1cb5
jmp 0xa1cee
leaq 0x75d8c(%rip), %rdi     # 0x117a48
leaq -0x68(%rbp), %rsi
callq 0x10070
jmp 0xa1cc7
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa1cf5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa1d0c
jmp 0xa1d07
jmp 0xa22d7
jmp 0xa1d0e
jmp 0xa1d10
movb 0x75d52(%rip), %al      # 0x117a68
andb $0x1, %al
movb %al, -0x69(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bbd3(%rip), %rsi     # 0xcd8f9
leaq -0x69(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1d35
jmp 0xa1d49
movb -0x69(%rbp), %al
andb $0x1, %al
movb %al, 0x75d28(%rip)      # 0x117a68
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1d4b
jmp 0xa1d4d
movb 0x75d7f(%rip), %al      # 0x117ad2
andb $0x1, %al
movb %al, -0x6a(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2c249(%rip), %rsi     # 0xcdfac
leaq -0x6a(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1d72
jmp 0xa1d86
movb -0x6a(%rbp), %al
andb $0x1, %al
movb %al, 0x75d55(%rip)      # 0x117ad2
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1d88
jmp 0xa1d8a
leaq 0x75d67(%rip), %rsi     # 0x117af8
leaq -0x90(%rbp), %rdi
movq %rdi, -0x140(%rbp)
callq 0x102f0
movq -0x140(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2c23f(%rip), %rsi     # 0xcdff5
callq 0xa22f0
movb %al, -0x131(%rbp)
jmp 0xa1dc3
movb -0x131(%rbp), %al
testb $0x1, %al
jne 0xa1dcf
jmp 0xa1e0e
leaq 0x75d22(%rip), %rdi     # 0x117af8
leaq -0x90(%rbp), %rsi
callq 0x10070
jmp 0xa1de4
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa1e15
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa1e2f
jmp 0xa1e2a
jmp 0xa22d7
jmp 0xa1e31
jmp 0xa1e33
leaq 0x75c36(%rip), %rsi     # 0x117a70
leaq -0xb0(%rbp), %rdi
movq %rdi, -0x150(%rbp)
callq 0x102f0
movq -0x150(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2e3f0(%rip), %rsi     # 0xd024f
callq 0xa22f0
movb %al, -0x141(%rbp)
jmp 0xa1e6c
movb -0x141(%rbp), %al
testb $0x1, %al
jne 0xa1e78
jmp 0xa1eb7
leaq 0x75bf1(%rip), %rdi     # 0x117a70
leaq -0xb0(%rbp), %rsi
callq 0x10070
jmp 0xa1e8d
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa1ebe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0xb0(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0xb0(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa1ed8
jmp 0xa1ed3
jmp 0xa22d7
jmp 0xa1eda
jmp 0xa1edc
movb 0x75c37(%rip), %al      # 0x117b19
andb $0x1, %al
movb %al, -0xb1(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2e372(%rip), %rsi     # 0xd0267
leaq -0xb1(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1f07
jmp 0xa1f1e
movb -0xb1(%rbp), %al
andb $0x1, %al
movb %al, 0x75c04(%rip)      # 0x117b19
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa1f20
jmp 0xa1f22
leaq 0x75bf7(%rip), %rsi     # 0x117b20
leaq -0xd8(%rbp), %rdi
movq %rdi, -0x160(%rbp)
callq 0x102f0
movq -0x160(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2c0cd(%rip), %rsi     # 0xce01b
callq 0xa22f0
movb %al, -0x151(%rbp)
jmp 0xa1f5b
movb -0x151(%rbp), %al
testb $0x1, %al
jne 0xa1f67
jmp 0xa1fa6
leaq 0x75bb2(%rip), %rdi     # 0x117b20
leaq -0xd8(%rbp), %rsi
callq 0x10070
jmp 0xa1f7c
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa1fad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0xd8(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0xd8(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa1fc7
jmp 0xa1fc2
jmp 0xa22d7
jmp 0xa1fc9
jmp 0xa1fcb
movb 0x75b6f(%rip), %al      # 0x117b40
andb $0x1, %al
movb %al, -0xd9(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2c03e(%rip), %rsi     # 0xce022
leaq -0xd9(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa1ff6
jmp 0xa200d
movb -0xd9(%rbp), %al
andb $0x1, %al
movb %al, 0x75b3c(%rip)      # 0x117b40
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa200f
jmp 0xa2011
movb 0x75b2a(%rip), %al      # 0x117b41
andb $0x1, %al
movb %al, -0xda(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bffe(%rip), %rsi     # 0xce028
leaq -0xda(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa203c
jmp 0xa2053
movb -0xda(%rbp), %al
andb $0x1, %al
movb %al, 0x75af7(%rip)      # 0x117b41
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa2055
jmp 0xa2057
movb 0x75a73(%rip), %al      # 0x117ad0
andb $0x1, %al
movb %al, -0xdb(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bfc3(%rip), %rsi     # 0xce033
leaq -0xdb(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa2082
jmp 0xa2099
movb -0xdb(%rbp), %al
andb $0x1, %al
movb %al, 0x75a40(%rip)      # 0x117ad0
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa209b
jmp 0xa209d
movl 0x75aa1(%rip), %eax     # 0x117b44
movl %eax, -0xe0(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bf8a(%rip), %rsi     # 0xce03e
leaq -0xe0(%rbp), %rdx
callq 0x9cc00
testb $0x1, %al
jne 0xa20c6
jmp 0xa20db
movl -0xe0(%rbp), %eax
movl %eax, 0x75a72(%rip)     # 0x117b44
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa20dd
jmp 0xa20df
movl 0x75a63(%rip), %eax     # 0x117b48
movl %eax, -0xe4(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bf54(%rip), %rsi     # 0xce04a
leaq -0xe4(%rbp), %rdx
callq 0x9cc00
testb $0x1, %al
jne 0xa2108
jmp 0xa211d
movl -0xe4(%rbp), %eax
movl %eax, 0x75a34(%rip)     # 0x117b48
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa211f
jmp 0xa2121
movb 0x75a25(%rip), %al      # 0x117b4c
andb $0x1, %al
movb %al, -0xe5(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bf17(%rip), %rsi     # 0xce051
leaq -0xe5(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa214c
jmp 0xa2163
movb -0xe5(%rbp), %al
andb $0x1, %al
movb %al, 0x759f2(%rip)      # 0x117b4c
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa2165
jmp 0xa2167
movb 0x759e1(%rip), %al      # 0x117b4e
andb $0x1, %al
movb %al, -0xe6(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bef6(%rip), %rsi     # 0xce076
leaq -0xe6(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa2192
jmp 0xa21a9
movb -0xe6(%rbp), %al
andb $0x1, %al
movb %al, 0x759ae(%rip)      # 0x117b4e
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa21ab
jmp 0xa21ad
movl 0x7599d(%rip), %eax     # 0x117b50
movl %eax, -0xec(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2beba(%rip), %rsi     # 0xce07e
leaq -0xec(%rbp), %rdx
callq 0x9cc00
testb $0x1, %al
jne 0xa21d6
jmp 0xa21eb
movl -0xec(%rbp), %eax
movl %eax, 0x7596e(%rip)     # 0x117b50
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa21ed
jmp 0xa21ef
leaq 0x75962(%rip), %rsi     # 0x117b58
leaq -0x110(%rbp), %rdi
movq %rdi, -0x170(%rbp)
callq 0x102f0
movq -0x170(%rbp), %rdx
movq -0x10(%rbp), %rdi
leaq 0x2be75(%rip), %rsi     # 0xce090
callq 0xa22f0
movb %al, -0x161(%rbp)
jmp 0xa2228
movb -0x161(%rbp), %al
testb $0x1, %al
jne 0xa2234
jmp 0xa2270
leaq 0x7591d(%rip), %rdi     # 0x117b58
leaq -0x110(%rbp), %rsi
callq 0x10070
jmp 0xa2249
movb $0x1, -0x1(%rbp)
movl $0x1, -0x48(%rbp)
jmp 0xa2277
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x10fc8
jmp 0xa22e5
movl $0x0, -0x48(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x10fc8
movl -0x48(%rbp), %eax
testl %eax, %eax
je 0xa228e
jmp 0xa228c
jmp 0xa22d7
jmp 0xa2290
jmp 0xa2292
movb 0x758e0(%rip), %al      # 0x117b78
andb $0x1, %al
movb %al, -0x111(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x2bdf6(%rip), %rsi     # 0xce0a1
leaq -0x111(%rbp), %rdx
callq 0xa2760
testb $0x1, %al
jne 0xa22bd
jmp 0xa22d1
movb -0x111(%rbp), %al
andb $0x1, %al
movb %al, 0x758ad(%rip)      # 0x117b78
movb $0x1, -0x1(%rbp)
jmp 0xa22d7
jmp 0xa22d3
movb $0x0, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x170, %rsp            # imm = 0x170
popq %rbp
retq
movq -0x40(%rbp), %rdi
callq 0x10e00
nop