code: public String cardinal(long n) {
          if (n == 0) {
              return "zero";
          }
  
          StringBuilder buffer = new StringBuilder(20);
  
          if (n < 0) {
              buffer.append("negative ");
              n = -n;
          }
  
          n = cardinalGroup(buffer, n, 1000000000000000000L, "quintillion");
          n = cardinalGroup(buffer, n, 1000000000000000L, "quadrillion");
          n = cardinalGroup(buffer, n, 1000000000000L, "trillion");
          n = cardinalGroup(buffer, n, 1000000000L, "billion");
          n = cardinalGroup(buffer, n, 1000000L, "million");
          n = cardinalGroup(buffer, n, 1000L, "thousand");
  
          cardinal999(buffer, n, false);
  
          return buffer.toString();
      }
docs: A function that converts an integer to a cardinal value. i.e. one,
  two, three etc.
  
  @param n the number to convert
  
  @return a String containing the cardinal value of the specified number