optimised for old data; version incremented