function toContainAll(log, keys) {
    var logSeq;

    function containsSequence(keys) {
      var ERR_MSG = '\\f that is used as marker is included.', keysSeq;
      if (logSeq == null) {
        if (log.join('').indexOf('\f') > -1) { throw new Error(ERR_MSG); }
        logSeq = '\f' + log.join('\f') + '\f';
      }
      if (keys.join('').indexOf('\f') > -1) { throw new Error(ERR_MSG); }
      keysSeq = '\f' + keys.join('\f') + '\f';
      return logSeq.indexOf(keysSeq) > -1;
    }

    return Array.isArray(log) && Array.isArray(keys) &&
      keys.every(function(key) {
        return Array.isArray(key) ? containsSequence(key) : log.indexOf(key) > -1;
      });
  }
@param {Array} log - `traceLog.log`.
@param {(string|string[])[]} keys - Each key is `'<setOptions>', '<position>'` or
   `['<updateLine>', 'lineColor']` to check the sequence.
@returns {boolean} `true` if all `keys` are contained.