docs: function mixinSettings(that, s, i) {
          if ('string' === typeof s) {
              s = { id: s };
          }
          else if ('object' !== typeof s) {
              throw new TypeError('ChoiceTableGroup.buildTable: item must be ' +
                                  'string or object. Found: ' + s);
          }
          s.group = that.id;
          s.groupOrder = i+1;
          s.orientation = that.orientation;
          s.title = false;
          s.listeners = false;
          s.separator = that.separator;
  
          if ('undefined' === typeof s.choices && that.choices) {
              s.choices = that.choices;
          }
  
          if (!s.renderer && that.renderer) s.renderer = that.renderer;
  
          if ('undefined' === typeof s.requiredChoice && that.requiredChoice) {
              s.requiredChoice = that.requiredChoice;
          }
  
          if ('undefined' === typeof s.selectMultiple &&
              null !== that.selectMultiple) {
  
              s.selectMultiple = that.selectMultiple;
          }
  
          if ('undefined' === typeof s.shuffleChoices && that.shuffleChoices) {
              s.shuffleChoices = that.shuffleChoices;
          }
  
          if ('undefined' === typeof s.timeFrom) s.timeFrom = that.timeFrom;
  
          if ('undefined' === typeof s.left) s.left = s.id;
  
          // No reference is stored in node.widgets.
          s.storeRef = false;
  
          return s;
      }