minor optimization: avoid replacements on some unchanging cells
needs more compiler work for better accuracy
unlimited objects 1: bitvectors -- tests 10x slower