implement Pearson save_c collisions

but still buggy and incomplete and non-static.