No longer using ES5 Array.isArray(), to support IE6