code: private static void record2( H2ONode h2o, long ns, boolean tcp, int sr, int drop, long b0, long b8 ) {
      final long ms = System.currentTimeMillis(); // Read first, in case we're slow storing values
      long deltams = ms-JVM_BOOT_MSEC;
      assert deltams < 0x0FFFFFFFFL; // No daily overflow
      final long[] tl = TIMELINE; // Read once, in case the whole array shifts out from under us
      final int idx = next_idx(tl); // Next free index
      tl[idx*WORDS_PER_EVENT+0+1] = (deltams)<<32 | (h2o.ip4()&0x0FFFFFFFFL);
      tl[idx*WORDS_PER_EVENT+1+1] = (ns&~7)| (tcp?4:0)|sr|drop;
      // More complexities: record the *receiver* port in the timeline - but not
      // in the outgoing UDP packet!  The outgoing packet always has the sender's
      // port (that's us!) - which means the recorded timeline packet normally
      // never carries the *receiver* port - meaning the sender's timeline does
      // not record who he sent to!  With this hack the Timeline record always
      // contains the info about "the other guy": inet+port for the receiver in
      // the sender's Timeline, and vice-versa for the receiver's Timeline.
      if( sr==0 ) b0 = (b0 & ~0xFFFF00) | (h2o._key.udp_port()<<8);
      tl[idx*WORDS_PER_EVENT+2+1] = b0;
      tl[idx*WORDS_PER_EVENT+3+1] = b8;
    }
docs: (dropped).