checkpoint
lots hacking to measure the performance of different approaches