// File: /workspace/github_cpp_makefile_star2_O2/halfflat[P]tinyopt/test/googletest/googletest/src/gtest.cc
// Function: testing::internal::JsonUnitTestResultPrinter::OutputJsonTestSuiteForTestResult(std::ostream*, testing::TestResult const&)
void JsonUnitTestResultPrinter::OutputJsonTestSuiteForTestResult(
    ::std::ostream* stream, const TestResult& result) {
  // Output the boilerplate for a new test suite.
  *stream << Indent(4) << "{\n";
  OutputJsonKey(stream, "testsuite", "name", "NonTestSuiteFailure", Indent(6));
  OutputJsonKey(stream, "testsuite", "tests", 1, Indent(6));
  if (!GTEST_FLAG_GET(list_tests)) {
    OutputJsonKey(stream, "testsuite", "failures", 1, Indent(6));
    OutputJsonKey(stream, "testsuite", "disabled", 0, Indent(6));
    OutputJsonKey(stream, "testsuite", "skipped", 0, Indent(6));
    OutputJsonKey(stream, "testsuite", "errors", 0, Indent(6));
    OutputJsonKey(stream, "testsuite", "time",
                  FormatTimeInMillisAsDuration(result.elapsed_time()),
                  Indent(6));
    OutputJsonKey(stream, "testsuite", "timestamp",
                  FormatEpochTimeInMillisAsRFC3339(result.start_timestamp()),
                  Indent(6));
  }
  *stream << Indent(6) << "\"testsuite\": [\n";

  // Output the boilerplate for a new test case.
  *stream << Indent(8) << "{\n";
  OutputJsonKey(stream, "testcase", "name", "", Indent(10));
  OutputJsonKey(stream, "testcase", "status", "RUN", Indent(10));
  OutputJsonKey(stream, "testcase", "result", "COMPLETED", Indent(10));
  OutputJsonKey(stream, "testcase", "timestamp",
                FormatEpochTimeInMillisAsRFC3339(result.start_timestamp()),
                Indent(10));
  OutputJsonKey(stream, "testcase", "time",
                FormatTimeInMillisAsDuration(result.elapsed_time()),
                Indent(10));
  OutputJsonKey(stream, "testcase", "classname", "", Indent(10), false);
  *stream << TestPropertiesAsJson(result, Indent(10));

  // Output the actual test result.
  OutputJsonTestResult(stream, result);

  // Finish the test suite.
  *stream << "\n" << Indent(6) << "]\n" << Indent(4) << "}";
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x90, %rsp
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rsp), %r15
pushq $0x4
popq %rsi
movq %r15, %rdi
callq 0x46dae
movq %rbx, %rdi
movq %r15, %rsi
callq 0xd4e0
leaq 0x162f6(%rip), %rsi     # 0x5c69e
movq %rax, %rdi
callq 0xd550
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x160bb(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x16110(%rip), %rsi     # 0x5c4e7
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
leaq 0x16099(%rip), %rsi     # 0x5c486
leaq 0x50(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1337a
leaq 0x70(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x16024(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1337a
leaq 0x1519a(%rip), %rsi     # 0x5b608
leaq 0x30(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x50(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %r8
pushq $0x1
popq %rcx
movq %rbx, %rdi
movl %ecx, %r9d
callq 0x461f2
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
cmpb $0x0, 0x3e45d(%rip)     # 0x84929
jne 0x467c0
leaq 0x15fa3(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1337a
leaq 0x16a4c(%rip), %rsi     # 0x5cf3b
leaq 0x30(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x50(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %r8
pushq $0x1
popq %rcx
movq %rbx, %rdi
movl %ecx, %r9d
callq 0x461f2
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15f2f(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1337a
leaq 0x15f37(%rip), %rsi     # 0x5c49a
leaq 0x30(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x50(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x461f2
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15ebb(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1337a
leaq 0x15ecc(%rip), %rsi     # 0x5c4a3
leaq 0x30(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x50(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x461f2
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15e47(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1337a
leaq 0x15e60(%rip), %rsi     # 0x5c4ab
leaq 0x30(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x50(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
xorl %ecx, %ecx
callq 0x461f2
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15dd3(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x14faf(%rip), %rsi     # 0x5b66e
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
movq 0x78(%r14), %rsi
leaq 0x50(%rsp), %rdi
callq 0x46dc6
leaq 0x70(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15d44(%rip), %rsi     # 0x5c47c
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x15d64(%rip), %rsi     # 0x5c4b2
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
movq 0x70(%r14), %rsi
leaq 0x50(%rsp), %rdi
callq 0x46e3a
leaq 0x70(%rsp), %rdi
pushq $0x6
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %r15
pushq $0x6
popq %rsi
movq %r15, %rdi
callq 0x46dae
movq %rbx, %rdi
movq %r15, %rsi
callq 0xd4e0
leaq 0x15e83(%rip), %rsi     # 0x5c665
movq %rax, %rdi
callq 0xd550
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %r15
pushq $0x8
popq %rsi
movq %r15, %rdi
callq 0x46dae
movq %rbx, %rdi
movq %r15, %rsi
callq 0xd4e0
leaq 0x15e88(%rip), %rsi     # 0x5c69e
movq %rax, %rdi
callq 0xd550
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15c92(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x15ca2(%rip), %rsi     # 0x5c4e7
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
leaq 0x1280f(%rip), %rsi     # 0x5906a
leaq 0x50(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1337a
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15bfb(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x15bee(%rip), %rsi     # 0x5c4ca
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
leaq 0x15d93(%rip), %rsi     # 0x5c685
leaq 0x50(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1337a
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15b64(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x15b5e(%rip), %rsi     # 0x5c4d1
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
leaq 0x15cec(%rip), %rsi     # 0x5c675
leaq 0x50(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1337a
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15acd(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x15aa8(%rip), %rsi     # 0x5c4b2
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
movq 0x70(%r14), %rsi
leaq 0x50(%rsp), %rdi
callq 0x46e3a
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x15a3e(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x14bd5(%rip), %rsi     # 0x5b66e
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
movq 0x78(%r14), %rsi
leaq 0x50(%rsp), %rdi
callq 0x46dc6
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
pushq $0x1
popq %r9
movq %rbx, %rdi
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x159af(%rip), %rsi     # 0x5c4c1
leaq 0x10(%rsp), %rdi
leaq 0xd(%rsp), %rdx
callq 0x1337a
leaq 0x159ba(%rip), %rsi     # 0x5c4e2
leaq 0x30(%rsp), %rdi
leaq 0xe(%rsp), %rdx
callq 0x1337a
leaq 0x1252c(%rip), %rsi     # 0x5906a
leaq 0x50(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1337a
leaq 0x70(%rsp), %rdi
pushq $0xa
popq %rsi
callq 0x46dae
leaq 0x10(%rsp), %rsi
leaq 0x30(%rsp), %rdx
leaq 0x50(%rsp), %rcx
leaq 0x70(%rsp), %r8
movq %rbx, %rdi
xorl %r9d, %r9d
callq 0x46060
leaq 0x70(%rsp), %rdi
callq 0xdbe8
leaq 0x50(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %r15
pushq $0xa
popq %rsi
movq %r15, %rdi
callq 0x46dae
leaq 0x10(%rsp), %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x47220
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xd4e0
leaq 0x10(%rsp), %rdi
callq 0xdbe8
leaq 0x30(%rsp), %rdi
callq 0xdbe8
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4739c
leaq 0x12565(%rip), %rsi     # 0x59159
movq %rbx, %rdi
callq 0xd550
movq %rax, %rbx
leaq 0x10(%rsp), %r14
pushq $0x6
popq %rsi
movq %r14, %rdi
callq 0x46dae
movq %rbx, %rdi
movq %r14, %rsi
callq 0xd4e0
leaq 0x15a5e(%rip), %rsi     # 0x5c67f
movq %rax, %rdi
callq 0xd550
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
pushq $0x4
popq %rsi
callq 0x46dae
leaq 0x30(%rsp), %rsi
movq %rbx, %rdi
callq 0xd4e0
leaq 0x15a7b(%rip), %rsi     # 0x5c6c8
movq %rax, %rdi
callq 0xd550
leaq 0x30(%rsp), %rdi
callq 0xdbe8
leaq 0x10(%rsp), %rdi
callq 0xdbe8
addq $0x90, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d99
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xdbe8
jmp 0x46d0f
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
jmp 0x46da1
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d5d
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
jmp 0x46d6c
jmp 0x46d84
jmp 0x46d99
jmp 0x46d7f
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0xdbe8
jmp 0x46d6f
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0xdbe8
jmp 0x46d87
jmp 0x46d84
jmp 0x46d99
movq %rax, %rbx
jmp 0x46da6
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0xdbe8
jmp 0x46d9c
jmp 0x46d99
jmp 0x46d99
jmp 0x46d99
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xdbe8
movq %rbx, %rdi
callq 0xdaa0