code: function addHash(schedules, curSched, value, hash) {
      // if there are any existing day of week constraints that
      // aren't equal to the one we're adding, create a new
      // composite schedule
      if ((curSched.d && !curSched.dc) ||
          (curSched.dc && curSched.dc.indexOf(hash) < 0)) {
        schedules.push(cloneSchedule(curSched));
        curSched = schedules[schedules.length-1];
      }
  
      add(curSched, 'd', value, value);
      add(curSched, 'dc', hash, hash);
    }
docs: Adds a hash item (of the form x#y or xL) to the schedule.
  
  @param {Schedule} schedules: The current schedule array to add to
  @param {Schedule} curSched: The current schedule to add to
  @param {Int} value: The value to add (x of x#y or xL)
  @param {Int} hash: The hash value to add (y of x#y)