added an overwrite property to control overwriting behaviour. related #321