Test results for amd64, comet, crypto_stream/aes256estream

[Page version: 20250707 21:28:05]

Measurements for amd64, comet, crypto_stream Test results for amd64, comet, crypto_stream Test results for crypto_stream/aes256estream
Computer: comet
Microarchitecture: amd64; Comet Lake (806ec)
Architecture: amd64
CPU ID: GenuineIntel-000806ec-bfebfbff
SUPERCOP version: 20250415
Operation: crypto_stream
Primitive: aes256estream
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
208144921 4096 416503 4860 1024T:e/hongjun/v0gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
209578411 4096 421668 4884 1056T:e/hongjun/v1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
211277715 4096 419295 4860 1024T:e/hongjun/v1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
212378888 4096 424116 4884 1056T:e/hongjun/v1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
213696020 4096 419284 4884 1056T:e/hongjun/v0gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
215317875 4096 420627 4876 1056T:e/hongjun/v1gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
215346882 4096 422116 4884 1056T:e/hongjun/v0gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
216635356 4096 418107 4876 1056T:e/hongjun/v0gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2182920172 0 431791 756 1024T:e/gladmangcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
220938324 4096 123577 4956 960T:e/hongjun/v1clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
225638535 4096 125417 4956 1024T:e/hongjun/v1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
226598535 4096 125121 4956 992T:e/hongjun/v1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
226807620 4096 120441 4956 960T:e/hongjun/v1clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2289320648 0 135929 852 960T:e/gladmanclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
230535636 4096 120897 4956 960T:e/hongjun/v0clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
231767686 4096 121383 4948 1024T:e/hongjun/v1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
231845088 4096 118783 4948 1024T:e/hongjun/v0clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2325620285 0 133145 852 960T:e/gladmanclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2327520906 0 434196 780 1056T:e/gladmangcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2331820896 0 137521 852 992T:e/gladmanclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2335120896 0 137817 852 1024T:e/gladmanclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2343421362 0 436620 780 1056T:e/gladmangcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
241445396 4096 118225 4956 960T:e/hongjun/v0clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
241546089 4096 122977 4956 1024T:e/hongjun/v0clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
241736089 4096 122681 4956 992T:e/hongjun/v0clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2493821415 0 434195 772 1056T:e/gladmangcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025061820250415
2713020464 0 134191 844 1024T:e/gladmanclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025061820250415

Compiler output


aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:134:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:e/hongjun/v1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)

Compiler output


aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:134:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:e/hongjun/v1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)

Compiler output


aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:134:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:e/hongjun/v1clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)

Compiler output


aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:134:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:e/hongjun/v1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)

Compiler output


aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:12: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                   ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:120:7: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c: ./e/aes256.h:139:9: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ./e/aes-ctr.c:134:7: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c:       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       ^
aes-ctr.c: ./e/aes256.h:139:15: note: expanded from macro 'aes256_enc_block'
aes-ctr.c:         u32 y0,y1,y2,y3;\
aes-ctr.c:                      ^
aes-ctr.c: In file included from aes-ctr.c:1:
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:e/hongjun/v1clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)

Compiler output


aes-ctr.c: In file included from e/aes-ctr.c:9,
aes-ctr.c:                  from aes-ctr.c:1:
aes-ctr.c: e/aes-ctr.c: In function 'crypto_stream_aes256estream_e_hongjun_v1_timingleaks_ECRYPT_process_bytes':
aes-ctr.c: e/aes256.h:139:22: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c:   139 |         u32 y0,y1,y2,y3;\
aes-ctr.c:       |                      ^~
aes-ctr.c: e/aes-ctr.c:120:7: note: in expansion of macro 'aes256_enc_block'
aes-ctr.c:   120 |       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       |       ^~~~~~~~~~~~~~~~
aes-ctr.c: e/aes256.h:139:19: warning: unused variable 'y2' [-Wunused-variable]
aes-ctr.c:   139 |         u32 y0,y1,y2,y3;\
aes-ctr.c:       |                   ^~
aes-ctr.c: e/aes-ctr.c:120:7: note: in expansion of macro 'aes256_enc_block'
aes-ctr.c:   120 |       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       |       ^~~~~~~~~~~~~~~~
aes-ctr.c: e/aes256.h:139:16: warning: unused variable 'y1' [-Wunused-variable]
aes-ctr.c:   139 |         u32 y0,y1,y2,y3;\
aes-ctr.c:       |                ^~
aes-ctr.c: e/aes-ctr.c:120:7: note: in expansion of macro 'aes256_enc_block'
aes-ctr.c:   120 |       aes256_enc_block(ctx->counter, keystream, ctx);
aes-ctr.c:       |       ^~~~~~~~~~~~~~~~
aes-ctr.c: e/aes256.h:139:22: warning: unused variable 'y3' [-Wunused-variable]
aes-ctr.c:   139 |         u32 y0,y1,y2,y3;\
aes-ctr.c:       |                      ^~
aes-ctr.c: e/aes-ctr.c:134:7: note: in expansion of macro 'aes256_enc_block'
aes-ctr.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:e/hongjun/v1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)

Namespace violations


aes-ctr.o aes_encrypt T
aes-ctr.o aes_encrypt_key T
aes-ctr.o aes_encrypt_key128 T
aes-ctr.o aes_encrypt_key192 T
aes-ctr.o aes_encrypt_key256 T
aes-ctr.o gen_tabs T
aes-ctr.o t_fl R
aes-ctr.o t_fn R
aes-ctr.o t_im R
aes-ctr.o t_rc R

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:e/gladmanclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/gladmanclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/gladmanclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/gladmanclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/gladmanclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/gladmangcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/gladmangcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/gladmangcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/gladmangcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)

Namespace violations


aes-ctr.o T0 D
aes-ctr.o T1 D
aes-ctr.o T2 D
aes-ctr.o T3 D
aes-ctr.o aes256_enc_block T
aes-ctr.o partial_precompute_tworounds T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:e/hongjun/v0clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v0clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v0clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v0clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v0clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v0gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v0gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v0gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v0gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)

Namespace violations


aes-ctr.o T0 D
aes-ctr.o T1 D
aes-ctr.o T2 D
aes-ctr.o T3 D
aes-ctr.o partial_precompute_tworounds T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:e/hongjun/v1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v1clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v1clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_14.0.6)
T:e/hongjun/v1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)
T:e/hongjun/v1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (12.2.0)