code: function (a1, a2, areUnique) {
          
          if (   !Arrays.isArrayLike(a1)
              || !Arrays.isArrayLike(a2)
              || a1.length !== a2.length )
              return false;
          
          var isSubset = Arrays._isSubsetOf(a1, a2);
          if (   isSubset
              && areUnique !== true )
              isSubset = Arrays._isSubsetOf(a2, a1);
          
          return isSubset;
      }
docs: <p>
  Compares two Array objects and returns
  true if they both contains the same items
  in any order.  This function uses the '==='
  operator to compare the items with each other.
  </p>
  
  <p>
  If any of the argument is not an Array,
  this function returns <em>false</em>.
  </p>
  @param a1 {Array}
  @param a2 {Array}
  @param areUnique {Boolean} Optional. If the arrays contain unique items
  - that is, one item cannot repeat
  within the array - set this argument
  to <em>true</em> for better performance.
  Default is <em>false</em>.
  @return {Boolean}