   end
 
   defp parse_errors(<<1, rest :: binary>>, acc) do
-    case GenericParser.parse(rest, List.duplicate(&parse(&1, :string), 2)) do
+    case GP.parse(rest, List.duplicate(&parse(&1, :string), 2)) do
       {[class, message], rest} ->
         parse_errors(rest, [{class, message}|acc])
       :incomplete ->

  end

  defp parse_record_with_rid(<<-3 :: short, rest :: binary>>) do
    GenericParser.parse(rest, [&parse(&1, :short), &parse(&1, :long)])
  end

  defp parse_record_with_rid(_) do

      &parse(&1, :string), # orientdb release
    ]

    case GP.parse(data, parsers) do
      {[sid, token, _clusters, _config, _release], rest} ->
        {[sid, token], rest}
      :incomplete ->
