code: public static String render(List<Node> nodes) {
      StringBuilder buf = new StringBuilder();
      for (Node node : nodes) {
        if (node instanceof Text) {
          String text = ((Text) node).text;
          boolean inquote = false;
          for (int i = 0; i < text.length(); i++) {
            char ch = text.charAt(i);
            switch (ch) {
              case 'G':
              case 'y':
              case 'Y':
              case 'u':
              case 'U':
              case 'r':
              case 'Q':
              case 'q':
              case 'M':
              case 'L':
              case 'l':
              case 'w':
              case 'W':
              case 'd':
              case 'D':
              case 'F':
              case 'g':
              case 'E':
              case 'e':
              case 'c':
              case 'a':
              case 'b':
              case 'B':
              case 'h':
              case 'H':
              case 'K':
              case 'k':
              case 'j':
              case 'J':
              case 'C':
              case 'm':
              case 's':
              case 'S':
              case 'A':
              case 'z':
              case 'Z':
              case 'O':
              case 'v':
              case 'V':
              case 'X':
              case 'x':
                if (!inquote) {
                  buf.append('\'');
                }
                buf.append(ch);
                break;
  
             default:
               if (inquote) {
                 buf.append('\'');
               }
               buf.append(ch);
               break;
            }
          }
        } else if (node instanceof Field) {
          Field field = (Field) node;
          for (int i = 0; i < field.width; i++) {
            buf.append(field.ch);
          }
        }
      }
      return buf.toString();
    }
docs: Render the compiled pattern back into string form.