code: function groupByThreeArguments(keySelector, inner, third) {
                              var keyComparator = void 0,
                                  elementSelector = void 0,
                                  resultSelector = void 0;
                              if (isKeyComparator(third)) {
                                  keyComparator = third;
                              } else {
                                  resultSelector = third;
                              }
                              if (__getParameterCount(inner) === 2) {
                                  resultSelector = inner;
                              } else {
                                  elementSelector = inner;
                              }
                              if (!keyComparator) {
                                  keyComparator = __defaultEqualityCompareFn;
                              }
                              if (!elementSelector) {
                                  elementSelector = function elementSelector(elem) {
                                      return elem;
                                  };
                              }
                              return groupBy(keySelector, elementSelector, resultSelector, keyComparator);
                          }
docs: /*
  GroupBy(keySelector, resultSelector, keyComparator)
  GroupBy(keySelector, elementSelector, keyComparator)
  GroupBy(keySelector, elementSelector, resultSelector)