I noticed that from the first example, and my memory of auto-vivification did fade a little. you said "exists would always return true if it autovivified the element being tested", well not entirely true, depends on sequence of events, but that's meaningless argue any way. thanks for taking your time.