public void WriteOffset(int rel, ByteBuilder bb)
        {
            IsOffsetWrited = true;

            if (Reference != null)
            {
                TargetOffset = Reference.Address;
            }

            int val = TargetOffset;

            if (Relative)
            {
                val -= rel;
            }

            switch (Size)
            {
            case 1: bb.SetByte(Address, (byte)val); break;

            case 2: bb.SetShortBE(Address, (ushort)val); break;

            default: throw new NotImplementedException();
            }
        }