public override string Print() { if (offset > 0) return String.Format ("[{0}]+0x{1:x}", relative_to.Print (), offset); else return String.Format ("[{0}]-0x{1:x}", relative_to.Print (), -offset); }