reminder to benchmark
add vectorised CMC