anchor.diff:                              false -> SendTag ++ "\\\\[-0.5em]\\tiny " ++ RecvTag
                           end,
                       io:format(File,
  -                              "\\draw[->, color=~s] (~pcm, -~p)"
  +                              "\\draw[->, color=~s] (~fcm, -~f)"
                                 " to node[inner sep=1pt, anchor=west,sloped,rotate=90,align=left] "
  -                              "{\\tiny ~s} (~pcm, -~p) "
  +                              "{\\tiny ~s} (~fcm, -~f) "
                                 "node [anchor=north, inner sep=1pt] {\\tiny ~s};~n",
                                 [Color, SendTime/ScaleX, SrcNum/2,
                                  MsgTag,
  
positive.code:                             false -> RecvTag ++ "\\\\[-0.5em]\\tiny " ++ SendTag
                          end,
                      io:format(File,
                                "\\draw[->, color=~s] (~pcm, -~p)"
                                " to node[inner sep=1pt, anchor=west,sloped,rotate=-90, align=left] "
                                "{\\tiny ~s} (~pcm, -~p) "
                                "node [anchor=west, inner sep=1pt, rotate=60] {\\tiny ~s};~n",
                                [Color, SendTime/ScaleX, SrcNum/2,
                                 MsgTag,
  
negative.code:                               fun(Y) -> element(4, X) =/= Y end, Nodes)),
              EventTime = element(2, X),
              io:format(
                File, "\\draw [color=blue] (~fcm, -~f) ++(0, 0.1cm) node[rotate=60, anchor=west, inner sep=1pt] {\\tiny ~s}-- ++(0, -0.2cm);~n",
                [EventTime/ScaleX, SrcNum/2, term_to_latex_string(get_msg_tag(element(5, X)))]),
              %% not yet implemented
              DrawTrace
  