docs: @SuppressWarnings("unchecked")
      public static List<TopLevelGdl> parse(Reader input) throws Exception {
          try {
              Scanner lexer = new GdlScanner(input);
              SymbolFactory symbolFactory = new ComplexSymbolFactory();
              Symbol result = new GdlParser(lexer, symbolFactory).parse();
              return (List<TopLevelGdl>) result.value;
          } finally {
              input.close();
          }
      }