code: function Drip(pw, iv, evt, endEvent, emit) {
      var ieo = typeof evt === 'object', eo = ieo ? evt : null, pulse = { event: ieo ? evt.event : evt };
      if (!pulse.event) throw new Error('Event is required');
      if (eo && eo.id) pulse.id = eo.id; // IDs are not inherited because iv/pulse IDs are non-transferable
      this.pulse = plet.props(plet.props(pulse, sprops, eo, true, true), sprops, iv); // pulse should only contain values from the event or inherited from the iv
      this.cbCount = 0;
      if (emit) this.emit(pw, iv);
  }
docs: Creates a drip for an I.V. catheter
  
  @private
  @class Drip
  @arg {PulseEmitter} pw the pulse emitter
  @arg {Array} iv the I.V. catheter
  @arg {(String | Object)} evt the pulse event
  @arg {String} endEvent the end event
  @arg {Boolean} [emit] true to emit
  @returns {Object} the drip / pulse