Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
1424616 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
1432792 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=core2_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
1439584 | ? ? ? | ? ? ? | vperm | gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
1506696 | ? ? ? | ? ? ? | vperm | clang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments | 20161222 | 20161220 |
1507584 | ? ? ? | ? ? ? | vperm | clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments | 20161222 | 20161220 |
1862760 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
1897488 | ? ? ? | ? ? ? | vperm | gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
1909568 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=core2_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
2051296 | ? ? ? | ? ? ? | vperm | gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
2054976 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer | 20161222 | 20161220 |
2105664 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
2111904 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=core2_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
2123088 | ? ? ? | ? ? ? | vperm | gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
2135560 | ? ? ? | ? ? ? | vperm | gcc_-m64_-march=core2_-O_-fomit-frame-pointer | 20161222 | 20161220 |
55517536 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
55738800 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
56320336 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
56454056 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
56478888 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
56702176 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
56939376 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
57781312 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
57986536 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
68441384 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=nocona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
68580624 | ? ? ? | ? ? ? | ref | gcc_-march=nocona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
69061112 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
69618480 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73265912 | ? ? ? | ? ? ? | ref | gcc_-m64_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73296528 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73357272 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73367664 | ? ? ? | ? ? ? | ref | gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
73453600 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=k8_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73536576 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73612032 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73614432 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73763032 | ? ? ? | ? ? ? | ref | gcc_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73834920 | ? ? ? | ? ? ? | ref | gcc_-march=k8_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
73975464 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
74045064 | ? ? ? | ? ? ? | ref | gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
74068712 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
74202944 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
74403232 | ? ? ? | ? ? ? | ref | gcc_-march=barcelona_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
75227400 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
75275296 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer | 20161222 | 20161220 |
96130656 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96134120 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96147648 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96167808 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96168656 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96613352 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
96878824 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
97678672 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer | 20161222 | 20161220 |
97681504 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer | 20161222 | 20161220 |
127047624 | ? ? ? | ? ? ? | ref | gcc_-march=barcelona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
127120704 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer | 20161222 | 20161220 |
127796456 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer | 20161222 | 20161220 |
127992992 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=k8_-O_-fomit-frame-pointer | 20161222 | 20161220 |
128477864 | ? ? ? | ? ? ? | ref | gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
128933520 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer | 20161222 | 20161220 |
129062872 | ? ? ? | ? ? ? | ref | gcc_-march=k8_-O_-fomit-frame-pointer | 20161222 | 20161220 |
129853656 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=barcelona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
130304968 | ? ? ? | ? ? ? | ref | gcc_-march=nocona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
131168168 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-O_-fomit-frame-pointer | 20161222 | 20161220 |
131472960 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=corei7_-O_-fomit-frame-pointer | 20161222 | 20161220 |
131480096 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=nocona_-O_-fomit-frame-pointer | 20161222 | 20161220 |
133854584 | ? ? ? | ? ? ? | ref | gcc_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134282176 | ? ? ? | ? ? ? | ref | gcc_-march=nocona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134609928 | ? ? ? | ? ? ? | ref | gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134614992 | ? ? ? | ? ? ? | ref | gcc_-m64_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134643944 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=corei7_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134911608 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
134974280 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=nocona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135076040 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135182408 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135341992 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135602192 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135608736 | ? ? ? | ? ? ? | ref | gcc_-march=barcelona_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
135669416 | ? ? ? | ? ? ? | ref | gcc_-march=k8_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
136422384 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=k8_-O2_-fomit-frame-pointer | 20161222 | 20161220 |
136504936 | ? ? ? | ? ? ? | ref | gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
139315776 | ? ? ? | ? ? ? | ref | gcc_-march=k8_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
139505952 | ? ? ? | ? ? ? | ref | gcc_-m64_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
139545264 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
139691608 | ? ? ? | ? ? ? | ref | gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
139889360 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
139931488 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=corei7_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140146000 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=k8_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140146928 | ? ? ? | ? ? ? | ref | gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv | 20161222 | 20161220 |
140152528 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140155224 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140310432 | ? ? ? | ? ? ? | ref | gcc_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140561336 | ? ? ? | ? ? ? | ref | gcc_-march=barcelona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
140625336 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
143377656 | ? ? ? | ? ? ? | ref | gcc_-march=nocona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
144460144 | ? ? ? | ? ? ? | ref | gcc_-m64_-march=nocona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
145557488 | ? ? ? | ? ? ? | ref | gcc_-fno-schedule-insns_-O_-fomit-frame-pointer | 20161222 | 20161220 |
146265600 | ? ? ? | ? ? ? | ref | gcc_-O_-fomit-frame-pointer | 20161222 | 20161220 |
147258936 | ? ? ? | ? ? ? | ref | gcc_-m64_-O_-fomit-frame-pointer | 20161222 | 20161220 |
149375848 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
151520648 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
152624400 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
152766976 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
152879632 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
153215144 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
153281712 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
153424984 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
153616592 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer | 20161222 | 20161220 |
203506368 | ? ? ? | ? ? ? | ref | clang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments | 20161222 | 20161220 |
203635616 | ? ? ? | ? ? ? | ref | clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments | 20161222 | 20161220 |
206514456 | ? ? ? | ? ? ? | ref | clang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments | 20161222 | 20161220 |
206515104 | ? ? ? | ? ? ? | ref | clang_-O3_-fomit-frame-pointer_-Qunused-arguments | 20161222 | 20161220 |
206557000 | ? ? ? | ? ? ? | ref | clang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments | 20161222 | 20161220 |
206644880 | ? ? ? | ? ? ? | ref | clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments | 20161222 | 20161220 |
528627016 | ? ? ? | ? ? ? | ref | cc | 20161222 | 20161220 |
528900568 | ? ? ? | ? ? ? | ref | gcc_-funroll-loops | 20161222 | 20161220 |
529752280 | ? ? ? | ? ? ? | ref | gcc | 20161222 | 20161220 |
Compiler | Implementations
|
cc | vperm |
gcc | vperm |
gcc -O2 -fomit-frame-pointer | vperm |
gcc -O3 -fomit-frame-pointer | vperm |
gcc -O -fomit-frame-pointer | vperm |
gcc -Os -fomit-frame-pointer | vperm |
gcc -fno-schedule-insns -O2 -fomit-frame-pointer | vperm |
gcc -fno-schedule-insns -O3 -fomit-frame-pointer | vperm |
gcc -fno-schedule-insns -O -fomit-frame-pointer | vperm |
gcc -fno-schedule-insns -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops | vperm |
gcc -funroll-loops -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer | vperm |
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer | vperm |
gcc -m64 -O2 -fomit-frame-pointer | vperm |
gcc -m64 -O3 -fomit-frame-pointer | vperm |
gcc -m64 -O -fomit-frame-pointer | vperm |
gcc -m64 -Os -fomit-frame-pointer | vperm |
gcc -m64 -march=k8 -O2 -fomit-frame-pointer | vperm |
gcc -m64 -march=k8 -O3 -fomit-frame-pointer | vperm |
gcc -m64 -march=k8 -O -fomit-frame-pointer | vperm |
gcc -m64 -march=k8 -Os -fomit-frame-pointer | vperm |
gcc -m64 -march=nocona -O2 -fomit-frame-pointer | vperm |
gcc -m64 -march=nocona -O3 -fomit-frame-pointer | vperm |
gcc -m64 -march=nocona -O -fomit-frame-pointer | vperm |
gcc -m64 -march=nocona -Os -fomit-frame-pointer | vperm |
gcc -march=barcelona -O2 -fomit-frame-pointer | vperm |
gcc -march=barcelona -O3 -fomit-frame-pointer | vperm |
gcc -march=barcelona -O -fomit-frame-pointer | vperm |
gcc -march=barcelona -Os -fomit-frame-pointer | vperm |
gcc -march=k8 -O2 -fomit-frame-pointer | vperm |
gcc -march=k8 -O3 -fomit-frame-pointer | vperm |
gcc -march=k8 -O -fomit-frame-pointer | vperm |
gcc -march=k8 -Os -fomit-frame-pointer | vperm |
gcc -march=nocona -O2 -fomit-frame-pointer | vperm |
gcc -march=nocona -O3 -fomit-frame-pointer | vperm |
gcc -march=nocona -O -fomit-frame-pointer | vperm |
gcc -march=nocona -Os -fomit-frame-pointer | vperm
|