code: function translate(cond) {
  
      let result = {};
  
      // If condition is not an array...
      if (!Array.isArray(cond)) {
          //...then it is a condition cluster
          if (cond.and) {
              result = translateAndList(cond.and)
          }
          else if (cond.or) {
              result = translateOrList(cond.or)
          }
          else {
              //This is an illegal subject.
              throw new Error('Invalid query Object keys. Objects must be either "and" or "or"');
          }
      }
      else {
          //...then it's a singular condition
          assert(cond.length === 3, 'Invalid condition item. Condition items must be an array of 3 items representing field, comparator, and value')
  
          let fieldName = cond[0];
          fieldName = fieldName.replace('.*', '');
          let comp = cond[1];
          let value = cond[2];
  
          if (fieldName === 'id') {
              fieldName = '_id';
              value = Array.isArray(value) ? value : new ObjectID(value)
          }
  
          // construct mini block
          if (comp === '=') {
  
              if (value === null || value === undefined) {
                  value = {};
                  value['$exists'] = false;
              }
  
              result[fieldName] = value;
          } else if (comp === '!=' && (value === null || value === undefined)) {
              let value = {};
              value['$exists'] = true;
  
              result[fieldName] = value;
          } else if (comp === 'like') {
  
              result[fieldName] = new RegExp(value);
  
          } else if (comp === 'nlike') {
  
              result[fieldName] = {
                  $not: new RegExp(value)
              };
          }
          else {
              const subCondBlock = {};
  
              subCondBlock[convertComp(comp)] = value;
  
              result[fieldName] = subCondBlock;
          }
      }
  
      return result;
  
  }
docs: Translates a single jollof condition
  @param {array | object} cond
  @returns {*}