docs: private ImageDeskew.HoughLine[] getTop(int count) {
  
          ImageDeskew.HoughLine[] hl = new ImageDeskew.HoughLine[count];
          for (int i = 0; i < count; i++) {
              hl[i] = new ImageDeskew.HoughLine();
          }
  
          ImageDeskew.HoughLine tmp;
  
          for (int i = 0; i < (this.cHMatrix.length - 1); i++) {
              if (this.cHMatrix[i] > hl[count - 1].count) {
                  hl[count - 1].count = this.cHMatrix[i];
                  hl[count - 1].index = i;
                  int j = count - 1;
                  while ((j > 0) && (hl[j].count > hl[j - 1].count)) {
                      tmp = hl[j];
                      hl[j] = hl[j - 1];
                      hl[j - 1] = tmp;
                      j--;
                  }
              }
          }
  
          int alphaIndex;
          int dIndex;
          
          for (int i = 0; i < count; i++) {
              dIndex = hl[i].index / cSteps; // integer division, no
              // remainder
              alphaIndex = hl[i].index - dIndex * cSteps;
              hl[i].alpha = getAlpha(alphaIndex);
              hl[i].d = dIndex + cDMin;
          }
  
          return hl;
      }