code: public long fromDelta (int delta)
      {
          boolean even = (delta > 0);
          long time = even ? evenBase : oddBase;
          if (even) {
              time += delta;
          } else {
              time += (-1 - delta);
          }
          return time;
      }
docs: Converts the supplied delta time back to a wall time based on the
  base time in this time base object. Either an int or short delta
  can be passed to this method (the short will have been promoted to
  an int in the process but that will not mess up its encoded value).