user: What would the C source look like for the assembly code provided here:

```asm
<test_mod>:
  endbr64
  sub    $0x18,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x8(%rsp)
  xor    %eax,%eax
  lea    0x5(%rsp),%rcx
  movzbl D373(%rip),%edx
  mov    %dl,0x5(%rsp)
L3:
  movzbl (%rcx),%eax
  lock cmpxchg %dl,0x2f3c(%rip)        # 40bf <a.35>
  je     L156
  mov    %al,(%rcx)
  mov    %eax,%edx
  jmp    L3
  nopl   0x0(%rax,%rax,1)
L156:
  test   %dl,%dl
  je     1080 <test_mod.cold>
  movzbl D373(%rip),%eax
  test   %al,%al
  je     1080 <test_mod.cold>
  movzbl D773(%rip),%eax
L351:
  movsbl %al,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzbl %dl,%ecx
  lock cmpxchg %cl,0x2ef6(%rip)        # 40be <a.34>
  jne    L351
  cmp    $0x1,%edx
  jne    1080 <test_mod.cold>
  movzbl D773(%rip),%eax
  cmp    $0x1,%al
  jne    1080 <test_mod.cold>
  movzbl D733(%rip),%eax
L238:
  movsbl %al,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzbl %dl,%ecx
  lock cmpxchg %cl,0x2eba(%rip)        # 40bd <a.33>
  jne    L238
  cmp    $0x1,%edx
  jne    1080 <test_mod.cold>
  movzbl D733(%rip),%eax
  cmp    $0x1,%al
  jne    1080 <test_mod.cold>
  movzbl D204(%rip),%eax
L53:
  mov    %eax,%edx
  and    $0x1,%edx
  lock cmpxchg %dl,0x2e8b(%rip)        # 40bc <a.32>
  jne    L53
  test   %dl,%dl
  je     1080 <test_mod.cold>
  movzbl D204(%rip),%eax
  cmp    $0x1,%al
  jne    1080 <test_mod.cold>
  movzwl D22(%rip),%eax
L75:
  movswl %ax,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzwl %dx,%ecx
  lock cmpxchg %cx,0x2e4e(%rip)        # 40ba <a.31>
  jne    L75
  cmp    $0x1,%edx
  jne    1080 <test_mod.cold>
  movzwl D22(%rip),%eax
  cmp    $0x1,%ax
  jne    1080 <test_mod.cold>
  movzwl D734(%rip),%eax
L16:
  mov    %eax,%edx
  and    $0x1,%edx
  lock cmpxchg %dx,0x2e1b(%rip)        # 40b8 <a.30>
  jne    L16
  test   %dx,%dx
  je     1080 <test_mod.cold>
  movzwl D734(%rip),%eax
  cmp    $0x1,%ax
  jne    1080 <test_mod.cold>
  mov    D446(%rip),%eax
L393:
  mov    %eax,%ecx
  shr    $0x1f,%ecx
  lea    (%rax,%rcx,1),%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  lock cmpxchg %edx,0x2de0(%rip)        # 40b4 <a.29>
  jne    L393
  cmp    $0x1,%edx
  jne    1080 <test_mod.cold>
  mov    D446(%rip),%eax
  cmp    $0x1,%eax
  jne    1080 <test_mod.cold>
  mov    D141(%rip),%eax
L203:
  mov    %eax,%edx
  and    $0x1,%edx
  lock cmpxchg %edx,0x2daf(%rip)        # 40b0 <a.28>
  jne    L203
  test   %edx,%edx
  je     1080 <test_mod.cold>
  mov    D141(%rip),%eax
  cmp    $0x1,%eax
  jne    1080 <test_mod.cold>
  mov    D726(%rip),%rax
L226:
  mov    %rax,%rcx
  shr    $0x3f,%rcx
  lea    (%rax,%rcx,1),%rdx
  and    $0x1,%edx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x2d6d(%rip)        # 40a8 <a.27>
  jne    L226
  cmp    $0x1,%rdx
  jne    1080 <test_mod.cold>
  mov    D726(%rip),%rax
  cmp    $0x1,%rax
  jne    1080 <test_mod.cold>
  mov    D407(%rip),%rax
L154:
  mov    %rax,%rdx
  and    $0x1,%edx
  lock cmpxchg %rdx,0x2d32(%rip)        # 40a0 <a.26>
  jne    L154
  test   %rdx,%rdx
  je     1080 <test_mod.cold>
  mov    D407(%rip),%rax
  cmp    $0x1,%rax
  jne    1080 <test_mod.cold>
  mov    D357(%rip),%rax
L206:
  mov    %rax,%rcx
  shr    $0x3f,%rcx
  lea    (%rax,%rcx,1),%rdx
  and    $0x1,%edx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x2ced(%rip)        # 4098 <a.25>
  jne    L206
  cmp    $0x1,%rdx
  jne    1080 <test_mod.cold>
  mov    D357(%rip),%rax
  cmp    $0x1,%rax
  jne    1080 <test_mod.cold>
  mov    D252(%rip),%rax
L197:
  mov    %rax,%rdx
  and    $0x1,%edx
  lock cmpxchg %rdx,0x2cb2(%rip)        # 4090 <a.24>
  jne    L197
  test   %rdx,%rdx
  je     1080 <test_mod.cold>
  mov    D252(%rip),%rax
  cmp    $0x1,%rax
  jne    1080 <test_mod.cold>
  lea    0x6(%rsp),%rcx
  movzbl D709(%rip),%edx
  mov    %dl,0x6(%rsp)
L259:
  movzbl (%rcx),%eax
  lock cmpxchg %dl,0x2c7a(%rip)        # 408f <a.23>
  je     L333
  mov    %al,(%rcx)
  mov    %eax,%edx
  jmp    L259
  nopl   (%rax)
L333:
  test   %dl,%dl
  je     1080 <test_mod.cold>
  movzbl D709(%rip),%eax
  test   %al,%al
  je     1080 <test_mod.cold>
  movzbl D557(%rip),%eax
L396:
  movsbq %al,%rdx
  movsbl %al,%ecx
  imul   $0x66666667,%rdx,%rdx
  mov    %ecx,%esi
  sar    $0x1f,%esi
  sar    $0x21,%rdx
  sub    %esi,%edx
  lea    (%rdx,%rdx,4),%esi
  sub    %esi,%ecx
  mov    %ecx,%edx
  movzbl %cl,%ecx
  lock cmpxchg %cl,0x2c25(%rip)        # 408e <a.22>
  jne    L396
  cmp    $0xfffffffd,%edx
  jne    1080 <test_mod.cold>
  movzbl D557(%rip),%eax
  cmp    $0xfd,%al
  jne    1080 <test_mod.cold>
  movzbl D893(%rip),%eax
L246:
  movsbq %al,%rdx
  movsbl %al,%ecx
  imul   $0x66666667,%rdx,%rdx
  mov    %ecx,%esi
  sar    $0x1f,%esi
  sar    $0x21,%rdx
  sub    %esi,%edx
  lea    (%rdx,%rdx,4),%esi
  sub    %esi,%ecx
  mov    %ecx,%edx
  movzbl %cl,%ecx
  lock cmpxchg %cl,0x2bd8(%rip)        # 408d <a.21>
  jne    L246
  cmp    $0xfffffffd,%edx
  jne    1080 <test_mod.cold>
  movzbl D893(%rip),%eax
  cmp    $0xfd,%al
  jne    1080 <test_mod.cold>
  mov    $0xcccccccd,%edi
  movzbl D974(%rip),%eax
L147:
  movzbl %al,%edx
  mov    %rdx,%rcx
  imul   %rdi,%rdx
  shr    $0x22,%rdx
  lea    (%rdx,%rdx,4),%esi
  sub    %esi,%ecx
  lock cmpxchg %cl,0x2b96(%rip)        # 408c <a.20>
  jne    L147
  cmp    $0x3,%ecx
  jne    1080 <test_mod.cold>
  movzbl D974(%rip),%eax
  cmp    $0x3,%al
  jne    1080 <test_mod.cold>
  movzwl D994(%rip),%eax
L277:
  movswq %ax,%rdx
  movswl %ax,%ecx
  imul   $0x66666667,%rdx,%rdx
  mov    %ecx,%esi
  sar    $0x1f,%esi
  sar    $0x21,%rdx
  sub    %esi,%edx
  lea    (%rdx,%rdx,4),%esi
  sub    %esi,%ecx
  mov    %ecx,%edx
  movzwl %cx,%ecx
  lock cmpxchg %cx,0x2b47(%rip)        # 408a <a.19>
  jne    L277
  cmp    $0xfffffffd,%edx
  jne    1080 <test_mod.cold>
  movzwl D994(%rip),%eax
  cmp    $0xfffd,%ax
  jne    1080 <test_mod.cold>
  mov    $0xcccccccd,%edi
  movzwl D626(%rip),%eax
L135:
  movzwl %ax,%edx
  mov    %rdx,%rcx
  imul   %rdi,%rdx
  shr    $0x22,%rdx
  lea    (%rdx,%rdx,4),%esi
  sub    %esi,%ecx
  lock cmpxchg %cx,0x2b01(%rip)        # 4088 <a.18>
  jne    L135
  cmp    $0x3,%ecx
  jne    1080 <test_mod.cold>
  movzwl D626(%rip),%eax
  cmp    $0x3,%ax
  jne    1080 <test_mod.cold>
  mov    D599(%rip),%eax
L388:
  movslq %eax,%rdx
  mov    %eax,%ecx
  imul   $0x66666667,%rdx,%rdx
  sar    $0x1f,%ecx
  sar    $0x21,%rdx
  sub    %ecx,%edx
  lea    (%rdx,%rdx,4),%ecx
  mov    %eax,%edx
  sub    %ecx,%edx
  lock cmpxchg %edx,0x2ab7(%rip)        # 4084 <a.17>
  jne    L388
  cmp    $0xfffffffd,%edx
  jne    1080 <test_mod.cold>
  mov    D599(%rip),%eax
  cmp    $0xfffffffd,%eax
  jne    1080 <test_mod.cold>
  mov    $0xcccccccd,%esi
  mov    D109(%rip),%eax
L209:
  mov    %eax,%edx
  imul   %rsi,%rdx
  shr    $0x22,%rdx
  lea    (%rdx,%rdx,4),%ecx
  mov    %eax,%edx
  sub    %ecx,%edx
  lock cmpxchg %edx,0x2a75(%rip)        # 4080 <a.16>
  jne    L209
  cmp    $0x3,%edx
  jne    1080 <test_mod.cold>
  mov    D109(%rip),%eax
  cmp    $0x3,%eax
  jne    1080 <test_mod.cold>
  movabs $0x6666666666666667,%rsi
  mov    D156(%rip),%rcx
L167:
  mov    %rcx,%rax
  imul   %rsi
  mov    %rcx,%rax
  sar    $0x3f,%rax
  sar    %rdx
  sub    %rax,%rdx
  lea    (%rdx,%rdx,4),%rax
  mov    %rcx,%rdx
  sub    %rax,%rdx
  mov    %rcx,%rax
  lock cmpxchg %rdx,0x2a19(%rip)        # 4078 <a.15>
  mov    %rax,%rcx
  jne    L167
  cmp    $0xfffffffffffffffd,%rdx
  jne    1080 <test_mod.cold>
  mov    D156(%rip),%rax
  cmp    $0xfffffffffffffffd,%rax
  jne    1080 <test_mod.cold>
  movabs $0xcccccccccccccccd,%rdi
  mov    D283(%rip),%rcx
L96:
  mov    %rcx,%rax
  mul    %rdi
  mov    %rcx,%rax
  mov    %rdx,%rsi
  and    $0xfffffffffffffffc,%rdx
  shr    $0x2,%rsi
  add    %rsi,%rdx
  mov    %rcx,%rsi
  sub    %rdx,%rsi
  lock cmpxchg %rsi,0x29ba(%rip)        # 4070 <a.14>
  mov    %rax,%rcx
  jne    L96
  cmp    $0x3,%rsi
  jne    1080 <test_mod.cold>
  mov    D283(%rip),%rax
  cmp    $0x3,%rax
  jne    1080 <test_mod.cold>
  movabs $0x6666666666666667,%rsi
  mov    D237(%rip),%rcx
L190:
  mov    %rcx,%rax
  imul   %rsi
  mov    %rcx,%rax
  sar    $0x3f,%rax
  sar    %rdx
  sub    %rax,%rdx
  lea    (%rdx,%rdx,4),%rax
  mov    %rcx,%rdx
  sub    %rax,%rdx
  mov    %rcx,%rax
  lock cmpxchg %rdx,0x2958(%rip)        # 4068 <a.13>
  mov    %rax,%rcx
  jne    L190
  cmp    $0xfffffffffffffffd,%rdx
  jne    1080 <test_mod.cold>
  mov    D237(%rip),%rax
  cmp    $0xfffffffffffffffd,%rax
  jne    1080 <test_mod.cold>
  movabs $0xcccccccccccccccd,%rdi
  mov    D1019(%rip),%rcx
L302:
  mov    %rcx,%rax
  mul    %rdi
  mov    %rcx,%rax
  mov    %rdx,%rsi
  and    $0xfffffffffffffffc,%rdx
  shr    $0x2,%rsi
  add    %rsi,%rdx
  mov    %rcx,%rsi
  sub    %rdx,%rsi
  lock cmpxchg %rsi,0x28f9(%rip)        # 4060 <a.12>
  mov    %rax,%rcx
  jne    L302
  cmp    $0x3,%rsi
  jne    1080 <test_mod.cold>
  mov    D1019(%rip),%rax
  cmp    $0x3,%rax
  jne    1080 <test_mod.cold>
  lea    0x7(%rsp),%rcx
  movzbl D787(%rip),%edx
  mov    %dl,0x7(%rsp)
L110:
  movzbl (%rcx),%eax
  lock cmpxchg %dl,0x28bd(%rip)        # 405f <a.11>
  je     L133
  mov    %al,(%rcx)
  mov    %eax,%edx
  jmp    L110
  nopw   0x0(%rax,%rax,1)
L133:
  test   %dl,%dl
  je     1080 <test_mod.cold>
  movzbl D787(%rip),%eax
  test   %al,%al
  je     1080 <test_mod.cold>
  movzbl D440(%rip),%eax
L287:
  movsbl %al,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzbl %dl,%ecx
  lock cmpxchg %cl,0x2876(%rip)        # 405e <a.10>
  jne    L287
  cmp    $0xffffffff,%edx
  jne    1080 <test_mod.cold>
  movzbl D440(%rip),%eax
  cmp    $0xff,%al
  jne    1080 <test_mod.cold>
  movzbl D400(%rip),%eax
L185:
  movsbl %al,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzbl %dl,%ecx
  lock cmpxchg %cl,0x283a(%rip)        # 405d <a.9>
  jne    L185
  cmp    $0xffffffff,%edx
  jne    1080 <test_mod.cold>
  movzbl D400(%rip),%eax
  cmp    $0xff,%al
  jne    1080 <test_mod.cold>
  movzbl D457(%rip),%eax
L118:
  mov    %eax,%edx
  and    $0x1,%edx
  lock cmpxchg %dl,0x280b(%rip)        # 405c <a.8>
  jne    L118
  test   %dl,%dl
  je     1080 <test_mod.cold>
  movzbl D457(%rip),%eax
  cmp    $0x1,%al
  jne    1080 <test_mod.cold>
  movzwl D47(%rip),%eax
L119:
  movswl %ax,%edx
  mov    %edx,%ecx
  shr    $0x1f,%ecx
  add    %ecx,%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  movzwl %dx,%ecx
  lock cmpxchg %cx,0x27ce(%rip)        # 405a <a.7>
  jne    L119
  cmp    $0xffffffff,%edx
  jne    1080 <test_mod.cold>
  movzwl D47(%rip),%eax
  cmp    $0xffff,%ax
  jne    1080 <test_mod.cold>
  movzwl D921(%rip),%eax
L370:
  mov    %eax,%edx
  and    $0x1,%edx
  lock cmpxchg %dx,0x279b(%rip)        # 4058 <a.6>
  jne    L370
  test   %dx,%dx
  je     1080 <test_mod.cold>
  movzwl D921(%rip),%eax
  cmp    $0x1,%ax
  jne    1080 <test_mod.cold>
  mov    D122(%rip),%eax
L221:
  mov    %eax,%ecx
  shr    $0x1f,%ecx
  lea    (%rax,%rcx,1),%edx
  and    $0x1,%edx
  sub    %ecx,%edx
  lock cmpxchg %edx,0x2760(%rip)        # 4054 <a.5>
  jne    L221
  cmp    $0xffffffff,%edx
  jne    1080 <test_mod.cold>
  mov    D122(%rip),%eax
  cmp    $0xffffffff,%eax
  jne    1080 <test_mod.cold>
  mov    D20(%rip),%eax
L103:
  xor    %edx,%edx
  cmp    $0xfffffffe,%eax
  setae  %dl
  neg    %edx
  lea    (%rdx,%rdx,1),%ecx
  mov    %eax,%edx
  sub    %ecx,%edx
  lock cmpxchg %edx,0x2723(%rip)        # 4050 <a.4>
  jne    L103
  cmp    $0xfffffff9,%edx
  jne    1080 <test_mod.cold>
  mov    D20(%rip),%eax
  cmp    $0xfffffff9,%eax
  jne    1080 <test_mod.cold>
  mov    D972(%rip),%rax
L35:
  mov    %rax,%rcx
  shr    $0x3f,%rcx
  lea    (%rax,%rcx,1),%rdx
  and    $0x1,%edx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x26e0(%rip)        # 4048 <a.3>
  jne    L35
  cmp    $0xffffffffffffffff,%rdx
  jne    1080 <test_mod.cold>
  mov    D972(%rip),%rax
  cmp    $0xffffffffffffffff,%rax
  jne    1080 <test_mod.cold>
  mov    D13(%rip),%rax
L204:
  xor    %edx,%edx
  cmp    $0xfffffffffffffffe,%rax
  setae  %dl
  neg    %rdx
  lea    (%rdx,%rdx,1),%rcx
  mov    %rax,%rdx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x2695(%rip)        # 4040 <a.2>
  jne    L204
  cmp    $0xfffffffffffffff9,%rdx
  jne    1080 <test_mod.cold>
  mov    D13(%rip),%rax
  cmp    $0xfffffffffffffff9,%rax
  jne    1080 <test_mod.cold>
  mov    D983(%rip),%rax
L136:
  mov    %rax,%rcx
  shr    $0x3f,%rcx
  lea    (%rax,%rcx,1),%rdx
  and    $0x1,%edx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x264f(%rip)        # 4038 <a.1>
  jne    L136
  cmp    $0xffffffffffffffff,%rdx
  jne    1080 <test_mod.cold>
  mov    D983(%rip),%rax
  cmp    $0xffffffffffffffff,%rax
  jne    1080 <test_mod.cold>
  mov    D739(%rip),%rax
L258:
  xor    %edx,%edx
  cmp    $0xfffffffffffffffe,%rax
  setae  %dl
  neg    %rdx
  lea    (%rdx,%rdx,1),%rcx
  mov    %rax,%rdx
  sub    %rcx,%rdx
  lock cmpxchg %rdx,0x2604(%rip)        # 4030 <a.0>
  jne    L258
  cmp    $0xfffffffffffffff9,%rdx
  jne    1080 <test_mod.cold>
  mov    D739(%rip),%rax
  cmp    $0xfffffffffffffff9,%rax
  jne    1080 <test_mod.cold>
  mov    0x8(%rsp),%rax
  sub    %fs:0x28,%rax
  jne    L149
  add    $0x18,%rsp
  ret
L149:
  call   <__stack_chk_fail@plt>
```

assistant: ```c
void test_mod(void) {
  do {
    do {
      static volatile _Atomic(_Bool) a = (_Bool)((1));
      if ((a %= ((2))) != (_Bool)((_Bool)((1)) % ((2))))
        abort();
      if (a != (_Bool)((_Bool)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(char) a = (char)((1));
      if ((a %= ((2))) != (char)((char)((1)) % ((2))))
        abort();
      if (a != (char)((char)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed char) a = (signed char)((1));
      if ((a %= ((2))) != (signed char)((signed char)((1)) % ((2))))
        abort();
      if (a != (signed char)((signed char)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned char) a = (unsigned char)((1));
      if ((a %= ((2))) != (unsigned char)((unsigned char)((1)) % ((2))))
        abort();
      if (a != (unsigned char)((unsigned char)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed short) a = (signed short)((1));
      if ((a %= ((2))) != (signed short)((signed short)((1)) % ((2))))
        abort();
      if (a != (signed short)((signed short)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned short) a = (unsigned short)((1));
      if ((a %= ((2))) != (unsigned short)((unsigned short)((1)) % ((2))))
        abort();
      if (a != (unsigned short)((unsigned short)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed int) a = (signed int)((1));
      if ((a %= ((2))) != (signed int)((signed int)((1)) % ((2))))
        abort();
      if (a != (signed int)((signed int)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned int) a = (unsigned int)((1));
      if ((a %= ((2))) != (unsigned int)((unsigned int)((1)) % ((2))))
        abort();
      if (a != (unsigned int)((unsigned int)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long) a = (signed long)((1));
      if ((a %= ((2))) != (signed long)((signed long)((1)) % ((2))))
        abort();
      if (a != (signed long)((signed long)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long) a = (unsigned long)((1));
      if ((a %= ((2))) != (unsigned long)((unsigned long)((1)) % ((2))))
        abort();
      if (a != (unsigned long)((unsigned long)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long long) a = (signed long long)((1));
      if ((a %= ((2))) != (signed long long)((signed long long)((1)) % ((2))))
        abort();
      if (a != (signed long long)((signed long long)((1)) % ((2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long long) a = (unsigned long long)((1));
      if ((a %= ((2))) != (unsigned long long)((unsigned long long)((1)) % ((2))))
        abort();
      if (a != (unsigned long long)((unsigned long long)((1)) % ((2))))
        abort();
    } while (0);
  } while (0);
  do {
    do {
      static volatile _Atomic(_Bool) a = (_Bool)((-3));
      if ((a %= ((5))) != (_Bool)((_Bool)((-3)) % ((5))))
        abort();
      if (a != (_Bool)((_Bool)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(char) a = (char)((-3));
      if ((a %= ((5))) != (char)((char)((-3)) % ((5))))
        abort();
      if (a != (char)((char)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed char) a = (signed char)((-3));
      if ((a %= ((5))) != (signed char)((signed char)((-3)) % ((5))))
        abort();
      if (a != (signed char)((signed char)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned char) a = (unsigned char)((-3));
      if ((a %= ((5))) != (unsigned char)((unsigned char)((-3)) % ((5))))
        abort();
      if (a != (unsigned char)((unsigned char)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed short) a = (signed short)((-3));
      if ((a %= ((5))) != (signed short)((signed short)((-3)) % ((5))))
        abort();
      if (a != (signed short)((signed short)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned short) a = (unsigned short)((-3));
      if ((a %= ((5))) != (unsigned short)((unsigned short)((-3)) % ((5))))
        abort();
      if (a != (unsigned short)((unsigned short)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed int) a = (signed int)((-3));
      if ((a %= ((5))) != (signed int)((signed int)((-3)) % ((5))))
        abort();
      if (a != (signed int)((signed int)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned int) a = (unsigned int)((-3));
      if ((a %= ((5))) != (unsigned int)((unsigned int)((-3)) % ((5))))
        abort();
      if (a != (unsigned int)((unsigned int)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long) a = (signed long)((-3));
      if ((a %= ((5))) != (signed long)((signed long)((-3)) % ((5))))
        abort();
      if (a != (signed long)((signed long)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long) a = (unsigned long)((-3));
      if ((a %= ((5))) != (unsigned long)((unsigned long)((-3)) % ((5))))
        abort();
      if (a != (unsigned long)((unsigned long)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long long) a = (signed long long)((-3));
      if ((a %= ((5))) != (signed long long)((signed long long)((-3)) % ((5))))
        abort();
      if (a != (signed long long)((signed long long)((-3)) % ((5))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long long) a = (unsigned long long)((-3));
      if ((a %= ((5))) != (unsigned long long)((unsigned long long)((-3)) % ((5))))
        abort();
      if (a != (unsigned long long)((unsigned long long)((-3)) % ((5))))
        abort();
    } while (0);
  } while (0);
  do {
    do {
      static volatile _Atomic(_Bool) a = (_Bool)((-7));
      if ((a %= ((-2))) != (_Bool)((_Bool)((-7)) % ((-2))))
        abort();
      if (a != (_Bool)((_Bool)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(char) a = (char)((-7));
      if ((a %= ((-2))) != (char)((char)((-7)) % ((-2))))
        abort();
      if (a != (char)((char)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed char) a = (signed char)((-7));
      if ((a %= ((-2))) != (signed char)((signed char)((-7)) % ((-2))))
        abort();
      if (a != (signed char)((signed char)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned char) a = (unsigned char)((-7));
      if ((a %= ((-2))) != (unsigned char)((unsigned char)((-7)) % ((-2))))
        abort();
      if (a != (unsigned char)((unsigned char)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed short) a = (signed short)((-7));
      if ((a %= ((-2))) != (signed short)((signed short)((-7)) % ((-2))))
        abort();
      if (a != (signed short)((signed short)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned short) a = (unsigned short)((-7));
      if ((a %= ((-2))) != (unsigned short)((unsigned short)((-7)) % ((-2))))
        abort();
      if (a != (unsigned short)((unsigned short)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed int) a = (signed int)((-7));
      if ((a %= ((-2))) != (signed int)((signed int)((-7)) % ((-2))))
        abort();
      if (a != (signed int)((signed int)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned int) a = (unsigned int)((-7));
      if ((a %= ((-2))) != (unsigned int)((unsigned int)((-7)) % ((-2))))
        abort();
      if (a != (unsigned int)((unsigned int)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long) a = (signed long)((-7));
      if ((a %= ((-2))) != (signed long)((signed long)((-7)) % ((-2))))
        abort();
      if (a != (signed long)((signed long)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long) a = (unsigned long)((-7));
      if ((a %= ((-2))) != (unsigned long)((unsigned long)((-7)) % ((-2))))
        abort();
      if (a != (unsigned long)((unsigned long)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(signed long long) a = (signed long long)((-7));
      if ((a %= ((-2))) != (signed long long)((signed long long)((-7)) % ((-2))))
        abort();
      if (a != (signed long long)((signed long long)((-7)) % ((-2))))
        abort();
    } while (0);
    do {
      static volatile _Atomic(unsigned long long) a = (unsigned long long)((-7));
      if ((a %= ((-2))) != (unsigned long long)((unsigned long long)((-7)) % ((-2))))
        abort();
      if (a != (unsigned long long)((unsigned long long)((-7)) % ((-2))))
        abort();
    } while (0);
  } while (0);
}
```