code: function (object, ctr) {
              throwIfNotAFunction(ctr);
  
              var type = typeof object,
                  val = false;
  
              if (type !== 'undefined' &&
                      object !== null &&
                      type !== 'boolean' &&
                      type !== 'string' &&
                      type !== 'number') {
  
                  if (object instanceof ctr) {
                      val = true;
                  } else {
                      type = typeof ctr.prototype;
                      if (type !== 'undefined' &&
                              ctr.prototype !== null &&
                              type !== 'boolean' &&
                              type !== 'string' &&
                              type !== 'number') {
  
                          val = pIsPrototypeOf.call(ctr.prototype, object);
                      }
                  }
              }
  
              return val;
          }
docs: /*jslint maxlen: 150 
  Prototypal function, as usually used in
  {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain inheritance and the prototype chain}.
  @typedef {Function} prototypalFunction
  @param {...*} [varArgs]
  @returns {*}
   /*jslint maxlen: 120 
  Stand alone function created from a {@link prototypalFunction prototypalFunction}.
  @typedef {Function} boundPrototypalFunction
  @param {...*} [varArgs]
  @returns {*}