locals should be copy-on-write when shared amongst several objects