works for ArrayContents