copy - recursively duplicate a value mixed copy(mixed); copy() returns a value with exactly the same value as its argument, but with all reference types (mappings, arrays, etc) duplicated. For example: mapping a, b = ({ 1 }); a = b; a[0] = 2; printf("%O %O\n", a, b); results in ({ 2 }) and ({ 2 }), while: mapping a, b = ({ 1 }); a = copy(b); a[0] = 2; printf("%O %O\n", a, b); results in ({ 2 }) and ({ 1 }). Tim Hollebeek Beek@ZorkMUD, Lima Bean, IdeaExchange, and elsewhere